authorgravatar for git@vexu.euVeikka Tuominen <git@vexu.eu> 2026-09-26 19:20:09+03:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-09-27 02:49:10+02:00
logb46a7f3a25a61c68bbc25759087a01095dc8446e
tree24522dc67c9613f2143ee6650287cb6dedce65fb
parent9b08aca878557bf390cf8322b28ce069d41a5e3f
signature Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

sync aro & translate-c


66 files changed, 32376 insertions(+), 20328 deletions(-)

lib/compiler/aro/aro/Attribute.zig+537-1286
......@@ -1,665 +1,251 @@
11const std = @import("std");
22const mem = std.mem;
3const ZigType = std.builtin.Type;
4const CallingConvention = @import("../backend.zig").CallingConvention;
5const Compilation = @import("Compilation.zig");
6const Diagnostics = @import("Diagnostics.zig");
7const Parser = @import("Parser.zig");
3const Allocator = mem.Allocator;
4const assert = std.debug.assert;
5
86const Tree = @import("Tree.zig");
97const TokenIndex = Tree.TokenIndex;
10const TypeStore = @import("TypeStore.zig");
11const Type = TypeStore.Type;
12const QualType = TypeStore.QualType;
138const Value = @import("Value.zig");
149
1510const Attribute = @This();
1611
17tag: Tag,
12args: Args,
1813syntax: Syntax,
19args: Arguments,
20
21pub const Syntax = enum {
22 c23,
23 declspec,
24 gnu,
25 keyword,
26};
27
28pub const Kind = enum {
29 c23,
30 declspec,
31 gnu,
32
33 pub fn toSyntax(kind: Kind) Syntax {
34 return switch (kind) {
35 .c23 => .c23,
36 .declspec => .declspec,
37 .gnu => .gnu,
38 };
39 }
40};
41
42pub const Iterator = struct {
43 source: ?struct {
44 qt: QualType,
45 comp: *const Compilation,
46 },
47 slice: []const Attribute,
48 index: usize,
49
50 pub fn initSlice(slice: []const Attribute) Iterator {
51 return .{ .source = null, .slice = slice, .index = 0 };
52 }
14name: Namespaced,
15tok: TokenIndex,
5316
54 pub fn initType(qt: QualType, comp: *const Compilation) Iterator {
55 return .{ .source = .{ .qt = qt, .comp = comp }, .slice = &.{}, .index = 0 };
56 }
17pub const Tag = std.meta.Tag(Args);
18pub const Wip = @import("Attribute/Wip.zig");
19pub const Map = @import("Attribute/Map.zig");
5720
58 /// returns the next attribute as well as its index within the slice or current type
59 /// The index can be used to determine when a nested type has been recursed into
60 pub fn next(self: *Iterator) ?struct { Attribute, usize } {
61 if (self.index < self.slice.len) {
62 defer self.index += 1;
63 return .{ self.slice[self.index], self.index };
64 }
65 if (self.source) |*source| {
66 if (source.qt.isInvalid()) {
67 self.source = null;
68 return null;
69 }
70 loop: switch (source.qt.type(source.comp)) {
71 .typeof => |typeof| continue :loop typeof.base.type(source.comp),
72 .attributed => |attributed| {
73 self.slice = attributed.attributes;
74 self.index = 1;
75 source.qt = attributed.base;
76 return .{ self.slice[0], 0 };
77 },
78 .typedef => |typedef| continue :loop typedef.base.type(source.comp),
79 else => self.source = null,
80 }
81 }
82 return null;
83 }
84};
85
86/// number of required arguments
87pub fn requiredArgCount(attr: Tag) u32 {
88 switch (attr) {
89 inline else => |tag| {
90 comptime var needed = 0;
91 comptime {
92 const info = @typeInfo(@field(attributes, @tagName(tag))).@"struct";
93 for (info.field_names, info.field_types) |arg_field_name, arg_field_type| {
94 if (!mem.eql(u8, arg_field_name, "__name_tok") and @typeInfo(arg_field_type) != .optional) needed += 1;
95 }
96 }
97 return needed;
98 },
99 }
100}
101
102/// maximum number of args that can be passed
103pub fn maxArgCount(attr: Tag) u32 {
104 switch (attr) {
105 inline else => |tag| {
106 comptime var max = 0;
107 comptime {
108 const field_names = @typeInfo(@field(attributes, @tagName(tag))).@"struct".field_names;
109 for (field_names) |arg_field_name| {
110 if (!mem.eql(u8, arg_field_name, "__name_tok")) max += 1;
111 }
112 }
113 return max;
114 },
115 }
116}
117
118fn UnwrapOptional(comptime T: type) type {
119 return switch (@typeInfo(T)) {
120 .optional => |optional| optional.child,
121 else => T,
122 };
123}
124
125pub const Formatting = struct {
126 /// The quote char (single or double) to use when printing identifiers/strings corresponding
127 /// to the enum in the first field of the `attr`. Identifier enums use single quotes, string enums
128 /// use double quotes
129 fn quoteChar(attr: Tag) []const u8 {
130 switch (attr) {
131 .calling_convention => unreachable,
132 inline else => |tag| {
133 const field_types = @typeInfo(@field(attributes, @tagName(tag))).@"struct".field_types;
134
135 if (field_types.len == 0) unreachable;
136 const Unwrapped = UnwrapOptional(field_types[0]);
137 if (@typeInfo(Unwrapped) != .@"enum") unreachable;
138
139 return if (Unwrapped.opts.enum_kind == .identifier) "'" else "\"";
140 },
141 }
142 }
143
144 /// returns a comma-separated string of quoted enum values, representing the valid
145 /// choices for the string or identifier enum of the first field of the `attr`.
146 pub fn choices(attr: Tag) []const u8 {
147 switch (attr) {
148 .calling_convention => unreachable,
149 inline else => |tag| {
150 const field_types = @typeInfo(@field(attributes, @tagName(tag))).@"struct".field_types;
151
152 if (field_types.len == 0) unreachable;
153 const Unwrapped = UnwrapOptional(field_types[0]);
154 if (@typeInfo(Unwrapped) != .@"enum") unreachable;
155
156 const enum_field_names = @typeInfo(Unwrapped).@"enum".field_names;
157 const quote = comptime quoteChar(@fromBackingInt(@intCast(@backingInt(tag))));
158 comptime var values: []const u8 = quote ++ enum_field_names[0] ++ quote;
159 inline for (enum_field_names[1..]) |enum_field_name| {
160 values = values ++ ", ";
161 values = values ++ quote ++ enum_field_name ++ quote;
162 }
163 return values;
164 },
165 }
166 }
167};
168
169/// Checks if the first argument (if it exists) is an identifier enum
170pub fn wantsIdentEnum(attr: Tag) bool {
171 switch (attr) {
172 .calling_convention => return false,
173 inline else => |tag| {
174 const field_types = @typeInfo(@field(attributes, @tagName(tag))).@"struct".field_types;
175
176 if (field_types.len == 0) return false;
177 const Unwrapped = UnwrapOptional(field_types[0]);
178 if (@typeInfo(Unwrapped) != .@"enum") return false;
179
180 return Unwrapped.opts.enum_kind == .identifier;
181 },
182 }
183}
184
185pub fn diagnoseIdent(attr: Tag, arguments: *Arguments, ident: TokenIndex, p: *Parser) !bool {
186 switch (attr) {
187 inline else => |tag| {
188 const info = @typeInfo(@field(attributes, @tagName(tag))).@"struct";
189 if (info.field_names.len == 0) unreachable;
190 const Unwrapped = UnwrapOptional(info.field_types[0]);
191 if (@typeInfo(Unwrapped) != .@"enum") unreachable;
192 if (std.meta.stringToEnum(Unwrapped, normalize(p.tokSlice(ident)))) |enum_val| {
193 @field(@field(arguments, @tagName(tag)), info.field_names[0]) = enum_val;
194 return false;
195 }
196
197 try p.err(ident, .unknown_attr_enum, .{ @tagName(attr), Formatting.choices(attr) });
198 return true;
199 },
200 }
201}
202
203pub fn wantsAlignment(attr: Tag, idx: usize) bool {
204 switch (attr) {
205 inline else => |tag| {
206 const field_types = @typeInfo(@field(attributes, @tagName(tag))).@"struct".field_types;
207 if (field_types.len == 0) return false;
208
209 return switch (idx) {
210 inline 0...field_types.len - 1 => |i| UnwrapOptional(field_types[i]) == Alignment,
211 else => false,
212 };
213 },
214 }
215}
216
217pub fn diagnoseAlignment(attr: Tag, arguments: *Arguments, arg_idx: u32, res: Parser.Result, arg_start: TokenIndex, p: *Parser) !bool {
218 switch (attr) {
219 inline else => |tag| {
220 const arg_info = @typeInfo(@field(attributes, @tagName(tag))).@"struct";
221 if (arg_info.field_names.len == 0) unreachable;
222
223 switch (arg_idx) {
224 inline 0...arg_info.field_names.len - 1 => |arg_i| {
225 if (UnwrapOptional(arg_info.field_types[arg_i]) != Alignment) unreachable;
226
227 if (!res.val.is(.int, p.comp)) {
228 try p.err(arg_start, .alignas_unavailable, .{});
229 return true;
230 }
231 if (res.val.compare(.lt, Value.zero, p.comp)) {
232 try p.err(arg_start, .negative_alignment, .{res});
233 return true;
234 }
235 const requested = res.val.toInt(u29, p.comp) orelse {
236 try p.err(arg_start, .maximum_alignment, .{res});
237 return true;
238 };
239 if (!std.mem.isValidAlign(requested)) {
240 try p.err(arg_start, .non_pow2_align, .{});
241 return true;
242 }
243
244 @field(@field(arguments, @tagName(tag)), arg_info.field_names[arg_i]) = .{ .requested = requested };
245 return false;
246 },
247 else => unreachable,
248 }
249 },
250 }
251}
252
253fn diagnoseField(
254 comptime decl_name: []const u8,
255 comptime field_name: []const u8,
256 comptime Wanted: type,
257 arguments: *Arguments,
258 res: Parser.Result,
259 arg_start: TokenIndex,
260 node: Tree.Node,
261 p: *Parser,
262) !bool {
263 const string = "a string";
264 const identifier = "an identifier";
265 const int = "an integer constant";
266 const alignment = "an integer constant";
267 const nullptr_t = "nullptr";
268 const float = "a floating point number";
269 const complex_float = "a complex floating point number";
270 const expression = "an expression";
271
272 const expected: []const u8 = switch (Wanted) {
273 Value => string,
274 Identifier => identifier,
275 u32 => int,
276 Alignment => alignment,
277 CallingConvention => identifier,
278 else => switch (@typeInfo(Wanted)) {
279 .@"enum" => if (Wanted.opts.enum_kind == .string) string else identifier,
280 else => unreachable,
281 },
282 };
283
284 if (res.val.opt_ref == .none) {
285 if (Wanted == Identifier and node == .decl_ref_expr) {
286 @field(@field(arguments, decl_name), field_name) = .{ .tok = node.decl_ref_expr.name_tok };
287 return false;
288 }
289
290 try p.err(arg_start, .attribute_arg_invalid, .{ expected, expression });
291 return true;
292 }
293 const key = p.comp.interner.get(res.val.ref());
294 switch (key) {
295 .int => {
296 if (@typeInfo(Wanted) == .int) {
297 @field(@field(arguments, decl_name), field_name) = res.val.toInt(Wanted, p.comp) orelse {
298 try p.err(arg_start, .attribute_int_out_of_range, .{res});
299 return true;
300 };
301
302 return false;
303 }
304 },
305 .bytes => |bytes| {
306 if (Wanted == Value) {
307 validate: {
308 if (node != .string_literal_expr) break :validate;
309 switch (node.string_literal_expr.qt.childType(p.comp).get(p.comp, .int).?) {
310 .char, .uchar, .schar => {},
311 else => break :validate,
312 }
313 @field(@field(arguments, decl_name), field_name) = try p.removeNull(res.val);
314 return false;
315 }
316
317 try p.err(arg_start, .attribute_requires_string, .{decl_name});
318 return true;
319 } else if (@typeInfo(Wanted) == .@"enum" and @hasDecl(Wanted, "opts") and Wanted.opts.enum_kind == .string) {
320 const str = bytes[0 .. bytes.len - 1];
321 if (std.meta.stringToEnum(Wanted, str)) |enum_val| {
322 @field(@field(arguments, decl_name), field_name) = enum_val;
323 return false;
324 }
325
326 try p.err(arg_start, .unknown_attr_enum, .{ decl_name, Formatting.choices(@field(Tag, decl_name)) });
327 return true;
328 }
329 },
330 else => {},
331 }
332
333 try p.err(arg_start, .attribute_arg_invalid, .{ expected, switch (key) {
334 .int => int,
335 .bytes => string,
336 .float => float,
337 .complex => complex_float,
338 .null => nullptr_t,
339 else => unreachable,
340 } });
341 return true;
342}
343
344pub fn diagnose(attr: Tag, arguments: *Arguments, arg_idx: u32, res: Parser.Result, arg_start: TokenIndex, node: Tree.Node, p: *Parser) !bool {
345 switch (attr) {
346 inline else => |tag| {
347 const decl_name = @typeInfo(attributes).@"struct".decl_names[@backingInt(tag)];
348 const max_arg_count = comptime maxArgCount(tag);
349 if (arg_idx >= max_arg_count) {
350 try p.err(arg_start, .attribute_too_many_args, .{ @tagName(attr), max_arg_count });
351 return true;
352 }
353
354 const arg_field_names = @typeInfo(@field(attributes, decl_name)).@"struct".field_names;
355 const arg_field_types = @typeInfo(@field(attributes, decl_name)).@"struct".field_types;
356 switch (arg_idx) {
357 inline 0...arg_field_names.len - 1 => |arg_i| {
358 return diagnoseField(decl_name, arg_field_names[arg_i], UnwrapOptional(arg_field_types[arg_i]), arguments, res, arg_start, node, p);
359 },
360 else => unreachable,
361 }
362 },
363 }
364}
365
366const EnumTypes = enum {
367 string,
368 identifier,
369};
370pub const Alignment = struct {
371 node: Tree.Node.OptIndex = .null,
372 requested: u32,
373};
374pub const Identifier = struct {
375 tok: TokenIndex = 0,
376};
377
378const attributes = struct {
379 pub const access = struct {
21pub const Args = union(enum) {
22 access: struct {
38023 access_mode: enum {
38124 read_only,
38225 read_write,
38326 write_only,
38427 none,
38528
386 pub const opts = struct {
29 const opts = struct {
38730 const enum_kind = .identifier;
38831 };
38932 },
39033 ref_index: u32,
39134 size_index: ?u32 = null,
392 };
393 pub const alias = struct {
35 },
36 alias: struct {
39437 alias: Value,
395 };
396 pub const aligned = struct {
397 alignment: ?Alignment = null,
398 __name_tok: TokenIndex,
399 };
400 pub const alloc_align = struct {
38 },
39 alignment: ?u32,
40 alloc_align: struct {
40141 position: u32,
402 };
403 pub const alloc_size = struct {
42 },
43 alloc_size: struct {
40444 position_1: u32,
40545 position_2: ?u32 = null,
406 };
407 pub const allocate = struct {
408 segname: Value,
409 };
410 pub const allocator = struct {};
411 pub const always_inline = struct {};
412 pub const appdomain = struct {};
413 pub const artificial = struct {};
414 pub const assume_aligned = struct {
415 alignment: Alignment,
46 },
47 allocator,
48 always_inline,
49 appdomain,
50 artificial,
51 assume_aligned: struct {
52 alignment: ?u32,
41653 offset: ?u32 = null,
417 };
418 pub const cleanup = struct {
419 function: Identifier,
420 };
421 pub const code_seg = struct {
54 },
55 cleanup: struct {
56 function: Tree.Node.Index,
57 },
58 code_seg: struct {
42259 segname: Value,
423 };
424 pub const cold = struct {};
425 pub const common = struct {};
426 pub const @"const" = struct {};
427 pub const constructor = struct {
428 priority: ?u32 = null,
429 };
430 pub const copy = struct {
431 function: Identifier,
432 };
433 pub const deprecated = struct {
434 msg: ?Value = null,
435 __name_tok: TokenIndex,
436 };
437 pub const designated_init = struct {};
438 pub const destructor = struct {
439 priority: ?u32 = null,
440 };
441 pub const dllexport = struct {};
442 pub const dllimport = struct {};
443 pub const @"error" = struct {
444 msg: Value,
445 __name_tok: TokenIndex,
446 };
447 pub const externally_visible = struct {};
448 pub const fallthrough = struct {};
449 pub const flatten = struct {};
450 pub const format = struct {
60 },
61 cold,
62 common,
63 @"const",
64 constructor: struct {
65 priority: u16 = 65535,
66 },
67 copy: struct {
68 function: Tree.Node.Index,
69 },
70 deprecated: struct {
71 msg: ?[]const u8 = null,
72 replacement: ?[]const u8 = null,
73 },
74 designated_init,
75 destructor: struct {
76 priority: u16 = 65535,
77 },
78 dllexport,
79 dllimport,
80 @"error": []const u8,
81 externally_visible,
82 fallthrough,
83 flatten,
84 format: struct {
45185 archetype: enum {
45286 printf,
45387 scanf,
45488 strftime,
45589 strfmon,
45690
457 pub const opts = struct {
91 const opts = struct {
45892 const enum_kind = .identifier;
45993 };
46094 },
46195 string_index: u32,
46296 first_to_check: u32,
463 };
464 pub const format_arg = struct {
465 string_index: u32,
466 };
467 pub const gnu_inline = struct {};
468 pub const hot = struct {};
469 pub const ifunc = struct {
97 },
98 format_arg: u32,
99 gnu_inline,
100 hot,
101 ifunc: struct {
470102 resolver: Value,
471 };
472 pub const interrupt = struct {};
473 pub const interrupt_handler = struct {};
474 pub const jitintrinsic = struct {};
475 pub const leaf = struct {};
476 pub const malloc = struct {};
477 pub const may_alias = struct {};
478 pub const mode = struct {
479 mode: enum {
480 // zig fmt: off
481 byte, word, pointer,
482 BI, QI, HI,
483 PSI, SI, PDI,
484 DI, TI, OI,
485 XI, QF, HF,
486 TQF, SF, DF,
487 XF, SD, DD,
488 TD, TF, QQ,
489 HQ, SQ, DQ,
490 TQ, UQQ, UHQ,
491 USQ, UDQ, UTQ,
492 HA, SA, DA,
493 TA, UHA, USA,
494 UDA, UTA, CC,
495 BLK, VOID, QC,
496 HC, SC, DC,
497 XC, TC, CQI,
498 CHI, CSI, CDI,
499 CTI, COI, CPSI,
500 BND32, BND64,
501 // zig fmt: on
502
503 pub const opts = struct {
504 const enum_kind = .identifier;
505 };
506 },
507 };
508 pub const naked = struct {};
509 pub const no_address_safety_analysis = struct {};
510 pub const no_icf = struct {};
511 pub const no_instrument_function = struct {};
512 pub const no_profile_instrument_function = struct {};
513 pub const no_reorder = struct {};
514 pub const no_sanitize = struct {
515 /// Todo: represent args as union?
516 alignment: Value,
517 object_size: ?Value = null,
518 };
519 pub const no_sanitize_address = struct {};
520 pub const no_sanitize_coverage = struct {};
521 pub const no_sanitize_thread = struct {};
522 pub const no_sanitize_undefined = struct {};
523 pub const no_split_stack = struct {};
524 pub const no_stack_limit = struct {};
525 pub const no_stack_protector = struct {};
526 pub const @"noalias" = struct {};
527 pub const noclone = struct {};
528 pub const nocommon = struct {};
529 pub const nodiscard = struct {};
530 pub const noinit = struct {};
531 pub const @"noinline" = struct {};
532 pub const noipa = struct {};
533 // TODO: arbitrary number of arguments
534 // const nonnull = struct {
535 // // arg_index: []const u32,
536 // };
537 // };
538 pub const nonstring = struct {};
539 pub const noplt = struct {};
540 pub const @"noreturn" = struct {};
541 pub const nothrow = struct {};
542 // TODO: union args ?
543 // const optimize = struct {
544 // // optimize, // u32 | []const u8 -- optimize?
545 // };
546 // };
547 pub const @"packed" = struct {};
548 pub const patchable_function_entry = struct {};
549 pub const persistent = struct {};
550 pub const process = struct {};
551 pub const pure = struct {};
552 pub const reproducible = struct {};
553 pub const restrict = struct {};
554 pub const retain = struct {};
555 pub const returns_nonnull = struct {};
556 pub const returns_twice = struct {};
557 pub const safebuffers = struct {};
558 pub const scalar_storage_order = struct {
559 order: enum {
560 @"little-endian",
561 @"big-endian",
103 },
104 interrupt,
105 interrupt_handler,
106 jitintrinsic,
107 leaf,
108 malloc,
109 may_alias,
110 mode: enum {
111 // zig fmt: off
112 byte, word, pointer,
113 BI, QI, HI,
114 PSI, SI, PDI,
115 DI, TI, OI,
116 XI, QF, HF,
117 TQF, SF, DF,
118 XF, SD, DD,
119 TD, TF, QQ,
120 HQ, SQ, DQ,
121 TQ, UQQ, UHQ,
122 USQ, UDQ, UTQ,
123 HA, SA, DA,
124 TA, UHA, USA,
125 UDA, UTA, CC,
126 BLK, VOID, QC,
127 HC, SC, DC,
128 XC, TC, CQI,
129 CHI, CSI, CDI,
130 CTI, COI, CPSI,
131 BND32, BND64,
132 // zig fmt: on
562133
563 pub const opts = struct {
564 const enum_kind = .string;
565 };
566 },
567 };
568 pub const section = struct {
569 name: Value,
570 };
571 pub const selectany = struct {};
572 pub const sentinel = struct {
573 position: ?u32 = null,
574 };
575 pub const simd = struct {
134 const opts = struct {
135 const enum_kind = .identifier;
136 };
137 },
138 naked,
139 no_address_safety_analysis,
140 no_icf,
141 no_instrument_function,
142 no_profile_instrument_function,
143 no_reorder,
144 no_sanitize: []const Value,
145 no_sanitize_address,
146 no_sanitize_coverage,
147 no_sanitize_thread,
148 no_sanitize_undefined,
149 no_split_stack,
150 no_stack_limit,
151 no_stack_protector,
152 @"noalias",
153 noclone,
154 nocommon,
155 warn_unused_result: ?[]const u8,
156 noinit,
157 @"noinline",
158 noipa,
159 nonnull: []const u32,
160 nonstring,
161 noplt,
162 noreturn,
163 nothrow,
164 optimize: union(enum) {
165 index: u32,
166 features: []const u8,
167 },
168 @"packed",
169 patchable_function_entry: struct {},
170 persistent,
171 process,
172 pure,
173 reproducible,
174 retain,
175 returns_nonnull,
176 returns_twice,
177 scalar_storage_order: enum {
178 @"little-endian",
179 @"big-endian",
180
181 const opts = struct {
182 const enum_kind = .string;
183 };
184 },
185 section: []const u8,
186 selectany,
187 sentinel: struct {
188 position: u32 = 0,
189 },
190 simd: struct {
576191 mask: ?enum {
577192 notinbranch,
578193 inbranch,
579194
580 pub const opts = struct {
195 const opts = struct {
581196 const enum_kind = .string;
582197 };
583198 } = null,
584 };
585 pub const single = struct {};
586 pub const spectre = struct {
587 arg: enum {
588 nomitigation,
199 },
200 single,
201 spectre: enum {
202 nomitigation,
589203
590 pub const opts = struct {
591 const enum_kind = .identifier;
592 };
593 },
594 };
595 pub const stack_protect = struct {};
596 pub const symver = struct {
204 const opts = struct {
205 const enum_kind = .identifier;
206 };
207 },
208 stack_protect,
209 symver: struct {
597210 version: Value, // TODO: validate format "name2@nodename"
598
599 };
600 pub const target = struct {
601 options: Value, // TODO: multiple arguments
602
603 };
604 pub const target_clones = struct {
605 options: Value, // TODO: multiple arguments
606
607 };
608 pub const thread = struct {};
609 pub const tls_model = struct {
211 },
212 target: struct {
213 options: []const Value,
214 },
215 target_clones: struct {
216 options: []const Value,
217 },
218 tls_model: struct {
610219 model: enum {
611220 @"global-dynamic",
612221 @"local-dynamic",
613222 @"initial-exec",
614223 @"local-exec",
615224
616 pub const opts = struct {
225 const opts = struct {
617226 const enum_kind = .string;
618227 };
619228 },
620 };
621 pub const transparent_union = struct {};
622 pub const unavailable = struct {
623 msg: ?Value = null,
624 __name_tok: TokenIndex,
625 };
626 pub const uninitialized = struct {};
627 pub const unsafe_indexable = struct {};
628 pub const unsequenced = struct {};
629 pub const unused = struct {};
630 pub const used = struct {};
631 pub const uuid = struct {
229 },
230 transparent_union,
231 unavailable: ?[]const u8,
232 unsafe_indexable,
233 unsequenced,
234 unused,
235 used,
236 uuid: struct {
632237 uuid: Value,
633 };
634 pub const vector_size = struct {
635 bytes: u32, // TODO: validate "The bytes argument must be a positive power-of-two multiple of the base type size"
636
637 };
638 pub const visibility = struct {
639 visibility_type: enum {
640 default,
641 hidden,
642 internal,
643 protected,
644
645 pub const opts = struct {
646 const enum_kind = .string;
647 };
648 },
649 };
650 pub const warn_if_not_aligned = struct {
651 alignment: Alignment,
652 };
653 pub const warn_unused_result = struct {};
654 pub const warning = struct {
655 msg: Value,
656 __name_tok: TokenIndex,
657 };
658 pub const weak = struct {};
659 pub const weakref = struct {
238 },
239 visibility: Visibility,
240 warn_if_not_aligned: struct {
241 alignment: ?u32,
242 },
243 warning: []const u8,
244 weak,
245 weakref: struct {
660246 target: ?Value = null,
661 };
662 pub const zero_call_used_regs = struct {
247 },
248 zero_call_used_regs: struct {
663249 choice: enum {
664250 skip,
665251 used,
......@@ -671,714 +257,379 @@ const attributes = struct {
671257 @"all-arg",
672258 @"all-gpr-arg",
673259
674 pub const opts = struct {
260 const opts = struct {
675261 const enum_kind = .string;
676262 };
677263 },
678 };
679 pub const asm_label = struct {
264 },
265 asm_label: struct {
680266 name: Value,
681 };
682 pub const calling_convention = struct {
683 cc: CallingConvention,
684 };
685 pub const nullability = struct {
686 kind: enum {
687 nonnull,
688 nullable,
689 nullable_result,
690 unspecified,
691
692 pub const opts = struct {
267 },
268 unaligned,
269 // TODO cannot be combined with weak or selectany
270 internal_linkage,
271 availability: struct {
272 platform: enum {
273 android,
274 fuchsia,
275 ios,
276 macos,
277 tvos,
278 watchos,
279 driverkit,
280 ios_app_extension,
281 macos_app_extension,
282 tvos_app_extension,
283 watchos_app_extension,
284 maccatalyst,
285 maccatalyst_app_extension,
286 xros,
287 xros_app_extension,
288 swift,
289 shadermodel,
290 ohos,
291
292 const opts = struct {
693293 const enum_kind = .identifier;
694294 };
695295 },
296 introduced: ?std.SemanticVersion = null,
297 deprecated: ?std.SemanticVersion = null,
298 obsoleted: ?std.SemanticVersion = null,
299 unavailable: bool = false,
300 strict: bool = false,
301 message: ?Value = null,
302 replacement: ?Value = null,
303 priority: u32 = 0,
304 },
305 optnone,
306
307 pub const Visibility = enum {
308 default,
309 hidden,
310 protected,
311
312 pub const opts = struct {
313 pub const enum_kind = .string;
314 pub const map = std.StaticStringMap(Visibility).initComptime(.{
315 .{ "default", .default },
316 .{ "hidden", .hidden },
317 .{ "internal", .hidden },
318 .{ "protected", .protected },
319 });
320 };
696321 };
697 pub const unaligned = struct {};
698 pub const pcs = struct {
699 kind: enum {
700 aapcs,
701 @"aapcs-vfp",
702
703 pub const opts = struct {
704 const enum_kind = .string;
705 };
706 },
707 };
708 pub const riscv_vector_cc = struct {};
709 pub const aarch64_sve_pcs = struct {};
710 pub const aarch64_vector_pcs = struct {};
711 pub const fastcall = struct {};
712 pub const stdcall = struct {};
713 pub const vectorcall = struct {};
714 pub const cdecl = struct {};
715 pub const thiscall = struct {};
716 pub const sysv_abi = struct {};
717 pub const ms_abi = struct {};
718 // TODO cannot be combined with weak or selectany
719 pub const internal_linkage = struct {};
720 pub const availability = struct {};
721322};
722323
723pub const Tag = std.meta.DeclEnum(attributes);
724
725pub const Arguments = blk: {
726 const decl_names = @typeInfo(attributes).@"struct".decl_names;
727 var names: [decl_names.len][]const u8 = undefined;
728 var types: [decl_names.len]type = undefined;
729 for (decl_names, &names, &types) |decl_name, *name, *T| {
730 name.* = decl_name;
731 T.* = @field(attributes, decl_name);
732 }
733
734 break :blk @Union(.auto, null, &names, &types, &@splat(.{}));
324pub const Syntax = enum {
325 standard,
326 gnu,
327 declspec,
328 keyword,
735329};
736330
737pub fn ArgumentsForTag(comptime tag: Tag) type {
738 const decl_name = @typeInfo(attributes).@"struct".decl_names[@backingInt(tag)];
739 return @field(attributes, decl_name);
740}
741
742pub fn initArguments(tag: Tag, name_tok: TokenIndex) Arguments {
743 switch (tag) {
744 inline else => |arg_tag| {
745 const union_element = @field(attributes, @tagName(arg_tag));
746 const init = std.mem.zeroInit(union_element, .{});
747 var args = @unionInit(Arguments, @tagName(arg_tag), init);
748 if (@hasField(@field(attributes, @tagName(arg_tag)), "__name_tok")) {
749 @field(args, @tagName(arg_tag)).__name_tok = name_tok;
750 }
751 return args;
752 },
753 }
754}
755
756pub fn fromString(kind: Kind, namespace: ?[]const u8, name: []const u8) ?Tag {
757 const Properties = struct {
758 tag: Tag,
759 gnu: bool = false,
760 declspec: bool = false,
761 c23: bool = false,
331pub const Namespaced = union(enum) {
332 standard: Standard,
333 gnu: Gnu,
334 clang: Clang,
335 aro: Aro,
336 declspec: Declspec,
337 msvc: Msvc,
338 riscv: Riscv,
339 keyword: Keyword,
340
341 pub const Standard = enum {
342 deprecated,
343 fallthrough,
344 maybe_unused,
345 nodiscard,
346 noreturn,
347 /// Deprecated in C23
348 _Noreturn,
349 reproducible,
350 unsequenced,
351
352 pub const Vendors = enum {
353 aro,
354 clang,
355 gnu,
356 msvc,
357 riscv,
358 };
762359 };
763 const attribute_names = @import("Attribute/names.zig").with(Properties);
764
765 const normalized = normalize(name);
766 const actual_kind: Kind = if (namespace) |ns| blk: {
767 const normalized_ns = normalize(ns);
768 if (mem.eql(u8, normalized_ns, "gnu")) {
769 break :blk .gnu;
770 }
771 return null;
772 } else kind;
773
774 const tag_and_opts = attribute_names.fromName(normalized) orelse return null;
775 switch (actual_kind) {
776 inline else => |available_kind| {
777 if (@field(tag_and_opts, @tagName(available_kind)))
778 return tag_and_opts.tag;
779 },
780 }
781 return null;
782}
783
784pub fn normalize(name: []const u8) []const u8 {
785 if (name.len >= 4 and mem.startsWith(u8, name, "__") and mem.endsWith(u8, name, "__")) {
786 return name[2 .. name.len - 2];
787 }
788 return name;
789}
790
791fn ignoredAttrErr(p: *Parser, tok: TokenIndex, attr: Attribute.Tag, context: []const u8) !void {
792 try p.err(tok, .ignored_attribute, .{ @tagName(attr), context });
793}
794
795pub const applyParameterAttributes = applyVariableAttributes;
796pub fn applyVariableAttributes(p: *Parser, qt: QualType, attr_buf_start: usize, diagnostic: ?Parser.Diagnostic) !QualType {
797 const gpa = p.comp.gpa;
798 const attrs = p.attr_buf.items(.attr)[attr_buf_start..];
799 const toks = p.attr_buf.items(.tok)[attr_buf_start..];
800 p.attr_application_buf.items.len = 0;
801 var base_qt = qt;
802 var common = false;
803 var nocommon = false;
804 for (attrs, toks) |attr, tok| switch (attr.tag) {
805 // zig fmt: off
806 .alias, .may_alias, .deprecated, .unavailable, .unused, .warn_if_not_aligned, .weak, .used,
807 .noinit, .retain, .persistent, .section, .mode, .asm_label, .nullability, .unaligned, .selectany, .internal_linkage,
808 .visibility,
809 => try p.attr_application_buf.append(gpa, attr),
810 // zig fmt: on
811 .common => if (nocommon) {
812 try p.err(tok, .ignore_common, .{});
813 } else {
814 try p.attr_application_buf.append(gpa, attr);
815 common = true;
816 },
817 .nocommon => if (common) {
818 try p.err(tok, .ignore_nocommon, .{});
819 } else {
820 try p.attr_application_buf.append(gpa, attr);
821 nocommon = true;
822 },
823 .vector_size => try attr.applyVectorSize(p, tok, &base_qt),
824 .aligned => try attr.applyAligned(p, base_qt, diagnostic),
825 .nonstring => {
826 if (base_qt.get(p.comp, .array)) |array_ty| {
827 if (array_ty.elem.get(p.comp, .int)) |int_ty| switch (int_ty) {
828 .char, .uchar, .schar => {
829 try p.attr_application_buf.append(gpa, attr);
830 continue;
831 },
832 else => {},
360 pub const Gnu = enum {
361 access, // Not supported by Clang
362 alias,
363 aligned,
364 alloc_align,
365 alloc_size,
366 always_inline,
367 artificial,
368 assume_aligned,
369 cdecl,
370 cleanup,
371 cold,
372 common,
373 __const,
374 @"const",
375 constructor,
376 copy, // Not supported by Clang
377 deprecated,
378 designated_init, // Not supported by Clang
379 destructor,
380 dllexport,
381 dllimport,
382 @"error",
383 externally_visible, // Not supported by Clang
384 fallthrough,
385 fastcall,
386 flatten,
387 format_arg,
388 format,
389 gnu_inline,
390 hot,
391 ifunc,
392 interrupt_handler, // Not supported by Clang
393 interrupt,
394 leaf,
395 malloc,
396 may_alias,
397 mode,
398 ms_abi,
399 no_address_safety_analysis,
400 no_icf,
401 no_instrument_function,
402 no_profile_instrument_function,
403 no_reorder, // Not supported by Clang
404 no_sanitize_address,
405 no_sanitize_coverage,
406 no_sanitize_thread,
407 no_sanitize_undefined,
408 no_sanitize,
409 no_split_stack, // Not supported by Clang
410 no_stack_limit,
411 no_stack_protector,
412 noclone, // Not supported by Clang
413 nocommon,
414 noinit, // Not supported by Clang
415 @"noinline",
416 noipa, // Not supported by Clang
417 nonnull,
418 nonstring,
419 noplt, // Not supported by Clang
420 noreturn,
421 nothrow,
422 optimize, // Not supported by Clang
423 @"packed",
424 patchable_function_entry,
425 pcs,
426 persistent, // Not supported by Clang
427 pure,
428 regcall,
429 regparm,
430 retain,
431 returns_nonnull, // Not supported by Clang
432 returns_twice, // Not supported by Clang
433 riscv_rvv_vector_bits,
434 scalar_storage_order, // Not supported by Clang
435 section,
436 selectany,
437 sentinel,
438 simd, // Not supported by Clang
439 stack_protect, // Not supported by Clang
440 stdcall,
441 symver, // Not supported by Clang
442 sysv_abi,
443 target_clones,
444 target,
445 thiscall,
446 tls_model,
447 transparent_union,
448 unused,
449 used,
450 vector_size,
451 visibility,
452 warn_if_not_aligned, // Not supported by Clang
453 warn_unused_result,
454 warn_unused,
455 warning,
456 weak,
457 weakref,
458 zero_call_used_regs,
459 };
460 pub const Clang = enum {
461 aarch64_sve_pcs,
462 aarch64_vector_pcs,
463 address_space,
464 always_inline,
465 arm_sve_vector_bits,
466 availability,
467 ext_vector_type,
468 internal_linkage,
469 matrix_type,
470 neon_polyvector_type,
471 neon_vector_type,
472 no_sanitize_address,
473 no_sanitize_memory,
474 no_sanitize,
475 no_stack_protector,
476 noderef,
477 @"noinline",
478 optnone,
479 riscv_vector_cc,
480 riscv_vls_cc,
481 single,
482 unavailable,
483 unsafe_indexable,
484 vectorcall,
485 warn_unused_result,
486 };
487 pub const Aro = enum {};
488 pub const Declspec = enum {
489 @"align",
490 allocate,
491 allocator,
492 appdomain,
493 code_seg,
494 deprecated,
495 dllexport,
496 dllimport,
497 jitintrinsic,
498 naked,
499 @"noalias",
500 @"noinline",
501 noreturn,
502 process,
503 restrict,
504 safebuffers,
505 selectany,
506 spectre,
507 thread,
508 uuid,
509 };
510 pub const Msvc = enum {
511 forceinline_calls,
512 forceinline,
513 @"noinline",
514 };
515 pub const Riscv = enum {
516 vector_cc,
517 vls_cc,
518 };
519 pub const Keyword = enum {
520 _Alignas,
521 alignas,
522 noreturn,
523 asm_label,
524 nonnull,
525 null_unspecified,
526 nullable_result,
527 nullable,
528 __forceinline,
529 _forceinline,
530 __stdcall,
531 _stdcall,
532 __thiscall,
533 _thiscall,
534 __vectorcall,
535 _vectorcall,
536 __fastcall,
537 _fastcall,
538 _regcall,
539 __cdecl,
540 _cdecl,
541 ptr64,
542 ptr32,
543 sptr,
544 uptr,
545 };
546
547 pub fn fromString(syntax: Syntax, opt_vendor: ?[]const u8, name_raw: []const u8) ?Namespaced {
548 const name = normalize(name_raw);
549 switch (syntax) {
550 .standard => {
551 const vendor_str_raw = opt_vendor orelse {
552 const tag = std.meta.stringToEnum(Namespaced.Standard, name) orelse return null;
553 return .{ .standard = tag };
833554 };
834 }
835 try p.err(tok, .non_string_ignored, .{qt});
836 },
837 .uninitialized => if (p.func.qt == null) {
838 try p.err(tok, .local_variable_attribute, .{"uninitialized"});
839 } else {
840 try p.attr_application_buf.append(gpa, attr);
841 },
842 .cleanup => if (p.func.qt == null) {
843 try p.err(tok, .local_variable_attribute, .{"cleanup"});
844 } else {
845 try p.attr_application_buf.append(gpa, attr);
846 },
847 .single,
848 .unsafe_indexable,
849 => try applyBoundsSafetyAttr(.fromTag(attr.tag), p, tok, &base_qt),
850
851 .calling_convention => try applyKeywordCallingConvention(attr, p, tok, base_qt),
852
853 .fastcall,
854 .stdcall,
855 .thiscall,
856 .vectorcall,
857 .cdecl,
858 .pcs,
859 .riscv_vector_cc,
860 .aarch64_sve_pcs,
861 .aarch64_vector_pcs,
862 .sysv_abi,
863 .ms_abi,
864 => try applyGnuAttrCallingConvention(attr, p, tok, base_qt),
865
866 .alloc_size,
867 .copy,
868 .tls_model,
869 => |t| try p.err(tok, .attribute_todo, .{ @tagName(t), "variables" }),
870 // There is already an error in Parser for _Noreturn keyword
871 .noreturn => if (attr.syntax != .keyword) try ignoredAttrErr(p, tok, attr.tag, "variables"),
872 else => try ignoredAttrErr(p, tok, attr.tag, "variables"),
873 };
874 return applySelected(base_qt, p);
875}
876
877pub fn applyFieldAttributes(p: *Parser, field_qt: *QualType, attr_buf_start: usize) ![]const Attribute {
878 const attrs = p.attr_buf.items(.attr)[attr_buf_start..];
879 const seen = p.attr_buf.items(.seen)[attr_buf_start..];
880 p.attr_application_buf.items.len = 0;
881 for (attrs, 0..) |attr, i| switch (attr.tag) {
882 .@"packed" => {
883 try p.attr_application_buf.append(p.comp.gpa, attr);
884 seen[i] = true;
885 },
886 .aligned => {
887 try attr.applyAligned(p, field_qt.*, null);
888 seen[i] = true;
889 },
890 else => {},
891 };
892 return p.attr_application_buf.items;
893}
894
895pub fn applyTypeAttributes(p: *Parser, qt: QualType, attr_buf_start: usize, diagnostic: ?Parser.Diagnostic) !QualType {
896 const gpa = p.comp.gpa;
897 const attrs = p.attr_buf.items(.attr)[attr_buf_start..];
898 const toks = p.attr_buf.items(.tok)[attr_buf_start..];
899 const seens = p.attr_buf.items(.seen)[attr_buf_start..];
900 p.attr_application_buf.items.len = 0;
901 var base_qt = qt;
902 for (attrs, toks, seens) |attr, tok, seen| {
903 if (seen) continue;
904
905 switch (attr.tag) {
906 // zig fmt: off
907 .@"packed", .may_alias, .deprecated, .unavailable, .unused, .warn_if_not_aligned, .mode,
908 .nullability, .unaligned, .warn_unused_result,
909 => try p.attr_application_buf.append(gpa, attr),
910 // zig fmt: on
911 .transparent_union => try attr.applyTransparentUnion(p, tok, base_qt),
912 .vector_size => try attr.applyVectorSize(p, tok, &base_qt),
913 .aligned => try attr.applyAligned(p, base_qt, diagnostic),
914 .designated_init => if (base_qt.is(p.comp, .@"struct")) {
915 try p.attr_application_buf.append(gpa, attr);
916 } else {
917 try p.err(tok, .designated_init_invalid, .{});
555 const vendor_str = normalize(vendor_str_raw);
556 const vendor = std.meta.stringToEnum(Namespaced.Standard.Vendors, vendor_str) orelse return null;
557 switch (vendor) {
558 .aro => return null,
559 inline else => |vendor_tag| {
560 const vendor_name = @tagName(vendor_tag);
561 const tag = std.meta.stringToEnum(@FieldType(Namespaced, vendor_name), name) orelse return null;
562 return @unionInit(Namespaced, vendor_name, tag);
563 },
564 }
918565 },
919 .calling_convention => try applyKeywordCallingConvention(attr, p, tok, base_qt),
920
921 .fastcall,
922 .stdcall,
923 .thiscall,
924 .vectorcall,
925 .cdecl,
926 .pcs,
927 .riscv_vector_cc,
928 .aarch64_sve_pcs,
929 .aarch64_vector_pcs,
930 .sysv_abi,
931 .ms_abi,
932 => try applyGnuAttrCallingConvention(attr, p, tok, base_qt),
933
934 .single,
935 .unsafe_indexable,
936 => try applyBoundsSafetyAttr(.fromTag(attr.tag), p, tok, &base_qt),
937
938 .alloc_size,
939 .copy,
940 .scalar_storage_order,
941 .nonstring,
942 => |t| try p.err(tok, .attribute_todo, .{ @tagName(t), "types" }),
943 else => try ignoredAttrErr(p, tok, attr.tag, "types"),
944 }
945 }
946 return applySelected(base_qt, p);
947}
948
949pub fn applyFunctionAttributes(p: *Parser, qt: QualType, attr_buf_start: usize) !QualType {
950 const gpa = p.comp.gpa;
951 const attrs = p.attr_buf.items(.attr)[attr_buf_start..];
952 const toks = p.attr_buf.items(.tok)[attr_buf_start..];
953 p.attr_application_buf.items.len = 0;
954 var base_qt = qt;
955 var hot = false;
956 var cold = false;
957 var @"noinline" = false;
958 var always_inline = false;
959 for (attrs, toks) |attr, tok| switch (attr.tag) {
960 // zig fmt: off
961 .noreturn, .unused, .used, .warning, .deprecated, .unavailable, .weak, .pure, .leaf,
962 .@"const", .warn_unused_result, .section, .returns_nonnull, .returns_twice, .@"error",
963 .externally_visible, .retain, .flatten, .gnu_inline, .alias, .asm_label, .nodiscard,
964 .reproducible, .unsequenced, .nothrow, .nullability, .unaligned, .internal_linkage,
965 .visibility,
966 => try p.attr_application_buf.append(gpa, attr),
967 // zig fmt: on
968 .hot => if (cold) {
969 try p.err(tok, .ignore_hot, .{});
970 } else {
971 try p.attr_application_buf.append(gpa, attr);
972 hot = true;
973 },
974 .cold => if (hot) {
975 try p.err(tok, .ignore_cold, .{});
976 } else {
977 try p.attr_application_buf.append(gpa, attr);
978 cold = true;
979 },
980 .always_inline => if (@"noinline") {
981 try p.err(tok, .ignore_always_inline, .{});
982 } else {
983 try p.attr_application_buf.append(gpa, attr);
984 always_inline = true;
985 },
986 .@"noinline" => if (always_inline) {
987 try p.err(tok, .ignore_noinline, .{});
988 } else {
989 try p.attr_application_buf.append(gpa, attr);
990 @"noinline" = true;
991 },
992 .aligned => try attr.applyAligned(p, base_qt, null),
993 .format => try attr.applyFormat(p, base_qt),
994 .calling_convention => try applyKeywordCallingConvention(attr, p, tok, base_qt),
995
996 .fastcall,
997 .stdcall,
998 .thiscall,
999 .vectorcall,
1000 .cdecl,
1001 .pcs,
1002 .riscv_vector_cc,
1003 .aarch64_sve_pcs,
1004 .aarch64_vector_pcs,
1005 .sysv_abi,
1006 .ms_abi,
1007 => try applyGnuAttrCallingConvention(attr, p, tok, base_qt),
1008
1009 .malloc => {
1010 if (base_qt.get(p.comp, .func).?.return_type.isPointer(p.comp)) {
1011 try p.attr_application_buf.append(gpa, attr);
1012 } else {
1013 try ignoredAttrErr(p, tok, attr.tag, "functions that do not return pointers");
1014 }
1015 },
1016 .alloc_align => {
1017 const func_ty = base_qt.get(p.comp, .func).?;
1018 if (func_ty.return_type.isPointer(p.comp)) {
1019 if (attr.args.alloc_align.position == 0 or attr.args.alloc_align.position > func_ty.params.len) {
1020 try p.err(tok, .attribute_param_out_of_bounds, .{ "alloc_align", 1 });
1021 } else {
1022 const arg_qt = func_ty.params[attr.args.alloc_align.position - 1].qt;
1023 if (arg_qt.isInvalid()) continue;
1024 const arg_sk = arg_qt.scalarKind(p.comp);
1025 if (!arg_sk.isInt() or !arg_sk.isReal()) {
1026 try p.err(tok, .alloc_align_required_int_param, .{});
1027 } else {
1028 try p.attr_application_buf.append(gpa, attr);
566 .gnu => {
567 assert(opt_vendor == null);
568 inline for (.{ "gnu", "clang" }) |vendor_name| { // , "aro"
569 if (std.meta.stringToEnum(@FieldType(Namespaced, vendor_name), name)) |tag| {
570 return @unionInit(Namespaced, vendor_name, tag);
1029571 }
1030572 }
1031 } else {
1032 try p.err(tok, .alloc_align_requires_ptr_return, .{});
1033 }
1034 },
1035 .access,
1036 .alloc_size,
1037 .artificial,
1038 .assume_aligned,
1039 .constructor,
1040 .copy,
1041 .destructor,
1042 .format_arg,
1043 .ifunc,
1044 .interrupt,
1045 .interrupt_handler,
1046 .no_address_safety_analysis,
1047 .no_icf,
1048 .no_instrument_function,
1049 .no_profile_instrument_function,
1050 .no_reorder,
1051 .no_sanitize,
1052 .no_sanitize_address,
1053 .no_sanitize_coverage,
1054 .no_sanitize_thread,
1055 .no_sanitize_undefined,
1056 .no_split_stack,
1057 .no_stack_limit,
1058 .no_stack_protector,
1059 .noclone,
1060 .noipa,
1061 // .nonnull,
1062 .noplt,
1063 // .optimize,
1064 .patchable_function_entry,
1065 .sentinel,
1066 .simd,
1067 .stack_protect,
1068 .symver,
1069 .target,
1070 .target_clones,
1071 .weakref,
1072 .zero_call_used_regs,
1073 => |t| try p.err(tok, .attribute_todo, .{ @tagName(t), "functions" }),
1074 else => try ignoredAttrErr(p, tok, attr.tag, "functions"),
1075 };
1076 return applySelected(qt, p);
1077}
1078
1079pub fn applyLabelAttributes(p: *Parser, attr_buf_start: usize) !QualType {
1080 const gpa = p.comp.gpa;
1081 const attrs = p.attr_buf.items(.attr)[attr_buf_start..];
1082 const toks = p.attr_buf.items(.tok)[attr_buf_start..];
1083 p.attr_application_buf.items.len = 0;
1084 var hot = false;
1085 var cold = false;
1086 for (attrs, toks) |attr, tok| switch (attr.tag) {
1087 .unused => try p.attr_application_buf.append(gpa, attr),
1088 .hot => if (cold) {
1089 try p.err(tok, .ignore_hot, .{});
1090 } else {
1091 try p.attr_application_buf.append(gpa, attr);
1092 hot = true;
1093 },
1094 .cold => if (hot) {
1095 try p.err(tok, .ignore_cold, .{});
1096 } else {
1097 try p.attr_application_buf.append(gpa, attr);
1098 cold = true;
1099 },
1100 else => try ignoredAttrErr(p, tok, attr.tag, "labels"),
1101 };
1102 return applySelected(.void, p);
1103}
1104
1105pub fn applyStatementAttributes(p: *Parser, expr_start: TokenIndex, attr_buf_start: usize) !QualType {
1106 const attrs = p.attr_buf.items(.attr)[attr_buf_start..];
1107 const toks = p.attr_buf.items(.tok)[attr_buf_start..];
1108 p.attr_application_buf.items.len = 0;
1109 for (attrs, toks) |attr, tok| switch (attr.tag) {
1110 .fallthrough => {
1111 for (p.tok_ids[p.tok_i..]) |tok_id| {
1112 switch (tok_id) {
1113 .keyword_case, .keyword_default, .eof => {
1114 try p.attr_application_buf.append(p.comp.gpa, attr);
1115 break;
1116 },
1117 .r_brace, .semicolon => {},
1118 else => {
1119 try p.err(expr_start, .invalid_fallthrough, .{});
1120 break;
1121 },
1122 }
1123 }
1124 },
1125 else => try p.err(tok, .cannot_apply_attribute_to_statement, .{@tagName(attr.tag)}),
1126 };
1127 return applySelected(.void, p);
1128}
1129
1130pub fn applyEnumeratorAttributes(p: *Parser, qt: QualType, attr_buf_start: usize) !QualType {
1131 const attrs = p.attr_buf.items(.attr)[attr_buf_start..];
1132 const toks = p.attr_buf.items(.tok)[attr_buf_start..];
1133 p.attr_application_buf.items.len = 0;
1134 for (attrs, toks) |attr, tok| switch (attr.tag) {
1135 .deprecated, .unavailable => try p.attr_application_buf.append(p.comp.gpa, attr),
1136 else => try ignoredAttrErr(p, tok, attr.tag, "enums"),
1137 };
1138 return applySelected(qt, p);
1139}
1140
1141fn applyAligned(attr: Attribute, p: *Parser, qt: QualType, diagnostic: ?Parser.Diagnostic) !void {
1142 if (attr.args.aligned.alignment) |alignment| alignas: {
1143 if (attr.syntax != .keyword) break :alignas;
1144
1145 const align_tok = attr.args.aligned.__name_tok;
1146 if (diagnostic) |d| try p.err(align_tok, d, .{});
1147
1148 if (qt.isInvalid()) return;
1149 const default_align = qt.base(p.comp).qt.alignof(p.comp);
1150 if (qt.is(p.comp, .func)) {
1151 try p.err(align_tok, .alignas_on_func, .{});
1152 } else if (alignment.requested < default_align) {
1153 try p.err(align_tok, .minimum_alignment, .{default_align});
1154 }
1155 }
1156 try p.attr_application_buf.append(p.comp.gpa, attr);
1157}
1158
1159fn applyTransparentUnion(attr: Attribute, p: *Parser, tok: TokenIndex, qt: QualType) !void {
1160 const union_ty = qt.get(p.comp, .@"union") orelse {
1161 return p.err(tok, .transparent_union_wrong_type, .{});
1162 };
1163 // TODO validate union defined at end
1164 if (union_ty.layout == null) return;
1165 if (union_ty.fields.len == 0) {
1166 return p.err(tok, .transparent_union_one_field, .{});
1167 }
1168 const first_field_size = union_ty.fields[0].qt.bitSizeof(p.comp);
1169 for (union_ty.fields[1..]) |field| {
1170 const field_size = field.qt.bitSizeof(p.comp);
1171 if (field_size == first_field_size) continue;
1172
1173 try p.err(field.name_tok, .transparent_union_size, .{ field.name.lookup(p.comp), field_size });
1174 return p.err(union_ty.fields[0].name_tok, .transparent_union_size_note, .{first_field_size});
1175 }
1176
1177 try p.attr_application_buf.append(p.comp.gpa, attr);
1178}
1179
1180fn applyVectorSize(attr: Attribute, p: *Parser, tok: TokenIndex, qt: *QualType) !void {
1181 if (qt.isInvalid()) return;
1182 const scalar_kind = qt.scalarKind(p.comp);
1183 if (scalar_kind != .int and scalar_kind != .float) {
1184 if (qt.get(p.comp, .@"enum")) |enum_ty| {
1185 if (p.comp.langopts.emulate == .clang and enum_ty.incomplete) {
1186 return; // Clang silently ignores vector_size on incomplete enums.
1187 }
1188 }
1189 try p.err(tok, .invalid_vec_elem_ty, .{qt.*});
1190 return error.ParsingFailed;
1191 }
1192 if (qt.get(p.comp, .bit_int)) |bit_int| {
1193 if (bit_int.bits < 8) {
1194 try p.err(tok, .bit_int_vec_too_small, .{});
1195 return error.ParsingFailed;
1196 } else if (!std.math.isPowerOfTwo(bit_int.bits)) {
1197 try p.err(tok, .bit_int_vec_not_pow2, .{});
1198 return error.ParsingFailed;
573 return null;
574 },
575 .declspec => {
576 assert(opt_vendor == null);
577 const tag = std.meta.stringToEnum(Namespaced.Declspec, name) orelse return null;
578 return .{ .declspec = tag };
579 },
580 .keyword => unreachable,
1199581 }
1200582 }
1201583
1202 const vec_bytes = attr.args.vector_size.bytes;
1203 const elem_size = qt.sizeof(p.comp);
1204 if (vec_bytes % elem_size != 0) {
1205 return p.err(tok, .vec_size_not_multiple, .{});
1206 }
1207
1208 qt.* = try p.comp.type_store.put(p.comp.gpa, .{ .vector = .{
1209 .elem = qt.*,
1210 .len = @intCast(vec_bytes / elem_size),
1211 } });
1212}
1213
1214fn applyFormat(attr: Attribute, p: *Parser, qt: QualType) !void {
1215 // TODO validate
1216 _ = qt;
1217 try p.attr_application_buf.append(p.comp.gpa, attr);
1218}
1219
1220/// These come from GNU attributes like __attribute__((sysv_abi))
1221fn applyGnuAttrCallingConvention(attr: Attribute, p: *Parser, tok: TokenIndex, qt: QualType) !void {
1222 if (!qt.isCallable(p.comp)) {
1223 return p.err(tok, .callconv_non_func, .{ p.tokSlice(tok), qt });
1224 }
1225 const gpa = p.comp.gpa;
1226 switch (attr.tag) {
1227 .fastcall => if (p.comp.target.cpu.arch == .x86) {
1228 try p.attr_application_buf.append(gpa, .{
1229 .tag = .calling_convention,
1230 .args = .{ .calling_convention = .{ .cc = .fastcall } },
1231 .syntax = attr.syntax,
1232 });
1233 } else {
1234 try p.err(tok, .callconv_not_supported, .{"fastcall"});
1235 },
1236 .stdcall => if (p.comp.target.cpu.arch == .x86) {
1237 try p.attr_application_buf.append(gpa, .{
1238 .tag = .calling_convention,
1239 .args = .{ .calling_convention = .{ .cc = .stdcall } },
1240 .syntax = attr.syntax,
1241 });
1242 } else {
1243 try p.err(tok, .callconv_not_supported, .{"stdcall"});
1244 },
1245 .thiscall => if (p.comp.target.cpu.arch == .x86) {
1246 try p.attr_application_buf.append(gpa, .{
1247 .tag = .calling_convention,
1248 .args = .{ .calling_convention = .{ .cc = .thiscall } },
1249 .syntax = attr.syntax,
1250 });
1251 } else {
1252 try p.err(tok, .callconv_not_supported, .{"thiscall"});
1253 },
1254 .vectorcall => if (p.comp.target.cpu.arch == .x86 or p.comp.target.cpu.arch.isAARCH64()) {
1255 try p.attr_application_buf.append(gpa, .{
1256 .tag = .calling_convention,
1257 .args = .{ .calling_convention = .{ .cc = .vectorcall } },
1258 .syntax = attr.syntax,
1259 });
1260 } else {
1261 try p.err(tok, .callconv_not_supported, .{"vectorcall"});
1262 },
1263 .cdecl => {},
1264 .pcs => if (p.comp.target.cpu.arch.isArm()) {
1265 try p.attr_application_buf.append(gpa, .{
1266 .tag = .calling_convention,
1267 .args = .{ .calling_convention = .{ .cc = switch (attr.args.pcs.kind) {
1268 .aapcs => .arm_aapcs,
1269 .@"aapcs-vfp" => .arm_aapcs_vfp,
1270 } } },
1271 .syntax = attr.syntax,
1272 });
1273 } else {
1274 try p.err(tok, .callconv_not_supported, .{"pcs"});
1275 },
1276 .riscv_vector_cc => if (p.comp.target.cpu.arch.isRISCV()) {
1277 try p.attr_application_buf.append(gpa, .{
1278 .tag = .calling_convention,
1279 .args = .{ .calling_convention = .{ .cc = .riscv_vector } },
1280 .syntax = attr.syntax,
1281 });
1282 } else {
1283 try p.err(tok, .callconv_not_supported, .{"pcs"});
1284 },
1285 .aarch64_sve_pcs => if (p.comp.target.cpu.arch.isAARCH64()) {
1286 try p.attr_application_buf.append(gpa, .{
1287 .tag = .calling_convention,
1288 .args = .{ .calling_convention = .{ .cc = .aarch64_sve_pcs } },
1289 .syntax = attr.syntax,
1290 });
1291 } else {
1292 try p.err(tok, .callconv_not_supported, .{"pcs"});
1293 },
1294 .aarch64_vector_pcs => if (p.comp.target.cpu.arch.isAARCH64()) {
1295 try p.attr_application_buf.append(gpa, .{
1296 .tag = .calling_convention,
1297 .args = .{ .calling_convention = .{ .cc = .aarch64_vector_pcs } },
1298 .syntax = attr.syntax,
1299 });
1300 } else {
1301 try p.err(tok, .callconv_not_supported, .{"pcs"});
1302 },
1303 .sysv_abi => if (p.comp.target.cpu.arch == .x86_64 and p.comp.target.os.tag == .windows) {
1304 try p.attr_application_buf.append(gpa, .{
1305 .tag = .calling_convention,
1306 .args = .{ .calling_convention = .{ .cc = .x86_64_sysv } },
1307 .syntax = attr.syntax,
1308 });
1309 },
1310 .ms_abi => if (p.comp.target.cpu.arch == .x86_64 and p.comp.target.os.tag != .windows) {
1311 try p.attr_application_buf.append(gpa, .{
1312 .tag = .calling_convention,
1313 .args = .{ .calling_convention = .{ .cc = .x86_64_win } },
1314 .syntax = attr.syntax,
1315 });
1316 },
1317 else => unreachable,
1318 }
1319}
1320
1321fn applyBoundsSafetyAttr(bounds: Type.Pointer.Bounds, p: *Parser, tok: TokenIndex, qt: *QualType) !void {
1322 if (qt.isInvalid()) return;
1323 const pointer = qt.get(p.comp, .pointer) orelse {
1324 return p.err(tok, .attribute_requires_pointer, .{@tagName(bounds)});
1325 };
1326 if (pointer.bounds == bounds) {
1327 return p.err(tok, .redundant_bounds_annotation, .{@tagName(bounds)});
1328 }
1329 if (pointer.bounds != .c) {
1330 return p.err(tok, .multiple_bounds_annotations, .{});
584 pub fn fromKeyword(id: Tree.Token.Id) Namespaced {
585 return .{ .keyword = switch (id) {
586 .keyword_alignas => ._Alignas,
587 .keyword_c23_alignas => .alignas,
588 .keyword_noreturn => .noreturn,
589 .keyword_asm, .keyword_asm1, .keyword_asm2 => .asm_label,
590 .keyword_nonnull => .nonnull,
591 .keyword_null_unspecified => .null_unspecified,
592 .keyword_nullable_result => .nullable_result,
593 .keyword_nullable => .nullable,
594 .keyword_forceinline => .__forceinline,
595 .keyword_forceinline2 => ._forceinline,
596 .keyword_stdcall => .__stdcall,
597 .keyword_stdcall2 => ._stdcall,
598 .keyword_thiscall => .__thiscall,
599 .keyword_thiscall2 => ._thiscall,
600 .keyword_vectorcall => .__vectorcall,
601 .keyword_vectorcall2 => ._vectorcall,
602 .keyword_fastcall => .__fastcall,
603 .keyword_fastcall2 => ._fastcall,
604 .keyword_regcall => ._regcall,
605 .keyword_cdecl => .__cdecl,
606 .keyword_cdecl2 => ._cdecl,
607 .keyword_ptr64 => .ptr64,
608 .keyword_ptr32 => .ptr32,
609 .keyword_sptr => .sptr,
610 .keyword_uptr => .uptr,
611 else => unreachable,
612 } };
1331613 }
1332 qt.* = try p.comp.type_store.put(p.comp.gpa, .{ .pointer = .{
1333 .child = pointer.child,
1334 .decayed = pointer.decayed,
1335 .bounds = bounds,
1336 } });
1337}
1338614
1339/// These come from explicit MSVC keywords like __stdcall, __fastcall, etc
1340fn applyKeywordCallingConvention(attr: Attribute, p: *Parser, tok: TokenIndex, qt: QualType) !void {
1341 if (!qt.isCallable(p.comp)) {
1342 return p.err(tok, .callconv_non_func, .{ p.tokSlice(tok), qt });
1343 }
1344 switch (attr.args.calling_convention.cc) {
1345 .c => {},
1346 .stdcall, .thiscall, .fastcall, .regcall => switch (p.comp.target.cpu.arch) {
1347 .x86 => try p.attr_application_buf.append(p.comp.gpa, attr),
1348 else => try p.err(tok, .callconv_not_supported, .{p.tok_ids[tok].symbol()}),
1349 },
1350 .vectorcall => switch (p.comp.target.cpu.arch) {
1351 .x86, .aarch64, .aarch64_be => try p.attr_application_buf.append(p.comp.gpa, attr),
1352 else => try p.err(tok, .callconv_not_supported, .{p.tok_ids[tok].symbol()}),
1353 },
1354 .riscv_vector,
1355 .aarch64_sve_pcs,
1356 .aarch64_vector_pcs,
1357 .arm_aapcs,
1358 .arm_aapcs_vfp,
1359 .x86_64_sysv,
1360 .x86_64_win,
1361 => unreachable, // These can't come from keyword syntax
615 pub fn hasIdentifierArg(n: Namespaced) bool {
616 return switch (n) {
617 .gnu => |gnu_attr| switch (gnu_attr) {
618 .access, .mode, .format => true,
619 else => false,
620 },
621 .declspec => |declspec_attr| switch (declspec_attr) {
622 .spectre => true,
623 else => false,
624 },
625 else => false,
626 };
1362627 }
1363}
1364
1365fn applySelected(qt: QualType, p: *Parser) !QualType {
1366 if (p.attr_application_buf.items.len == 0) return qt;
1367 if (qt.isInvalid()) return qt;
1368 return (try p.comp.type_store.put(p.comp.gpa, .{ .attributed = .{
1369 .base = qt,
1370 .attributes = p.attr_application_buf.items,
1371 } })).withQualifiers(qt);
1372}
628};
1373629
1374pub fn visibilityFromString(s: []const u8) ?std.builtin.SymbolVisibility {
1375 if (mem.eql(u8, s, "internal")) {
1376 return .hidden;
1377 }
1378 const visibility = std.meta.stringToEnum(std.builtin.SymbolVisibility, s) orelse return null;
1379 // compiler will notify us if .internal is added as a visibility type
1380 switch (visibility) {
1381 .default, .hidden, .protected => {},
630pub fn normalize(name: []const u8) []const u8 {
631 if (name.len >= 4 and mem.startsWith(u8, name, "__") and mem.endsWith(u8, name, "__")) {
632 return name[2 .. name.len - 2];
1382633 }
1383 return visibility;
634 return name;
1384635}
lib/compiler/aro/aro/Attribute/Diagnostic.zig created+334
......@@ -0,0 +1,334 @@
1const std = @import("std");
2
3const Diagnostics = @import("../Diagnostics.zig");
4
5const Diagnostic = @This();
6
7fmt: []const u8,
8kind: Diagnostics.Message.Kind,
9opt: ?Diagnostics.Option = null,
10
11// TODO get rid of this
12pub const unimplemented: Diagnostic = .{
13 .fmt = "TODO: implement {at} attribute",
14 .kind = .warning,
15};
16
17pub const arg_count_zero: Diagnostic = .{
18 .fmt = "{at} attribute takes no arguments",
19 .kind = .@"error",
20};
21
22pub const arg_count_one: Diagnostic = .{
23 .fmt = "{at} attribute takes one argument",
24 .kind = .@"error",
25};
26
27pub const arg_count: Diagnostic = .{
28 .fmt = "{at} attribute takes {d} arguments",
29 .kind = .@"error",
30};
31
32pub const not_enough_args: Diagnostic = .{
33 .fmt = "{at} attribute takes at least {d} argument(s)",
34 .kind = .@"error",
35};
36
37pub const too_many_args: Diagnostic = .{
38 .fmt = "{at} attribute takes at most {d} argument(s)",
39 .kind = .@"error",
40};
41
42pub const arg_type: Diagnostic = .{
43 .fmt = "expected {s} as argmuent of {at} attribute but got {s}",
44 .kind = .@"error",
45};
46
47pub const arg_int_out_of_range: Diagnostic = .{
48 .fmt = "attribute {at} argument value '{value}' out of range",
49 .kind = .@"error",
50};
51
52pub const arg_requires_string: Diagnostic = .{
53 .fmt = "expected string literal as argmuent of {at} attribute",
54 .kind = .@"error",
55};
56
57pub const unknown_enum: Diagnostic = .{
58 .fmt = "unknown {at} argument. Possible values are: {choices}",
59 .kind = .warning,
60 .opt = .@"ignored-attributes",
61};
62
63pub const invalid_target: Diagnostic = .{
64 .fmt = "{at} attribute only applies to {choices}",
65 .kind = .warning,
66 .opt = .@"ignored-attributes",
67};
68
69pub const incompatible_attr: Diagnostic = .{
70 .fmt = "{at} and {at} attributes are not compatible",
71 .kind = .@"error",
72};
73
74pub const invalid_stmt_attr: Diagnostic = .{
75 .fmt = "{at} attribute cannot be applied to a statement",
76 .kind = .@"error",
77};
78
79pub const stmt_attr_on_decl: Diagnostic = .{
80 .fmt = "{at} attribute cannot be applied to a declaration",
81 .kind = .@"error",
82};
83
84pub const previous_attribute: Diagnostic = .{
85 .fmt = "previous attribute is here",
86 .kind = .note,
87};
88
89pub const ignored_attribute: Diagnostic = .{
90 .fmt = "{at} attribute ignored",
91 .kind = .warning,
92 .opt = .@"ignored-attributes",
93};
94
95pub const conflicting_attribute: Diagnostic = .{
96 .fmt = "conflicting attribute is here",
97 .kind = .note,
98};
99
100// vector_size
101pub const invalid_vec_elem_ty: Diagnostic = .{
102 .fmt = "invalid vector element type {qt}",
103 .kind = .@"error",
104};
105
106pub const bit_int_vec_too_small: Diagnostic = .{
107 .fmt = "'_BitInt' vector element width must be at least as wide as 'CHAR_BIT'",
108 .kind = .@"error",
109};
110
111pub const bit_int_vec_not_pow2: Diagnostic = .{
112 .fmt = "'_BitInt' vector element width must be a power of 2",
113 .kind = .@"error",
114};
115
116pub const vec_size_not_multiple: Diagnostic = .{
117 .fmt = "vector size not an integral multiple of component size",
118 .kind = .@"error",
119};
120
121// alignment
122pub const alignas_on_func: Diagnostic = .{
123 .fmt = "{at} attribute only applies to variables and fields",
124 .kind = .@"error",
125};
126
127pub const alignas_on_param: Diagnostic = .{
128 .fmt = "{at} attribute cannot be applied to a function parameter",
129 .kind = .@"error",
130};
131
132pub const alignas_bitfield: Diagnostic = .{
133 .fmt = "{at} attribute cannot be applied to a bit-field",
134 .kind = .@"error",
135};
136
137pub const minimum_alignment: Diagnostic = .{
138 .fmt = "requested alignment is less than minimum alignment of {d}",
139 .kind = .@"error",
140};
141
142pub const maximum_alignment: Diagnostic = .{
143 .fmt = "requested alignment of {d} is too large",
144 .kind = .@"error",
145};
146
147pub const negative_alignment: Diagnostic = .{
148 .fmt = "requested negative alignment of {d} is invalid",
149 .kind = .@"error",
150};
151
152pub const non_pow2_align: Diagnostic = .{
153 .fmt = "requested alignment is not a power of 2",
154 .kind = .@"error",
155};
156
157pub const msvc_enum_align_ignored: Diagnostic = .{
158 .fmt = "alignment specifier is ignored on enum",
159 .kind = .warning,
160 .opt = .@"ignored-attributes",
161};
162
163// warn_unused_result
164pub const warn_unused_result_void: Diagnostic = .{
165 .fmt = "attribute {at} cannot be applied to functions without return value",
166 .kind = .warning,
167 .opt = .@"ignored-attributes",
168};
169
170// nonnull
171pub const nonnull_param_args: Diagnostic = .{
172 .fmt = "{at} attribute when used on parameters takes no arguments",
173 .kind = .warning,
174 .opt = .@"ignored-attributes",
175};
176
177pub const param_out_of_bounds: Diagnostic = .{
178 .fmt = "{at} attribute parameter {d} is out of bounds",
179 .kind = .@"error",
180};
181
182pub const nonnull_pointer_only: Diagnostic = .{
183 .fmt = "{at} attribute only applies to pointer arguments",
184 .kind = .warning,
185 .opt = .@"ignored-attributes",
186};
187
188// neon_vector_type, neon_polyvector_type
189pub const invalid_neon_vec_size: Diagnostic = .{
190 .fmt = "Neon vector size must be 64 or 128 bits",
191 .kind = .@"error",
192};
193
194// transparent_union
195pub const transparent_union_forward_decl: Diagnostic = .{
196 .fmt = "{at} attribute can only be applied to a union definition; attribute ignored",
197 .kind = .warning,
198 .opt = .@"ignored-attributes",
199};
200
201pub const transparent_union_wrong_type: Diagnostic = .{
202 .fmt = "{at} attribute only applies to unions",
203 .kind = .warning,
204 .opt = .@"ignored-attributes",
205};
206
207pub const transparent_union_one_field: Diagnostic = .{
208 .fmt = "transparent union definition must contain at least one field; {at} attribute ignored",
209 .opt = .@"ignored-attributes",
210 .kind = .warning,
211};
212
213pub const transparent_union_size: Diagnostic = .{
214 .fmt = "size of field '{s}' ({d} bits) does not match the size of the first field in transparent union; {at} attribute ignored",
215 .kind = .warning,
216 .opt = .@"ignored-attributes",
217};
218
219pub const transparent_union_size_note: Diagnostic = .{
220 .fmt = "size of first field is {d}",
221 .kind = .note,
222};
223
224// designated_init
225pub const designated_init_invalid: Diagnostic = .{
226 .fmt = "{at} attribute is only valid on 'struct' type'",
227 .kind = .@"error",
228};
229
230// fallthrough
231pub const fallthrough_non_empty: Diagnostic = .{
232 .fmt = "{at} attribute is only allowed on empty statements",
233 .kind = .@"error",
234};
235
236pub const fallthrough_outside_switch: Diagnostic = .{
237 .fmt = "{at} attribute outside a switch statement",
238 .kind = .@"error",
239};
240
241pub const fallthrough_not_before_case: Diagnostic = .{
242 .fmt = "{at} attribute not preceding a switch label",
243 .kind = .@"error",
244};
245
246// callconvs
247pub const callconv_non_func: Diagnostic = .{
248 .fmt = "{at} only applies to function types; type here is {qt}",
249 .kind = .warning,
250 .opt = .@"ignored-attributes",
251};
252
253pub const callconv_not_supported: Diagnostic = .{
254 .fmt = "{at} calling convention is not supported for this target",
255 .kind = .warning,
256 .opt = .@"ignored-attributes",
257};
258
259pub const callconv_incompatible: Diagnostic = .{
260 .fmt = "{s} and {s} attributes are not compatible",
261 .kind = .warning,
262 .opt = .@"ignored-attributes",
263};
264
265// visibility
266pub const visibility_protected_invalid: Diagnostic = .{
267 .fmt = "target does not support 'protected' visibility; using 'default'",
268 .kind = .warning,
269 .opt = .@"unsupported-visibility",
270};
271
272pub const incompatible_visibility: Diagnostic = .{
273 .fmt = "visibility does not match previous declaration",
274 .kind = .@"error",
275};
276
277// nullability
278pub const conflicting_nullability: Diagnostic = .{
279 .fmt = "nullability specifier '{s}' conflicts with existing specifier '{s}'",
280 .kind = .@"error",
281};
282
283pub const invalid_nullability: Diagnostic = .{
284 .fmt = "nullability specifier cannot be applied to non-pointer type {qt}",
285 .kind = .@"error",
286};
287
288// [[_Noreturn]]
289pub const deprecated_noreturn: Diagnostic = .{
290 .fmt = "the '[[_Noreturn]]' attribute spelling is deprecated in C23; use '[[noreturn]]' instead",
291 .kind = .warning,
292 .opt = .@"deprecated-attributes",
293};
294
295// cleanup
296pub const cleanup_non_function: Diagnostic = .{
297 .fmt = "{at} argument '{s}' is not a function",
298 .kind = .@"error",
299};
300
301pub const cleanup_one_arg: Diagnostic = .{
302 .fmt = "{at} function '{s}' must take 1 parameter",
303 .kind = .@"error",
304};
305
306pub const cleanup_arg_ty: Diagnostic = .{
307 .fmt = "{at} function '{s}' parameter {qt} is incompatible with {qt}",
308 .kind = .@"error",
309};
310
311// gnu_inline
312pub const gnu_inline_non_inline: Diagnostic = .{
313 .fmt = "{at} attribute requires function to be marked 'inline', attribute ignored",
314 .kind = .warning,
315 .opt = .@"ignored-attributes",
316};
317
318// section
319pub const conflicting_section_name: Diagnostic = .{
320 .fmt = "{at} does not match previous declaration",
321 .kind = .warning,
322 .opt = .section,
323};
324
325// linkages
326pub const invalid_weak: Diagnostic = .{
327 .fmt = "{at} cannot be applied to declarations with internal linkage",
328 .kind = .@"error",
329};
330
331pub const invalid_selectany: Diagnostic = .{
332 .fmt = "{at} can only be applied to data items with external linkage",
333 .kind = .@"error",
334};
lib/compiler/aro/aro/Attribute/Map.zig created+336
......@@ -0,0 +1,336 @@
1const std = @import("std");
2const mem = std.mem;
3const Attribute = @import("../Attribute.zig");
4const Compilation = @import("../Compilation.zig");
5const Tree = @import("../Tree.zig");
6const TokenIndex = Tree.TokenIndex;
7
8const Repr = struct {
9 tag: Tag,
10 data: u32,
11 syntax: Attribute.Syntax,
12 name: Attribute.Namespaced,
13
14 pub const Tag = enum(u8) {
15 @"packed",
16 hot,
17 cold,
18 @"const",
19 alignment,
20 alignment_null,
21 deprecated_replacement,
22 deprecated_reason,
23 deprecated,
24 unavailable_reason,
25 unavailable,
26 warning,
27 @"error",
28 warn_unused_result_msg,
29 warn_unused_result,
30 nonnull_zero,
31 nonnull_one,
32 nonnull,
33 transparent_union,
34 designated_init,
35 fallthrough,
36 visibility_default,
37 visibility_hidden,
38 visibility_protected,
39 noreturn,
40 cleanup,
41 always_inline,
42 gnu_inline,
43 section,
44 weak,
45 selectany,
46 internal_linkage,
47 unsequenced,
48 reproducible,
49 unused,
50 };
51};
52
53const Map = @This();
54
55attributes: std.MultiArrayList(Repr) = .empty,
56extra: std.ArrayList(u32) = .empty,
57decl_attrs: std.AutoHashMapUnmanaged(Tree.Node.Index, struct { u32, u32 }) = .empty,
58
59pub const Ref = enum(u32) { _ };
60
61pub fn deinit(map: *Map, gpa: mem.Allocator) void {
62 map.attributes.deinit(gpa);
63 map.extra.deinit(gpa);
64 map.decl_attrs.deinit(gpa);
65 map.* = undefined;
66}
67
68pub fn put(map: *Map, gpa: mem.Allocator, attribute: Attribute) !Ref {
69 var repr: Repr = .{
70 .tag = undefined,
71 .data = attribute.tok,
72 .name = attribute.name,
73 .syntax = attribute.syntax,
74 };
75 switch (attribute.args) {
76 inline .@"packed",
77 .hot,
78 .cold,
79 .@"const",
80 .transparent_union,
81 .designated_init,
82 .fallthrough,
83 .noreturn,
84 .always_inline,
85 .gnu_inline,
86 .weak,
87 .selectany,
88 .internal_linkage,
89 .unsequenced,
90 .reproducible,
91 .unused,
92 => |_, tag| repr.tag = @field(Repr.Tag, @tagName(tag)),
93 .alignment => |opt_value| if (opt_value) |value| {
94 repr.tag = .alignment;
95 repr.data = @intCast(map.extra.items.len);
96 try map.extra.appendSlice(gpa, &.{ attribute.tok, value });
97 } else {
98 repr.tag = .alignment_null;
99 },
100 .deprecated => |deprecated| if (deprecated.replacement) |replacement| {
101 repr.tag = .deprecated_replacement;
102 repr.data = @intCast(map.extra.items.len);
103 try map.extra.append(gpa, attribute.tok);
104 try map.putString(gpa, deprecated.msg.?);
105 try map.putString(gpa, replacement);
106 } else if (deprecated.msg) |msg| {
107 repr.tag = .deprecated_reason;
108 repr.data = @intCast(map.extra.items.len);
109 try map.extra.append(gpa, attribute.tok);
110 try map.putString(gpa, msg);
111 } else {
112 repr.tag = .deprecated;
113 },
114 .unavailable => |opt_msg| if (opt_msg) |msg| {
115 repr.tag = .unavailable_reason;
116 repr.data = @intCast(map.extra.items.len);
117 try map.extra.append(gpa, attribute.tok);
118 try map.putString(gpa, msg);
119 } else {
120 repr.tag = .unavailable;
121 },
122 .warning => |msg| {
123 repr.tag = .warning;
124 repr.data = @intCast(map.extra.items.len);
125 try map.extra.append(gpa, attribute.tok);
126 try map.putString(gpa, msg);
127 },
128 .@"error" => |msg| {
129 repr.tag = .@"error";
130 repr.data = @intCast(map.extra.items.len);
131 try map.extra.append(gpa, attribute.tok);
132 try map.putString(gpa, msg);
133 },
134 .warn_unused_result => |opt_msg| if (opt_msg) |msg| {
135 repr.tag = .warn_unused_result_msg;
136 repr.data = @intCast(map.extra.items.len);
137 try map.extra.append(gpa, attribute.tok);
138 try map.putString(gpa, msg);
139 } else {
140 repr.tag = .warn_unused_result;
141 },
142 .nonnull => |positions| if (positions.len == 0) {
143 repr.tag = .nonnull_zero;
144 } else if (positions.len == 1) {
145 repr.tag = .nonnull_one;
146 repr.data = @intCast(map.extra.items.len);
147 try map.extra.appendSlice(gpa, &.{ attribute.tok, positions[0] });
148 } else {
149 repr.tag = .nonnull;
150 repr.data = @intCast(map.extra.items.len);
151 try map.extra.ensureUnusedCapacity(gpa, 2 + positions.len);
152 map.extra.appendAssumeCapacity(attribute.tok);
153 map.extra.appendAssumeCapacity(@intCast(positions.len));
154 map.extra.appendSliceAssumeCapacity(positions);
155 },
156 .visibility => |kind| {
157 repr.tag = switch (kind) {
158 .default => .visibility_default,
159 .hidden => .visibility_hidden,
160 .protected => .visibility_protected,
161 };
162 },
163 .cleanup => |cleanup| {
164 repr.tag = .cleanup;
165 repr.data = @intCast(map.extra.items.len);
166 try map.extra.append(gpa, attribute.tok);
167 try map.extra.append(gpa, @backingInt(cleanup.function));
168 },
169 .section => |name| {
170 repr.tag = .section;
171 repr.data = @intCast(map.extra.items.len);
172 try map.extra.append(gpa, attribute.tok);
173 try map.putString(gpa, name);
174 },
175 else => @panic("TODO"),
176 }
177
178 const index = map.attributes.len;
179 try map.attributes.append(gpa, repr);
180 return @fromBackingInt(@intCast(index));
181}
182
183pub fn get(map: *const Map, ref: Ref) Attribute {
184 const repr = map.attributes.get(@backingInt(ref));
185 var res: Attribute = .{
186 .name = repr.name,
187 .syntax = repr.syntax,
188 .tok = repr.data,
189 .args = undefined,
190 };
191 switch (repr.tag) {
192 inline .@"packed",
193 .hot,
194 .cold,
195 .@"const",
196 .transparent_union,
197 .designated_init,
198 .fallthrough,
199 .noreturn,
200 .always_inline,
201 .gnu_inline,
202 .weak,
203 .selectany,
204 .internal_linkage,
205 .unsequenced,
206 .reproducible,
207 .unused,
208 => |tag| res.args = @field(Attribute.Args, @tagName(tag)),
209 .alignment_null => res.args = .{ .alignment = null },
210 .alignment => {
211 res.tok = map.extra.items[repr.data];
212 res.args = .{ .alignment = map.extra.items[repr.data + 1] };
213 },
214 .deprecated_replacement => {
215 res.tok = map.extra.items[repr.data];
216 const msg, const replacement_index = map.getString(repr.data + 1);
217 const replacement, _ = map.getString(replacement_index);
218 res.args = .{ .deprecated = .{
219 .msg = msg,
220 .replacement = replacement,
221 } };
222 },
223 .deprecated_reason => {
224 res.tok = map.extra.items[repr.data];
225 const msg, _ = map.getString(repr.data + 1);
226 res.args = .{ .deprecated = .{ .msg = msg } };
227 },
228 .deprecated => res.args = .{ .deprecated = .{} },
229 .unavailable_reason => {
230 res.tok = map.extra.items[repr.data];
231 const msg, _ = map.getString(repr.data + 1);
232 res.args = .{ .unavailable = msg };
233 },
234 .unavailable => res.args = .{ .unavailable = null },
235 .warning => {
236 res.tok = map.extra.items[repr.data];
237 const msg, _ = map.getString(repr.data + 1);
238 res.args = .{ .warning = msg };
239 },
240 .@"error" => {
241 res.tok = map.extra.items[repr.data];
242 const msg, _ = map.getString(repr.data + 1);
243 res.args = .{ .@"error" = msg };
244 },
245 .warn_unused_result_msg => {
246 res.tok = map.extra.items[repr.data];
247 const msg, _ = map.getString(repr.data + 1);
248 res.args = .{ .warn_unused_result = msg };
249 },
250 .warn_unused_result => res.args = .{ .warn_unused_result = null },
251 .nonnull => {
252 res.tok = map.extra.items[repr.data];
253 const positions_len = map.extra.items[repr.data + 1];
254 res.args = .{ .nonnull = map.extra.items[repr.data + 2 ..][0..positions_len] };
255 },
256 .nonnull_one => {
257 res.tok = map.extra.items[repr.data];
258 res.args = .{ .nonnull = map.extra.items[repr.data + 1 ..][0..1] };
259 },
260 .nonnull_zero => res.args = .{ .nonnull = &.{} },
261 .visibility_default => res.args = .{ .visibility = .default },
262 .visibility_hidden => res.args = .{ .visibility = .hidden },
263 .visibility_protected => res.args = .{ .visibility = .protected },
264 .cleanup => {
265 res.tok = map.extra.items[repr.data];
266 res.args = .{ .cleanup = .{ .function = @fromBackingInt(map.extra.items[repr.data + 1]) } };
267 },
268 .section => {
269 res.tok = map.extra.items[repr.data];
270 const name, _ = map.getString(repr.data + 1);
271 res.args = .{ .section = name };
272 },
273 }
274 return res;
275}
276
277fn putString(map: *Map, gpa: mem.Allocator, str: []const u8) !void {
278 const str_len: u32 = @intCast(str.len);
279 const aligned_len = mem.alignForward(u32, str_len, 4) / 4;
280 try map.extra.ensureUnusedCapacity(gpa, aligned_len + 1);
281 map.extra.appendAssumeCapacity(str_len);
282 const dest = map.extra.addManyAsSliceAssumeCapacity(aligned_len);
283 @memcpy(@as([]u8, @ptrCast(dest))[0..str.len], str);
284}
285
286fn getString(map: *const Map, index: u32) struct { []const u8, u32 } {
287 const str_len = map.extra.items[index];
288 const aligned_len = mem.alignForward(u32, str_len, 4) / 4;
289 return .{
290 @as([]const u8, @ptrCast(map.extra.items[index + 1 ..]))[0..str_len],
291 index + 1 + aligned_len,
292 };
293}
294
295pub fn attrs(map: *const Map, opt_node: anytype) []const Attribute.Map.Ref {
296 const node: Tree.Node.Index = opt_node.unpack() orelse return &.{};
297 const index, const len = map.decl_attrs.get(node) orelse return &.{};
298 return @ptrCast(map.extra.items[index..][0..len]);
299}
300
301pub fn getAttribute(map: *const Map, opt_node: anytype, tag: Attribute.Tag) ?Attribute {
302 const node: Tree.Node.Index = opt_node.unpack() orelse return null;
303 const node_attrs = map.attrs(node);
304
305 var i: usize = node_attrs.len;
306 while (i > 0) {
307 i -= 1;
308 const attr = map.get(node_attrs[i]);
309 if (attr.args == tag) return attr;
310 }
311 return null;
312}
313
314pub fn requestedAlignment(map: *const Map, opt_node: anytype, comp: *const Compilation) ?u32 {
315 const node: Tree.Node.Index = opt_node.unpack() orelse return null;
316 var max_requested: ?u32 = null;
317 for (map.attrs(node)) |ref| {
318 const attr = map.get(ref);
319 if (attr.args != .alignment) continue;
320
321 const requested = if (attr.args.alignment) |alignment| alignment else comp.target.defaultAlignment();
322 if (max_requested == null or max_requested.? < requested) {
323 max_requested = requested;
324 }
325 }
326 return max_requested;
327}
328
329pub fn hasAttribute(map: *const Map, opt_node: anytype, tag: Attribute.Tag) bool {
330 const node: Tree.Node.Index = opt_node.unpack() orelse return false;
331 for (map.attrs(node)) |ref| {
332 const attr = map.get(ref);
333 if (attr.args == tag) return true;
334 }
335 return false;
336}
lib/compiler/aro/aro/Attribute/Wip.zig created+1467
......@@ -0,0 +1,1467 @@
1const std = @import("std");
2const Allocator = std.mem.Allocator;
3const assert = std.debug.assert;
4
5const Attribute = @import("../Attribute.zig");
6const Diagnostic = @import("Diagnostic.zig");
7const Parser = @import("../Parser.zig");
8const Tree = @import("../Tree.zig");
9const TokenIndex = Tree.TokenIndex;
10const TypeStore = @import("../TypeStore.zig");
11const QualType = TypeStore.QualType;
12const Type = TypeStore.Type;
13
14const Wip = @This();
15
16attrs: std.ArrayList(Parsed) = .empty,
17args: std.ArrayList(Parser.Result) = .empty,
18applied: std.ArrayList(Attribute.Map.Ref) = .empty,
19top: u32 = 0,
20
21current: struct {
22 attr: *Parsed,
23 target: ?Tree.Node.Index = null,
24 qt: QualType,
25 parser: *Parser,
26 arg_i: u32 = 0,
27
28 fn node(c: *const @This()) Tree.Node {
29 return c.target.?.get(&c.parser.tree);
30 }
31} = undefined,
32
33pub const Parsed = struct {
34 name: Attribute.Namespaced,
35 syntax: Attribute.Syntax,
36 args_index: u32,
37 args_len: u32,
38 tok: TokenIndex,
39 used_as_type_attr: bool = false,
40
41 fn args(a: Parsed, wip: *Wip) []const Parser.Result {
42 return wip.args.items[a.args_index..][0..a.args_len];
43 }
44};
45
46comptime {
47 assert(@sizeOf(Parsed) == 16);
48}
49
50pub const State = struct {
51 attrs: u32,
52 args: u32,
53 top: u32,
54};
55
56pub fn state(wip: *Wip, move_top: bool) State {
57 defer {
58 if (move_top) wip.top = @intCast(wip.attrs.items.len);
59 }
60 return .{ .attrs = @intCast(wip.attrs.items.len), .args = @intCast(wip.args.items.len), .top = wip.top };
61}
62
63pub fn restore(wip: *Wip, old_state: State) void {
64 wip.attrs.items.len = old_state.attrs;
65 wip.args.items.len = old_state.args;
66 wip.top = old_state.top;
67}
68
69pub fn deinit(wip: *Wip, gpa: Allocator) void {
70 wip.attrs.deinit(gpa);
71 wip.args.deinit(gpa);
72 wip.applied.deinit(gpa);
73 wip.* = undefined;
74}
75
76pub fn addKeyword(wip: *Wip, p: *const Parser, keyword: TokenIndex, args: []const Parser.Result) !void {
77 const args_index = wip.args.items.len;
78 const gpa = p.comp.gpa;
79 try wip.args.appendSlice(gpa, args);
80 try wip.attrs.append(gpa, .{
81 .name = .fromKeyword(p.tok_ids[keyword]),
82 .syntax = .keyword,
83 .args_len = @intCast(args.len),
84 .args_index = @intCast(args_index),
85 .tok = keyword,
86 });
87}
88
89fn err(wip: *Wip, diagnostic: Diagnostic, args: anytype) !void {
90 try wip.errTok(wip.current.attr.tok, diagnostic, args);
91}
92
93fn errTok(wip: *Wip, tok: TokenIndex, diagnostic: Diagnostic, args: anytype) !void {
94 try wip.current.parser.err(tok, .{
95 .fmt = diagnostic.fmt,
96 .kind = diagnostic.kind,
97 .opt = diagnostic.opt,
98 }, args);
99}
100
101fn argCountMinMax(wip: *Wip, min: u32, max: u32) !bool {
102 const actual_count = wip.current.attr.args_len;
103
104 if (actual_count < min) {
105 try wip.err(.not_enough_args, .{ wip.current.attr, min });
106 return true;
107 } else if (actual_count > max) {
108 try wip.err(.too_many_args, .{ wip.current.attr, max });
109 return true;
110 }
111 return false;
112}
113
114fn argCount(wip: *Wip, count: u32) !bool {
115 const actual_count = wip.current.attr.args_len;
116 if (actual_count == count) return false;
117
118 switch (count) {
119 0 => try wip.err(.arg_count_zero, .{wip.current.attr}),
120 1 => try wip.err(.arg_count_one, .{wip.current.attr}),
121 else => try wip.err(.arg_count, .{ wip.current.attr, count }),
122 }
123 return true;
124}
125
126fn arg(wip: *Wip, comptime WantedBase: type) !?WantedBase {
127 const args = wip.current.attr.args(wip);
128 const Wanted = if (@typeInfo(WantedBase) == .optional) blk: {
129 if (wip.current.arg_i >= args.len) return @as(WantedBase, null);
130 break :blk @typeInfo(WantedBase).optional.child;
131 } else WantedBase;
132 const arg_res = args[wip.current.arg_i];
133 wip.current.arg_i += 1;
134
135 const comp = wip.current.parser.comp;
136 const tree = &wip.current.parser.tree;
137 const tok = arg_res.node.tok(tree);
138
139 const string = "a string";
140 const identifier = "an identifier";
141 const int = "an integer constant";
142 const expression = "an expression";
143 const expected: []const u8 = switch (Wanted) {
144 []const u8 => string,
145 Tree.Node.DeclRef => identifier,
146 else => switch (@typeInfo(Wanted)) {
147 .int => int,
148 .@"enum" => if (Wanted.opts.enum_kind == .string) string else identifier,
149 else => comptime unreachable,
150 },
151 };
152
153 if (arg_res.val.opt_ref == .none) {
154 const node = arg_res.node.get(tree);
155 if (Wanted == Tree.Node.DeclRef and node == .decl_ref_expr) {
156 return node.decl_ref_expr;
157 }
158 if (@typeInfo(@TypeOf(Wanted)) == .@"enum" and Wanted.opts.enum_kind == .identifier and node == .identifier_arg) {
159 const str = tree.tokSlice(node.identifier_arg.identifier_tok);
160 if (Wanted.opts.map.get(str)) |enum_val| return enum_val;
161
162 try wip.errTok(tok, .unknown_enum, .{ wip.current.attr, Parser.ChoicesStr.init(Wanted.opts.map.keys(), null) });
163 return null;
164 }
165
166 if (Wanted == []const u8) {
167 try wip.errTok(tok, .arg_requires_string, .{wip.current.attr});
168 return null;
169 }
170
171 try wip.errTok(tok, .arg_type, .{ expected, wip.current.attr, expression });
172 return null;
173 }
174 const key = comp.interner.get(arg_res.val.ref());
175 switch (key) {
176 .int => {
177 if (@typeInfo(Wanted) == .int) {
178 if (arg_res.val.toInt(Wanted, comp)) |some| return some;
179 try wip.errTok(tok, .arg_int_out_of_range, .{ wip.current.attr, arg_res });
180 return null;
181 }
182 },
183 .bytes => |bytes| {
184 const str = bytes[0 .. bytes.len - 1];
185 if (Wanted == []const u8) {
186 validate: {
187 const node = arg_res.node.get(tree);
188 if (node != .string_literal_expr) break :validate;
189 switch (node.string_literal_expr.qt.childType(comp).get(comp, .int).?) {
190 .char, .uchar, .schar => {},
191 else => break :validate,
192 }
193 return str;
194 }
195
196 try wip.errTok(tok, .arg_requires_string, .{wip.current.attr});
197 return null;
198 } else if (@typeInfo(Wanted) == .@"enum" and Wanted.opts.enum_kind == .string) {
199 if (Wanted.opts.map.get(str)) |enum_val| return enum_val;
200
201 try wip.errTok(tok, .unknown_enum, .{ wip.current.attr, Parser.ChoicesStr.init(Wanted.opts.map.keys(), '"') });
202 return null;
203 }
204 },
205 else => {},
206 }
207
208 try wip.errTok(tok, .arg_type, .{
209 expected,
210 wip.current.attr,
211 switch (key) {
212 .int => int,
213 .bytes => string,
214 .float => "a floating point number",
215 .complex => "a complex floating point number",
216 .null => "nullptr",
217 else => unreachable,
218 },
219 });
220 return null;
221}
222
223const Target = enum {
224 function,
225 function_pointer,
226 variable,
227 local_variable,
228 global_variable,
229 label,
230 param,
231 tag,
232 field,
233 typedef,
234 function_type,
235
236 pub fn str(t: Target) []const u8 {
237 return switch (t) {
238 .function => "functions",
239 .function_pointer => "function pointers",
240 .variable => "variables",
241 .local_variable => "local variables",
242 .global_variable => "global variables",
243 .label => "labels",
244 .param => "parameters",
245 .tag => "tag types",
246 .field => "fields",
247 .typedef => "typedefs",
248 .function_type => "functions and function pointers",
249 };
250 }
251};
252
253fn checkTarget(wip: *Wip, list: []const Target) !bool {
254 const node = wip.current.node();
255 for (list) |target| switch (target) {
256 .function => switch (node) {
257 .function => return false,
258 else => {},
259 },
260 .function_pointer => {
261 const comp = wip.current.parser.comp;
262 const qt = wip.current.qt;
263
264 const ptr: TypeStore.Type.Pointer = qt.get(comp, .pointer) orelse continue;
265 if (ptr.child.is(comp, .func)) return false;
266 },
267 .variable => switch (node) {
268 .variable => return false,
269 else => {},
270 },
271 .local_variable => switch (node) {
272 .variable => |variable| switch (variable.storage_class) {
273 .auto, .register => if (wip.current.parser.func.qt != null) return false,
274 .@"extern", .static => {},
275 },
276 else => {},
277 },
278 .global_variable => switch (node) {
279 .variable => |variable| switch (variable.storage_class) {
280 .static => {},
281 .auto, .register => if (wip.current.parser.func.qt == null) return false,
282 .@"extern" => return false,
283 },
284 else => {},
285 },
286 .label => switch (node) {
287 .labeled_stmt, .default_stmt, .case_stmt => return false,
288 else => {},
289 },
290 .param => switch (node) {
291 .param => return false,
292 else => {},
293 },
294 .tag => switch (node) {
295 .struct_decl,
296 .union_decl,
297 .enum_decl,
298 .struct_forward_decl,
299 .union_forward_decl,
300 .enum_forward_decl,
301 => return false,
302 else => {},
303 },
304 .field => switch (node) {
305 .enum_field, .record_field => return false,
306 else => {},
307 },
308 .typedef => switch (node) {
309 .typedef => return false,
310 else => {},
311 },
312 .function_type => {
313 const comp = wip.current.parser.comp;
314 const qt = wip.current.qt;
315
316 const base_qt = if (qt.get(comp, .pointer)) |pointer| pointer.child else qt;
317 if (base_qt.is(comp, .func)) return false;
318 },
319 };
320
321 try wip.err(.invalid_target, .{ wip.current.attr, Parser.Choices(Target).init(list, null) });
322 return true;
323}
324
325fn incompatible(wip: *Wip, attr: Attribute.Tag) !void {
326 const am = &wip.current.parser.tree.attr_map;
327 var i: usize = 0;
328 while (i < wip.applied.items.len) {
329 const prev_attr = am.get(wip.applied.items[i]);
330 if (prev_attr.args == attr) {
331 try wip.err(.incompatible_attr, .{ wip.current.attr, prev_attr });
332 try wip.errTok(prev_attr.tok, .conflicting_attribute, .{});
333 _ = wip.applied.orderedRemove(i);
334 continue;
335 }
336 i += 1;
337 }
338}
339
340fn add(wip: *Wip, args: Attribute.Args) !void {
341 const parser = wip.current.parser;
342 const gpa = parser.comp.gpa;
343 const current = wip.current.attr;
344 const ref = try parser.tree.attr_map.put(gpa, .{
345 .args = args,
346 .name = current.name,
347 .syntax = current.syntax,
348 .tok = current.tok,
349 });
350 try wip.applied.append(gpa, ref);
351}
352
353pub fn applyDeclAttrs(wip: *Wip, p: *Parser, decl: Tree.Node.Index, prev_decl: ?Tree.Node.Index) !void {
354 return wip.applyDeclAttrsExtra(p, decl, decl.qt(&p.tree), prev_decl);
355}
356
357pub fn applyDeclAttrsExtra(
358 wip: *Wip,
359 p: *Parser,
360 decl: Tree.Node.Index,
361 qt: QualType,
362 prev_decl: ?Tree.Node.Index,
363) !void {
364 wip.applied.items.len = 0;
365 wip.current = .{
366 .attr = undefined,
367 .target = decl,
368 .qt = qt,
369 .parser = p,
370 };
371
372 if (prev_decl) |prev| try wip.inherit(p, prev);
373
374 for (wip.attrs.items[wip.top..]) |*attr| {
375 if (attr.used_as_type_attr) continue;
376 wip.current.attr = attr;
377 wip.current.arg_i = 0;
378
379 switch (attr.name) {
380 .standard => |standard_attr| switch (standard_attr) {
381 .deprecated => try wip.applyDeprecated(),
382 .nodiscard => try wip.applyWarnUnusedResult(),
383 .noreturn, ._Noreturn => try wip.applyNoreturn(),
384 .maybe_unused => try wip.applyUnused(),
385 .unsequenced => {
386 if (try wip.checkTarget(&.{.function_type})) continue;
387 if (try wip.argCount(0)) continue;
388 try wip.add(.unsequenced);
389 },
390 .reproducible => {
391 if (try wip.checkTarget(&.{.function_type})) continue;
392 if (try wip.argCount(0)) continue;
393 try wip.add(.reproducible);
394 },
395
396 .fallthrough => try wip.err(.stmt_attr_on_decl, .{attr}),
397 },
398 .gnu => |gnu_attr| switch (gnu_attr) {
399 .@"packed" => {
400 if (try wip.checkTarget(&.{ .tag, .field })) continue;
401 if (try wip.argCount(0)) continue;
402 try wip.add(.@"packed");
403 },
404 .cold => {
405 if (try wip.checkTarget(&.{.function})) continue;
406 if (try wip.argCount(0)) continue;
407 try wip.incompatible(.hot);
408 try wip.add(.cold);
409 },
410 .hot => {
411 if (try wip.checkTarget(&.{.function})) continue;
412 if (try wip.argCount(0)) continue;
413 try wip.incompatible(.cold);
414 try wip.add(.hot);
415 },
416 .@"const", .__const => {
417 if (try wip.argCount(0)) continue;
418 try wip.add(.@"const");
419 },
420 .aligned => try wip.applyAlignment(),
421 .deprecated => try wip.applyDeprecated(),
422 .warning => {
423 if (try wip.checkTarget(&.{.function})) continue;
424 if (try wip.argCount(1)) continue;
425
426 const msg = (try wip.arg([]const u8)) orelse continue;
427 try wip.add(.{ .warning = msg });
428 },
429 .@"error" => {
430 if (try wip.checkTarget(&.{.function})) continue;
431 if (try wip.argCount(1)) continue;
432
433 const msg = (try wip.arg([]const u8)) orelse continue;
434 try wip.add(.{ .@"error" = msg });
435 },
436 .warn_unused_result => try wip.applyWarnUnusedResult(),
437 .nonnull => try wip.applyNonnull(),
438 .transparent_union => try wip.applyTransparentUnion(),
439 .designated_init => {
440 if (wip.current.node() != .struct_decl) {
441 try wip.err(.designated_init_invalid, .{wip.current.attr});
442 continue;
443 }
444 if (try wip.argCount(0)) return;
445 try wip.add(.designated_init);
446 },
447 .cdecl,
448 .fastcall,
449 .ms_abi,
450 .pcs,
451 .regcall,
452 .stdcall,
453 .sysv_abi,
454 .thiscall,
455 => try wip.applyCallingConvention(),
456 .visibility => try wip.applyVisibility(),
457 .noreturn => try wip.applyNoreturn(),
458 .cleanup => try wip.applyCleanup(),
459 .always_inline => try wip.applyAlwaysInline(),
460 .gnu_inline => try wip.applyGnuInline(),
461 .section => try wip.applySection(),
462 .weak => {
463 if (try wip.checkTarget(&.{ .function, .variable })) continue;
464 if (try wip.argCount(0)) continue;
465 try wip.add(.weak);
466 },
467 .selectany => {
468 if (try wip.argCount(0)) continue;
469 try wip.add(.selectany);
470 },
471 .unused => try wip.applyUnused(),
472 else => {
473 try wip.err(.unimplemented, .{attr});
474 },
475
476 .fallthrough => try wip.err(.stmt_attr_on_decl, .{attr}),
477 },
478 .clang => |clang_attr| switch (clang_attr) {
479 .unavailable => {
480 if (try wip.argCountMinMax(0, 1)) continue;
481
482 const maybe_msg = (try wip.arg(?[]const u8)) orelse continue;
483 try wip.add(.{ .unavailable = maybe_msg });
484 },
485 .aarch64_sve_pcs,
486 .aarch64_vector_pcs,
487 .riscv_vector_cc,
488 .riscv_vls_cc,
489 .vectorcall,
490 => try wip.applyCallingConvention(),
491 .always_inline => try wip.applyAlwaysInline(),
492 .internal_linkage => {
493 if (try wip.checkTarget(&.{ .function, .variable })) continue;
494 if (try wip.argCount(0)) continue;
495 try wip.add(.internal_linkage);
496 },
497 else => {
498 try wip.err(.unimplemented, .{attr});
499 },
500 },
501 .aro => {
502 try wip.err(.unimplemented, .{attr});
503 },
504 .declspec => |declspec_attr| switch (declspec_attr) {
505 .@"align" => try wip.applyAlignment(),
506 .deprecated => try wip.applyDeprecated(),
507 .noreturn => try wip.applyNoreturn(),
508 .allocate => try wip.applySection(),
509 .selectany => {
510 if (try wip.argCount(0)) continue;
511 try wip.add(.selectany);
512 },
513 else => {
514 try wip.err(.unimplemented, .{attr});
515 },
516 },
517 .msvc => {
518 try wip.err(.unimplemented, .{attr});
519 },
520 .riscv => |riscv_attr| switch (riscv_attr) {
521 .vector_cc,
522 .vls_cc,
523 => try wip.applyCallingConvention(),
524 },
525 .keyword => |keyword_attr| switch (keyword_attr) {
526 ._Alignas, .alignas => try wip.applyAlignment(),
527 ._cdecl,
528 .__cdecl,
529 ._fastcall,
530 .__fastcall,
531 ._regcall,
532 ._stdcall,
533 .__stdcall,
534 ._thiscall,
535 .__thiscall,
536 ._vectorcall,
537 .__vectorcall,
538 => try wip.applyCallingConvention(),
539 .noreturn => try wip.applyNoreturn(),
540 ._forceinline, .__forceinline => try wip.applyAlwaysInline(),
541 else => {
542 try wip.err(.unimplemented, .{attr});
543 },
544 },
545 }
546 }
547
548 try wip.checkLinkageAttrs();
549
550 try wip.addAppliedAttrs();
551}
552
553fn inherit(wip: *Wip, p: *Parser, decl: Tree.Node.Index) !void {
554 const gpa = p.comp.gpa;
555 const am = &p.tree.attr_map;
556 for (am.attrs(decl)) |ref| {
557 const attr = am.get(ref);
558
559 switch (attr.args) {
560 .@"packed",
561 .hot,
562 .cold,
563 .@"const",
564 .deprecated,
565 .unavailable,
566 .@"error",
567 .warning,
568 .visibility,
569 .noreturn,
570 .cleanup,
571 .always_inline,
572 .gnu_inline,
573 => {},
574 .alignment => {
575 try wip.addAlignmentToTypeMap(attr.args.alignment);
576 },
577 else => continue,
578 }
579
580 try wip.applied.append(gpa, ref);
581 }
582}
583
584fn checkLinkageAttrs(wip: *Wip) !void {
585 const am = &wip.current.parser.tree.attr_map;
586
587 const internal_linkage = blk: {
588 for (wip.applied.items) |ref| {
589 const attr = am.get(ref);
590 if (attr.args == .internal_linkage) break :blk true;
591 }
592
593 break :blk switch (wip.current.node()) {
594 .function => |function| function.static,
595 .variable => |variable| switch (variable.storage_class) {
596 .static => true,
597 .@"extern" => false,
598 .auto, .register => wip.current.parser.func.qt != null,
599 },
600 else => false,
601 };
602 };
603
604 const remove_weak = internal_linkage;
605 const remove_selectany = internal_linkage or wip.current.node() == .function;
606
607 var err_weak = false;
608 var err_selectany = false;
609
610 var i: usize = 0;
611 for (wip.applied.items) |ref| {
612 const attr = am.get(ref);
613 if (attr.args == .weak and remove_weak) {
614 if (!err_weak) {
615 try wip.errTok(attr.tok, .invalid_weak, .{attr});
616 err_weak = true;
617 }
618 continue;
619 }
620 if (attr.args == .selectany and remove_selectany) {
621 if (!err_selectany) {
622 try wip.errTok(attr.tok, .invalid_selectany, .{attr});
623 err_selectany = true;
624 }
625 continue;
626 }
627 wip.applied.items[i] = ref;
628 i += 1;
629 }
630 wip.applied.items.len = i;
631}
632
633fn applyAlignment(wip: *Wip) !void {
634 const qt = wip.current.qt;
635 if (qt.isInvalid()) return;
636 if (try wip.argCountMinMax(0, 1)) return;
637 const is_alignas = wip.current.attr.syntax == .keyword;
638 if (is_alignas) {
639 switch (wip.current.node()) {
640 .variable,
641 .struct_decl,
642 .union_decl,
643 .enum_decl,
644 .struct_forward_decl,
645 .union_forward_decl,
646 .enum_forward_decl,
647 => {},
648 .record_field => |field| if (field.bit_width != null) {
649 try wip.err(.alignas_bitfield, .{wip.current.attr});
650 return;
651 },
652 .param => {
653 try wip.err(.alignas_on_param, .{wip.current.attr});
654 return;
655 },
656 else => {
657 try wip.err(.alignas_on_func, .{wip.current.attr});
658 return;
659 },
660 }
661 } else if (try wip.checkTarget(&.{ .function, .variable, .typedef, .tag, .param, .field })) return;
662
663 const comp = wip.current.parser.comp;
664
665 const alignas_requested = if (is_alignas) blk: {
666 const args = wip.current.attr.args(wip);
667 const arg_res = args[wip.current.arg_i];
668 const node = arg_res.node.get(&wip.current.parser.tree);
669 if (node != .alignas_type) break :blk null;
670 break :blk node.alignas_type.qt.alignof(comp);
671 } else null;
672 const maybe_requested = alignas_requested orelse (try wip.arg(?i64)) orelse return;
673 var casted: ?u32 = null;
674
675 if (maybe_requested) |requested| {
676 if (requested < 0) {
677 try wip.err(.negative_alignment, .{requested});
678 return;
679 }
680 if (requested > std.math.maxInt(u32)) {
681 try wip.err(.maximum_alignment, .{requested});
682 return;
683 }
684 if (!std.mem.isValidAlign(@intCast(requested))) {
685 try wip.err(.non_pow2_align, .{});
686 return;
687 }
688 if (is_alignas) {
689 const default_align = qt.alignof(comp);
690 if (is_alignas and requested < default_align) {
691 try wip.err(.minimum_alignment, .{default_align});
692 }
693 }
694 casted = @intCast(requested);
695 }
696 if (comp.langopts.emulate == .msvc) {
697 switch (wip.current.node()) {
698 .enum_forward_decl, .enum_decl => {
699 try wip.err(.msvc_enum_align_ignored, .{});
700 return;
701 },
702 else => {},
703 }
704 }
705 try wip.addAlignmentToTypeMap(casted);
706 try wip.add(.{ .alignment = casted });
707}
708
709fn addAlignmentToTypeMap(wip: *Wip, opt_alignment: ?u32) !void {
710 const comp = wip.current.parser.comp;
711 const qt = wip.current.qt;
712 switch (wip.current.node()) {
713 .typedef => assert(qt.type(comp) == .typedef),
714 .enum_forward_decl, .enum_decl => assert(qt.type(comp) == .@"enum"),
715 else => return,
716 }
717 const alignment = opt_alignment orelse comp.target.defaultAlignment();
718 const gop = try comp.type_store.requested_aligns.getOrPut(comp.gpa, qt);
719 if (gop.found_existing) {
720 gop.value_ptr.* = @max(gop.value_ptr.*, alignment);
721 } else {
722 gop.value_ptr.* = alignment;
723 }
724}
725
726fn addAppliedAttrs(wip: *Wip) !void {
727 const gpa = wip.current.parser.comp.gpa;
728 const am = &wip.current.parser.tree.attr_map;
729 const start_index = am.extra.items.len;
730
731 try am.extra.appendSlice(gpa, @ptrCast(wip.applied.items));
732 try am.decl_attrs.put(gpa, wip.current.target.?, .{ @intCast(start_index), @intCast(wip.applied.items.len) });
733}
734
735fn applyDeprecated(wip: *Wip) !void {
736 const max_args: u8 = if (wip.current.attr.syntax == .gnu) 2 else 1;
737 if (try wip.argCountMinMax(0, max_args)) return;
738
739 const maybe_msg = (try wip.arg(?[]const u8)) orelse return;
740 const maybe_replacement = (try wip.arg(?[]const u8)) orelse return;
741
742 try wip.add(.{ .deprecated = .{
743 .msg = maybe_msg,
744 .replacement = maybe_replacement,
745 } });
746}
747
748fn applyWarnUnusedResult(wip: *Wip) !void {
749 if (try wip.checkTarget(if (wip.current.attr.syntax == .standard)
750 &.{ .function, .tag }
751 else
752 &.{ .function, .tag, .function_pointer, .typedef })) return;
753
754 const max_args: u8 = if (wip.current.attr.syntax == .standard) 1 else 0;
755 if (try wip.argCountMinMax(0, max_args)) return;
756
757 const maybe_msg = (try wip.arg(?[]const u8)) orelse return;
758
759 const comp = wip.current.parser.comp;
760 if (wip.current.qt.getFunc(comp)) |func| {
761 if (func.return_type.is(comp, .void)) {
762 try wip.err(.warn_unused_result_void, .{wip.current.attr});
763 return;
764 }
765 }
766
767 try wip.add(.{ .warn_unused_result = maybe_msg });
768}
769
770fn applyNonnull(wip: *Wip) !void {
771 const parser = wip.current.parser;
772 const comp = parser.comp;
773 const qt = wip.current.qt;
774 if (qt.isInvalid()) return;
775 if (try wip.checkTarget(&.{ .function, .function_pointer, .param })) return;
776 if (wip.current.node() == .param) {
777 if (wip.current.attr.args_len != 0) {
778 try wip.err(.nonnull_param_args, .{wip.current.attr});
779 return;
780 }
781 if (!qt.isPointer(comp)) {
782 try wip.err(.nonnull_pointer_only, .{wip.current.attr});
783 return;
784 }
785 // TODO these should also be inherited
786 try wip.add(.{ .nonnull = &.{} });
787 return;
788 }
789
790 const list_buf_top = parser.list_buf.items.len;
791 defer parser.list_buf.items.len = list_buf_top;
792 try parser.list_buf.ensureUnusedCapacity(comp.gpa, wip.current.attr.args_len);
793
794 const func_ty = qt.getFunc(comp).?;
795 for (wip.current.attr.args(wip), 0..) |arg_res, i| {
796 const position = (try wip.arg(u32)) orelse return;
797 const tok = arg_res.node.tok(&parser.tree);
798
799 if (position == 0 or position > func_ty.params.len) {
800 try wip.errTok(tok, .param_out_of_bounds, .{ wip.current.attr, i + 1 });
801 return;
802 }
803
804 const arg_qt = func_ty.params[position - 1].qt;
805 if (arg_qt.isInvalid()) continue;
806 if (!arg_qt.isPointer(comp)) {
807 try wip.errTok(tok, .nonnull_pointer_only, .{wip.current.attr});
808 continue;
809 }
810 parser.list_buf.appendAssumeCapacity(@fromBackingInt(position));
811 }
812 try wip.add(.{ .nonnull = @ptrCast(parser.list_buf.items[list_buf_top..]) });
813}
814
815fn applyTransparentUnion(wip: *Wip) !void {
816 const qt = wip.current.qt;
817 if (qt.isInvalid()) return;
818 const fields = switch (wip.current.node()) {
819 .union_decl => |decl| decl.fields,
820 .union_forward_decl => {
821 try wip.err(.transparent_union_forward_decl, .{wip.current.attr});
822 return;
823 },
824 else => {
825 try wip.err(.transparent_union_wrong_type, .{wip.current.attr});
826 return;
827 },
828 };
829 if (try wip.argCount(0)) return;
830
831 const parser = wip.current.parser;
832 const comp = parser.comp;
833 const tree = &parser.tree;
834
835 if (fields.len == 0) {
836 try wip.err(.transparent_union_one_field, .{wip.current.attr});
837 return;
838 }
839 var opt_first_field_size: ?u64 = null;
840 for (fields) |field| {
841 const field_size = (field.qt(tree).sizeofOrNull(comp) orelse continue) * 8;
842 const first_field_size = opt_first_field_size orelse {
843 opt_first_field_size = field_size;
844 continue;
845 };
846 if (field_size == first_field_size) continue;
847
848 const field_tok = field.tok(tree);
849 try wip.errTok(field_tok, .transparent_union_size, .{ parser.tokSlice(field_tok), field_size, wip.current.attr });
850 try wip.errTok(fields[0].tok(tree), .transparent_union_size_note, .{first_field_size});
851 return;
852 }
853
854 try wip.add(.transparent_union);
855}
856
857fn applyVisibility(wip: *Wip) !void {
858 if (try wip.checkTarget(&.{ .function, .global_variable })) return;
859 if (try wip.argCount(1)) return;
860
861 var kind = (try wip.arg(Attribute.Args.Visibility)) orelse return;
862 if (kind == .protected and !wip.current.parser.comp.target.hasProtectedVisibility()) {
863 try wip.err(.visibility_protected_invalid, .{});
864 kind = .default;
865 }
866
867 const am = &wip.current.parser.tree.attr_map;
868 for (wip.applied.items, 0..) |ref, i| {
869 const prev_attr = am.get(ref);
870 if (prev_attr.args == .visibility) {
871 if (prev_attr.args.visibility == kind) {
872 _ = wip.applied.orderedRemove(i);
873 break;
874 }
875
876 try wip.err(.incompatible_visibility, .{});
877 try wip.errTok(prev_attr.tok, .previous_attribute, .{});
878 return;
879 }
880 }
881
882 try wip.add(.{ .visibility = kind });
883}
884
885fn applyNoreturn(wip: *Wip) !void {
886 if (try wip.checkTarget(&.{.function})) return;
887 if (try wip.argCount(0)) return;
888
889 const name = wip.current.attr.name;
890 if (name == .standard and name.standard == ._Noreturn) {
891 try wip.err(.deprecated_noreturn, .{});
892 }
893
894 try wip.add(.noreturn);
895}
896
897fn applyCleanup(wip: *Wip) !void {
898 const qt = wip.current.qt;
899 if (qt.isInvalid()) return;
900 if (try wip.checkTarget(&.{.local_variable})) return;
901 if (try wip.argCount(1)) return;
902
903 const decl_ref = (try wip.arg(Tree.Node.DeclRef)) orelse return;
904
905 const decl_node = decl_ref.decl.get(&wip.current.parser.tree);
906 if (decl_node != .function) {
907 try wip.err(.cleanup_non_function, .{ wip.current.attr, wip.current.parser.tokSlice(decl_ref.name_tok) });
908 return;
909 }
910 const comp = wip.current.parser.comp;
911 const func: Type.Func = decl_node.function.qt.get(comp, .func).?;
912
913 if (func.params.len != 1) {
914 try wip.err(.cleanup_one_arg, .{ wip.current.attr, wip.current.parser.tokSlice(decl_ref.name_tok) });
915 return;
916 }
917
918 const expected_qt = try comp.type_store.put(comp.gpa, .{ .pointer = .{
919 .child = qt,
920 } });
921 const actual_qt = func.params[0].qt;
922 if (!actual_qt.eql(expected_qt, comp)) {
923 try wip.err(.cleanup_arg_ty, .{ wip.current.attr, wip.current.parser.tokSlice(decl_ref.name_tok), actual_qt, expected_qt });
924 return;
925 }
926
927 try wip.add(.{ .cleanup = .{ .function = decl_ref.decl } });
928}
929
930fn applyAlwaysInline(wip: *Wip) !void {
931 if (try wip.checkTarget(&.{.function})) return;
932 if (try wip.argCount(0)) return;
933
934 const am = &wip.current.parser.tree.attr_map;
935 for (wip.applied.items) |ref| {
936 const prev_attr = am.get(ref);
937 if (prev_attr.args == .optnone) {
938 try wip.err(.ignored_attribute, .{wip.current.attr});
939 try wip.errTok(prev_attr.tok, .conflicting_attribute, .{});
940 return;
941 }
942 if (prev_attr.args == .always_inline) return;
943 }
944
945 try wip.add(.always_inline);
946}
947
948fn applyGnuInline(wip: *Wip) !void {
949 if (try wip.checkTarget(&.{.function})) return;
950 if (try wip.argCount(0)) return;
951
952 const node = wip.current.node();
953 if (!node.function.@"inline") {
954 try wip.err(.gnu_inline_non_inline, .{wip.current.attr});
955 return;
956 }
957
958 try wip.add(.gnu_inline);
959}
960
961fn applySection(wip: *Wip) !void {
962 if (try wip.checkTarget(&.{ .function, .global_variable })) return;
963 if (try wip.argCount(1)) return;
964
965 const section_name = (try wip.arg([]const u8)) orelse return;
966 // TODO Mach-O section name validation
967
968 const am = &wip.current.parser.tree.attr_map;
969 for (wip.applied.items) |ref| {
970 const prev_attr = am.get(ref);
971 if (prev_attr.args == .section) {
972 if (std.mem.eql(u8, prev_attr.args.section, section_name)) return;
973
974 try wip.err(.conflicting_section_name, .{wip.current.attr});
975 try wip.errTok(prev_attr.tok, .conflicting_attribute, .{});
976 return;
977 }
978 }
979
980 try wip.add(.{ .section = section_name });
981}
982
983fn applyUnused(wip: *Wip) !void {
984 if (try wip.checkTarget(&.{ .function, .variable, .param, .typedef, .tag, .field, .label })) return;
985 if (try wip.argCount(0)) return;
986 try wip.add(.unused);
987}
988
989pub fn applyTypeAttrs(wip: *Wip, p: *Parser, qt: QualType) !QualType {
990 wip.current = .{
991 .attr = undefined,
992 .qt = qt,
993 .parser = p,
994 };
995
996 for (wip.attrs.items[wip.top..]) |*attr| {
997 if (attr.used_as_type_attr) continue;
998 wip.current.attr = attr;
999 wip.current.arg_i = 0;
1000
1001 switch (attr.name) {
1002 .gnu => |gnu_attr| switch (gnu_attr) {
1003 .vector_size => {
1004 try wip.applyVectorSize();
1005 attr.used_as_type_attr = true;
1006 },
1007 .cdecl,
1008 .fastcall,
1009 .ms_abi,
1010 .pcs,
1011 .regcall,
1012 .stdcall,
1013 .sysv_abi,
1014 .thiscall,
1015 => try wip.applyCallingConvention(),
1016 .regparm,
1017 .riscv_rvv_vector_bits,
1018 => {
1019 try wip.err(.unimplemented, .{attr});
1020 attr.used_as_type_attr = true;
1021 },
1022 else => {},
1023 },
1024 .clang => |clang_attr| switch (clang_attr) {
1025 .neon_vector_type => {
1026 try wip.applyNeonVector(.neon);
1027 attr.used_as_type_attr = true;
1028 },
1029 .neon_polyvector_type => {
1030 try wip.applyNeonVector(.neon_poly);
1031 attr.used_as_type_attr = true;
1032 },
1033 .aarch64_sve_pcs,
1034 .aarch64_vector_pcs,
1035 .riscv_vector_cc,
1036 .riscv_vls_cc,
1037 .vectorcall,
1038 => try wip.applyCallingConvention(),
1039 .address_space,
1040 .arm_sve_vector_bits,
1041 .ext_vector_type,
1042 .matrix_type,
1043 .noderef,
1044 => {
1045 try wip.err(.unimplemented, .{attr});
1046 attr.used_as_type_attr = true;
1047 },
1048 else => {},
1049 },
1050 .riscv => |riscv_attr| switch (riscv_attr) {
1051 .vector_cc,
1052 .vls_cc,
1053 => try wip.applyCallingConvention(),
1054 },
1055 .keyword => |keyword_attr| switch (keyword_attr) {
1056 ._cdecl,
1057 .__cdecl,
1058 ._fastcall,
1059 .__fastcall,
1060 ._regcall,
1061 ._stdcall,
1062 .__stdcall,
1063 ._thiscall,
1064 .__thiscall,
1065 ._vectorcall,
1066 .__vectorcall,
1067 => try wip.applyCallingConvention(),
1068 .nonnull,
1069 .null_unspecified,
1070 .nullable_result,
1071 .nullable,
1072 => try wip.applyNullability(),
1073 .ptr32,
1074 .ptr64,
1075 .sptr,
1076 .uptr,
1077 => {
1078 try wip.err(.unimplemented, .{attr});
1079 attr.used_as_type_attr = true;
1080 },
1081 else => {},
1082 },
1083 else => {},
1084 }
1085 }
1086 return wip.current.qt;
1087}
1088
1089fn applyVectorSize(wip: *Wip) !void {
1090 const qt = wip.current.qt;
1091 if (qt.isInvalid()) return;
1092 if (try wip.argCount(1)) return;
1093
1094 if (qt.isAuto()) {
1095 try wip.err(.invalid_vec_elem_ty, .{qt});
1096 return error.ParsingFailed;
1097 }
1098
1099 const comp = wip.current.parser.comp;
1100
1101 const scalar_kind = qt.scalarKind(comp);
1102 if (scalar_kind != .int and scalar_kind != .float) {
1103 if (qt.get(comp, .@"enum")) |enum_ty| {
1104 if (comp.langopts.emulate == .clang and enum_ty.incomplete) {
1105 return; // Clang silently ignores vector_size on incomplete enums.
1106 }
1107 }
1108 try wip.err(.invalid_vec_elem_ty, .{qt});
1109 return error.ParsingFailed;
1110 }
1111 if (qt.get(comp, .bit_int)) |bit_int| {
1112 if (bit_int.bits < 8) {
1113 try wip.err(.bit_int_vec_too_small, .{});
1114 return error.ParsingFailed;
1115 } else if (!std.math.isPowerOfTwo(bit_int.bits)) {
1116 try wip.err(.bit_int_vec_not_pow2, .{});
1117 return error.ParsingFailed;
1118 }
1119 }
1120
1121 const vec_bytes = (try wip.arg(u32)) orelse return;
1122 const elem_size = qt.sizeof(comp);
1123 if (vec_bytes % elem_size != 0) {
1124 return wip.err(.vec_size_not_multiple, .{});
1125 }
1126
1127 wip.current.qt = try comp.type_store.put(comp.gpa, .{ .vector = .{
1128 .elem = qt,
1129 .len = @intCast(vec_bytes / elem_size),
1130 } });
1131}
1132
1133fn applyNeonVector(wip: *Wip, kind: Type.Vector.Kind) !void {
1134 const qt = wip.current.qt;
1135 if (qt.isInvalid()) return;
1136 if (try wip.argCount(1)) return;
1137
1138 if (qt.isAuto()) {
1139 try wip.err(.invalid_vec_elem_ty, .{qt});
1140 return error.ParsingFailed;
1141 }
1142
1143 const comp = wip.current.parser.comp;
1144
1145 const valid_elem_ty = blk: {
1146 if (kind == .neon_poly) {
1147 const int_ty = qt.get(comp, .int) orelse break :blk false;
1148 const poly_unsigned = comp.target.cpu.arch.isAARCH64();
1149 break :blk if (poly_unsigned)
1150 switch (int_ty) {
1151 .uchar, .ushort, .ulong, .ulong_long => true,
1152 else => false,
1153 }
1154 else switch (int_ty) {
1155 .schar, .short, .long_long => true,
1156 else => false,
1157 };
1158 }
1159
1160 const base_ty = qt.base(comp).type;
1161 break :blk switch (base_ty) {
1162 .int => |int| switch (int) {
1163 .schar, .uchar, .short, .ushort, .int, .uint, .long, .ulong, .long_long, .ulong_long => true,
1164 else => false,
1165 },
1166 .float => |float| switch (float) {
1167 .float, .fp16, .bf16 => true,
1168 .double => comp.target.cpu.arch.isAARCH64(),
1169 else => false,
1170 },
1171 .storage_float => |storage_float| switch (storage_float) {
1172 .mfp8 => true,
1173 },
1174 else => false,
1175 };
1176 };
1177 if (!valid_elem_ty) {
1178 try wip.err(.invalid_vec_elem_ty, .{qt});
1179 return;
1180 }
1181
1182 // Neon vector size must be 64 or 128 bits
1183 const elem_size = qt.bitSizeof(comp);
1184 const vec_len = (try wip.arg(u32)) orelse return;
1185 const vec_size = elem_size * vec_len;
1186 if (vec_size != 64 and vec_size != 128) {
1187 try wip.err(.invalid_neon_vec_size, .{});
1188 return;
1189 }
1190
1191 wip.current.qt = try comp.type_store.put(comp.gpa, .{ .vector = .{
1192 .elem = qt,
1193 .len = vec_len,
1194 .kind = kind,
1195 } });
1196}
1197
1198fn applyCallingConvention(wip: *Wip) !void {
1199 const attr = wip.current.attr;
1200 attr.used_as_type_attr = true;
1201 const qt = wip.current.qt;
1202 if (qt.isInvalid()) return;
1203
1204 const arg_count: u8 = if (attr.name == .gnu and attr.name.gnu == .pcs) 1 else 0;
1205 if (try wip.argCount(arg_count)) return;
1206
1207 const comp = wip.current.parser.comp;
1208 const base_qt, var func: Type.Func = blk: {
1209 const can_delay = attr.syntax != .standard and wip.current.target == null;
1210
1211 var base_qt = qt;
1212 while (true) {
1213 if (base_qt.isInvalid()) return;
1214 if (base_qt.isAuto()) {
1215 if (can_delay) {
1216 attr.used_as_type_attr = false;
1217 return;
1218 }
1219 try wip.err(.callconv_non_func, .{ attr, qt });
1220 return;
1221 }
1222
1223 if (base_qt._index == .declarator_combine) {
1224 // Incomplete declarator, try again later.
1225 attr.used_as_type_attr = false;
1226 return;
1227 }
1228 const base = base_qt.base(comp);
1229 switch (base.type) {
1230 .func => |func| break :blk .{ base.qt, func },
1231 .pointer => |pointer| {
1232 base_qt = pointer.child;
1233 },
1234 else => {
1235 if (can_delay) {
1236 // __attribute__ or keyword used in wrong place, try again later.
1237 attr.used_as_type_attr = false;
1238 return;
1239 }
1240 try wip.err(.callconv_non_func, .{ attr, qt });
1241 return;
1242 },
1243 }
1244 }
1245 };
1246
1247 const cc: Type.Func.CallingConvention = switch (attr.name) {
1248 .gnu => |gnu_attr| switch (gnu_attr) {
1249 .cdecl => .cdecl,
1250 .fastcall => .fastcall,
1251 .ms_abi => .ms_abi,
1252 .regcall => .regcall,
1253 .stdcall => .stdcall,
1254 .sysv_abi => .sysv_abi,
1255 .thiscall => .thiscall,
1256 .pcs => pcs: {
1257 const PcsKind = enum {
1258 aapcs,
1259 aapcs_vfp,
1260
1261 const PcsKind = @This();
1262 const opts = struct {
1263 const enum_kind = .string;
1264 const map = std.StaticStringMap(PcsKind).initComptime(.{
1265 .{ "aapcs", .aapcs },
1266 .{ "aapcs-vfp", .aapcs_vfp },
1267 });
1268 };
1269 };
1270 break :pcs switch ((try wip.arg(PcsKind)) orelse return) {
1271 .aapcs => .arm_aapcs,
1272 .aapcs_vfp => .arm_aapcs_vfp,
1273 };
1274 },
1275 else => unreachable,
1276 },
1277 .clang => |clang_attr| switch (clang_attr) {
1278 .aarch64_sve_pcs => .aarch64_sve_pcs,
1279 .aarch64_vector_pcs => .aarch64_vector_pcs,
1280 .riscv_vector_cc => .riscv_vector_cc,
1281 .riscv_vls_cc => .riscv_vls_cc,
1282 .vectorcall => .vectorcall,
1283 else => unreachable,
1284 },
1285 .riscv => |riscv_attr| switch (riscv_attr) {
1286 .vector_cc => .riscv_vector_cc,
1287 .vls_cc => .riscv_vls_cc,
1288 },
1289 .keyword => |keyword_attr| switch (keyword_attr) {
1290 .__cdecl, ._cdecl => .cdecl,
1291 .__fastcall, ._fastcall => .fastcall,
1292 ._regcall => .regcall,
1293 .__stdcall, ._stdcall => .stdcall,
1294 .__thiscall, ._thiscall => .thiscall,
1295 .__vectorcall, ._vectorcall => .vectorcall,
1296 else => unreachable,
1297 },
1298 else => unreachable,
1299 };
1300
1301 const ms_abi = comp.target.os.tag == .windows or comp.target.os.tag == .uefi;
1302 const supported = check: switch (cc) {
1303 .default => unreachable,
1304 .cdecl => !(comp.target.cpu.arch.isArm() and comp.target.os.tag != .windows) and
1305 !comp.target.cpu.arch.isPowerPC64() and
1306 !comp.target.cpu.arch.isSpirV(),
1307 .aarch64_sve_pcs, .aarch64_vector_pcs => comp.target.cpu.arch.isAARCH64(),
1308 .arm_aapcs_vfp, .arm_aapcs => comp.target.cpu.arch.isArm(),
1309 .riscv_vector_cc, .riscv_vls_cc => comp.target.cpu.arch.isRISCV(),
1310 .ms_abi => if (ms_abi) continue :check .cdecl else (comp.target.cpu.arch == .x86_64 or comp.target.cpu.arch.isAARCH64()),
1311 .sysv_abi => if (ms_abi) comp.target.cpu.arch == .x86_64 else continue :check .cdecl,
1312 .fastcall, .regcall, .stdcall, .thiscall => comp.target.cpu.arch == .x86,
1313 .vectorcall => comp.target.cpu.arch == .x86 or comp.target.cpu.arch == .x86_64 or comp.target.cpu.arch.isAARCH64(),
1314 };
1315 if (!supported) {
1316 try wip.err(.callconv_not_supported, .{attr});
1317 return;
1318 }
1319
1320 if (func.cc != cc and func.cc != .default) {
1321 try wip.err(.callconv_incompatible, .{ @tagName(cc), @tagName(func.cc) });
1322 return;
1323 }
1324 func.cc = cc;
1325
1326 // We cannot pass the function type directly here because the pointer to
1327 // type_store.extra might get invalidated while setting the updated type.
1328 const lb = &wip.current.parser.list_buf;
1329 const list_buf_top = lb.items.len;
1330 defer lb.items.len = list_buf_top;
1331 try lb.appendSlice(comp.gpa, @ptrCast(func.params));
1332 func.params = @ptrCast(lb.items[list_buf_top..]);
1333
1334 // TODO this can overwrite a typedef
1335 // typedef void (*fn_ptr)(void);
1336 // __cdecl fn_ptr a;
1337 try comp.type_store.set(comp.gpa, .{ .func = func }, @backingInt(base_qt._index));
1338}
1339
1340fn applyNullability(wip: *Wip) !void {
1341 const attr = wip.current.attr;
1342 attr.used_as_type_attr = true;
1343 const qt = wip.current.qt;
1344 if (qt.isInvalid()) return;
1345
1346 const new_nullability: Type.Pointer.Nullability = switch (attr.name.keyword) {
1347 .nonnull => .nonnull,
1348 .null_unspecified => .unspecified,
1349 .nullable_result => .nullable_result,
1350 .nullable => .nullable,
1351 else => unreachable,
1352 };
1353
1354 const comp = wip.current.parser.comp;
1355 var base_type = qt.base(comp).type;
1356 switch (base_type) {
1357 inline .pointer, .block => |*bt, tag| {
1358 if (bt.nullability != .default and bt.nullability != new_nullability) {
1359 try wip.err(.conflicting_nullability, .{ new_nullability.str(), bt.nullability.str() });
1360 return;
1361 }
1362
1363 bt.nullability = new_nullability;
1364 wip.current.qt = try comp.type_store.put(
1365 comp.gpa,
1366 @unionInit(TypeStore.Type, @tagName(tag), bt.*),
1367 );
1368 },
1369 else => {
1370 if (wip.current.target == null and qt.is(comp, .array)) {
1371 attr.used_as_type_attr = false;
1372 return;
1373 }
1374
1375 try wip.err(.invalid_nullability, .{qt});
1376 return;
1377 },
1378 }
1379}
1380
1381pub fn applyStmtAttrs(wip: *Wip, p: *Parser, stmt: Tree.Node.Index) !void {
1382 wip.applied.items.len = 0;
1383 wip.current = .{
1384 .attr = undefined,
1385 .qt = .invalid,
1386 .target = stmt,
1387 .parser = p,
1388 };
1389
1390 for (wip.attrs.items[wip.top..]) |*attr| {
1391 wip.current.attr = attr;
1392 wip.current.arg_i = 0;
1393
1394 switch (attr.name) {
1395 .standard => |standard_attr| switch (standard_attr) {
1396 .fallthrough => {
1397 try wip.applyFalltrhough();
1398 continue;
1399 },
1400 else => {},
1401 },
1402 .gnu => |gnu_attr| switch (gnu_attr) {
1403 .fallthrough => {
1404 try wip.applyFalltrhough();
1405 continue;
1406 },
1407 .always_inline => {}, // invalid, use clang::always_inline
1408 .cold => {
1409 if (try wip.checkTarget(&.{.label})) continue;
1410 if (try wip.argCount(0)) continue;
1411 try wip.incompatible(.hot);
1412 try wip.add(.cold);
1413 continue;
1414 },
1415 .hot => {
1416 if (try wip.checkTarget(&.{.label})) continue;
1417 if (try wip.argCount(0)) continue;
1418 try wip.incompatible(.cold);
1419 try wip.add(.hot);
1420 continue;
1421 },
1422 .unused => {
1423 try wip.applyUnused();
1424 continue;
1425 },
1426 else => {},
1427 },
1428 .clang => |clang_attr| switch (clang_attr) {
1429 .always_inline => {},
1430 else => {},
1431 },
1432 .aro => {},
1433 .declspec => {},
1434 .msvc => {},
1435 .riscv => {},
1436 .keyword => {},
1437 }
1438
1439 try wip.err(.invalid_stmt_attr, .{attr});
1440 }
1441
1442 try wip.addAppliedAttrs();
1443}
1444
1445fn applyFalltrhough(wip: *Wip) !void {
1446 if (try wip.argCount(0)) return;
1447 if (wip.current.node() != .null_stmt) {
1448 try wip.err(.fallthrough_non_empty, .{wip.current.attr});
1449 return;
1450 }
1451 if (wip.current.parser.@"switch" == null) {
1452 try wip.err(.fallthrough_outside_switch, .{wip.current.attr});
1453 return;
1454 }
1455 for (wip.current.parser.tok_ids[wip.current.parser.tok_i..]) |tok_id| {
1456 switch (tok_id) {
1457 .keyword_case, .keyword_default, .eof => break,
1458 .r_brace, .semicolon => {},
1459 else => {
1460 try wip.err(.fallthrough_not_before_case, .{wip.current.attr});
1461 break;
1462 },
1463 }
1464 }
1465
1466 try wip.add(.fallthrough);
1467}
lib/compiler/aro/aro/Builtins.zig+23-14
......@@ -33,11 +33,13 @@ const common = @import("Builtins/common.zig").with(BuiltinBase);
3333const hexagon = @import("Builtins/hexagon.zig").with(BuiltinTarget);
3434const loongarch = @import("Builtins/loongarch.zig").with(BuiltinTarget);
3535const mips = @import("Builtins/mips.zig").with(BuiltinBase);
36const neon = @import("Builtins/neon.zig").with(BuiltinTarget);
3637const nvptx = @import("Builtins/nvptx.zig").with(BuiltinTarget);
3738const powerpc = @import("Builtins/powerpc.zig").with(BuiltinTarget);
3839const riscv = @import("Builtins/riscv.zig").with(BuiltinTarget);
3940const s390x = @import("Builtins/s390x.zig").with(BuiltinTarget);
4041const ve = @import("Builtins/ve.zig").with(BuiltinBase);
42const wasm = @import("Builtins/wasm.zig").with(BuiltinTarget);
4143const x86_64 = @import("Builtins/x86_64.zig").with(BuiltinTarget);
4244const x86 = @import("Builtins/x86.zig").with(BuiltinTarget);
4345const xcore = @import("Builtins/xcore.zig").with(BuiltinBase);
......@@ -51,11 +53,13 @@ pub const Tag = union(enum) {
5153 hexagon: hexagon.Tag,
5254 loongarch: loongarch.Tag,
5355 mips: mips.Tag,
56 neon: neon.Tag,
5457 nvptx: nvptx.Tag,
5558 powerpc: powerpc.Tag,
5659 riscv: riscv.Tag,
5760 s390x: s390x.Tag,
5861 ve: ve.Tag,
62 wasm: wasm.Tag,
5963 x86_64: x86_64.Tag,
6064 x86: x86.Tag,
6165 xcore: xcore.Tag,
......@@ -105,14 +109,7 @@ fn createType(desc: TypeDescription, it: *TypeDescription.TypeIterator, comp: *C
105109 switch (prefix) {
106110 .L => builder.combine(.long, 0) catch unreachable,
107111 .LL => builder.combine(.long_long, 0) catch unreachable,
108 .LLL => {
109 switch (builder.type) {
110 .none => builder.type = .int128,
111 .signed => builder.type = .sint128,
112 .unsigned => builder.type = .uint128,
113 else => unreachable,
114 }
115 },
112 .LLL => builder.combine(.int128, 0) catch unreachable,
116113 .Z => require_native_int32 = true,
117114 .W => require_native_int64 = true,
118115 .N => {
......@@ -141,9 +138,9 @@ fn createType(desc: TypeDescription, it: *TypeDescription.TypeIterator, comp: *C
141138 .s => builder.combine(.short, 0) catch unreachable,
142139 .i => {
143140 if (require_native_int32) {
144 builder.type = specForSize(comp, 32);
141 builder.combine(specForSize(comp, 32), 0) catch unreachable;
145142 } else if (require_native_int64) {
146 builder.type = specForSize(comp, 64);
143 builder.combine(specForSize(comp, 64), 0) catch unreachable;
147144 } else {
148145 switch (builder.type) {
149146 .int128, .sint128, .uint128 => {},
......@@ -154,6 +151,7 @@ fn createType(desc: TypeDescription, it: *TypeDescription.TypeIterator, comp: *C
154151 .h => builder.combine(.fp16, 0) catch unreachable,
155152 .x => builder.combine(.float16, 0) catch unreachable,
156153 .y => builder.combine(.bf16, 0) catch unreachable,
154 .m => builder.combine(.mfp8, 0) catch unreachable,
157155 .f => builder.combine(.float, 0) catch unreachable,
158156 .d => {
159157 if (builder.type == .long_long) {
......@@ -198,6 +196,10 @@ fn createType(desc: TypeDescription, it: *TypeDescription.TypeIterator, comp: *C
198196 } });
199197 builder.type = .{ .other = vector_qt };
200198 },
199 .q => {
200 // Todo: scalable vector
201 return .invalid;
202 },
201203 .Q => {
202204 // Todo: target builtin type
203205 return .invalid;
......@@ -334,9 +336,15 @@ pub const FromName = struct {
334336pub fn fromName(comp: *Compilation, name: []const u8) ?FromName {
335337 if (fromNameExtra(name, .common)) |found| return found;
336338 switch (comp.target.cpu.arch) {
337 .aarch64, .aarch64_be => if (fromNameExtra(name, .aarch64)) |found| return found,
339 .aarch64, .aarch64_be => {
340 if (fromNameExtra(name, .aarch64)) |found| return found;
341 if (fromNameExtra(name, .neon)) |found| return found;
342 },
338343 .amdgcn => if (fromNameExtra(name, .amdgcn)) |found| return found,
339 .arm, .armeb, .thumb, .thumbeb => if (fromNameExtra(name, .arm)) |found| return found,
344 .arm, .armeb, .thumb, .thumbeb => {
345 if (fromNameExtra(name, .arm)) |found| return found;
346 if (fromNameExtra(name, .neon)) |found| return found;
347 },
340348 .bpfeb, .bpfel => if (fromNameExtra(name, .bpf)) |found| return found,
341349 .hexagon => if (fromNameExtra(name, .hexagon)) |found| return found,
342350 .loongarch32, .loongarch64 => if (fromNameExtra(name, .loongarch)) |found| return found,
......@@ -346,6 +354,7 @@ pub fn fromName(comp: *Compilation, name: []const u8) ?FromName {
346354 .riscv32, .riscv32be, .riscv64, .riscv64be => if (fromNameExtra(name, .riscv)) |found| return found,
347355 .s390x => if (fromNameExtra(name, .s390x)) |found| return found,
348356 .ve => if (fromNameExtra(name, .ve)) |found| return found,
357 .wasm32, .wasm64 => if (fromNameExtra(name, .wasm)) |found| return found,
349358 .xcore => if (fromNameExtra(name, .xcore)) |found| return found,
350359 .x86_64 => {
351360 if (fromNameExtra(name, .x86_64)) |found| return found;
......@@ -368,7 +377,7 @@ fn fromNameExtra(name: []const u8, comptime arch: std.meta.Tag(Tag)) ?FromName {
368377 .header = builtin.header,
369378 .language = builtin.language,
370379 .attributes = builtin.attributes,
371 .features = if (@hasField(@TypeOf(builtin), "features")) builtin.features else null,
380 .features = if (@hasField(@TypeOf(builtin), "features")) builtin.features else if (arch == .neon) "neon" else null,
372381 };
373382}
374383
......@@ -382,7 +391,7 @@ test "all builtins" {
382391 while (it.next()) |_| {}
383392 }
384393 if (@hasField(@TypeOf(builtin), "features")) {
385 const corrected_name = comptime if (std.mem.eql(u8, list_name, "x86_64")) "x86" else list_name;
394 const corrected_name = comptime if (std.mem.eql(u8, list_name, "x86_64")) "x86" else if (std.mem.eql(u8, list_name, "neon")) "aarch64" else list_name;
386395 const features = &@field(std.Target, corrected_name).all_features;
387396
388397 const feature_string = builtin.features orelse continue;
lib/compiler/aro/aro/Builtins/TypeDescription.zig+9-1
......@@ -63,6 +63,7 @@ pub const ComponentIterator = struct {
6363 'h' => return .{ .spec = .h },
6464 'x' => return .{ .spec = .x },
6565 'y' => return .{ .spec = .y },
66 'm' => return .{ .spec = .m },
6667 'f' => return .{ .spec = .f },
6768 'd' => return .{ .spec = .d },
6869 'z' => return .{ .spec = .z },
......@@ -70,12 +71,13 @@ pub const ComponentIterator = struct {
7071 'F' => return .{ .spec = .F },
7172 'a' => return .{ .spec = .a },
7273 'A' => return .{ .spec = .A },
73 'V', 'E' => {
74 'V', 'q', 'E' => {
7475 const start = self.idx;
7576 while (std.ascii.isDigit(self.str[self.idx])) : (self.idx += 1) {}
7677 const count = std.fmt.parseUnsigned(u32, self.str[start..self.idx], 10) catch unreachable;
7778 return switch (c) {
7879 'V' => .{ .spec = .{ .V = count } },
80 'q' => .{ .spec = .{ .q = count } },
7981 'E' => .{ .spec = .{ .E = count } },
8082 else => unreachable,
8183 };
......@@ -120,6 +122,7 @@ pub const ComponentIterator = struct {
120122 switch (self.str[self.idx]) {
121123 'a' => return .{ .spec = .{ .Q = .aarch64_svcount_t } },
122124 'b' => return .{ .spec = .{ .Q = .amdgpu_buffer_rsrc_t } },
125 't' => return .{ .spec = .{ .Q = .amdgpu_texture_t } },
123126 else => unreachable,
124127 }
125128 },
......@@ -226,6 +229,8 @@ const Spec = union(enum) {
226229 x,
227230 /// half (__bf16)
228231 y,
232 /// __mfp8
233 m,
229234 /// float
230235 f,
231236 /// double
......@@ -242,10 +247,13 @@ const Spec = union(enum) {
242247 A,
243248 /// Vector, followed by the number of elements and the base type.
244249 V: u32,
250 /// Scalable vector, followed by the number of elements and the base type.
251 q: u32,
245252 /// target builtin type, followed by a character to distinguish the builtin type
246253 Q: enum {
247254 aarch64_svcount_t,
248255 amdgpu_buffer_rsrc_t,
256 amdgpu_texture_t,
249257 },
250258 /// ext_vector, followed by the number of elements and the base type.
251259 E: u32,
lib/compiler/aro/aro/Builtins/aarch64.zig+397-297
......@@ -179,6 +179,8 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
179179 __builtin_arm_mops_memset_tag,
180180 __builtin_arm_nop,
181181 __builtin_arm_prefetch,
182 __builtin_arm_range_prefetch,
183 __builtin_arm_range_prefetch_x,
182184 __builtin_arm_rbit,
183185 __builtin_arm_rbit64,
184186 __builtin_arm_rint32x,
......@@ -204,11 +206,7 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
204206 __builtin_arm_stlex,
205207 __builtin_arm_strex,
206208 __builtin_arm_subp,
207 __builtin_arm_tcancel,
208 __builtin_arm_tcommit,
209209 __builtin_arm_trap,
210 __builtin_arm_tstart,
211 __builtin_arm_ttest,
212210 __builtin_arm_wfe,
213211 __builtin_arm_wfi,
214212 __builtin_arm_wsr,
......@@ -217,6 +215,42 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
217215 __builtin_arm_wsrp,
218216 __builtin_arm_yield,
219217 __builtin_sponentry,
218 __builtin_sve_svdup_neonq_bf16,
219 __builtin_sve_svdup_neonq_f16,
220 __builtin_sve_svdup_neonq_f32,
221 __builtin_sve_svdup_neonq_f64,
222 __builtin_sve_svdup_neonq_s16,
223 __builtin_sve_svdup_neonq_s32,
224 __builtin_sve_svdup_neonq_s64,
225 __builtin_sve_svdup_neonq_s8,
226 __builtin_sve_svdup_neonq_u16,
227 __builtin_sve_svdup_neonq_u32,
228 __builtin_sve_svdup_neonq_u64,
229 __builtin_sve_svdup_neonq_u8,
230 __builtin_sve_svget_neonq_bf16,
231 __builtin_sve_svget_neonq_f16,
232 __builtin_sve_svget_neonq_f32,
233 __builtin_sve_svget_neonq_f64,
234 __builtin_sve_svget_neonq_s16,
235 __builtin_sve_svget_neonq_s32,
236 __builtin_sve_svget_neonq_s64,
237 __builtin_sve_svget_neonq_s8,
238 __builtin_sve_svget_neonq_u16,
239 __builtin_sve_svget_neonq_u32,
240 __builtin_sve_svget_neonq_u64,
241 __builtin_sve_svget_neonq_u8,
242 __builtin_sve_svset_neonq_bf16,
243 __builtin_sve_svset_neonq_f16,
244 __builtin_sve_svset_neonq_f32,
245 __builtin_sve_svset_neonq_f64,
246 __builtin_sve_svset_neonq_s16,
247 __builtin_sve_svset_neonq_s32,
248 __builtin_sve_svset_neonq_s64,
249 __builtin_sve_svset_neonq_s8,
250 __builtin_sve_svset_neonq_u16,
251 __builtin_sve_svset_neonq_u32,
252 __builtin_sve_svset_neonq_u64,
253 __builtin_sve_svset_neonq_u8,
220254 __clear_cache,
221255 __dmb,
222256 __dsb,
......@@ -300,7 +334,7 @@ pub const longest_name = 38;
300334/// If found, returns the index of the node within the `dafsa` array.
301335/// Otherwise, returns `null`.
302336pub fn findInList(first_child_index: u16, char: u8) ?u16 {
303 @setEvalBranchQuota(472);
337 @setEvalBranchQuota(540);
304338 var index = first_child_index;
305339 while (true) {
306340 if (dafsa[index].char == char) return index;
......@@ -395,14 +429,14 @@ const Node = packed struct {
395429
396430const dafsa = [_]Node{
397431 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
398 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 236, .child_index = 2 },
432 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 270, .child_index = 2 },
399433 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 9 },
400434 .{ .char = 'B', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 10 },
401435 .{ .char = 'C', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 11 },
402436 .{ .char = 'I', .end_of_word = false, .end_of_list = false, .number = 115, .child_index = 12 },
403437 .{ .char = 'R', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 13 },
404438 .{ .char = 'W', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 14 },
405 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 101, .child_index = 15 },
439 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 135, .child_index = 15 },
406440 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 29 },
407441 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 30 },
408442 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 31 },
......@@ -410,7 +444,7 @@ const dafsa = [_]Node{
410444 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 34 },
411445 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 35 },
412446 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 36 },
413 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 70, .child_index = 37 },
447 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 104, .child_index = 37 },
414448 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 39 },
415449 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 40 },
416450 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 42 },
......@@ -432,7 +466,7 @@ const dafsa = [_]Node{
432466 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 61 },
433467 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 62 },
434468 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 63 },
435 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 69, .child_index = 64 },
469 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 64 },
436470 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 65 },
437471 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 66 },
438472 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 66 },
......@@ -458,7 +492,7 @@ const dafsa = [_]Node{
458492 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 88 },
459493 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 89 },
460494 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 90 },
461 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 69, .child_index = 91 },
495 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 91 },
462496 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 92 },
463497 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
464498 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 93 },
......@@ -485,7 +519,7 @@ const dafsa = [_]Node{
485519 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 109 },
486520 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 110 },
487521 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 111 },
488 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 69, .child_index = 112 },
522 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 112 },
489523 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 113 },
490524 .{ .char = 'R', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 114 },
491525 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
......@@ -506,7 +540,7 @@ const dafsa = [_]Node{
506540 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 107 },
507541 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 128 },
508542 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
509 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 69, .child_index = 129 },
543 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 129 },
510544 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 130 },
511545 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 131 },
512546 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 132 },
......@@ -523,7 +557,7 @@ const dafsa = [_]Node{
523557 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
524558 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 144 },
525559 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 145 },
526 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 69, .child_index = 149 },
560 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 149 },
527561 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 150 },
528562 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
529563 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 151 },
......@@ -543,7 +577,7 @@ const dafsa = [_]Node{
543577 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 165 },
544578 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 165 },
545579 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 166 },
546 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 69, .child_index = 167 },
580 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 167 },
547581 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 168 },
548582 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 94 },
549583 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 169 },
......@@ -561,7 +595,7 @@ const dafsa = [_]Node{
561595 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
562596 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 166 },
563597 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 182 },
564 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 69, .child_index = 183 },
598 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 183 },
565599 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 185 },
566600 .{ .char = 'R', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 186 },
567601 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 187 },
......@@ -577,336 +611,368 @@ const dafsa = [_]Node{
577611 .{ .char = 'B', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 196 },
578612 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 197 },
579613 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 117 },
580 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 68, .child_index = 198 },
581 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 199 },
582 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 200 },
583 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 201 },
584 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 202 },
585 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 203 },
586 .{ .char = 'F', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 204 },
587 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 205 },
614 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 66, .child_index = 198 },
615 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 199 },
616 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 201 },
617 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 202 },
618 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 203 },
619 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 204 },
620 .{ .char = 'F', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 205 },
588621 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 206 },
589622 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 207 },
590 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 208 },
591 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 209 },
592 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 115, .child_index = 210 },
593 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 217 },
623 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 208 },
624 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 209 },
625 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 210 },
626 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 115, .child_index = 211 },
627 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 218 },
594628 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
595 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 218 },
596 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 219 },
629 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 66, .child_index = 219 },
630 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 220 },
631 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 221 },
597632 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 197 },
598 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 220 },
599 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 221 },
600 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 222 },
601 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 223 },
602 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 224 },
603 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 225 },
633 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 222 },
634 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 223 },
635 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 224 },
636 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 225 },
604637 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 226 },
605 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 227 },
606 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 230 },
607 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 231 },
608 .{ .char = 'C', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 233 },
609 .{ .char = 'D', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 234 },
610 .{ .char = 'E', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 235 },
611 .{ .char = 'I', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 236 },
612 .{ .char = 'O', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 237 },
613 .{ .char = 'X', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 238 },
614 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 239 },
615 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 240 },
616 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 241 },
617 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 242 },
618 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 243 },
619 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 244 },
620 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 245 },
621 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
622 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 247 },
623 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 248 },
624 .{ .char = 'O', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 249 },
625 .{ .char = 'S', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 250 },
626 .{ .char = 'Z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 251 },
627 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 252 },
628 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 253 },
629 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 254 },
630 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 255 },
631 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 256 },
632 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 257 },
633 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 256 },
634 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 258 },
635 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 237 },
636 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 262 },
637 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 263 },
638 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 278 },
639 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 279 },
640 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 230 },
641 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 230 },
642 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 280 },
643 .{ .char = 'I', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 281 },
644 .{ .char = 'F', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 282 },
645 .{ .char = 'D', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 283 },
646 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 284 },
647 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 285 },
648 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 286 },
638 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 227 },
639 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 228 },
640 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 229 },
641 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 232 },
642 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 233 },
643 .{ .char = 'C', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 235 },
644 .{ .char = 'D', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 236 },
645 .{ .char = 'E', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 237 },
646 .{ .char = 'I', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 238 },
647 .{ .char = 'O', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 239 },
648 .{ .char = 'X', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 240 },
649 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 241 },
650 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 66, .child_index = 242 },
651 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 243 },
652 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 244 },
653 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 245 },
654 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 246 },
655 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 247 },
656 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 248 },
657 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 249 },
658 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 250 },
659 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 251 },
660 .{ .char = 'O', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 252 },
661 .{ .char = 'S', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 253 },
662 .{ .char = 'Z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 254 },
663 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 255 },
664 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 256 },
665 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 257 },
666 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 258 },
667 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 259 },
668 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 260 },
669 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 259 },
670 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 261 },
671 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 239 },
672 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 265 },
673 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 66, .child_index = 266 },
674 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 281 },
675 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 282 },
676 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 283 },
677 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 232 },
678 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 232 },
679 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 284 },
680 .{ .char = 'I', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 285 },
681 .{ .char = 'F', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 286 },
682 .{ .char = 'D', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 287 },
683 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 288 },
684 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 289 },
685 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 290 },
649686 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
650 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 287 },
651 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 258 },
652 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 289 },
653 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 290 },
654 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 291 },
655 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 292 },
656 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 293 },
657 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 294 },
658 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 295 },
659 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 298 },
660 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 299 },
661 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 300 },
687 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 291 },
688 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 261 },
689 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 293 },
690 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 294 },
691 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 295 },
692 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 296 },
693 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 297 },
694 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 298 },
695 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 299 },
696 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 302 },
697 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 303 },
698 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 304 },
662699 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 40 },
663 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 303 },
664 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 306 },
665 .{ .char = 'j', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 308 },
666 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 309 },
667 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 310 },
668 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 311 },
700 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 307 },
701 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 310 },
702 .{ .char = 'j', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 312 },
703 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 313 },
704 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 314 },
705 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 315 },
669706 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 47 },
670 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 312 },
671 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 316 },
672 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 319 },
673 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 323 },
707 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 316 },
708 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 321 },
709 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 324 },
710 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 325 },
674711 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 54 },
675 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 325 },
676 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
677 .{ .char = 'I', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
678 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 328 },
679 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 329 },
680 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 330 },
681 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 209 },
682 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 331 },
683 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 332 },
684 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 293 },
685 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 295 },
686 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 333 },
687 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 334 },
688 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 335 },
689 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 294 },
690 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 336 },
691 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 295 },
692 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 337 },
693 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 338 },
694 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 339 },
695 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 340 },
696 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 341 },
697 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 342 },
698 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 343 },
699 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 346 },
700 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 347 },
701 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 348 },
702 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 349 },
712 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
713 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 328 },
714 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 329 },
715 .{ .char = 'I', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 330 },
716 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 331 },
717 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 332 },
718 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 333 },
719 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 210 },
720 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 334 },
721 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 335 },
722 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 297 },
723 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 299 },
724 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 336 },
725 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 337 },
726 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 338 },
727 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 298 },
728 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 339 },
729 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 299 },
730 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 340 },
731 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 341 },
732 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 342 },
733 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 343 },
734 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 344 },
735 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 345 },
736 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 346 },
737 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 349 },
738 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 350 },
739 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 351 },
740 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 352 },
703741 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 131 },
704742 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 66 },
705 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
706 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 351 },
707 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 355 },
708 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 356 },
709 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 357 },
710 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 358 },
711 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 359 },
712 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 360 },
743 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 353 },
744 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 354 },
745 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 358 },
746 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 359 },
747 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 360 },
748 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 361 },
749 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 362 },
750 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 363 },
751 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 364 },
713752 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 73 },
714 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 361 },
715 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 365 },
716 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
717 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 368 },
718 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 369 },
719 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
753 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 365 },
754 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 369 },
755 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
720756 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 75 },
721 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 360 },
757 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 364 },
722758 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 371 },
723 .{ .char = 'A', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 372 },
724 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 373 },
725 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 374 },
726 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 375 },
727 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 376 },
728 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 209 },
729 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 209 },
730 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 377 },
731 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 378 },
732 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 379 },
733 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 295 },
734 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 380 },
759 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 372 },
760 .{ .char = 'A', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 375 },
761 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 376 },
762 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 377 },
763 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 378 },
764 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 379 },
765 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 210 },
766 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 210 },
767 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 380 },
768 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 381 },
769 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 382 },
770 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 299 },
771 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 383 },
735772 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
736 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 381 },
773 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 384 },
737774 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
738775 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 131 },
739 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 382 },
740 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 383 },
741 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 230 },
742 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 230 },
743 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 384 },
744 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 385 },
745 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
776 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 385 },
777 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 386 },
778 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 232 },
779 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 232 },
780 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 387 },
781 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 388 },
782 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 390 },
746783 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
747784 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 68 },
748 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
749 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 383 },
785 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 391 },
786 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 386 },
750787 .{ .char = 'g', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
751 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 383 },
752 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 389 },
788 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 386 },
789 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 392 },
753790 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
754 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 390 },
755 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 391 },
756 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 392 },
757 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 393 },
758 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 396 },
791 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 393 },
792 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 394 },
793 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 395 },
794 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 396 },
795 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 397 },
796 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 400 },
759797 .{ .char = 'g', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
760 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 383 },
761 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 383 },
762 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 356 },
763 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 397 },
764 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 398 },
765 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 356 },
766 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 399 },
767 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 400 },
798 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 386 },
799 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 386 },
800 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 359 },
801 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 359 },
768802 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 401 },
769 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 402 },
770 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 403 },
771 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 404 },
803 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 402 },
804 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 403 },
805 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 403 },
806 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 404 },
807 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 405 },
808 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 406 },
772809 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 68 },
773 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 405 },
774 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 406 },
775 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 407 },
776 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 408 },
810 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 407 },
811 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 408 },
812 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 409 },
813 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 410 },
777814 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
778815 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
779 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 409 },
780 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 410 },
781 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 411 },
782 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 412 },
816 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 411 },
817 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 412 },
818 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 413 },
819 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 414 },
783820 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 74 },
784 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 413 },
821 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 415 },
785822 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 66 },
786 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 414 },
787 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 230 },
788 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 415 },
789 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 417 },
790 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 418 },
791 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 252 },
823 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 416 },
824 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 417 },
825 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 232 },
826 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 418 },
827 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 420 },
828 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 421 },
829 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 255 },
792830 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
793 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 419 },
794 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 420 },
795 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 421 },
796 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 422 },
797 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 68 },
831 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 422 },
798832 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 423 },
799 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 424 },
800 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 252 },
833 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 424 },
834 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 425 },
835 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 426 },
836 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 255 },
801837 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
802838 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 197 },
803 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 425 },
804 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 426 },
805 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 427 },
806 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 375 },
839 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 427 },
840 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 428 },
841 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 429 },
842 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 378 },
807843 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
808 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 428 },
809 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 433 },
810 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 434 },
811 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
812 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 436 },
813 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 437 },
844 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 430 },
845 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
846 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 436 },
847 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 437 },
848 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 438 },
849 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 439 },
850 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 440 },
814851 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 74 },
815 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 438 },
816 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 439 },
817 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 339 },
818 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 440 },
819 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 68 },
852 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 441 },
853 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 442 },
820854 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
821 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 441 },
822 .{ .char = 'E', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 442 },
823 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 443 },
824 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 444 },
855 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 443 },
856 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 443 },
857 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 444 },
858 .{ .char = 'E', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 445 },
859 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 446 },
860 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 447 },
825861 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
826 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 451 },
862 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 454 },
827863 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
828864 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
829865 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
830 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 455 },
831 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 456 },
832 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 457 },
833 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 458 },
834 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 458 },
866 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 458 },
867 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 459 },
868 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 460 },
869 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 461 },
870 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 462 },
871 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 462 },
835872 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
836 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 460 },
837 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 68 },
838 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 461 },
839 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 462 },
840 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 463 },
841 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 292 },
842 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 293 },
843 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 294 },
844 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 466 },
845 .{ .char = 'P', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 467 },
846 .{ .char = 'S', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 468 },
847 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 295 },
873 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 464 },
874 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 465 },
875 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 466 },
876 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 467 },
877 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 468 },
878 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 296 },
879 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 297 },
880 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 298 },
881 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 471 },
882 .{ .char = 'P', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 472 },
883 .{ .char = 'S', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 473 },
884 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 299 },
848885 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
849886 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
850887 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
851888 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
852889 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
853 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 469 },
854 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 470 },
855 .{ .char = 'x', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 471 },
856 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 471 },
890 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 474 },
891 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 475 },
892 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 476 },
893 .{ .char = 'x', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 477 },
894 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 477 },
857895 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
896 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 478 },
858897 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 74 },
859 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 472 },
860 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 292 },
861 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 293 },
862 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 295 },
863 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 254 },
864 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 473 },
865 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 474 },
866 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 475 },
867 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 476 },
898 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 479 },
899 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 296 },
900 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 297 },
901 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 299 },
902 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 257 },
903 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 480 },
904 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 481 },
905 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 482 },
906 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 483 },
907 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 484 },
868908 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
869 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 477 },
870 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 478 },
871 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 403 },
872 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 479 },
873 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 480 },
874 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 481 },
875 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 482 },
876 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 483 },
877 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 484 },
878 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 485 },
879 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 486 },
909 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 485 },
910 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 486 },
911 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 487 },
912 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 405 },
913 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 488 },
914 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 489 },
915 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 490 },
916 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 491 },
917 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 492 },
918 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 493 },
919 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
920 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
921 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 496 },
922 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 497 },
923 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 498 },
924 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 499 },
880925 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
881 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 487 },
882 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 488 },
883 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 489 },
884 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 490 },
885 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 491 },
886 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 294 },
887 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 496 },
888 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 497 },
889 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 499 },
890 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 294 },
891 .{ .char = 'P', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 500 },
892 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 295 },
926 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 500 },
927 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 501 },
928 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 502 },
929 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 503 },
930 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 504 },
931 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
932 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 506 },
933 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 507 },
934 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 511 },
935 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 298 },
936 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 516 },
937 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 517 },
938 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 518 },
939 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 519 },
940 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 522 },
941 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 522 },
942 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 526 },
943 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 528 },
944 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 298 },
945 .{ .char = 'P', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 529 },
946 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 299 },
893947 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 131 },
894 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 501 },
895 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 294 },
896 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 294 },
897 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 502 },
898 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 336 },
899 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 503 },
900 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 504 },
901 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 505 },
902 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 506 },
903 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 507 },
904 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 508 },
905 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 337 },
906 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 339 },
948 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 530 },
949 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 531 },
950 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 532 },
951 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 406 },
952 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 255 },
953 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 532 },
954 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 406 },
955 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 255 },
956 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
957 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 533 },
958 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 298 },
959 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 298 },
960 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 534 },
961 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 412 },
962 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 532 },
963 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
964 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 339 },
965 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 535 },
966 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 536 },
967 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 537 },
968 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 538 },
969 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 539 },
970 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 540 },
971 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 340 },
972 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 342 },
907973};
908974pub const data = blk: {
909 @setEvalBranchQuota(2124);
975 @setEvalBranchQuota(2430);
910976 break :blk [_]Properties{
911977 .{ .param_str = "v*", .header = .intrin, .language = .all_ms_languages },
912978 .{ .param_str = "UcUNi*UNi", .header = .intrin, .language = .all_ms_languages },
......@@ -1079,6 +1145,8 @@ pub const data = blk: {
10791145 .{ .param_str = "v*v*iz", .features = "mte,mops" },
10801146 .{ .param_str = "v" },
10811147 .{ .param_str = "vvC*UiUiUiUi", .attributes = .{ .@"const" = true } },
1148 .{ .param_str = "vvC*UiUiWUi" },
1149 .{ .param_str = "vvC*UiUiiUiiz" },
10821150 .{ .param_str = "UiUi", .attributes = .{ .@"const" = true } },
10831151 .{ .param_str = "WUiWUi", .attributes = .{ .@"const" = true } },
10841152 .{ .param_str = "dd", .features = "v8_5a" },
......@@ -1104,11 +1172,7 @@ pub const data = blk: {
11041172 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true } },
11051173 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true } },
11061174 .{ .param_str = "Uiv*v*", .attributes = .{ .custom_typecheck = true }, .features = "mte" },
1107 .{ .param_str = "vWUIi" },
1108 .{ .param_str = "v" },
11091175 .{ .param_str = "vUIs", .attributes = .{ .@"noreturn" = true } },
1110 .{ .param_str = "WUi", .attributes = .{ .returns_twice = true } },
1111 .{ .param_str = "WUi", .attributes = .{ .@"const" = true } },
11121176 .{ .param_str = "v" },
11131177 .{ .param_str = "v" },
11141178 .{ .param_str = "vcC*Ui", .attributes = .{ .@"const" = true } },
......@@ -1117,6 +1181,42 @@ pub const data = blk: {
11171181 .{ .param_str = "vcC*vC*", .attributes = .{ .@"const" = true } },
11181182 .{ .param_str = "v" },
11191183 .{ .param_str = "v*", .attributes = .{ .@"const" = true } },
1184 .{ .param_str = "q8yV8y", .features = "sve,bf16" },
1185 .{ .param_str = "q8hV8h", .features = "sve" },
1186 .{ .param_str = "q4fV4f", .features = "sve" },
1187 .{ .param_str = "q2dV2d", .features = "sve" },
1188 .{ .param_str = "q8sV8s", .features = "sve" },
1189 .{ .param_str = "q4iV4i", .features = "sve" },
1190 .{ .param_str = "q4iV4i", .features = "sve" },
1191 .{ .param_str = "q16ScV16Sc", .features = "sve" },
1192 .{ .param_str = "q8UsV8Us", .features = "sve" },
1193 .{ .param_str = "q4UiV4Ui", .features = "sve" },
1194 .{ .param_str = "q2UWiV2UWi", .features = "sve" },
1195 .{ .param_str = "q16UcV16Uc", .features = "sve" },
1196 .{ .param_str = "V8yq8y", .features = "sve,bf16" },
1197 .{ .param_str = "V8hq8h", .features = "sve" },
1198 .{ .param_str = "V4fq4f", .features = "sve" },
1199 .{ .param_str = "V2dq2d", .features = "sve" },
1200 .{ .param_str = "V8sq8s", .features = "sve" },
1201 .{ .param_str = "V4iq4i", .features = "sve" },
1202 .{ .param_str = "V2Wiq2Wi", .features = "sve" },
1203 .{ .param_str = "V16Scq16Sc", .features = "sve" },
1204 .{ .param_str = "V16Usq16Us", .features = "sve" },
1205 .{ .param_str = "V4Uiq4Ui", .features = "sve" },
1206 .{ .param_str = "V2UWiq2UWi", .features = "sve" },
1207 .{ .param_str = "V16Ucq16Uc", .features = "sve" },
1208 .{ .param_str = "q8yq8yV8y", .features = "sve,bf16" },
1209 .{ .param_str = "q8hq8hV8h", .features = "sve" },
1210 .{ .param_str = "q4fq4fV4f", .features = "sve" },
1211 .{ .param_str = "q2dq2dV2d", .features = "sve" },
1212 .{ .param_str = "q8sq8sV8s", .features = "sve" },
1213 .{ .param_str = "q4iq4iV4i", .features = "sve" },
1214 .{ .param_str = "q2Wiq2WiV2Wi", .features = "sve" },
1215 .{ .param_str = "q16Scq16ScV16Sc", .features = "sve" },
1216 .{ .param_str = "q8Usq8UsV8s", .features = "sve" },
1217 .{ .param_str = "q4Uiq4UiV4Ui", .features = "sve" },
1218 .{ .param_str = "q2UWiq2UWiV2UWi", .features = "sve" },
1219 .{ .param_str = "q16Ucq16UcV16Uc", .features = "sve" },
11201220 .{ .param_str = "vv*v*" },
11211221 .{ .param_str = "vUi", .header = .arm_acle, .attributes = .{ .@"const" = true } },
11221222 .{ .param_str = "vUi", .header = .arm_acle, .attributes = .{ .@"const" = true } },
lib/compiler/aro/aro/Builtins/amdgcn.zig+2910-1725
......@@ -8,7 +8,11 @@ return struct {
88
99/// Integer starting at 0 derived from the unique index,
1010/// corresponds with the data array index.
11pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
11pub const Tag = enum(u16) { __builtin_amdgcn_add_max_i32,
12 __builtin_amdgcn_add_max_u32,
13 __builtin_amdgcn_add_min_i32,
14 __builtin_amdgcn_add_min_u32,
15 __builtin_amdgcn_alignbit,
1216 __builtin_amdgcn_alignbyte,
1317 __builtin_amdgcn_ashr_pk_i8_i32,
1418 __builtin_amdgcn_ashr_pk_u8_i32,
......@@ -25,6 +29,31 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
2529 __builtin_amdgcn_class,
2630 __builtin_amdgcn_classf,
2731 __builtin_amdgcn_classh,
32 __builtin_amdgcn_cluster_id_x,
33 __builtin_amdgcn_cluster_id_y,
34 __builtin_amdgcn_cluster_id_z,
35 __builtin_amdgcn_cluster_load_async_to_lds_b128,
36 __builtin_amdgcn_cluster_load_async_to_lds_b32,
37 __builtin_amdgcn_cluster_load_async_to_lds_b64,
38 __builtin_amdgcn_cluster_load_async_to_lds_b8,
39 __builtin_amdgcn_cluster_load_b128,
40 __builtin_amdgcn_cluster_load_b32,
41 __builtin_amdgcn_cluster_load_b64,
42 __builtin_amdgcn_cluster_workgroup_flat_id,
43 __builtin_amdgcn_cluster_workgroup_id_x,
44 __builtin_amdgcn_cluster_workgroup_id_y,
45 __builtin_amdgcn_cluster_workgroup_id_z,
46 __builtin_amdgcn_cluster_workgroup_max_flat_id,
47 __builtin_amdgcn_cluster_workgroup_max_id_x,
48 __builtin_amdgcn_cluster_workgroup_max_id_y,
49 __builtin_amdgcn_cluster_workgroup_max_id_z,
50 __builtin_amdgcn_cooperative_atomic_load_16x8B,
51 __builtin_amdgcn_cooperative_atomic_load_32x4B,
52 __builtin_amdgcn_cooperative_atomic_load_8x16B,
53 __builtin_amdgcn_cooperative_atomic_store_16x8B,
54 __builtin_amdgcn_cooperative_atomic_store_32x4B,
55 __builtin_amdgcn_cooperative_atomic_store_8x16B,
56 __builtin_amdgcn_cos_bf16,
2857 __builtin_amdgcn_cosf,
2958 __builtin_amdgcn_cosh,
3059 __builtin_amdgcn_cubeid,
......@@ -37,24 +66,48 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
3766 __builtin_amdgcn_cvt_f32_fp8,
3867 __builtin_amdgcn_cvt_f32_fp8_e5m3,
3968 __builtin_amdgcn_cvt_off_f32_i4,
69 __builtin_amdgcn_cvt_pk_bf8_f16,
4070 __builtin_amdgcn_cvt_pk_bf8_f32,
4171 __builtin_amdgcn_cvt_pk_f16_bf8,
4272 __builtin_amdgcn_cvt_pk_f16_fp8,
4373 __builtin_amdgcn_cvt_pk_f32_bf8,
4474 __builtin_amdgcn_cvt_pk_f32_fp8,
75 __builtin_amdgcn_cvt_pk_fp8_f16,
4576 __builtin_amdgcn_cvt_pk_fp8_f32,
77 __builtin_amdgcn_cvt_pk_fp8_f32_e5m3,
4678 __builtin_amdgcn_cvt_pk_i16,
4779 __builtin_amdgcn_cvt_pk_u16,
4880 __builtin_amdgcn_cvt_pk_u8_f32,
4981 __builtin_amdgcn_cvt_pknorm_i16,
5082 __builtin_amdgcn_cvt_pknorm_u16,
5183 __builtin_amdgcn_cvt_pkrtz,
84 __builtin_amdgcn_cvt_scale_pk16_bf16_bf6,
85 __builtin_amdgcn_cvt_scale_pk16_bf16_fp6,
86 __builtin_amdgcn_cvt_scale_pk16_f16_bf6,
87 __builtin_amdgcn_cvt_scale_pk16_f16_fp6,
88 __builtin_amdgcn_cvt_scale_pk16_f32_bf6,
89 __builtin_amdgcn_cvt_scale_pk16_f32_fp6,
90 __builtin_amdgcn_cvt_scale_pk8_bf16_bf8,
91 __builtin_amdgcn_cvt_scale_pk8_bf16_fp4,
92 __builtin_amdgcn_cvt_scale_pk8_bf16_fp8,
93 __builtin_amdgcn_cvt_scale_pk8_f16_bf8,
94 __builtin_amdgcn_cvt_scale_pk8_f16_fp4,
95 __builtin_amdgcn_cvt_scale_pk8_f16_fp8,
96 __builtin_amdgcn_cvt_scale_pk8_f32_bf8,
97 __builtin_amdgcn_cvt_scale_pk8_f32_fp4,
98 __builtin_amdgcn_cvt_scale_pk8_f32_fp8,
5299 __builtin_amdgcn_cvt_scalef32_2xpk16_bf6_f32,
53100 __builtin_amdgcn_cvt_scalef32_2xpk16_fp6_f32,
54101 __builtin_amdgcn_cvt_scalef32_f16_bf8,
55102 __builtin_amdgcn_cvt_scalef32_f16_fp8,
56103 __builtin_amdgcn_cvt_scalef32_f32_bf8,
57104 __builtin_amdgcn_cvt_scalef32_f32_fp8,
105 __builtin_amdgcn_cvt_scalef32_pk16_bf6_bf16,
106 __builtin_amdgcn_cvt_scalef32_pk16_bf6_f16,
107 __builtin_amdgcn_cvt_scalef32_pk16_bf6_f32,
108 __builtin_amdgcn_cvt_scalef32_pk16_fp6_bf16,
109 __builtin_amdgcn_cvt_scalef32_pk16_fp6_f16,
110 __builtin_amdgcn_cvt_scalef32_pk16_fp6_f32,
58111 __builtin_amdgcn_cvt_scalef32_pk32_bf16_bf6,
59112 __builtin_amdgcn_cvt_scalef32_pk32_bf16_fp6,
60113 __builtin_amdgcn_cvt_scalef32_pk32_bf6_bf16,
......@@ -65,6 +118,15 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
65118 __builtin_amdgcn_cvt_scalef32_pk32_f32_fp6,
66119 __builtin_amdgcn_cvt_scalef32_pk32_fp6_bf16,
67120 __builtin_amdgcn_cvt_scalef32_pk32_fp6_f16,
121 __builtin_amdgcn_cvt_scalef32_pk8_bf8_bf16,
122 __builtin_amdgcn_cvt_scalef32_pk8_bf8_f16,
123 __builtin_amdgcn_cvt_scalef32_pk8_bf8_f32,
124 __builtin_amdgcn_cvt_scalef32_pk8_fp4_bf16,
125 __builtin_amdgcn_cvt_scalef32_pk8_fp4_f16,
126 __builtin_amdgcn_cvt_scalef32_pk8_fp4_f32,
127 __builtin_amdgcn_cvt_scalef32_pk8_fp8_bf16,
128 __builtin_amdgcn_cvt_scalef32_pk8_fp8_f16,
129 __builtin_amdgcn_cvt_scalef32_pk8_fp8_f32,
68130 __builtin_amdgcn_cvt_scalef32_pk_bf16_bf8,
69131 __builtin_amdgcn_cvt_scalef32_pk_bf16_fp4,
70132 __builtin_amdgcn_cvt_scalef32_pk_bf16_fp8,
......@@ -89,19 +151,39 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
89151 __builtin_amdgcn_cvt_scalef32_sr_fp8_bf16,
90152 __builtin_amdgcn_cvt_scalef32_sr_fp8_f16,
91153 __builtin_amdgcn_cvt_scalef32_sr_fp8_f32,
154 __builtin_amdgcn_cvt_scalef32_sr_pk16_bf6_bf16,
155 __builtin_amdgcn_cvt_scalef32_sr_pk16_bf6_f16,
156 __builtin_amdgcn_cvt_scalef32_sr_pk16_bf6_f32,
157 __builtin_amdgcn_cvt_scalef32_sr_pk16_fp6_bf16,
158 __builtin_amdgcn_cvt_scalef32_sr_pk16_fp6_f16,
159 __builtin_amdgcn_cvt_scalef32_sr_pk16_fp6_f32,
92160 __builtin_amdgcn_cvt_scalef32_sr_pk32_bf6_bf16,
93161 __builtin_amdgcn_cvt_scalef32_sr_pk32_bf6_f16,
94162 __builtin_amdgcn_cvt_scalef32_sr_pk32_bf6_f32,
95163 __builtin_amdgcn_cvt_scalef32_sr_pk32_fp6_bf16,
96164 __builtin_amdgcn_cvt_scalef32_sr_pk32_fp6_f16,
97165 __builtin_amdgcn_cvt_scalef32_sr_pk32_fp6_f32,
166 __builtin_amdgcn_cvt_scalef32_sr_pk8_bf8_bf16,
167 __builtin_amdgcn_cvt_scalef32_sr_pk8_bf8_f16,
168 __builtin_amdgcn_cvt_scalef32_sr_pk8_bf8_f32,
169 __builtin_amdgcn_cvt_scalef32_sr_pk8_fp4_bf16,
170 __builtin_amdgcn_cvt_scalef32_sr_pk8_fp4_f16,
171 __builtin_amdgcn_cvt_scalef32_sr_pk8_fp4_f32,
172 __builtin_amdgcn_cvt_scalef32_sr_pk8_fp8_bf16,
173 __builtin_amdgcn_cvt_scalef32_sr_pk8_fp8_f16,
174 __builtin_amdgcn_cvt_scalef32_sr_pk8_fp8_f32,
98175 __builtin_amdgcn_cvt_scalef32_sr_pk_fp4_bf16,
99176 __builtin_amdgcn_cvt_scalef32_sr_pk_fp4_f16,
100177 __builtin_amdgcn_cvt_scalef32_sr_pk_fp4_f32,
101178 __builtin_amdgcn_cvt_sr_bf16_f32,
179 __builtin_amdgcn_cvt_sr_bf8_f16,
102180 __builtin_amdgcn_cvt_sr_bf8_f32,
103181 __builtin_amdgcn_cvt_sr_f16_f32,
182 __builtin_amdgcn_cvt_sr_fp8_f16,
104183 __builtin_amdgcn_cvt_sr_fp8_f32,
184 __builtin_amdgcn_cvt_sr_fp8_f32_e5m3,
185 __builtin_amdgcn_cvt_sr_pk_bf16_f32,
186 __builtin_amdgcn_cvt_sr_pk_f16_f32,
105187 __builtin_amdgcn_dispatch_ptr,
106188 __builtin_amdgcn_div_fixup,
107189 __builtin_amdgcn_div_fixupf,
......@@ -152,6 +234,7 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
152234 __builtin_amdgcn_ds_read_tr8_b64_v2i32,
153235 __builtin_amdgcn_ds_swizzle,
154236 __builtin_amdgcn_endpgm,
237 __builtin_amdgcn_exp2_bf16,
155238 __builtin_amdgcn_exp2f,
156239 __builtin_amdgcn_fcmp,
157240 __builtin_amdgcn_fcmpf,
......@@ -167,6 +250,10 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
167250 __builtin_amdgcn_flat_atomic_fadd_v2f16,
168251 __builtin_amdgcn_flat_atomic_fmax_f64,
169252 __builtin_amdgcn_flat_atomic_fmin_f64,
253 __builtin_amdgcn_flat_load_monitor_b128,
254 __builtin_amdgcn_flat_load_monitor_b32,
255 __builtin_amdgcn_flat_load_monitor_b64,
256 __builtin_amdgcn_flat_prefetch,
170257 __builtin_amdgcn_fmed3f,
171258 __builtin_amdgcn_fmed3h,
172259 __builtin_amdgcn_fract,
......@@ -185,7 +272,14 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
185272 __builtin_amdgcn_global_atomic_fadd_v2f16,
186273 __builtin_amdgcn_global_atomic_fmax_f64,
187274 __builtin_amdgcn_global_atomic_fmin_f64,
275 __builtin_amdgcn_global_load_async_to_lds_b128,
276 __builtin_amdgcn_global_load_async_to_lds_b32,
277 __builtin_amdgcn_global_load_async_to_lds_b64,
278 __builtin_amdgcn_global_load_async_to_lds_b8,
188279 __builtin_amdgcn_global_load_lds,
280 __builtin_amdgcn_global_load_monitor_b128,
281 __builtin_amdgcn_global_load_monitor_b32,
282 __builtin_amdgcn_global_load_monitor_b64,
189283 __builtin_amdgcn_global_load_tr16_b128_v8bf16,
190284 __builtin_amdgcn_global_load_tr16_b128_v8f16,
191285 __builtin_amdgcn_global_load_tr16_b128_v8i16,
......@@ -200,6 +294,11 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
200294 __builtin_amdgcn_global_load_tr_b128_v8i16,
201295 __builtin_amdgcn_global_load_tr_b64_i32,
202296 __builtin_amdgcn_global_load_tr_b64_v2i32,
297 __builtin_amdgcn_global_prefetch,
298 __builtin_amdgcn_global_store_async_from_lds_b128,
299 __builtin_amdgcn_global_store_async_from_lds_b32,
300 __builtin_amdgcn_global_store_async_from_lds_b64,
301 __builtin_amdgcn_global_store_async_from_lds_b8,
203302 __builtin_amdgcn_grid_size_x,
204303 __builtin_amdgcn_grid_size_y,
205304 __builtin_amdgcn_grid_size_z,
......@@ -211,12 +310,125 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
211310 __builtin_amdgcn_image_bvh_intersect_ray_h,
212311 __builtin_amdgcn_image_bvh_intersect_ray_l,
213312 __builtin_amdgcn_image_bvh_intersect_ray_lh,
313 __builtin_amdgcn_image_gather4_lz_2d_v4f32_f32,
314 __builtin_amdgcn_image_load_1d_v4f16_i32,
315 __builtin_amdgcn_image_load_1d_v4f32_i32,
316 __builtin_amdgcn_image_load_1darray_v4f16_i32,
317 __builtin_amdgcn_image_load_1darray_v4f32_i32,
318 __builtin_amdgcn_image_load_2d_f32_i32,
319 __builtin_amdgcn_image_load_2d_v4f16_i32,
320 __builtin_amdgcn_image_load_2d_v4f32_i32,
321 __builtin_amdgcn_image_load_2darray_f32_i32,
322 __builtin_amdgcn_image_load_2darray_v4f16_i32,
323 __builtin_amdgcn_image_load_2darray_v4f32_i32,
324 __builtin_amdgcn_image_load_3d_v4f16_i32,
325 __builtin_amdgcn_image_load_3d_v4f32_i32,
326 __builtin_amdgcn_image_load_cube_v4f16_i32,
327 __builtin_amdgcn_image_load_cube_v4f32_i32,
328 __builtin_amdgcn_image_load_mip_1d_v4f16_i32,
329 __builtin_amdgcn_image_load_mip_1d_v4f32_i32,
330 __builtin_amdgcn_image_load_mip_1darray_v4f16_i32,
331 __builtin_amdgcn_image_load_mip_1darray_v4f32_i32,
332 __builtin_amdgcn_image_load_mip_2d_f32_i32,
333 __builtin_amdgcn_image_load_mip_2d_v4f16_i32,
334 __builtin_amdgcn_image_load_mip_2d_v4f32_i32,
335 __builtin_amdgcn_image_load_mip_2darray_f32_i32,
336 __builtin_amdgcn_image_load_mip_2darray_v4f16_i32,
337 __builtin_amdgcn_image_load_mip_2darray_v4f32_i32,
338 __builtin_amdgcn_image_load_mip_3d_v4f16_i32,
339 __builtin_amdgcn_image_load_mip_3d_v4f32_i32,
340 __builtin_amdgcn_image_load_mip_cube_v4f16_i32,
341 __builtin_amdgcn_image_load_mip_cube_v4f32_i32,
342 __builtin_amdgcn_image_sample_1d_v4f16_f32,
343 __builtin_amdgcn_image_sample_1d_v4f32_f32,
344 __builtin_amdgcn_image_sample_1darray_v4f16_f32,
345 __builtin_amdgcn_image_sample_1darray_v4f32_f32,
346 __builtin_amdgcn_image_sample_2d_f32_f32,
347 __builtin_amdgcn_image_sample_2d_v4f16_f32,
348 __builtin_amdgcn_image_sample_2d_v4f32_f32,
349 __builtin_amdgcn_image_sample_2darray_f32_f32,
350 __builtin_amdgcn_image_sample_2darray_v4f16_f32,
351 __builtin_amdgcn_image_sample_2darray_v4f32_f32,
352 __builtin_amdgcn_image_sample_3d_v4f16_f32,
353 __builtin_amdgcn_image_sample_3d_v4f32_f32,
354 __builtin_amdgcn_image_sample_cube_v4f16_f32,
355 __builtin_amdgcn_image_sample_cube_v4f32_f32,
356 __builtin_amdgcn_image_sample_d_1d_v4f16_f32,
357 __builtin_amdgcn_image_sample_d_1d_v4f32_f32,
358 __builtin_amdgcn_image_sample_d_1darray_v4f16_f32,
359 __builtin_amdgcn_image_sample_d_1darray_v4f32_f32,
360 __builtin_amdgcn_image_sample_d_2d_f32_f32,
361 __builtin_amdgcn_image_sample_d_2d_v4f16_f32,
362 __builtin_amdgcn_image_sample_d_2d_v4f32_f32,
363 __builtin_amdgcn_image_sample_d_2darray_f32_f32,
364 __builtin_amdgcn_image_sample_d_2darray_v4f16_f32,
365 __builtin_amdgcn_image_sample_d_2darray_v4f32_f32,
366 __builtin_amdgcn_image_sample_d_3d_v4f16_f32,
367 __builtin_amdgcn_image_sample_d_3d_v4f32_f32,
368 __builtin_amdgcn_image_sample_l_1d_v4f16_f32,
369 __builtin_amdgcn_image_sample_l_1d_v4f32_f32,
370 __builtin_amdgcn_image_sample_l_1darray_v4f16_f32,
371 __builtin_amdgcn_image_sample_l_1darray_v4f32_f32,
372 __builtin_amdgcn_image_sample_l_2d_f32_f32,
373 __builtin_amdgcn_image_sample_l_2d_v4f16_f32,
374 __builtin_amdgcn_image_sample_l_2d_v4f32_f32,
375 __builtin_amdgcn_image_sample_l_2darray_f32_f32,
376 __builtin_amdgcn_image_sample_l_2darray_v4f16_f32,
377 __builtin_amdgcn_image_sample_l_2darray_v4f32_f32,
378 __builtin_amdgcn_image_sample_l_3d_v4f16_f32,
379 __builtin_amdgcn_image_sample_l_3d_v4f32_f32,
380 __builtin_amdgcn_image_sample_l_cube_v4f16_f32,
381 __builtin_amdgcn_image_sample_l_cube_v4f32_f32,
382 __builtin_amdgcn_image_sample_lz_1d_v4f16_f32,
383 __builtin_amdgcn_image_sample_lz_1d_v4f32_f32,
384 __builtin_amdgcn_image_sample_lz_1darray_v4f16_f32,
385 __builtin_amdgcn_image_sample_lz_1darray_v4f32_f32,
386 __builtin_amdgcn_image_sample_lz_2d_f32_f32,
387 __builtin_amdgcn_image_sample_lz_2d_v4f16_f32,
388 __builtin_amdgcn_image_sample_lz_2d_v4f32_f32,
389 __builtin_amdgcn_image_sample_lz_2darray_f32_f32,
390 __builtin_amdgcn_image_sample_lz_2darray_v4f16_f32,
391 __builtin_amdgcn_image_sample_lz_2darray_v4f32_f32,
392 __builtin_amdgcn_image_sample_lz_3d_v4f16_f32,
393 __builtin_amdgcn_image_sample_lz_3d_v4f32_f32,
394 __builtin_amdgcn_image_sample_lz_cube_v4f16_f32,
395 __builtin_amdgcn_image_sample_lz_cube_v4f32_f32,
396 __builtin_amdgcn_image_store_1d_v4f16_i32,
397 __builtin_amdgcn_image_store_1d_v4f32_i32,
398 __builtin_amdgcn_image_store_1darray_v4f16_i32,
399 __builtin_amdgcn_image_store_1darray_v4f32_i32,
400 __builtin_amdgcn_image_store_2d_f32_i32,
401 __builtin_amdgcn_image_store_2d_v4f16_i32,
402 __builtin_amdgcn_image_store_2d_v4f32_i32,
403 __builtin_amdgcn_image_store_2darray_f32_i32,
404 __builtin_amdgcn_image_store_2darray_v4f16_i32,
405 __builtin_amdgcn_image_store_2darray_v4f32_i32,
406 __builtin_amdgcn_image_store_3d_v4f16_i32,
407 __builtin_amdgcn_image_store_3d_v4f32_i32,
408 __builtin_amdgcn_image_store_cube_v4f16_i32,
409 __builtin_amdgcn_image_store_cube_v4f32_i32,
410 __builtin_amdgcn_image_store_mip_1d_v4f16_i32,
411 __builtin_amdgcn_image_store_mip_1d_v4f32_i32,
412 __builtin_amdgcn_image_store_mip_1darray_v4f16_i32,
413 __builtin_amdgcn_image_store_mip_1darray_v4f32_i32,
414 __builtin_amdgcn_image_store_mip_2d_f32_i32,
415 __builtin_amdgcn_image_store_mip_2d_v4f16_i32,
416 __builtin_amdgcn_image_store_mip_2d_v4f32_i32,
417 __builtin_amdgcn_image_store_mip_2darray_f32_i32,
418 __builtin_amdgcn_image_store_mip_2darray_v4f16_i32,
419 __builtin_amdgcn_image_store_mip_2darray_v4f32_i32,
420 __builtin_amdgcn_image_store_mip_3d_v4f16_i32,
421 __builtin_amdgcn_image_store_mip_3d_v4f32_i32,
422 __builtin_amdgcn_image_store_mip_cube_v4f16_i32,
423 __builtin_amdgcn_image_store_mip_cube_v4f32_i32,
214424 __builtin_amdgcn_implicitarg_ptr,
215425 __builtin_amdgcn_interp_mov,
216426 __builtin_amdgcn_interp_p1,
217427 __builtin_amdgcn_interp_p1_f16,
218428 __builtin_amdgcn_interp_p2,
219429 __builtin_amdgcn_interp_p2_f16,
430 __builtin_amdgcn_inverse_ballot_w32,
431 __builtin_amdgcn_inverse_ballot_w64,
220432 __builtin_amdgcn_is_private,
221433 __builtin_amdgcn_is_shared,
222434 __builtin_amdgcn_kernarg_segment_ptr,
......@@ -225,6 +437,7 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
225437 __builtin_amdgcn_ldexph,
226438 __builtin_amdgcn_lerp,
227439 __builtin_amdgcn_load_to_lds,
440 __builtin_amdgcn_log_bf16,
228441 __builtin_amdgcn_log_clampf,
229442 __builtin_amdgcn_logf,
230443 __builtin_amdgcn_make_buffer_rsrc,
......@@ -283,13 +496,25 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
283496 __builtin_amdgcn_mqsad_u32_u8,
284497 __builtin_amdgcn_msad_u8,
285498 __builtin_amdgcn_perm,
499 __builtin_amdgcn_perm_pk16_b4_u4,
500 __builtin_amdgcn_perm_pk16_b6_u4,
501 __builtin_amdgcn_perm_pk16_b8_u4,
286502 __builtin_amdgcn_permlane16,
287503 __builtin_amdgcn_permlane16_swap,
288504 __builtin_amdgcn_permlane16_var,
289505 __builtin_amdgcn_permlane32_swap,
290506 __builtin_amdgcn_permlane64,
507 __builtin_amdgcn_permlane_bcast,
508 __builtin_amdgcn_permlane_down,
509 __builtin_amdgcn_permlane_idx_gen,
510 __builtin_amdgcn_permlane_up,
511 __builtin_amdgcn_permlane_xor,
291512 __builtin_amdgcn_permlanex16,
292513 __builtin_amdgcn_permlanex16_var,
514 __builtin_amdgcn_pk_add_max_i16,
515 __builtin_amdgcn_pk_add_max_u16,
516 __builtin_amdgcn_pk_add_min_i16,
517 __builtin_amdgcn_pk_add_min_u16,
293518 __builtin_amdgcn_prng_b32,
294519 __builtin_amdgcn_qsad_pk_u16_u8,
295520 __builtin_amdgcn_queue_ptr,
......@@ -305,8 +530,16 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
305530 __builtin_amdgcn_raw_buffer_store_b64,
306531 __builtin_amdgcn_raw_buffer_store_b8,
307532 __builtin_amdgcn_raw_buffer_store_b96,
533 __builtin_amdgcn_raw_ptr_buffer_atomic_add_i32,
534 __builtin_amdgcn_raw_ptr_buffer_atomic_fadd_f32,
535 __builtin_amdgcn_raw_ptr_buffer_atomic_fadd_v2f16,
536 __builtin_amdgcn_raw_ptr_buffer_atomic_fmax_f32,
537 __builtin_amdgcn_raw_ptr_buffer_atomic_fmax_f64,
538 __builtin_amdgcn_raw_ptr_buffer_atomic_fmin_f32,
539 __builtin_amdgcn_raw_ptr_buffer_atomic_fmin_f64,
308540 __builtin_amdgcn_raw_ptr_buffer_load_lds,
309541 __builtin_amdgcn_rcp,
542 __builtin_amdgcn_rcp_bf16,
310543 __builtin_amdgcn_rcpf,
311544 __builtin_amdgcn_rcph,
312545 __builtin_amdgcn_read_exec,
......@@ -315,16 +548,21 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
315548 __builtin_amdgcn_readfirstlane,
316549 __builtin_amdgcn_readlane,
317550 __builtin_amdgcn_rsq,
551 __builtin_amdgcn_rsq_bf16,
318552 __builtin_amdgcn_rsq_clamp,
319553 __builtin_amdgcn_rsq_clampf,
320554 __builtin_amdgcn_rsqf,
321555 __builtin_amdgcn_rsqh,
322556 __builtin_amdgcn_s_barrier,
557 __builtin_amdgcn_s_barrier_init,
558 __builtin_amdgcn_s_barrier_join,
559 __builtin_amdgcn_s_barrier_leave,
323560 __builtin_amdgcn_s_barrier_signal,
324561 __builtin_amdgcn_s_barrier_signal_isfirst,
325562 __builtin_amdgcn_s_barrier_signal_var,
326563 __builtin_amdgcn_s_barrier_wait,
327564 __builtin_amdgcn_s_buffer_prefetch_data,
565 __builtin_amdgcn_s_cluster_barrier,
328566 __builtin_amdgcn_s_dcache_inv,
329567 __builtin_amdgcn_s_dcache_inv_vol,
330568 __builtin_amdgcn_s_dcache_wb,
......@@ -353,9 +591,12 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
353591 __builtin_amdgcn_s_wait_event_export_ready,
354592 __builtin_amdgcn_s_wait_tensorcnt,
355593 __builtin_amdgcn_s_waitcnt,
594 __builtin_amdgcn_s_wakeup_barrier,
356595 __builtin_amdgcn_sad_hi_u8,
357596 __builtin_amdgcn_sad_u16,
358597 __builtin_amdgcn_sad_u8,
598 __builtin_amdgcn_sat_pk4_i4_i8,
599 __builtin_amdgcn_sat_pk4_u4_u8,
359600 __builtin_amdgcn_sbfe,
360601 __builtin_amdgcn_sched_barrier,
361602 __builtin_amdgcn_sched_group_barrier,
......@@ -365,6 +606,7 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
365606 __builtin_amdgcn_set_fpenv,
366607 __builtin_amdgcn_sicmp,
367608 __builtin_amdgcn_sicmpl,
609 __builtin_amdgcn_sin_bf16,
368610 __builtin_amdgcn_sinf,
369611 __builtin_amdgcn_sinh,
370612 __builtin_amdgcn_smfmac_f32_16x16x128_bf8_bf8,
......@@ -396,14 +638,27 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
396638 __builtin_amdgcn_smfmac_i32_32x32x32_i8,
397639 __builtin_amdgcn_smfmac_i32_32x32x64_i8,
398640 __builtin_amdgcn_sqrt,
641 __builtin_amdgcn_sqrt_bf16,
399642 __builtin_amdgcn_sqrtf,
400643 __builtin_amdgcn_sqrth,
644 __builtin_amdgcn_struct_ptr_buffer_load_lds,
401645 __builtin_amdgcn_sudot4,
402646 __builtin_amdgcn_sudot8,
403647 __builtin_amdgcn_swmmac_bf16_16x16x32_bf16_w32,
404648 __builtin_amdgcn_swmmac_bf16_16x16x32_bf16_w64,
649 __builtin_amdgcn_swmmac_bf16_16x16x64_bf16,
650 __builtin_amdgcn_swmmac_bf16f32_16x16x64_bf16,
651 __builtin_amdgcn_swmmac_f16_16x16x128_bf8_bf8,
652 __builtin_amdgcn_swmmac_f16_16x16x128_bf8_fp8,
653 __builtin_amdgcn_swmmac_f16_16x16x128_fp8_bf8,
654 __builtin_amdgcn_swmmac_f16_16x16x128_fp8_fp8,
405655 __builtin_amdgcn_swmmac_f16_16x16x32_f16_w32,
406656 __builtin_amdgcn_swmmac_f16_16x16x32_f16_w64,
657 __builtin_amdgcn_swmmac_f16_16x16x64_f16,
658 __builtin_amdgcn_swmmac_f32_16x16x128_bf8_bf8,
659 __builtin_amdgcn_swmmac_f32_16x16x128_bf8_fp8,
660 __builtin_amdgcn_swmmac_f32_16x16x128_fp8_bf8,
661 __builtin_amdgcn_swmmac_f32_16x16x128_fp8_fp8,
407662 __builtin_amdgcn_swmmac_f32_16x16x32_bf16_w32,
408663 __builtin_amdgcn_swmmac_f32_16x16x32_bf16_w64,
409664 __builtin_amdgcn_swmmac_f32_16x16x32_bf8_bf8_w32,
......@@ -416,6 +671,9 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
416671 __builtin_amdgcn_swmmac_f32_16x16x32_fp8_bf8_w64,
417672 __builtin_amdgcn_swmmac_f32_16x16x32_fp8_fp8_w32,
418673 __builtin_amdgcn_swmmac_f32_16x16x32_fp8_fp8_w64,
674 __builtin_amdgcn_swmmac_f32_16x16x64_bf16,
675 __builtin_amdgcn_swmmac_f32_16x16x64_f16,
676 __builtin_amdgcn_swmmac_i32_16x16x128_iu8,
419677 __builtin_amdgcn_swmmac_i32_16x16x32_iu4_w32,
420678 __builtin_amdgcn_swmmac_i32_16x16x32_iu4_w64,
421679 __builtin_amdgcn_swmmac_i32_16x16x32_iu8_w32,
......@@ -423,6 +681,8 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
423681 __builtin_amdgcn_swmmac_i32_16x16x64_iu4_w32,
424682 __builtin_amdgcn_swmmac_i32_16x16x64_iu4_w64,
425683 __builtin_amdgcn_tanh_bf16,
684 __builtin_amdgcn_tanhf,
685 __builtin_amdgcn_tanhh,
426686 __builtin_amdgcn_tensor_load_to_lds,
427687 __builtin_amdgcn_tensor_load_to_lds_d2,
428688 __builtin_amdgcn_tensor_store_from_lds,
......@@ -437,6 +697,28 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
437697 __builtin_amdgcn_uicmpl,
438698 __builtin_amdgcn_update_dpp,
439699 __builtin_amdgcn_wave_barrier,
700 __builtin_amdgcn_wave_reduce_add_u32,
701 __builtin_amdgcn_wave_reduce_add_u64,
702 __builtin_amdgcn_wave_reduce_and_b32,
703 __builtin_amdgcn_wave_reduce_and_b64,
704 __builtin_amdgcn_wave_reduce_fadd_f32,
705 __builtin_amdgcn_wave_reduce_fmax_f32,
706 __builtin_amdgcn_wave_reduce_fmin_f32,
707 __builtin_amdgcn_wave_reduce_fsub_f32,
708 __builtin_amdgcn_wave_reduce_max_i32,
709 __builtin_amdgcn_wave_reduce_max_i64,
710 __builtin_amdgcn_wave_reduce_max_u32,
711 __builtin_amdgcn_wave_reduce_max_u64,
712 __builtin_amdgcn_wave_reduce_min_i32,
713 __builtin_amdgcn_wave_reduce_min_i64,
714 __builtin_amdgcn_wave_reduce_min_u32,
715 __builtin_amdgcn_wave_reduce_min_u64,
716 __builtin_amdgcn_wave_reduce_or_b32,
717 __builtin_amdgcn_wave_reduce_or_b64,
718 __builtin_amdgcn_wave_reduce_sub_u32,
719 __builtin_amdgcn_wave_reduce_sub_u64,
720 __builtin_amdgcn_wave_reduce_xor_b32,
721 __builtin_amdgcn_wave_reduce_xor_b64,
440722 __builtin_amdgcn_wavefrontsize,
441723 __builtin_amdgcn_wmma_bf16_16x16x16_bf16_tied_w32,
442724 __builtin_amdgcn_wmma_bf16_16x16x16_bf16_tied_w64,
......@@ -444,12 +726,28 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
444726 __builtin_amdgcn_wmma_bf16_16x16x16_bf16_w32_gfx12,
445727 __builtin_amdgcn_wmma_bf16_16x16x16_bf16_w64,
446728 __builtin_amdgcn_wmma_bf16_16x16x16_bf16_w64_gfx12,
729 __builtin_amdgcn_wmma_bf16_16x16x32_bf16,
730 __builtin_amdgcn_wmma_bf16f32_16x16x32_bf16,
731 __builtin_amdgcn_wmma_f16_16x16x128_bf8_bf8,
732 __builtin_amdgcn_wmma_f16_16x16x128_bf8_fp8,
733 __builtin_amdgcn_wmma_f16_16x16x128_fp8_bf8,
734 __builtin_amdgcn_wmma_f16_16x16x128_fp8_fp8,
447735 __builtin_amdgcn_wmma_f16_16x16x16_f16_tied_w32,
448736 __builtin_amdgcn_wmma_f16_16x16x16_f16_tied_w64,
449737 __builtin_amdgcn_wmma_f16_16x16x16_f16_w32,
450738 __builtin_amdgcn_wmma_f16_16x16x16_f16_w32_gfx12,
451739 __builtin_amdgcn_wmma_f16_16x16x16_f16_w64,
452740 __builtin_amdgcn_wmma_f16_16x16x16_f16_w64_gfx12,
741 __builtin_amdgcn_wmma_f16_16x16x32_f16,
742 __builtin_amdgcn_wmma_f16_16x16x64_bf8_bf8,
743 __builtin_amdgcn_wmma_f16_16x16x64_bf8_fp8,
744 __builtin_amdgcn_wmma_f16_16x16x64_fp8_bf8,
745 __builtin_amdgcn_wmma_f16_16x16x64_fp8_fp8,
746 __builtin_amdgcn_wmma_f32_16x16x128_bf8_bf8,
747 __builtin_amdgcn_wmma_f32_16x16x128_bf8_fp8,
748 __builtin_amdgcn_wmma_f32_16x16x128_f8f6f4,
749 __builtin_amdgcn_wmma_f32_16x16x128_fp8_bf8,
750 __builtin_amdgcn_wmma_f32_16x16x128_fp8_fp8,
453751 __builtin_amdgcn_wmma_f32_16x16x16_bf16_w32,
454752 __builtin_amdgcn_wmma_f32_16x16x16_bf16_w32_gfx12,
455753 __builtin_amdgcn_wmma_f32_16x16x16_bf16_w64,
......@@ -466,6 +764,14 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
466764 __builtin_amdgcn_wmma_f32_16x16x16_fp8_bf8_w64_gfx12,
467765 __builtin_amdgcn_wmma_f32_16x16x16_fp8_fp8_w32_gfx12,
468766 __builtin_amdgcn_wmma_f32_16x16x16_fp8_fp8_w64_gfx12,
767 __builtin_amdgcn_wmma_f32_16x16x32_bf16,
768 __builtin_amdgcn_wmma_f32_16x16x32_f16,
769 __builtin_amdgcn_wmma_f32_16x16x4_f32,
770 __builtin_amdgcn_wmma_f32_16x16x64_bf8_bf8,
771 __builtin_amdgcn_wmma_f32_16x16x64_bf8_fp8,
772 __builtin_amdgcn_wmma_f32_16x16x64_fp8_bf8,
773 __builtin_amdgcn_wmma_f32_16x16x64_fp8_fp8,
774 __builtin_amdgcn_wmma_f32_32x16x128_f4,
469775 __builtin_amdgcn_wmma_i32_16x16x16_iu4_w32,
470776 __builtin_amdgcn_wmma_i32_16x16x16_iu4_w32_gfx12,
471777 __builtin_amdgcn_wmma_i32_16x16x16_iu4_w64,
......@@ -476,6 +782,11 @@ pub const Tag = enum(u16) { __builtin_amdgcn_alignbit,
476782 __builtin_amdgcn_wmma_i32_16x16x16_iu8_w64_gfx12,
477783 __builtin_amdgcn_wmma_i32_16x16x32_iu4_w32_gfx12,
478784 __builtin_amdgcn_wmma_i32_16x16x32_iu4_w64_gfx12,
785 __builtin_amdgcn_wmma_i32_16x16x64_iu8,
786 __builtin_amdgcn_wmma_scale16_f32_16x16x128_f8f6f4,
787 __builtin_amdgcn_wmma_scale16_f32_32x16x128_f4,
788 __builtin_amdgcn_wmma_scale_f32_16x16x128_f8f6f4,
789 __builtin_amdgcn_wmma_scale_f32_32x16x128_f4,
479790 __builtin_amdgcn_workgroup_id_x,
480791 __builtin_amdgcn_workgroup_id_y,
481792 __builtin_amdgcn_workgroup_id_z,
......@@ -550,7 +861,7 @@ pub const longest_name = 52;
550861/// If found, returns the index of the node within the `dafsa` array.
551862/// Otherwise, returns `null`.
552863pub fn findInList(first_child_index: u16, char: u8) ?u16 {
553 @setEvalBranchQuota(972);
864 @setEvalBranchQuota(1594);
554865 var index = first_child_index;
555866 while (true) {
556867 if (dafsa[index].char == char) return index;
......@@ -645,1720 +956,2287 @@ const Node = packed struct {
645956
646957const dafsa = [_]Node{
647958 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
648 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 2 },
649 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 3 },
650 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 4 },
651 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 5 },
652 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 6 },
653 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 7 },
654 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 8 },
655 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 9 },
656 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 10 },
657 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 486, .child_index = 11 },
658 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 477, .child_index = 13 },
959 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 2 },
960 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 3 },
961 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 4 },
962 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 5 },
963 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 6 },
964 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 7 },
965 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 8 },
966 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 9 },
967 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 10 },
968 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 797, .child_index = 11 },
969 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 788, .child_index = 13 },
659970 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 14 },
660 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 477, .child_index = 15 },
971 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 788, .child_index = 15 },
661972 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 16 },
662 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 477, .child_index = 17 },
973 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 788, .child_index = 17 },
663974 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 18 },
664 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 477, .child_index = 19 },
975 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 788, .child_index = 19 },
665976 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 20 },
666 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 477, .child_index = 21 },
977 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 788, .child_index = 21 },
667978 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 22 },
668 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 477, .child_index = 24 },
979 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 788, .child_index = 24 },
669980 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 25 },
670981 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 26 },
671 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 477, .child_index = 27 },
982 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 788, .child_index = 27 },
672983 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 45 },
673984 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 46 },
674 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 48 },
675 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 51 },
676 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 80, .child_index = 54 },
677 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 49, .child_index = 58 },
678 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 61 },
679 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 63 },
680 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 69 },
681 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 72 },
682 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 76 },
683 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 77 },
684 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 55, .child_index = 80 },
685 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 86 },
686 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 88 },
687 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 90 },
688 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 103, .child_index = 94 },
689 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 105 },
690 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 108 },
691 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 49, .child_index = 112 },
692 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 115 },
693 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 116 },
694 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 117 },
695 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 118 },
696 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 119 },
697 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 120 },
698 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 121 },
699 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 122 },
700 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 123 },
701 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 124 },
702 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 125 },
703 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 126 },
704 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 71, .child_index = 127 },
705 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 128 },
706 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 130 },
707 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 131 },
708 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 132 },
709 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 133 },
710 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 134 },
711 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 135 },
712 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 136 },
713 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 137 },
714 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 138 },
715 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 139 },
716 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 141 },
717 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 142 },
718 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 143 },
719 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 145 },
720 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 146 },
721 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 148 },
722 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 149 },
723 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 150 },
724 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 151 },
725 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 152 },
726 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 153 },
727 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 155 },
728 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 156 },
729 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 47, .child_index = 157 },
730 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 158 },
731 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 159 },
732 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 160 },
733 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 161 },
734 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 162 },
735 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 163 },
736 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 164 },
737 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 165 },
738 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 166 },
739 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 167 },
740 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 168 },
741 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 34, .child_index = 169 },
742 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 178 },
743 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 179 },
744 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 180 },
745 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 181 },
746 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 141 },
747 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 182 },
748 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 184 },
749 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 185 },
750 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 186 },
751 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 187 },
752 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 188 },
753 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 189 },
754 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 190 },
755 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 179 },
756 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 181 },
757 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 191 },
758 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 192 },
759 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 193 },
760 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 38, .child_index = 194 },
761 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 195 },
762 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 196 },
763 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 197 },
764 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 198 },
765 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 199 },
766 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 200 },
767 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 201 },
768 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 202 },
769 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 203 },
770 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 204 },
771 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 205 },
772 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 206 },
773 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 208 },
774 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 71, .child_index = 209 },
775 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 210 },
776 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 211 },
777 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 212 },
778 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 213 },
779 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 222 },
780 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 223 },
781 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 224 },
782 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 225 },
783 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 226 },
784 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 227 },
785 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 228 },
786 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 229 },
787 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 230 },
788 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 231 },
789 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 232 },
790 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 233 },
791 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 234 },
792 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 235 },
793 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 236 },
794 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 115 },
795 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 237 },
796 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 238 },
797 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 240 },
798 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 241 },
799 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 242 },
800 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 243 },
801 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 244 },
802 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
803 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 247 },
804 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 248 },
805 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 249 },
806 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 250 },
807 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 251 },
808 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 252 },
809 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 253 },
810 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 254 },
811 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 255 },
812 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 256 },
813 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 257 },
814 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 259 },
815 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 260 },
816 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 263 },
817 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 265 },
818 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 267 },
819 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 268 },
820 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 269 },
821 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 271 },
822 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 272 },
823 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 274 },
824 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 275 },
825 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 276 },
826 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 277 },
827 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 278 },
828 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 279 },
829 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 280 },
830 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 206 },
831 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 281 },
832 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 282 },
833 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 283 },
834 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 284 },
835 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 285 },
836 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 286 },
837 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 287 },
838 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 280 },
839 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 288 },
840 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 289 },
841 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 38, .child_index = 290 },
842 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 291 },
843 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 292 },
844 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 293 },
845 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 294 },
846 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 295 },
847 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 296 },
848 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 297 },
849 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 298 },
850 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 299 },
851 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 300 },
852 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 301 },
985 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 48 },
986 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 52 },
987 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 158, .child_index = 55 },
988 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 49, .child_index = 59 },
989 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 62 },
990 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 64 },
991 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 38, .child_index = 70 },
992 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 128, .child_index = 73 },
993 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 77 },
994 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 78 },
995 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 55, .child_index = 81 },
996 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 87 },
997 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 90 },
998 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 35, .child_index = 92 },
999 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 127, .child_index = 96 },
1000 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 108 },
1001 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 111 },
1002 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 100, .child_index = 115 },
1003 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 118 },
1004 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 119 },
1005 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 120 },
1006 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 121 },
1007 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 122 },
1008 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 123 },
1009 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 124 },
1010 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 125 },
1011 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 126 },
1012 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 127 },
1013 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 128 },
1014 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 130 },
1015 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 132 },
1016 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 124, .child_index = 133 },
1017 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 134 },
1018 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 136 },
1019 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 137 },
1020 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 138 },
1021 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 139 },
1022 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 140 },
1023 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 141 },
1024 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 142 },
1025 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 143 },
1026 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 144 },
1027 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 145 },
1028 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 147 },
1029 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 33, .child_index = 148 },
1030 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 149 },
1031 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 151 },
1032 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 118, .child_index = 152 },
1033 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 154 },
1034 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 156 },
1035 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 157 },
1036 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 158 },
1037 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 159 },
1038 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 160 },
1039 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 162 },
1040 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 163 },
1041 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 47, .child_index = 164 },
1042 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 165 },
1043 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 166 },
1044 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 167 },
1045 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 168 },
1046 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 169 },
1047 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 170 },
1048 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 171 },
1049 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 172 },
1050 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 173 },
1051 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 174 },
1052 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 175 },
1053 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 176 },
1054 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 39, .child_index = 177 },
1055 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 187 },
1056 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 189 },
1057 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 190 },
1058 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 191 },
1059 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 147 },
1060 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 192 },
1061 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 194 },
1062 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 195 },
1063 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 196 },
1064 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 197 },
1065 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 198 },
1066 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 199 },
1067 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 200 },
1068 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 201 },
1069 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 189 },
1070 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 191 },
1071 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 202 },
1072 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 203 },
1073 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 204 },
1074 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 67, .child_index = 205 },
1075 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 206 },
1076 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 207 },
1077 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 208 },
1078 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 209 },
1079 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 210 },
1080 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 211 },
1081 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 212 },
1082 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
1083 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 214 },
1084 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 215 },
1085 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 216 },
1086 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 217 },
1087 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 218 },
1088 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 219 },
1089 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 220 },
1090 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 223 },
1091 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 124, .child_index = 224 },
1092 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 225 },
1093 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 226 },
1094 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 227 },
1095 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 228 },
1096 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 237 },
1097 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 238 },
1098 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 239 },
1099 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 240 },
1100 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 241 },
1101 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 242 },
1102 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 243 },
1103 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 244 },
1104 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 245 },
1105 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
1106 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 33, .child_index = 247 },
1107 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 248 },
1108 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 249 },
1109 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 250 },
1110 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 117, .child_index = 251 },
1111 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 118 },
1112 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 252 },
1113 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 253 },
1114 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 254 },
1115 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
1116 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 257 },
1117 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 258 },
1118 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 259 },
1119 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 260 },
1120 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 262 },
1121 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 263 },
1122 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 264 },
1123 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 265 },
1124 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 266 },
1125 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 267 },
1126 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 268 },
1127 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 269 },
1128 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 270 },
1129 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 271 },
1130 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 272 },
1131 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 273 },
1132 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 274 },
1133 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 277 },
1134 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 278 },
1135 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 281 },
1136 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 283 },
1137 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 284 },
1138 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 286 },
1139 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 287 },
1140 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 288 },
1141 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 290 },
1142 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 291 },
1143 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 293 },
1144 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 294 },
1145 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 295 },
1146 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 296 },
1147 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 297 },
1148 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 298 },
1149 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 299 },
1150 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 300 },
1151 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 220 },
1152 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 301 },
1153 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 302 },
1154 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 303 },
1155 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 304 },
1156 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 305 },
1157 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 306 },
1158 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 307 },
1159 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 308 },
1160 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 300 },
1161 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 309 },
1162 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 310 },
1163 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 67, .child_index = 311 },
1164 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 312 },
1165 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 313 },
1166 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 314 },
1167 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 315 },
1168 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 316 },
1169 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 317 },
1170 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 318 },
1171 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 319 },
1172 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 320 },
1173 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 321 },
1174 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 322 },
1175 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 323 },
1176 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 324 },
1177 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 325 },
1178 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 326 },
8531179 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
8541180 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
855 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 302 },
856 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 71, .child_index = 306 },
857 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 310 },
858 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 311 },
859 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 313 },
860 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 314 },
861 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 316 },
862 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 318 },
863 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 319 },
864 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 321 },
865 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 322 },
866 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 323 },
867 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 324 },
868 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 325 },
869 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
870 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
871 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 328 },
872 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 329 },
873 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 277 },
874 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 330 },
875 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 331 },
876 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 282 },
877 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 332 },
878 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 333 },
879 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 334 },
880 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 335 },
881 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 336 },
882 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 337 },
883 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 338 },
884 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 339 },
885 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 340 },
886 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 341 },
887 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 342 },
888 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 166 },
1181 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 327 },
1182 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 124, .child_index = 331 },
1183 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
1184 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 336 },
1185 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 338 },
1186 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 339 },
1187 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 341 },
1188 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 343 },
1189 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 344 },
1190 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 346 },
1191 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 347 },
1192 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 348 },
1193 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 349 },
1194 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
1195 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 351 },
1196 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 352 },
1197 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 354 },
1198 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 355 },
1199 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 297 },
1200 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 356 },
1201 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 357 },
1202 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 358 },
1203 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 359 },
1204 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 360 },
1205 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 33, .child_index = 361 },
1206 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 362 },
1207 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 363 },
1208 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 364 },
1209 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 117, .child_index = 365 },
1210 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 366 },
1211 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 367 },
1212 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 368 },
1213 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 369 },
1214 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1215 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 371 },
8891216 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
890 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 343 },
891 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 344 },
1217 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 372 },
1218 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 373 },
8921219 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
893 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 345 },
894 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 346 },
895 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 347 },
896 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 348 },
897 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 349 },
898 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
899 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 351 },
900 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 352 },
901 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 353 },
902 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 354 },
903 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 355 },
1220 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 375 },
1221 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 376 },
1222 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 377 },
1223 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 378 },
1224 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 379 },
1225 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 380 },
1226 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 16, .child_index = 381 },
1227 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 383 },
1228 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 384 },
1229 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 385 },
1230 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 386 },
1231 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 387 },
1232 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 326 },
9041233 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
9051234 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
906 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 357 },
907 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 360 },
1235 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 389 },
1236 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 392 },
9081237 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
9091238 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
910 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 361 },
911 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 362 },
912 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 363 },
913 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 364 },
914 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 365 },
915 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 364 },
916 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
917 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 367 },
918 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 368 },
919 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 369 },
920 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 371 },
921 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 372 },
922 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 373 },
923 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 374 },
1239 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 394 },
1240 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 395 },
1241 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 396 },
1242 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 397 },
1243 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 398 },
1244 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 399 },
1245 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 398 },
1246 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 400 },
1247 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 401 },
1248 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 402 },
1249 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 403 },
1250 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 405 },
1251 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 406 },
1252 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 407 },
1253 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 409 },
1254 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 411 },
9241255 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
925 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 376 },
926 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 377 },
927 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 380 },
928 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 381 },
929 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 257 },
930 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 382 },
931 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 383 },
932 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 384 },
933 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 385 },
934 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 386 },
935 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
936 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 388 },
937 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 38, .child_index = 390 },
938 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 391 },
939 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 393 },
940 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 394 },
941 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 396 },
942 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 397 },
943 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 398 },
944 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 399 },
945 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 400 },
946 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 401 },
947 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 402 },
948 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 257 },
949 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 403 },
950 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 404 },
951 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 405 },
952 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 405 },
953 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 406 },
954 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 408 },
955 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 409 },
956 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 410 },
957 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 412 },
958 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 413 },
959 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 415 },
960 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 416 },
961 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 417 },
962 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 418 },
963 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 419 },
964 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 420 },
965 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 421 },
966 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 422 },
967 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 423 },
968 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 425 },
969 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 426 },
970 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 427 },
971 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 428 },
972 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 429 },
973 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 430 },
1256 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 412 },
1257 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 413 },
1258 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 416 },
1259 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 417 },
1260 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 274 },
1261 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 418 },
1262 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 419 },
1263 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 420 },
1264 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 220 },
1265 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 421 },
1266 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 422 },
1267 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 423 },
1268 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 424 },
1269 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 67, .child_index = 426 },
1270 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 427 },
1271 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 429 },
1272 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 430 },
1273 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 432 },
1274 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 433 },
1275 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 435 },
1276 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 436 },
1277 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 437 },
1278 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 438 },
1279 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 439 },
1280 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 440 },
1281 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 441 },
1282 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 443 },
1283 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 444 },
1284 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 445 },
1285 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 446 },
1286 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 447 },
1287 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 448 },
1288 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 448 },
1289 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 449 },
1290 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 451 },
1291 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 452 },
1292 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 453 },
1293 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 455 },
1294 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 456 },
1295 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 458 },
1296 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 459 },
1297 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 460 },
1298 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 461 },
1299 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 462 },
1300 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 463 },
1301 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 464 },
1302 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 465 },
1303 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 466 },
1304 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 468 },
1305 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 469 },
1306 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 470 },
1307 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 471 },
1308 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 472 },
1309 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
1310 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 326 },
9741311 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
9751312 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
976 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 431 },
977 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 433 },
978 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 206 },
979 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 434 },
980 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
981 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 436 },
982 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 437 },
983 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 438 },
984 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 439 },
985 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 440 },
986 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 441 },
987 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 442 },
988 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 443 },
989 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 444 },
990 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 445 },
991 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 446 },
992 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 447 },
993 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 448 },
994 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 449 },
995 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 452 },
996 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 453 },
997 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 454 },
998 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 455 },
999 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 456 },
1000 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 457 },
1001 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 458 },
1002 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 459 },
1003 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 460 },
1004 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 461 },
1005 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 462 },
1006 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 463 },
1007 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 464 },
1008 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 465 },
1009 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 466 },
1010 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 467 },
1011 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
1012 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 469 },
1013 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 472 },
1014 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 474 },
1015 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 475 },
1016 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 476 },
1017 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 477 },
1018 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 479 },
1019 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 480 },
1020 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 481 },
1021 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 482 },
1022 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 483 },
1023 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 485 },
1313 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 474 },
1314 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 476 },
1315 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 479 },
1316 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 441 },
1317 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 481 },
1318 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 482 },
1319 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 33, .child_index = 483 },
1320 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 484 },
1321 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 485 },
1322 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 486 },
1323 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 117, .child_index = 487 },
1324 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 488 },
1325 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 489 },
1326 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 490 },
1327 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 491 },
1328 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 492 },
1329 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 441 },
1330 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 493 },
1331 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 445 },
1332 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
1333 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
1334 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 496 },
1335 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 497 },
1336 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 500 },
1337 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 501 },
1338 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 502 },
1339 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 503 },
1340 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 504 },
1341 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 505 },
1342 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 506 },
1343 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
1344 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 508 },
1345 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 509 },
1346 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 510 },
1347 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 511 },
1348 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
1349 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 513 },
1350 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 445 },
1351 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 514 },
1352 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 515 },
1353 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 516 },
1354 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 517 },
1355 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 518 },
1356 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 519 },
1357 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 520 },
1358 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 523 },
1359 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 525 },
1360 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 526 },
1361 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 527 },
1362 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 528 },
1363 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 530 },
1364 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 531 },
1365 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 532 },
1366 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 533 },
1367 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 534 },
1368 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 535 },
1369 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 537 },
1370 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 538 },
10241371 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
10251372 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
10261373 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1027 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 486 },
1028 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 487 },
1029 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 488 },
1030 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 490 },
1031 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 491 },
1032 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 492 },
1033 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 493 },
1034 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
1035 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 495 },
1036 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 496 },
1037 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 38, .child_index = 497 },
1038 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 500 },
1039 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 501 },
1040 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 502 },
1041 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 503 },
1042 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 504 },
1043 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 505 },
1044 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 506 },
1045 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 508 },
1046 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 509 },
1047 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 510 },
1048 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 511 },
1049 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 512 },
1374 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 539 },
1375 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 540 },
1376 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 541 },
1377 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 542 },
1378 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 544 },
1379 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 545 },
1380 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1381 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 547 },
1382 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 23, .child_index = 548 },
1383 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 550 },
1384 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 67, .child_index = 551 },
1385 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 555 },
1386 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 556 },
1387 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 557 },
1388 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 558 },
1389 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 559 },
1390 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 560 },
1391 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 561 },
1392 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 562 },
1393 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 563 },
1394 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 565 },
1395 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 566 },
1396 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 567 },
1397 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 568 },
1398 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 569 },
1399 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1400 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1401 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 570 },
1402 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 571 },
1403 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
10501404 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
10511405 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
10521406 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1053 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 513 },
1054 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 514 },
1055 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 515 },
1056 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 516 },
1057 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 49, .child_index = 519 },
1058 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 520 },
1059 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 521 },
1060 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 522 },
1061 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 523 },
1062 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 524 },
1063 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 525 },
1064 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 526 },
1065 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 527 },
1066 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 528 },
1067 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 529 },
1068 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 530 },
1069 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 531 },
1070 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 532 },
1071 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 533 },
1072 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 534 },
1073 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 535 },
1074 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 536 },
1075 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 537 },
1076 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 538 },
1407 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 573 },
1408 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 574 },
1409 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 575 },
1410 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 576 },
1411 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 94, .child_index = 579 },
1412 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 580 },
1413 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 581 },
1414 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 582 },
1415 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 583 },
1416 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 584 },
1417 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 585 },
1418 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 586 },
1419 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 587 },
1420 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 588 },
1421 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 589 },
1422 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 590 },
1423 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 591 },
1424 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 592 },
1425 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 593 },
1426 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 594 },
1427 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 595 },
1428 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 596 },
1429 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 597 },
1430 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 598 },
10771431 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1078 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 539 },
1079 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 541 },
1080 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 542 },
1081 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 543 },
1082 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 545 },
1083 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 546 },
1084 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 547 },
1085 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 548 },
1086 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 549 },
1087 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 550 },
1088 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 551 },
1089 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 552 },
1090 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 553 },
1091 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 554 },
1092 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 555 },
1093 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 556 },
1094 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 557 },
1095 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 558 },
1096 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 560 },
1097 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 562 },
1098 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 563 },
1099 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 564 },
1100 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 565 },
1101 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 567 },
1102 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 568 },
1103 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 569 },
1104 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 570 },
1105 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 571 },
1106 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 572 },
1107 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 573 },
1108 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 574 },
1109 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 575 },
1110 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 576 },
1111 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 577 },
1112 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 578 },
1113 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 579 },
1114 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 580 },
1115 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 581 },
1116 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 582 },
1117 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 405 },
1118 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 584 },
1119 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 585 },
1120 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 586 },
1121 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 587 },
1122 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 588 },
1123 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 589 },
1124 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 590 },
1125 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 584 },
1126 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 591 },
1127 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 592 },
1128 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 593 },
1129 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
1130 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 595 },
1432 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 599 },
1433 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 601 },
1434 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 602 },
1435 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 603 },
1436 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 604 },
1437 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1438 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1439 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 605 },
1440 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 607 },
1441 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 33, .child_index = 608 },
1442 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 609 },
1443 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 610 },
1444 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 611 },
1445 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 117, .child_index = 612 },
1446 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 616 },
1447 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 617 },
1448 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 618 },
1449 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 619 },
1450 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 620 },
1451 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 621 },
1452 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 622 },
1453 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 623 },
1454 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 624 },
1455 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 626 },
1456 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 628 },
1457 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 629 },
1458 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 630 },
1459 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 631 },
1460 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
1461 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 634 },
1462 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 635 },
1463 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 636 },
1464 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 637 },
1465 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 638 },
1466 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 639 },
1467 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 640 },
1468 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 641 },
1469 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 642 },
1470 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 643 },
1471 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 644 },
1472 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 645 },
1473 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 646 },
1474 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 647 },
1475 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 648 },
1476 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 649 },
1477 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 650 },
1478 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 651 },
1479 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 448 },
1480 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 653 },
1481 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 654 },
1482 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 655 },
1483 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 656 },
1484 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 657 },
1485 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 658 },
1486 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 659 },
1487 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 653 },
1488 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 660 },
1489 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 661 },
1490 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 662 },
1491 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 664 },
1492 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 380 },
1493 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 665 },
11311494 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1132 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 596 },
1495 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 666 },
1496 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 667 },
11331497 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1134 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 598 },
1498 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 669 },
1499 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 670 },
11351500 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
11361501 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1137 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 599 },
1138 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 600 },
1139 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 601 },
1140 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 602 },
1141 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 603 },
1142 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 604 },
1143 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 605 },
1144 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 606 },
1145 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 607 },
1146 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 609 },
1147 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 610 },
1148 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 611 },
1149 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 612 },
1150 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 613 },
1151 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 614 },
1152 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 615 },
1153 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 616 },
1154 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 617 },
1155 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 618 },
1156 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 619 },
1157 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 621 },
1158 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 622 },
1159 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 623 },
1160 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 624 },
1161 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 625 },
1162 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 626 },
1163 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 627 },
1164 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 631 },
1165 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 632 },
1166 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 49, .child_index = 633 },
1167 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 634 },
1168 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 636 },
1169 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 637 },
1170 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 638 },
1171 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 639 },
1172 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 640 },
1173 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 641 },
1174 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 642 },
1175 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 643 },
1176 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 644 },
1177 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 645 },
1178 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
1179 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
1180 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
1181 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 646 },
1182 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 649 },
1183 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 650 },
1184 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 651 },
1185 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 652 },
1186 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 653 },
1187 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 654 },
1188 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 656 },
1189 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 657 },
1190 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 241 },
1191 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 658 },
1192 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 659 },
1193 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 660 },
1194 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 662 },
1195 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 663 },
1196 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
1197 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 664 },
1198 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 665 },
1199 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 667 },
1200 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 668 },
1201 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 669 },
1202 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 670 },
1203 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 671 },
1204 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 672 },
1205 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 673 },
1206 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 674 },
1207 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 34, .child_index = 675 },
1208 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 676 },
1209 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 677 },
1210 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 678 },
1211 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 679 },
1212 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 570 },
1213 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 680 },
1502 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 671 },
1503 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 672 },
1504 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 673 },
1505 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 674 },
1506 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 675 },
1507 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 676 },
1508 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 677 },
1509 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 678 },
1510 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 44, .child_index = 679 },
1511 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 681 },
1512 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 682 },
1513 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 683 },
1514 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 684 },
1515 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 685 },
1516 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 686 },
1517 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 687 },
1518 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 688 },
1519 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 689 },
1520 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 689 },
1521 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 690 },
1522 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
1523 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 692 },
1524 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 693 },
1525 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 695 },
1526 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 696 },
1527 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 697 },
1528 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 698 },
1529 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 699 },
1530 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 665 },
1531 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 700 },
1532 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 701 },
1533 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 702 },
1534 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 703 },
1535 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 707 },
1536 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 708 },
1537 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 94, .child_index = 709 },
1538 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 710 },
1539 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 713 },
1540 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 714 },
1541 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 715 },
1542 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 716 },
1543 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 717 },
1544 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 718 },
1545 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 719 },
1546 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 720 },
1547 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 721 },
1548 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 722 },
1549 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 723 },
1550 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 723 },
1551 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 723 },
1552 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 724 },
1553 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 727 },
1554 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 728 },
1555 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 729 },
1556 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 730 },
1557 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 731 },
1558 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 732 },
1559 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 734 },
1560 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 735 },
1561 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 736 },
1562 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 737 },
1563 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 257 },
1564 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 738 },
1565 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
1566 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 33, .child_index = 740 },
1567 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 744 },
1568 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 745 },
1569 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
1570 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 746 },
1571 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 747 },
1572 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 748 },
1573 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 82, .child_index = 749 },
1574 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 751 },
1575 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 753 },
1576 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 754 },
1577 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 755 },
1578 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 756 },
1579 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 757 },
1580 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 758 },
1581 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 759 },
1582 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 760 },
1583 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 761 },
1584 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 34, .child_index = 762 },
1585 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 763 },
1586 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 764 },
1587 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 765 },
1588 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 766 },
1589 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 638 },
1590 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 767 },
12141591 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1215 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 681 },
1216 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 682 },
1217 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 683 },
1218 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 684 },
1219 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 685 },
1220 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 686 },
1221 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 687 },
1222 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 688 },
1223 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 277 },
1224 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 134 },
1225 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 689 },
1226 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
1227 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 691 },
1228 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 692 },
1229 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 693 },
1230 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 694 },
1231 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 695 },
1232 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 696 },
1233 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 697 },
1234 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 698 },
1235 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 699 },
1236 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 700 },
1237 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 701 },
1238 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 702 },
1239 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 703 },
1240 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 704 },
1241 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 707 },
1592 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 768 },
1593 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 769 },
1594 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 770 },
1595 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 771 },
1596 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 772 },
1597 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 773 },
1598 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 774 },
1599 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 775 },
1600 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 776 },
1601 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 777 },
1602 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 297 },
1603 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 140 },
1604 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 778 },
1605 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 779 },
1606 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 780 },
1607 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 781 },
1608 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 782 },
1609 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 783 },
1610 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 784 },
1611 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 785 },
1612 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 786 },
1613 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 787 },
1614 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 788 },
1615 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 789 },
1616 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 790 },
1617 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 791 },
1618 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 792 },
1619 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 793 },
1620 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 794 },
1621 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 797 },
1622 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 798 },
12421623 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1243 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 604 },
1244 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 708 },
1245 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 709 },
1246 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 711 },
1247 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 714 },
1248 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 715 },
1249 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 717 },
1250 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 718 },
1251 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 719 },
1252 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 720 },
1253 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 721 },
1254 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 722 },
1255 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 723 },
1256 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 724 },
1257 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 725 },
1258 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 726 },
1259 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 727 },
1260 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 728 },
1261 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 729 },
1262 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 730 },
1624 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 799 },
1625 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 675 },
1626 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 800 },
1627 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 801 },
1628 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 803 },
1629 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 804 },
1630 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 807 },
1631 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 809 },
1632 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
1633 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 811 },
1634 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 812 },
1635 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 813 },
1636 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 814 },
1637 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 815 },
1638 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 816 },
1639 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 817 },
1640 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 818 },
1641 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 819 },
1642 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 820 },
1643 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 821 },
1644 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 822 },
1645 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 823 },
1646 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 824 },
1647 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 825 },
12631648 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1264 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 277 },
1265 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 731 },
1266 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 733 },
1267 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 734 },
1268 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 735 },
1269 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 737 },
1270 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 739 },
1271 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 740 },
1272 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 742 },
1273 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 744 },
1274 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 745 },
1275 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 746 },
1276 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 714 },
1277 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 749 },
1278 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 751 },
1279 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 752 },
1280 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 49, .child_index = 753 },
1281 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 754 },
1282 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 755 },
1283 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 458 },
1284 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 166 },
1285 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 328 },
1286 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 757 },
1287 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 758 },
1288 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 403 },
1289 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 759 },
1290 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 760 },
1291 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 761 },
1292 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 697 },
1293 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 604 },
1294 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 762 },
1295 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 763 },
1296 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 764 },
1297 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 617 },
1298 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 765 },
1299 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 766 },
1300 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 767 },
1301 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 768 },
1302 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 769 },
1303 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 770 },
1304 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 771 },
1305 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 772 },
1306 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 773 },
1307 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 542 },
1308 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 774 },
1309 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 775 },
1310 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 776 },
1311 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 777 },
1312 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 778 },
1313 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 779 },
1314 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 617 },
1315 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 403 },
1316 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 781 },
1317 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 782 },
1318 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 783 },
1319 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 784 },
1649 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 297 },
1650 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 827 },
1651 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 829 },
1652 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 830 },
1653 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 831 },
1654 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 833 },
1655 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 835 },
1656 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 836 },
1657 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 839 },
1658 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 840 },
1659 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 842 },
1660 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 844 },
1661 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 845 },
1662 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 846 },
1663 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 572 },
1664 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 849 },
1665 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 851 },
1666 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 852 },
1667 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 94, .child_index = 853 },
1668 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 854 },
1669 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 855 },
1670 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 857 },
1671 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 508 },
1672 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 371 },
1673 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 354 },
1674 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 858 },
1675 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 859 },
1676 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 446 },
1677 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 860 },
1678 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 861 },
1679 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 862 },
1680 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 787 },
1681 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1682 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 675 },
1683 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 863 },
1684 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 864 },
1685 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 865 },
1686 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
1687 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 866 },
1688 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 867 },
1689 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 868 },
1690 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 869 },
1691 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 870 },
1692 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 871 },
1693 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 872 },
1694 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 873 },
1695 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 874 },
1696 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 875 },
1697 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 876 },
1698 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 602 },
1699 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 877 },
1700 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 604 },
1701 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 878 },
1702 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 879 },
1703 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 880 },
1704 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 881 },
1705 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 882 },
1706 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 883 },
1707 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 54, .child_index = 884 },
1708 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 885 },
1709 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 886 },
1710 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 887 },
1711 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 889 },
1712 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
1713 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 446 },
1714 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 890 },
1715 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 891 },
1716 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 892 },
1717 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 893 },
13201718 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
13211719 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1322 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 785 },
1323 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 786 },
1324 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 787 },
1325 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 788 },
1720 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 894 },
1721 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 895 },
1722 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 896 },
1723 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 897 },
13261724 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1327 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 789 },
1328 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 790 },
1725 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 898 },
1726 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 899 },
1727 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 900 },
1728 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 905 },
13291729 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1330 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 794 },
1331 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 795 },
1332 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 796 },
1333 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 797 },
1334 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 798 },
1335 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 799 },
1336 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 800 },
1337 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 801 },
1338 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 802 },
1339 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 803 },
1340 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 804 },
1341 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
1730 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
1731 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
1732 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 909 },
1733 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 910 },
1734 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 911 },
1735 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 912 },
1736 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 913 },
1737 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 914 },
1738 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 915 },
1739 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 916 },
1740 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 917 },
1741 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 918 },
1742 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 919 },
13421743 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1343 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 806 },
1344 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 277 },
1345 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 807 },
1346 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 808 },
1347 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 809 },
1348 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 810 },
1349 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 811 },
1350 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 812 },
1351 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 813 },
1352 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 814 },
1353 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 815 },
1354 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
1355 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 816 },
1356 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 817 },
1357 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 818 },
1358 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 819 },
1359 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 820 },
1360 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 822 },
1361 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 595 },
1362 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 823 },
1363 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 824 },
1364 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 825 },
1365 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 826 },
1366 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 827 },
1367 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 828 },
1368 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 829 },
1369 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 830 },
1370 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 831 },
1371 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 832 },
1372 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 833 },
1373 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 834 },
1374 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 835 },
1375 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 836 },
1376 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 728 },
1377 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 839 },
1378 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 840 },
1379 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 840 },
1380 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 841 },
1381 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 841 },
1382 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 682 },
1383 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 842 },
1384 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 595 },
1385 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 682 },
1386 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 843 },
1387 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 844 },
1388 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 845 },
1389 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 844 },
1390 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 846 },
1391 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 847 },
1392 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 848 },
1393 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 513 },
1394 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 849 },
1395 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 848 },
1396 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 595 },
1397 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 850 },
1398 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 851 },
1744 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 920 },
1745 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 297 },
1746 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 921 },
1747 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 922 },
1748 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 923 },
1749 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 924 },
1750 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 925 },
1751 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 926 },
1752 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 927 },
1753 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 928 },
1754 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 929 },
1755 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
1756 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 930 },
1757 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 931 },
1758 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 933 },
1759 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 934 },
1760 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 935 },
1761 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 936 },
1762 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 937 },
1763 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 938 },
1764 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 940 },
1765 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 941 },
1766 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 942 },
1767 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 943 },
1768 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 944 },
1769 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 945 },
1770 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 946 },
1771 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 947 },
1772 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 948 },
1773 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 949 },
1774 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 950 },
1775 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 951 },
1776 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 952 },
1777 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 953 },
1778 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 954 },
1779 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 955 },
1780 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 956 },
1781 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 822 },
1782 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 959 },
1783 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 637 },
1784 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 637 },
1785 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 960 },
1786 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 960 },
1787 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 961 },
1788 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 961 },
1789 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 771 },
1790 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 962 },
1791 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 665 },
1792 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 771 },
1793 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 963 },
1794 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 686 },
1795 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 964 },
1796 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 965 },
1797 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 966 },
1798 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 967 },
1799 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 968 },
1800 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 967 },
1801 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 969 },
1802 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 970 },
1803 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 971 },
1804 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 573 },
1805 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 972 },
1806 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 973 },
1807 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 665 },
1808 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
1809 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 975 },
13991810 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1400 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 49, .child_index = 852 },
1401 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 853 },
1402 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 855 },
1403 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 848 },
1404 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 328 },
1405 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 856 },
1406 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 858 },
1407 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 859 },
1408 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 860 },
1409 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 861 },
1410 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 862 },
1411 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 863 },
1412 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 864 },
1413 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 277 },
1414 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 865 },
1415 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 866 },
1416 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 384 },
1417 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 769 },
1418 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 867 },
1419 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 282 },
1811 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 94, .child_index = 976 },
1812 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 978 },
1813 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 980 },
1814 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 973 },
1815 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 981 },
1816 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 354 },
1817 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 982 },
1818 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 984 },
1819 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 985 },
1820 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 986 },
1821 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 987 },
1822 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 988 },
1823 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 989 },
1824 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 990 },
1825 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 297 },
1826 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 991 },
1827 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 992 },
1828 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
1829 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 870 },
1830 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 994 },
1831 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 995 },
1832 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 996 },
1833 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 358 },
14201834 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1421 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 868 },
1422 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 728 },
1423 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 869 },
1424 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 870 },
1425 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 773 },
1426 .{ .char = '1', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 872 },
1427 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 872 },
1428 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 873 },
1429 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 874 },
1430 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
1431 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 875 },
1432 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 876 },
1433 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 879 },
1434 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 881 },
1435 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 884 },
1436 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
1437 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 885 },
1438 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 886 },
1439 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 842 },
1440 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 887 },
1441 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 888 },
1835 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 997 },
1836 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 998 },
1837 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 822 },
1838 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 999 },
1839 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1000 },
1840 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1002 },
1841 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1003 },
1842 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 54, .child_index = 1004 },
1843 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1005 },
1844 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 876 },
1845 .{ .char = '1', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1006 },
1846 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1006 },
1847 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1007 },
1848 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1008 },
1849 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1009 },
1850 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 723 },
1851 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1010 },
1852 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 1011 },
1853 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1014 },
1854 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1016 },
1855 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1019 },
1856 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 380 },
1857 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1020 },
1858 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1021 },
1859 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1022 },
1860 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 962 },
1861 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1023 },
1862 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1028 },
1863 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1029 },
1864 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1030 },
1865 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1031 },
14421866 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1443 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 889 },
1444 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 890 },
1445 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 891 },
1446 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 892 },
1447 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 893 },
1448 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 894 },
1449 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 895 },
1450 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 897 },
1451 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 898 },
1452 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
1453 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 900 },
1454 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 901 },
1455 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 902 },
1456 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 903 },
1457 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 905 },
1458 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 906 },
1459 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 907 },
1460 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
1461 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 909 },
1462 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 910 },
1463 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 911 },
1464 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 912 },
1465 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 913 },
1466 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 914 },
1467 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 915 },
1468 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 916 },
1469 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 917 },
1470 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 918 },
1471 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 919 },
1472 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 224 },
1473 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 242 },
1474 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 920 },
1475 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 921 },
1476 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 922 },
1477 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 923 },
1478 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 924 },
1479 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 925 },
1480 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 926 },
1481 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 503 },
1482 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 458 },
1867 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1032 },
1868 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1033 },
1869 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1034 },
1870 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1035 },
1871 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1036 },
1872 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1037 },
1873 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 930 },
1874 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1038 },
1875 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1040 },
1876 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1041 },
1877 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1042 },
1878 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1043 },
1879 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1044 },
1880 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1045 },
1881 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1046 },
1882 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1048 },
1883 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1049 },
1884 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1050 },
1885 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1051 },
1886 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1052 },
1887 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1053 },
1888 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1054 },
1889 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1055 },
1890 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1056 },
1891 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 664 },
1892 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1057 },
1893 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1058 },
1894 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1059 },
1895 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1060 },
1896 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1061 },
1897 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1062 },
1898 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1063 },
1899 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1064 },
1900 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1065 },
1901 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 239 },
1902 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 258 },
1903 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1066 },
1904 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1067 },
1905 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1068 },
1906 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1069 },
1907 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1071 },
1908 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 1072 },
1909 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1074 },
1910 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1075 },
1911 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1076 },
1912 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 558 },
1913 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 508 },
14831914 .{ .char = 'x', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
14841915 .{ .char = 'y', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
14851916 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1486 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 927 },
1487 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 928 },
1488 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 735 },
1917 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1077 },
1918 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1078 },
1919 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 831 },
14891920 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1490 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 929 },
1491 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 567 },
1492 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 567 },
1493 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 930 },
1494 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 931 },
1495 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 850 },
1496 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 624 },
1497 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 932 },
1498 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 933 },
1499 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 49, .child_index = 934 },
1500 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 855 },
1501 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 850 },
1502 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 850 },
1503 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 935 },
1504 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 936 },
1505 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 937 },
1506 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 940 },
1507 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 941 },
1508 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
1509 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 942 },
1510 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 943 },
1511 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 947 },
1512 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 384 },
1513 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 600 },
1514 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 951 },
1515 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 952 },
1516 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 953 },
1517 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 954 },
1518 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 955 },
1519 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 600 },
1520 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 957 },
1521 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 958 },
1522 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 959 },
1523 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 960 },
1524 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 961 },
1525 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 962 },
1526 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 963 },
1527 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 964 },
1528 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 965 },
1529 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 966 },
1530 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 967 },
1531 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 968 },
1532 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 969 },
1533 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 970 },
1534 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 971 },
1535 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 972 },
1536 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 973 },
1537 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
1538 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 558 },
1539 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 463 },
1540 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 975 },
1541 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 271 },
1542 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 977 },
1543 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 978 },
1544 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 979 },
1545 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
1546 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 981 },
1547 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 586 },
1548 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 982 },
1549 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 983 },
1550 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 984 },
1551 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 985 },
1552 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 986 },
1553 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 795 },
1554 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 987 },
1555 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 988 },
1556 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 989 },
1557 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 990 },
1558 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 991 },
1559 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 992 },
1560 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 993 },
1561 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 994 },
1562 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 995 },
1563 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 996 },
1564 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 997 },
1565 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 998 },
1566 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 999 },
1567 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1000 },
1568 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1001 },
1569 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1002 },
1570 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1003 },
1571 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1004 },
1572 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1005 },
1573 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1006 },
1574 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1008 },
1575 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1009 },
1576 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1010 },
1577 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1011 },
1578 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1012 },
1579 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 569 },
1580 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1013 },
1581 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 49, .child_index = 1015 },
1582 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1016 },
1583 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1016 },
1584 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1017 },
1585 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1018 },
1586 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1019 },
1587 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1020 },
1588 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1021 },
1589 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1022 },
1590 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1023 },
1591 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1024 },
1592 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1025 },
1593 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1024 },
1594 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1026 },
1595 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1024 },
1596 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1025 },
1597 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1024 },
1598 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1027 },
1599 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1028 },
1600 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 921 },
1601 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1029 },
1602 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1030 },
1603 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1031 },
1604 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1032 },
1921 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1079 },
1922 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1080 },
1923 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1081 },
1924 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1082 },
1925 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
1926 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
1927 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1083 },
1928 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1084 },
1929 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1085 },
1930 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 700 },
1931 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1086 },
1932 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1087 },
1933 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1088 },
1934 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 1089 },
1935 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 79, .child_index = 1090 },
1936 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 980 },
1937 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1085 },
1938 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
1939 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1091 },
1940 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1093 },
1941 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1094 },
1942 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1095 },
1943 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1098 },
1944 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1099 },
1945 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
1946 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1100 },
1947 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1101 },
1948 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1105 },
1949 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
1950 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 445 },
1951 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
1952 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1109 },
1953 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1110 },
1954 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1111 },
1955 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1112 },
1956 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1113 },
1957 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1114 },
1958 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1115 },
1959 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1116 },
1960 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1118 },
1961 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1119 },
1962 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 54, .child_index = 1120 },
1963 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1121 },
1964 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 445 },
1965 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 125 },
1966 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1122 },
1967 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1123 },
1968 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1124 },
1969 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 1125 },
1970 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 1126 },
1971 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1127 },
1972 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1128 },
1973 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1129 },
1974 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1130 },
1975 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1131 },
1976 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1132 },
1977 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1133 },
1978 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1134 },
1979 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1135 },
1980 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1136 },
1981 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1137 },
1982 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1138 },
1983 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1139 },
1984 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 258 },
1985 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1140 },
1986 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1141 },
1987 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1088 },
1988 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1088 },
1989 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1142 },
1990 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1143 },
1991 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1144 },
1992 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 624 },
1993 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 513 },
1994 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1145 },
1995 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 290 },
1996 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1150 },
1997 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1151 },
1998 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1152 },
1999 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1153 },
2000 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1154 },
2001 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 655 },
2002 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1155 },
2003 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1156 },
2004 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1157 },
2005 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1158 },
2006 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1159 },
2007 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
2008 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1160 },
2009 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1161 },
2010 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1162 },
2011 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1163 },
2012 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
2013 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1164 },
2014 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 380 },
2015 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1165 },
2016 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1166 },
2017 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1167 },
2018 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1168 },
2019 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1169 },
2020 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1170 },
2021 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1171 },
2022 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1172 },
2023 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1173 },
2024 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1174 },
2025 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1175 },
2026 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1176 },
2027 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1177 },
2028 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1178 },
2029 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1179 },
2030 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 1180 },
2031 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1181 },
2032 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1182 },
2033 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1183 },
2034 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1185 },
2035 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1187 },
2036 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1188 },
2037 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1189 },
2038 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1190 },
2039 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1191 },
2040 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1192 },
2041 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1193 },
2042 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1194 },
2043 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1195 },
2044 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1196 },
2045 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 637 },
2046 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1197 },
2047 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1199 },
2048 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 79, .child_index = 1200 },
2049 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1201 },
2050 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1202 },
2051 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1203 },
2052 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1203 },
2053 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1204 },
2054 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1205 },
2055 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1206 },
2056 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1207 },
2057 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1208 },
2058 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1209 },
2059 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1210 },
2060 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1211 },
2061 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1212 },
2062 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1211 },
2063 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1213 },
2064 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1211 },
2065 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1212 },
2066 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1211 },
2067 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1214 },
2068 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1215 },
2069 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1216 },
2070 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1217 },
2071 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1218 },
2072 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1068 },
2073 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1219 },
2074 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1220 },
2075 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1221 },
2076 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1222 },
2077 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1223 },
2078 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 54, .child_index = 1228 },
2079 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1119 },
2080 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1229 },
16052081 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1606 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1033 },
1607 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1034 },
1608 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1035 },
1609 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1036 },
1610 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1037 },
1611 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1038 },
1612 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1039 },
1613 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1040 },
1614 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1041 },
1615 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1042 },
1616 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1043 },
1617 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1045 },
1618 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 702 },
1619 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
1620 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1046 },
1621 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1048 },
1622 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1049 },
1623 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1050 },
1624 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1051 },
2082 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1230 },
2083 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1231 },
2084 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1232 },
2085 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1233 },
2086 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1234 },
2087 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1235 },
2088 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1236 },
2089 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1237 },
2090 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1238 },
2091 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1239 },
2092 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1240 },
2093 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1243 },
2094 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1245 },
2095 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1246 },
2096 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1247 },
2097 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1248 },
2098 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
2099 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 792 },
2100 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 380 },
2101 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1249 },
2102 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1251 },
2103 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 863 },
2104 .{ .char = 'j', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1252 },
2105 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1253 },
2106 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1254 },
2107 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1255 },
2108 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1256 },
16252109 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1626 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1052 },
1627 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1053 },
1628 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1054 },
1629 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1055 },
1630 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1056 },
1631 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1057 },
1632 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1058 },
1633 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1059 },
1634 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1060 },
1635 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1061 },
1636 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1062 },
1637 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1063 },
1638 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1064 },
1639 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1065 },
1640 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1067 },
1641 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1069 },
1642 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1070 },
1643 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1071 },
1644 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1072 },
1645 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1073 },
1646 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1074 },
1647 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 795 },
1648 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1075 },
1649 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1076 },
1650 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1077 },
1651 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1078 },
1652 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1079 },
1653 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 613 },
1654 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 547 },
1655 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 757 },
1656 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 569 },
1657 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1080 },
1658 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1081 },
1659 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1082 },
1660 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 714 },
1661 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 714 },
1662 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 49, .child_index = 1083 },
1663 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 624 },
1664 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1084 },
1665 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1085 },
1666 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1086 },
1667 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1087 },
1668 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1088 },
1669 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1089 },
1670 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
1671 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1094 },
1672 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1095 },
1673 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1096 },
1674 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1097 },
1675 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1098 },
1676 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1100 },
1677 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1101 },
1678 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1102 },
1679 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1103 },
1680 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1104 },
1681 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1105 },
1682 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1106 },
1683 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1107 },
1684 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1108 },
1685 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1109 },
1686 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1110 },
1687 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1111 },
1688 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1112 },
1689 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1113 },
1690 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1114 },
1691 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 906 },
1692 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1114 },
1693 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1115 },
1694 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1116 },
1695 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1117 },
1696 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1118 },
1697 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 861 },
1698 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1119 },
1699 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1120 },
1700 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1121 },
1701 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1122 },
1702 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1123 },
1703 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1124 },
1704 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1125 },
1705 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
1706 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1126 },
1707 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1127 },
1708 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1128 },
1709 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1129 },
1710 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1130 },
1711 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
1712 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1131 },
1713 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1132 },
1714 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1133 },
1715 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1134 },
1716 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1135 },
1717 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1136 },
1718 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1137 },
1719 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1138 },
1720 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1139 },
1721 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1140 },
1722 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 277 },
1723 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1141 },
1724 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1142 },
1725 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1143 },
1726 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1144 },
1727 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1145 },
1728 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1146 },
1729 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 842 },
1730 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 49, .child_index = 1147 },
1731 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1151 },
1732 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1152 },
1733 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1153 },
1734 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1154 },
1735 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1155 },
1736 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 795 },
2110 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1257 },
2111 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1258 },
2112 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1259 },
2113 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1260 },
2114 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1261 },
2115 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1262 },
2116 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1263 },
2117 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1264 },
2118 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1265 },
2119 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1266 },
2120 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1267 },
2121 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1268 },
2122 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1269 },
2123 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1270 },
2124 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1272 },
2125 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1274 },
2126 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1275 },
2127 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1277 },
2128 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1278 },
2129 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1279 },
2130 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1280 },
2131 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1281 },
2132 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
2133 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1282 },
2134 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1283 },
2135 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1284 },
2136 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
2137 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1286 },
2138 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1287 },
2139 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1288 },
2140 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1289 },
2141 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1290 },
2142 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1291 },
2143 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 686 },
2144 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 609 },
2145 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 858 },
2146 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 637 },
2147 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1292 },
2148 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1293 },
2149 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1294 },
2150 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1295 },
2151 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1296 },
2152 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1297 },
2153 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 833 },
2154 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1298 },
2155 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 572 },
2156 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
2157 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1300 },
2158 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 79, .child_index = 1302 },
2159 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1202 },
2160 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
2161 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 700 },
2162 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1303 },
2163 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1304 },
2164 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1305 },
2165 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1306 },
2166 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1307 },
2167 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1308 },
2168 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1312 },
2169 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1313 },
2170 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1314 },
2171 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1315 },
2172 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1316 },
2173 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1317 },
2174 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1318 },
2175 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1319 },
2176 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1323 },
2177 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1324 },
2178 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1325 },
2179 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1326 },
2180 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1327 },
2181 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1328 },
2182 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1329 },
2183 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1330 },
2184 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1331 },
2185 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1332 },
2186 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 54, .child_index = 1333 },
2187 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1334 },
2188 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1335 },
2189 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1336 },
2190 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1337 },
2191 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1338 },
2192 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1339 },
2193 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1340 },
2194 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1341 },
2195 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1342 },
2196 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1343 },
2197 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1344 },
2198 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1345 },
2199 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1345 },
2200 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1345 },
2201 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1346 },
2202 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1049 },
2203 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1346 },
2204 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1347 },
2205 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1348 },
2206 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1349 },
2207 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1350 },
2208 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1351 },
2209 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1352 },
2210 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1353 },
2211 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1354 },
2212 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1355 },
2213 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 987 },
2214 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1356 },
2215 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1357 },
2216 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1358 },
2217 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1359 },
2218 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1360 },
2219 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1361 },
2220 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1362 },
2221 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
2222 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1363 },
2223 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1364 },
2224 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1365 },
2225 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1366 },
2226 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1367 },
2227 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2228 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1368 },
2229 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1369 },
2230 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1370 },
2231 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1371 },
2232 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1372 },
2233 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1373 },
2234 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1374 },
2235 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1375 },
2236 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1376 },
2237 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1377 },
2238 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1378 },
2239 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1379 },
2240 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1380 },
2241 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 297 },
2242 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1386 },
2243 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1387 },
2244 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1388 },
2245 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1389 },
2246 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1390 },
2247 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1391 },
2248 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1392 },
2249 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1393 },
2250 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1394 },
2251 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1395 },
2252 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1397 },
2253 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1398 },
2254 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1399 },
2255 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 962 },
2256 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 665 },
2257 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1400 },
2258 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1401 },
2259 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1402 },
2260 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 79, .child_index = 1403 },
2261 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1407 },
2262 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1408 },
2263 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1409 },
2264 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1410 },
2265 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1411 },
2266 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 908 },
17372267 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1738 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1157 },
2268 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1413 },
17392269 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1740 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1158 },
1741 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1159 },
1742 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1160 },
1743 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1161 },
1744 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1162 },
1745 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 874 },
1746 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1164 },
1747 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1165 },
1748 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1166 },
1749 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1167 },
1750 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1168 },
1751 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1169 },
1752 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1170 },
1753 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1171 },
1754 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1172 },
1755 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1175 },
1756 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1176 },
1757 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1177 },
1758 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1178 },
1759 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1179 },
1760 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1180 },
1761 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1181 },
1762 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1182 },
1763 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1183 },
1764 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1184 },
1765 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1185 },
1766 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1186 },
1767 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1187 },
1768 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1188 },
1769 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
1770 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1189 },
1771 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1190 },
1772 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 486 },
1773 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1191 },
1774 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1192 },
1775 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 707 },
1776 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1193 },
1777 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1128 },
1778 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1194 },
1779 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1195 },
1780 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1196 },
1781 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1197 },
1782 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1198 },
1783 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1199 },
1784 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1200 },
1785 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1201 },
1786 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1202 },
1787 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1203 },
1788 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1204 },
1789 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1205 },
1790 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1206 },
1791 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1207 },
1792 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1119 },
1793 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1208 },
1794 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1209 },
1795 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1210 },
1796 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 1212 },
1797 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1213 },
1798 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1214 },
1799 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1215 },
1800 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1216 },
1801 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 352 },
1802 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1217 },
1803 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1218 },
1804 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1219 },
1805 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1220 },
1806 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1221 },
1807 .{ .char = '9', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1222 },
1808 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1223 },
1809 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1086 },
1810 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1224 },
1811 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1226 },
1812 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1231 },
1813 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 954 },
1814 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1232 },
1815 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1233 },
1816 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1234 },
1817 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1235 },
1818 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1236 },
1819 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 932 },
1820 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 491 },
1821 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1237 },
1822 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1109 },
1823 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1239 },
1824 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1240 },
1825 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1241 },
1826 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1242 },
1827 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1243 },
1828 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 242 },
1829 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1244 },
1830 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1245 },
1831 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1246 },
1832 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1247 },
1833 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1248 },
2270 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1414 },
2271 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1415 },
2272 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1416 },
2273 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1417 },
2274 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1418 },
2275 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1420 },
2276 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2277 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1421 },
2278 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1009 },
2279 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1215 },
2280 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1422 },
2281 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1423 },
2282 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1424 },
2283 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1425 },
2284 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1426 },
2285 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1427 },
2286 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1428 },
2287 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1430 },
2288 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1432 },
2289 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1433 },
2290 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1434 },
2291 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 54, .child_index = 1435 },
2292 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1441 },
2293 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1442 },
2294 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1443 },
2295 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1444 },
2296 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1445 },
2297 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1448 },
2298 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1449 },
2299 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1450 },
2300 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1451 },
2301 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1452 },
2302 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1453 },
2303 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1454 },
2304 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1455 },
2305 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
2306 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2307 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1456 },
2308 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1457 },
2309 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1458 },
2310 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1459 },
2311 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1348 },
2312 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1460 },
2313 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1461 },
2314 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1462 },
2315 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1463 },
2316 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1464 },
2317 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 783 },
2318 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1465 },
2319 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1466 },
2320 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 539 },
2321 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1467 },
2322 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1468 },
2323 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 797 },
2324 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1469 },
2325 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1365 },
2326 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1470 },
2327 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1471 },
2328 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1472 },
2329 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1473 },
2330 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1474 },
2331 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1475 },
2332 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1476 },
2333 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1477 },
2334 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1478 },
2335 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1479 },
2336 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1480 },
2337 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1481 },
2338 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1482 },
2339 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1484 },
2340 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1487 },
2341 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1489 },
2342 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1490 },
2343 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1491 },
2344 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1492 },
2345 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1493 },
2346 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1494 },
2347 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1495 },
2348 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1496 },
2349 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1497 },
2350 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1291 },
2351 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1498 },
2352 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1356 },
2353 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1421 },
2354 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1499 },
2355 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1502 },
2356 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1503 },
2357 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1504 },
2358 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1193 },
2359 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1505 },
2360 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1506 },
2361 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1508 },
2362 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1509 },
2363 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 43, .child_index = 1511 },
2364 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 1512 },
2365 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1513 },
2366 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1514 },
2367 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1515 },
2368 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 384 },
2369 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1516 },
2370 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1517 },
2371 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1518 },
2372 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1519 },
2373 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1520 },
2374 .{ .char = '9', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1521 },
2375 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1522 },
2376 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1305 },
2377 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1523 },
2378 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1525 },
2379 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1526 },
2380 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1527 },
2381 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1532 },
2382 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1533 },
2383 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1115 },
2384 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1534 },
2385 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1535 },
2386 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1536 },
2387 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1537 },
2388 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1538 },
2389 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1540 },
2390 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1536 },
2391 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1541 },
2392 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1542 },
2393 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1543 },
2394 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1544 },
2395 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1545 },
2396 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1546 },
2397 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1547 },
2398 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1548 },
2399 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1550 },
2400 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1551 },
2401 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1552 },
2402 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1553 },
2403 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1087 },
2404 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 326 },
2405 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1554 },
2406 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1340 },
2407 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1556 },
2408 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1557 },
2409 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1558 },
2410 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1269 },
2411 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1559 },
2412 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 962 },
2413 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 258 },
2414 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1560 },
2415 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1561 },
2416 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1562 },
2417 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1563 },
2418 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 297 },
2419 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1564 },
2420 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1565 },
18342421 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1835 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1249 },
1836 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 242 },
1837 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 404 },
1838 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1250 },
1839 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1251 },
1840 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1252 },
1841 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1253 },
1842 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1254 },
1843 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1255 },
1844 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1256 },
1845 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1257 },
1846 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1258 },
1847 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1259 },
1848 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1260 },
1849 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1261 },
1850 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1262 },
1851 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1263 },
1852 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1264 },
1853 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1265 },
1854 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1266 },
1855 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1267 },
1856 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1268 },
1857 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 513 },
1858 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 849 },
1859 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1269 },
1860 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1271 },
1861 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1272 },
1862 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1273 },
1863 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1274 },
1864 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1276 },
1865 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1277 },
1866 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1278 },
1867 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1279 },
1868 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1280 },
1869 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1281 },
1870 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1282 },
1871 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1283 },
1872 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1284 },
1873 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1023 },
1874 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1024 },
1875 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1025 },
1876 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1024 },
1877 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1285 },
1878 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1286 },
1879 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1287 },
1880 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 458 },
1881 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 405 },
1882 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1288 },
1883 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1293 },
1884 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1297 },
1885 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 714 },
1886 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1298 },
1887 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1299 },
1888 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1303 },
1889 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 567 },
1890 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1307 },
1891 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1309 },
1892 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1310 },
1893 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1311 },
1894 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1312 },
1895 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1187 },
1896 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1313 },
1897 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 695 },
1898 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 430 },
1899 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1314 },
1900 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1315 },
1901 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1316 },
1902 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1317 },
1903 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1318 },
1904 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1319 },
1905 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1320 },
1906 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1321 },
1907 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1322 },
1908 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1323 },
1909 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1324 },
1910 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1325 },
1911 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1326 },
1912 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1327 },
1913 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1328 },
2422 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1566 },
2423 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 258 },
2424 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 447 },
2425 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1567 },
2426 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1568 },
2427 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1569 },
2428 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1570 },
2429 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1571 },
2430 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1572 },
2431 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1573 },
2432 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1574 },
2433 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1575 },
2434 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1576 },
2435 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1577 },
2436 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1578 },
2437 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1579 },
2438 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1580 },
2439 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1581 },
2440 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1582 },
2441 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1583 },
2442 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1584 },
2443 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1585 },
2444 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1587 },
2445 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1588 },
2446 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1589 },
2447 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1590 },
2448 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1591 },
2449 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1489 },
2450 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1592 },
2451 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1593 },
2452 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1594 },
2453 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1595 },
2454 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1596 },
2455 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1597 },
2456 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1598 },
2457 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1599 },
2458 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 771 },
2459 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 962 },
2460 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1600 },
2461 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1601 },
2462 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1602 },
2463 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1603 },
2464 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1605 },
2465 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1606 },
2466 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1608 },
2467 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 573 },
2468 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 972 },
2469 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 43, .child_index = 1609 },
2470 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 1613 },
2471 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1614 },
2472 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1615 },
2473 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1616 },
2474 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1618 },
2475 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1348 },
2476 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1619 },
2477 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1620 },
2478 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1621 },
2479 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1622 },
2480 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1623 },
2481 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1624 },
2482 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1625 },
2483 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1626 },
2484 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1627 },
2485 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1210 },
2486 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1211 },
2487 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1212 },
2488 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1211 },
2489 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1628 },
2490 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1629 },
2491 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1630 },
2492 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1631 },
2493 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1632 },
2494 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1633 },
2495 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1634 },
2496 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1635 },
2497 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1633 },
2498 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1636 },
2499 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1432 },
2500 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1637 },
2501 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1641 },
2502 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1643 },
2503 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1645 },
2504 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1646 },
2505 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1647 },
2506 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 1650 },
2507 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1654 },
2508 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 508 },
2509 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 448 },
2510 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1655 },
2511 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1660 },
2512 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1664 },
2513 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
2514 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1665 },
2515 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1666 },
2516 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1670 },
2517 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1674 },
2518 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1348 },
2519 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1676 },
2520 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1677 },
2521 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1678 },
2522 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1680 },
2523 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1463 },
2524 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1681 },
2525 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 785 },
2526 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
2527 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1682 },
2528 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1683 },
2529 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1684 },
2530 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1685 },
2531 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1686 },
2532 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1687 },
2533 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1688 },
2534 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1689 },
2535 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1690 },
2536 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1691 },
2537 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1692 },
2538 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1693 },
2539 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1694 },
2540 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1695 },
2541 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1590 },
2542 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1696 },
2543 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1697 },
2544 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1698 },
2545 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1699 },
2546 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1700 },
2547 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1700 },
2548 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1701 },
2549 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1695 },
2550 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1702 },
2551 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1703 },
2552 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1704 },
2553 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1707 },
2554 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1711 },
2555 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1712 },
2556 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
2557 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2558 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1717 },
2559 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1718 },
19142560 .{ .char = '3', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1915 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1330 },
1916 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1331 },
1917 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1332 },
1918 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1334 },
1919 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1337 },
1920 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1338 },
1921 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 735 },
1922 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1339 },
1923 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1340 },
1924 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1925 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1341 },
1926 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1342 },
1927 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1343 },
1928 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1344 },
1929 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1345 },
1930 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1346 },
1931 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1346 },
1932 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1347 },
1933 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1349 },
1934 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1350 },
1935 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1351 },
1936 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 491 },
1937 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1353 },
1938 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1354 },
1939 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1356 },
1940 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1358 },
1941 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1360 },
1942 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1362 },
1943 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1237 },
1944 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1365 },
1945 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 842 },
1946 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1366 },
1947 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1367 },
1948 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1242 },
1949 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1368 },
1950 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1369 },
1951 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1367 },
1952 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1242 },
1953 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1242 },
1954 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1370 },
1955 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1371 },
1956 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1372 },
1957 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1309 },
1958 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1373 },
1959 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1374 },
1960 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 667 },
1961 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1375 },
1962 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1376 },
1963 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1377 },
1964 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1378 },
1965 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1379 },
1966 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1380 },
1967 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1381 },
1968 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1382 },
1969 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1383 },
1970 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1384 },
1971 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1385 },
1972 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1386 },
1973 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1387 },
1974 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1388 },
1975 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1389 },
1976 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1390 },
1977 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1391 },
1978 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1392 },
1979 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1393 },
1980 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1394 },
1981 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1397 },
1982 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1398 },
1983 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1399 },
1984 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1400 },
1985 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1401 },
1986 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1402 },
1987 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1404 },
1988 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1406 },
1989 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1407 },
1990 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1408 },
1991 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1409 },
1992 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1410 },
1993 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1239 },
1994 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1411 },
1995 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1412 },
1996 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1413 },
1997 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1414 },
1998 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1237 },
1999 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 569 },
2000 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1415 },
2001 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1297 },
2002 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 737 },
2003 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1416 },
2004 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 600 },
2005 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1415 },
2006 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 569 },
2007 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 600 },
2008 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 569 },
2009 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1416 },
2010 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1417 },
2011 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 714 },
2012 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1418 },
2013 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1242 },
2014 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1419 },
2015 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1419 },
2016 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1419 },
2017 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1420 },
2018 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1421 },
2019 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1422 },
2020 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1427 },
2021 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1428 },
2022 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1430 },
2023 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1431 },
2024 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1434 },
2025 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1437 },
2026 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1439 },
2027 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1441 },
2028 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1442 },
2029 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1443 },
2030 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1444 },
2031 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1446 },
2032 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1261 },
2033 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1447 },
2034 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1448 },
2035 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1449 },
2036 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1450 },
2037 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1451 },
2038 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1452 },
2039 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1453 },
2040 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1455 },
2041 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1457 },
2042 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1458 },
2043 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1459 },
2044 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1461 },
2045 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1461 },
2046 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1462 },
2047 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1464 },
2048 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1465 },
2049 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 600 },
2050 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 714 },
2051 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1466 },
2052 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1467 },
2053 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1468 },
2054 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1469 },
2055 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1009 },
2056 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1009 },
2057 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1470 },
2058 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1471 },
2059 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1472 },
2060 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1473 },
2061 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1474 },
2062 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1475 },
2063 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 932 },
2064 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1477 },
2065 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1478 },
2066 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1242 },
2067 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1479 },
2068 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1480 },
2069 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1481 },
2070 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 682 },
2071 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 842 },
2561 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1719 },
2562 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1720 },
2563 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1722 },
2564 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1723 },
2565 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1724 },
2566 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1725 },
2567 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1726 },
2568 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1727 },
2569 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1728 },
2570 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1729 },
2571 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 1731 },
2572 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1734 },
2573 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1735 },
2574 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 831 },
2575 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1736 },
2576 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1737 },
2577 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1738 },
2578 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1739 },
2579 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1740 },
2580 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1741 },
2581 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1742 },
2582 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1743 },
2583 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1743 },
2584 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1744 },
2585 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1745 },
2586 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1746 },
2587 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1748 },
2588 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1749 },
2589 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1750 },
2590 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1751 },
2591 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1752 },
2592 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1753 },
2593 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1754 },
2594 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1755 },
2595 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1328 },
2596 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1329 },
2597 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1330 },
2598 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1331 },
2599 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1756 },
2600 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1757 },
2601 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1758 },
2602 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1760 },
2603 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1756 },
2604 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1761 },
2605 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1543 },
2606 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1544 },
2607 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1545 },
2608 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1543 },
2609 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1544 },
2610 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1545 },
2611 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1546 },
2612 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1650 },
2613 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1762 },
2614 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 326 },
2615 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1764 },
2616 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1765 },
2617 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1767 },
2618 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1769 },
2619 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1771 },
2620 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1773 },
2621 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1554 },
2622 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1776 },
2623 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 962 },
2624 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1777 },
2625 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1778 },
2626 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1269 },
2627 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1055 },
2628 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1779 },
2629 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1778 },
2630 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1269 },
2631 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1269 },
2632 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1780 },
2633 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1781 },
2634 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1782 },
2635 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1676 },
2636 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1783 },
2637 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1784 },
2638 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1785 },
2639 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 754 },
2640 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1786 },
2641 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1787 },
2642 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1788 },
2643 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1789 },
2644 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1790 },
2645 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1791 },
2646 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1792 },
2647 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1793 },
2648 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1794 },
2649 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1795 },
2650 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1796 },
2651 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1797 },
2652 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1798 },
2653 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1799 },
2654 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
2655 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
2656 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
2657 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
2658 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1800 },
2659 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 831 },
2660 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1802 },
2661 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1804 },
2662 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1805 },
2663 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1807 },
2664 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1808 },
2665 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 1809 },
2666 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1811 },
2667 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 974 },
2668 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1808 },
2669 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1812 },
2670 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1813 },
2671 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1814 },
2672 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1815 },
2673 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1780 },
2674 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1181 },
2675 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1816 },
2676 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1817 },
2677 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1818 },
2678 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1819 },
2679 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1820 },
2680 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1723 },
2681 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1821 },
2682 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1821 },
2683 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1822 },
2684 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1823 },
2685 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1824 },
2686 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1825 },
2687 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1827 },
2688 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1828 },
2689 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1831 },
2690 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1832 },
2691 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1833 },
2692 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1834 },
2693 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1835 },
2694 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1836 },
2695 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1838 },
2696 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1840 },
2697 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1841 },
2698 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1842 },
2699 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1843 },
2700 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1844 },
2701 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1556 },
2702 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1845 },
2703 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1846 },
2704 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1847 },
2705 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1848 },
2706 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1849 },
2707 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1850 },
2708 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1851 },
2709 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1852 },
2710 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1853 },
2711 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1855 },
2712 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1078 },
2713 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1856 },
2714 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1857 },
2715 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1858 },
2716 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1859 },
2717 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1857 },
2718 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1860 },
2719 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1645 },
2720 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1554 },
2721 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 637 },
2722 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1861 },
2723 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1664 },
2724 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 833 },
2725 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1862 },
2726 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 445 },
2727 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1861 },
2728 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 637 },
2729 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 445 },
2730 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 637 },
2731 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1862 },
2732 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1863 },
2733 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
2734 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1864 },
2735 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1269 },
2736 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1164 },
2737 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1164 },
2738 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1865 },
2739 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1866 },
2740 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1867 },
2741 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1872 },
2742 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1873 },
2743 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1874 },
2744 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1876 },
2745 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1877 },
2746 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1880 },
2747 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1883 },
2748 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1885 },
2749 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1887 },
2750 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1888 },
2751 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1889 },
2752 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1890 },
2753 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1893 },
2754 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1896 },
2755 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1899 },
2756 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1580 },
2757 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 831 },
2758 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 831 },
2759 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 831 },
2760 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1900 },
2761 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 870 },
2762 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1901 },
2763 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1902 },
2764 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1903 },
2765 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 992 },
2766 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 859 },
2767 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1904 },
2768 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1905 },
2769 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1906 },
2770 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1907 },
2771 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1908 },
2772 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1909 },
2773 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1910 },
2774 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1911 },
2775 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1914 },
2776 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1819 },
2777 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1915 },
2778 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1915 },
2779 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1916 },
2780 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1918 },
2781 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1919 },
2782 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1921 },
2783 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1831 },
2784 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1923 },
2785 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1924 },
2786 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1723 },
2787 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1724 },
2788 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1926 },
2789 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1928 },
2790 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1928 },
2791 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1929 },
2792 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1933 },
2793 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1934 },
2794 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 445 },
2795 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
2796 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1935 },
2797 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1936 },
2798 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1937 },
2799 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1938 },
2800 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1188 },
2801 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1188 },
2802 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1939 },
2803 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1940 },
2804 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1941 },
2805 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1942 },
2806 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1943 },
2807 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1944 },
2808 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1945 },
2809 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1946 },
2810 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1947 },
2811 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1948 },
2812 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1754 },
2813 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1432 },
2814 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1949 },
2815 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1950 },
2816 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1951 },
2817 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1952 },
2818 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1953 },
2819 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1954 },
2820 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1087 },
2821 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1956 },
2822 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1957 },
2823 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1958 },
2824 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1959 },
2825 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1960 },
2826 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 771 },
2827 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 962 },
20722828 .{ .char = '8', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2073 .{ .char = '9', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 595 },
2074 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1483 },
2075 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1484 },
2076 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 906 },
2077 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1485 },
2078 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1486 },
2079 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1487 },
2080 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1488 },
2081 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1489 },
2082 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1353 },
2083 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1490 },
2084 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1491 },
2085 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1368 },
2086 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1367 },
2087 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1368 },
2088 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1492 },
2089 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1493 },
2090 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1494 },
2091 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1495 },
2092 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1496 },
2093 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1497 },
2094 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1498 },
2095 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1499 },
2096 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1500 },
2097 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1502 },
2098 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1503 },
2099 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1504 },
2100 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1505 },
2101 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1506 },
2102 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1457 },
2103 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1509 },
2104 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1510 },
2105 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1510 },
2106 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1509 },
2107 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1509 },
2108 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1509 },
2109 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1511 },
2110 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1512 },
2111 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1513 },
2112 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1514 },
2113 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1515 },
2114 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1516 },
2115 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1517 },
2116 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1518 },
2117 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1519 },
2118 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1522 },
2119 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1523 },
2120 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1525 },
2121 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1526 },
2122 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1527 },
2123 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1528 },
2124 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1530 },
2125 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1531 },
2126 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1532 },
2127 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1533 },
2128 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 567 },
2829 .{ .char = '9', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 665 },
2830 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1962 },
2831 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1963 },
2832 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1964 },
2833 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1049 },
2834 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1965 },
2835 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1966 },
2836 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1811 },
2837 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1967 },
2838 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1968 },
2839 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1764 },
2840 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1808 },
2841 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1969 },
2842 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1055 },
2843 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1778 },
2844 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1055 },
2845 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1970 },
2846 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1971 },
2847 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1973 },
2848 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1966 },
2849 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1974 },
2850 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1975 },
2851 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1966 },
2852 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1976 },
2853 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1977 },
2854 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1978 },
2855 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1979 },
2856 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1980 },
2857 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1981 },
2858 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1982 },
2859 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1983 },
2860 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 859 },
2861 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1984 },
2862 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1985 },
2863 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1986 },
2864 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1836 },
2865 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1988 },
2866 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1989 },
2867 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1990 },
2868 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1991 },
2869 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1992 },
2870 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 686 },
2871 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1993 },
2872 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1994 },
2873 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1996 },
2874 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 967 },
2875 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1998 },
2876 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1999 },
2877 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2000 },
2878 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2001 },
2879 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2002 },
2880 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2003 },
2881 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1926 },
2882 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1723 },
2883 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2006 },
2884 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2006 },
2885 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2006 },
2886 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2006 },
2887 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1726 },
2888 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2007 },
2889 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1728 },
2890 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2008 },
2891 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2009 },
2892 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2010 },
2893 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2011 },
2894 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2012 },
2895 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2013 },
2896 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2014 },
2897 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2015 },
2898 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1499 },
2899 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2018 },
2900 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2019 },
2901 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2020 },
2902 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2022 },
2903 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2023 },
2904 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2024 },
2905 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2025 },
2906 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1078 },
2907 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1538 },
2908 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2026 },
2909 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2028 },
2910 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
2911 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2029 },
2912 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2030 },
2913 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2031 },
2914 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2033 },
2915 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2034 },
2916 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2035 },
2917 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2036 },
2918 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
21292919 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2130 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 670 },
2131 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1534 },
2132 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1535 },
2133 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1536 },
2134 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1537 },
2135 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1415 },
2136 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1537 },
2137 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 758 },
2138 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1538 },
2139 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1539 },
2140 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1540 },
2141 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1541 },
2142 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1542 },
2143 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1543 },
2144 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1544 },
2145 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1545 },
2146 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1546 },
2147 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1547 },
2148 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1548 },
2149 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1550 },
2150 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1551 },
2151 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1552 },
2152 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1554 },
2153 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1556 },
2154 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1557 },
2155 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1489 },
2156 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1558 },
2157 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1560 },
2158 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1562 },
2159 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1563 },
2160 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1564 },
2161 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1565 },
2162 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1566 },
2163 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1567 },
2164 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1568 },
2165 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1519 },
2166 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 600 },
2167 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 714 },
2168 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 714 },
2169 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1569 },
2170 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 569 },
2171 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1408 },
2172 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1570 },
2173 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1571 },
2174 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1572 },
2175 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 595 },
2176 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1016 },
2177 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1574 },
2178 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1575 },
2179 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1576 },
2180 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1577 },
2181 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1578 },
2182 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1579 },
2183 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 758 },
2184 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1402 },
2185 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1419 },
2186 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1580 },
2187 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1581 },
2188 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1582 },
2189 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1584 },
2190 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1585 },
2191 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 682 },
2192 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1499 },
2193 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1586 },
2194 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1587 },
2195 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1589 },
2196 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1590 },
2197 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1591 },
2198 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1593 },
2199 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1594 },
2200 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1595 },
2201 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1556 },
2202 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1537 },
2203 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1596 },
2204 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1596 },
2205 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 600 },
2206 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 737 },
2207 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 844 },
2208 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1597 },
2209 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1598 },
2210 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1600 },
2211 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1601 },
2212 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1602 },
2213 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1603 },
2214 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1604 },
2215 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1605 },
2216 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1606 },
2217 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1608 },
2218 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1609 },
2219 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 595 },
2220 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 624 },
2221 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1531 },
2920 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2037 },
2921 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 757 },
2922 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2038 },
2923 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2039 },
2924 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1902 },
2925 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1861 },
2926 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1906 },
2927 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2040 },
2928 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1784 },
2929 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2041 },
2930 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2042 },
2931 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2043 },
2932 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2044 },
2933 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 992 },
2934 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2045 },
2935 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1906 },
2936 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2046 },
2937 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2047 },
2938 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2048 },
2939 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2049 },
2940 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2050 },
2941 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 871 },
2942 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2051 },
2943 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2052 },
2944 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 2054 },
2945 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2055 },
2946 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2057 },
2947 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2058 },
2948 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2059 },
2949 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 502 },
2950 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2060 },
2951 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2061 },
2952 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2062 },
2953 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2063 },
2954 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2064 },
2955 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2065 },
2956 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 542 },
2957 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2066 },
2958 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2068 },
2959 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2068 },
2960 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2069 },
2961 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1819 },
2962 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1820 },
2963 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1968 },
2964 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2071 },
2965 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1823 },
2966 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2073 },
2967 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2074 },
2968 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2075 },
2969 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2076 },
2970 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2077 },
2971 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2078 },
2972 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2015 },
2973 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 445 },
2974 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 572 },
2975 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
2976 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2079 },
2977 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2080 },
2978 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 637 },
2979 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1842 },
2980 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2081 },
2981 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2082 },
2982 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2083 },
2983 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2084 },
2984 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 980 },
2985 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1952 },
2986 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1645 },
2987 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2085 },
2988 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2086 },
2989 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 665 },
2990 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1203 },
2991 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2088 },
2992 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2089 },
2993 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2090 },
2994 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2091 },
2995 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2092 },
2996 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2093 },
2997 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2094 },
2998 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1164 },
2999 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2095 },
3000 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
3001 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2096 },
3002 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2097 },
3003 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2098 },
3004 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1910 },
3005 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2100 },
3006 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2101 },
3007 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 771 },
3008 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1984 },
3009 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2102 },
3010 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1093 },
3011 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2103 },
3012 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2105 },
3013 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2107 },
3014 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2108 },
3015 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 962 },
3016 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2109 },
3017 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2111 },
3018 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2112 },
3019 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2113 },
3020 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2114 },
3021 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2115 },
3022 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 665 },
3023 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 665 },
3024 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2116 },
3025 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2117 },
3026 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2006 },
3027 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1819 },
3028 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1906 },
3029 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 445 },
3030 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 833 },
3031 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2118 },
3032 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2119 },
3033 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2120 },
3034 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2121 },
3035 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2122 },
3036 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2123 },
3037 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2124 },
3038 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2125 },
3039 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2127 },
3040 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2128 },
3041 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2129 },
3042 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2130 },
3043 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1758 },
3044 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 665 },
3045 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 700 },
3046 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2034 },
22223047 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2223 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1610 },
2224 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1611 },
2225 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1612 },
2226 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1613 },
2227 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1614 },
2228 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1615 },
2229 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1616 },
2230 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1617 },
2231 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1619 },
2232 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
2233 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1621 },
2234 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1589 },
2235 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1622 },
2236 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1623 },
2237 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1622 },
2238 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1623 },
2239 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1623 },
2240 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1624 },
2241 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 855 },
2242 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 855 },
2243 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1625 },
2244 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 488 },
2245 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1627 },
2246 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1628 },
2247 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1509 },
2248 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1629 },
2249 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1630 },
2250 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1631 },
2251 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1632 },
2252 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1187 },
2253 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1519 },
2254 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1519 },
2255 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1634 },
2256 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1635 },
2257 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1636 },
2258 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1637 },
2259 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1638 },
2260 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1639 },
2261 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1581 },
2262 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1640 },
2263 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1641 },
2264 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1640 },
2265 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1643 },
2266 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1644 },
2267 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1646 },
2268 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1647 },
2269 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1649 },
2270 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1651 },
2271 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1652 },
2272 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1653 },
2273 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1654 },
2274 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1655 },
2275 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1655 },
2276 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1656 },
2277 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1657 },
2278 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1658 },
2279 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1658 },
2280 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1658 },
2281 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1659 },
2282 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1660 },
2283 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1661 },
2284 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1662 },
2285 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
2286 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1663 },
2287 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 510 },
2288 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1640 },
2289 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1664 },
2290 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1664 },
2291 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 510 },
2292 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 510 },
2293 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 510 },
2294 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1665 },
2295 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1666 },
2296 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1668 },
2297 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1669 },
2298 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1666 },
2299 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1670 },
2300 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 595 },
2301 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 595 },
2302 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1509 },
2303 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1672 },
2304 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1673 },
2305 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1674 },
3048 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2131 },
3049 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2132 },
3050 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2133 },
3051 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2134 },
3052 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2135 },
3053 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2136 },
3054 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2137 },
3055 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2138 },
3056 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2139 },
3057 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2140 },
3058 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2142 },
3059 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2143 },
3060 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2144 },
3061 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2145 },
3062 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1203 },
3063 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2107 },
3064 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2146 },
3065 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2147 },
3066 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2146 },
3067 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2147 },
3068 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2147 },
3069 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2148 },
3070 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2149 },
3071 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2150 },
3072 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2152 },
3073 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2153 },
3074 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
3075 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
3076 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2006 },
3077 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2154 },
3078 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2155 },
3079 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2156 },
3080 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2157 },
3081 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1463 },
3082 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2159 },
3083 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2015 },
3084 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2015 },
3085 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2160 },
3086 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2161 },
3087 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2162 },
3088 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2163 },
3089 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2164 },
3090 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2165 },
3091 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2166 },
3092 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1347 },
3093 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2168 },
3094 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2097 },
3095 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2042 },
3096 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2169 },
3097 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2170 },
3098 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2169 },
3099 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2172 },
3100 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2173 },
3101 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2175 },
3102 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2176 },
3103 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2178 },
3104 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2179 },
3105 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2181 },
3106 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2182 },
3107 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2183 },
3108 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1992 },
3109 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 686 },
3110 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2184 },
3111 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2185 },
3112 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2186 },
3113 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2187 },
3114 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2188 },
3115 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2188 },
3116 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2188 },
3117 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2189 },
3118 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2079 },
3119 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2190 },
3120 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2191 },
3121 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1859 },
3122 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2192 },
3123 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2193 },
3124 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2194 },
3125 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2195 },
3126 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2197 },
3127 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 567 },
3128 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2169 },
3129 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2198 },
3130 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2198 },
3131 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 567 },
3132 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 567 },
3133 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 567 },
3134 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2199 },
3135 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2200 },
3136 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2057 },
3137 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2202 },
3138 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2203 },
3139 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2200 },
3140 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2204 },
3141 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 446 },
3142 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2206 },
3143 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2184 },
3144 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2209 },
3145 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2210 },
3146 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2211 },
3147 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2212 },
23063148 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2307 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1675 },
2308 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1662 },
2309 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1677 },
2310 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1659 },
2311 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1678 },
2312 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1680 },
2313 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1681 },
2314 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1682 },
2315 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1683 },
2316 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1683 },
2317 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1684 },
2318 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1685 },
2319 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1686 },
2320 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1687 },
2321 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1218 },
3149 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2213 },
3150 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2193 },
3151 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2215 },
3152 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2216 },
3153 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2217 },
3154 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2218 },
3155 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2190 },
3156 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2220 },
3157 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2222 },
3158 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2223 },
3159 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2224 },
3160 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2225 },
3161 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2225 },
3162 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2226 },
3163 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2227 },
3164 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2228 },
3165 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2229 },
3166 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2230 },
3167 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2231 },
3168 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2232 },
3169 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1517 },
3170 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2233 },
23223171 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2323 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1688 },
2324 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1689 },
2325 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1690 },
2326 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1691 },
2327 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1692 },
2328 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1693 },
2329 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1693 },
2330 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1624 },
2331 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1694 },
2332 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1694 },
2333 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1695 },
2334 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1696 },
3172 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2234 },
3173 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2235 },
3174 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1078 },
3175 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2236 },
3176 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2237 },
3177 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2238 },
3178 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2239 },
3179 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2240 },
3180 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2241 },
3181 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2242 },
3182 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2242 },
3183 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2148 },
3184 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2243 },
3185 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2243 },
3186 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2244 },
3187 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2245 },
3188 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2246 },
3189 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2247 },
3190 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2248 },
3191 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2249 },
23353192 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2336 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1697 },
2337 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1698 },
2338 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1698 },
2339 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 510 },
2340 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1699 },
2341 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1699 },
2342 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1700 },
2343 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1701 },
2344 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1702 },
2345 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 510 },
2346 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1703 },
2347 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1704 },
2348 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1705 },
2349 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1706 },
2350 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1707 },
2351 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1708 },
2352 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1709 },
2353 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 842 },
2354 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1710 },
2355 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1705 },
2356 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1298 },
2357 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 682 },
3193 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2145 },
3194 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2253 },
3195 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2254 },
3196 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2254 },
3197 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2255 },
3198 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2255 },
3199 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 567 },
3200 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2256 },
3201 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2256 },
3202 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2257 },
3203 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2258 },
3204 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2259 },
3205 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2260 },
3206 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2261 },
3207 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1599 },
3208 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 771 },
3209 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 962 },
3210 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3211 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2262 },
3212 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2264 },
3213 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 567 },
3214 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2265 },
3215 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2266 },
3216 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2266 },
3217 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2266 },
3218 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2267 },
3219 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2268 },
3220 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 637 },
3221 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2269 },
3222 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 831 },
3223 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2270 },
3224 .{ .char = 'B', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3225 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2271 },
3226 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2272 },
3227 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 445 },
3228 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2273 },
3229 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2268 },
3230 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1665 },
3231 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 771 },
23583232};
23593233pub const data = blk: {
2360 @setEvalBranchQuota(4374);
3234 @setEvalBranchQuota(7173);
23613235 break :blk [_]Properties{
3236 .{ .param_str = "iiiiIb", .attributes = .{ .@"const" = true }, .features = "add_min_max_insts" },
3237 .{ .param_str = "UiUiUiUiIb", .attributes = .{ .@"const" = true }, .features = "add_min_max_insts" },
3238 .{ .param_str = "iiiiIb", .attributes = .{ .@"const" = true }, .features = "add_min_max_insts" },
3239 .{ .param_str = "UiUiUiUiIb", .attributes = .{ .@"const" = true }, .features = "add_min_max_insts" },
23623240 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true } },
23633241 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true } },
23643242 .{ .param_str = "UsUiUiUi", .attributes = .{ .@"const" = true }, .features = "ashr_pk_insts" },
......@@ -2376,83 +3254,161 @@ pub const data = blk: {
23763254 .{ .param_str = "bdi", .attributes = .{ .@"const" = true } },
23773255 .{ .param_str = "bfi", .attributes = .{ .@"const" = true } },
23783256 .{ .param_str = "bhi", .attributes = .{ .@"const" = true }, .features = "16_bit_insts" },
3257 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3258 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3259 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3260 .{ .param_str = "vV4i*1V4i*3IiIii", .attributes = .{ .@"const" = true }, .features = "mcast_load_insts,wavefrontsize32" },
3261 .{ .param_str = "vi*1i*3IiIii", .attributes = .{ .@"const" = true }, .features = "mcast_load_insts,wavefrontsize32" },
3262 .{ .param_str = "vV2i*1V2i*3IiIii", .attributes = .{ .@"const" = true }, .features = "mcast_load_insts,wavefrontsize32" },
3263 .{ .param_str = "vc*1c*3IiIii", .attributes = .{ .@"const" = true }, .features = "mcast_load_insts,wavefrontsize32" },
3264 .{ .param_str = "V4iV4i*1Iii", .attributes = .{ .@"const" = true }, .features = "mcast_load_insts,wavefrontsize32" },
3265 .{ .param_str = "ii*1Iii", .attributes = .{ .@"const" = true }, .features = "mcast_load_insts,wavefrontsize32" },
3266 .{ .param_str = "V2iV2i*1Iii", .attributes = .{ .@"const" = true }, .features = "mcast_load_insts,wavefrontsize32" },
3267 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3268 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3269 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3270 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3271 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3272 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3273 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3274 .{ .param_str = "Ui", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3275 .{ .param_str = "V2iV2i*IicC*", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3276 .{ .param_str = "ii*IicC*", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3277 .{ .param_str = "V4iV4i*IicC*", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3278 .{ .param_str = "vV2i*V2iIicC*", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3279 .{ .param_str = "vi*iIicC*", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3280 .{ .param_str = "vV4i*V4iIicC*", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3281 .{ .param_str = "yy", .attributes = .{ .@"const" = true }, .features = "bf16_trans_insts" },
23793282 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
23803283 .{ .param_str = "hh", .attributes = .{ .@"const" = true }, .features = "16_bit_insts" },
2381 .{ .param_str = "ffff", .attributes = .{ .@"const" = true } },
2382 .{ .param_str = "ffff", .attributes = .{ .@"const" = true } },
2383 .{ .param_str = "ffff", .attributes = .{ .@"const" = true } },
2384 .{ .param_str = "ffff", .attributes = .{ .@"const" = true } },
3284 .{ .param_str = "ffff", .attributes = .{ .@"const" = true }, .features = "cube_insts" },
3285 .{ .param_str = "ffff", .attributes = .{ .@"const" = true }, .features = "cube_insts" },
3286 .{ .param_str = "ffff", .attributes = .{ .@"const" = true }, .features = "cube_insts" },
3287 .{ .param_str = "ffff", .attributes = .{ .@"const" = true }, .features = "cube_insts" },
23853288 .{ .param_str = "hiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
23863289 .{ .param_str = "hiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
23873290 .{ .param_str = "fiIi", .attributes = .{ .@"const" = true }, .features = "fp8_conversion_insts" },
23883291 .{ .param_str = "fiIi", .attributes = .{ .@"const" = true }, .features = "fp8_conversion_insts" },
23893292 .{ .param_str = "fiIi", .attributes = .{ .@"const" = true }, .features = "fp8e5m3_insts" },
23903293 .{ .param_str = "fi", .attributes = .{ .@"const" = true } },
3294 .{ .param_str = "sV2h", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
23913295 .{ .param_str = "iffiIb", .attributes = .{ .@"const" = true }, .features = "fp8_conversion_insts" },
23923296 .{ .param_str = "V2hs", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
23933297 .{ .param_str = "V2hs", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
23943298 .{ .param_str = "V2fiIb", .attributes = .{ .@"const" = true }, .features = "fp8_conversion_insts" },
23953299 .{ .param_str = "V2fiIb", .attributes = .{ .@"const" = true }, .features = "fp8_conversion_insts" },
3300 .{ .param_str = "sV2h", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
23963301 .{ .param_str = "iffiIb", .attributes = .{ .@"const" = true }, .features = "fp8_conversion_insts" },
3302 .{ .param_str = "iffiIb", .attributes = .{ .@"const" = true }, .features = "fp8e5m3_insts" },
23973303 .{ .param_str = "E2sii", .attributes = .{ .@"const" = true } },
23983304 .{ .param_str = "E2UsUiUi", .attributes = .{ .@"const" = true } },
23993305 .{ .param_str = "UifUiUi", .attributes = .{ .@"const" = true } },
2400 .{ .param_str = "E2sff", .attributes = .{ .@"const" = true } },
2401 .{ .param_str = "E2Usff", .attributes = .{ .@"const" = true } },
3306 .{ .param_str = "E2sff", .attributes = .{ .@"const" = true }, .features = "cvt_pknorm_vop2_insts" },
3307 .{ .param_str = "E2Usff", .attributes = .{ .@"const" = true }, .features = "cvt_pknorm_vop2_insts" },
24023308 .{ .param_str = "E2hff", .attributes = .{ .@"const" = true } },
3309 .{ .param_str = "V16yV3UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3310 .{ .param_str = "V16yV3UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3311 .{ .param_str = "V16hV3UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3312 .{ .param_str = "V16hV3UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3313 .{ .param_str = "V16fV3UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3314 .{ .param_str = "V16fV3UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3315 .{ .param_str = "V8yV2UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3316 .{ .param_str = "V8yUiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3317 .{ .param_str = "V8yV2UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3318 .{ .param_str = "V8hV2UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3319 .{ .param_str = "V8hUiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3320 .{ .param_str = "V8hV2UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3321 .{ .param_str = "V8fV2UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3322 .{ .param_str = "V8fUiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3323 .{ .param_str = "V8fV2UiUiIUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
24033324 .{ .param_str = "V6UiV16fV16ff", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
24043325 .{ .param_str = "V6UiV16fV16ff", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
2405 .{ .param_str = "V2hV2hifIiIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
2406 .{ .param_str = "V2hV2hifIiIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
3326 .{ .param_str = "V2xV2xifIiIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
3327 .{ .param_str = "V2xV2xifIiIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
24073328 .{ .param_str = "fifIi", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
24083329 .{ .param_str = "fifIi", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
3330 .{ .param_str = "V3UiV16yf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3331 .{ .param_str = "V3UiV16hf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3332 .{ .param_str = "V3UiV16ff", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3333 .{ .param_str = "V3UiV16yf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3334 .{ .param_str = "V3UiV16hf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3335 .{ .param_str = "V3UiV16ff", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
24093336 .{ .param_str = "V32yV6Uif", .attributes = .{ .@"const" = true }, .features = "fp6bf6_cvt_scale_insts" },
24103337 .{ .param_str = "V32yV6Uif", .attributes = .{ .@"const" = true }, .features = "fp6bf6_cvt_scale_insts" },
24113338 .{ .param_str = "V6UiV32yf", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
2412 .{ .param_str = "V6UiV32hf", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
2413 .{ .param_str = "V32hV6Uif", .attributes = .{ .@"const" = true }, .features = "fp6bf6_cvt_scale_insts" },
2414 .{ .param_str = "V32hV6Uif", .attributes = .{ .@"const" = true }, .features = "fp6bf6_cvt_scale_insts" },
3339 .{ .param_str = "V6UiV32xf", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
3340 .{ .param_str = "V32xV6Uif", .attributes = .{ .@"const" = true }, .features = "fp6bf6_cvt_scale_insts" },
3341 .{ .param_str = "V32xV6Uif", .attributes = .{ .@"const" = true }, .features = "fp6bf6_cvt_scale_insts" },
24153342 .{ .param_str = "V32fV6Uif", .attributes = .{ .@"const" = true }, .features = "fp6bf6_cvt_scale_insts" },
24163343 .{ .param_str = "V32fV6Uif", .attributes = .{ .@"const" = true }, .features = "fp6bf6_cvt_scale_insts" },
24173344 .{ .param_str = "V6UiV32yf", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
2418 .{ .param_str = "V6UiV32hf", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
3345 .{ .param_str = "V6UiV32xf", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
3346 .{ .param_str = "V2UiV8yf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3347 .{ .param_str = "V2UiV8hf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3348 .{ .param_str = "V2UiV8ff", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3349 .{ .param_str = "UiV8yf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3350 .{ .param_str = "UiV8hf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3351 .{ .param_str = "UiV8ff", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3352 .{ .param_str = "V2UiV8yf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3353 .{ .param_str = "V2UiV8hf", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3354 .{ .param_str = "V2UiV8ff", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
24193355 .{ .param_str = "V2yUifIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
24203356 .{ .param_str = "V2yUifIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
24213357 .{ .param_str = "V2yUifIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
24223358 .{ .param_str = "V2sV2sV2yfIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
2423 .{ .param_str = "V2sV2sV2hfIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
3359 .{ .param_str = "V2sV2sV2xfIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
24243360 .{ .param_str = "V2sV2sfffIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
2425 .{ .param_str = "V2hUifIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
2426 .{ .param_str = "V2hUifIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
2427 .{ .param_str = "V2hUifIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
3361 .{ .param_str = "V2xUifIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
3362 .{ .param_str = "V2xUifIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
3363 .{ .param_str = "V2xUifIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
24283364 .{ .param_str = "V2fUifIb", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
24293365 .{ .param_str = "V2fUifIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
24303366 .{ .param_str = "V2fUifIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
24313367 .{ .param_str = "UiUiV2yfIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
2432 .{ .param_str = "UiUiV2hfIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
3368 .{ .param_str = "UiUiV2xfIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
24333369 .{ .param_str = "UiUifffIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
24343370 .{ .param_str = "V2sV2sV2yfIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
2435 .{ .param_str = "V2sV2sV2hfIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
3371 .{ .param_str = "V2sV2sV2xfIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
24363372 .{ .param_str = "V2sV2sfffIb", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
24373373 .{ .param_str = "iiyUifIi", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
2438 .{ .param_str = "iihUifIi", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
3374 .{ .param_str = "iixUifIi", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
24393375 .{ .param_str = "iifUifIi", .attributes = .{ .@"const" = true }, .features = "bf8_cvt_scale_insts" },
24403376 .{ .param_str = "iiyUifIi", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
2441 .{ .param_str = "iihUifIi", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
3377 .{ .param_str = "iixUifIi", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
24423378 .{ .param_str = "iifUifIi", .attributes = .{ .@"const" = true }, .features = "fp8_cvt_scale_insts" },
3379 .{ .param_str = "V3UiV16yUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3380 .{ .param_str = "V3UiV16hUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3381 .{ .param_str = "V3UiV16fUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3382 .{ .param_str = "V3UiV16yUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3383 .{ .param_str = "V3UiV16hUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3384 .{ .param_str = "V3UiV16fUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
24433385 .{ .param_str = "V6UiV32yUif", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
2444 .{ .param_str = "V6UiV32hUif", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
3386 .{ .param_str = "V6UiV32xUif", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
24453387 .{ .param_str = "V6UiV32fUif", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
24463388 .{ .param_str = "V6UiV32yUif", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
2447 .{ .param_str = "V6UiV32hUif", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
3389 .{ .param_str = "V6UiV32xUif", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
24483390 .{ .param_str = "V6UiV32fUif", .attributes = .{ .@"const" = true }, .features = "f16bf16_to_fp6bf6_cvt_scale_insts" },
3391 .{ .param_str = "V2UiV8yUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3392 .{ .param_str = "V2UiV8hUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3393 .{ .param_str = "V2UiV8fUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3394 .{ .param_str = "UiV8yUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3395 .{ .param_str = "UiV8hUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3396 .{ .param_str = "UiV8fUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3397 .{ .param_str = "V2UiV8yUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3398 .{ .param_str = "V2UiV8hUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3399 .{ .param_str = "V2UiV8fUif", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
24493400 .{ .param_str = "UiUiV2yUifIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
2450 .{ .param_str = "UiUiV2hUifIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
3401 .{ .param_str = "UiUiV2xUifIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
24513402 .{ .param_str = "UiUiV2fUifIi", .attributes = .{ .@"const" = true }, .features = "fp4_cvt_scale_insts" },
24523403 .{ .param_str = "V2yV2yfUiIb", .attributes = .{ .@"const" = true }, .features = "f32_to_f16bf16_cvt_sr_insts" },
3404 .{ .param_str = "ihiUiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
24533405 .{ .param_str = "ifiiIi", .attributes = .{ .@"const" = true }, .features = "fp8_conversion_insts" },
2454 .{ .param_str = "V2hV2hfUiIb", .attributes = .{ .@"const" = true }, .features = "f32_to_f16bf16_cvt_sr_insts" },
3406 .{ .param_str = "V2xV2xfUiIb", .attributes = .{ .@"const" = true }, .features = "f32_to_f16bf16_cvt_sr_insts" },
3407 .{ .param_str = "ihiUiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
24553408 .{ .param_str = "ifiiIi", .attributes = .{ .@"const" = true }, .features = "fp8_conversion_insts" },
3409 .{ .param_str = "ifiiIi", .attributes = .{ .@"const" = true }, .features = "fp8e5m3_insts" },
3410 .{ .param_str = "V2yffi", .attributes = .{ .@"const" = true }, .features = "bf16_cvt_insts" },
3411 .{ .param_str = "V2hffi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
24563412 .{ .param_str = "v*4", .attributes = .{ .@"const" = true } },
24573413 .{ .param_str = "dddd", .attributes = .{ .@"const" = true } },
24583414 .{ .param_str = "ffff", .attributes = .{ .@"const" = true } },
......@@ -2468,10 +3424,10 @@ pub const data = blk: {
24683424 .{ .param_str = "ii*3" },
24693425 .{ .param_str = "vLi*3", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
24703426 .{ .param_str = "LiLi*3Li", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
2471 .{ .param_str = "ff*3f", .attributes = .{ .custom_typecheck = true }, .features = "gfx8_insts" },
2472 .{ .param_str = "dd*3d", .attributes = .{ .custom_typecheck = true }, .features = "gfx90a_insts" },
3427 .{ .param_str = "ff*3f", .features = "gfx8_insts" },
3428 .{ .param_str = "dd*3d", .features = "gfx90a_insts" },
24733429 .{ .param_str = "V2sV2s*3V2s", .attributes = .{ .custom_typecheck = true }, .features = "atomic_ds_pk_add_16_insts" },
2474 .{ .param_str = "V2hV2h*3V2h", .attributes = .{ .custom_typecheck = true }, .features = "atomic_ds_pk_add_16_insts" },
3430 .{ .param_str = "V2xV2x*3V2x", .attributes = .{ .custom_typecheck = true }, .features = "atomic_ds_pk_add_16_insts" },
24753431 .{ .param_str = "iii", .attributes = .{ .@"const" = true } },
24763432 .{ .param_str = "iii", .attributes = .{ .@"const" = true }, .features = "gfx12_insts" },
24773433 .{ .param_str = "V2UiUiUiV4UiIi", .features = "gfx11_insts" },
......@@ -2503,21 +3459,26 @@ pub const data = blk: {
25033459 .{ .param_str = "V2iV2i*3", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
25043460 .{ .param_str = "iiIi", .attributes = .{ .@"const" = true } },
25053461 .{ .param_str = "v", .attributes = .{ .@"noreturn" = true } },
3462 .{ .param_str = "yy", .attributes = .{ .@"const" = true }, .features = "bf16_trans_insts" },
25063463 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
25073464 .{ .param_str = "WUiddIi", .attributes = .{ .@"const" = true } },
25083465 .{ .param_str = "WUiffIi", .attributes = .{ .@"const" = true } },
2509 .{ .param_str = "fV2hV2hfIb", .attributes = .{ .@"const" = true }, .features = "dot10_insts" },
3466 .{ .param_str = "fV2xV2xfIb", .attributes = .{ .@"const" = true }, .features = "dot10_insts" },
25103467 .{ .param_str = "sV2sV2ss", .attributes = .{ .@"const" = true }, .features = "dot9_insts" },
2511 .{ .param_str = "hV2hV2hh", .attributes = .{ .@"const" = true }, .features = "dot9_insts" },
3468 .{ .param_str = "xV2xV2xx", .attributes = .{ .@"const" = true }, .features = "dot9_insts" },
25123469 .{ .param_str = "fV2sV2sfIb", .attributes = .{ .@"const" = true }, .features = "dot12_insts" },
25133470 .{ .param_str = "fV2yV2yfIb", .attributes = .{ .@"const" = true }, .features = "dot13_insts" },
25143471 .{ .param_str = "vUicC*." },
2515 .{ .param_str = "ff*0f", .attributes = .{ .custom_typecheck = true }, .features = "gfx940_insts" },
2516 .{ .param_str = "dd*0d", .attributes = .{ .custom_typecheck = true }, .features = "gfx90a_insts" },
3472 .{ .param_str = "ff*0f", .features = "gfx940_insts" },
3473 .{ .param_str = "dd*0d", .features = "gfx90a_insts" },
25173474 .{ .param_str = "V2sV2s*0V2s", .attributes = .{ .custom_typecheck = true }, .features = "atomic_flat_pk_add_16_insts" },
2518 .{ .param_str = "V2hV2h*0V2h", .attributes = .{ .custom_typecheck = true }, .features = "atomic_flat_pk_add_16_insts" },
2519 .{ .param_str = "dd*0d", .attributes = .{ .custom_typecheck = true }, .features = "gfx90a_insts" },
2520 .{ .param_str = "dd*0d", .attributes = .{ .custom_typecheck = true }, .features = "gfx90a_insts" },
3475 .{ .param_str = "V2xV2x*0V2x", .attributes = .{ .custom_typecheck = true }, .features = "atomic_flat_pk_add_16_insts" },
3476 .{ .param_str = "dd*0d", .features = "gfx90a_insts" },
3477 .{ .param_str = "dd*0d", .features = "gfx90a_insts" },
3478 .{ .param_str = "V4iV4i*0Ii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3479 .{ .param_str = "ii*0Ii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3480 .{ .param_str = "V2iV2i*0Ii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3481 .{ .param_str = "vvC*0Ii", .attributes = .{ .@"const" = true }, .features = "vmem_pref_insts" },
25213482 .{ .param_str = "ffff", .attributes = .{ .@"const" = true } },
25223483 .{ .param_str = "hhhh", .attributes = .{ .@"const" = true }, .features = "gfx9_insts" },
25233484 .{ .param_str = "dd", .attributes = .{ .@"const" = true } },
......@@ -2530,13 +3491,20 @@ pub const data = blk: {
25303491 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
25313492 .{ .param_str = "hh", .attributes = .{ .@"const" = true }, .features = "16_bit_insts" },
25323493 .{ .param_str = "WUi" },
2533 .{ .param_str = "ff*1f", .attributes = .{ .custom_typecheck = true }, .features = "atomic_fadd_rtn_insts" },
2534 .{ .param_str = "dd*1d", .attributes = .{ .custom_typecheck = true }, .features = "gfx90a_insts" },
3494 .{ .param_str = "ff*1f", .features = "atomic_fadd_rtn_insts" },
3495 .{ .param_str = "dd*1d", .features = "gfx90a_insts" },
25353496 .{ .param_str = "V2sV2s*1V2s", .attributes = .{ .custom_typecheck = true }, .features = "atomic_global_pk_add_bf16_inst" },
2536 .{ .param_str = "V2hV2h*1V2h", .attributes = .{ .custom_typecheck = true }, .features = "atomic_buffer_global_pk_add_f16_insts" },
2537 .{ .param_str = "dd*1d", .attributes = .{ .custom_typecheck = true }, .features = "gfx90a_insts" },
2538 .{ .param_str = "dd*1d", .attributes = .{ .custom_typecheck = true }, .features = "gfx90a_insts" },
2539 .{ .param_str = "vv*1v*3IUiIiIUi", .attributes = .{ .custom_typecheck = true }, .features = "vmem_to_lds_load_insts" },
3497 .{ .param_str = "V2xV2x*1V2x", .attributes = .{ .custom_typecheck = true }, .features = "atomic_buffer_global_pk_add_f16_insts" },
3498 .{ .param_str = "dd*1d", .features = "gfx90a_insts" },
3499 .{ .param_str = "dd*1d", .features = "gfx90a_insts" },
3500 .{ .param_str = "vV4i*1V4i*3IiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3501 .{ .param_str = "vi*1i*3IiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3502 .{ .param_str = "vV2i*1V2i*3IiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3503 .{ .param_str = "vc*1c*3IiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3504 .{ .param_str = "vv*1v*3IUiIiIUi", .features = "vmem_to_lds_load_insts" },
3505 .{ .param_str = "V4iV4i*1Ii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3506 .{ .param_str = "ii*1Ii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3507 .{ .param_str = "V2iV2i*1Ii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
25403508 .{ .param_str = "V8yV8y*1", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
25413509 .{ .param_str = "V8hV8h*1", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
25423510 .{ .param_str = "V8sV8s*1", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
......@@ -2551,6 +3519,11 @@ pub const data = blk: {
25513519 .{ .param_str = "V8sV8s*1", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
25523520 .{ .param_str = "ii*1", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
25533521 .{ .param_str = "V2iV2i*1", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
3522 .{ .param_str = "vvC*1Ii", .attributes = .{ .@"const" = true }, .features = "vmem_pref_insts" },
3523 .{ .param_str = "vV4i*1V4i*3IiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3524 .{ .param_str = "vi*1i*3IiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3525 .{ .param_str = "vV2i*1V2i*3IiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3526 .{ .param_str = "vc*1c*3IiIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
25543527 .{ .param_str = "Ui", .attributes = .{ .@"const" = true } },
25553528 .{ .param_str = "Ui", .attributes = .{ .@"const" = true } },
25563529 .{ .param_str = "Ui", .attributes = .{ .@"const" = true } },
......@@ -2559,47 +3532,161 @@ pub const data = blk: {
25593532 .{ .param_str = "V10UiWUifUcV3fV3fUiV4UiV3f*V3f*", .attributes = .{ .@"const" = true }, .features = "gfx12_insts" },
25603533 .{ .param_str = "V10UiWUifUcV3fV3fV2UiV4UiV3f*V3f*", .attributes = .{ .@"const" = true }, .features = "gfx12_insts" },
25613534 .{ .param_str = "V4UiUifV4fV4fV4fV4Ui", .attributes = .{ .@"const" = true }, .features = "gfx10_insts" },
2562 .{ .param_str = "V4UiUifV4fV4hV4hV4Ui", .attributes = .{ .@"const" = true }, .features = "gfx10_insts" },
3535 .{ .param_str = "V4UiUifV4fV4xV4xV4Ui", .attributes = .{ .@"const" = true }, .features = "gfx10_insts" },
25633536 .{ .param_str = "V4UiWUifV4fV4fV4fV4Ui", .attributes = .{ .@"const" = true }, .features = "gfx10_insts" },
2564 .{ .param_str = "V4UiWUifV4fV4hV4hV4Ui", .attributes = .{ .@"const" = true }, .features = "gfx10_insts" },
3537 .{ .param_str = "V4UiWUifV4fV4xV4xV4Ui", .attributes = .{ .@"const" = true }, .features = "gfx10_insts" },
3538 .{ .param_str = "V4fiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3539 .{ .param_str = "V4xiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3540 .{ .param_str = "V4fiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3541 .{ .param_str = "V4xiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3542 .{ .param_str = "V4fiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3543 .{ .param_str = "fiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3544 .{ .param_str = "V4xiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3545 .{ .param_str = "V4fiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3546 .{ .param_str = "fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3547 .{ .param_str = "V4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3548 .{ .param_str = "V4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3549 .{ .param_str = "V4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3550 .{ .param_str = "V4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3551 .{ .param_str = "V4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3552 .{ .param_str = "V4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3553 .{ .param_str = "V4xiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3554 .{ .param_str = "V4fiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3555 .{ .param_str = "V4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3556 .{ .param_str = "V4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3557 .{ .param_str = "fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3558 .{ .param_str = "V4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3559 .{ .param_str = "V4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3560 .{ .param_str = "fiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3561 .{ .param_str = "V4xiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3562 .{ .param_str = "V4fiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3563 .{ .param_str = "V4xiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3564 .{ .param_str = "V4fiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3565 .{ .param_str = "V4xiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3566 .{ .param_str = "V4fiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3567 .{ .param_str = "V4xifQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3568 .{ .param_str = "V4fifQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3569 .{ .param_str = "V4xiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3570 .{ .param_str = "V4fiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3571 .{ .param_str = "fiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3572 .{ .param_str = "V4xiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3573 .{ .param_str = "V4fiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3574 .{ .param_str = "fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3575 .{ .param_str = "V4xifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3576 .{ .param_str = "V4fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3577 .{ .param_str = "V4xifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3578 .{ .param_str = "V4fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3579 .{ .param_str = "V4xifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3580 .{ .param_str = "V4fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3581 .{ .param_str = "V4xifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3582 .{ .param_str = "V4fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3583 .{ .param_str = "V4xiffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3584 .{ .param_str = "V4fiffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3585 .{ .param_str = "fiffffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3586 .{ .param_str = "V4xiffffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3587 .{ .param_str = "V4fiffffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3588 .{ .param_str = "fifffffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3589 .{ .param_str = "V4xifffffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3590 .{ .param_str = "V4fifffffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3591 .{ .param_str = "V4xifffffffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3592 .{ .param_str = "V4fifffffffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3593 .{ .param_str = "V4xiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3594 .{ .param_str = "V4fiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3595 .{ .param_str = "V4xifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3596 .{ .param_str = "V4fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3597 .{ .param_str = "fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3598 .{ .param_str = "V4xifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3599 .{ .param_str = "V4fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3600 .{ .param_str = "fiffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3601 .{ .param_str = "V4xiffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3602 .{ .param_str = "V4fiffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3603 .{ .param_str = "V4xiffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3604 .{ .param_str = "V4fiffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3605 .{ .param_str = "V4xiffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3606 .{ .param_str = "V4fiffffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3607 .{ .param_str = "V4xifQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3608 .{ .param_str = "V4fifQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3609 .{ .param_str = "V4xiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3610 .{ .param_str = "V4fiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3611 .{ .param_str = "fiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3612 .{ .param_str = "V4xiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3613 .{ .param_str = "V4fiffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3614 .{ .param_str = "fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3615 .{ .param_str = "V4xifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3616 .{ .param_str = "V4fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3617 .{ .param_str = "V4xifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3618 .{ .param_str = "V4fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3619 .{ .param_str = "V4xifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3620 .{ .param_str = "V4fifffQtV4ibii", .attributes = .{ .@"const" = true }, .features = "extended_image_insts" },
3621 .{ .param_str = "vV4xiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3622 .{ .param_str = "vV4fiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3623 .{ .param_str = "vV4xiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3624 .{ .param_str = "vV4fiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3625 .{ .param_str = "vfiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3626 .{ .param_str = "vV4xiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3627 .{ .param_str = "vV4fiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3628 .{ .param_str = "vfiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3629 .{ .param_str = "vV4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3630 .{ .param_str = "vV4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3631 .{ .param_str = "vV4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3632 .{ .param_str = "vV4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3633 .{ .param_str = "vV4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3634 .{ .param_str = "vV4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3635 .{ .param_str = "vV4xiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3636 .{ .param_str = "vV4fiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3637 .{ .param_str = "vV4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3638 .{ .param_str = "vV4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3639 .{ .param_str = "vfiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3640 .{ .param_str = "vV4xiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3641 .{ .param_str = "vV4fiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3642 .{ .param_str = "vfiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3643 .{ .param_str = "vV4xiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3644 .{ .param_str = "vV4fiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3645 .{ .param_str = "vV4xiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3646 .{ .param_str = "vV4fiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3647 .{ .param_str = "vV4xiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
3648 .{ .param_str = "vV4fiiiiiQtii", .attributes = .{ .@"const" = true }, .features = "image_insts" },
25653649 .{ .param_str = "v*4", .attributes = .{ .@"const" = true } },
25663650 .{ .param_str = "fUiUiUiUi", .attributes = .{ .@"const" = true } },
25673651 .{ .param_str = "ffUiUiUi", .attributes = .{ .@"const" = true } },
25683652 .{ .param_str = "ffUiUibUi", .attributes = .{ .@"const" = true } },
25693653 .{ .param_str = "fffUiUiUi", .attributes = .{ .@"const" = true } },
25703654 .{ .param_str = "hffUiUibUi", .attributes = .{ .@"const" = true } },
3655 .{ .param_str = "bZUi", .attributes = .{ .@"const" = true }, .features = "wavefrontsize32" },
3656 .{ .param_str = "bWUi", .attributes = .{ .@"const" = true }, .features = "wavefrontsize64" },
25713657 .{ .param_str = "bvC*0", .attributes = .{ .@"const" = true } },
25723658 .{ .param_str = "bvC*0", .attributes = .{ .@"const" = true } },
25733659 .{ .param_str = "v*4", .attributes = .{ .@"const" = true } },
25743660 .{ .param_str = "ddi", .attributes = .{ .@"const" = true } },
25753661 .{ .param_str = "ffi", .attributes = .{ .@"const" = true } },
25763662 .{ .param_str = "hhi", .attributes = .{ .@"const" = true }, .features = "16_bit_insts" },
2577 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true } },
3663 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true }, .features = "lerp_inst" },
25783664 .{ .param_str = "vv*v*3IUiIiIUi", .features = "vmem_to_lds_load_insts" },
3665 .{ .param_str = "yy", .attributes = .{ .@"const" = true }, .features = "bf16_trans_insts" },
25793666 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
25803667 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
2581 .{ .param_str = "Qbv*sii", .attributes = .{ .@"const" = true } },
3668 .{ .param_str = "Qbv*sWii", .attributes = .{ .@"const" = true } },
25823669 .{ .param_str = "UiUiUi", .attributes = .{ .@"const" = true } },
25833670 .{ .param_str = "UiUiUi", .attributes = .{ .@"const" = true } },
25843671 .{ .param_str = "V4fV4sV4sV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
2585 .{ .param_str = "V4fV4hV4hV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
3672 .{ .param_str = "V4fV4xV4xV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
25863673 .{ .param_str = "V16fffV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
25873674 .{ .param_str = "V16fV2sV2sV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
25883675 .{ .param_str = "V4fV8yV8yV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
25893676 .{ .param_str = "V4fWiWiV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
25903677 .{ .param_str = "V4fWiWiV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
2591 .{ .param_str = "V4fV8hV8hV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
3678 .{ .param_str = "V4fV8xV8xV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
25923679 .{ .param_str = "V4fWiWiV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
25933680 .{ .param_str = "V4fWiWiV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
25943681 .{ .param_str = "V16fV4sV4sV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
2595 .{ .param_str = "V16fV4hV4hV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
3682 .{ .param_str = "V16fV4xV4xV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
25963683 .{ .param_str = "V4fffV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
25973684 .{ .param_str = "V4fV2fV2fV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
25983685 .{ .param_str = "V4fV2sV2sV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
25993686 .{ .param_str = "V16fV8yV8yV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
26003687 .{ .param_str = "V16fWiWiV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
26013688 .{ .param_str = "V16fWiWiV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
2602 .{ .param_str = "V16fV8hV8hV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
3689 .{ .param_str = "V16fV8xV8xV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
26033690 .{ .param_str = "V16fWiWiV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
26043691 .{ .param_str = "V16fWiWiV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
26053692 .{ .param_str = "V32fffV32fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
......@@ -2608,13 +3695,13 @@ pub const data = blk: {
26083695 .{ .param_str = "V16fV2fV2fV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
26093696 .{ .param_str = "V16fV2sV2sV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
26103697 .{ .param_str = "V32fV4sV4sV32fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
2611 .{ .param_str = "V32fV4hV4hV32fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
3698 .{ .param_str = "V32fV4xV4xV32fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
26123699 .{ .param_str = "V16fV4sV4sV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
2613 .{ .param_str = "V16fV4hV4hV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
3700 .{ .param_str = "V16fV4xV4xV16fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
26143701 .{ .param_str = "V4fffV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
26153702 .{ .param_str = "V4fV2sV2sV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
26163703 .{ .param_str = "V4fV4sV4sV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
2617 .{ .param_str = "V4fV4hV4hV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
3704 .{ .param_str = "V4fV4xV4xV4fIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
26183705 .{ .param_str = "V4dddV4dIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
26193706 .{ .param_str = "ddddIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
26203707 .{ .param_str = "V4iiiV4iIiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
......@@ -2634,15 +3721,27 @@ pub const data = blk: {
26343721 .{ .param_str = "V4UiWUiUiV4Ui", .attributes = .{ .@"const" = true } },
26353722 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true } },
26363723 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true }, .features = "gfx8_insts" },
3724 .{ .param_str = "V2UiUiUiV2Ui", .attributes = .{ .@"const" = true }, .features = "tensor_cvt_lut_insts" },
3725 .{ .param_str = "V3UiUiULiV2Ui", .attributes = .{ .@"const" = true }, .features = "tensor_cvt_lut_insts" },
3726 .{ .param_str = "V4UiULiULiV2Ui", .attributes = .{ .@"const" = true }, .features = "tensor_cvt_lut_insts" },
26373727 .{ .param_str = "UiUiUiUiUiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx10_insts" },
26383728 .{ .param_str = "V2UiUiUiIbIb", .attributes = .{ .@"const" = true }, .features = "permlane16_swap" },
26393729 .{ .param_str = "UiUiUiUiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts" },
26403730 .{ .param_str = "V2UiUiUiIbIb", .attributes = .{ .@"const" = true }, .features = "permlane32_swap" },
26413731 .{ .param_str = "UiUi", .attributes = .{ .@"const" = true }, .features = "gfx11_insts" },
3732 .{ .param_str = "iiii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3733 .{ .param_str = "iiii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3734 .{ .param_str = "iii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3735 .{ .param_str = "iiii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3736 .{ .param_str = "iiii", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
26423737 .{ .param_str = "UiUiUiUiUiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx10_insts" },
26433738 .{ .param_str = "UiUiUiUiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts" },
3739 .{ .param_str = "V2sV2sV2sV2sIb", .attributes = .{ .@"const" = true }, .features = "pk_add_min_max_insts" },
3740 .{ .param_str = "V2UsV2UsV2UsV2UsIb", .attributes = .{ .@"const" = true }, .features = "pk_add_min_max_insts" },
3741 .{ .param_str = "V2sV2sV2sV2sIb", .attributes = .{ .@"const" = true }, .features = "pk_add_min_max_insts" },
3742 .{ .param_str = "V2UsV2UsV2UsV2UsIb", .attributes = .{ .@"const" = true }, .features = "pk_add_min_max_insts" },
26443743 .{ .param_str = "UiUi", .attributes = .{ .@"const" = true }, .features = "prng_inst" },
2645 .{ .param_str = "WUiWUiUiWUi", .attributes = .{ .@"const" = true } },
3744 .{ .param_str = "WUiWUiUiWUi", .attributes = .{ .@"const" = true }, .features = "qsad_insts" },
26463745 .{ .param_str = "v*4", .attributes = .{ .@"const" = true } },
26473746 .{ .param_str = "V4UiQbiiIi" },
26483747 .{ .param_str = "UsQbiiIi" },
......@@ -2656,8 +3755,16 @@ pub const data = blk: {
26563755 .{ .param_str = "vV2UiQbiiIi" },
26573756 .{ .param_str = "vUcQbiiIi" },
26583757 .{ .param_str = "vV3UiQbiiIi" },
2659 .{ .param_str = "vQbv*3IUiiiIiIi", .attributes = .{ .custom_typecheck = true }, .features = "vmem_to_lds_load_insts" },
3758 .{ .param_str = "iiQbiiIi" },
3759 .{ .param_str = "ffQbiiIi", .features = "atomic_fadd_rtn_insts" },
3760 .{ .param_str = "V2xV2xQbiiIi", .features = "atomic_buffer_global_pk_add_f16_insts" },
3761 .{ .param_str = "ffQbiiIi", .features = "atomic_fmin_fmax_global_f32" },
3762 .{ .param_str = "ddQbiiIi", .features = "atomic_fmin_fmax_global_f64" },
3763 .{ .param_str = "ffQbiiIi", .features = "atomic_fmin_fmax_global_f32" },
3764 .{ .param_str = "ddQbiiIi", .features = "atomic_fmin_fmax_global_f64" },
3765 .{ .param_str = "vQbv*3IUiiiIiIi", .features = "vmem_to_lds_load_insts" },
26603766 .{ .param_str = "dd", .attributes = .{ .@"const" = true } },
3767 .{ .param_str = "yy", .attributes = .{ .@"const" = true }, .features = "bf16_trans_insts" },
26613768 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
26623769 .{ .param_str = "hh", .attributes = .{ .@"const" = true }, .features = "16_bit_insts" },
26633770 .{ .param_str = "WUi", .attributes = .{ .@"const" = true } },
......@@ -2666,16 +3773,21 @@ pub const data = blk: {
26663773 .{ .param_str = "ii", .attributes = .{ .@"const" = true } },
26673774 .{ .param_str = "iii", .attributes = .{ .@"const" = true } },
26683775 .{ .param_str = "dd", .attributes = .{ .@"const" = true } },
3776 .{ .param_str = "yy", .attributes = .{ .@"const" = true }, .features = "bf16_trans_insts" },
26693777 .{ .param_str = "dd", .attributes = .{ .@"const" = true } },
26703778 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
26713779 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
26723780 .{ .param_str = "hh", .attributes = .{ .@"const" = true }, .features = "16_bit_insts" },
26733781 .{ .param_str = "v" },
3782 .{ .param_str = "vv*i", .features = "gfx12_insts" },
3783 .{ .param_str = "vv*", .features = "gfx12_insts" },
3784 .{ .param_str = "vIs", .features = "gfx12_insts" },
26743785 .{ .param_str = "vIi", .features = "gfx12_insts" },
26753786 .{ .param_str = "bIi", .features = "gfx12_insts" },
26763787 .{ .param_str = "vv*i", .features = "gfx12_insts" },
26773788 .{ .param_str = "vIs", .features = "gfx12_insts" },
26783789 .{ .param_str = "vQbIiUi", .attributes = .{ .@"const" = true }, .features = "gfx12_insts" },
3790 .{ .param_str = "v", .features = "gfx1250_insts" },
26793791 .{ .param_str = "v" },
26803792 .{ .param_str = "v", .features = "ci_insts" },
26813793 .{ .param_str = "v", .features = "gfx8_insts" },
......@@ -2704,9 +3816,12 @@ pub const data = blk: {
27043816 .{ .param_str = "v", .features = "gfx11_insts" },
27053817 .{ .param_str = "vIUs", .features = "gfx1250_insts" },
27063818 .{ .param_str = "vIi" },
2707 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true } },
2708 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true } },
2709 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true } },
3819 .{ .param_str = "vv*", .features = "s_wakeup_barrier_inst" },
3820 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true }, .features = "sad_insts" },
3821 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true }, .features = "sad_insts" },
3822 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true }, .features = "sad_insts" },
3823 .{ .param_str = "UsUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
3824 .{ .param_str = "UsUi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
27103825 .{ .param_str = "UiUiUiUi", .attributes = .{ .@"const" = true } },
27113826 .{ .param_str = "vIi" },
27123827 .{ .param_str = "vIiIiIi" },
......@@ -2716,6 +3831,7 @@ pub const data = blk: {
27163831 .{ .param_str = "vWUi" },
27173832 .{ .param_str = "WUiiiIi", .attributes = .{ .@"const" = true } },
27183833 .{ .param_str = "WUiWiWiIi", .attributes = .{ .@"const" = true } },
3834 .{ .param_str = "yy", .attributes = .{ .@"const" = true }, .features = "bf16_trans_insts" },
27193835 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
27203836 .{ .param_str = "hh", .attributes = .{ .@"const" = true }, .features = "16_bit_insts" },
27213837 .{ .param_str = "V4fV4iV8iV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
......@@ -2723,19 +3839,19 @@ pub const data = blk: {
27233839 .{ .param_str = "V4fV4iV8iV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
27243840 .{ .param_str = "V4fV4iV8iV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
27253841 .{ .param_str = "V4fV4sV8sV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
2726 .{ .param_str = "V4fV4hV8hV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
3842 .{ .param_str = "V4fV4xV8xV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
27273843 .{ .param_str = "V4fV8yV16yV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
27283844 .{ .param_str = "V4fV2iV4iV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
27293845 .{ .param_str = "V4fV2iV4iV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
2730 .{ .param_str = "V4fV8hV16hV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
3846 .{ .param_str = "V4fV8xV16xV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
27313847 .{ .param_str = "V4fV2iV4iV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
27323848 .{ .param_str = "V4fV2iV4iV4fiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
27333849 .{ .param_str = "V16fV4sV8sV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
2734 .{ .param_str = "V16fV4hV8hV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
3850 .{ .param_str = "V16fV4xV8xV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
27353851 .{ .param_str = "V16fV8yV16yV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
27363852 .{ .param_str = "V16fV2iV4iV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
27373853 .{ .param_str = "V16fV2iV4iV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
2738 .{ .param_str = "V16fV8hV16hV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
3854 .{ .param_str = "V16fV8xV16xV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
27393855 .{ .param_str = "V16fV2iV4iV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
27403856 .{ .param_str = "V16fV2iV4iV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "fp8_insts" },
27413857 .{ .param_str = "V16fV4iV8iV16fiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
......@@ -2747,14 +3863,27 @@ pub const data = blk: {
27473863 .{ .param_str = "V16iV2iV4iV16iiIiIi", .attributes = .{ .@"const" = true }, .features = "mai_insts" },
27483864 .{ .param_str = "V16iV4iV8iV16iiIiIi", .attributes = .{ .@"const" = true }, .features = "gfx950_insts" },
27493865 .{ .param_str = "dd", .attributes = .{ .@"const" = true } },
3866 .{ .param_str = "yy", .attributes = .{ .@"const" = true }, .features = "bf16_trans_insts" },
27503867 .{ .param_str = "ff", .attributes = .{ .@"const" = true } },
27513868 .{ .param_str = "hh", .attributes = .{ .@"const" = true }, .features = "16_bit_insts" },
3869 .{ .param_str = "vQbv*3IUiiiiIiIi", .features = "vmem_to_lds_load_insts" },
27523870 .{ .param_str = "iIbiIbiiIb", .attributes = .{ .@"const" = true }, .features = "dot8_insts" },
27533871 .{ .param_str = "iIbiIbiiIb", .attributes = .{ .@"const" = true }, .features = "dot8_insts" },
27543872 .{ .param_str = "V8sV8sV16sV8si", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
27553873 .{ .param_str = "V4sV4sV8sV4si", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
3874 .{ .param_str = "V8yIbV16yIbV32yV8yiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3875 .{ .param_str = "V8fIbV16yIbV32yV8fiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3876 .{ .param_str = "V8hV8iV16iV8hiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3877 .{ .param_str = "V8hV8iV16iV8hiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3878 .{ .param_str = "V8hV8iV16iV8hiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3879 .{ .param_str = "V8hV8iV16iV8hiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
27563880 .{ .param_str = "V8hV8hV16hV8hi", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
27573881 .{ .param_str = "V4hV4hV8hV4hi", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
3882 .{ .param_str = "V8hIbV16hIbV32hV8hiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3883 .{ .param_str = "V8fV8iV16iV8fiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3884 .{ .param_str = "V8fV8iV16iV8fiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3885 .{ .param_str = "V8fV8iV16iV8fiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3886 .{ .param_str = "V8fV8iV16iV8fiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
27583887 .{ .param_str = "V8fV8sV16sV8fi", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
27593888 .{ .param_str = "V4fV4sV8sV4fi", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
27603889 .{ .param_str = "V8fV2iV4iV8fi", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
......@@ -2767,6 +3896,9 @@ pub const data = blk: {
27673896 .{ .param_str = "V4fiV2iV4fi", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
27683897 .{ .param_str = "V8fV2iV4iV8fi", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
27693898 .{ .param_str = "V4fiV2iV4fi", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
3899 .{ .param_str = "V8fIbV16yIbV32yV8fiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3900 .{ .param_str = "V8fIbV16hIbV32hV8fiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3901 .{ .param_str = "V8iIbV8iIbV16iV8iiIbIb.", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
27703902 .{ .param_str = "V8iIbiIbV2iV8iiIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
27713903 .{ .param_str = "V4iIbiIbiV4iiIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
27723904 .{ .param_str = "V8iIbV2iIbV4iV8iiIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
......@@ -2774,6 +3906,8 @@ pub const data = blk: {
27743906 .{ .param_str = "V8iIbV2iIbV4iV8iiIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
27753907 .{ .param_str = "V4iIbiIbV2iV4iiIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
27763908 .{ .param_str = "yy", .attributes = .{ .@"const" = true }, .features = "bf16_trans_insts" },
3909 .{ .param_str = "ff", .attributes = .{ .@"const" = true }, .features = "tanh_insts" },
3910 .{ .param_str = "hh", .attributes = .{ .@"const" = true }, .features = "tanh_insts" },
27773911 .{ .param_str = "vV4iV8iV4iV4iIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
27783912 .{ .param_str = "vV4iV8iIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
27793913 .{ .param_str = "vV4iV8iV4iV4iIi", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts" },
......@@ -2788,6 +3922,28 @@ pub const data = blk: {
27883922 .{ .param_str = "WUiWUiWUiIi", .attributes = .{ .@"const" = true } },
27893923 .{ .param_str = "iiiIiIiIiIb", .attributes = .{ .@"const" = true, .custom_typecheck = true }, .features = "dpp" },
27903924 .{ .param_str = "v" },
3925 .{ .param_str = "ZUiZUiZi", .attributes = .{ .@"const" = true } },
3926 .{ .param_str = "WUiWUiZi", .attributes = .{ .@"const" = true } },
3927 .{ .param_str = "ZiZiZi", .attributes = .{ .@"const" = true } },
3928 .{ .param_str = "WiWiZi", .attributes = .{ .@"const" = true } },
3929 .{ .param_str = "ffZi", .attributes = .{ .@"const" = true } },
3930 .{ .param_str = "ffZi", .attributes = .{ .@"const" = true } },
3931 .{ .param_str = "ffZi", .attributes = .{ .@"const" = true } },
3932 .{ .param_str = "ffZi", .attributes = .{ .@"const" = true } },
3933 .{ .param_str = "ZiZiZi", .attributes = .{ .@"const" = true } },
3934 .{ .param_str = "WiWiZi", .attributes = .{ .@"const" = true } },
3935 .{ .param_str = "ZUiZUiZi", .attributes = .{ .@"const" = true } },
3936 .{ .param_str = "WUiWUiZi", .attributes = .{ .@"const" = true } },
3937 .{ .param_str = "ZiZiZi", .attributes = .{ .@"const" = true } },
3938 .{ .param_str = "WiWiZi", .attributes = .{ .@"const" = true } },
3939 .{ .param_str = "ZUiZUiZi", .attributes = .{ .@"const" = true } },
3940 .{ .param_str = "WUiWUiZi", .attributes = .{ .@"const" = true } },
3941 .{ .param_str = "ZiZiZi", .attributes = .{ .@"const" = true } },
3942 .{ .param_str = "WiWiZi", .attributes = .{ .@"const" = true } },
3943 .{ .param_str = "ZUiZUiZi", .attributes = .{ .@"const" = true } },
3944 .{ .param_str = "WUiWUiZi", .attributes = .{ .@"const" = true } },
3945 .{ .param_str = "ZiZiZi", .attributes = .{ .@"const" = true } },
3946 .{ .param_str = "WiWiZi", .attributes = .{ .@"const" = true } },
27913947 .{ .param_str = "Ui", .attributes = .{ .@"const" = true } },
27923948 .{ .param_str = "V16sV16sV16sV16sIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize32" },
27933949 .{ .param_str = "V8sV16sV16sV8sIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
......@@ -2795,12 +3951,28 @@ pub const data = blk: {
27953951 .{ .param_str = "V8sV8sV8sV8s", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
27963952 .{ .param_str = "V8sV16sV16sV8sIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
27973953 .{ .param_str = "V4sV4sV4sV4s", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
2798 .{ .param_str = "V16hV16hV16hV16hIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize32" },
2799 .{ .param_str = "V8hV16hV16hV8hIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
2800 .{ .param_str = "V16hV16hV16hV16hIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize32" },
2801 .{ .param_str = "V8hV8hV8hV8h", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
2802 .{ .param_str = "V8hV16hV16hV8hIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
2803 .{ .param_str = "V4hV4hV4hV4h", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
3954 .{ .param_str = "V8yIbV16yIbV16yIsV8yIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3955 .{ .param_str = "V8yIbV16yIbV16yIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3956 .{ .param_str = "V8hV16iV16iIsV8hIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3957 .{ .param_str = "V8hV16iV16iIsV8hIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3958 .{ .param_str = "V8hV16iV16iIsV8hIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3959 .{ .param_str = "V8hV16iV16iIsV8hIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3960 .{ .param_str = "V16xV16xV16xV16xIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize32" },
3961 .{ .param_str = "V8xV16xV16xV8xIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
3962 .{ .param_str = "V16xV16xV16xV16xIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize32" },
3963 .{ .param_str = "V8xV8xV8xV8x", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
3964 .{ .param_str = "V8xV16xV16xV8xIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
3965 .{ .param_str = "V4xV4xV4xV4x", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
3966 .{ .param_str = "V8hIbV16hIbV16hIsV8hIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3967 .{ .param_str = "V8hV8iV8iIsV8hIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3968 .{ .param_str = "V8hV8iV8iIsV8hIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3969 .{ .param_str = "V8hV8iV8iIsV8hIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3970 .{ .param_str = "V8hV8iV8iIsV8hIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3971 .{ .param_str = "V8fV16iV16iIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3972 .{ .param_str = "V8fV16iV16iIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3973 .{ .param_str = "V8fIiV16iIiV16iIsV8f", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3974 .{ .param_str = "V8fV16iV16iIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3975 .{ .param_str = "V8fV16iV16iIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
28043976 .{ .param_str = "V8fV16sV16sV8f", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize32" },
28053977 .{ .param_str = "V8fV8sV8sV8f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
28063978 .{ .param_str = "V4fV16sV16sV4f", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
......@@ -2809,14 +3981,22 @@ pub const data = blk: {
28093981 .{ .param_str = "V4fiiV4f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
28103982 .{ .param_str = "V8fV2iV2iV8f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
28113983 .{ .param_str = "V4fiiV4f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
2812 .{ .param_str = "V8fV16hV16hV8f", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize32" },
2813 .{ .param_str = "V8fV8hV8hV8f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
2814 .{ .param_str = "V4fV16hV16hV4f", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
2815 .{ .param_str = "V4fV4hV4hV4f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
3984 .{ .param_str = "V8fV16xV16xV8f", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize32" },
3985 .{ .param_str = "V8fV8xV8xV8f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
3986 .{ .param_str = "V4fV16xV16xV4f", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
3987 .{ .param_str = "V4fV4xV4xV4f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
28163988 .{ .param_str = "V8fV2iV2iV8f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
28173989 .{ .param_str = "V4fiiV4f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
28183990 .{ .param_str = "V8fV2iV2iV8f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
28193991 .{ .param_str = "V4fiiV4f", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
3992 .{ .param_str = "V8fIbV16yIbV16yIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3993 .{ .param_str = "V8fIbV16hIbV16hIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3994 .{ .param_str = "V8fIbV2fIbV2fIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3995 .{ .param_str = "V8fV8iV8iIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3996 .{ .param_str = "V8fV8iV8iIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3997 .{ .param_str = "V8fV8iV8iIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3998 .{ .param_str = "V8fV8iV8iIsV8fIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
3999 .{ .param_str = "V16fV16iV8iIsV16f", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
28204000 .{ .param_str = "V8iIbV2iIbV2iV8iIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize32" },
28214001 .{ .param_str = "V8iIbiIbiV8iIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
28224002 .{ .param_str = "V4iIbV2iIbV2iV4iIb", .attributes = .{ .@"const" = true }, .features = "gfx11_insts,wavefrontsize64" },
......@@ -2827,6 +4007,11 @@ pub const data = blk: {
28274007 .{ .param_str = "V4iIbiIbiV4iIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
28284008 .{ .param_str = "V8iIbV2iIbV2iV8iIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize32" },
28294009 .{ .param_str = "V4iIbiIbiV4iIb", .attributes = .{ .@"const" = true }, .features = "gfx12_insts,wavefrontsize64" },
4010 .{ .param_str = "V8iIbV8iIbV8iV8iIbIb.", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
4011 .{ .param_str = "V8fIiV16iIiV16iIsV8fIiIiLiIiIiLiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
4012 .{ .param_str = "V16fV16iV8iIsV16fIiIiLiIiIiLiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
4013 .{ .param_str = "V8fIiV16iIiV16iIsV8fIiIiiIiIiiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
4014 .{ .param_str = "V16fV16iV8iIsV16fIiIiiIiIiiIbIb", .attributes = .{ .@"const" = true }, .features = "gfx1250_insts,wavefrontsize32" },
28304015 .{ .param_str = "Ui", .attributes = .{ .@"const" = true } },
28314016 .{ .param_str = "Ui", .attributes = .{ .@"const" = true } },
28324017 .{ .param_str = "Ui", .attributes = .{ .@"const" = true } },
lib/compiler/aro/aro/Builtins/arm.zig+2-2
......@@ -951,7 +951,7 @@ pub const data = blk: {
951951 .{ .param_str = "vUIiUIivC*" },
952952 .{ .param_str = "vUIiUIivC*" },
953953 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
954 .{ .param_str = "LLUiv*" },
954 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
955955 .{ .param_str = "vUIiUIiUiUIiUIiUIi" },
956956 .{ .param_str = "vUIiUIiUiUIiUIiUIi" },
957957 .{ .param_str = "vUIiUIiLLUiUIi" },
......@@ -1023,7 +1023,7 @@ pub const data = blk: {
10231023 .{ .param_str = "vUIiUIiv*" },
10241024 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true } },
10251025 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true } },
1026 .{ .param_str = "iLLUiv*" },
1026 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true } },
10271027 .{ .param_str = "iii", .attributes = .{ .@"const" = true } },
10281028 .{ .param_str = "ii", .attributes = .{ .@"const" = true } },
10291029 .{ .param_str = "UiUiUi", .attributes = .{ .@"const" = true } },
lib/compiler/aro/aro/Builtins/common.zig+1633-1506
......@@ -61,6 +61,8 @@ pub const Tag = enum(u16) { _Block_object_assign,
6161 __atomic_fetch_nand,
6262 __atomic_fetch_or,
6363 __atomic_fetch_sub,
64 __atomic_fetch_udec,
65 __atomic_fetch_uinc,
6466 __atomic_fetch_xor,
6567 __atomic_is_lock_free,
6668 __atomic_load,
......@@ -129,6 +131,7 @@ pub const Tag = enum(u16) { _Block_object_assign,
129131 __builtin_alloca_with_align,
130132 __builtin_alloca_with_align_uninitialized,
131133 __builtin_allow_runtime_check,
134 __builtin_allow_sanitize_check,
132135 __builtin_annotation,
133136 __builtin_asin,
134137 __builtin_asinf,
......@@ -168,6 +171,7 @@ pub const Tag = enum(u16) { _Block_object_assign,
168171 __builtin_bswap16,
169172 __builtin_bswap32,
170173 __builtin_bswap64,
174 __builtin_bswapg,
171175 __builtin_bzero,
172176 __builtin_c23_va_start,
173177 __builtin_cabs,
......@@ -305,23 +309,30 @@ pub const Tag = enum(u16) { _Block_object_assign,
305309 __builtin_elementwise_bitreverse,
306310 __builtin_elementwise_canonicalize,
307311 __builtin_elementwise_ceil,
312 __builtin_elementwise_clzg,
308313 __builtin_elementwise_copysign,
309314 __builtin_elementwise_cos,
310315 __builtin_elementwise_cosh,
316 __builtin_elementwise_ctzg,
311317 __builtin_elementwise_exp,
312318 __builtin_elementwise_exp10,
313319 __builtin_elementwise_exp2,
314320 __builtin_elementwise_floor,
315321 __builtin_elementwise_fma,
316322 __builtin_elementwise_fmod,
323 __builtin_elementwise_fshl,
324 __builtin_elementwise_fshr,
325 __builtin_elementwise_ldexp,
317326 __builtin_elementwise_log,
318327 __builtin_elementwise_log10,
319328 __builtin_elementwise_log2,
320329 __builtin_elementwise_max,
321330 __builtin_elementwise_maximum,
331 __builtin_elementwise_maximumnum,
322332 __builtin_elementwise_maxnum,
323333 __builtin_elementwise_min,
324334 __builtin_elementwise_minimum,
335 __builtin_elementwise_minimumnum,
325336 __builtin_elementwise_minnum,
326337 __builtin_elementwise_nearbyint,
327338 __builtin_elementwise_popcount,
......@@ -442,6 +453,7 @@ pub const Tag = enum(u16) { _Block_object_assign,
442453 __builtin_ilogbl,
443454 __builtin_index,
444455 __builtin_inf,
456 __builtin_infer_alloc_token,
445457 __builtin_inff,
446458 __builtin_inff128,
447459 __builtin_inff16,
......@@ -517,6 +529,12 @@ pub const Tag = enum(u16) { _Block_object_assign,
517529 __builtin_lroundf128,
518530 __builtin_lroundl,
519531 __builtin_malloc,
532 __builtin_masked_compress_store,
533 __builtin_masked_expand_load,
534 __builtin_masked_gather,
535 __builtin_masked_load,
536 __builtin_masked_scatter,
537 __builtin_masked_store,
520538 __builtin_matrix_column_major_load,
521539 __builtin_matrix_column_major_store,
522540 __builtin_matrix_transpose,
......@@ -689,6 +707,7 @@ pub const Tag = enum(u16) { _Block_object_assign,
689707 __builtin_ssub_overflow,
690708 __builtin_ssubl_overflow,
691709 __builtin_ssubll_overflow,
710 __builtin_stack_address,
692711 __builtin_stdarg_start,
693712 __builtin_stpcpy,
694713 __builtin_stpncpy,
......@@ -853,6 +872,8 @@ pub const Tag = enum(u16) { _Block_object_assign,
853872 __scoped_atomic_fetch_nand,
854873 __scoped_atomic_fetch_or,
855874 __scoped_atomic_fetch_sub,
875 __scoped_atomic_fetch_udec,
876 __scoped_atomic_fetch_uinc,
856877 __scoped_atomic_fetch_xor,
857878 __scoped_atomic_load,
858879 __scoped_atomic_load_n,
......@@ -1438,7 +1459,7 @@ pub const longest_name = 41;
14381459/// If found, returns the index of the node within the `dafsa` array.
14391460/// Otherwise, returns `null`.
14401461pub fn findInList(first_child_index: u16, char: u8) ?u16 {
1441 @setEvalBranchQuota(2748);
1462 @setEvalBranchQuota(2790);
14421463 var index = first_child_index;
14431464 while (true) {
14441465 if (dafsa[index].char == char) return index;
......@@ -1533,7 +1554,7 @@ const Node = packed struct {
15331554
15341555const dafsa = [_]Node{
15351556 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
1536 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1018, .child_index = 19 },
1557 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1039, .child_index = 19 },
15371558 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 31 },
15381559 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 36 },
15391560 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 82, .child_index = 38 },
......@@ -1555,7 +1576,7 @@ const dafsa = [_]Node{
15551576 .{ .char = 'E', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 102 },
15561577 .{ .char = 'I', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 103 },
15571578 .{ .char = 'R', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 104 },
1558 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 940, .child_index = 105 },
1579 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 961, .child_index = 105 },
15591580 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 123 },
15601581 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 125 },
15611582 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 127 },
......@@ -1638,8 +1659,8 @@ const dafsa = [_]Node{
16381659 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 237 },
16391660 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 238 },
16401661 .{ .char = 'G', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 239 },
1641 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 34, .child_index = 240 },
1642 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 696, .child_index = 245 },
1662 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 240 },
1663 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 713, .child_index = 245 },
16431664 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 19, .child_index = 246 },
16441665 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 248 },
16451666 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 249 },
......@@ -1650,7 +1671,7 @@ const dafsa = [_]Node{
16501671 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 255 },
16511672 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 256 },
16521673 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 257 },
1653 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 135, .child_index = 258 },
1674 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 137, .child_index = 258 },
16541675 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 261 },
16551676 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 262 },
16561677 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 263 },
......@@ -1776,8 +1797,8 @@ const dafsa = [_]Node{
17761797 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 397 },
17771798 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 398 },
17781799 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 399 },
1779 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 400 },
1780 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 696, .child_index = 401 },
1800 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 400 },
1801 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 713, .child_index = 401 },
17811802 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 402 },
17821803 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 403 },
17831804 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 404 },
......@@ -1790,7 +1811,7 @@ const dafsa = [_]Node{
17901811 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 411 },
17911812 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 412 },
17921813 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 413 },
1793 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 414 },
1814 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 27, .child_index = 414 },
17941815 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 415 },
17951816 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 107, .child_index = 417 },
17961817 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 418 },
......@@ -1932,8 +1953,8 @@ const dafsa = [_]Node{
19321953 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 522 },
19331954 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 523 },
19341955 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 524 },
1935 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 525 },
1936 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 696, .child_index = 526 },
1956 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 525 },
1957 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 713, .child_index = 526 },
19371958 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 527 },
19381959 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 528 },
19391960 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 529 },
......@@ -1946,7 +1967,7 @@ const dafsa = [_]Node{
19461967 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 281 },
19471968 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 535 },
19481969 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 410 },
1949 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 536 },
1970 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 536 },
19501971 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 537 },
19511972 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 528 },
19521973 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 107, .child_index = 538 },
......@@ -2057,8 +2078,8 @@ const dafsa = [_]Node{
20572078 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 609 },
20582079 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 610 },
20592080 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 611 },
2060 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 612 },
2061 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 696, .child_index = 613 },
2081 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 612 },
2082 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 713, .child_index = 613 },
20622083 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 614 },
20632084 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 615 },
20642085 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
......@@ -2068,7 +2089,7 @@ const dafsa = [_]Node{
20682089 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 620 },
20692090 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 621 },
20702091 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 622 },
2071 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 623 },
2092 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 623 },
20722093 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 489 },
20732094 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 107, .child_index = 624 },
20742095 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 511 },
......@@ -2144,8 +2165,8 @@ const dafsa = [_]Node{
21442165 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 657 },
21452166 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 658 },
21462167 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
2147 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 659 },
2148 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 696, .child_index = 660 },
2168 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 659 },
2169 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 713, .child_index = 660 },
21492170 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 661 },
21502171 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 662 },
21512172 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 663 },
......@@ -2155,7 +2176,7 @@ const dafsa = [_]Node{
21552176 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 666 },
21562177 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 667 },
21572178 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 669 },
2158 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 670 },
2179 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 670 },
21592180 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 107, .child_index = 671 },
21602181 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 680 },
21612182 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 681 },
......@@ -2191,8 +2212,8 @@ const dafsa = [_]Node{
21912212 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 699 },
21922213 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 700 },
21932214 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 701 },
2194 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 702 },
2195 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 696, .child_index = 703 },
2215 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 702 },
2216 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 713, .child_index = 703 },
21962217 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 704 },
21972218 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
21982219 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 705 },
......@@ -2202,7 +2223,7 @@ const dafsa = [_]Node{
22022223 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 632 },
22032224 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
22042225 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 709 },
2205 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 710 },
2226 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 710 },
22062227 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 711 },
22072228 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 713 },
22082229 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 714 },
......@@ -2234,15 +2255,15 @@ const dafsa = [_]Node{
22342255 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
22352256 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 740 },
22362257 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 741 },
2237 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 742 },
2238 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 696, .child_index = 754 },
2258 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 742 },
2259 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 713, .child_index = 754 },
22392260 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 755 },
22402261 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 756 },
22412262 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
22422263 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 757 },
22432264 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 758 },
22442265 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 759 },
2245 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 760 },
2266 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 760 },
22462267 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 761 },
22472268 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 761 },
22482269 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 762 },
......@@ -2277,7 +2298,7 @@ const dafsa = [_]Node{
22772298 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 786 },
22782299 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 789 },
22792300 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 791 },
2280 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 792 },
2301 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 792 },
22812302 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 793 },
22822303 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 794 },
22832304 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 795 },
......@@ -2286,13 +2307,13 @@ const dafsa = [_]Node{
22862307 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 799 },
22872308 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 802 },
22882309 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 804 },
2289 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 696, .child_index = 805 },
2310 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 713, .child_index = 805 },
22902311 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 825 },
22912312 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 826 },
22922313 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 827 },
22932314 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 828 },
22942315 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 829 },
2295 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 830 },
2316 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 830 },
22962317 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 766 },
22972318 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 770 },
22982319 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 831 },
......@@ -2324,7 +2345,7 @@ const dafsa = [_]Node{
23242345 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 853 },
23252346 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 854 },
23262347 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 855 },
2327 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 856 },
2348 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 856 },
23282349 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 857 },
23292350 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 858 },
23302351 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 859 },
......@@ -2338,21 +2359,21 @@ const dafsa = [_]Node{
23382359 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 867 },
23392360 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 798 },
23402361 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 868 },
2341 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 53, .child_index = 869 },
2342 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 876 },
2362 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 54, .child_index = 869 },
2363 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 876 },
23432364 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 120, .child_index = 880 },
23442365 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 893 },
2345 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 73, .child_index = 897 },
2366 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 80, .child_index = 897 },
23462367 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 60, .child_index = 901 },
23472368 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 910 },
2348 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 912 },
2369 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 912 },
23492370 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 52, .child_index = 915 },
2350 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 921 },
2371 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 921 },
23512372 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 926 },
23522373 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 929 },
23532374 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 933 },
23542375 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 45, .child_index = 937 },
2355 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 76, .child_index = 940 },
2376 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 77, .child_index = 940 },
23562377 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 23, .child_index = 952 },
23572378 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 957 },
23582379 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 961 },
......@@ -2362,7 +2383,7 @@ const dafsa = [_]Node{
23622383 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 967 },
23632384 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 968 },
23642385 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 969 },
2365 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 970 },
2386 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 970 },
23662387 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 971 },
23672388 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 972 },
23682389 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 973 },
......@@ -2388,7 +2409,7 @@ const dafsa = [_]Node{
23882409 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1002 },
23892410 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1003 },
23902411 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1004 },
2391 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1005 },
2412 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1005 },
23922413 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1006 },
23932414 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1007 },
23942415 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 862 },
......@@ -2404,13 +2425,13 @@ const dafsa = [_]Node{
24042425 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 133 },
24052426 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1022 },
24062427 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1023 },
2407 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1024 },
2428 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1024 },
24082429 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 397 },
24092430 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 1026 },
24102431 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1028 },
24112432 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 140 },
24122433 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1029 },
2413 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1030 },
2434 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1030 },
24142435 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 142 },
24152436 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1031 },
24162437 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 1032 },
......@@ -2430,7 +2451,7 @@ const dafsa = [_]Node{
24302451 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1060 },
24312452 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1061 },
24322453 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1062 },
2433 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 1063 },
2454 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 47, .child_index = 1063 },
24342455 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1064 },
24352456 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 23, .child_index = 1065 },
24362457 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1067 },
......@@ -2445,7 +2466,7 @@ const dafsa = [_]Node{
24452466 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1081 },
24462467 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1082 },
24472468 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1083 },
2448 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1084 },
2469 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1084 },
24492470 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1088 },
24502471 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1097 },
24512472 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1099 },
......@@ -2453,458 +2474,463 @@ const dafsa = [_]Node{
24532474 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1101 },
24542475 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1103 },
24552476 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1105 },
2456 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1107 },
2457 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1109 },
2458 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1110 },
2459 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1111 },
2460 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1112 },
2461 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1113 },
2462 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1114 },
2463 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1116 },
2464 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1117 },
2465 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1118 },
2466 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1119 },
2467 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1120 },
2468 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1121 },
2469 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1122 },
2470 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1124 },
2471 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1126 },
2472 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 1127 },
2473 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1131 },
2474 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1132 },
2475 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1134 },
2476 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1135 },
2477 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1136 },
2478 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1137 },
2479 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 1138 },
2480 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1140 },
2477 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1107 },
2478 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1110 },
2479 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1111 },
2480 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1112 },
2481 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1113 },
2482 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1114 },
2483 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1115 },
2484 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1117 },
2485 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1118 },
2486 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1119 },
2487 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1120 },
2488 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1121 },
2489 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1122 },
2490 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1123 },
2491 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1125 },
2492 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1127 },
2493 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 1128 },
2494 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1132 },
2495 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1133 },
2496 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1135 },
2497 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1136 },
2498 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1137 },
2499 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1138 },
2500 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 1139 },
2501 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1141 },
24812502 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 218 },
24822503 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 174 },
2483 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1141 },
2484 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1142 },
2485 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 1144 },
2486 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1147 },
2487 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1148 },
2504 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1142 },
2505 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1143 },
2506 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 1145 },
2507 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1149 },
2508 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1150 },
24882509 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1100 },
2489 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1149 },
2490 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1150 },
2491 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1153 },
2492 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1134 },
2493 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1140 },
2494 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1154 },
2495 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1157 },
2496 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1158 },
2497 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1159 },
2498 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1160 },
2510 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1151 },
2511 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1152 },
2512 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1155 },
2513 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1135 },
2514 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1141 },
2515 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1156 },
2516 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1159 },
2517 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1160 },
2518 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1161 },
2519 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1162 },
24992520 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 174 },
25002521 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 229 },
2501 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1162 },
2502 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1163 },
2503 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1164 },
2504 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1165 },
2505 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 1166 },
2506 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1167 },
2507 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1168 },
2508 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1170 },
2509 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1171 },
2510 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1175 },
2511 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1176 },
2512 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1177 },
2513 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1178 },
2514 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1179 },
2515 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1180 },
2516 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1181 },
2517 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1182 },
2518 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1183 },
2519 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1184 },
2520 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1185 },
2521 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1186 },
2522 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1187 },
2523 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1188 },
2524 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1189 },
2525 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1190 },
2526 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1191 },
2527 .{ .char = 'C', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1192 },
2528 .{ .char = 'D', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1193 },
2529 .{ .char = 'E', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1194 },
2530 .{ .char = 'I', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1195 },
2531 .{ .char = 'O', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1196 },
2532 .{ .char = 'X', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1197 },
2522 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1164 },
2523 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1165 },
2524 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1166 },
2525 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1167 },
2526 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 1168 },
2527 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1169 },
2528 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1170 },
2529 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1172 },
2530 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1173 },
2531 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1177 },
2532 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1178 },
2533 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1179 },
2534 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1180 },
2535 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1181 },
2536 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1182 },
2537 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1183 },
2538 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1184 },
2539 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1185 },
2540 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1186 },
2541 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1187 },
2542 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1188 },
2543 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1189 },
2544 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1190 },
2545 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1191 },
2546 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1192 },
2547 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1193 },
2548 .{ .char = 'C', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1194 },
2549 .{ .char = 'D', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1195 },
2550 .{ .char = 'E', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1196 },
2551 .{ .char = 'I', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1197 },
2552 .{ .char = 'O', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1198 },
2553 .{ .char = 'X', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1199 },
25332554 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
2534 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1198 },
2535 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1199 },
2536 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1200 },
2555 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1200 },
2556 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1201 },
2557 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1202 },
25372558 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
2538 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1201 },
2539 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1202 },
2540 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1203 },
2541 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1204 },
2542 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1205 },
2543 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1206 },
2544 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1207 },
2545 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1208 },
2546 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1209 },
2547 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1210 },
2548 .{ .char = 'C', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1211 },
2549 .{ .char = 'N', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1212 },
2550 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1213 },
2551 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1214 },
2552 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1215 },
2553 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1216 },
2554 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1217 },
2555 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1218 },
2556 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1221 },
2557 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1224 },
2558 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1225 },
2559 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1228 },
2560 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1229 },
2561 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1230 },
2562 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1231 },
2563 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1232 },
2564 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1233 },
2565 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1236 },
2566 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1237 },
2559 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1203 },
2560 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1204 },
2561 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1205 },
2562 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1206 },
2563 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1207 },
2564 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1208 },
2565 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1209 },
2566 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1210 },
2567 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1211 },
2568 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1212 },
2569 .{ .char = 'C', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1213 },
2570 .{ .char = 'N', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1214 },
2571 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1215 },
2572 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1216 },
2573 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1217 },
2574 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1218 },
2575 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1219 },
2576 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1220 },
2577 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1223 },
2578 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1226 },
2579 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1227 },
2580 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1230 },
2581 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1231 },
2582 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1232 },
2583 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1233 },
2584 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1234 },
2585 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1235 },
2586 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1238 },
2587 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1239 },
25672588 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 284 },
25682589 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 135 },
2569 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1238 },
2570 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1239 },
2590 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1240 },
2591 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1241 },
25712592 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 286 },
25722593 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 138 },
25732594 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 162 },
2574 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1240 },
2575 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1241 },
2595 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1242 },
2596 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1243 },
25762597 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 289 },
2577 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1242 },
2578 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1243 },
25792598 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1244 },
2599 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1245 },
2600 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1246 },
25802601 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 286 },
2581 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1245 },
2582 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1246 },
2583 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1249 },
2584 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1250 },
2585 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1253 },
2586 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 10, .child_index = 1254 },
2587 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1257 },
2602 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1247 },
2603 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1248 },
2604 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1251 },
2605 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1252 },
2606 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1255 },
2607 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 10, .child_index = 1256 },
2608 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1259 },
25882609 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 207 },
25892610 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 296 },
2590 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1258 },
2611 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1260 },
25912612 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 221 },
2592 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1246 },
2593 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1259 },
2594 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1260 },
2595 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1261 },
2596 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1262 },
2597 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1263 },
2598 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1264 },
2599 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1265 },
2600 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 21, .child_index = 1268 },
2601 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1274 },
2602 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1276 },
2603 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1277 },
2604 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1278 },
2605 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1279 },
2606 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1280 },
2607 .{ .char = 'a', .end_of_word = true, .end_of_list = false, .number = 15, .child_index = 1281 },
2608 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1284 },
2609 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1285 },
2610 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1286 },
2613 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1248 },
2614 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1261 },
2615 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1262 },
2616 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1263 },
2617 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1264 },
2618 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1265 },
2619 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 1266 },
2620 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1267 },
2621 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 21, .child_index = 1270 },
2622 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1276 },
2623 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1278 },
2624 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1279 },
2625 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1280 },
2626 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1281 },
2627 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1282 },
2628 .{ .char = 'a', .end_of_word = true, .end_of_list = false, .number = 15, .child_index = 1283 },
2629 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1286 },
2630 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1287 },
2631 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1288 },
26112632 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 208 },
2612 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1287 },
2613 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1288 },
2614 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1290 },
2615 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1291 },
2616 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1292 },
2617 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1293 },
2618 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1294 },
2633 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1289 },
2634 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1290 },
2635 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1292 },
2636 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1293 },
2637 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1294 },
2638 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1295 },
2639 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1296 },
26192640 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 323 },
2620 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1295 },
2621 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1297 },
2622 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1298 },
2623 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1299 },
2624 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1300 },
2625 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1302 },
2626 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1303 },
2627 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1304 },
2628 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1305 },
2629 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1307 },
2630 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1309 },
2641 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1297 },
2642 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1300 },
2643 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1301 },
2644 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1302 },
2645 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1303 },
2646 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1305 },
2647 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1306 },
2648 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1307 },
2649 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1308 },
2650 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1310 },
2651 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1312 },
26312652 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 142 },
26322653 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 335 },
2633 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1310 },
2634 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1311 },
2635 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1312 },
2654 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1313 },
2655 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1314 },
2656 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1315 },
26362657 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 192 },
26372658 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1105 },
2638 .{ .char = 'g', .end_of_word = true, .end_of_list = false, .number = 23, .child_index = 1313 },
2659 .{ .char = 'g', .end_of_word = true, .end_of_list = false, .number = 23, .child_index = 1316 },
26392660 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 343 },
2640 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1318 },
2641 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1319 },
2661 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1321 },
2662 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1322 },
26422663 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 285 },
2643 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1320 },
2644 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1321 },
2645 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1325 },
2646 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1326 },
2647 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1327 },
2648 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1328 },
2649 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1331 },
2650 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1332 },
2651 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1333 },
2652 .{ .char = 'j', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1335 },
2653 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1337 },
2654 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1338 },
2655 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1339 },
2656 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1340 },
2657 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1341 },
2658 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1342 },
2659 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1345 },
2664 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1323 },
2665 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1324 },
2666 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1325 },
2667 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1329 },
2668 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1330 },
2669 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1331 },
2670 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1332 },
2671 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1335 },
2672 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1336 },
2673 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1337 },
2674 .{ .char = 'j', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1339 },
2675 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1341 },
2676 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1342 },
2677 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1343 },
2678 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1344 },
2679 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1345 },
2680 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1346 },
2681 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1349 },
26602682 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 356 },
2661 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1347 },
2662 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1348 },
2663 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1350 },
2664 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1351 },
2665 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1353 },
2666 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1354 },
2667 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1356 },
2668 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1357 },
2669 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1358 },
2670 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1359 },
2671 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1361 },
2672 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1363 },
2673 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1364 },
2674 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 18, .child_index = 1365 },
2675 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1369 },
2676 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1370 },
2683 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1351 },
2684 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1352 },
2685 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1354 },
2686 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1355 },
2687 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1357 },
2688 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1358 },
2689 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1360 },
2690 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1361 },
2691 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1362 },
2692 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1363 },
2693 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1365 },
2694 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1367 },
2695 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1368 },
2696 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 18, .child_index = 1369 },
2697 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1373 },
2698 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1374 },
26772699 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 318 },
2678 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1371 },
2679 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1372 },
2700 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1375 },
2701 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1376 },
2702 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1377 },
26802703 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 372 },
2681 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1373 },
2682 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1380 },
2683 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1254 },
2684 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1382 },
2704 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1378 },
2705 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1385 },
2706 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1256 },
2707 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1387 },
26852708 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 281 },
2686 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1383 },
2687 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1384 },
2688 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1385 },
2689 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1386 },
2690 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1387 },
2691 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1388 },
2692 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1371 },
2693 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1389 },
2694 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1393 },
2709 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1388 },
2710 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1389 },
2711 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1390 },
2712 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1391 },
2713 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1392 },
2714 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1393 },
2715 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1375 },
2716 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1394 },
2717 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1398 },
26952718 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 174 },
26962719 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 176 },
2697 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1394 },
2698 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1401 },
2699 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1406 },
2700 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1407 },
2701 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 1408 },
2702 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1409 },
2703 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1410 },
2704 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1411 },
2705 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1412 },
2706 .{ .char = '1', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1413 },
2720 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1399 },
2721 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1406 },
2722 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1411 },
2723 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1412 },
2724 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 1413 },
2725 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1414 },
2726 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1415 },
2727 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1416 },
2728 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1417 },
2729 .{ .char = '1', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1418 },
27072730 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
27082731 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
27092732 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2710 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1414 },
2711 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1415 },
2712 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1416 },
2713 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1179 },
2714 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1417 },
2715 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1418 },
2716 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1419 },
2717 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1420 },
2718 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1421 },
2719 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1422 },
2720 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1423 },
2721 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1424 },
2722 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1425 },
2723 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1426 },
2724 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1427 },
2725 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1428 },
2726 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1430 },
2727 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1431 },
2728 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1432 },
2729 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1433 },
2730 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1432 },
2731 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1434 },
2732 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1196 },
2733 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1436 },
2734 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1437 },
2733 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1419 },
2734 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1420 },
2735 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1421 },
2736 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1181 },
2737 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1422 },
2738 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1423 },
2739 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1424 },
2740 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1425 },
2741 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1426 },
2742 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1427 },
2743 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1428 },
2744 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1429 },
2745 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1430 },
2746 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1431 },
2747 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1432 },
2748 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1433 },
2749 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1435 },
2750 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1436 },
2751 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1437 },
2752 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1438 },
2753 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1437 },
2754 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1439 },
2755 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1198 },
2756 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1441 },
2757 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1442 },
27352758 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 793 },
2736 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1438 },
2737 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1439 },
2738 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1440 },
2739 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1441 },
2759 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1443 },
2760 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1444 },
2761 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1445 },
2762 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1446 },
27402763 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 447 },
2741 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1442 },
2742 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1443 },
2743 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1205 },
2744 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1444 },
2745 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1445 },
2746 .{ .char = 'F', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1446 },
2747 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1446 },
2748 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1447 },
2749 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1217 },
2750 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1448 },
2751 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1449 },
2752 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1450 },
2753 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1214 },
2754 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1217 },
2755 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1451 },
2756 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1214 },
2757 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1217 },
2758 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1453 },
2759 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 9, .child_index = 1455 },
2760 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1458 },
2761 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1459 },
2762 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1462 },
2763 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1463 },
2764 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1464 },
2765 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 9, .child_index = 1455 },
2766 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1466 },
2767 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 14, .child_index = 1467 },
2768 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1471 },
2769 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1472 },
2770 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1473 },
2771 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1474 },
2772 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1475 },
2773 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1476 },
2774 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1478 },
2775 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
2776 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
2777 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1481 },
2778 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1482 },
2779 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1483 },
2780 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1484 },
2764 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1447 },
2765 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1448 },
2766 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1207 },
2767 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1449 },
2768 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1450 },
2769 .{ .char = 'F', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1451 },
2770 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1451 },
2771 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1452 },
2772 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1219 },
2773 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1453 },
2774 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1454 },
2775 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1455 },
2776 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1216 },
2777 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1219 },
2778 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1456 },
2779 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1216 },
2780 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1219 },
2781 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1458 },
2782 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 9, .child_index = 1460 },
2783 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1463 },
2784 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1464 },
2785 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1467 },
2786 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1468 },
2787 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1469 },
2788 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 9, .child_index = 1460 },
2789 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1471 },
2790 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 14, .child_index = 1472 },
2791 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1476 },
2792 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1477 },
2793 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1478 },
2794 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1479 },
2795 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1480 },
2796 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1481 },
2797 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1483 },
2798 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
2799 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
2800 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1488 },
2801 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1489 },
2802 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1490 },
2803 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1491 },
27812804 .{ .char = 'g', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
27822805 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 695 },
27832806 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2784 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1485 },
2807 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1492 },
27852808 .{ .char = 'j', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 352 },
2786 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1486 },
2787 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1487 },
2788 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1488 },
2789 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
2790 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1295 },
2809 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1493 },
2810 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1494 },
2811 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1495 },
2812 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
2813 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1486 },
27912814 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2792 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1490 },
2793 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1491 },
2794 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1493 },
2795 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1494 },
2796 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1495 },
2797 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1496 },
2798 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1497 },
2799 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1498 },
2800 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1479 },
2801 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1499 },
2815 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1497 },
2816 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1498 },
2817 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1500 },
2818 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1501 },
2819 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1502 },
2820 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1503 },
2821 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1504 },
2822 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 1505 },
2823 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1484 },
2824 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1506 },
28022825 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2803 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1500 },
2804 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1295 },
2805 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1501 },
2806 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
2826 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1507 },
2827 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1486 },
2828 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1508 },
2829 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
28072830 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2808 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1502 },
2809 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1503 },
2810 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1504 },
2811 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
2812 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
2831 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1509 },
2832 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1510 },
2833 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1511 },
2834 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
2835 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
28132836 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 695 },
2814 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1505 },
2815 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1506 },
2816 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
2837 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1512 },
2838 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1513 },
2839 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
28172840 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2818 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1507 },
2819 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1507 },
2820 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
2821 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1510 },
2822 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1511 },
2841 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1514 },
2842 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1514 },
2843 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
2844 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1517 },
2845 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1518 },
28232846 .{ .char = 'e', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2824 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1512 },
2825 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1513 },
2826 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1514 },
2827 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1515 },
2828 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1240 },
2829 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1516 },
2830 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
2847 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1519 },
2848 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1520 },
2849 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1521 },
2850 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1522 },
2851 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1242 },
2852 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1523 },
2853 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1524 },
2854 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
28312855 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2832 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1517 },
2833 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1518 },
2834 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1519 },
2835 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1520 },
2836 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1521 },
2837 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1522 },
2838 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1523 },
2839 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1524 },
2856 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1525 },
2857 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1526 },
2858 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1527 },
2859 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1528 },
2860 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1529 },
2861 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1530 },
2862 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1531 },
2863 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1532 },
28402864 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 447 },
2841 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1525 },
2842 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1526 },
2843 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1527 },
2844 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1528 },
2845 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1529 },
2846 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1512 },
2847 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1530 },
2848 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1531 },
2849 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1295 },
2850 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1479 },
2851 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
2865 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1533 },
2866 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1534 },
2867 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1535 },
2868 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1536 },
2869 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1537 },
2870 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1519 },
2871 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1538 },
2872 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1539 },
2873 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1486 },
2874 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1484 },
2875 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
28522876 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2853 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1240 },
2854 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1533 },
2855 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1534 },
2856 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1535 },
2877 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1242 },
2878 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1541 },
2879 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1542 },
2880 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1543 },
2881 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1544 },
28572882 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 474 },
28582883 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 475 },
2859 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1538 },
2860 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
2861 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1539 },
2862 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1458 },
2863 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
2884 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1547 },
2885 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
2886 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1548 },
2887 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1463 },
2888 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
28642889 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2865 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
2866 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1540 },
2867 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1541 },
2868 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1543 },
2869 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1544 },
2870 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1545 },
2871 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1546 },
2872 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1547 },
2873 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1548 },
2874 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1549 },
2875 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1550 },
2876 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1551 },
2877 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
2890 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
2891 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1549 },
2892 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1550 },
2893 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1552 },
2894 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1553 },
2895 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1554 },
2896 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1555 },
2897 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1556 },
2898 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1557 },
2899 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1558 },
2900 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1559 },
2901 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1560 },
2902 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
28782903 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 352 },
28792904 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2880 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1206 },
2881 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1552 },
2882 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1553 },
2883 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1554 },
2905 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1208 },
2906 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1561 },
2907 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1562 },
2908 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1563 },
28842909 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 285 },
2885 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1556 },
2886 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1557 },
2887 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1558 },
2888 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1559 },
2910 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1565 },
2911 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1566 },
2912 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1567 },
2913 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1568 },
28892914 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 323 },
2890 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
2891 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1560 },
2892 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1561 },
2893 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1562 },
2894 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1564 },
2915 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
2916 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1569 },
2917 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1570 },
2918 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1571 },
2919 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1573 },
28952920 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 486 },
2896 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1565 },
2921 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1574 },
28972922 .{ .char = 'j', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 487 },
2898 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1566 },
2899 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1567 },
2900 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1568 },
2901 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
2902 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1295 },
2923 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1575 },
2924 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1576 },
2925 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1577 },
2926 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
2927 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1486 },
29032928 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2904 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1562 },
2905 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
2906 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1562 },
2907 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1569 },
2929 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1571 },
2930 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
2931 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1571 },
2932 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1578 },
2933 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1579 },
29082934 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 491 },
29092935 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 496 },
29102936 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 314 },
......@@ -2912,1251 +2938,1331 @@ const dafsa = [_]Node{
29122938 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 502 },
29132939 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 503 },
29142940 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 504 },
2915 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1458 },
2916 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1459 },
2917 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1570 },
2918 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1571 },
2919 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1572 },
2920 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1573 },
2921 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1574 },
2922 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1575 },
2923 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1576 },
2924 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1577 },
2941 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1463 },
2942 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1464 },
2943 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1580 },
2944 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1581 },
2945 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1582 },
2946 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1583 },
2947 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1584 },
2948 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1585 },
2949 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1586 },
2950 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1587 },
29252951 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 509 },
29262952 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 510 },
29272953 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 511 },
2928 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1578 },
2929 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1579 },
2930 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1580 },
2931 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 792 },
2932 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1581 },
2933 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1583 },
2934 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1584 },
2935 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1586 },
2936 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1579 },
2937 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1580 },
2938 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1587 },
2939 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1583 },
2940 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1588 },
2941 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1589 },
2942 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1590 },
2943 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 1591 },
2944 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1592 },
2945 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1593 },
2946 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1594 },
2947 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1595 },
2954 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1588 },
2955 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1589 },
2956 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1590 },
2957 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1591 },
2958 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1592 },
2959 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1594 },
2960 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1595 },
2961 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1597 },
2962 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1589 },
2963 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1590 },
2964 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1598 },
2965 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1594 },
2966 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1599 },
2967 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1600 },
2968 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1601 },
2969 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 1602 },
2970 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1603 },
2971 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1604 },
2972 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1605 },
2973 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1606 },
29482974 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2949 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1596 },
2950 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1597 },
2951 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1598 },
2952 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1599 },
2953 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1600 },
2954 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1601 },
2955 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1183 },
2956 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1602 },
2957 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1603 },
2958 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1604 },
2975 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1607 },
2976 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1608 },
2977 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1609 },
2978 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1610 },
2979 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1611 },
2980 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1612 },
2981 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1185 },
2982 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1613 },
2983 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1614 },
2984 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1615 },
29592985 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 276 },
29602986 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
29612987 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 438 },
2962 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1605 },
2963 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1606 },
2964 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1607 },
2965 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1434 },
2966 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1608 },
2967 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1609 },
2968 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1610 },
2988 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1616 },
2989 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1617 },
2990 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1618 },
2991 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1439 },
2992 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1619 },
2993 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
2994 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1621 },
29692995 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 632 },
29702996 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2971 .{ .char = 'I', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1188 },
2972 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1611 },
2973 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1612 },
2974 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1613 },
2975 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1614 },
2976 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1620 },
2977 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1621 },
2997 .{ .char = 'I', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1190 },
2998 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1622 },
2999 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1623 },
3000 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1624 },
3001 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1625 },
3002 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1632 },
3003 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1633 },
29783004 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1000 },
2979 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1622 },
3005 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1634 },
29803006 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1000 },
2981 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1623 },
2982 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1624 },
2983 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1625 },
2984 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1626 },
2985 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1630 },
2986 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1631 },
2987 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1633 },
2988 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1214 },
2989 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1217 },
2990 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
2991 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1479 },
3007 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1635 },
3008 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1636 },
3009 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1637 },
3010 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1638 },
3011 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1642 },
3012 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1643 },
3013 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1645 },
3014 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1216 },
3015 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1219 },
3016 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
3017 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1484 },
29923018 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2993 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1636 },
3019 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1648 },
29943020 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
29953021 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 695 },
29963022 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2997 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1637 },
2998 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1638 },
2999 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1639 },
3000 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1640 },
3001 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1641 },
3002 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1295 },
3003 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
3004 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1479 },
3023 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1649 },
3024 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1650 },
3025 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1651 },
3026 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1652 },
3027 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1653 },
3028 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1486 },
3029 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
3030 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1484 },
30053031 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3006 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1642 },
3007 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1118 },
3008 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1643 },
3009 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1644 },
3032 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1654 },
3033 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1119 },
3034 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1655 },
3035 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1656 },
30103036 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 262 },
3011 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1647 },
3037 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1660 },
30123038 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 555 },
3013 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1648 },
3014 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1499 },
3039 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1661 },
3040 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1506 },
30153041 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3016 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1649 },
3017 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1650 },
3018 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1651 },
3019 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1278 },
3020 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 323 },
3021 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1652 },
3022 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1653 },
3023 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1654 },
3024 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1655 },
3025 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1657 },
3026 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1658 },
3027 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1660 },
3028 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1661 },
3029 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1662 },
3030 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1663 },
3031 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1664 },
3032 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1665 },
3033 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1666 },
3034 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1667 },
3035 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
3036 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1668 },
3037 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
3038 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1669 },
3039 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1670 },
3040 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
3041 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1671 },
3042 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
3043 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1672 },
3042 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
30443043 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3045 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1673 },
3046 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1674 },
3047 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
3044 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1662 },
3045 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1663 },
3046 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1664 },
3047 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1280 },
3048 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 323 },
3049 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1665 },
3050 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1666 },
3051 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1667 },
3052 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1668 },
3053 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1670 },
3054 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1671 },
3055 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1673 },
3056 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1674 },
30483057 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1675 },
3049 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1676 },
3050 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1677 },
3051 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
3052 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1678 },
3058 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1676 },
3059 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1677 },
3060 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1678 },
3061 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 1679 },
3062 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1680 },
3063 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
3064 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1681 },
3065 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
3066 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1682 },
3067 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1683 },
3068 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
3069 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1684 },
3070 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
3071 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1685 },
3072 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3073 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1686 },
3074 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1687 },
3075 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
3076 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1688 },
3077 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1689 },
3078 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1690 },
3079 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
3080 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1691 },
3081 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1692 },
30533082 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3054 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1679 },
3083 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1693 },
30553084 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 319 },
3056 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1680 },
3057 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1681 },
3058 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1682 },
3059 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1683 },
3060 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1684 },
3061 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1685 },
3062 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1686 },
3063 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1687 },
3085 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1694 },
3086 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1695 },
3087 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1696 },
3088 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1697 },
3089 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1698 },
3090 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1699 },
3091 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1700 },
3092 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1701 },
30643093 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 566 },
3065 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1688 },
3066 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1295 },
3067 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
3068 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1689 },
3069 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1690 },
3094 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1702 },
3095 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1486 },
3096 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
3097 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1703 },
3098 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1704 },
3099 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1705 },
30703100 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 572 },
30713101 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 281 },
3072 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1691 },
3073 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1692 },
3102 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1706 },
3103 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1707 },
30743104 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 225 },
3075 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1693 },
3076 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1694 },
3077 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1695 },
3078 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1696 },
3079 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1697 },
3080 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1698 },
3081 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1699 },
3082 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1700 },
3083 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1701 },
3084 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1702 },
3085 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1703 },
3086 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1704 },
3087 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1705 },
3088 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1706 },
3089 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1707 },
3090 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1708 },
3091 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1709 },
3092 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1710 },
3093 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1711 },
3094 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1712 },
3095 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1713 },
3096 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1714 },
3097 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1458 },
3098 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1717 },
3099 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1719 },
3100 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1721 },
3101 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1722 },
3102 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1723 },
3103 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1724 },
3104 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1725 },
3105 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1669 },
3106 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1726 },
3107 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
3108 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1727 },
3109 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1728 },
3110 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1729 },
3111 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1730 },
3112 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1731 },
3113 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1732 },
3114 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
3115 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1734 },
3105 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1708 },
3106 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1709 },
3107 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1710 },
3108 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1711 },
3109 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1712 },
3110 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1713 },
3111 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1714 },
3112 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1715 },
3113 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1716 },
3114 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1717 },
3115 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1718 },
3116 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1719 },
3117 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1720 },
3118 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1721 },
3119 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1722 },
3120 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1723 },
3121 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1724 },
3122 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1725 },
3123 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1726 },
3124 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1727 },
3125 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1728 },
3126 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1729 },
3127 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1463 },
3128 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1732 },
3129 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1734 },
3130 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1736 },
3131 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1737 },
3132 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1738 },
3133 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1739 },
3134 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1687 },
3135 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1740 },
3136 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1682 },
3137 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1741 },
3138 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
3139 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1742 },
3140 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1743 },
3141 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1744 },
3142 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1745 },
3143 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1746 },
3144 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1747 },
3145 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1748 },
3146 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1749 },
3147 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1750 },
31163148 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 236 },
31173149 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 857 },
3118 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1735 },
3150 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1751 },
31193151 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 863 },
3120 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1736 },
3152 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1752 },
31213153 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 867 },
3122 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1737 },
3123 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1736 },
3124 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1738 },
3125 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1740 },
3126 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 1741 },
3127 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1742 },
3128 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1743 },
3129 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1744 },
3130 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1745 },
3131 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1746 },
3132 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1747 },
3133 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1748 },
3154 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1753 },
3155 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1752 },
3156 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1754 },
3157 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1756 },
3158 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 1757 },
3159 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1758 },
3160 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1759 },
3161 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1760 },
3162 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1761 },
3163 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1762 },
3164 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1763 },
3165 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1764 },
31343166 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 567 },
3135 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1749 },
3136 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1750 },
3167 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1765 },
3168 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1766 },
31373169 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
31383170 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
31393171 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3140 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1751 },
3141 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1752 },
3142 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1753 },
3143 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1754 },
3144 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1755 },
3145 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1756 },
3172 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1767 },
3173 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1768 },
3174 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1769 },
3175 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1770 },
3176 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1771 },
3177 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1772 },
31463178 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 569 },
3147 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1757 },
3148 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1208 },
3149 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1758 },
3150 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1760 },
3151 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1762 },
3179 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1773 },
3180 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1210 },
3181 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1774 },
3182 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1776 },
3183 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1778 },
31523184 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 572 },
3153 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1763 },
3185 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1779 },
3186 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1780 },
31543187 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 649 },
3155 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1764 },
3188 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1782 },
31563189 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 641 },
3157 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1765 },
3158 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1766 },
3159 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1767 },
3160 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1768 },
3161 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1769 },
3162 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1771 },
3163 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1772 },
3164 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1773 },
3165 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1774 },
3166 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1775 },
3167 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1772 },
3168 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1776 },
3169 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1778 },
3170 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1778 },
3171 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1779 },
3172 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1780 },
3173 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1781 },
3174 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1783 },
3175 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1784 },
3176 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1785 },
3177 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1786 },
3178 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1787 },
3190 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1783 },
3191 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1784 },
3192 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1785 },
3193 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1786 },
3194 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1787 },
3195 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1789 },
3196 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1790 },
3197 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1791 },
3198 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1792 },
3199 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1793 },
3200 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1790 },
3201 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1794 },
3202 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1796 },
3203 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1796 },
3204 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1797 },
3205 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1798 },
3206 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1799 },
3207 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1801 },
3208 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1802 },
3209 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1804 },
3210 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1805 },
3211 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1806 },
31793212 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 632 },
3180 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1788 },
3181 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
3182 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1789 },
3183 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1790 },
3184 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1791 },
3185 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1792 },
3186 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1793 },
3187 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1794 },
3188 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1795 },
3189 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1796 },
3190 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1797 },
3213 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1807 },
3214 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
3215 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3216 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1808 },
3217 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1809 },
3218 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1810 },
3219 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1811 },
3220 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1812 },
3221 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1813 },
3222 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1814 },
3223 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1815 },
3224 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1816 },
31913225 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3192 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1798 },
3226 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1817 },
31933227 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 236 },
31943228 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3195 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1799 },
3196 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1800 },
3197 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1801 },
3198 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1802 },
3199 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1804 },
3200 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1805 },
3201 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1806 },
3202 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1797 },
3203 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1807 },
3204 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1808 },
3205 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1809 },
3206 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1810 },
3207 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1811 },
3208 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1812 },
3209 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1813 },
3210 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1814 },
3211 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1815 },
3212 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1816 },
3213 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1817 },
3214 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1818 },
3215 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1819 },
3216 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1820 },
3217 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1752 },
3218 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1821 },
3219 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1823 },
3220 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1824 },
3221 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1825 },
3222 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1826 },
3223 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
3224 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
3225 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1827 },
3226 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1828 },
3227 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1828 },
3228 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1829 },
3229 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1830 },
3230 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1831 },
3231 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1832 },
3232 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1833 },
3233 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1834 },
3234 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1835 },
3235 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1836 },
3236 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1837 },
3237 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1838 },
3238 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1278 },
3239 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1839 },
3240 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1840 },
3241 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1841 },
3242 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1842 },
3243 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1843 },
3244 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1844 },
3245 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1845 },
3246 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
3247 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1674 },
3248 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1846 },
3249 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1848 },
3250 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
3229 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1818 },
3230 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1819 },
3231 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1820 },
3232 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1821 },
3233 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1823 },
3234 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1824 },
3235 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 1825 },
3236 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1816 },
3237 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1826 },
3238 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1827 },
3239 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1828 },
3240 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1829 },
3241 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1830 },
3242 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1831 },
3243 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1832 },
3244 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1833 },
3245 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1834 },
3246 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1835 },
3247 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1836 },
3248 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1837 },
3249 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1838 },
3250 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1839 },
3251 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1840 },
3252 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1768 },
3253 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1841 },
3254 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1843 },
3255 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1844 },
3256 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1845 },
3257 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1846 },
3258 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
3259 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
3260 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1847 },
3261 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1848 },
3262 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1849 },
3263 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1849 },
3264 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1850 },
3265 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1851 },
3266 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1852 },
3267 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1853 },
3268 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1854 },
3269 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1855 },
3270 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1856 },
3271 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1857 },
3272 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1858 },
3273 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1859 },
3274 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1280 },
3275 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1860 },
3276 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1861 },
3277 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1862 },
3278 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1863 },
3279 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1864 },
3280 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1865 },
3281 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1866 },
3282 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
3283 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1687 },
3284 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1867 },
3285 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1869 },
3286 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
32513287 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3252 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1458 },
3253 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1327 },
3254 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1849 },
3255 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
3256 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1850 },
3257 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1851 },
3288 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1463 },
3289 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1331 },
3290 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1870 },
3291 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
3292 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1871 },
3293 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1872 },
32583294 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 287 },
3259 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1852 },
3295 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1873 },
32603296 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 419 },
3261 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1855 },
3262 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1856 },
3263 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1857 },
3264 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1858 },
3265 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1859 },
3266 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1860 },
3267 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1861 },
3268 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1862 },
3269 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1863 },
3297 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1876 },
3298 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1877 },
3299 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1878 },
3300 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1879 },
3301 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1880 },
3302 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1881 },
3303 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1882 },
3304 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1883 },
3305 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1884 },
3306 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1885 },
32703307 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 448 },
3271 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1864 },
3272 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1865 },
3273 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1866 },
3274 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1867 },
3275 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1868 },
3276 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 1874 },
3277 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1885 },
3278 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1886 },
3279 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1887 },
3280 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1888 },
3281 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1889 },
3282 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1890 },
3283 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1891 },
3308 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1886 },
3309 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1887 },
3310 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1888 },
3311 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1889 },
3312 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1890 },
3313 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 1896 },
3314 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1907 },
3315 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1908 },
3316 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1909 },
3317 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1910 },
3318 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1911 },
3319 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1912 },
3320 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1913 },
32843321 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 657 },
3285 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1892 },
3286 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1893 },
3322 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1914 },
3323 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1915 },
32873324 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 571 },
3288 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1894 },
3289 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1895 },
3290 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1896 },
3291 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1897 },
3292 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1898 },
3325 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1916 },
3326 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1917 },
3327 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1918 },
3328 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1919 },
3329 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1920 },
32933330 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 448 },
32943331 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 448 },
32953332 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 453 },
32963333 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 447 },
32973334 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 510 },
3298 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1899 },
3299 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1900 },
3300 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1901 },
3301 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1902 },
3302 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1903 },
3303 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1904 },
3304 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1775 },
3305 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1905 },
3306 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1906 },
3307 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1775 },
3308 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1907 },
3309 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1908 },
3310 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1905 },
3311 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1907 },
3312 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1905 },
3313 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1776 },
3314 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1909 },
3315 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1836 },
3316 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1910 },
3335 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1921 },
3336 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1922 },
3337 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1923 },
3338 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1924 },
3339 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1925 },
3340 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1926 },
3341 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1927 },
3342 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1928 },
3343 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1793 },
3344 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1929 },
3345 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1930 },
3346 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1793 },
3347 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1931 },
3348 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1932 },
3349 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1929 },
3350 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1931 },
3351 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1929 },
3352 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1794 },
3353 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1933 },
3354 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1857 },
3355 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1934 },
33173356 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 281 },
3318 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1911 },
3319 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1913 },
3320 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1914 },
3357 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1935 },
3358 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1937 },
3359 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1938 },
3360 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1939 },
33213361 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 301 },
3322 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1917 },
3362 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1942 },
33233363 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3324 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1918 },
3325 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1919 },
3326 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1920 },
3327 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1921 },
3328 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1922 },
3329 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1923 },
3330 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1924 },
3331 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1925 },
3364 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1943 },
3365 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1944 },
3366 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1945 },
3367 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1946 },
3368 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1947 },
3369 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1948 },
3370 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1949 },
3371 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1950 },
33323372 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3333 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1926 },
3334 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1927 },
3335 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1928 },
3336 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1929 },
3337 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1930 },
3338 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1931 },
3339 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1932 },
3340 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1933 },
3341 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1934 },
3342 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1935 },
3343 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1936 },
3344 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1513 },
3345 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1937 },
3346 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1938 },
3347 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1939 },
3373 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1951 },
3374 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1952 },
3375 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1953 },
3376 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1954 },
3377 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1955 },
3378 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1956 },
3379 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1957 },
3380 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1958 },
3381 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 1959 },
3382 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1960 },
3383 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1961 },
3384 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1520 },
3385 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1962 },
3386 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1963 },
3387 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1964 },
33483388 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 698 },
3349 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1940 },
3350 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1941 },
3351 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1241 },
3352 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1942 },
3353 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1943 },
3389 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1965 },
3390 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1966 },
3391 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1243 },
3392 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1967 },
3393 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1968 },
3394 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1969 },
33543395 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 998 },
3355 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1944 },
3356 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1945 },
3357 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1946 },
3396 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1970 },
3397 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1971 },
3398 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1972 },
33583399 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
3359 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1947 },
3360 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1525 },
3361 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1948 },
3362 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1949 },
3363 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1951 },
3364 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1318 },
3365 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1952 },
3366 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1953 },
3367 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1954 },
3368 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1955 },
3369 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1956 },
3370 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1957 },
3400 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1973 },
3401 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1533 },
3402 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1974 },
3403 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1975 },
3404 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1980 },
3405 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1982 },
3406 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1321 },
3407 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1983 },
3408 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1984 },
3409 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1985 },
3410 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1986 },
3411 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1987 },
3412 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1988 },
33713413 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 486 },
3372 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1958 },
3373 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1959 },
3374 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1960 },
3375 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1961 },
3376 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1962 },
3377 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1963 },
3378 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1964 },
3379 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1965 },
3380 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1952 },
3381 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1969 },
3382 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1970 },
3383 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1971 },
3384 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
3385 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1280 },
3386 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1924 },
3387 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1489 },
3414 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1989 },
3415 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1990 },
3416 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1991 },
3417 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1992 },
3418 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1993 },
3419 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1994 },
3420 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1995 },
3421 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1996 },
3422 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1983 },
3423 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2000 },
3424 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2001 },
3425 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2002 },
3426 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
3427 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1282 },
3428 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1949 },
3429 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1496 },
33883430 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3389 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1972 },
3390 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1973 },
3391 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1974 },
3392 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1975 },
3393 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1976 },
3394 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1977 },
3395 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1978 },
3396 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1979 },
3397 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1980 },
3398 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1981 },
3431 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2003 },
3432 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2004 },
3433 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2005 },
3434 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2006 },
3435 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2007 },
3436 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2008 },
3437 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2009 },
3438 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2010 },
3439 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2011 },
3440 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2012 },
3441 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2013 },
33993442 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3400 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1982 },
3401 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1983 },
3402 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1984 },
3403 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1579 },
3404 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1580 },
3405 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1587 },
3406 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1985 },
3407 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1583 },
3408 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1588 },
3409 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1986 },
3410 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1988 },
3443 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2014 },
3444 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2015 },
3445 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2016 },
3446 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1589 },
3447 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1590 },
3448 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1598 },
3449 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2017 },
3450 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1594 },
3451 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1599 },
3452 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2018 },
3453 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2020 },
34113454 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 791 },
3412 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 792 },
3455 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 792 },
34133456 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 794 },
34143457 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 795 },
34153458 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 797 },
34163459 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 798 },
3417 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1989 },
3418 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1586 },
3460 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2021 },
3461 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1597 },
34193462 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 804 },
3420 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1991 },
3421 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1998 },
3422 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1999 },
3423 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2000 },
3463 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 2023 },
3464 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2030 },
3465 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2031 },
3466 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2032 },
34243467 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3425 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2001 },
3426 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2002 },
3427 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2003 },
3428 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2004 },
3429 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2005 },
3430 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2006 },
3431 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2007 },
3432 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2008 },
3468 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2033 },
3469 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2034 },
3470 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2035 },
3471 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2036 },
3472 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2037 },
3473 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2038 },
3474 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2039 },
3475 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2040 },
34333476 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 791 },
34343477 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3435 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2009 },
3436 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2010 },
3437 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2011 },
3438 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2012 },
3439 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2013 },
3440 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2014 },
3441 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2015 },
3442 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2014 },
3443 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2014 },
3444 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2016 },
3445 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2017 },
3446 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2018 },
3447 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2019 },
3448 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2020 },
3449 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1519 },
3450 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2021 },
3451 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2022 },
3452 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2023 },
3453 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2024 },
3454 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2025 },
3478 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 555 },
3479 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 555 },
3480 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2041 },
3481 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2042 },
3482 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2043 },
3483 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2044 },
3484 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2045 },
3485 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2046 },
3486 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2047 },
3487 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2046 },
3488 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2046 },
3489 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2048 },
3490 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2049 },
3491 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2050 },
3492 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2051 },
3493 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2052 },
3494 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2053 },
3495 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1527 },
3496 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2054 },
3497 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2055 },
3498 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2056 },
3499 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2057 },
3500 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2058 },
34553501 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 503 },
3456 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2026 },
3457 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2027 },
3458 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2028 },
3459 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2029 },
3460 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
3461 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2030 },
3462 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2031 },
3502 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2059 },
3503 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2060 },
3504 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2061 },
3505 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2062 },
3506 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
3507 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2063 },
3508 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2064 },
34633509 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 281 },
3464 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2032 },
3510 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2065 },
34653511 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 554 },
3466 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2033 },
3467 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2034 },
3468 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2035 },
3469 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 2036 },
3470 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2037 },
3471 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2038 },
3472 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2039 },
3473 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2040 },
3474 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2041 },
3475 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2042 },
3512 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2066 },
3513 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2067 },
3514 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2068 },
3515 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 2069 },
3516 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2070 },
3517 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2071 },
3518 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2072 },
3519 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2073 },
3520 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2074 },
3521 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2075 },
34763522 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 419 },
3477 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2043 },
3478 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2044 },
3479 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2045 },
3480 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2046 },
3481 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2047 },
3482 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2048 },
3483 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2049 },
3484 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2050 },
3485 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2051 },
3486 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2052 },
3487 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2053 },
3488 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2054 },
3489 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2055 },
3490 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2056 },
3491 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2057 },
3492 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1746 },
3493 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2058 },
3494 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2059 },
3495 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2060 },
3496 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2062 },
3497 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2063 },
3498 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2066 },
3499 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2067 },
3500 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1758 },
3501 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 2068 },
3523 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2076 },
3524 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2077 },
3525 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2078 },
3526 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2079 },
3527 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2080 },
3528 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2081 },
3529 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2082 },
3530 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2083 },
3531 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2084 },
3532 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2085 },
3533 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2086 },
3534 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1594 },
3535 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2087 },
3536 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2089 },
3537 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2090 },
3538 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2091 },
3539 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2092 },
3540 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2093 },
3541 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2094 },
3542 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2095 },
3543 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2096 },
3544 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1762 },
3545 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2097 },
3546 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2098 },
3547 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2099 },
3548 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2101 },
3549 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2102 },
3550 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2105 },
3551 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2106 },
3552 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1774 },
3553 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 2107 },
35023554 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 572 },
35033555 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 649 },
3504 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2071 },
3505 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2072 },
3506 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1925 },
3556 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2110 },
3557 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2111 },
3558 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1950 },
35073559 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 352 },
3508 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2073 },
3509 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2074 },
3510 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2075 },
3511 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2076 },
3512 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1985 },
3513 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2077 },
3514 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1661 },
3515 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2078 },
3516 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2079 },
3517 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2080 },
3518 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2081 },
3519 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2082 },
3560 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2112 },
3561 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2113 },
3562 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2114 },
3563 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2115 },
3564 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2017 },
3565 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2116 },
3566 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1674 },
3567 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2117 },
3568 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2118 },
3569 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2119 },
3570 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2120 },
3571 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2121 },
3572 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2122 },
35203573 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 236 },
35213574 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 851 },
35223575 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 851 },
35233576 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 854 },
35243577 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 864 },
35253578 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 865 },
3526 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 2083 },
3527 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1760 },
3528 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2085 },
3529 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2086 },
3530 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2087 },
3531 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2088 },
3532 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2089 },
3533 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2090 },
3534 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2091 },
3535 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2092 },
3536 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2093 },
3537 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2094 },
3538 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2095 },
3539 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2096 },
3540 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2097 },
3541 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2098 },
3542 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2099 },
3543 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2100 },
3544 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2101 },
3579 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 2123 },
3580 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1776 },
3581 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2125 },
3582 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2126 },
3583 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2127 },
3584 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2128 },
3585 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2129 },
3586 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2130 },
3587 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2131 },
3588 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2132 },
3589 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2133 },
3590 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2134 },
3591 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2135 },
3592 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2136 },
3593 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2137 },
3594 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2138 },
3595 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2139 },
3596 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2140 },
3597 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2141 },
35453598 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 476 },
3546 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2102 },
3547 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2103 },
3548 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2104 },
3549 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2105 },
3550 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2014 },
3551 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2106 },
3599 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2142 },
3600 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2143 },
3601 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2144 },
3602 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2145 },
3603 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2046 },
3604 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2146 },
35523605 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 447 },
3553 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2107 },
3554 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2108 },
3555 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2109 },
3556 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2110 },
3557 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2111 },
3558 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2112 },
3559 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2113 },
3560 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2114 },
3561 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2115 },
3562 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2116 },
3606 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2147 },
3607 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2148 },
3608 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2149 },
3609 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2150 },
3610 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2151 },
3611 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2152 },
3612 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2153 },
3613 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2154 },
3614 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2155 },
3615 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2156 },
3616 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2157 },
35633617 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 281 },
3564 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2117 },
3565 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2118 },
3566 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2119 },
3618 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2158 },
3619 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2159 },
3620 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2160 },
35673621 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 568 },
3568 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2120 },
3569 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2121 },
3570 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2122 },
3571 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 2123 },
3572 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2124 },
3573 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2125 },
3622 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2161 },
3623 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2162 },
3624 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2163 },
3625 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 2164 },
3626 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2165 },
3627 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2166 },
35743628 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
3575 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2126 },
3629 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2167 },
35763630 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 437 },
3577 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2127 },
3578 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2128 },
3631 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2168 },
3632 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2169 },
3633 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2170 },
35793634 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 448 },
3580 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2129 },
3581 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1823 },
3582 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2130 },
3583 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1423 },
3584 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2044 },
3585 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2131 },
3586 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2132 },
3587 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2133 },
3588 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1479 },
3589 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1689 },
3590 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2134 },
3591 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2135 },
3592 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2136 },
3593 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2137 },
3594 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2139 },
3635 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2171 },
3636 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1843 },
3637 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2172 },
3638 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1428 },
3639 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2078 },
3640 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2173 },
3641 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2174 },
3642 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2175 },
3643 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2176 },
3644 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1752 },
3645 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2177 },
3646 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2178 },
3647 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2179 },
3648 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1484 },
3649 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1703 },
3650 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2180 },
3651 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2181 },
3652 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2182 },
3653 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2183 },
3654 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2185 },
35953655 .{ .char = 'g', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
35963656 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 695 },
3597 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2140 },
3598 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2141 },
3599 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2142 },
3600 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2143 },
3601 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2145 },
3602 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2146 },
3603 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2147 },
3604 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2148 },
3657 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2186 },
3658 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2187 },
3659 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2188 },
3660 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2189 },
3661 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2191 },
3662 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2192 },
3663 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2193 },
3664 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2194 },
36053665 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
3606 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2149 },
3607 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2150 },
3608 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2151 },
3609 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2152 },
3610 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1976 },
3611 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2153 },
3612 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2154 },
3613 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2155 },
3614 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2156 },
3615 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2157 },
3616 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2162 },
3617 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2112 },
3618 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2166 },
3619 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2166 },
3620 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2167 },
3666 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2195 },
3667 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2196 },
3668 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2197 },
3669 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2198 },
3670 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2007 },
3671 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2199 },
3672 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2200 },
3673 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2201 },
3674 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2202 },
3675 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2203 },
3676 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2209 },
3677 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2214 },
3678 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2153 },
3679 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2218 },
3680 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2218 },
3681 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2219 },
36213682 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 974 },
3622 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2168 },
3623 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1760 },
3624 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2086 },
3683 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2220 },
3684 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1776 },
3685 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2126 },
36253686 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 974 },
3626 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2169 },
3687 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2221 },
36273688 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 974 },
3628 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2170 },
3629 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2171 },
3630 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2172 },
3631 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2173 },
3689 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2222 },
3690 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2223 },
3691 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2224 },
3692 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2225 },
36323693 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3633 .{ .char = 'E', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2174 },
3634 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2175 },
3635 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 2176 },
3694 .{ .char = 'E', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2226 },
3695 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2227 },
3696 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 2228 },
36363697 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3637 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2181 },
3638 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2182 },
3639 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2183 },
3640 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2184 },
3641 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2185 },
3642 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2186 },
3643 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2187 },
3644 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2188 },
3645 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2189 },
3646 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2190 },
3647 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2162 },
3648 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2191 },
3649 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2192 },
3698 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2233 },
3699 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2234 },
3700 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2235 },
3701 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2236 },
3702 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2237 },
3703 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2238 },
3704 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2239 },
3705 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2240 },
3706 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2241 },
3707 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2242 },
3708 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2243 },
3709 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2214 },
3710 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2244 },
3711 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2245 },
36503712 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
3651 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2193 },
3652 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2194 },
3653 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2195 },
3654 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2196 },
3655 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2197 },
3656 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2198 },
3657 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2199 },
3658 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 2200 },
3659 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2201 },
3660 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2202 },
3661 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2203 },
3662 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2204 },
3663 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2205 },
3664 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1945 },
3665 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2206 },
3666 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2207 },
3667 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2208 },
3668 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2209 },
3669 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2210 },
3670 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2211 },
3671 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2212 },
3672 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2213 },
3673 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2214 },
3674 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2215 },
3675 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2216 },
3676 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2217 },
3677 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2218 },
3678 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2219 },
3679 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2220 },
3680 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2221 },
3681 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2145 },
3682 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2222 },
3683 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2222 },
3684 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2162 },
3685 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2149 },
3686 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2223 },
3687 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2224 },
3713 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2246 },
3714 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2247 },
3715 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2248 },
3716 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2249 },
3717 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2250 },
3718 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2251 },
3719 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2252 },
3720 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 2253 },
3721 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2254 },
3722 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2255 },
3723 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2256 },
3724 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2257 },
3725 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2258 },
3726 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2259 },
3727 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1971 },
3728 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2260 },
3729 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2261 },
3730 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2262 },
3731 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2263 },
3732 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2264 },
3733 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2265 },
3734 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2266 },
3735 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2267 },
3736 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2268 },
3737 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2269 },
3738 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2270 },
3739 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2271 },
3740 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2272 },
3741 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2273 },
3742 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2274 },
3743 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2275 },
3744 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2276 },
3745 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2277 },
3746 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2278 },
3747 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2279 },
3748 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2191 },
3749 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2280 },
3750 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2280 },
3751 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2214 },
3752 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2195 },
3753 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2281 },
3754 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2282 },
36883755 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3689 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2225 },
3690 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2226 },
3756 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2283 },
3757 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2284 },
36913758 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3692 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1758 },
3693 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1760 },
3759 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1774 },
3760 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1776 },
3761 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1778 },
3762 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 572 },
3763 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1779 },
3764 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 649 },
3765 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1774 },
3766 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1776 },
36943767 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 572 },
3695 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1763 },
3768 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1779 },
36963769 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 649 },
36973770 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 632 },
3698 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1788 },
3771 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1807 },
36993772 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
37003773 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
37013774 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 974 },
3702 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2166 },
3775 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2218 },
37033776 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 974 },
3704 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2227 },
3705 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2228 },
3777 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2285 },
3778 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2286 },
37063779 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 314 },
3707 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1421 },
3708 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2229 },
3709 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2230 },
3710 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2231 },
3780 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1426 },
3781 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2287 },
3782 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2288 },
3783 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2289 },
37113784 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 632 },
37123785 .{ .char = '8', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3713 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2232 },
3714 .{ .char = 'P', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2038 },
3715 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2233 },
3716 .{ .char = 'M', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2234 },
3717 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2235 },
3718 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2236 },
3786 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2290 },
3787 .{ .char = 'P', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2071 },
3788 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2291 },
3789 .{ .char = 'M', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2292 },
3790 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2293 },
3791 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2294 },
37193792 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
3720 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2237 },
3721 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2238 },
3722 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2239 },
3723 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2240 },
3724 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2241 },
3725 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2242 },
3726 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2243 },
3727 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2244 },
3728 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2245 },
3793 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2295 },
3794 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2296 },
3795 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2297 },
3796 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2298 },
3797 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2299 },
3798 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2300 },
3799 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2301 },
3800 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2302 },
3801 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2303 },
3802 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2304 },
37293803 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 649 },
3730 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2246 },
3804 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2305 },
37313805 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
3732 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2247 },
3733 .{ .char = 'j', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2248 },
3734 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2249 },
3735 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 2250 },
3736 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2251 },
3737 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2206 },
3738 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2252 },
3739 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2253 },
3740 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2254 },
3806 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2306 },
3807 .{ .char = 'j', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2307 },
3808 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2308 },
3809 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 2309 },
3810 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2310 },
3811 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2260 },
3812 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2311 },
3813 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2312 },
3814 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2313 },
3815 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2314 },
37413816 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 566 },
3742 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2255 },
3743 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1753 },
3744 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2256 },
3745 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2257 },
3746 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2258 },
3747 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2259 },
3748 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2260 },
3749 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2237 },
3750 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2261 },
3751 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2262 },
3752 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2263 },
3753 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2264 },
3754 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2265 },
3755 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2266 },
3756 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2267 },
3757 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2268 },
3758 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2269 },
3759 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2270 },
3760 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2271 },
3761 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2272 },
3762 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2273 },
3763 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2274 },
3764 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2275 },
3765 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2276 },
3817 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2315 },
3818 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2316 },
3819 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 566 },
3820 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2260 },
3821 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2317 },
3822 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1769 },
3823 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2318 },
3824 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2319 },
3825 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2320 },
3826 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2321 },
3827 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2322 },
3828 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2295 },
3829 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2323 },
3830 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2324 },
3831 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2325 },
3832 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2326 },
3833 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2327 },
3834 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2328 },
3835 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2329 },
3836 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2330 },
3837 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2331 },
3838 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2332 },
3839 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2333 },
3840 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2334 },
3841 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2335 },
3842 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2336 },
3843 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2337 },
3844 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2338 },
37663845 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 632 },
3767 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1430 },
3768 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2277 },
3769 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2278 },
3846 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1435 },
3847 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2339 },
3848 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2340 },
37703849 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3771 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2279 },
3850 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2341 },
37723851 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3773 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2280 },
3774 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2281 },
3775 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2282 },
3776 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2283 },
3777 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2284 },
3778 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2285 },
3779 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2286 },
3852 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2342 },
3853 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2343 },
3854 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2344 },
3855 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2345 },
3856 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2346 },
3857 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2347 },
3858 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2348 },
3859 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2349 },
37803860 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3781 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2288 },
3782 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2289 },
3783 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1546 },
3784 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2290 },
3785 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 2291 },
3786 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2303 },
3787 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1295 },
3788 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2304 },
3789 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2305 },
3790 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2306 },
3861 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2351 },
3862 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2352 },
3863 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1555 },
3864 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2353 },
3865 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 2354 },
3866 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2366 },
3867 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1486 },
3868 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2367 },
3869 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2368 },
3870 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2369 },
3871 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2370 },
3872 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2371 },
3873 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2372 },
37913874 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
3792 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2307 },
3793 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2308 },
3794 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2310 },
3795 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2311 },
3796 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2312 },
3797 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2313 },
3798 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2314 },
3799 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2315 },
3800 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2316 },
3801 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2317 },
3802 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2202 },
3875 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2373 },
3876 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2374 },
3877 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2376 },
3878 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2377 },
3879 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2378 },
3880 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2379 },
3881 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2380 },
3882 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2381 },
3883 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2382 },
3884 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2383 },
3885 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2255 },
38033886 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 561 },
3804 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2319 },
3805 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2320 },
3806 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2171 },
3807 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2321 },
3808 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2322 },
3809 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2323 },
3810 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2324 },
3811 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2326 },
3812 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1434 },
3813 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2327 },
3814 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2328 },
3815 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2329 },
3816 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2330 },
3817 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2331 },
3818 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2332 },
3819 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2333 },
3820 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2334 },
3821 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2231 },
3887 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2385 },
3888 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2386 },
3889 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2223 },
3890 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2387 },
3891 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2388 },
3892 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2389 },
3893 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2390 },
3894 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2392 },
3895 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1439 },
3896 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2393 },
3897 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2394 },
3898 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2395 },
3899 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2396 },
3900 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2397 },
3901 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2344 },
3902 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2398 },
3903 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2399 },
3904 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2400 },
3905 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2289 },
38223906 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
38233907 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 486 },
3824 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2335 },
3825 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2336 },
3826 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2337 },
3827 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2342 },
3828 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 2343 },
3829 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2346 },
3830 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2347 },
3831 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2349 },
3832 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2350 },
3833 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2352 },
3834 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2353 },
3835 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2354 },
3836 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2356 },
3837 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2359 },
3838 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2361 },
3839 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2362 },
3840 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2363 },
3841 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2364 },
3842 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2365 },
3843 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1583 },
3844 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1588 },
3845 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2366 },
3908 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2401 },
3909 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2402 },
3910 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2403 },
3911 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2408 },
3912 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 2409 },
3913 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2414 },
3914 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 2415 },
3915 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2418 },
3916 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 2420 },
3917 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2422 },
3918 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2423 },
3919 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2424 },
3920 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2426 },
3921 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2429 },
3922 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2431 },
3923 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2432 },
3924 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2433 },
3925 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2434 },
3926 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2435 },
3927 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2436 },
3928 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2437 },
3929 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2438 },
3930 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1594 },
3931 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1599 },
3932 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2439 },
38463933 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 450 },
3847 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2367 },
3848 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2368 },
3849 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2369 },
3850 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2370 },
3851 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2371 },
3852 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2374 },
3934 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2440 },
3935 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2441 },
3936 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2442 },
3937 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2443 },
3938 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2444 },
3939 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2447 },
38533940 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3854 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2375 },
3855 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2376 },
3856 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2377 },
3857 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2378 },
3858 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2379 },
3859 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 2380 },
3860 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2381 },
3861 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2382 },
3862 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2383 },
3863 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2384 },
3864 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2385 },
3865 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2386 },
3866 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2387 },
3867 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2388 },
3868 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2389 },
3869 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2390 },
3941 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2448 },
3942 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2449 },
3943 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2450 },
3944 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2451 },
3945 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2452 },
3946 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 2453 },
3947 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2454 },
3948 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2455 },
3949 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2456 },
3950 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2457 },
3951 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2458 },
3952 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2459 },
3953 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2460 },
3954 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2461 },
3955 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2462 },
3956 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2463 },
38703957 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 447 },
3871 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2391 },
3958 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2464 },
38723959 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 335 },
3873 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2392 },
3874 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2393 },
3875 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2394 },
3876 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2395 },
3877 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2396 },
3878 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2397 },
3960 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2465 },
3961 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2466 },
3962 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2467 },
3963 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2468 },
3964 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2469 },
3965 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2470 },
38793966 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 706 },
3880 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2398 },
3881 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2400 },
3882 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2401 },
3883 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2402 },
3884 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2404 },
3885 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2405 },
3886 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2406 },
3887 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2407 },
3888 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2408 },
3967 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2471 },
3968 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2472 },
3969 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2471 },
3970 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2474 },
3971 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2475 },
3972 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2476 },
3973 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2478 },
3974 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2479 },
3975 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2480 },
3976 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2481 },
3977 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2482 },
3978 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2483 },
3979 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2484 },
38893980 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 567 },
3890 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2410 },
3891 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2411 },
3981 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2486 },
3982 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2487 },
38923983 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 276 },
3893 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2412 },
3894 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2411 },
3895 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2413 },
3896 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2414 },
3897 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2415 },
3898 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2416 },
3899 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2417 },
3900 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2418 },
3901 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2419 },
3902 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2420 },
3903 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2421 },
3904 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2422 },
3905 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2423 },
3906 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2424 },
3907 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2425 },
3908 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2426 },
3909 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2370 },
3910 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2427 },
3911 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2428 },
3912 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2429 },
3984 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2488 },
3985 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2487 },
3986 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2489 },
3987 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2490 },
3988 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2491 },
3989 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2492 },
3990 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2493 },
3991 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2494 },
3992 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2495 },
3993 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2496 },
3994 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2497 },
3995 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2498 },
3996 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2499 },
3997 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2500 },
3998 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2501 },
3999 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2502 },
4000 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2503 },
4001 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2504 },
4002 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2505 },
4003 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2443 },
4004 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2506 },
4005 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2507 },
4006 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2508 },
39134007 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 974 },
3914 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2430 },
3915 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2431 },
3916 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2432 },
3917 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2433 },
3918 .{ .char = 'C', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2434 },
3919 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2435 },
3920 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2436 },
3921 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2437 },
3922 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2438 },
3923 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2439 },
3924 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2440 },
3925 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2441 },
3926 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2442 },
4008 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2509 },
4009 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2510 },
4010 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2511 },
4011 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2512 },
4012 .{ .char = 'C', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2513 },
4013 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2514 },
4014 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2515 },
4015 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2516 },
4016 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2517 },
4017 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2518 },
4018 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2519 },
4019 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2520 },
4020 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2521 },
39274021 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
3928 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2443 },
4022 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2522 },
39294023 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 447 },
3930 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2444 },
3931 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2445 },
3932 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2446 },
3933 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2447 },
3934 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2448 },
3935 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 2449 },
4024 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2523 },
4025 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2524 },
4026 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2525 },
4027 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1615 },
4028 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2526 },
4029 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2527 },
4030 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 2528 },
39364031 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 649 },
39374032 .{ .char = 'a', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
39384033 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 448 },
3939 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 2449 },
3940 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 2451 },
3941 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 2451 },
3942 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2453 },
3943 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2454 },
4034 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 547 },
4035 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2530 },
4036 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 2528 },
4037 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2531 },
4038 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2531 },
4039 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2533 },
4040 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2534 },
39444041 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3945 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2455 },
3946 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2448 },
3947 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2443 },
3948 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2456 },
3949 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2457 },
4042 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2535 },
4043 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2527 },
4044 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2522 },
4045 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1923 },
4046 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2536 },
39504047 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
3951 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2458 },
3952 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2459 },
3953 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2460 },
3954 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2461 },
3955 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2462 },
3956 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2463 },
3957 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2464 },
3958 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2465 },
3959 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2466 },
3960 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2467 },
3961 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2468 },
3962 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2469 },
3963 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2470 },
3964 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2471 },
4048 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 314 },
4049 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2537 },
4050 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2538 },
4051 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1594 },
4052 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2539 },
4053 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2540 },
4054 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2541 },
4055 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2542 },
4056 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2543 },
4057 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2544 },
4058 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2545 },
4059 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2546 },
4060 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2547 },
4061 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2548 },
4062 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2549 },
4063 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2550 },
4064 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2551 },
39654065 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 768 },
3966 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2381 },
3967 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 2472 },
3968 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2474 },
3969 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2475 },
3970 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2476 },
3971 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2477 },
3972 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2478 },
3973 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2479 },
3974 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2480 },
3975 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2481 },
3976 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2482 },
3977 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2483 },
3978 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2484 },
3979 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2485 },
3980 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2486 },
3981 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2487 },
3982 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1752 },
4066 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2454 },
4067 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 2552 },
4068 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2554 },
4069 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2555 },
4070 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2556 },
4071 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2557 },
4072 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2558 },
4073 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2559 },
4074 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2560 },
4075 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2561 },
4076 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2562 },
4077 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2563 },
4078 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2564 },
4079 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2565 },
4080 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2566 },
4081 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2567 },
4082 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1768 },
39834083 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3984 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2488 },
4084 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2568 },
39854085 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3986 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2268 },
4086 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 281 },
4087 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2569 },
39874088 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 561 },
3988 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2489 },
3989 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2490 },
3990 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2491 },
3991 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 555 },
3992 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2492 },
3993 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2493 },
3994 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2494 },
3995 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2495 },
3996 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2496 },
3997 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2497 },
3998 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2498 },
3999 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2499 },
4000 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2500 },
4001 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2501 },
4002 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2502 },
4003 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2503 },
4089 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2570 },
4090 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2571 },
4091 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2572 },
4092 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2573 },
4093 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2574 },
4094 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2575 },
4095 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2576 },
4096 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2577 },
4097 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2578 },
4098 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2579 },
4099 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2580 },
4100 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2581 },
4101 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2582 },
4102 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2583 },
4103 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2584 },
4104 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2585 },
40044105 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 450 },
4005 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2028 },
4006 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2504 },
4007 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2505 },
4008 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2506 },
4009 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2509 },
4010 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2513 },
4011 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2514 },
4012 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2515 },
4013 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2516 },
4014 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2517 },
4015 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2518 },
4016 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2519 },
4017 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2520 },
4018 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2521 },
4019 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2522 },
4106 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2061 },
4107 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2586 },
4108 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2587 },
4109 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2588 },
4110 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2591 },
4111 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2595 },
4112 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2596 },
4113 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2597 },
4114 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2598 },
4115 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2599 },
4116 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2600 },
4117 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2601 },
4118 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2602 },
4119 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2603 },
4120 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2604 },
40204121 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4021 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2523 },
4022 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2524 },
4122 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2605 },
4123 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2606 },
40234124 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4024 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2525 },
4025 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2526 },
4026 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2527 },
4027 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2528 },
4028 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2529 },
4029 .{ .char = 'j', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2530 },
4030 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2531 },
4031 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2532 },
4032 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2533 },
4033 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2534 },
4034 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2535 },
4035 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2536 },
4036 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2537 },
4037 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2538 },
4038 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2539 },
4039 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2540 },
4040 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2541 },
4041 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2542 },
4125 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2607 },
4126 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2608 },
4127 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2609 },
4128 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2610 },
4129 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2611 },
4130 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2612 },
4131 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1599 },
4132 .{ .char = 'j', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2613 },
4133 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2614 },
4134 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2615 },
4135 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2616 },
4136 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2617 },
4137 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2618 },
4138 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2619 },
4139 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2620 },
4140 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2621 },
4141 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2622 },
4142 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2623 },
4143 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2624 },
4144 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2625 },
40424145 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 486 },
4043 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2543 },
4146 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2626 },
40444147 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 632 },
40454148 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
40464149 .{ .char = '8', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
4047 .{ .char = 'P', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2544 },
4048 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2545 },
4049 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2546 },
4050 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2044 },
4051 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2547 },
4150 .{ .char = 'P', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2627 },
4151 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2628 },
4152 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2629 },
4153 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2078 },
4154 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2630 },
40524155 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
4053 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1976 },
4054 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2548 },
4055 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2549 },
4056 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2550 },
4156 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2007 },
4157 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2631 },
4158 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2632 },
4159 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2633 },
40574160 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 301 },
4058 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2551 },
4059 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2552 },
4161 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2634 },
4162 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2635 },
4163 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2636 },
40604164 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 461 },
40614165 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 567 },
4062 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2553 },
4063 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2554 },
4064 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2555 },
4065 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2556 },
4066 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2557 },
4067 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1975 },
4068 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2558 },
4166 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2637 },
4167 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2638 },
4168 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2639 },
4169 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2640 },
4170 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2641 },
4171 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2006 },
4172 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2642 },
40694173 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
4070 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2559 },
4071 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2560 },
4072 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2561 },
4073 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2562 },
4074 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2563 },
4075 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2564 },
4076 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2506 },
4077 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2565 },
4174 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2643 },
4175 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2644 },
4176 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2645 },
4177 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2646 },
4178 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2647 },
4179 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2648 },
4180 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2588 },
4181 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2649 },
40784182 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
4079 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2566 },
4080 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2567 },
4081 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2568 },
4082 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2018 },
4083 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2572 },
4084 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2573 },
4183 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2650 },
4184 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2651 },
4185 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2652 },
4186 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2050 },
4187 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2656 },
4188 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2657 },
40854189 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 438 },
4086 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2574 },
4087 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2575 },
4190 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2658 },
4191 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2659 },
4192 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2660 },
40884193 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 314 },
4089 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2576 },
4090 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2577 },
4091 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2258 },
4092 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2578 },
4093 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2579 },
4094 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1752 },
4095 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2580 },
4194 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2661 },
4195 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2662 },
4196 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2320 },
4197 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2663 },
4198 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2664 },
4199 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1768 },
4200 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2665 },
40964201 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 567 },
4097 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2581 },
4098 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2582 },
4099 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2583 },
4202 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2666 },
4203 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2667 },
4204 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2668 },
41004205 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4101 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2584 },
4102 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2585 },
4103 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2586 },
4104 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2587 },
4206 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2669 },
4207 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2670 },
4208 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2671 },
4209 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2672 },
41054210 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 511 },
41064211 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 411 },
4107 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2588 },
4108 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2394 },
4109 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2097 },
4110 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2589 },
4111 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2590 },
4112 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2075 },
4113 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2591 },
4114 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1835 },
4115 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2592 },
4116 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2593 },
4117 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2594 },
4118 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2595 },
4119 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2597 },
4120 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2598 },
4121 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2599 },
4212 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2673 },
4213 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2467 },
4214 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2137 },
4215 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2674 },
4216 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 561 },
4217 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2675 },
4218 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2114 },
4219 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2676 },
4220 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1856 },
4221 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2677 },
4222 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2678 },
4223 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2679 },
4224 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2680 },
4225 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2682 },
4226 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2683 },
4227 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2684 },
41224228 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
4123 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2156 },
4124 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1746 },
4125 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2600 },
4229 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2202 },
4230 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1762 },
4231 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2685 },
41264232 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
4127 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2601 },
4128 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2602 },
4129 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2603 },
4130 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2604 },
4233 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2686 },
4234 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2687 },
4235 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2688 },
4236 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2689 },
41314237 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 756 },
4132 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2605 },
4133 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2606 },
4134 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2607 },
4238 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2690 },
4239 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2691 },
4240 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2692 },
41354241 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 437 },
4136 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2608 },
4137 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2609 },
4138 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2610 },
4139 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2611 },
4140 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2612 },
4141 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2613 },
4142 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2614 },
4143 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2615 },
4144 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2616 },
4145 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2617 },
4146 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1185 },
4147 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2618 },
4148 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2619 },
4242 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2693 },
4243 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2694 },
4244 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2695 },
4245 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2696 },
4246 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2697 },
4247 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2698 },
4248 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2699 },
4249 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2700 },
4250 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2701 },
4251 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2702 },
4252 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1187 },
4253 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2703 },
4254 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2704 },
41494255 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 639 },
4150 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2194 },
4256 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2247 },
41514257 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 554 },
4152 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2620 },
4258 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2705 },
41534259 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 449 },
4154 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2048 },
4155 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2621 },
4156 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2044 },
4260 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2082 },
4261 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2706 },
4262 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2078 },
41574263};
41584264pub const data = blk: {
4159 @setEvalBranchQuota(12366);
4265 @setEvalBranchQuota(12555);
41604266 break :blk [_]Properties{
41614267 .{ .param_str = "vv*vC*iC", .header = .blocks, .language = .all_languages, .attributes = .{ .lib_function_without_prefix = true } },
41624268 .{ .param_str = "vvC*iC", .header = .blocks, .language = .all_languages, .attributes = .{ .lib_function_without_prefix = true } },
......@@ -4212,6 +4318,8 @@ pub const data = blk: {
42124318 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
42134319 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
42144320 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
4321 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
4322 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
42154323 .{ .param_str = "bzvCD*", .attributes = .{ .const_evaluable = true } },
42164324 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
42174325 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
......@@ -4279,6 +4387,7 @@ pub const data = blk: {
42794387 .{ .param_str = "v*zIz", .attributes = .{ .lib_function_with_builtin_prefix = true } },
42804388 .{ .param_str = "v*zIz", .attributes = .{ .lib_function_with_builtin_prefix = true } },
42814389 .{ .param_str = "bcC*", .attributes = .{ .pure = true, .@"const" = true } },
4390 .{ .param_str = "bcC*", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
42824391 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
42834392 .{ .param_str = "dd", .attributes = .{ .lib_function_with_builtin_prefix = true, .const_without_errno_and_fp_exceptions = true } },
42844393 .{ .param_str = "ff", .attributes = .{ .lib_function_with_builtin_prefix = true, .const_without_errno_and_fp_exceptions = true } },
......@@ -4291,7 +4400,7 @@ pub const data = blk: {
42914400 .{ .param_str = "LdLd", .attributes = .{ .lib_function_with_builtin_prefix = true, .const_without_errno_and_fp_exceptions = true } },
42924401 .{ .param_str = "vb", .attributes = .{ .const_evaluable = true } },
42934402 .{ .param_str = "v*vC*z.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
4294 .{ .param_str = "vvC*Iz", .attributes = .{ .@"const" = true } },
4403 .{ .param_str = "vvC*z", .attributes = .{ .@"const" = true } },
42954404 .{ .param_str = "vvCD*vCD*", .attributes = .{ .const_evaluable = true } },
42964405 .{ .param_str = "dd", .attributes = .{ .lib_function_with_builtin_prefix = true, .const_without_errno_and_fp_exceptions = true } },
42974406 .{ .param_str = "ddd", .attributes = .{ .lib_function_with_builtin_prefix = true, .const_without_errno_and_fp_exceptions = true } },
......@@ -4318,6 +4427,7 @@ pub const data = blk: {
43184427 .{ .param_str = "UsUs", .attributes = .{ .@"const" = true, .const_evaluable = true } },
43194428 .{ .param_str = "UZiUZi", .attributes = .{ .@"const" = true, .const_evaluable = true } },
43204429 .{ .param_str = "UWiUWi", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4430 .{ .param_str = "i.", .attributes = .{ .@"const" = true, .const_evaluable = true, .custom_typecheck = true } },
43214431 .{ .param_str = "vv*z", .attributes = .{ .lib_function_with_builtin_prefix = true } },
43224432 .{ .param_str = "vA.", .language = .c23_lang, .attributes = .{ .custom_typecheck = true } },
43234433 .{ .param_str = "dXd", .attributes = .{ .lib_function_with_builtin_prefix = true, .const_without_errno_and_fp_exceptions = true } },
......@@ -4446,7 +4556,7 @@ pub const data = blk: {
44464556 .{ .param_str = "zvC*i", .attributes = .{ .eval_args = false, .const_evaluable = true } },
44474557 .{ .param_str = "vzv*" },
44484558 .{ .param_str = "iIi", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4449 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
4559 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
44504560 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44514561 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
44524562 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
......@@ -4455,21 +4565,28 @@ pub const data = blk: {
44554565 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
44564566 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44574567 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
4568 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
44584569 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44594570 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44604571 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
4572 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
44614573 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44624574 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44634575 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44644576 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
4577 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
44654578 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
4579 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
4580 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
44664581 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44674582 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44684583 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44694584 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
4585 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
44704586 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44714587 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44724588 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
4589 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true, .const_evaluable = true } },
44734590 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44744591 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
44754592 .{ .param_str = "v.", .attributes = .{ .@"const" = true, .custom_typecheck = true } },
......@@ -4592,6 +4709,7 @@ pub const data = blk: {
45924709 .{ .param_str = "iLd", .attributes = .{ .lib_function_with_builtin_prefix = true, .const_without_errno_and_fp_exceptions = true } },
45934710 .{ .param_str = "c*cC*i", .attributes = .{ .lib_function_with_builtin_prefix = true } },
45944711 .{ .param_str = "d", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4712 .{ .param_str = "z.", .attributes = .{ .@"const" = true, .pure = true, .custom_typecheck = true, .const_evaluable = true, .eval_args = false } },
45954713 .{ .param_str = "f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
45964714 .{ .param_str = "LLd", .attributes = .{ .@"const" = true, .const_evaluable = true } },
45974715 .{ .param_str = "x", .attributes = .{ .@"const" = true, .const_evaluable = true } },
......@@ -4667,6 +4785,12 @@ pub const data = blk: {
46674785 .{ .param_str = "LiLLd", .attributes = .{ .lib_function_with_builtin_prefix = true, .const_without_errno_and_fp_exceptions = true } },
46684786 .{ .param_str = "LiLd", .attributes = .{ .lib_function_with_builtin_prefix = true, .const_without_errno_and_fp_exceptions = true } },
46694787 .{ .param_str = "v*z", .attributes = .{ .lib_function_with_builtin_prefix = true } },
4788 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
4789 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
4790 .{ .param_str = "v.", .attributes = .{ .pure = true, .custom_typecheck = true } },
4791 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
4792 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
4793 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
46704794 .{ .param_str = "v.", .attributes = .{ .lib_function_with_builtin_prefix = true, .custom_typecheck = true } },
46714795 .{ .param_str = "v.", .attributes = .{ .lib_function_with_builtin_prefix = true, .custom_typecheck = true } },
46724796 .{ .param_str = "v.", .attributes = .{ .lib_function_with_builtin_prefix = true, .custom_typecheck = true } },
......@@ -4839,6 +4963,7 @@ pub const data = blk: {
48394963 .{ .param_str = "biCiCi*", .attributes = .{ .const_evaluable = true } },
48404964 .{ .param_str = "bLiCLiCLi*", .attributes = .{ .const_evaluable = true } },
48414965 .{ .param_str = "bLLiCLLiCLLi*", .attributes = .{ .const_evaluable = true } },
4966 .{ .param_str = "v*" },
48424967 .{ .param_str = "vA.", .attributes = .{ .custom_typecheck = true } },
48434968 .{ .param_str = "c*c*cC*", .attributes = .{ .lib_function_with_builtin_prefix = true } },
48444969 .{ .param_str = "c*c*cC*z", .attributes = .{ .lib_function_with_builtin_prefix = true } },
......@@ -5013,6 +5138,8 @@ pub const data = blk: {
50135138 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
50145139 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
50155140 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
5141 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
5142 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
50165143 .{ .param_str = "vii" },
50175144 .{ .param_str = "v.", .attributes = .{ .custom_typecheck = true } },
50185145 .{ .param_str = "iSJi", .header = .setjmp, .language = .all_languages, .attributes = .{ .lib_function_without_prefix = true, .returns_twice = true } },
lib/compiler/aro/aro/Builtins/hexagon.zig+3959-3761
......@@ -977,6 +977,14 @@ pub const Tag = enum(u16) { __builtin_HEXAGON_A2_abs,
977977 __builtin_HEXAGON_V6_vabs_f8_128B,
978978 __builtin_HEXAGON_V6_vabs_hf,
979979 __builtin_HEXAGON_V6_vabs_hf_128B,
980 __builtin_HEXAGON_V6_vabs_qf16_hf,
981 __builtin_HEXAGON_V6_vabs_qf16_hf_128B,
982 __builtin_HEXAGON_V6_vabs_qf16_qf16,
983 __builtin_HEXAGON_V6_vabs_qf16_qf16_128B,
984 __builtin_HEXAGON_V6_vabs_qf32_qf32,
985 __builtin_HEXAGON_V6_vabs_qf32_qf32_128B,
986 __builtin_HEXAGON_V6_vabs_qf32_sf,
987 __builtin_HEXAGON_V6_vabs_qf32_sf_128B,
980988 __builtin_HEXAGON_V6_vabs_sf,
981989 __builtin_HEXAGON_V6_vabs_sf_128B,
982990 __builtin_HEXAGON_V6_vabsb,
......@@ -1093,6 +1101,8 @@ pub const Tag = enum(u16) { __builtin_HEXAGON_A2_abs,
10931101 __builtin_HEXAGON_V6_vaddwsat_128B,
10941102 __builtin_HEXAGON_V6_vaddwsat_dv,
10951103 __builtin_HEXAGON_V6_vaddwsat_dv_128B,
1104 __builtin_HEXAGON_V6_valign4,
1105 __builtin_HEXAGON_V6_valign4_128B,
10961106 __builtin_HEXAGON_V6_valignb,
10971107 __builtin_HEXAGON_V6_valignb_128B,
10981108 __builtin_HEXAGON_V6_valignbi,
......@@ -1211,14 +1221,30 @@ pub const Tag = enum(u16) { __builtin_HEXAGON_A2_abs,
12111221 __builtin_HEXAGON_V6_vcl0w_128B,
12121222 __builtin_HEXAGON_V6_vcombine,
12131223 __builtin_HEXAGON_V6_vcombine_128B,
1224 __builtin_HEXAGON_V6_vconv_bf_qf32,
1225 __builtin_HEXAGON_V6_vconv_bf_qf32_128B,
1226 __builtin_HEXAGON_V6_vconv_f8_qf16,
1227 __builtin_HEXAGON_V6_vconv_f8_qf16_128B,
12141228 __builtin_HEXAGON_V6_vconv_h_hf,
12151229 __builtin_HEXAGON_V6_vconv_h_hf_128B,
1230 __builtin_HEXAGON_V6_vconv_h_hf_rnd,
1231 __builtin_HEXAGON_V6_vconv_h_hf_rnd_128B,
12161232 __builtin_HEXAGON_V6_vconv_hf_h,
12171233 __builtin_HEXAGON_V6_vconv_hf_h_128B,
12181234 __builtin_HEXAGON_V6_vconv_hf_qf16,
12191235 __builtin_HEXAGON_V6_vconv_hf_qf16_128B,
12201236 __builtin_HEXAGON_V6_vconv_hf_qf32,
12211237 __builtin_HEXAGON_V6_vconv_hf_qf32_128B,
1238 __builtin_HEXAGON_V6_vconv_qf16_f8,
1239 __builtin_HEXAGON_V6_vconv_qf16_f8_128B,
1240 __builtin_HEXAGON_V6_vconv_qf16_hf,
1241 __builtin_HEXAGON_V6_vconv_qf16_hf_128B,
1242 __builtin_HEXAGON_V6_vconv_qf16_qf16,
1243 __builtin_HEXAGON_V6_vconv_qf16_qf16_128B,
1244 __builtin_HEXAGON_V6_vconv_qf32_qf32,
1245 __builtin_HEXAGON_V6_vconv_qf32_qf32_128B,
1246 __builtin_HEXAGON_V6_vconv_qf32_sf,
1247 __builtin_HEXAGON_V6_vconv_qf32_sf_128B,
12221248 __builtin_HEXAGON_V6_vconv_sf_qf32,
12231249 __builtin_HEXAGON_V6_vconv_sf_qf32_128B,
12241250 __builtin_HEXAGON_V6_vconv_sf_w,
......@@ -1333,6 +1359,22 @@ pub const Tag = enum(u16) { __builtin_HEXAGON_A2_abs,
13331359 __builtin_HEXAGON_V6_veqh_or_128B,
13341360 __builtin_HEXAGON_V6_veqh_xor,
13351361 __builtin_HEXAGON_V6_veqh_xor_128B,
1362 __builtin_HEXAGON_V6_veqhf,
1363 __builtin_HEXAGON_V6_veqhf_128B,
1364 __builtin_HEXAGON_V6_veqhf_and,
1365 __builtin_HEXAGON_V6_veqhf_and_128B,
1366 __builtin_HEXAGON_V6_veqhf_or,
1367 __builtin_HEXAGON_V6_veqhf_or_128B,
1368 __builtin_HEXAGON_V6_veqhf_xor,
1369 __builtin_HEXAGON_V6_veqhf_xor_128B,
1370 __builtin_HEXAGON_V6_veqsf,
1371 __builtin_HEXAGON_V6_veqsf_128B,
1372 __builtin_HEXAGON_V6_veqsf_and,
1373 __builtin_HEXAGON_V6_veqsf_and_128B,
1374 __builtin_HEXAGON_V6_veqsf_or,
1375 __builtin_HEXAGON_V6_veqsf_or_128B,
1376 __builtin_HEXAGON_V6_veqsf_xor,
1377 __builtin_HEXAGON_V6_veqsf_xor_128B,
13361378 __builtin_HEXAGON_V6_veqw,
13371379 __builtin_HEXAGON_V6_veqw_128B,
13381380 __builtin_HEXAGON_V6_veqw_and,
......@@ -1443,6 +1485,14 @@ pub const Tag = enum(u16) { __builtin_HEXAGON_A2_abs,
14431485 __builtin_HEXAGON_V6_vgtw_or_128B,
14441486 __builtin_HEXAGON_V6_vgtw_xor,
14451487 __builtin_HEXAGON_V6_vgtw_xor_128B,
1488 __builtin_HEXAGON_V6_vilog2_hf,
1489 __builtin_HEXAGON_V6_vilog2_hf_128B,
1490 __builtin_HEXAGON_V6_vilog2_qf16,
1491 __builtin_HEXAGON_V6_vilog2_qf16_128B,
1492 __builtin_HEXAGON_V6_vilog2_qf32,
1493 __builtin_HEXAGON_V6_vilog2_qf32_128B,
1494 __builtin_HEXAGON_V6_vilog2_sf,
1495 __builtin_HEXAGON_V6_vilog2_sf_128B,
14461496 __builtin_HEXAGON_V6_vinsertwr,
14471497 __builtin_HEXAGON_V6_vinsertwr_128B,
14481498 __builtin_HEXAGON_V6_vlalignb,
......@@ -1697,6 +1747,14 @@ pub const Tag = enum(u16) { __builtin_HEXAGON_A2_abs,
16971747 __builtin_HEXAGON_V6_vnavgub_128B,
16981748 __builtin_HEXAGON_V6_vnavgw,
16991749 __builtin_HEXAGON_V6_vnavgw_128B,
1750 __builtin_HEXAGON_V6_vneg_qf16_hf,
1751 __builtin_HEXAGON_V6_vneg_qf16_hf_128B,
1752 __builtin_HEXAGON_V6_vneg_qf16_qf16,
1753 __builtin_HEXAGON_V6_vneg_qf16_qf16_128B,
1754 __builtin_HEXAGON_V6_vneg_qf32_qf32,
1755 __builtin_HEXAGON_V6_vneg_qf32_qf32_128B,
1756 __builtin_HEXAGON_V6_vneg_qf32_sf,
1757 __builtin_HEXAGON_V6_vneg_qf32_sf_128B,
17001758 __builtin_HEXAGON_V6_vnormamth,
17011759 __builtin_HEXAGON_V6_vnormamth_128B,
17021760 __builtin_HEXAGON_V6_vnormamtw,
......@@ -1841,6 +1899,8 @@ pub const Tag = enum(u16) { __builtin_HEXAGON_A2_abs,
18411899 __builtin_HEXAGON_V6_vsub_hf_f8_128B,
18421900 __builtin_HEXAGON_V6_vsub_hf_hf,
18431901 __builtin_HEXAGON_V6_vsub_hf_hf_128B,
1902 __builtin_HEXAGON_V6_vsub_hf_mix,
1903 __builtin_HEXAGON_V6_vsub_hf_mix_128B,
18441904 __builtin_HEXAGON_V6_vsub_qf16,
18451905 __builtin_HEXAGON_V6_vsub_qf16_128B,
18461906 __builtin_HEXAGON_V6_vsub_qf16_mix,
......@@ -1855,6 +1915,8 @@ pub const Tag = enum(u16) { __builtin_HEXAGON_A2_abs,
18551915 __builtin_HEXAGON_V6_vsub_sf_bf_128B,
18561916 __builtin_HEXAGON_V6_vsub_sf_hf,
18571917 __builtin_HEXAGON_V6_vsub_sf_hf_128B,
1918 __builtin_HEXAGON_V6_vsub_sf_mix,
1919 __builtin_HEXAGON_V6_vsub_sf_mix_128B,
18581920 __builtin_HEXAGON_V6_vsub_sf_sf,
18591921 __builtin_HEXAGON_V6_vsub_sf_sf_128B,
18601922 __builtin_HEXAGON_V6_vsubb,
......@@ -2042,7 +2104,7 @@ pub const longest_name = 46;
20422104/// If found, returns the index of the node within the `dafsa` array.
20432105/// Otherwise, returns `null`.
20442106pub fn findInList(first_child_index: u16, char: u8) ?u16 {
2045 @setEvalBranchQuota(3956);
2107 @setEvalBranchQuota(4080);
20462108 var index = first_child_index;
20472109 while (true) {
20482110 if (dafsa[index].char == char) return index;
......@@ -2137,44 +2199,44 @@ const Node = packed struct {
21372199
21382200const dafsa = [_]Node{
21392201 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
2140 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 2 },
2141 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 3 },
2142 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 4 },
2143 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 5 },
2144 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 6 },
2145 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 7 },
2146 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 8 },
2147 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 9 },
2148 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 10 },
2149 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1978, .child_index = 11 },
2150 .{ .char = 'H', .end_of_word = false, .end_of_list = false, .number = 1955, .child_index = 15 },
2202 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 2 },
2203 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 3 },
2204 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 4 },
2205 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 5 },
2206 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 6 },
2207 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 7 },
2208 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 8 },
2209 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 9 },
2210 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 10 },
2211 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2040, .child_index = 11 },
2212 .{ .char = 'H', .end_of_word = false, .end_of_list = false, .number = 2017, .child_index = 15 },
21512213 .{ .char = 'S', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 16 },
21522214 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 17 },
21532215 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 18 },
2154 .{ .char = 'E', .end_of_word = false, .end_of_list = true, .number = 1955, .child_index = 19 },
2216 .{ .char = 'E', .end_of_word = false, .end_of_list = true, .number = 2017, .child_index = 19 },
21552217 .{ .char = 'I', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 20 },
21562218 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 21 },
21572219 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 22 },
2158 .{ .char = 'X', .end_of_word = false, .end_of_list = true, .number = 1955, .child_index = 23 },
2220 .{ .char = 'X', .end_of_word = false, .end_of_list = true, .number = 2017, .child_index = 23 },
21592221 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 24 },
21602222 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 25 },
21612223 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 26 },
2162 .{ .char = 'A', .end_of_word = false, .end_of_list = true, .number = 1955, .child_index = 27 },
2224 .{ .char = 'A', .end_of_word = false, .end_of_list = true, .number = 2017, .child_index = 27 },
21632225 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 28 },
21642226 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 29 },
21652227 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 29 },
2166 .{ .char = 'G', .end_of_word = false, .end_of_list = true, .number = 1955, .child_index = 30 },
2228 .{ .char = 'G', .end_of_word = false, .end_of_list = true, .number = 2017, .child_index = 30 },
21672229 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 31 },
21682230 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 32 },
2169 .{ .char = 'O', .end_of_word = false, .end_of_list = true, .number = 1955, .child_index = 34 },
2231 .{ .char = 'O', .end_of_word = false, .end_of_list = true, .number = 2017, .child_index = 34 },
21702232 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 35 },
21712233 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 36 },
21722234 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 37 },
2173 .{ .char = 'N', .end_of_word = false, .end_of_list = true, .number = 1955, .child_index = 38 },
2235 .{ .char = 'N', .end_of_word = false, .end_of_list = true, .number = 2017, .child_index = 38 },
21742236 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 39 },
21752237 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 40 },
21762238 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 45 },
2177 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1955, .child_index = 49 },
2239 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2017, .child_index = 49 },
21782240 .{ .char = 'X', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 58 },
21792241 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
21802242 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
......@@ -2191,7 +2253,7 @@ const dafsa = [_]Node{
21912253 .{ .char = 'L', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 70 },
21922254 .{ .char = 'M', .end_of_word = false, .end_of_list = false, .number = 335, .child_index = 71 },
21932255 .{ .char = 'S', .end_of_word = false, .end_of_list = false, .number = 235, .child_index = 76 },
2194 .{ .char = 'V', .end_of_word = false, .end_of_list = false, .number = 1030, .child_index = 80 },
2256 .{ .char = 'V', .end_of_word = false, .end_of_list = false, .number = 1092, .child_index = 80 },
21952257 .{ .char = 'Y', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 81 },
21962258 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 85 },
21972259 .{ .char = 'T', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 86 },
......@@ -2216,7 +2278,7 @@ const dafsa = [_]Node{
22162278 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 32, .child_index = 103 },
22172279 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 104 },
22182280 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 105 },
2219 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1030, .child_index = 106 },
2281 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1092, .child_index = 106 },
22202282 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 107 },
22212283 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 108 },
22222284 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 108 },
......@@ -2242,7 +2304,7 @@ const dafsa = [_]Node{
22422304 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 188 },
22432305 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 197 },
22442306 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 200 },
2245 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1030, .child_index = 202 },
2307 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1092, .child_index = 202 },
22462308 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 209 },
22472309 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 210 },
22482310 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 211 },
......@@ -2344,7 +2406,7 @@ const dafsa = [_]Node{
23442406 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 359 },
23452407 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 361 },
23462408 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 362 },
2347 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 992, .child_index = 364 },
2409 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1054, .child_index = 364 },
23482410 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 384 },
23492411 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 385 },
23502412 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 386 },
......@@ -2502,888 +2564,899 @@ const dafsa = [_]Node{
25022564 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 571 },
25032565 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 572 },
25042566 .{ .char = 'S', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 573 },
2505 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 232, .child_index = 574 },
2506 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 54, .child_index = 580 },
2567 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 242, .child_index = 574 },
2568 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 70, .child_index = 580 },
25072569 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 58, .child_index = 583 },
2508 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 588 },
2570 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 588 },
25092571 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 589 },
25102572 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 84, .child_index = 591 },
2511 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 593 },
2512 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 594 },
2513 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 208, .child_index = 597 },
2514 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 602 },
2515 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 604 },
2516 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 605 },
2517 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 58, .child_index = 608 },
2518 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 132, .child_index = 612 },
2519 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 618 },
2520 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 619 },
2521 .{ .char = 'x', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 620 },
2522 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 621 },
2523 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 623 },
2573 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 593 },
2574 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 595 },
2575 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 208, .child_index = 598 },
2576 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 603 },
2577 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 606 },
2578 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 607 },
2579 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 58, .child_index = 610 },
2580 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 136, .child_index = 614 },
2581 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 620 },
2582 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 621 },
2583 .{ .char = 'x', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 622 },
2584 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 623 },
2585 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 625 },
25242586 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 212 },
2525 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 627 },
2526 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 632 },
2527 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2528 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 634 },
2529 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 18, .child_index = 636 },
2587 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 629 },
2588 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 634 },
2589 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 635 },
2590 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 636 },
2591 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 18, .child_index = 638 },
25302592 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 399 },
2531 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 640 },
2532 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
2533 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 641 },
2534 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 642 },
2535 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 642 },
2536 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 634 },
2537 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 644 },
2593 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 642 },
2594 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 642 },
2595 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 643 },
2596 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 644 },
2597 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 644 },
2598 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 636 },
2599 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 646 },
25382600 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
25392601 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2540 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 645 },
2541 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 646 },
2542 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 16, .child_index = 649 },
2543 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 653 },
2544 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 655 },
2545 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 656 },
2546 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 657 },
2547 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 658 },
2548 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 661 },
2549 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 664 },
2550 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 665 },
2551 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 666 },
2552 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 667 },
2553 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 668 },
2554 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 669 },
2555 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 670 },
2556 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 671 },
2557 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 672 },
2558 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 673 },
2559 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 674 },
2560 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 644 },
2602 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 647 },
2603 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 648 },
2604 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 16, .child_index = 651 },
2605 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 655 },
2606 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 657 },
2607 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 658 },
2608 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 659 },
2609 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 660 },
2610 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 663 },
2611 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 666 },
2612 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 667 },
2613 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 668 },
2614 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 669 },
2615 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 670 },
2616 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 671 },
2617 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 672 },
2618 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 673 },
2619 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 674 },
2620 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 675 },
2621 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 676 },
2622 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 646 },
25612623 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
25622624 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 430 },
2563 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 675 },
2564 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 676 },
2565 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 677 },
2566 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 679 },
2567 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 680 },
2568 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 681 },
2569 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 644 },
2570 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 682 },
2571 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 683 },
2572 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 684 },
2573 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 685 },
2574 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 686 },
2575 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 688 },
2576 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 689 },
2577 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
2578 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
2579 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 692 },
2625 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 677 },
2626 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 678 },
2627 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 679 },
2628 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 681 },
2629 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 682 },
2630 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 683 },
2631 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 646 },
2632 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 684 },
2633 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 685 },
2634 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 686 },
2635 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 687 },
2636 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 688 },
2637 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
2638 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
2639 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 692 },
2640 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
2641 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 694 },
25802642 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 439 },
2581 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
2643 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 695 },
25822644 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 450 },
2583 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
2584 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 694 },
2585 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 695 },
2586 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 698 },
2587 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 699 },
2645 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 695 },
2646 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 696 },
2647 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 697 },
2648 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 700 },
2649 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 701 },
25882650 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
25892651 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2590 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 701 },
2591 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 702 },
2592 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 704 },
2593 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 705 },
2652 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 703 },
2653 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 704 },
2654 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 706 },
2655 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 707 },
25942656 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
25952657 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 459 },
2596 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 706 },
2597 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 708 },
2598 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 709 },
2599 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 711 },
2600 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 712 },
2601 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 713 },
2602 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 715 },
2603 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 716 },
2604 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 719 },
2605 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 712 },
2606 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 713 },
2607 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 720 },
2608 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 715 },
2609 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 722 },
2610 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 719 },
2611 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 725 },
2612 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 726 },
2613 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 727 },
2614 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 728 },
2615 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 729 },
2616 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 730 },
2617 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 731 },
2618 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 732 },
2619 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 734 },
2620 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 735 },
2621 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 736 },
2622 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 152, .child_index = 737 },
2623 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 742 },
2624 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 743 },
2625 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 744 },
2658 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 708 },
2659 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 710 },
2660 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 711 },
2661 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 713 },
2662 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 714 },
2663 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 715 },
2664 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 717 },
2665 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 718 },
2666 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 721 },
2667 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 714 },
2668 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 715 },
2669 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 722 },
2670 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 717 },
2671 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 724 },
2672 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 721 },
2673 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 727 },
2674 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 728 },
2675 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 729 },
2676 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 730 },
2677 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 731 },
2678 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 732 },
2679 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 733 },
2680 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
2681 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 736 },
2682 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 737 },
2683 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 738 },
2684 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 152, .child_index = 739 },
2685 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 744 },
2686 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 745 },
26262687 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 746 },
2627 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 748 },
2628 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 749 },
2629 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 750 },
2630 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 751 },
2631 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 752 },
2632 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 754 },
2688 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 748 },
2689 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 750 },
2690 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 751 },
2691 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 752 },
2692 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 753 },
2693 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 754 },
2694 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 756 },
26332695 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 498 },
2634 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 755 },
2635 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 756 },
2636 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 757 },
2637 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 758 },
2638 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 761 },
2639 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 762 },
2640 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 763 },
2641 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 764 },
2642 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 765 },
2643 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 767 },
2644 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 768 },
2696 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 757 },
2697 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 758 },
2698 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 759 },
2699 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 760 },
2700 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 763 },
2701 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 764 },
2702 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 765 },
2703 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 766 },
2704 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 767 },
2705 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 769 },
2706 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 770 },
26452707 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 504 },
2646 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 769 },
2647 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 770 },
2648 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 771 },
2708 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 771 },
26492709 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 772 },
2650 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 773 },
2651 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 774 },
2652 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 775 },
2653 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 776 },
2654 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 644 },
2655 .{ .char = '1', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 644 },
2656 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 777 },
2657 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 779 },
2658 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 644 },
2659 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 644 },
2660 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 780 },
2661 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 781 },
2662 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 782 },
2663 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 783 },
2664 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
2665 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 784 },
2666 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 785 },
2667 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 786 },
2668 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 787 },
2669 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 779 },
2670 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 788 },
2671 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 789 },
2672 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 790 },
2673 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 791 },
2674 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 792 },
2675 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 793 },
2676 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 794 },
2677 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 795 },
2678 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 796 },
2679 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 797 },
2680 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 798 },
2681 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 799 },
2682 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 800 },
2683 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 801 },
2684 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 800 },
2685 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 802 },
2686 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 804 },
2687 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 805 },
2688 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 807 },
2710 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 773 },
2711 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 774 },
2712 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 775 },
2713 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 776 },
2714 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 777 },
2715 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 778 },
2716 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 646 },
2717 .{ .char = '1', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 646 },
2718 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 779 },
2719 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 781 },
2720 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 646 },
2721 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 646 },
2722 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 782 },
2723 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 783 },
2724 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 784 },
2725 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 785 },
2726 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
2727 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 786 },
2728 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 787 },
2729 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 788 },
2730 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 789 },
2731 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 781 },
2732 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 790 },
2733 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 791 },
2734 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 792 },
2735 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 793 },
2736 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 794 },
2737 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 795 },
2738 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 796 },
2739 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 797 },
2740 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 798 },
2741 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 799 },
2742 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 800 },
2743 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 801 },
2744 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 802 },
2745 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 803 },
2746 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 802 },
2747 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 804 },
2748 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 806 },
2749 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 807 },
2750 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 809 },
26892751 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
26902752 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 530 },
2691 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 808 },
2692 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 810 },
2693 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 811 },
2694 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 802 },
2695 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 812 },
2696 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 813 },
2697 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 814 },
2698 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 815 },
2699 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 816 },
2700 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 817 },
2701 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 818 },
2702 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 819 },
2703 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 820 },
2704 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 821 },
2705 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 822 },
2706 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 823 },
2707 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 824 },
2708 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 825 },
2709 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 826 },
2710 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 827 },
2711 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 828 },
2712 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 829 },
2713 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 830 },
2714 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 94, .child_index = 831 },
2715 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 832 },
2716 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 833 },
2717 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 66, .child_index = 834 },
2718 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 837 },
2719 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 838 },
2720 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 839 },
2721 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 841 },
2753 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 810 },
2754 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 812 },
2755 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 813 },
2756 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 804 },
2757 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 814 },
2758 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 815 },
2759 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 816 },
2760 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 817 },
2761 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 818 },
2762 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 819 },
2763 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 820 },
2764 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 821 },
2765 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 822 },
2766 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 823 },
2767 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 824 },
2768 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 825 },
2769 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 826 },
2770 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 827 },
2771 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 828 },
2772 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 829 },
2773 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 830 },
2774 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 831 },
2775 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 34, .child_index = 832 },
2776 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 94, .child_index = 833 },
2777 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 834 },
2778 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 835 },
2779 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 66, .child_index = 836 },
2780 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 839 },
2781 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 840 },
2782 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 32, .child_index = 841 },
2783 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 843 },
27222784 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
2723 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 842 },
2724 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 843 },
2725 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 845 },
2726 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 846 },
2727 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 847 },
2728 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 850 },
2729 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 852 },
2730 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 853 },
2731 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 72, .child_index = 854 },
2732 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 859 },
2733 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 860 },
2734 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 861 },
2735 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 862 },
2736 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 863 },
2737 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 865 },
2738 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 866 },
2739 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 164, .child_index = 867 },
2740 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 870 },
2741 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 871 },
2742 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 872 },
2785 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 844 },
2786 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 845 },
2787 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 847 },
2788 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 848 },
2789 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 849 },
2790 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 853 },
2791 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 855 },
2792 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 856 },
2793 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 72, .child_index = 857 },
2794 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 862 },
2795 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 863 },
2796 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 864 },
2797 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 865 },
2798 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 866 },
2799 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 867 },
2800 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 869 },
2801 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 870 },
2802 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 164, .child_index = 871 },
2803 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 874 },
2804 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 875 },
2805 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 876 },
2806 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 877 },
27432807 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
2744 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 874 },
2745 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 875 },
2746 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 876 },
2747 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 877 },
2748 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 878 },
2749 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 879 },
2750 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 882 },
2751 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 883 },
2808 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 879 },
2809 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 880 },
2810 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 881 },
2811 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 882 },
2812 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 883 },
2813 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 884 },
2814 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 887 },
2815 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 888 },
27522816 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
2753 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 884 },
2754 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 20, .child_index = 885 },
2755 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 82, .child_index = 887 },
2756 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 888 },
2757 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 889 },
2758 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 890 },
2759 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 604 },
2817 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 889 },
2818 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 20, .child_index = 890 },
2819 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 86, .child_index = 892 },
2820 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 893 },
2821 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 894 },
2822 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 895 },
2823 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 606 },
27602824 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
27612825 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
2762 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 891 },
2826 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 896 },
27632827 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 387 },
2764 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 892 },
2765 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 893 },
2766 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 894 },
2767 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 895 },
2768 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 897 },
2769 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 898 },
2770 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
2771 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 900 },
2772 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 901 },
2828 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 897 },
2829 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 898 },
2830 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 899 },
2831 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 900 },
2832 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 902 },
2833 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 903 },
2834 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 904 },
2835 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 905 },
2836 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 906 },
27732837 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2774 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 902 },
2775 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 903 },
2838 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
2839 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 908 },
27762840 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2777 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 904 },
2778 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 905 },
2841 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 909 },
2842 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 910 },
27792843 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2780 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 907 },
2844 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 912 },
27812845 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2782 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 644 },
2846 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 646 },
27832847 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2784 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
2848 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 913 },
27852849 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
27862850 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
27872851 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
2788 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 903 },
2852 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 908 },
27892853 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
27902854 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 87 },
2791 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 902 },
2792 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 909 },
2793 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 910 },
2794 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 911 },
2795 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 912 },
2855 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
2856 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 914 },
2857 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 915 },
2858 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 916 },
2859 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 917 },
27962860 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
27972861 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
27982862 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
27992863 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2800 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 913 },
2801 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 915 },
2864 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 918 },
2865 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 920 },
28022866 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
2803 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 916 },
2804 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 918 },
2805 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 922 },
2806 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 925 },
2807 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 928 },
2808 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 929 },
2809 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 929 },
2810 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 933 },
2811 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 934 },
2812 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 934 },
2813 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 918 },
2814 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 935 },
2815 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 936 },
2816 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 937 },
2817 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 937 },
2818 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 939 },
2819 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 940 },
2820 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 941 },
2821 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 942 },
2822 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 944 },
2823 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 945 },
2824 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 946 },
2825 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 949 },
2826 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 950 },
2827 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 951 },
2828 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 952 },
2829 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 953 },
2867 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 921 },
2868 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 923 },
2869 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 927 },
2870 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 930 },
2871 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 933 },
2872 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 934 },
2873 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 934 },
2874 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 938 },
2875 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 939 },
2876 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 939 },
2877 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 923 },
2878 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 940 },
2879 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 941 },
2880 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 942 },
2881 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 942 },
2882 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 944 },
2883 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 945 },
2884 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 946 },
2885 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 947 },
2886 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 949 },
2887 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 950 },
2888 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 951 },
2889 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 954 },
2890 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 955 },
2891 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 956 },
2892 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 957 },
2893 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 958 },
28302894 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2831 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 954 },
2895 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 959 },
28322896 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2833 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 955 },
2834 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 957 },
2835 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 958 },
2836 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 960 },
2897 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 960 },
2898 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 962 },
2899 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 963 },
2900 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 965 },
28372901 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2838 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 961 },
2902 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 966 },
28392903 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
2840 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 963 },
2904 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 968 },
28412905 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
2842 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
2843 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 964 },
2906 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
2907 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 969 },
28442908 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2845 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 965 },
2846 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 966 },
2847 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 967 },
2848 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 968 },
2909 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 970 },
2910 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 971 },
2911 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 972 },
2912 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 973 },
28492913 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 265 },
2850 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 969 },
2851 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 970 },
2852 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 971 },
2853 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 972 },
2854 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 973 },
2855 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 705 },
2856 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 974 },
2857 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 975 },
2858 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 976 },
2859 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 977 },
2860 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 978 },
2861 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 705 },
2862 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 974 },
2863 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
2864 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 981 },
2865 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 915 },
2866 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 982 },
2867 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 985 },
2868 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 988 },
2869 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 989 },
2870 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 990 },
2914 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 974 },
2915 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 975 },
2916 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 976 },
2917 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 977 },
2918 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 978 },
2919 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 707 },
2920 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 979 },
2921 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 980 },
2922 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 981 },
2923 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 982 },
2924 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 983 },
2925 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 707 },
2926 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 979 },
2927 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 985 },
2928 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 986 },
2929 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 920 },
2930 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 987 },
2931 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 990 },
2932 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 993 },
2933 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 994 },
2934 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 995 },
28712935 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2872 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 991 },
2873 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 992 },
2874 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 995 },
2936 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 996 },
2937 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 997 },
2938 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1000 },
28752939 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
2876 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 67, .child_index = 998 },
2877 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 32, .child_index = 1005 },
2940 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 67, .child_index = 1003 },
2941 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 32, .child_index = 1010 },
28782942 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2879 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1006 },
2880 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 50, .child_index = 1008 },
2881 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1011 },
2882 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1012 },
2883 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1013 },
2884 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1014 },
2885 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1015 },
2886 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1016 },
2887 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1017 },
2888 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1018 },
2889 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1019 },
2890 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1020 },
2891 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1022 },
2892 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1023 },
2893 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1024 },
2894 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1025 },
2895 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1027 },
2896 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1028 },
2897 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 968 },
2943 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1011 },
2944 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 50, .child_index = 1013 },
2945 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1016 },
2946 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1017 },
2947 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1018 },
2948 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1019 },
2949 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1020 },
2950 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1021 },
2951 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1022 },
2952 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1023 },
2953 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1024 },
2954 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1025 },
2955 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1027 },
2956 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1028 },
2957 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1029 },
2958 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1030 },
2959 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1032 },
2960 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1033 },
2961 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 973 },
28982962 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
28992963 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 270 },
2900 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1030 },
2901 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1031 },
2902 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1032 },
2903 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1033 },
2904 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1036 },
2905 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1037 },
2906 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1038 },
2907 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1038 },
2908 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1039 },
2909 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1040 },
2910 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1041 },
2911 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1042 },
2912 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1043 },
2913 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 1044 },
2914 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 1046 },
2915 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 644 },
2916 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1048 },
2964 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1035 },
2965 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1036 },
2966 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1037 },
2967 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1038 },
2968 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1041 },
2969 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1042 },
2970 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1043 },
2971 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1043 },
2972 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1044 },
2973 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1045 },
2974 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1046 },
2975 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1047 },
2976 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1048 },
2977 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 1049 },
2978 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 1051 },
2979 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 646 },
2980 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1053 },
29172981 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2918 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1049 },
2919 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1050 },
2920 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1051 },
2921 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1052 },
2922 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1053 },
2923 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1054 },
2924 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 1055 },
2925 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1057 },
2926 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1058 },
2927 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1059 },
2928 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1060 },
2929 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1061 },
2930 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1062 },
2931 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1063 },
2932 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1064 },
2933 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1065 },
2934 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1066 },
2935 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 794 },
2936 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1067 },
2937 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1068 },
2938 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1070 },
2939 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1072 },
2940 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1074 },
2941 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1075 },
2942 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 810 },
2943 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 810 },
2944 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1075 },
2945 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1076 },
2946 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1078 },
2947 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1079 },
2948 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1080 },
2949 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1081 },
2950 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1083 },
2951 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1084 },
2952 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1085 },
2953 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1086 },
2954 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1087 },
2955 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1088 },
2956 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1089 },
2957 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1090 },
2958 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1091 },
2959 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1092 },
2960 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1093 },
2961 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1094 },
2962 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1095 },
2963 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1096 },
2964 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1097 },
2965 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1098 },
2966 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1099 },
2967 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1100 },
2968 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1101 },
2969 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 1102 },
2970 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 94, .child_index = 1107 },
2971 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1113 },
2972 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 18, .child_index = 1114 },
2973 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1118 },
2974 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 48, .child_index = 1120 },
2975 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1125 },
2976 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1126 },
2977 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1130 },
2978 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1132 },
2979 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1133 },
2980 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 1134 },
2982 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1054 },
2983 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1055 },
2984 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1056 },
2985 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1057 },
2986 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1058 },
2987 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1059 },
2988 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 27, .child_index = 1060 },
2989 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1062 },
2990 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1063 },
2991 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1064 },
2992 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1065 },
2993 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1066 },
2994 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1067 },
2995 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1068 },
2996 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1069 },
2997 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1070 },
2998 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1071 },
2999 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 796 },
3000 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1072 },
3001 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1073 },
3002 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1075 },
3003 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1077 },
3004 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1079 },
3005 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1080 },
3006 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 812 },
3007 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 812 },
3008 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1080 },
3009 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1081 },
3010 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1083 },
3011 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1084 },
3012 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1085 },
3013 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1086 },
3014 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1088 },
3015 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1089 },
3016 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1090 },
3017 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1091 },
3018 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1092 },
3019 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1093 },
3020 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1094 },
3021 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1095 },
3022 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1096 },
3023 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1097 },
3024 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1098 },
3025 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1099 },
3026 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1100 },
3027 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1101 },
3028 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1102 },
3029 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1103 },
3030 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1104 },
3031 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1105 },
3032 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1106 },
3033 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 1107 },
3034 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 94, .child_index = 1112 },
3035 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1118 },
3036 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 18, .child_index = 1119 },
3037 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1123 },
3038 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 48, .child_index = 1125 },
3039 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1130 },
3040 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1131 },
3041 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1135 },
3042 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1137 },
3043 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 1138 },
3044 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 1139 },
29813045 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
2982 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1136 },
2983 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1137 },
2984 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1138 },
2985 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1139 },
2986 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1140 },
2987 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1140 },
2988 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1140 },
2989 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1141 },
2990 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1142 },
2991 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1143 },
2992 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1144 },
2993 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 16, .child_index = 1145 },
2994 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 16, .child_index = 1145 },
2995 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1147 },
2996 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 847 },
2997 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1140 },
2998 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1148 },
2999 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 832 },
3000 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1149 },
3001 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1152 },
3002 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1154 },
3003 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1155 },
3004 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1160 },
3005 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1155 },
3006 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1161 },
3007 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1164 },
3008 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 138, .child_index = 1165 },
3046 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1141 },
3047 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1142 },
3048 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1143 },
3049 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1144 },
3050 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1145 },
3051 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 16, .child_index = 1146 },
3052 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1148 },
3053 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1145 },
3054 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1149 },
3055 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1150 },
3056 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1151 },
3057 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1152 },
3058 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 16, .child_index = 1146 },
3059 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 16, .child_index = 1146 },
3060 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1148 },
3061 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1153 },
3062 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1145 },
3063 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1156 },
3064 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1157 },
3065 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1158 },
3066 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1159 },
3067 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1162 },
3068 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1164 },
3069 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1165 },
3070 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1170 },
3071 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1165 },
3072 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1171 },
3073 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1174 },
3074 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 138, .child_index = 1175 },
30093075 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3010 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1172 },
3011 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1173 },
3076 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1182 },
3077 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1183 },
3078 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1184 },
30123079 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3013 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1174 },
3014 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1175 },
3015 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1176 },
3016 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1177 },
3017 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1178 },
3080 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1185 },
3081 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1186 },
3082 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1187 },
3083 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1188 },
3084 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1189 },
30183085 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3019 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 604 },
3020 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1179 },
3021 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1180 },
3022 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1181 },
3023 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1185 },
3024 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
3025 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1186 },
3026 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 82, .child_index = 1187 },
3027 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1193 },
3028 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1194 },
3029 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1195 },
3030 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1196 },
3031 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1197 },
3032 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1198 },
3033 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1199 },
3034 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1200 },
3035 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1201 },
3036 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1202 },
3037 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1203 },
3038 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1204 },
3039 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
3040 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
3086 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 606 },
3087 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1190 },
3088 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1191 },
3089 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1192 },
3090 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1196 },
3091 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
3092 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1197 },
3093 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 86, .child_index = 1198 },
3094 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1204 },
3095 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1205 },
3096 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1206 },
3097 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1207 },
3098 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1208 },
3099 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1209 },
3100 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1210 },
3101 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1211 },
3102 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1212 },
3103 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1213 },
3104 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1214 },
3105 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1215 },
3106 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 642 },
3107 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 642 },
30413108 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 449 },
3042 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1205 },
3043 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 902 },
3109 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1216 },
3110 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
30443111 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 449 },
30453112 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3046 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1207 },
3047 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1208 },
3048 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1209 },
3049 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1211 },
3050 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1065 },
3051 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1209 },
3113 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1218 },
3114 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1219 },
3115 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1220 },
3116 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1222 },
3117 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1070 },
3118 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1220 },
30523119 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
30533120 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
30543121 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3055 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 904 },
3056 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 904 },
3057 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1212 },
3058 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1213 },
3059 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1214 },
3060 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1213 },
3061 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1216 },
3062 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1218 },
3063 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1216 },
3064 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1221 },
3065 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1223 },
3066 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1223 },
3122 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 909 },
3123 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 909 },
3124 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1223 },
3125 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1224 },
3126 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1225 },
3127 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1224 },
3128 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1227 },
3129 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1229 },
3130 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1227 },
3131 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1232 },
3132 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1234 },
3133 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1234 },
30673134 .{ .char = 'j', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
30683135 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
30693136 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3070 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 658 },
3137 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 660 },
30713138 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3072 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1225 },
3073 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1227 },
3074 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1228 },
3075 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1229 },
3076 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1230 },
3077 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1231 },
3078 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1232 },
3079 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1233 },
3080 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1234 },
3081 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1230 },
3082 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 966 },
3083 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1235 },
3084 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 632 },
3085 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1236 },
3086 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1238 },
3087 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1238 },
3088 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1240 },
3089 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1240 },
3090 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1243 },
3091 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1244 },
3092 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1245 },
3093 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1246 },
3094 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1247 },
3095 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1248 },
3096 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1249 },
3097 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1251 },
3098 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1253 },
3099 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1256 },
3139 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1236 },
3140 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1238 },
3141 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1239 },
3142 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1240 },
3143 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1241 },
3144 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1242 },
3145 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1243 },
3146 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1244 },
3147 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1245 },
3148 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1241 },
3149 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 971 },
3150 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1246 },
3151 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 634 },
3152 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1247 },
3153 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1249 },
3154 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1249 },
3155 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1251 },
3156 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1251 },
3157 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1254 },
3158 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1255 },
3159 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1256 },
3160 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1257 },
3161 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1258 },
3162 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1259 },
3163 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1260 },
3164 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1262 },
3165 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1264 },
3166 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1267 },
31003167 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
31013168 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3102 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1212 },
3103 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1257 },
3104 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1258 },
3105 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1230 },
3106 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1259 },
3107 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1260 },
3108 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 1261 },
3169 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1223 },
3170 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1268 },
3171 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1269 },
3172 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1241 },
3173 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1270 },
3174 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1271 },
3175 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 1272 },
31093176 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3110 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1265 },
3111 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1266 },
3112 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1269 },
3177 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1276 },
3178 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1277 },
3179 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1280 },
31133180 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3114 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1270 },
3181 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1281 },
31153182 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3116 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1273 },
3117 .{ .char = 'a', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1274 },
3118 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1275 },
3183 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1284 },
3184 .{ .char = 'a', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1285 },
3185 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1286 },
31193186 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3120 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1276 },
3121 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1281 },
3122 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1281 },
3123 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1282 },
3124 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1281 },
3125 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1284 },
3126 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1282 },
3127 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1282 },
3128 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1286 },
3129 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1288 },
3130 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1290 },
3131 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1292 },
3132 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1292 },
3133 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1293 },
3134 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1295 },
3135 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1295 },
3136 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1296 },
3137 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1298 },
3138 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
3139 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
3140 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1301 },
3141 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1302 },
3142 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1303 },
3143 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1304 },
3144 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 1305 },
3187 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1287 },
3188 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1292 },
3189 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1292 },
3190 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1293 },
3191 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1292 },
3192 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1295 },
3193 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1293 },
3194 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1293 },
3195 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1297 },
3196 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1299 },
3197 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1301 },
3198 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1303 },
3199 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1303 },
3200 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1304 },
3201 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1306 },
3202 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1306 },
3203 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1307 },
3204 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1309 },
3205 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
3206 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
3207 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1312 },
3208 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1313 },
3209 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1314 },
3210 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1315 },
3211 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 1316 },
31453212 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 87 },
3146 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1310 },
3147 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 1311 },
3148 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1316 },
3213 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1321 },
3214 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 1322 },
3215 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1327 },
31493216 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3150 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1317 },
3151 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1318 },
3152 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1319 },
3153 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1320 },
3154 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1321 },
3155 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1322 },
3156 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1324 },
3157 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1326 },
3158 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1328 },
3159 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1330 },
3160 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1331 },
3161 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1281 },
3162 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1281 },
3163 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 742 },
3164 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1332 },
3165 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1332 },
3166 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1333 },
3167 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1334 },
3168 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1335 },
3169 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1336 },
3170 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1337 },
3171 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1338 },
3172 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 968 },
3217 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1328 },
3218 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1329 },
3219 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1330 },
3220 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1331 },
3221 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1332 },
3222 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1333 },
3223 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1335 },
3224 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1337 },
3225 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1339 },
3226 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1341 },
3227 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1342 },
3228 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1292 },
3229 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1292 },
3230 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 744 },
3231 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1343 },
3232 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1343 },
3233 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1344 },
3234 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1345 },
3235 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1346 },
3236 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1347 },
3237 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1348 },
3238 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1349 },
3239 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 973 },
31733240 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
3174 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 742 },
3175 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1340 },
3176 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1340 },
3177 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1341 },
3178 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1343 },
3179 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1344 },
3180 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1336 },
3181 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1346 },
3182 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1348 },
3183 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 1349 },
3184 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1350 },
3185 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 1351 },
3186 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1352 },
3187 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1353 },
3188 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1354 },
3189 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 783 },
3190 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1355 },
3191 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1356 },
3192 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1357 },
3193 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1358 },
3194 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 1359 },
3195 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1358 },
3196 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1360 },
3197 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1361 },
3198 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1362 },
3199 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1364 },
3200 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1365 },
3201 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1366 },
3202 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1367 },
3203 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1368 },
3204 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
3205 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1369 },
3206 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1370 },
3207 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1371 },
3208 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1373 },
3209 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1375 },
3210 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1376 },
3211 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 640 },
3212 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1377 },
3213 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1378 },
3214 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1380 },
3215 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1075 },
3216 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1048 },
3217 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1381 },
3218 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1382 },
3219 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
3220 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1383 },
3221 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1384 },
3222 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
3223 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1385 },
3224 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1386 },
3225 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1387 },
3226 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1388 },
3227 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1389 },
3228 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1390 },
3229 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1391 },
3230 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1392 },
3241 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 744 },
3242 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1351 },
3243 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1351 },
3244 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1352 },
3245 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1354 },
3246 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1355 },
3247 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1347 },
3248 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1357 },
3249 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1359 },
3250 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 1360 },
3251 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1361 },
3252 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 1362 },
3253 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1363 },
3254 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1364 },
3255 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1365 },
3256 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 785 },
3257 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1366 },
3258 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1367 },
3259 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1368 },
3260 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1369 },
3261 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 1370 },
3262 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1369 },
3263 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1371 },
3264 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1372 },
3265 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1373 },
3266 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1375 },
3267 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1376 },
3268 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1377 },
3269 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1378 },
3270 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1379 },
3271 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 642 },
3272 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1380 },
3273 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1381 },
3274 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1382 },
3275 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1384 },
3276 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1386 },
3277 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1387 },
3278 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 642 },
3279 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1388 },
3280 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1389 },
3281 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1391 },
3282 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1080 },
3283 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1053 },
3284 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1392 },
32313285 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1393 },
3232 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1395 },
3233 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1396 },
3234 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1397 },
3235 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1398 },
3236 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1399 },
3237 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1404 },
3238 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1405 },
3239 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1406 },
3240 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1408 },
3241 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1409 },
3242 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1412 },
3243 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1413 },
3244 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1412 },
3245 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1412 },
3246 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 1414 },
3247 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 12, .child_index = 1417 },
3248 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1421 },
3249 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 16, .child_index = 1423 },
3250 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 1428 },
3251 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 12, .child_index = 1417 },
3252 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1431 },
3253 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
3254 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1432 },
3255 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1433 },
3256 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1434 },
3257 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1437 },
3258 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1437 },
3259 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1439 },
3260 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 14, .child_index = 1440 },
3261 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1444 },
3262 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1446 },
3263 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 16, .child_index = 1448 },
3264 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1452 },
3265 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1453 },
3266 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1453 },
3267 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1455 },
3268 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1453 },
3286 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
3287 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1394 },
3288 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1395 },
3289 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 985 },
3290 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
3291 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1397 },
3292 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1398 },
3293 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1399 },
3294 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1400 },
3295 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1401 },
3296 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1402 },
3297 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1403 },
3298 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1404 },
3299 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1406 },
3300 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1407 },
3301 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1408 },
3302 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1409 },
3303 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1410 },
3304 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1415 },
3305 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1416 },
3306 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1417 },
3307 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1419 },
3308 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 1420 },
3309 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1424 },
3310 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1425 },
3311 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1424 },
3312 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1424 },
3313 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 1426 },
3314 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 12, .child_index = 1429 },
3315 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1433 },
3316 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 16, .child_index = 1435 },
3317 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 1440 },
3318 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 12, .child_index = 1429 },
3319 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1443 },
3320 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
3321 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1444 },
3322 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1445 },
3323 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1446 },
3324 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1449 },
3325 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1449 },
3326 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1451 },
3327 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 14, .child_index = 1452 },
3328 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1456 },
3329 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1458 },
3330 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 16, .child_index = 1460 },
3331 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1464 },
3332 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1465 },
3333 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1465 },
3334 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1467 },
3335 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1465 },
32693336 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
32703337 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3271 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1458 },
3272 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1459 },
3273 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1460 },
3274 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 1461 },
3275 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1466 },
3276 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1469 },
3277 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1470 },
3278 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1473 },
3279 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1474 },
3280 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1478 },
3281 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1478 },
3282 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1478 },
3283 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1479 },
3284 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1474 },
3285 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1140 },
3286 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1140 },
3287 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1480 },
3338 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1470 },
3339 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 1471 },
3340 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1472 },
3341 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 1473 },
3342 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1478 },
3343 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1481 },
3344 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1482 },
3345 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1485 },
3346 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1486 },
3347 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1486 },
3348 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1145 },
3349 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1145 },
3350 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1490 },
3351 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1490 },
3352 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1490 },
3353 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1491 },
3354 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1145 },
3355 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1145 },
3356 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1145 },
3357 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1492 },
3358 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1493 },
3359 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1494 },
32883360 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3289 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1481 },
3290 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1481 },
3361 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1495 },
3362 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1495 },
32913363 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3292 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 1483 },
3293 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1485 },
3294 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1486 },
3364 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 1497 },
3365 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1499 },
3366 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1500 },
32953367 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
32963368 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3297 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 621 },
3369 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 623 },
32983370 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3299 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1489 },
3300 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1490 },
3301 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1491 },
3302 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1493 },
3303 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1494 },
3304 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 1495 },
3305 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1499 },
3306 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1501 },
3307 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 20, .child_index = 1502 },
3308 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 1506 },
3309 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1510 },
3310 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1511 },
3311 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1513 },
3312 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1517 },
3313 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1518 },
3314 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1522 },
3315 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1523 },
3316 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1137 },
3317 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1524 },
3318 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1526 },
3319 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1527 },
3320 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1528 },
3321 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1529 },
3322 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1530 },
3323 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1531 },
3324 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1532 },
3325 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1533 },
3326 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 1414 },
3327 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 12, .child_index = 1417 },
3328 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1536 },
3329 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 14, .child_index = 1537 },
3330 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1542 },
3331 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 12, .child_index = 1417 },
3371 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1503 },
3372 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1504 },
3373 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1505 },
3374 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1507 },
3375 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1508 },
3376 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 1509 },
3377 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1513 },
3378 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1515 },
3379 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 20, .child_index = 1516 },
3380 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 1520 },
3381 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1524 },
3382 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 1525 },
3383 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1527 },
3384 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1531 },
3385 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1532 },
3386 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1533 },
3387 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1537 },
3388 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1538 },
3389 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1142 },
3390 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1539 },
3391 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1541 },
3392 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1542 },
3393 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1543 },
3394 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1544 },
3395 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1545 },
3396 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1546 },
3397 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1547 },
3398 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1548 },
3399 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 1551 },
3400 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 12, .child_index = 1429 },
3401 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1554 },
3402 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 14, .child_index = 1555 },
3403 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1560 },
3404 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 12, .child_index = 1429 },
33323405 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3333 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1545 },
3334 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1547 },
3335 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1548 },
3336 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1549 },
3337 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1550 },
3338 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 698 },
3339 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1551 },
3340 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1360 },
3341 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1552 },
3342 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1553 },
3406 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1563 },
3407 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1565 },
3408 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1566 },
3409 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1567 },
3410 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1568 },
3411 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 700 },
3412 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1569 },
3413 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1371 },
3414 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1570 },
3415 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1571 },
33433416 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 449 },
3344 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1554 },
3345 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1555 },
3346 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1556 },
3347 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 902 },
3348 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1213 },
3349 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1557 },
3350 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1213 },
3351 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1558 },
3417 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1572 },
3418 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1573 },
3419 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1574 },
3420 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
3421 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1224 },
3422 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1575 },
3423 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1224 },
3424 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1576 },
33523425 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3353 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1213 },
3354 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1559 },
3426 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1224 },
3427 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1577 },
33553428 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
33563429 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3357 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1560 },
3358 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1560 },
3359 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1560 },
3360 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1561 },
3361 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1562 },
3362 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1561 },
3363 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 960 },
3364 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1216 },
3365 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1216 },
3366 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1563 },
3367 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1564 },
3368 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1565 },
3369 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 915 },
3370 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1566 },
3371 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1568 },
3372 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1569 },
3373 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1570 },
3374 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1571 },
3375 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1572 },
3376 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1573 },
3377 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1574 },
3378 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1575 },
3430 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1578 },
3431 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1578 },
3432 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1578 },
3433 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1579 },
3434 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1580 },
3435 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1579 },
3436 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 965 },
3437 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1227 },
3438 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1227 },
3439 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1581 },
3440 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1582 },
3441 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1583 },
3442 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 920 },
3443 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1584 },
3444 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1586 },
3445 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1587 },
3446 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1588 },
3447 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1589 },
3448 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1590 },
3449 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1591 },
3450 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1592 },
3451 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1593 },
33793452 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3380 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1576 },
3453 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1594 },
33813454 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3382 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1578 },
3383 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1579 },
3384 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1580 },
3385 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1233 },
3386 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1581 },
3455 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1596 },
3456 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1597 },
3457 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1598 },
3458 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1244 },
3459 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1599 },
33873460 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 449 },
33883461 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
33893462 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
......@@ -3391,1789 +3464,1852 @@ const dafsa = [_]Node{
33913464 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
33923465 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
33933466 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3394 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1249 },
3467 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1260 },
33953468 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3396 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 698 },
3397 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1566 },
3398 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1582 },
3469 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 700 },
3470 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1584 },
3471 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1600 },
33993472 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 450 },
3400 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 1583 },
3401 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1585 },
3402 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1586 },
3403 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1588 },
3404 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1559 },
3405 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1561 },
3406 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1589 },
3407 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1591 },
3408 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1290 },
3409 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1592 },
3410 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 640 },
3411 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 913 },
3412 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1593 },
3413 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1594 },
3414 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1596 },
3415 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1597 },
3416 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1597 },
3417 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1597 },
3418 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1597 },
3419 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1598 },
3420 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1600 },
3421 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1601 },
3422 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1602 },
3423 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1600 },
3424 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1282 },
3425 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1603 },
3426 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1604 },
3427 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1605 },
3428 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1605 },
3473 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 1601 },
3474 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1603 },
3475 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1604 },
3476 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1606 },
3477 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1577 },
3478 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1579 },
3479 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1607 },
3480 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1609 },
3481 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1301 },
3482 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1610 },
3483 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 642 },
3484 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 918 },
3485 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1611 },
3486 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1612 },
3487 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1614 },
3488 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1615 },
3489 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1615 },
3490 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1615 },
3491 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1615 },
3492 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1616 },
3493 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1618 },
3494 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1619 },
3495 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
3496 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1618 },
3497 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1293 },
3498 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1621 },
3499 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1622 },
3500 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1623 },
3501 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1623 },
34293502 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
34303503 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3431 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1295 },
3432 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1292 },
3433 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1292 },
3434 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1606 },
3435 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1295 },
3436 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1295 },
3437 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1608 },
3438 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1602 },
3439 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1602 },
3440 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1608 },
3441 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1609 },
3442 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1610 },
3443 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1611 },
3444 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1612 },
3445 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
3446 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
3447 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1613 },
3448 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1302 },
3449 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1614 },
3450 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1612 },
3451 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
3452 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
3453 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1613 },
3454 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
3455 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1615 },
3504 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1306 },
3505 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1303 },
3506 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1303 },
3507 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1624 },
3508 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1306 },
3509 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1306 },
3510 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1626 },
3511 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1620 },
3512 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
3513 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1626 },
3514 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1627 },
3515 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1628 },
3516 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1629 },
3517 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1630 },
3518 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
3519 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
3520 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1631 },
3521 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1313 },
3522 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1632 },
3523 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1630 },
3524 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
3525 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
3526 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1631 },
3527 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
3528 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1633 },
34563529 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3457 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1619 },
3458 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
3459 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1621 },
3460 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1602 },
3461 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1321 },
3462 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1602 },
3463 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1622 },
3464 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1623 },
3465 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1321 },
3466 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1625 },
3530 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1637 },
3531 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1638 },
3532 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1639 },
3533 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
3534 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1332 },
3535 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
3536 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1640 },
3537 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1641 },
3538 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1332 },
3539 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1643 },
34673540 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3468 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
3469 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1627 },
3470 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1629 },
3471 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1632 },
3472 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1633 },
3473 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1634 },
3474 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1635 },
3475 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 742 },
3476 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1336 },
3477 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1636 },
3478 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1636 },
3479 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1637 },
3480 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1638 },
3481 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1638 },
3482 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1639 },
3483 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1640 },
3484 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1640 },
3485 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1641 },
3486 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1641 },
3487 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1642 },
3488 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1643 },
3489 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1646 },
3490 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1649 },
3491 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1653 },
3492 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1657 },
3493 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1658 },
3494 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1659 },
3495 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1660 },
3496 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1662 },
3497 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1663 },
3498 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1666 },
3541 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 642 },
3542 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1645 },
3543 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1647 },
3544 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1650 },
3545 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1651 },
3546 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1652 },
3547 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1653 },
3548 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 744 },
3549 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1347 },
3550 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1654 },
3551 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1654 },
3552 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1655 },
3553 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1656 },
3554 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1656 },
3555 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1657 },
3556 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1658 },
3557 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1658 },
3558 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1659 },
3559 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1659 },
3560 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1660 },
3561 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1661 },
3562 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1664 },
3563 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1667 },
3564 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1671 },
3565 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1675 },
3566 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1676 },
3567 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1677 },
3568 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1678 },
3569 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1680 },
3570 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1681 },
3571 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1684 },
34993572 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3500 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
3573 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
35013574 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 59 },
35023575 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
3503 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1669 },
3504 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1674 },
3505 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1676 },
3506 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 779 },
3507 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1677 },
3508 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1679 },
3509 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1680 },
3510 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1681 },
3511 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1682 },
3512 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1681 },
3513 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1683 },
3514 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1684 },
3515 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1685 },
3576 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1687 },
3577 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1692 },
3578 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1694 },
3579 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 781 },
3580 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1695 },
3581 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1697 },
3582 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1698 },
3583 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1699 },
3584 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1700 },
3585 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1699 },
3586 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1701 },
3587 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1702 },
3588 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1703 },
35163589 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3517 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1686 },
3518 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1686 },
3590 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1704 },
3591 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1704 },
35193592 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
3520 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1356 },
3521 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1688 },
3522 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1689 },
3523 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1690 },
3524 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1691 },
3525 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1692 },
3526 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1693 },
3527 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1694 },
3528 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1695 },
3529 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1696 },
3530 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1697 },
3531 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1699 },
3532 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1700 },
3533 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1700 },
3534 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1701 },
3535 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1702 },
3536 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1703 },
3537 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1704 },
3538 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1705 },
3539 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1706 },
3540 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1707 },
3541 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1708 },
3542 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 620 },
3543 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1709 },
3544 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1710 },
3545 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1711 },
3546 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1711 },
3547 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1712 },
3548 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1714 },
3549 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1715 },
3550 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
3551 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1716 },
3552 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1718 },
3553 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1719 },
3554 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1720 },
3555 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1721 },
3556 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1722 },
3593 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1367 },
3594 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1706 },
3595 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1707 },
3596 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1708 },
3597 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1709 },
3598 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1710 },
3599 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1711 },
3600 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1712 },
3601 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1713 },
3602 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1714 },
3603 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1715 },
3604 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1717 },
3605 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1718 },
3606 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1718 },
3607 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1719 },
3608 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1720 },
3609 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1721 },
3610 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1722 },
3611 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1723 },
35573612 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1724 },
3613 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1725 },
3614 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1726 },
3615 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 622 },
3616 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1727 },
3617 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1728 },
3618 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1729 },
3619 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1729 },
3620 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1730 },
3621 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1732 },
3622 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
3623 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1734 },
3624 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
3625 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1735 },
3626 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1737 },
3627 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1738 },
3628 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1739 },
3629 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1740 },
3630 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1741 },
3631 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1743 },
35583632 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3559 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1725 },
3560 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1726 },
3561 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1727 },
3562 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1722 },
3563 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1724 },
3633 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1744 },
3634 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1745 },
3635 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1746 },
3636 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1741 },
3637 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1743 },
35643638 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3565 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1725 },
3566 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3567 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1729 },
3568 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1732 },
3569 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1734 },
3570 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1735 },
3571 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1433 },
3572 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1736 },
3573 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1737 },
3574 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1738 },
3575 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1736 },
3576 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
3639 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1744 },
3640 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
3641 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1748 },
3642 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1751 },
3643 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1753 },
3644 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1754 },
3645 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1445 },
3646 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1756 },
3647 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1757 },
3648 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1758 },
3649 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1756 },
3650 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
35773651 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3578 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1741 },
3579 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
3580 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1742 },
3581 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1744 },
3652 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1761 },
3653 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
3654 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1762 },
3655 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1764 },
35823656 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3583 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1745 },
3584 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1746 },
3585 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1747 },
3586 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1746 },
3587 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
3588 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1748 },
3589 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1751 },
3657 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1765 },
3658 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1766 },
3659 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1767 },
3660 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1766 },
3661 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
3662 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1768 },
3663 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1771 },
35903664 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3591 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1752 },
3592 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
3593 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1753 },
3594 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1453 },
3595 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1453 },
3596 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1453 },
3597 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1754 },
3598 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1755 },
3599 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1758 },
3600 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1761 },
3601 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1763 },
3602 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 1764 },
3603 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1766 },
3604 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1767 },
3605 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1769 },
3665 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1772 },
3666 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
3667 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1773 },
3668 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1465 },
3669 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1465 },
3670 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1465 },
3671 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1774 },
3672 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 1775 },
3673 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1781 },
3674 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1784 },
3675 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1786 },
3676 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 1787 },
3677 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1789 },
3678 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1790 },
3679 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1792 },
36063680 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3607 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1771 },
3681 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1794 },
36083682 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3609 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1772 },
3610 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1773 },
3611 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1774 },
3612 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1778 },
3613 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
3614 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1753 },
3615 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 604 },
3616 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 620 },
3617 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1409 },
3618 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1779 },
3619 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1780 },
3620 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
3683 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1795 },
3684 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1796 },
3685 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1797 },
3686 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1801 },
3687 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
3688 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1773 },
3689 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 606 },
3690 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 622 },
3691 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1802 },
3692 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1805 },
3693 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1806 },
3694 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1807 },
3695 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1808 },
3696 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
36213697 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3622 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1781 },
3623 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1782 },
3624 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1783 },
3625 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1715 },
3626 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1715 },
3627 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
3628 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1784 },
3629 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1785 },
3630 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1728 },
3631 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1787 },
3632 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1788 },
3633 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1790 },
3634 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1791 },
3635 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1792 },
3636 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1793 },
3637 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1794 },
3638 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1795 },
3639 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3640 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1796 },
3641 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
3642 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1797 },
3643 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1800 },
3644 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1801 },
3645 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1803 },
3646 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1805 },
3647 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1807 },
3648 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1808 },
3649 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1811 },
3650 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1812 },
3651 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 14, .child_index = 1814 },
3698 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1809 },
3699 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1810 },
3700 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1811 },
3701 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
3702 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
3703 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
3704 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1812 },
3705 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1813 },
3706 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1747 },
3707 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1815 },
3708 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1816 },
3709 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1818 },
3710 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1819 },
3711 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1820 },
3712 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1821 },
3713 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1822 },
3714 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1823 },
3715 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
3716 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1824 },
3717 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
3718 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1825 },
3719 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1828 },
3720 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1829 },
3721 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1831 },
3722 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1833 },
3723 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1835 },
3724 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1836 },
3725 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1839 },
3726 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1840 },
3727 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 14, .child_index = 1842 },
36523728 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
36533729 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3654 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1817 },
3730 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1845 },
36553731 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3656 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1818 },
3657 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 621 },
3658 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1819 },
3659 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 621 },
3660 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1821 },
3661 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1823 },
3662 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1824 },
3663 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 1825 },
3664 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1827 },
3665 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1828 },
3666 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1831 },
3732 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1734 },
3733 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1846 },
3734 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 623 },
3735 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1847 },
3736 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 623 },
3737 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1849 },
3738 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1851 },
3739 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1852 },
3740 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 1853 },
3741 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1855 },
3742 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1856 },
3743 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1859 },
36673744 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3668 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1817 },
3669 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1832 },
3745 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1845 },
3746 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1860 },
36703747 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3671 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1833 },
3672 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1531 },
3673 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1834 },
3674 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1839 },
3675 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1841 },
3676 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1722 },
3677 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1724 },
3748 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1861 },
3749 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1546 },
3750 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1862 },
3751 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1867 },
3752 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1869 },
3753 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1739 },
3754 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1870 },
3755 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1871 },
3756 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1741 },
3757 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1743 },
36783758 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3679 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1725 },
3759 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1744 },
36803760 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3681 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1842 },
3682 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1845 },
3683 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1734 },
3684 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1847 },
3685 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1849 },
3686 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1850 },
3687 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1851 },
3761 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1872 },
3762 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1875 },
3763 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1753 },
3764 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1877 },
3765 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1879 },
3766 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1880 },
3767 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1881 },
36883768 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3689 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1549 },
3690 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1852 },
3691 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1853 },
3769 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1567 },
3770 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1882 },
3771 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1883 },
36923772 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 449 },
3693 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1854 },
3694 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1855 },
3695 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1856 },
3696 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1559 },
3697 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1859 },
3773 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1884 },
3774 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1885 },
3775 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1886 },
3776 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1577 },
3777 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1889 },
36983778 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
36993779 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
37003780 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3701 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1638 },
3702 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1336 },
3703 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1860 },
3704 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1861 },
3781 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1656 },
3782 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1347 },
3783 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1890 },
3784 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1891 },
37053785 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3706 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 915 },
3707 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1862 },
3708 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1864 },
3709 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1638 },
3710 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1865 },
3711 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1867 },
3712 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1869 },
3786 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 920 },
3787 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1892 },
3788 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1894 },
3789 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1656 },
3790 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1895 },
3791 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1897 },
3792 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1899 },
37133793 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
3714 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1251 },
3794 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1262 },
37153795 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
37163796 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3717 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1559 },
3718 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1871 },
3719 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1872 },
3720 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 915 },
3721 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1873 },
3722 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1874 },
3723 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1876 },
3724 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1877 },
3725 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1588 },
3726 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1588 },
3727 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1874 },
3797 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1577 },
3798 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1901 },
3799 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1902 },
3800 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 920 },
3801 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1903 },
3802 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1904 },
3803 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1906 },
3804 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1907 },
3805 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1606 },
3806 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1606 },
3807 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1904 },
37283808 .{ .char = 'e', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
37293809 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
37303810 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3731 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 705 },
3732 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1878 },
3733 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1881 },
3734 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1317 },
3735 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1881 },
3736 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1882 },
3737 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1597 },
3738 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1597 },
3739 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1883 },
3740 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1884 },
3741 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1601 },
3742 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1886 },
3743 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1887 },
3744 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1888 },
3745 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1601 },
3746 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1884 },
3747 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1890 },
3748 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1891 },
3749 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1892 },
3750 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1893 },
3751 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1894 },
3752 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1894 },
3753 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
3754 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1612 },
3755 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
3756 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
3757 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1613 },
3758 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1895 },
3759 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1896 },
3760 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1897 },
3761 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1899 },
3762 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1601 },
3763 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1602 },
3764 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1900 },
3765 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1602 },
3766 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1901 },
3767 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1901 },
3768 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1901 },
3769 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1901 },
3770 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1902 },
3771 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1903 },
3772 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1904 },
3773 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1905 },
3774 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1906 },
3775 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1907 },
3776 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1638 },
3811 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 707 },
3812 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1908 },
3813 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1911 },
3814 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1328 },
3815 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1911 },
3816 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1912 },
3817 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1615 },
3818 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1615 },
3819 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1913 },
3820 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1914 },
3821 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1619 },
3822 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1916 },
3823 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1917 },
3824 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1918 },
3825 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1619 },
3826 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1914 },
3827 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1920 },
3828 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1921 },
3829 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1922 },
3830 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1923 },
3831 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1924 },
3832 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1924 },
3833 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
3834 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1630 },
3835 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
3836 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
3837 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1631 },
3838 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1925 },
3839 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1926 },
3840 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1927 },
3841 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1929 },
3842 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1619 },
3843 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
3844 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1930 },
3845 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
3846 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1931 },
3847 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1931 },
3848 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1931 },
3849 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1931 },
3850 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1932 },
3851 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1933 },
3852 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1934 },
3853 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1935 },
3854 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1936 },
3855 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1937 },
3856 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1656 },
37773857 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3778 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1908 },
3779 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1909 },
3780 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1911 },
3781 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1913 },
3782 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1914 },
3783 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 7, .child_index = 1915 },
3784 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1576 },
3785 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1916 },
3786 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1917 },
3787 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1576 },
3788 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 7, .child_index = 1918 },
3789 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 7, .child_index = 1918 },
3790 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1919 },
3791 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1576 },
3792 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1916 },
3793 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1917 },
3794 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1919 },
3795 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1576 },
3858 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1938 },
3859 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1939 },
3860 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1941 },
3861 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1943 },
3862 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1944 },
3863 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 7, .child_index = 1945 },
3864 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1594 },
3865 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1946 },
3866 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1947 },
3867 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1594 },
3868 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 7, .child_index = 1948 },
3869 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 7, .child_index = 1948 },
3870 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1949 },
3871 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1594 },
3872 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1946 },
3873 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1947 },
3874 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1949 },
3875 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1594 },
37963876 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3797 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 961 },
3798 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1920 },
3799 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1921 },
3800 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1922 },
3801 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1923 },
3802 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1916 },
3803 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1924 },
3804 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1576 },
3805 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1914 },
3806 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1914 },
3807 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1576 },
3808 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1597 },
3809 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1597 },
3810 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1597 },
3811 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1597 },
3812 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1597 },
3877 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 966 },
3878 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1950 },
3879 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1951 },
3880 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1952 },
3881 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1953 },
3882 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1946 },
3883 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1954 },
3884 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1594 },
3885 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1944 },
3886 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1944 },
3887 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1594 },
3888 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1615 },
3889 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1615 },
3890 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1615 },
3891 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1615 },
3892 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1615 },
38133893 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3814 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 976 },
3815 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1925 },
3816 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 976 },
3817 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 976 },
3818 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1852 },
3819 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1926 },
3820 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1927 },
3821 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1681 },
3822 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1681 },
3894 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 981 },
3895 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1955 },
3896 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 981 },
3897 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 981 },
3898 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1882 },
3899 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1956 },
3900 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1957 },
3901 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1699 },
3902 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1699 },
38233903 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
3824 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1677 },
3825 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 976 },
3826 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 640 },
3827 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1928 },
3828 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1929 },
3829 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1929 },
3830 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1930 },
3831 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1931 },
3832 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1932 },
3833 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1933 },
3834 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1935 },
3835 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1936 },
3836 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1914 },
3837 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1914 },
3838 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1937 },
3839 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1938 },
3840 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1528 },
3841 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1939 },
3904 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1695 },
3905 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 981 },
3906 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 642 },
3907 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1958 },
3908 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1959 },
3909 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1959 },
3910 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1960 },
3911 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1961 },
3912 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1962 },
3913 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1963 },
3914 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1965 },
3915 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1966 },
3916 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1944 },
3917 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1944 },
3918 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1967 },
3919 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1968 },
3920 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1543 },
3921 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1969 },
38423922 .{ .char = 'B', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3843 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1940 },
3844 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1943 },
3845 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1944 },
3846 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1945 },
3847 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1946 },
3848 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1947 },
3849 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1130 },
3850 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1948 },
3851 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1949 },
3852 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1951 },
3923 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1970 },
3924 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1973 },
3925 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1974 },
3926 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1975 },
3927 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1976 },
3928 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1977 },
3929 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1135 },
3930 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1978 },
3931 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1979 },
3932 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1981 },
38533933 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
38543934 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3855 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
3856 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1952 },
3857 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1953 },
3858 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1954 },
3859 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1955 },
3860 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1957 },
3861 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
3862 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1738 },
3935 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1982 },
3936 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
3937 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1984 },
3938 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1985 },
3939 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1986 },
3940 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1987 },
3941 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1989 },
3942 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
3943 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1758 },
38633944 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3864 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1958 },
3865 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1959 },
3866 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1130 },
3867 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1739 },
3868 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1728 },
3869 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1725 },
3870 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1960 },
3871 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1725 },
3872 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3873 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1725 },
3874 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1961 },
3875 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3876 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1738 },
3945 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1990 },
3946 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1991 },
3947 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1135 },
3948 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1759 },
3949 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1747 },
3950 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1744 },
3951 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1992 },
3952 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1744 },
3953 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
3954 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1744 },
3955 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3956 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1993 },
3957 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
3958 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1758 },
38773959 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3878 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
3879 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1963 },
3880 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1964 },
3881 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1965 },
3882 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1952 },
3883 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1742 },
3884 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1744 },
3885 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1751 },
3886 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1745 },
3887 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
3888 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1965 },
3889 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1952 },
3890 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1742 },
3891 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1966 },
3892 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1968 },
3893 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1969 },
3894 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1970 },
3895 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1972 },
3896 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1973 },
3897 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1974 },
3898 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1975 },
3899 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1976 },
3900 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1977 },
3901 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1973 },
3902 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1974 },
3903 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1977 },
3904 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1978 },
3905 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1974 },
3906 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1974 },
3907 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1974 },
3908 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1528 },
3909 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 823 },
3910 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1968 },
3911 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1979 },
3912 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1980 },
3913 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 1981 },
3914 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1982 },
3915 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1983 },
3916 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1982 },
3917 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3918 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1985 },
3919 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1986 },
3920 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1987 },
3921 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 1987 },
3922 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1989 },
3923 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1990 },
3924 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1437 },
3925 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1437 },
3926 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1952 },
3927 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1728 },
3928 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1991 },
3929 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1991 },
3930 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1992 },
3931 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1993 },
3932 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1995 },
3933 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1996 },
3934 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1812 },
3935 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1997 },
3936 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1998 },
3937 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1999 },
3960 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
3961 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1995 },
3962 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1996 },
3963 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1997 },
3964 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1984 },
3965 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1762 },
3966 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1764 },
3967 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1771 },
3968 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1765 },
3969 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
3970 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1997 },
3971 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1984 },
3972 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1762 },
3973 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1998 },
3974 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2000 },
3975 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2001 },
3976 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2002 },
3977 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2003 },
3978 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 2004 },
3979 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 2006 },
3980 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2007 },
3981 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2008 },
3982 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2009 },
3983 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2010 },
3984 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2011 },
3985 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2012 },
3986 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2008 },
3987 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2009 },
3988 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2012 },
3989 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2013 },
3990 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2009 },
3991 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2009 },
3992 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2009 },
3993 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1543 },
3994 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 825 },
3995 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2000 },
3996 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2014 },
3997 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2015 },
3998 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 2016 },
3999 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2017 },
4000 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 2018 },
4001 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2017 },
4002 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4003 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1732 },
4004 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4005 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4006 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2020 },
4007 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2021 },
4008 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2024 },
4009 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2025 },
4010 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 2026 },
4011 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 2026 },
4012 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2028 },
4013 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2029 },
4014 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 1449 },
4015 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 1449 },
4016 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1984 },
4017 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1747 },
4018 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2030 },
4019 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2030 },
4020 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2031 },
4021 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2032 },
4022 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2034 },
4023 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2035 },
4024 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1840 },
4025 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2036 },
4026 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2037 },
4027 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2038 },
39384028 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3939 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3940 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
3941 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2000 },
3942 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1531 },
3943 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2001 },
3944 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
3945 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3946 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1531 },
3947 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1728 },
3948 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1728 },
3949 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1849 },
3950 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 2003 },
3951 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
3952 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3953 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
3954 .{ .char = 'e', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1728 },
3955 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2004 },
4029 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4030 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
4031 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2039 },
4032 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1546 },
4033 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2040 },
4034 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
4035 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4036 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1546 },
4037 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1747 },
4038 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1747 },
4039 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1879 },
4040 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 2042 },
4041 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
4042 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4043 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
4044 .{ .char = 'e', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1747 },
4045 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2043 },
39564046 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3957 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2006 },
3958 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2007 },
3959 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2008 },
3960 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2007 },
3961 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2009 },
3962 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2010 },
3963 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2011 },
3964 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 2012 },
3965 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3966 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 16, .child_index = 2014 },
3967 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2017 },
3968 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2019 },
3969 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2021 },
3970 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2023 },
3971 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1531 },
3972 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2024 },
4047 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2045 },
4048 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2046 },
4049 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2047 },
4050 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2046 },
4051 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2048 },
4052 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2049 },
4053 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2050 },
4054 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 2051 },
4055 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4056 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 16, .child_index = 2053 },
4057 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2056 },
4058 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2058 },
4059 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2060 },
4060 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2062 },
4061 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1546 },
4062 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2063 },
39734063 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3974 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1817 },
4064 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1845 },
39754065 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3976 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1817 },
3977 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1771 },
3978 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 621 },
4066 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1845 },
4067 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1794 },
4068 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 623 },
39794069 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3980 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2025 },
4070 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 2064 },
4071 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 2065 },
4072 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2066 },
39814073 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
3982 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1725 },
3983 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1960 },
3984 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1725 },
4074 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1744 },
4075 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1992 },
4076 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1744 },
39854077 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
3986 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
3987 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1800 },
3988 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
3989 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2026 },
3990 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2030 },
4078 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
4079 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1828 },
4080 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4081 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2067 },
4082 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2071 },
39914083 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3992 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1852 },
3993 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2032 },
3994 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2033 },
3995 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2034 },
4084 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1882 },
4085 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2073 },
4086 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2074 },
4087 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2075 },
39964088 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 87 },
39974089 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3998 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
3999 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 915 },
4000 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2036 },
4090 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
4091 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 920 },
4092 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2077 },
40014093 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
40024094 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
4003 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 961 },
4004 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2037 },
4005 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2037 },
4006 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2038 },
4095 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 966 },
4096 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2078 },
4097 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2078 },
4098 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2079 },
40074099 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
40084100 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
40094101 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
4010 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2039 },
4011 .{ .char = 'R', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2040 },
4012 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2041 },
4013 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2042 },
4014 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2042 },
4015 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2043 },
4016 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2047 },
4102 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2080 },
4103 .{ .char = 'R', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2081 },
4104 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2082 },
4105 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2083 },
4106 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2083 },
4107 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2084 },
4108 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2088 },
40174109 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
40184110 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
40194111 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4020 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 976 },
4021 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2050 },
4112 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 981 },
4113 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2091 },
40224114 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
40234115 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
40244116 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4025 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2051 },
4026 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2055 },
4027 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2058 },
4028 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2059 },
4029 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2060 },
4030 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2063 },
4031 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2065 },
4032 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2068 },
4033 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1891 },
4034 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1576 },
4035 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2069 },
4036 .{ .char = '0', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2069 },
4037 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2069 },
4038 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1601 },
4039 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2070 },
4040 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2072 },
4041 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2073 },
4042 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2075 },
4043 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2076 },
4044 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2077 },
4045 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2078 },
4046 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2079 },
4047 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1674 },
4048 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 742 },
4049 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1336 },
4050 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2081 },
4051 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2082 },
4052 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2083 },
4053 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2084 },
4054 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2088 },
4055 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2093 },
4056 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2097 },
4057 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2101 },
4058 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2105 },
4059 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1660 },
4060 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
4061 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1921 },
4062 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2106 },
4063 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2107 },
4064 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2110 },
4065 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2114 },
4066 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2115 },
4117 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2092 },
4118 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2096 },
4119 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2099 },
4120 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2100 },
4121 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2101 },
4122 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2104 },
4123 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 2106 },
4124 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2109 },
4125 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1921 },
4126 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1594 },
4127 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2110 },
4128 .{ .char = '0', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2110 },
4129 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2110 },
4130 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1619 },
4131 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2111 },
4132 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2113 },
4133 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2114 },
4134 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2116 },
4135 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2117 },
4136 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2118 },
4137 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2119 },
4138 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2120 },
4139 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1692 },
4140 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 744 },
4141 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1347 },
4142 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2122 },
4143 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2123 },
4144 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2124 },
4145 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2125 },
4146 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2129 },
4147 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2134 },
4148 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2138 },
4149 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2142 },
4150 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2146 },
4151 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1678 },
4152 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
4153 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1951 },
4154 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2147 },
4155 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2148 },
4156 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2151 },
4157 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2155 },
4158 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2156 },
40674159 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4068 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1080 },
4069 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2116 },
4070 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2117 },
4071 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2117 },
4072 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2119 },
4073 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 902 },
4074 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
4075 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2120 },
4076 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
4077 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2121 },
4078 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2122 },
4160 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1085 },
4161 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2157 },
4162 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2158 },
4163 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2158 },
4164 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2160 },
4165 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
4166 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
4167 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2161 },
4168 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
4169 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2162 },
4170 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2163 },
40794171 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
40804172 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
40814173 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4082 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1945 },
4174 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1975 },
40834175 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4084 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2123 },
4085 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2125 },
4086 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1944 },
4087 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2126 },
4088 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1951 },
4089 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2127 },
4090 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2128 },
4091 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1944 },
4092 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2129 },
4093 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2132 },
4094 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2135 },
4095 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2136 },
4096 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2137 },
4097 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2141 },
4098 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2142 },
4099 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2008 },
4100 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
4176 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2164 },
4177 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2166 },
4178 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1974 },
4179 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2167 },
4180 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1981 },
4181 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2168 },
4182 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2169 },
4183 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2170 },
4184 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2171 },
4185 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1974 },
4186 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2172 },
4187 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2175 },
4188 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2178 },
4189 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2179 },
4190 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2180 },
4191 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2184 },
4192 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2185 },
4193 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2047 },
4194 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
41014195 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4102 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2143 },
4103 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2144 },
4104 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2145 },
4105 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2146 },
4196 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2186 },
4197 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2187 },
4198 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2188 },
4199 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2189 },
41064200 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
41074201 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
41084202 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4109 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1977 },
4110 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2148 },
4111 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2149 },
4112 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2150 },
4113 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1977 },
4114 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2151 },
4115 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1974 },
4116 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
4117 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2152 },
4118 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2157 },
4119 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1981 },
4120 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2158 },
4121 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2161 },
4122 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1736 },
4123 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2162 },
4124 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2164 },
4125 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 604 },
4126 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 2166 },
4203 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2191 },
4204 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2192 },
4205 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2193 },
4206 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2194 },
4207 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2195 },
4208 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2197 },
4209 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2198 },
4210 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2012 },
4211 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2199 },
4212 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2009 },
4213 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4214 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2200 },
4215 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2205 },
4216 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 2016 },
4217 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2206 },
4218 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2209 },
4219 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1756 },
4220 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2210 },
4221 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2212 },
4222 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4223 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2214 },
4224 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4225 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 606 },
4226 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1993 },
4227 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 2215 },
41274228 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4128 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2169 },
4129 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
4130 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1787 },
4131 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2170 },
4132 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2172 },
4133 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2173 },
4134 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2174 },
4135 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2177 },
4136 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2180 },
4137 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2181 },
4229 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2218 },
4230 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4231 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1815 },
4232 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2219 },
4233 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2221 },
4234 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2222 },
4235 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2223 },
4236 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 2226 },
4237 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2229 },
4238 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2230 },
41384239 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4139 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1999 },
4140 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2181 },
4141 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1778 },
4142 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2182 },
4143 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
4240 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2038 },
4241 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2230 },
4242 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1801 },
4243 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2231 },
4244 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
41444245 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4145 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1130 },
4146 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1787 },
4147 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2007 },
4148 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2007 },
4149 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2186 },
4150 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1940 },
4151 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2187 },
4152 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 12, .child_index = 2188 },
4153 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 2191 },
4154 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1728 },
4155 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
4246 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1135 },
4247 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1815 },
4248 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2046 },
4249 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2046 },
4250 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2235 },
4251 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1970 },
4252 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2236 },
4253 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 12, .child_index = 2237 },
4254 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 2240 },
4255 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1747 },
4256 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
41564257 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4157 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1817 },
4158 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1529 },
4159 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1832 },
4258 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1845 },
4259 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1544 },
4260 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1860 },
41604261 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4161 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1531 },
4162 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
4163 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2194 },
4164 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2195 },
4262 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1546 },
4263 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4264 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2243 },
4265 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2244 },
4266 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2248 },
4267 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2253 },
41654268 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
41664269 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4167 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 621 },
4168 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 621 },
4270 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 623 },
4271 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 623 },
41694272 .{ .char = 'a', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
4170 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 892 },
4171 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2196 },
4172 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2199 },
4173 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 913 },
4174 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 913 },
4175 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1257 },
4176 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1208 },
4177 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2202 },
4178 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2203 },
4179 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2204 },
4180 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2205 },
4273 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 897 },
4274 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2254 },
4275 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2257 },
4276 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 918 },
4277 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 918 },
4278 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1268 },
4279 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1219 },
4280 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2260 },
4281 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2261 },
4282 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2262 },
4283 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2263 },
41814284 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4182 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2206 },
4183 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2042 },
4184 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2207 },
4185 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2206 },
4186 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 2209 },
4187 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2207 },
4188 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2206 },
4189 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 961 },
4190 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2211 },
4191 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2212 },
4192 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2213 },
4193 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1883 },
4194 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2211 },
4195 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2212 },
4196 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1883 },
4197 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2059 },
4285 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2264 },
4286 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2083 },
4287 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2265 },
4288 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2264 },
4289 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 2267 },
4290 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2265 },
4291 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2264 },
4292 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 966 },
4293 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2269 },
4294 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2270 },
4295 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2271 },
4296 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1913 },
4297 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2269 },
4298 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2270 },
4299 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1913 },
4300 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2100 },
41984301 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4199 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
4200 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
4201 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2214 },
4202 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
4203 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1299 },
4204 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
4205 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1299 },
4206 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1302 },
4207 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2037 },
4208 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2215 },
4209 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2216 },
4210 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2216 },
4211 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2217 },
4212 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2218 },
4213 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2219 },
4302 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
4303 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
4304 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2272 },
4305 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
4306 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1310 },
4307 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
4308 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1310 },
4309 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1313 },
4310 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2078 },
4311 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2273 },
4312 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2274 },
4313 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2274 },
4314 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2275 },
4315 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2276 },
4316 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2277 },
42144317 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4215 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2220 },
4216 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2221 },
4217 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 961 },
4218 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2223 },
4219 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1884 },
4220 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2224 },
4221 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2081 },
4222 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1080 },
4223 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2225 },
4224 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2227 },
4318 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2278 },
4319 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2279 },
4320 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 966 },
4321 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2281 },
4322 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1914 },
4323 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2282 },
4324 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2122 },
4325 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1085 },
4326 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2283 },
4327 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2285 },
42254328 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
4226 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 742 },
4227 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2225 },
4228 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2227 },
4329 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 744 },
4330 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2283 },
4331 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2285 },
42294332 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
4230 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 902 },
4231 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 742 },
4232 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2225 },
4233 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2227 },
4333 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 907 },
4334 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 744 },
4335 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2283 },
4336 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2285 },
42344337 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
42354338 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 270 },
4236 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2225 },
4237 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2227 },
4339 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2283 },
4340 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2285 },
42384341 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
4239 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 902 },
4240 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2225 },
4241 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2227 },
4342 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
4343 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2283 },
4344 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2285 },
42424345 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
4243 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2228 },
4244 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2229 },
4245 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1852 },
4246 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2225 },
4247 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2227 },
4346 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2286 },
4347 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2287 },
4348 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1882 },
4349 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2283 },
4350 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2285 },
42484351 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 455 },
4249 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2120 },
4250 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2120 },
4251 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2120 },
4252 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2120 },
4253 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1211 },
4254 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 704 },
4255 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1336 },
4256 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1560 },
4352 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2161 },
4353 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2161 },
4354 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2161 },
4355 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2161 },
4356 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1222 },
4357 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 706 },
4358 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1347 },
4359 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1578 },
42574360 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4258 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2230 },
4259 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2231 },
4260 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2232 },
4261 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2233 },
4262 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4361 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2288 },
4362 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2289 },
4363 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2290 },
4364 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2291 },
4365 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
42634366 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4264 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2234 },
4265 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2235 },
4266 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2236 },
4267 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2238 },
4367 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2292 },
4368 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2293 },
4369 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2294 },
4370 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2296 },
4371 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2297 },
4372 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2298 },
42684373 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4269 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 621 },
4374 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 623 },
42704375 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4271 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4272 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1714 },
4273 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
4274 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2239 },
4275 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2239 },
4276 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4277 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1715 },
4278 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1715 },
4279 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
4280 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1722 },
4281 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2240 },
4376 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4377 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1732 },
4378 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4379 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2299 },
4380 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2299 },
4381 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4382 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4383 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4384 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4385 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1741 },
4386 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2300 },
42824387 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
42834388 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4284 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1787 },
4285 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4286 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1193 },
4287 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2243 },
4288 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2245 },
4289 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
4290 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2017 },
4389 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1815 },
4390 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4391 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1204 },
4392 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2303 },
4393 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2304 },
4394 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2305 },
4395 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2306 },
4396 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2308 },
4397 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2171 },
4398 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2309 },
4399 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4400 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2056 },
42914401 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4292 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1714 },
4402 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1732 },
42934403 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4294 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1715 },
4295 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 621 },
4296 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2247 },
4297 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4298 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1963 },
4299 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2248 },
4300 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1736 },
4301 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1982 },
4302 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2161 },
4303 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 2249 },
4304 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2252 },
4305 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4306 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2254 },
4307 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2255 },
4308 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2256 },
4309 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2257 },
4310 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2258 },
4311 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2259 },
4312 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 2260 },
4313 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1715 },
4314 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2261 },
4315 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
4316 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2258 },
4317 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2258 },
4318 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
4319 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2262 },
4320 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2264 },
4321 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4322 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2265 },
4323 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2266 },
4324 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2264 },
4325 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1531 },
4326 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2267 },
4327 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1739 },
4328 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1728 },
4329 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
4330 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4331 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1963 },
4332 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2268 },
4333 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2269 },
4334 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2271 },
4335 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 913 },
4336 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 913 },
4337 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2273 },
4338 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1360 },
4339 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1360 },
4340 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2274 },
4341 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
4342 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2275 },
4404 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4405 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 623 },
4406 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2311 },
4407 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4408 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1995 },
4409 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2312 },
4410 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1756 },
4411 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2017 },
4412 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2209 },
4413 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 2313 },
4414 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2316 },
4415 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2318 },
4416 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4417 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2320 },
4418 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2321 },
4419 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2322 },
4420 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2323 },
4421 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2324 },
4422 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2325 },
4423 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 10, .child_index = 2326 },
4424 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4425 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2327 },
4426 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4427 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2324 },
4428 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2324 },
4429 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4430 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2328 },
4431 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2330 },
4432 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4433 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2331 },
4434 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2332 },
4435 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2330 },
4436 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1546 },
4437 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2333 },
4438 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1759 },
4439 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 1747 },
4440 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4441 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4442 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1995 },
4443 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2334 },
4444 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2335 },
4445 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4446 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1732 },
4447 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4448 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2337 },
4449 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4450 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4451 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4452 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2337 },
4453 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4454 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2338 },
4455 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 918 },
4456 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 918 },
4457 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2340 },
4458 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1371 },
4459 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1371 },
4460 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2341 },
4461 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 985 },
4462 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2342 },
43434463 .{ .char = 'P', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4344 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2276 },
4345 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2277 },
4346 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2206 },
4347 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2206 },
4348 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2277 },
4464 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2343 },
4465 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2344 },
4466 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2264 },
4467 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2264 },
4468 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2344 },
43494469 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4350 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1022 },
4351 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1022 },
4352 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2278 },
4353 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2279 },
4354 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2280 },
4355 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 964 },
4356 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2075 },
4357 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2281 },
4358 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2282 },
4359 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1208 },
4470 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1027 },
4471 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1027 },
4472 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2345 },
4473 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2346 },
4474 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2347 },
4475 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 969 },
4476 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2116 },
4477 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2348 },
4478 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2349 },
4479 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1219 },
43604480 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
4361 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2283 },
4362 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2284 },
4363 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 970 },
4364 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1317 },
4365 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 970 },
4366 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1317 },
4367 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2285 },
4368 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2286 },
4369 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2287 },
4370 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2288 },
4371 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2289 },
4372 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2290 },
4373 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2292 },
4374 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2293 },
4375 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2294 },
4376 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1951 },
4377 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2295 },
4378 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2296 },
4379 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
4481 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2350 },
4482 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2351 },
4483 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 975 },
4484 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1328 },
4485 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 975 },
4486 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1328 },
4487 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2352 },
4488 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2353 },
4489 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2354 },
4490 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2355 },
4491 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2356 },
4492 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2357 },
4493 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2359 },
4494 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2360 },
4495 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2361 },
4496 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1981 },
4497 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2362 },
4498 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2363 },
4499 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2365 },
4500 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2367 },
4501 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
43804502 .{ .char = 'o', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4381 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1952 },
4503 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1984 },
4504 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2369 },
4505 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2327 },
4506 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2370 },
43824507 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4383 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2298 },
4384 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2299 },
4508 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2214 },
4509 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2371 },
4510 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2369 },
43854511 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4386 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2258 },
4387 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
4388 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
4512 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2324 },
4513 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4514 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
43894515 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4390 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2252 },
4391 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
4516 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2316 },
4517 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
43924518 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4519 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2372 },
4520 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2373 },
43934521 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4394 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2300 },
4395 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2301 },
4396 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
4397 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1728 },
4398 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2302 },
4399 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2305 },
4400 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2310 },
4401 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4402 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2311 },
4403 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1963 },
4404 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2181 },
4405 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2312 },
4406 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2268 },
4407 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1736 },
4408 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 12, .child_index = 2313 },
4409 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2316 },
4410 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
4522 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2374 },
4523 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2375 },
4524 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4525 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1747 },
4526 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2376 },
4527 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2379 },
4528 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2384 },
4529 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4530 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2385 },
4531 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1995 },
4532 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2230 },
4533 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2386 },
4534 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2334 },
4535 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1756 },
4536 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 12, .child_index = 2387 },
4537 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2390 },
4538 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 874 },
4539 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
44114540 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4412 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2318 },
4413 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2319 },
4414 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2038 },
4415 .{ .char = '9', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2320 },
4416 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2321 },
4417 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1281 },
4418 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1891 },
4419 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1354 },
4420 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2322 },
4421 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
4422 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2323 },
4423 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1602 },
4424 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2324 },
4425 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2325 },
4426 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2326 },
4427 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2327 },
4428 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
4429 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4430 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2328 },
4431 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2329 },
4432 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2330 },
4433 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1951 },
4434 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2331 },
4435 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4436 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2332 },
4437 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2333 },
4438 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2335 },
4439 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2336 },
4440 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2337 },
4441 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4442 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1715 },
4443 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2338 },
4444 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4445 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1715 },
4446 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2338 },
4447 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2261 },
4448 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1715 },
4449 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2339 },
4541 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2392 },
4542 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2393 },
4543 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2079 },
4544 .{ .char = '9', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2394 },
4545 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2395 },
4546 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1292 },
4547 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1921 },
4548 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1365 },
4549 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2396 },
4550 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
4551 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2397 },
4552 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
4553 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2398 },
4554 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2399 },
4555 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2400 },
4556 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2401 },
4557 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
4558 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4559 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2402 },
4560 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2403 },
4561 .{ .char = '0', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2404 },
4562 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1981 },
4563 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2405 },
4564 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4565 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2327 },
4566 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2369 },
4567 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4568 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4569 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2337 },
4570 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2406 },
4571 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2407 },
4572 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2409 },
4573 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4574 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4575 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2412 },
4576 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2413 },
4577 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4578 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4579 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2414 },
4580 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4581 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4582 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2414 },
4583 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2327 },
4584 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1733 },
4585 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2372 },
44504586 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4451 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2340 },
4452 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2341 },
4587 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2415 },
4588 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2416 },
44534589 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4454 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2316 },
4455 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2341 },
4590 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 2390 },
4591 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2416 },
44564592 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4457 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2343 },
4458 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2344 },
4459 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2345 },
4460 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2346 },
4461 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2058 },
4462 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2347 },
4463 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2231 },
4464 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2348 },
4465 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2349 },
4466 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2350 },
4467 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2264 },
4468 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2351 },
4469 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2353 },
4470 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2355 },
4471 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 870 },
4472 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2339 },
4473 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2356 },
4474 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2356 },
4475 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2357 },
4476 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2358 },
4477 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2360 },
4478 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4479 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2361 },
4480 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4481 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1771 },
4482 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2034 },
4483 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2363 },
4593 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2418 },
4594 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2419 },
4595 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2420 },
4596 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2421 },
4597 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2099 },
4598 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2422 },
4599 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2289 },
4600 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2423 },
4601 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2424 },
4602 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2425 },
4603 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2330 },
4604 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2426 },
4605 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2428 },
4606 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2430 },
4607 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2373 },
4608 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4609 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1773 },
4610 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1732 },
4611 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1733 },
4612 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2327 },
4613 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2431 },
4614 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2432 },
4615 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2434 },
4616 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2435 },
4617 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4618 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1794 },
4619 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2075 },
4620 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2437 },
44844621 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 264 },
4485 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
4622 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
44864623 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4487 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
4488 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2365 },
4489 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2366 },
4490 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 823 },
4491 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2356 },
4492 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4493 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2367 },
4624 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 979 },
4625 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2439 },
4626 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2440 },
4627 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 825 },
4628 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2373 },
4629 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4630 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2441 },
44944631 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 358 },
4495 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4496 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1961 },
4497 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2368 },
4632 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1993 },
4633 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2442 },
44984634 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4499 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1974 },
4500 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
4501 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2264 },
4502 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1360 },
4503 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1360 },
4504 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2120 },
4505 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2370 },
4506 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 870 },
4635 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2009 },
4636 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1100 },
4637 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2330 },
4638 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1371 },
4639 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1371 },
4640 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2161 },
4641 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2444 },
4642 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 874 },
45074643 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 567 },
4508 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2371 },
4509 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2373 },
4510 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1724 },
4644 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2445 },
4645 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2447 },
4646 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1743 },
45114647 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 567 },
4512 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2374 },
4513 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2375 },
4514 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 705 },
4648 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2448 },
4649 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2449 },
4650 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 707 },
45154651};
45164652pub const data = blk: {
4517 @setEvalBranchQuota(17802);
4653 @setEvalBranchQuota(18360);
45184654 break :blk [_]Properties{
4519 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4520 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4521 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4522 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4523 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4524 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4525 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4526 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4527 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4528 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4529 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4530 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4531 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4532 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4533 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4534 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4535 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4536 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4537 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4538 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4539 .{ .param_str = "LLiiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4540 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4541 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4542 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4543 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4544 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4545 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4546 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4547 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4548 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4549 .{ .param_str = "LLiIiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4550 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4551 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4552 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4553 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4554 .{ .param_str = "ULLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4555 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4556 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4557 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4558 .{ .param_str = "ULLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4559 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4560 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4561 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4562 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4563 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4564 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4565 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4566 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4567 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4568 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4569 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4570 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4571 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4572 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4573 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4574 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4575 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4576 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4577 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4578 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4579 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4580 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4581 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4582 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4583 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4584 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4585 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4586 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4587 .{ .param_str = "iIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4588 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4589 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4590 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4591 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4592 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4593 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4594 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4595 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4596 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4597 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4598 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4599 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4600 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4601 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4602 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4603 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4604 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4605 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4606 .{ .param_str = "LLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4607 .{ .param_str = "iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4608 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4609 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4610 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4611 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4612 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4613 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4614 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4615 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4616 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4617 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4618 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4619 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4620 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4621 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4622 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4623 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4624 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4625 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4626 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4627 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4628 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4629 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4630 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4631 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4632 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4633 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4634 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4635 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4636 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4637 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4638 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4639 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4640 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4641 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4642 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4643 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4644 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4645 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4646 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4647 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4648 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4649 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4650 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4651 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4652 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4653 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4654 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4655 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4656 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4657 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4658 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4659 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4660 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4661 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4662 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4663 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4664 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4665 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4666 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4667 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4668 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4669 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4670 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4671 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4672 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4673 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4674 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4675 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4676 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4677 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4678 .{ .param_str = "LLiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4679 .{ .param_str = "iiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4680 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4681 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4682 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4683 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4684 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4685 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4686 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4687 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4688 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4689 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4690 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4691 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4692 .{ .param_str = "LLiIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4693 .{ .param_str = "LLiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4694 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4695 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4696 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4697 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4698 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4699 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4700 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4701 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4702 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4703 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4704 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4705 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4706 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4707 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4708 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4709 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4710 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4711 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4712 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4713 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4714 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4715 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4716 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4717 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4718 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4719 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4720 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4721 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4722 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4723 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4724 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4725 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4726 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4727 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4728 .{ .param_str = "iLLiLLi", .features = "v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4729 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4655 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4656 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4657 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4658 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4659 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4660 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4661 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4662 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4663 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4664 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4665 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4666 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4667 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4668 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4669 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4670 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4671 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4672 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4673 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4674 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4675 .{ .param_str = "LLiiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4676 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4677 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4678 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4679 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4680 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4681 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4682 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4683 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4684 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4685 .{ .param_str = "LLiIiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4686 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4687 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4688 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4689 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4690 .{ .param_str = "ULLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4691 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4692 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4693 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4694 .{ .param_str = "ULLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4695 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4696 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4697 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4698 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4699 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4700 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4701 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4702 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4703 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4704 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4705 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4706 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4707 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4708 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4709 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4710 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4711 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4712 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4713 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4714 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4715 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4716 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4717 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4718 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4719 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4720 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4721 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4722 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4723 .{ .param_str = "iIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4724 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4725 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4726 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4727 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4728 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4729 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4730 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4731 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4732 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4733 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4734 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4735 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4736 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4737 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4738 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4739 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4740 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4741 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4742 .{ .param_str = "LLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4743 .{ .param_str = "iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4744 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4745 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4746 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4747 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4748 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4749 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4750 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4751 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4752 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4753 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4754 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4755 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4756 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4757 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4758 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4759 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4760 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4761 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4762 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4763 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4764 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4765 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4766 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4767 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4768 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4769 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4770 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4771 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4772 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4773 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4774 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4775 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4776 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4777 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4778 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4779 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4780 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4781 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4782 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4783 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4784 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4785 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4786 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4787 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4788 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4789 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4790 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4791 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4792 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4793 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4794 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4795 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4796 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4797 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4798 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4799 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4800 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4801 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4802 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4803 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4804 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4805 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4806 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4807 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4808 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4809 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4810 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4811 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4812 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4813 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4814 .{ .param_str = "LLiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4815 .{ .param_str = "iiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4816 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4817 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4818 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4819 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4820 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4821 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4822 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4823 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4824 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4825 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4826 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4827 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4828 .{ .param_str = "LLiIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4829 .{ .param_str = "LLiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4830 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4831 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4832 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4833 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4834 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4835 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4836 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4837 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4838 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4839 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4840 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4841 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4842 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4843 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4844 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4845 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4846 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4847 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4848 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4849 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4850 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4851 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4852 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4853 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4854 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4855 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4856 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4857 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4858 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4859 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4860 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4861 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4862 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4863 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4864 .{ .param_str = "iLLiLLi", .features = "v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4865 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
47304866 .{ .param_str = "iiUIi", .features = "audio" },
47314867 .{ .param_str = "LLiLLiUIi", .features = "audio" },
47324868 .{ .param_str = "LLiLLii", .features = "audio" },
47334869 .{ .param_str = "LLiLLiUIi", .features = "audio" },
4734 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4735 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4736 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4737 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4738 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4739 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4740 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4741 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4742 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4743 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4744 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4745 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4746 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4747 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4748 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4749 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4750 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4751 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4752 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4753 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4754 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4755 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4756 .{ .param_str = "iiIiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4757 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4758 .{ .param_str = "iiIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4759 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4760 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4761 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4762 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4763 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4764 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4765 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4766 .{ .param_str = "LLiiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4767 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4768 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4769 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4770 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4771 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4772 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4773 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4774 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4775 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4776 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4777 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4778 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4779 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4780 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4781 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4782 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4783 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4784 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4785 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4786 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4787 .{ .param_str = "dLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4788 .{ .param_str = "fLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4789 .{ .param_str = "LLid", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4790 .{ .param_str = "LLid", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4791 .{ .param_str = "fd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4792 .{ .param_str = "LLid", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4793 .{ .param_str = "LLid", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4794 .{ .param_str = "id", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4795 .{ .param_str = "id", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4796 .{ .param_str = "id", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4797 .{ .param_str = "id", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4798 .{ .param_str = "LLif", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4799 .{ .param_str = "LLif", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4800 .{ .param_str = "df", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4801 .{ .param_str = "LLif", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4802 .{ .param_str = "LLif", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4803 .{ .param_str = "if", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4804 .{ .param_str = "if", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4805 .{ .param_str = "if", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4806 .{ .param_str = "if", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4807 .{ .param_str = "dLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4808 .{ .param_str = "fLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4809 .{ .param_str = "di", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4810 .{ .param_str = "fi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4811 .{ .param_str = "di", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4812 .{ .param_str = "fi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4813 .{ .param_str = "ddd", .features = "v66|v67|v68|v69|v71|v73|v75|v79" },
4814 .{ .param_str = "idUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4815 .{ .param_str = "idd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4816 .{ .param_str = "idd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4817 .{ .param_str = "idd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4818 .{ .param_str = "idd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4819 .{ .param_str = "dUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4820 .{ .param_str = "dUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4821 .{ .param_str = "ddd", .features = "v67|v68|v69|v71|v73|v75|v79" },
4822 .{ .param_str = "ddd", .features = "v67|v68|v69|v71|v73|v75|v79" },
4823 .{ .param_str = "ddd", .features = "v67|v68|v69|v71|v73|v75|v79" },
4824 .{ .param_str = "dddd", .features = "v67|v68|v69|v71|v73|v75|v79" },
4825 .{ .param_str = "dddd", .features = "v67|v68|v69|v71|v73|v75|v79" },
4826 .{ .param_str = "ddd", .features = "v67|v68|v69|v71|v73|v75|v79" },
4827 .{ .param_str = "ddd", .features = "v66|v67|v68|v69|v71|v73|v75|v79" },
4828 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4829 .{ .param_str = "ifUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4830 .{ .param_str = "iff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4831 .{ .param_str = "iff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4832 .{ .param_str = "iff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4833 .{ .param_str = "iff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4834 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4835 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4836 .{ .param_str = "ff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4837 .{ .param_str = "ffff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4838 .{ .param_str = "ffff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4839 .{ .param_str = "ffffi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4840 .{ .param_str = "ffff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4841 .{ .param_str = "ffff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4842 .{ .param_str = "fUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4843 .{ .param_str = "fUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4844 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4845 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4846 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4847 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4848 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4849 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4850 .{ .param_str = "LLiv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4851 .{ .param_str = "LLiv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4852 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4853 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4854 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4855 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4856 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4857 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4858 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4859 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4860 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4861 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4862 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4863 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4864 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4865 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4866 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4867 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4868 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4869 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4870 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4871 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4872 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4873 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4874 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4875 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4876 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4877 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4878 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4879 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4880 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4881 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4882 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4883 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4884 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4885 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4886 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4887 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4888 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4889 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4890 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4891 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4892 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4893 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4894 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4895 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4896 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4897 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4898 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4899 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4900 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4901 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4902 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4903 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4904 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4905 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4906 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4907 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4908 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4909 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4910 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4911 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4912 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4913 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4914 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4915 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4916 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4917 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4918 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4919 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4920 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4921 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4922 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4923 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4924 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4925 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4926 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4927 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4928 .{ .param_str = "iiii", .features = "v66|v67|v68|v69|v71|v73|v75|v79" },
4929 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4930 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4931 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4932 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4933 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4934 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4935 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4936 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4937 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4938 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4939 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4940 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4941 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4942 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4943 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4944 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4945 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4946 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4947 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4948 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4949 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4950 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4951 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4952 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4953 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4954 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4955 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4956 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4957 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4958 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4959 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4960 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4961 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4962 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4963 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4964 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4965 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4966 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4967 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4968 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4969 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4970 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4971 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4972 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4973 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4974 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4975 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4976 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4977 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4978 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4979 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4980 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4981 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4982 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4983 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4984 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4985 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4986 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4987 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4988 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4989 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4990 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4991 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4992 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4993 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4994 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4995 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4996 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4997 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4998 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4999 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5000 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5001 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5002 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5003 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5004 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5005 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5006 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5007 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5008 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5009 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5010 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5011 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5012 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5013 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5014 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5015 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5016 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5017 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5018 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5019 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5020 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5021 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5022 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5023 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5024 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5025 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5026 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5027 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5028 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5029 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5030 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5031 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5032 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5033 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5034 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5035 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5036 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5037 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5038 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5039 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5040 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5041 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5042 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5043 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5044 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5045 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5046 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5047 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5048 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5049 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5050 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5051 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5052 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5053 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5054 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5055 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5056 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5057 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5058 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5059 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5060 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5061 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5062 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5063 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5064 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5065 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5066 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5067 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5068 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5069 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5070 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5071 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5072 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5073 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5074 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5075 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5076 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5077 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5078 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5079 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5080 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5081 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5082 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5083 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5084 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5085 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5086 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5087 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5088 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5089 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5090 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5091 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5092 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5093 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5094 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5095 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5096 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5097 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5098 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5099 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5100 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5101 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5102 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5103 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5104 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5105 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5106 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5107 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5108 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5109 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5110 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5111 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5112 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5113 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5114 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5115 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5116 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5117 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5118 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5119 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5120 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5121 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5122 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5123 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5124 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5125 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5126 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5127 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5128 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5129 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5130 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5131 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5132 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5133 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5134 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5135 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5136 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5137 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5138 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5139 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5140 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5141 .{ .param_str = "iiUIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5142 .{ .param_str = "iUIiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5143 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5144 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5145 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5146 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5147 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5148 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5149 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5150 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5151 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5152 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5153 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5154 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5155 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5156 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5157 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5158 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5159 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5160 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5161 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5162 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5163 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5164 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5165 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5166 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5167 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5168 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5169 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5170 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5171 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5172 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5173 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5174 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5175 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5176 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
4870 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4871 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4872 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4873 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4874 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4875 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4876 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4877 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4878 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4879 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4880 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4881 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4882 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4883 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4884 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4885 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4886 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4887 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4888 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4889 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4890 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4891 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4892 .{ .param_str = "iiIiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4893 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4894 .{ .param_str = "iiIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4895 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4896 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4897 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4898 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4899 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4900 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4901 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4902 .{ .param_str = "LLiiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4903 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4904 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4905 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4906 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4907 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4908 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4909 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4910 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4911 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4912 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4913 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4914 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4915 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4916 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4917 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4918 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4919 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4920 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4921 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4922 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4923 .{ .param_str = "dLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4924 .{ .param_str = "fLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4925 .{ .param_str = "LLid", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4926 .{ .param_str = "LLid", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4927 .{ .param_str = "fd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4928 .{ .param_str = "LLid", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4929 .{ .param_str = "LLid", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4930 .{ .param_str = "id", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4931 .{ .param_str = "id", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4932 .{ .param_str = "id", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4933 .{ .param_str = "id", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4934 .{ .param_str = "LLif", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4935 .{ .param_str = "LLif", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4936 .{ .param_str = "df", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4937 .{ .param_str = "LLif", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4938 .{ .param_str = "LLif", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4939 .{ .param_str = "if", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4940 .{ .param_str = "if", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4941 .{ .param_str = "if", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4942 .{ .param_str = "if", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4943 .{ .param_str = "dLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4944 .{ .param_str = "fLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4945 .{ .param_str = "di", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4946 .{ .param_str = "fi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4947 .{ .param_str = "di", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4948 .{ .param_str = "fi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4949 .{ .param_str = "ddd", .features = "v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4950 .{ .param_str = "idUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4951 .{ .param_str = "idd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4952 .{ .param_str = "idd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4953 .{ .param_str = "idd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4954 .{ .param_str = "idd", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4955 .{ .param_str = "dUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4956 .{ .param_str = "dUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4957 .{ .param_str = "ddd", .features = "v67|v68|v69|v71|v73|v75|v79|v81" },
4958 .{ .param_str = "ddd", .features = "v67|v68|v69|v71|v73|v75|v79|v81" },
4959 .{ .param_str = "ddd", .features = "v67|v68|v69|v71|v73|v75|v79|v81" },
4960 .{ .param_str = "dddd", .features = "v67|v68|v69|v71|v73|v75|v79|v81" },
4961 .{ .param_str = "dddd", .features = "v67|v68|v69|v71|v73|v75|v79|v81" },
4962 .{ .param_str = "ddd", .features = "v67|v68|v69|v71|v73|v75|v79|v81" },
4963 .{ .param_str = "ddd", .features = "v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4964 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4965 .{ .param_str = "ifUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4966 .{ .param_str = "iff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4967 .{ .param_str = "iff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4968 .{ .param_str = "iff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4969 .{ .param_str = "iff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4970 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4971 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4972 .{ .param_str = "ff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4973 .{ .param_str = "ffff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4974 .{ .param_str = "ffff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4975 .{ .param_str = "ffffi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4976 .{ .param_str = "ffff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4977 .{ .param_str = "ffff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4978 .{ .param_str = "fUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4979 .{ .param_str = "fUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4980 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4981 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4982 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4983 .{ .param_str = "fff", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4984 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4985 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4986 .{ .param_str = "LLiv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4987 .{ .param_str = "LLiv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4988 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4989 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4990 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4991 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4992 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4993 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4994 .{ .param_str = "iv*IiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4995 .{ .param_str = "iv*ivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4996 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4997 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4998 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
4999 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5000 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5001 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5002 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5003 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5004 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5005 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5006 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5007 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5008 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5009 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5010 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5011 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5012 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5013 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5014 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5015 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5016 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5017 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5018 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5019 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5020 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5021 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5022 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5023 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5024 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5025 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5026 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5027 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5028 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5029 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5030 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5031 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5032 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5033 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5034 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5035 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5036 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5037 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5038 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5039 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5040 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5041 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5042 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5043 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5044 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5045 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5046 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5047 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5048 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5049 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5050 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5051 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5052 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5053 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5054 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5055 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5056 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5057 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5058 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5059 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5060 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5061 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5062 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5063 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5064 .{ .param_str = "iiii", .features = "v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5065 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5066 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5067 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5068 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5069 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5070 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5071 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5072 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5073 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5074 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5075 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5076 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5077 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5078 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5079 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5080 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5081 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5082 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5083 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5084 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5085 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5086 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5087 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5088 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5089 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5090 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5091 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5092 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5093 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5094 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5095 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5096 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5097 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5098 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5099 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5100 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5101 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5102 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5103 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5104 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5105 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5106 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5107 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5108 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5109 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5110 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5111 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5112 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5113 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5114 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5115 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5116 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5117 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5118 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5119 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5120 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5121 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5122 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5123 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5124 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5125 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5126 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5127 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5128 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5129 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5130 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5131 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5132 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5133 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5134 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5135 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5136 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5137 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5138 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5139 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5140 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5141 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5142 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5143 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5144 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5145 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5146 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5147 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5148 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5149 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5150 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5151 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5152 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5153 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5154 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5155 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5156 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5157 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5158 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5159 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5160 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5161 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5162 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5163 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5164 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5165 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5166 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5167 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5168 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5169 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5170 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5171 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5172 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5173 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5174 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5175 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5176 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5177 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5178 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5179 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5180 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5181 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5182 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5183 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5184 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5185 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5186 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5187 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5188 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5189 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5190 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5191 .{ .param_str = "Uiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5192 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5193 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5194 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5195 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5196 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5197 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5198 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5199 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5200 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5201 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5202 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5203 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5204 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5205 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5206 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5207 .{ .param_str = "ULLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5208 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5209 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5210 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5211 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5212 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5213 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5214 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5215 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5216 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5217 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5218 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5219 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5220 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5221 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5222 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5223 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5224 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5225 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5226 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5227 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5228 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5229 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5230 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5231 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5232 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5233 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5234 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5235 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5236 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5237 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5238 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5239 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5240 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5241 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5242 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5243 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5244 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5245 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5246 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5247 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5248 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5249 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5250 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5251 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5252 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5253 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5254 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5255 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5256 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5257 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5258 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5259 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5260 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5261 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5262 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5263 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5264 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5265 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5266 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5267 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5268 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5269 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5270 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5271 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5272 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5273 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5274 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5275 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5276 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5277 .{ .param_str = "iiUIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5278 .{ .param_str = "iUIiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5279 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5280 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5281 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5282 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5283 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5284 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5285 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5286 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5287 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5288 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5289 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5290 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5291 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5292 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5293 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5294 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5295 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5296 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5297 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5298 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5299 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5300 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5301 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5302 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5303 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5304 .{ .param_str = "LLiLLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5305 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5306 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5307 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5308 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5309 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5310 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5311 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5312 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
51775313 .{ .param_str = "LLiLLiLLi", .features = "audio" },
51785314 .{ .param_str = "LLiLLiLLiLLi", .features = "audio" },
51795315 .{ .param_str = "LLiLLiLLi", .features = "audio" },
......@@ -5182,8 +5318,8 @@ pub const data = blk: {
51825318 .{ .param_str = "LLiLLiLLiLLi", .features = "audio" },
51835319 .{ .param_str = "LLiLLiLLi", .features = "audio" },
51845320 .{ .param_str = "LLiLLiLLiLLi", .features = "audio" },
5185 .{ .param_str = "LLiLLiLLi", .features = "v67|v68|v69|v71|v73|v75|v79" },
5186 .{ .param_str = "LLiLLiLLiLLi", .features = "v67|v68|v69|v71|v73|v75|v79" },
5321 .{ .param_str = "LLiLLiLLi", .features = "v67|v68|v69|v71|v73|v75|v79|v81" },
5322 .{ .param_str = "LLiLLiLLiLLi", .features = "v67|v68|v69|v71|v73|v75|v79|v81" },
51875323 .{ .param_str = "iLLiLLi", .features = "audio" },
51885324 .{ .param_str = "iLLiLLi", .features = "audio" },
51895325 .{ .param_str = "iLLiLLi", .features = "audio" },
......@@ -5192,1308 +5328,1370 @@ pub const data = blk: {
51925328 .{ .param_str = "iLLiLLi", .features = "audio" },
51935329 .{ .param_str = "iLLiLLi", .features = "audio" },
51945330 .{ .param_str = "iLLiLLi", .features = "audio" },
5195 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5196 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5197 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5198 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5199 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5200 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5201 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5202 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5203 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5204 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5205 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5206 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5207 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5208 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5209 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5210 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5211 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5212 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5213 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5214 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5215 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5216 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5217 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5218 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5219 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5220 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5221 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5222 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5223 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5224 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5225 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5226 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5227 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5228 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5229 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5230 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5231 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5232 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5233 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5234 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5235 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5236 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5237 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5238 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5239 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5240 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5241 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5242 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5243 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5244 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5245 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5246 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5247 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5248 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5249 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5250 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5251 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5252 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5253 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5254 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5255 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5256 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5257 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5258 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5259 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5260 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5261 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5262 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5263 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5264 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5265 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5266 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5267 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5268 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5269 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5270 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5271 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5272 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5273 .{ .param_str = "iiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5274 .{ .param_str = "iiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5275 .{ .param_str = "LLiLLiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5276 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5277 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5278 .{ .param_str = "iiiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5279 .{ .param_str = "LLiLLiLLiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5280 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5281 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5282 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5283 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5284 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5285 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5286 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5287 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5288 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5289 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5290 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5291 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5292 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5293 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5294 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5295 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5296 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5297 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5298 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5299 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5300 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5301 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5302 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5303 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5304 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5305 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5306 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5307 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5308 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5309 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5310 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5311 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5312 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5313 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5314 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5315 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5316 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5317 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5318 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5319 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5320 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5321 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5322 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5323 .{ .param_str = "iUIiUIi", .features = "v66|v67|v68|v69|v71|v73|v75|v79" },
5324 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5325 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5326 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5327 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5328 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5329 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5330 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5331 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5332 .{ .param_str = "vv*IiiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5333 .{ .param_str = "vv*iivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5334 .{ .param_str = "vv*IiiLLivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5335 .{ .param_str = "vv*iLLivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5336 .{ .param_str = "vv*IiiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5337 .{ .param_str = "vv*iivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5338 .{ .param_str = "vv*IiiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5339 .{ .param_str = "vv*iivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5340 .{ .param_str = "vv*IiiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5341 .{ .param_str = "vv*iivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5342 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5343 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5344 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5345 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5346 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5347 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5348 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5349 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5350 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5351 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5352 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5353 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5354 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5355 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5356 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5357 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5358 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5359 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5360 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5361 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5362 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5363 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5364 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5365 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5366 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5367 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5368 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5369 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5370 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5371 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5372 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5373 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5374 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5375 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5376 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5377 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5378 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5379 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5380 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5381 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5382 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5383 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5384 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5385 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5386 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5387 .{ .param_str = "iiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5388 .{ .param_str = "iiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5389 .{ .param_str = "LLiLLiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5390 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5391 .{ .param_str = "iIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5392 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5393 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5394 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5395 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5396 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5397 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5398 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5399 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5400 .{ .param_str = "iiIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5401 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5402 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5403 .{ .param_str = "LLiLLiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5404 .{ .param_str = "LLiLLiLLiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5405 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5406 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5407 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5408 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5409 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5410 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5411 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5412 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5413 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5414 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5415 .{ .param_str = "LLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5416 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5417 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5418 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5419 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5420 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5421 .{ .param_str = "iiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5422 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5423 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5424 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5425 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5426 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5427 .{ .param_str = "LLii", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5428 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5429 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
5430 .{ .param_str = "iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5431 .{ .param_str = "iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5432 .{ .param_str = "V16iV16ii", .features = "hvxv79" },
5433 .{ .param_str = "V32iV32ii", .features = "hvxv79" },
5434 .{ .param_str = "V16iV16iV16ii", .features = "hvxv79" },
5435 .{ .param_str = "V32iV32iV32ii", .features = "hvxv79" },
5436 .{ .param_str = "V16iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5437 .{ .param_str = "V32iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5438 .{ .param_str = "V16iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5439 .{ .param_str = "V32iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5440 .{ .param_str = "V16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5441 .{ .param_str = "V32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5442 .{ .param_str = "V16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5443 .{ .param_str = "V32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5444 .{ .param_str = "V16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5445 .{ .param_str = "V32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5446 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5447 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5448 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5449 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5450 .{ .param_str = "V64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5451 .{ .param_str = "V128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5452 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5453 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5454 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5455 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5456 .{ .param_str = "V64bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5457 .{ .param_str = "V128bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5458 .{ .param_str = "V64bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5459 .{ .param_str = "V128bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5460 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5461 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5462 .{ .param_str = "V16iV16ii", .features = "hvxv79" },
5463 .{ .param_str = "V32iV32ii", .features = "hvxv79" },
5464 .{ .param_str = "V64bV64bV64b", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5465 .{ .param_str = "V128bV128bV128b", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5466 .{ .param_str = "V64bV64bV64b", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5467 .{ .param_str = "V128bV128bV128b", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5468 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5469 .{ .param_str = "V64iV64iV64iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5470 .{ .param_str = "V32iV32iV32iV32iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5471 .{ .param_str = "V64iV64iV64iV64iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5472 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5473 .{ .param_str = "V64iV64iV64iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5474 .{ .param_str = "V32iV32iV32iV32iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5475 .{ .param_str = "V64iV64iV64iV64iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5476 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5477 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5478 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5479 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5480 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5481 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5482 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5483 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5484 .{ .param_str = "V16iV16i", .features = "hvxv79" },
5485 .{ .param_str = "V32iV32i", .features = "hvxv79" },
5486 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5487 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5488 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5489 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5490 .{ .param_str = "V16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5491 .{ .param_str = "V32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5492 .{ .param_str = "V16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5493 .{ .param_str = "V32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5494 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5495 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5496 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5497 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5498 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5499 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5500 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5501 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5502 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5503 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5504 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5505 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5506 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5507 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5508 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5509 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5510 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5511 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5512 .{ .param_str = "V32iV16iV16i", .features = "hvxv79" },
5513 .{ .param_str = "V64iV32iV32i", .features = "hvxv79" },
5514 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5515 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5516 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5517 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5518 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5519 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5520 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5521 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5522 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5523 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5524 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5525 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5526 .{ .param_str = "V32iV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5527 .{ .param_str = "V64iV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5528 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5529 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5530 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5531 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5532 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5533 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5534 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5535 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5536 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5537 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5538 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5539 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5540 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5541 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5542 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5543 .{ .param_str = "V64iV64iV64i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5544 .{ .param_str = "V16iV16iV16iv*", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5545 .{ .param_str = "V32iV32iV32iv*", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5546 .{ .param_str = "V16iV16iV16iv*", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5547 .{ .param_str = "V32iV32iV32iv*", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5548 .{ .param_str = "V16iV16iV16iV64b", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5549 .{ .param_str = "V32iV32iV32iV128b", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5550 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5551 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5552 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5553 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5554 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5555 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5556 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5557 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5558 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5559 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5560 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5561 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5562 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5563 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5564 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5565 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5566 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5567 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5568 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5569 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5570 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5571 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5572 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5573 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5574 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5575 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5576 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5577 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5578 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5579 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5580 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5581 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5582 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5583 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5584 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5585 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5586 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5587 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5588 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5589 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5590 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5591 .{ .param_str = "V64iV64iV64i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5592 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5593 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5594 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5595 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5596 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5597 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5598 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5599 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5600 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5601 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5602 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5603 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5604 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5605 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5606 .{ .param_str = "V16iV16iV16iUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5607 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5608 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5609 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5610 .{ .param_str = "V16iV64bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5611 .{ .param_str = "V32iV128bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5612 .{ .param_str = "V16iV16iV64bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5613 .{ .param_str = "V32iV32iV128bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5614 .{ .param_str = "V16iV64bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5615 .{ .param_str = "V32iV128bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5616 .{ .param_str = "V16iV16iV64bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5617 .{ .param_str = "V32iV32iV128bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5618 .{ .param_str = "V16iV64bV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5619 .{ .param_str = "V32iV128bV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5620 .{ .param_str = "V16iV64bV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5621 .{ .param_str = "V32iV128bV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5622 .{ .param_str = "V64bV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5623 .{ .param_str = "V128bV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5624 .{ .param_str = "V64bV64bV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5625 .{ .param_str = "V128bV128bV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5626 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5627 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5628 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5629 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5630 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5631 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5632 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5633 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5634 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5635 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5636 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5637 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5638 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5639 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5640 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5641 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5642 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5643 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5644 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5645 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5646 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5647 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5648 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5649 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5650 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5651 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5652 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5653 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5654 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5655 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5656 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5657 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5658 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5659 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5660 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5661 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5662 .{ .param_str = "V16iV32iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5663 .{ .param_str = "V32iV64iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5664 .{ .param_str = "V16iV32iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5665 .{ .param_str = "V32iV64iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5666 .{ .param_str = "V16iV32iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5667 .{ .param_str = "V32iV64iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5668 .{ .param_str = "V16iV32iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5669 .{ .param_str = "V32iV64iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5670 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5671 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5672 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5673 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5674 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5675 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5676 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5677 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5678 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5679 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5680 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5681 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5682 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5683 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5684 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5685 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5686 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5687 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5688 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5689 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5690 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5691 .{ .param_str = "V64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5692 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5693 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5694 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5695 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5696 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5697 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5698 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5699 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5700 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5701 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5702 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5703 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5704 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5705 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5706 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5707 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5708 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5709 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5710 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5711 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5712 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5713 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5714 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5715 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5716 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5717 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5718 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5719 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5720 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5721 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5722 .{ .param_str = "V16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5723 .{ .param_str = "V32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5724 .{ .param_str = "V16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5725 .{ .param_str = "V32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5726 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5727 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5728 .{ .param_str = "V16iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5729 .{ .param_str = "V32iV64i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5730 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5731 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5732 .{ .param_str = "V16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5733 .{ .param_str = "V32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5734 .{ .param_str = "V16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5735 .{ .param_str = "V32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5736 .{ .param_str = "V16iV16iV16i", .features = "hvxv79" },
5737 .{ .param_str = "V32iV32iV32i", .features = "hvxv79" },
5738 .{ .param_str = "V32iV16i", .features = "hvxv79" },
5739 .{ .param_str = "V64iV32i", .features = "hvxv79" },
5740 .{ .param_str = "V32iV16i", .features = "hvxv79" },
5741 .{ .param_str = "V64iV32i", .features = "hvxv79" },
5742 .{ .param_str = "V16iV16iV16i", .features = "hvxv79" },
5743 .{ .param_str = "V32iV32iV32i", .features = "hvxv79" },
5744 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5745 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5746 .{ .param_str = "V16iV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5747 .{ .param_str = "V32iV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5748 .{ .param_str = "V16iV16iV16i", .features = "hvxv79" },
5749 .{ .param_str = "V32iV32iV32i", .features = "hvxv79" },
5750 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5751 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5752 .{ .param_str = "V32iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5753 .{ .param_str = "V64iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5754 .{ .param_str = "V32iV16i", .features = "hvxv79" },
5755 .{ .param_str = "V64iV32i", .features = "hvxv79" },
5756 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5757 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5758 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5759 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5760 .{ .param_str = "V32iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5761 .{ .param_str = "V64iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5762 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5763 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5764 .{ .param_str = "V32iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5765 .{ .param_str = "V64iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5766 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5767 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5768 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5769 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5770 .{ .param_str = "V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5771 .{ .param_str = "V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5772 .{ .param_str = "V32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5773 .{ .param_str = "V64i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5774 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5775 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5776 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5777 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5778 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5779 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5780 .{ .param_str = "V32iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5781 .{ .param_str = "V64iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5782 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5783 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5784 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5785 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5786 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5787 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5788 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5789 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5790 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5791 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5792 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5793 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5794 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5795 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5796 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5797 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5798 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5799 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5800 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5801 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5802 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5803 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5804 .{ .param_str = "V16iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5805 .{ .param_str = "V32iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5806 .{ .param_str = "V16iV16iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5807 .{ .param_str = "V32iV32iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5808 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5809 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5810 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5811 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5812 .{ .param_str = "V16iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5813 .{ .param_str = "V32iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5814 .{ .param_str = "V16iV16iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5815 .{ .param_str = "V32iV32iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5816 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5817 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5818 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5819 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5820 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5821 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5822 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5823 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5824 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5825 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5826 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5827 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5828 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5829 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5830 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5831 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5832 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5833 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5834 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5835 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5836 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5837 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5838 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5839 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5840 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5841 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5842 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5843 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5844 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5845 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5846 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5847 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5848 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5849 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5850 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5851 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5852 .{ .param_str = "V16iV16iV16i", .features = "hvxv79" },
5853 .{ .param_str = "V32iV32iV32i", .features = "hvxv79" },
5854 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5855 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5856 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5857 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5858 .{ .param_str = "V16iV16iV16i", .features = "hvxv79" },
5859 .{ .param_str = "V32iV32iV32i", .features = "hvxv79" },
5860 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5861 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5862 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5863 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5864 .{ .param_str = "V16iV16i", .features = "hvxv79" },
5865 .{ .param_str = "V32iV32i", .features = "hvxv79" },
5866 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5867 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5868 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5869 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5870 .{ .param_str = "vv*iiV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5871 .{ .param_str = "vv*iiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5872 .{ .param_str = "vv*V64biiV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5873 .{ .param_str = "vv*V128biiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5874 .{ .param_str = "vv*iiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5875 .{ .param_str = "vv*iiV64i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5876 .{ .param_str = "vv*V64biiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5877 .{ .param_str = "vv*V128biiV64i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5878 .{ .param_str = "vv*iiV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5879 .{ .param_str = "vv*iiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5880 .{ .param_str = "vv*V64biiV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5881 .{ .param_str = "vv*V128biiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5882 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5883 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5884 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5885 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5886 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5887 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5888 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5889 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5890 .{ .param_str = "V64bV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5891 .{ .param_str = "V128bV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5892 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5893 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5894 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5895 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5896 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
5897 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
5898 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5899 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5900 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5901 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5902 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5903 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5904 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5905 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5906 .{ .param_str = "V64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5907 .{ .param_str = "V128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5908 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5909 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5910 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5911 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5912 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5913 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5914 .{ .param_str = "V64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5915 .{ .param_str = "V128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5916 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5917 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5918 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5919 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5920 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5921 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5922 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5923 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5924 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5925 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5926 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5927 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5928 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5929 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5930 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5931 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5932 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5933 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5934 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5935 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5936 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5937 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5938 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5939 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5940 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5941 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5942 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5943 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5944 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5945 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5946 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5947 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5948 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5949 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5950 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5951 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5952 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5953 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5954 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5955 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5956 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5957 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5958 .{ .param_str = "V16iV16iV16iUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5959 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5960 .{ .param_str = "V16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5961 .{ .param_str = "V32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5962 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5963 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5964 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5965 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5966 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5967 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5968 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5969 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5970 .{ .param_str = "V16iV16iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5971 .{ .param_str = "V32iV32iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5972 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5973 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5974 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5975 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5976 .{ .param_str = "V16iV16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5977 .{ .param_str = "V32iV32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5978 .{ .param_str = "V16iV16iV16iV16iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5979 .{ .param_str = "V32iV32iV32iV32iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5980 .{ .param_str = "V16iV16iV16iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5981 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5982 .{ .param_str = "V32iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5983 .{ .param_str = "V64iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5984 .{ .param_str = "V32iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5985 .{ .param_str = "V64iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5986 .{ .param_str = "V32iV32iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5987 .{ .param_str = "V64iV64iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5988 .{ .param_str = "V32iV32iV16iV16iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5989 .{ .param_str = "V64iV64iV32iV32iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5990 .{ .param_str = "V32iV16iV16iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5991 .{ .param_str = "V64iV32iV32iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5992 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5993 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5994 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5995 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5996 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5997 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5998 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5999 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6000 .{ .param_str = "V16iV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
6001 .{ .param_str = "V32iV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
6002 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6003 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6004 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6005 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6006 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6007 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6008 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6009 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6010 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6011 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6012 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6013 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6014 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6015 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6016 .{ .param_str = "V16iV16iV16i", .features = "hvxv79" },
6017 .{ .param_str = "V32iV32iV32i", .features = "hvxv79" },
6018 .{ .param_str = "V16iV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
6019 .{ .param_str = "V32iV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
6020 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6021 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6022 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6023 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6024 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6025 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6026 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6027 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6028 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6029 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6030 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6031 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6032 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6033 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6034 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6035 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6036 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6037 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6038 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6039 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6040 .{ .param_str = "V32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6041 .{ .param_str = "V64iV64ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6042 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6043 .{ .param_str = "V64iV64iV64ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6044 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6045 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6046 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6047 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6048 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6049 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6050 .{ .param_str = "V16iV16iV16iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6051 .{ .param_str = "V32iV32iV32iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6052 .{ .param_str = "V32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6053 .{ .param_str = "V64iV64ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6054 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6055 .{ .param_str = "V64iV64iV64ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6056 .{ .param_str = "V16iV16iV16iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6057 .{ .param_str = "V32iV32iV32iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6058 .{ .param_str = "V16iV16iV16iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6059 .{ .param_str = "V32iV32iV32iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6060 .{ .param_str = "V32iV16iV16i", .features = "hvxv79" },
6061 .{ .param_str = "V64iV32iV32i", .features = "hvxv79" },
6062 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv79" },
6063 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv79" },
6064 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6065 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6066 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6067 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6068 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6069 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6070 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6071 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6072 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6073 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6074 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6075 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6076 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6077 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6078 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6079 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6080 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6081 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6082 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6083 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6084 .{ .param_str = "V16iV16ii", .features = "hvxv79" },
6085 .{ .param_str = "V32iV32ii", .features = "hvxv79" },
6086 .{ .param_str = "V16iV16ii", .features = "hvxv79" },
6087 .{ .param_str = "V32iV32ii", .features = "hvxv79" },
6088 .{ .param_str = "V16iV16ii", .features = "hvxv79" },
6089 .{ .param_str = "V32iV32ii", .features = "hvxv79" },
6090 .{ .param_str = "V32iV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
6091 .{ .param_str = "V64iV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
6092 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
6093 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
6094 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6095 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6096 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6097 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6098 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6099 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6100 .{ .param_str = "V32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6101 .{ .param_str = "V64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6102 .{ .param_str = "V32iV32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6103 .{ .param_str = "V64iV64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6104 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6105 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6106 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6107 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6108 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6109 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6110 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6111 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6112 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6113 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6114 .{ .param_str = "V32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6115 .{ .param_str = "V64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6116 .{ .param_str = "V32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6117 .{ .param_str = "V64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6118 .{ .param_str = "V32iV32iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6119 .{ .param_str = "V64iV64iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6120 .{ .param_str = "V32iV32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6121 .{ .param_str = "V64iV64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6122 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6123 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6124 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6125 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6126 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6127 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6128 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6129 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6130 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6131 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6132 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6133 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6134 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6135 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6136 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6137 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6138 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6139 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6140 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6141 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6142 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6143 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6144 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6145 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6146 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6147 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6148 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6149 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6150 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6151 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6152 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6153 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6154 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6155 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6156 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6157 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6158 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6159 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6160 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6161 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6162 .{ .param_str = "V16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6163 .{ .param_str = "V32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6164 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6165 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6166 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6167 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6168 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6169 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6170 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6171 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6172 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6173 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6174 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6175 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6176 .{ .param_str = "V32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6177 .{ .param_str = "V64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6178 .{ .param_str = "V32iV32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6179 .{ .param_str = "V64iV64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6180 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6181 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6182 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6183 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6184 .{ .param_str = "V32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6185 .{ .param_str = "V64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6186 .{ .param_str = "V32iV32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6187 .{ .param_str = "V64iV64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6188 .{ .param_str = "V16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6189 .{ .param_str = "V32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6190 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6191 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6192 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6193 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6194 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6195 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6196 .{ .param_str = "V16iV16iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6197 .{ .param_str = "V32iV32iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6198 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6199 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6200 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6201 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6202 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6203 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6204 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6205 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6206 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6207 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6208 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6209 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6210 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6211 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6212 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6213 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6214 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6215 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6216 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6217 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6218 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6219 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6220 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6221 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6222 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6223 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6224 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6225 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6226 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6227 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6228 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6229 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6230 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6231 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6232 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6233 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6234 .{ .param_str = "V16iV64b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6235 .{ .param_str = "V32iV128b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6236 .{ .param_str = "V16iV64b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6237 .{ .param_str = "V32iV128b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6238 .{ .param_str = "V16iV64b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6239 .{ .param_str = "V32iV128b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6240 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6241 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
5331 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5332 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5333 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5334 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5335 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5336 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5337 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5338 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5339 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5340 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5341 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5342 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5343 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5344 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5345 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5346 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5347 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5348 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5349 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5350 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5351 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5352 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5353 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5354 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5355 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5356 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5357 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5358 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5359 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5360 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5361 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5362 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5363 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5364 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5365 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5366 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5367 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5368 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5369 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5370 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5371 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5372 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5373 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5374 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5375 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5376 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5377 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5378 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5379 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5380 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5381 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5382 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5383 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5384 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5385 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5386 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5387 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5388 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5389 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5390 .{ .param_str = "iLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5391 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5392 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5393 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5394 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5395 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5396 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5397 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5398 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5399 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5400 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5401 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5402 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5403 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5404 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5405 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5406 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5407 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5408 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5409 .{ .param_str = "iiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5410 .{ .param_str = "iiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5411 .{ .param_str = "LLiLLiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5412 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5413 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5414 .{ .param_str = "iiiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5415 .{ .param_str = "LLiLLiLLiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5416 .{ .param_str = "LLiLLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5417 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5418 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5419 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5420 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5421 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5422 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5423 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5424 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5425 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5426 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5427 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5428 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5429 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5430 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5431 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5432 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5433 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5434 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5435 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5436 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5437 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5438 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5439 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5440 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5441 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5442 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5443 .{ .param_str = "iiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5444 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5445 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5446 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5447 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5448 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5449 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5450 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5451 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5452 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5453 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5454 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5455 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5456 .{ .param_str = "iiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5457 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5458 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5459 .{ .param_str = "iUIiUIi", .features = "v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5460 .{ .param_str = "LLiii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5461 .{ .param_str = "iLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5462 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5463 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5464 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5465 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5466 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5467 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5468 .{ .param_str = "vv*IiiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5469 .{ .param_str = "vv*iivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5470 .{ .param_str = "vv*IiiLLivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5471 .{ .param_str = "vv*iLLivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5472 .{ .param_str = "vv*IiiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5473 .{ .param_str = "vv*iivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5474 .{ .param_str = "vv*IiiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5475 .{ .param_str = "vv*iivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5476 .{ .param_str = "vv*IiiivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5477 .{ .param_str = "vv*iivC*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5478 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5479 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5480 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5481 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5482 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5483 .{ .param_str = "iiiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5484 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5485 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5486 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5487 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5488 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5489 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5490 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5491 .{ .param_str = "LLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5492 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5493 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5494 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5495 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5496 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5497 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5498 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5499 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5500 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5501 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5502 .{ .param_str = "LLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5503 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5504 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5505 .{ .param_str = "LLiLLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5506 .{ .param_str = "LLiLLiLLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5507 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5508 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5509 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5510 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5511 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5512 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5513 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5514 .{ .param_str = "LLii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5515 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5516 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5517 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5518 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5519 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5520 .{ .param_str = "iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5521 .{ .param_str = "iLLiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5522 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5523 .{ .param_str = "iiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5524 .{ .param_str = "iiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5525 .{ .param_str = "LLiLLiUIiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5526 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5527 .{ .param_str = "iIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5528 .{ .param_str = "iiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5529 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5530 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5531 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5532 .{ .param_str = "iiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5533 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5534 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5535 .{ .param_str = "iii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5536 .{ .param_str = "iiIii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5537 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5538 .{ .param_str = "iUIiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5539 .{ .param_str = "LLiLLiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5540 .{ .param_str = "LLiLLiLLiiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5541 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5542 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5543 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5544 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5545 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5546 .{ .param_str = "LLiLLiLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5547 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5548 .{ .param_str = "iLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5549 .{ .param_str = "iLLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5550 .{ .param_str = "LLiLLiUIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5551 .{ .param_str = "LLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5552 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5553 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5554 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5555 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5556 .{ .param_str = "LLiLLiLLiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5557 .{ .param_str = "iiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5558 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5559 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5560 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5561 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5562 .{ .param_str = "iiiUIi", .features = "v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5563 .{ .param_str = "LLii", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5564 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5565 .{ .param_str = "LLiLLiLLi", .features = "v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
5566 .{ .param_str = "iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5567 .{ .param_str = "iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5568 .{ .param_str = "V16iV16ii", .features = "hvxv79|hvxv81" },
5569 .{ .param_str = "V32iV32ii", .features = "hvxv79|hvxv81" },
5570 .{ .param_str = "V16iV16iV16ii", .features = "hvxv79|hvxv81" },
5571 .{ .param_str = "V32iV32iV32ii", .features = "hvxv79|hvxv81" },
5572 .{ .param_str = "V16iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5573 .{ .param_str = "V32iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5574 .{ .param_str = "V16iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5575 .{ .param_str = "V32iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5576 .{ .param_str = "V16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5577 .{ .param_str = "V32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5578 .{ .param_str = "V16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5579 .{ .param_str = "V32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5580 .{ .param_str = "V16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5581 .{ .param_str = "V32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5582 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5583 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5584 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5585 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5586 .{ .param_str = "V64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5587 .{ .param_str = "V128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5588 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5589 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5590 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5591 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5592 .{ .param_str = "V64bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5593 .{ .param_str = "V128bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5594 .{ .param_str = "V64bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5595 .{ .param_str = "V128bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5596 .{ .param_str = "V64bV64bV64b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5597 .{ .param_str = "V128bV128bV128b", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5598 .{ .param_str = "V16iV16ii", .features = "hvxv79|hvxv81" },
5599 .{ .param_str = "V32iV32ii", .features = "hvxv79|hvxv81" },
5600 .{ .param_str = "V64bV64bV64b", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5601 .{ .param_str = "V128bV128bV128b", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5602 .{ .param_str = "V64bV64bV64b", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5603 .{ .param_str = "V128bV128bV128b", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5604 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5605 .{ .param_str = "V64iV64iV64iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5606 .{ .param_str = "V32iV32iV32iV32iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5607 .{ .param_str = "V64iV64iV64iV64iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5608 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5609 .{ .param_str = "V64iV64iV64iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5610 .{ .param_str = "V32iV32iV32iV32iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5611 .{ .param_str = "V64iV64iV64iV64iUIi", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5612 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5613 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5614 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5615 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5616 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5617 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5618 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5619 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5620 .{ .param_str = "V16iV16i", .features = "hvxv79|hvxv81" },
5621 .{ .param_str = "V32iV32i", .features = "hvxv79|hvxv81" },
5622 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5623 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5624 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5625 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5626 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5627 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5628 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5629 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5630 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5631 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5632 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5633 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5634 .{ .param_str = "V16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5635 .{ .param_str = "V32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5636 .{ .param_str = "V16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5637 .{ .param_str = "V32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5638 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5639 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5640 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5641 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5642 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5643 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5644 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5645 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5646 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5647 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5648 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5649 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5650 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5651 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5652 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5653 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5654 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5655 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5656 .{ .param_str = "V32iV16iV16i", .features = "hvxv79|hvxv81" },
5657 .{ .param_str = "V64iV32iV32i", .features = "hvxv79|hvxv81" },
5658 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5659 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5660 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5661 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5662 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5663 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5664 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5665 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5666 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5667 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5668 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5669 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5670 .{ .param_str = "V32iV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5671 .{ .param_str = "V64iV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5672 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5673 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5674 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5675 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5676 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5677 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5678 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5679 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5680 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5681 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5682 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5683 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5684 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5685 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5686 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5687 .{ .param_str = "V64iV64iV64i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5688 .{ .param_str = "V16iV16iV16iv*", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5689 .{ .param_str = "V32iV32iV32iv*", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5690 .{ .param_str = "V16iV16iV16iv*", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5691 .{ .param_str = "V32iV32iV32iv*", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5692 .{ .param_str = "V16iV16iV16iV64b", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5693 .{ .param_str = "V32iV32iV32iV128b", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5694 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5695 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5696 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5697 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5698 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5699 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5700 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5701 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5702 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5703 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5704 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5705 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5706 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5707 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5708 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5709 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5710 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5711 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5712 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5713 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5714 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5715 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5716 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5717 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5718 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5719 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5720 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5721 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5722 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5723 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5724 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5725 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5726 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5727 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5728 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5729 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5730 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5731 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5732 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5733 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5734 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5735 .{ .param_str = "V64iV64iV64i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5736 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5737 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5738 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5739 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5740 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5741 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5742 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5743 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5744 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5745 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5746 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5747 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5748 .{ .param_str = "V16iV16iV16ii", .features = "hvxv81" },
5749 .{ .param_str = "V32iV32iV32ii", .features = "hvxv81" },
5750 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5751 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5752 .{ .param_str = "V16iV16iV16iUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5753 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5754 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5755 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5756 .{ .param_str = "V16iV64bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5757 .{ .param_str = "V32iV128bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5758 .{ .param_str = "V16iV16iV64bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5759 .{ .param_str = "V32iV32iV128bi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5760 .{ .param_str = "V16iV64bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5761 .{ .param_str = "V32iV128bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5762 .{ .param_str = "V16iV16iV64bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5763 .{ .param_str = "V32iV32iV128bi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5764 .{ .param_str = "V16iV64bV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5765 .{ .param_str = "V32iV128bV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5766 .{ .param_str = "V16iV64bV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5767 .{ .param_str = "V32iV128bV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5768 .{ .param_str = "V64bV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5769 .{ .param_str = "V128bV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5770 .{ .param_str = "V64bV64bV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5771 .{ .param_str = "V128bV128bV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5772 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5773 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5774 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5775 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5776 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5777 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5778 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5779 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5780 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5781 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5782 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5783 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5784 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5785 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5786 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5787 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5788 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5789 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5790 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5791 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5792 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5793 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5794 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5795 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5796 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5797 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5798 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5799 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5800 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5801 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5802 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5803 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5804 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5805 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5806 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5807 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5808 .{ .param_str = "V16iV32iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5809 .{ .param_str = "V32iV64iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5810 .{ .param_str = "V16iV32iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5811 .{ .param_str = "V32iV64iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5812 .{ .param_str = "V16iV32iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5813 .{ .param_str = "V32iV64iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5814 .{ .param_str = "V16iV32iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5815 .{ .param_str = "V32iV64iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5816 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5817 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5818 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5819 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5820 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5821 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5822 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5823 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5824 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5825 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5826 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5827 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5828 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5829 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5830 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5831 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5832 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5833 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5834 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5835 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5836 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5837 .{ .param_str = "V64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5838 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5839 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5840 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5841 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5842 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5843 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5844 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5845 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5846 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5847 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5848 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5849 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5850 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5851 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5852 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5853 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5854 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5855 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5856 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5857 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5858 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5859 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5860 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5861 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5862 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5863 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5864 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5865 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5866 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5867 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5868 .{ .param_str = "V16iV32i", .features = "hvxv81" },
5869 .{ .param_str = "V32iV64i", .features = "hvxv81" },
5870 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5871 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5872 .{ .param_str = "V16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5873 .{ .param_str = "V32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5874 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5875 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5876 .{ .param_str = "V16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5877 .{ .param_str = "V32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5878 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5879 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5880 .{ .param_str = "V16iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5881 .{ .param_str = "V32iV64i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5882 .{ .param_str = "V32iV16i", .features = "hvxv81" },
5883 .{ .param_str = "V64iV32i", .features = "hvxv81" },
5884 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5885 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5886 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5887 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5888 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5889 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5890 .{ .param_str = "V16iV16i", .features = "hvxv81" },
5891 .{ .param_str = "V32iV32i", .features = "hvxv81" },
5892 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5893 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5894 .{ .param_str = "V16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5895 .{ .param_str = "V32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5896 .{ .param_str = "V16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5897 .{ .param_str = "V32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5898 .{ .param_str = "V16iV16iV16i", .features = "hvxv79|hvxv81" },
5899 .{ .param_str = "V32iV32iV32i", .features = "hvxv79|hvxv81" },
5900 .{ .param_str = "V32iV16i", .features = "hvxv79|hvxv81" },
5901 .{ .param_str = "V64iV32i", .features = "hvxv79|hvxv81" },
5902 .{ .param_str = "V32iV16i", .features = "hvxv79|hvxv81" },
5903 .{ .param_str = "V64iV32i", .features = "hvxv79|hvxv81" },
5904 .{ .param_str = "V16iV16iV16i", .features = "hvxv79|hvxv81" },
5905 .{ .param_str = "V32iV32iV32i", .features = "hvxv79|hvxv81" },
5906 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5907 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5908 .{ .param_str = "V16iV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5909 .{ .param_str = "V32iV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
5910 .{ .param_str = "V16iV16iV16i", .features = "hvxv79|hvxv81" },
5911 .{ .param_str = "V32iV32iV32i", .features = "hvxv79|hvxv81" },
5912 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5913 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5914 .{ .param_str = "V32iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5915 .{ .param_str = "V64iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5916 .{ .param_str = "V32iV16i", .features = "hvxv79|hvxv81" },
5917 .{ .param_str = "V64iV32i", .features = "hvxv79|hvxv81" },
5918 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5919 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5920 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5921 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5922 .{ .param_str = "V32iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5923 .{ .param_str = "V64iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5924 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5925 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5926 .{ .param_str = "V32iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5927 .{ .param_str = "V64iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5928 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5929 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5930 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5931 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5932 .{ .param_str = "V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5933 .{ .param_str = "V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5934 .{ .param_str = "V32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5935 .{ .param_str = "V64i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5936 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5937 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5938 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5939 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5940 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5941 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5942 .{ .param_str = "V32iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5943 .{ .param_str = "V64iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5944 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5945 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5946 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5947 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5948 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5949 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5950 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5951 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5952 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5953 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5954 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5955 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5956 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5957 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5958 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5959 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5960 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5961 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5962 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5963 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5964 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5965 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5966 .{ .param_str = "V16iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5967 .{ .param_str = "V32iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5968 .{ .param_str = "V16iV16iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5969 .{ .param_str = "V32iV32iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5970 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5971 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5972 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5973 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5974 .{ .param_str = "V16iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5975 .{ .param_str = "V32iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5976 .{ .param_str = "V16iV16iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5977 .{ .param_str = "V32iV32iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5978 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5979 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5980 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5981 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5982 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5983 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5984 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5985 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5986 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5987 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5988 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5989 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5990 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5991 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5992 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5993 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5994 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5995 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5996 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5997 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5998 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
5999 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6000 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6001 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6002 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6003 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6004 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6005 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6006 .{ .param_str = "V64bV16iV16i", .features = "hvxv81" },
6007 .{ .param_str = "V128bV32iV32i", .features = "hvxv81" },
6008 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv81" },
6009 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv81" },
6010 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv81" },
6011 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv81" },
6012 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv81" },
6013 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv81" },
6014 .{ .param_str = "V64bV16iV16i", .features = "hvxv81" },
6015 .{ .param_str = "V128bV32iV32i", .features = "hvxv81" },
6016 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv81" },
6017 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv81" },
6018 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv81" },
6019 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv81" },
6020 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv81" },
6021 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv81" },
6022 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6023 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6024 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6025 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6026 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6027 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6028 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6029 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6030 .{ .param_str = "V16iV16iV16i", .features = "hvxv79|hvxv81" },
6031 .{ .param_str = "V32iV32iV32i", .features = "hvxv79|hvxv81" },
6032 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6033 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6034 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6035 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6036 .{ .param_str = "V16iV16iV16i", .features = "hvxv79|hvxv81" },
6037 .{ .param_str = "V32iV32iV32i", .features = "hvxv79|hvxv81" },
6038 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6039 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6040 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6041 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6042 .{ .param_str = "V16iV16i", .features = "hvxv79|hvxv81" },
6043 .{ .param_str = "V32iV32i", .features = "hvxv79|hvxv81" },
6044 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6045 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6046 .{ .param_str = "V16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6047 .{ .param_str = "V32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6048 .{ .param_str = "vv*iiV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6049 .{ .param_str = "vv*iiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6050 .{ .param_str = "vv*V64biiV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6051 .{ .param_str = "vv*V128biiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6052 .{ .param_str = "vv*iiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6053 .{ .param_str = "vv*iiV64i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6054 .{ .param_str = "vv*V64biiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6055 .{ .param_str = "vv*V128biiV64i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6056 .{ .param_str = "vv*iiV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6057 .{ .param_str = "vv*iiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6058 .{ .param_str = "vv*V64biiV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6059 .{ .param_str = "vv*V128biiV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6060 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6061 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6062 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6063 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6064 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6065 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6066 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6067 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6068 .{ .param_str = "V64bV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6069 .{ .param_str = "V128bV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6070 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6071 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6072 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6073 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6074 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6075 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6076 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6077 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6078 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6079 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6080 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6081 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6082 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6083 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6084 .{ .param_str = "V64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6085 .{ .param_str = "V128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6086 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6087 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6088 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6089 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6090 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6091 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6092 .{ .param_str = "V64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6093 .{ .param_str = "V128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6094 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6095 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6096 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6097 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6098 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6099 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6100 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6101 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6102 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6103 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6104 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6105 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6106 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6107 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6108 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6109 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6110 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6111 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6112 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6113 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6114 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6115 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6116 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6117 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6118 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6119 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6120 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6121 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6122 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6123 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6124 .{ .param_str = "V64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6125 .{ .param_str = "V128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6126 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6127 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6128 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6129 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6130 .{ .param_str = "V64bV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6131 .{ .param_str = "V128bV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6132 .{ .param_str = "V16iV16i", .features = "hvxv81" },
6133 .{ .param_str = "V32iV32i", .features = "hvxv81" },
6134 .{ .param_str = "V16iV16i", .features = "hvxv81" },
6135 .{ .param_str = "V32iV32i", .features = "hvxv81" },
6136 .{ .param_str = "V16iV16i", .features = "hvxv81" },
6137 .{ .param_str = "V32iV32i", .features = "hvxv81" },
6138 .{ .param_str = "V16iV16i", .features = "hvxv81" },
6139 .{ .param_str = "V32iV32i", .features = "hvxv81" },
6140 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6141 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6142 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6143 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6144 .{ .param_str = "V16iV16iV16iUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6145 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6146 .{ .param_str = "V16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6147 .{ .param_str = "V32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6148 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6149 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6150 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6151 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6152 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6153 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6154 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6155 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6156 .{ .param_str = "V16iV16iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6157 .{ .param_str = "V32iV32iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6158 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6159 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6160 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6161 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6162 .{ .param_str = "V16iV16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6163 .{ .param_str = "V32iV32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6164 .{ .param_str = "V16iV16iV16iV16iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6165 .{ .param_str = "V32iV32iV32iV32iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6166 .{ .param_str = "V16iV16iV16iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6167 .{ .param_str = "V32iV32iV32iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6168 .{ .param_str = "V32iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6169 .{ .param_str = "V64iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6170 .{ .param_str = "V32iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6171 .{ .param_str = "V64iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6172 .{ .param_str = "V32iV32iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6173 .{ .param_str = "V64iV64iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6174 .{ .param_str = "V32iV32iV16iV16iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6175 .{ .param_str = "V64iV64iV32iV32iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6176 .{ .param_str = "V32iV16iV16iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6177 .{ .param_str = "V64iV32iV32iUIi", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6178 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6179 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6180 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6181 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6182 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6183 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6184 .{ .param_str = "vV64bv*V16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6185 .{ .param_str = "vV128bv*V32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6186 .{ .param_str = "V16iV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6187 .{ .param_str = "V32iV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6188 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6189 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6190 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6191 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6192 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6193 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6194 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6195 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6196 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6197 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6198 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6199 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6200 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6201 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6202 .{ .param_str = "V16iV16iV16i", .features = "hvxv79|hvxv81" },
6203 .{ .param_str = "V32iV32iV32i", .features = "hvxv79|hvxv81" },
6204 .{ .param_str = "V16iV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6205 .{ .param_str = "V32iV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6206 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6207 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6208 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6209 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6210 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6211 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6212 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6213 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6214 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6215 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6216 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6217 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6218 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6219 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6220 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6221 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6222 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6223 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6224 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6225 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6226 .{ .param_str = "V32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6227 .{ .param_str = "V64iV64ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6228 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6229 .{ .param_str = "V64iV64iV64ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6230 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6231 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6232 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6233 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6234 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6235 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6236 .{ .param_str = "V16iV16iV16iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6237 .{ .param_str = "V32iV32iV32iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6238 .{ .param_str = "V32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6239 .{ .param_str = "V64iV64ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6240 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6241 .{ .param_str = "V64iV64iV64ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6242 .{ .param_str = "V16iV16iV16iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6243 .{ .param_str = "V32iV32iV32iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6244 .{ .param_str = "V16iV16iV16iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6245 .{ .param_str = "V32iV32iV32iLLi", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6246 .{ .param_str = "V32iV16iV16i", .features = "hvxv79|hvxv81" },
6247 .{ .param_str = "V64iV32iV32i", .features = "hvxv79|hvxv81" },
6248 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv79|hvxv81" },
6249 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv79|hvxv81" },
6250 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6251 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6252 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6253 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6254 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6255 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6256 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6257 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6258 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6259 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6260 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6261 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6262 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6263 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6264 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6265 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6266 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6267 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6268 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6269 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6270 .{ .param_str = "V16iV16ii", .features = "hvxv79|hvxv81" },
6271 .{ .param_str = "V32iV32ii", .features = "hvxv79|hvxv81" },
6272 .{ .param_str = "V16iV16ii", .features = "hvxv79|hvxv81" },
6273 .{ .param_str = "V32iV32ii", .features = "hvxv79|hvxv81" },
6274 .{ .param_str = "V16iV16ii", .features = "hvxv79|hvxv81" },
6275 .{ .param_str = "V32iV32ii", .features = "hvxv79|hvxv81" },
6276 .{ .param_str = "V32iV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6277 .{ .param_str = "V64iV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6278 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6279 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6280 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6281 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6282 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6283 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6284 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6285 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6286 .{ .param_str = "V32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6287 .{ .param_str = "V64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6288 .{ .param_str = "V32iV32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6289 .{ .param_str = "V64iV64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6290 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6291 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6292 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6293 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6294 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6295 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6296 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6297 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6298 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6299 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6300 .{ .param_str = "V32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6301 .{ .param_str = "V64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6302 .{ .param_str = "V32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6303 .{ .param_str = "V64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6304 .{ .param_str = "V32iV32iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6305 .{ .param_str = "V64iV64iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6306 .{ .param_str = "V32iV32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6307 .{ .param_str = "V64iV64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6308 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6309 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6310 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6311 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6312 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6313 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6314 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6315 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6316 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6317 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6318 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6319 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6320 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6321 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6322 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6323 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6324 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6325 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6326 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6327 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6328 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6329 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6330 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6331 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6332 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6333 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6334 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6335 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6336 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6337 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6338 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6339 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6340 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6341 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6342 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6343 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6344 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6345 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6346 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6347 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6348 .{ .param_str = "V16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6349 .{ .param_str = "V32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6350 .{ .param_str = "V16iV16iV16ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6351 .{ .param_str = "V32iV32iV32ii", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6352 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6353 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6354 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6355 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6356 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6357 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6358 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6359 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6360 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6361 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6362 .{ .param_str = "V32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6363 .{ .param_str = "V64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6364 .{ .param_str = "V32iV32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6365 .{ .param_str = "V64iV64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6366 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6367 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6368 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6369 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6370 .{ .param_str = "V32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6371 .{ .param_str = "V64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6372 .{ .param_str = "V32iV32iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6373 .{ .param_str = "V64iV64iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6374 .{ .param_str = "V16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6375 .{ .param_str = "V32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6376 .{ .param_str = "V16iV16iV16ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6377 .{ .param_str = "V32iV32iV32ii", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6378 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6379 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6380 .{ .param_str = "V32iV32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6381 .{ .param_str = "V64iV64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6382 .{ .param_str = "V16iV16iV16i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6383 .{ .param_str = "V32iV32iV32i", .features = "hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6384 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6385 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6386 .{ .param_str = "V16iV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6387 .{ .param_str = "V32iV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6388 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6389 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6390 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6391 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6392 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6393 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6394 .{ .param_str = "V16iV16i", .features = "hvxv81" },
6395 .{ .param_str = "V32iV32i", .features = "hvxv81" },
6396 .{ .param_str = "V16iV16i", .features = "hvxv81" },
6397 .{ .param_str = "V32iV32i", .features = "hvxv81" },
6398 .{ .param_str = "V16iV16i", .features = "hvxv81" },
6399 .{ .param_str = "V32iV32i", .features = "hvxv81" },
6400 .{ .param_str = "V16iV16i", .features = "hvxv81" },
6401 .{ .param_str = "V32iV32i", .features = "hvxv81" },
6402 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6403 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6404 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6405 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6406 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6407 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6408 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6409 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6410 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6411 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6412 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6413 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6414 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6415 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6416 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6417 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6418 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6419 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6420 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6421 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6422 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6423 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6424 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6425 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6426 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6427 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6428 .{ .param_str = "V16iV64b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6429 .{ .param_str = "V32iV128b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6430 .{ .param_str = "V16iV64b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6431 .{ .param_str = "V32iV128b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6432 .{ .param_str = "V16iV64b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6433 .{ .param_str = "V32iV128b", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6434 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6435 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
62426436 .{ .param_str = "V32iV16iLLi", .features = "hvxv65" },
62436437 .{ .param_str = "V64iV32iLLi", .features = "hvxv65" },
62446438 .{ .param_str = "V32iV32iV16iLLi", .features = "hvxv65" },
62456439 .{ .param_str = "V64iV64iV32iLLi", .features = "hvxv65" },
6246 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6247 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6248 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6249 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6250 .{ .param_str = "V32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6251 .{ .param_str = "V64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6252 .{ .param_str = "V32iV32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6253 .{ .param_str = "V64iV64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6254 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6255 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6256 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6257 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6258 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6259 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6260 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6261 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6262 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6263 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6264 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6265 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6440 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6441 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6442 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6443 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6444 .{ .param_str = "V32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6445 .{ .param_str = "V64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6446 .{ .param_str = "V32iV32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6447 .{ .param_str = "V64iV64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6448 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6449 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6450 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6451 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6452 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6453 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6454 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6455 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6456 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6457 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6458 .{ .param_str = "V16iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6459 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
62666460 .{ .param_str = "V32iV16iLLi", .features = "hvxv65" },
62676461 .{ .param_str = "V64iV32iLLi", .features = "hvxv65" },
62686462 .{ .param_str = "V32iV32iV16iLLi", .features = "hvxv65" },
62696463 .{ .param_str = "V64iV64iV32iLLi", .features = "hvxv65" },
6270 .{ .param_str = "V32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6271 .{ .param_str = "V64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6272 .{ .param_str = "V32iV32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6273 .{ .param_str = "V64iV64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6274 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6275 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6276 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6277 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6278 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6279 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6280 .{ .param_str = "V16iV16iV16i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6281 .{ .param_str = "V32iV32iV32i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6282 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6283 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6284 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6285 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6286 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6287 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6288 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6289 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6290 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6291 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6292 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6293 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6294 .{ .param_str = "V32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6295 .{ .param_str = "V64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6296 .{ .param_str = "V32iV32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6297 .{ .param_str = "V64iV64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6298 .{ .param_str = "V16iV16iV16i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6299 .{ .param_str = "V32iV32iV32i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6300 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6301 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6302 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6303 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6304 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6305 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6306 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6307 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6308 .{ .param_str = "viiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6309 .{ .param_str = "viiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6310 .{ .param_str = "viiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6311 .{ .param_str = "viiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6312 .{ .param_str = "vV64biiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6313 .{ .param_str = "vV128biiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6314 .{ .param_str = "viiV32iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6315 .{ .param_str = "viiV64iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6316 .{ .param_str = "viiV32iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6317 .{ .param_str = "viiV64iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6318 .{ .param_str = "vV64biiV32iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6319 .{ .param_str = "vV128biiV64iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6320 .{ .param_str = "viiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6321 .{ .param_str = "viiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6322 .{ .param_str = "viiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6323 .{ .param_str = "viiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6324 .{ .param_str = "vV64biiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6325 .{ .param_str = "vV128biiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6326 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6327 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6328 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6329 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6330 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6331 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6332 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6333 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6334 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6335 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6336 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6337 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6338 .{ .param_str = "V32iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6339 .{ .param_str = "V64iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6340 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6341 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6342 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6343 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6344 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6345 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6346 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6347 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6348 .{ .param_str = "V32iV16iV16i", .features = "hvxv79" },
6349 .{ .param_str = "V64iV32iV32i", .features = "hvxv79" },
6350 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6351 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6352 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6353 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6354 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6355 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6356 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6357 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6358 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6359 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6360 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6361 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6362 .{ .param_str = "V32iV16iV16i", .features = "hvxv73|hvxv75|hvxv79" },
6363 .{ .param_str = "V64iV32iV32i", .features = "hvxv73|hvxv75|hvxv79" },
6364 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6365 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6366 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6367 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6368 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6369 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6370 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6371 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6372 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6373 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6374 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6375 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6376 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6377 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6378 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6379 .{ .param_str = "V64iV64iV64i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6380 .{ .param_str = "V16iV16iV16iv*", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6381 .{ .param_str = "V32iV32iV32iv*", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6382 .{ .param_str = "V16iV16iV16iv*", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6383 .{ .param_str = "V32iV32iV32iv*", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6384 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6385 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6386 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6387 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6388 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6389 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6390 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6391 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6392 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6393 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6394 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6395 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6396 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6397 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6398 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6399 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6400 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6401 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6402 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6403 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6404 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6405 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6406 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6407 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6408 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6409 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6410 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6411 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6412 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6413 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6414 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6415 .{ .param_str = "V64iV64iV64i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6416 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6417 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6418 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6419 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6420 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6421 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6422 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6423 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6424 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6425 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6426 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6427 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6428 .{ .param_str = "V32iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6429 .{ .param_str = "V64iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6430 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6431 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6432 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6433 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6434 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6435 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6436 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6437 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6438 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6439 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6440 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6441 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6442 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6443 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6444 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6445 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6446 .{ .param_str = "V32iV32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6447 .{ .param_str = "V64iV64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6448 .{ .param_str = "V32iV32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6449 .{ .param_str = "V64iV64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6450 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6451 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6452 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6453 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6454 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6455 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6456 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6457 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6458 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6459 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79" },
6460 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6461 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6462 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6463 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6464 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6465 .{ .param_str = "vv*i", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6466 .{ .param_str = "vv*LLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6467 .{ .param_str = "vv*v*", .features = "v68|v69|v71|v73|v75|v79" },
6468 .{ .param_str = "i", .features = "v68|v69|v71|v73|v75|v79" },
6469 .{ .param_str = "i", .features = "v68|v69|v71|v73|v75|v79" },
6470 .{ .param_str = "vv*", .features = "v68|v69|v71|v73|v75|v79" },
6471 .{ .param_str = "vv*", .features = "v68|v69|v71|v73|v75|v79" },
6472 .{ .param_str = "i", .features = "v68|v69|v71|v73|v75|v79" },
6473 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6474 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6475 .{ .param_str = "v*Sc*CSc*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6476 .{ .param_str = "v*LLi*CLLi*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6477 .{ .param_str = "v*s*Cs*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6478 .{ .param_str = "v*Uc*CUc*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6479 .{ .param_str = "v*Us*CUs*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6480 .{ .param_str = "v*i*Ci*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6481 .{ .param_str = "c*Cc*iiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6482 .{ .param_str = "LLi*CLLi*LLiiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6483 .{ .param_str = "s*Cs*iiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6484 .{ .param_str = "s*Cs*iiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6485 .{ .param_str = "i*Ci*iiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6486 .{ .param_str = "c*c*c*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6487 .{ .param_str = "LLi*LLi*LLi*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6488 .{ .param_str = "s*s*s*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6489 .{ .param_str = "Uc*Uc*Uc*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6490 .{ .param_str = "Us*Us*Us*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6491 .{ .param_str = "i*i*i*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6492 .{ .param_str = "c*c*iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6493 .{ .param_str = "LLi*LLi*LLiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6494 .{ .param_str = "s*s*iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6495 .{ .param_str = "s*s*iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6496 .{ .param_str = "i*i*iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79" },
6464 .{ .param_str = "V32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6465 .{ .param_str = "V64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6466 .{ .param_str = "V32iV32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6467 .{ .param_str = "V64iV64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6468 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6469 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6470 .{ .param_str = "V16iV16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6471 .{ .param_str = "V32iV32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6472 .{ .param_str = "V16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6473 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6474 .{ .param_str = "V16iV16iV16i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6475 .{ .param_str = "V32iV32iV32i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6476 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6477 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6478 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6479 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6480 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6481 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6482 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6483 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6484 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6485 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6486 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6487 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6488 .{ .param_str = "V32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6489 .{ .param_str = "V64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6490 .{ .param_str = "V32iV32iV32iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6491 .{ .param_str = "V64iV64iV64iiUIi", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6492 .{ .param_str = "V16iV16iV16i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6493 .{ .param_str = "V32iV32iV32i", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6494 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6495 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6496 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6497 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6498 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6499 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6500 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6501 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6502 .{ .param_str = "viiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6503 .{ .param_str = "viiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6504 .{ .param_str = "viiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6505 .{ .param_str = "viiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6506 .{ .param_str = "vV64biiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6507 .{ .param_str = "vV128biiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6508 .{ .param_str = "viiV32iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6509 .{ .param_str = "viiV64iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6510 .{ .param_str = "viiV32iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6511 .{ .param_str = "viiV64iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6512 .{ .param_str = "vV64biiV32iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6513 .{ .param_str = "vV128biiV64iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6514 .{ .param_str = "viiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6515 .{ .param_str = "viiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6516 .{ .param_str = "viiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6517 .{ .param_str = "viiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6518 .{ .param_str = "vV64biiV16iV16i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6519 .{ .param_str = "vV128biiV32iV32i", .features = "hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6520 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6521 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6522 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6523 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6524 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6525 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6526 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6527 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6528 .{ .param_str = "V16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6529 .{ .param_str = "V32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6530 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6531 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6532 .{ .param_str = "V32iV16iV16ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6533 .{ .param_str = "V64iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6534 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6535 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6536 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6537 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6538 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6539 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6540 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6541 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6542 .{ .param_str = "V32iV16iV16i", .features = "hvxv79|hvxv81" },
6543 .{ .param_str = "V64iV32iV32i", .features = "hvxv79|hvxv81" },
6544 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6545 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6546 .{ .param_str = "V16iV16iV16i", .features = "hvxv81" },
6547 .{ .param_str = "V32iV32iV32i", .features = "hvxv81" },
6548 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6549 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6550 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6551 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6552 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6553 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6554 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6555 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6556 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6557 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6558 .{ .param_str = "V32iV16iV16i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6559 .{ .param_str = "V64iV32iV32i", .features = "hvxv73|hvxv75|hvxv79|hvxv81" },
6560 .{ .param_str = "V32iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6561 .{ .param_str = "V64iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6562 .{ .param_str = "V16iV16iV16i", .features = "hvxv81" },
6563 .{ .param_str = "V32iV32iV32i", .features = "hvxv81" },
6564 .{ .param_str = "V16iV16iV16i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6565 .{ .param_str = "V32iV32iV32i", .features = "hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6566 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6567 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6568 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6569 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6570 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6571 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6572 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6573 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6574 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6575 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6576 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6577 .{ .param_str = "V64iV64iV64i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6578 .{ .param_str = "V16iV16iV16iv*", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6579 .{ .param_str = "V32iV32iV32iv*", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6580 .{ .param_str = "V16iV16iV16iv*", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6581 .{ .param_str = "V32iV32iV32iv*", .features = "hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6582 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6583 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6584 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6585 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6586 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6587 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6588 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6589 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6590 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6591 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6592 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6593 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6594 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6595 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6596 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6597 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6598 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6599 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6600 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6601 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6602 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6603 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6604 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6605 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6606 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6607 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6608 .{ .param_str = "V32iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6609 .{ .param_str = "V64iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6610 .{ .param_str = "V16iV16iV16i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6611 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6612 .{ .param_str = "V32iV32iV32i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6613 .{ .param_str = "V64iV64iV64i", .features = "hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6614 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6615 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6616 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6617 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6618 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6619 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6620 .{ .param_str = "V16iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6621 .{ .param_str = "V32iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6622 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6623 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6624 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6625 .{ .param_str = "V64iV64iV64i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6626 .{ .param_str = "V32iV64bV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6627 .{ .param_str = "V64iV128bV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6628 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6629 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6630 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6631 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6632 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6633 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6634 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6635 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6636 .{ .param_str = "V32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6637 .{ .param_str = "V64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6638 .{ .param_str = "V32iV32iV32ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6639 .{ .param_str = "V64iV64iV64ii", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6640 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6641 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6642 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6643 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6644 .{ .param_str = "V32iV32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6645 .{ .param_str = "V64iV64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6646 .{ .param_str = "V32iV32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6647 .{ .param_str = "V64iV64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6648 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6649 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6650 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6651 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6652 .{ .param_str = "V16iV16iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6653 .{ .param_str = "V32iV32iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6654 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6655 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6656 .{ .param_str = "V32iV16i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6657 .{ .param_str = "V64iV32i", .features = "hvxv60|hvxv62|hvxv65|hvxv66|hvxv67|hvxv68|hvxv69|hvxv71|hvxv73|hvxv75|hvxv79|hvxv81" },
6658 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6659 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6660 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6661 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6662 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6663 .{ .param_str = "vv*i", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6664 .{ .param_str = "vv*LLi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6665 .{ .param_str = "vv*v*", .features = "v68|v69|v71|v73|v75|v79|v81" },
6666 .{ .param_str = "i", .features = "v68|v69|v71|v73|v75|v79|v81" },
6667 .{ .param_str = "i", .features = "v68|v69|v71|v73|v75|v79|v81" },
6668 .{ .param_str = "vv*", .features = "v68|v69|v71|v73|v75|v79|v81" },
6669 .{ .param_str = "vv*", .features = "v68|v69|v71|v73|v75|v79|v81" },
6670 .{ .param_str = "i", .features = "v68|v69|v71|v73|v75|v79|v81" },
6671 .{ .param_str = "vv*", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6672 .{ .param_str = "ii", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6673 .{ .param_str = "v*Sc*CSc*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6674 .{ .param_str = "v*LLi*CLLi*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6675 .{ .param_str = "v*s*Cs*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6676 .{ .param_str = "v*Uc*CUc*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6677 .{ .param_str = "v*Us*CUs*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6678 .{ .param_str = "v*i*Ci*iC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6679 .{ .param_str = "c*Cc*iiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6680 .{ .param_str = "LLi*CLLi*LLiiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6681 .{ .param_str = "s*Cs*iiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6682 .{ .param_str = "s*Cs*iiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6683 .{ .param_str = "i*Ci*iiC", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6684 .{ .param_str = "c*c*c*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6685 .{ .param_str = "LLi*LLi*LLi*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6686 .{ .param_str = "s*s*s*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6687 .{ .param_str = "Uc*Uc*Uc*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6688 .{ .param_str = "Us*Us*Us*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6689 .{ .param_str = "i*i*i*iIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6690 .{ .param_str = "c*c*iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6691 .{ .param_str = "LLi*LLi*LLiiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6692 .{ .param_str = "s*s*iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6693 .{ .param_str = "s*s*iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
6694 .{ .param_str = "i*i*iiIi", .features = "v5|v55|v60|v62|v65|v66|v67|v68|v69|v71|v73|v75|v79|v81" },
64976695 };
64986696};
64996697};
lib/compiler/aro/aro/Builtins/loongarch.zig+740-670
......@@ -8,7 +8,25 @@ return struct {
88
99/// Integer starting at 0 derived from the unique index,
1010/// corresponds with the data array index.
11pub const Tag = enum(u16) { __builtin_lasx_vext2xv_d_b,
11pub const Tag = enum(u16) { __builtin_lasx_cast_128,
12 __builtin_lasx_cast_128_d,
13 __builtin_lasx_cast_128_s,
14 __builtin_lasx_concat_128,
15 __builtin_lasx_concat_128_d,
16 __builtin_lasx_concat_128_s,
17 __builtin_lasx_extract_128_hi,
18 __builtin_lasx_extract_128_hi_d,
19 __builtin_lasx_extract_128_hi_s,
20 __builtin_lasx_extract_128_lo,
21 __builtin_lasx_extract_128_lo_d,
22 __builtin_lasx_extract_128_lo_s,
23 __builtin_lasx_insert_128_hi,
24 __builtin_lasx_insert_128_hi_d,
25 __builtin_lasx_insert_128_hi_s,
26 __builtin_lasx_insert_128_lo,
27 __builtin_lasx_insert_128_lo_d,
28 __builtin_lasx_insert_128_lo_s,
29 __builtin_lasx_vext2xv_d_b,
1230 __builtin_lasx_vext2xv_d_h,
1331 __builtin_lasx_vext2xv_d_w,
1432 __builtin_lasx_vext2xv_du_bu,
......@@ -1563,7 +1581,7 @@ pub const longest_name = 31;
15631581/// If found, returns the index of the node within the `dafsa` array.
15641582/// Otherwise, returns `null`.
15651583pub fn findInList(first_child_index: u16, char: u8) ?u16 {
1566 @setEvalBranchQuota(2998);
1584 @setEvalBranchQuota(3034);
15671585 var index = first_child_index;
15681586 while (true) {
15691587 if (dafsa[index].char == char) return index;
......@@ -1658,727 +1676,779 @@ const Node = packed struct {
16581676
16591677const dafsa = [_]Node{
16601678 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
1661 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 2 },
1662 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 3 },
1663 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 4 },
1664 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 5 },
1665 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 6 },
1666 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 7 },
1667 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 8 },
1668 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 9 },
1669 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 10 },
1670 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 11 },
1671 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1499, .child_index = 12 },
1672 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 740, .child_index = 15 },
1679 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 2 },
1680 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 3 },
1681 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 4 },
1682 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 5 },
1683 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 6 },
1684 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 7 },
1685 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 8 },
1686 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 9 },
1687 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 10 },
1688 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 11 },
1689 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1517, .child_index = 12 },
1690 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 758, .child_index = 15 },
16731691 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 39, .child_index = 16 },
16741692 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 720, .child_index = 17 },
1675 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 740, .child_index = 18 },
1693 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 758, .child_index = 18 },
16761694 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 19 },
16771695 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 720, .child_index = 20 },
1678 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 740, .child_index = 21 },
1696 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 758, .child_index = 21 },
16791697 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 22 },
16801698 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 720, .child_index = 23 },
1681 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 740, .child_index = 25 },
1682 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 27 },
1683 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 28 },
1684 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 710, .child_index = 30 },
1685 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 46 },
1686 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 728, .child_index = 47 },
1687 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 49 },
1688 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 50 },
1689 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 51 },
1690 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 64, .child_index = 52 },
1691 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 56 },
1692 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 58 },
1693 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 59 },
1694 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 60 },
1695 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 138, .child_index = 61 },
1696 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 71 },
1697 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 73 },
1698 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 75 },
1699 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 114, .child_index = 76 },
1700 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 81 },
1701 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 83 },
1702 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 84 },
1703 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 88 },
1704 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 237, .child_index = 90 },
1705 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 99 },
1706 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 100 },
1707 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 28 },
1708 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 718, .child_index = 101 },
1709 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 117 },
1710 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 51 },
1711 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 118 },
1712 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 123 },
1713 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 37, .child_index = 124 },
1714 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 125 },
1715 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 126 },
1716 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 127 },
1717 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 128 },
1718 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 130 },
1719 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 132 },
1720 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 133 },
1721 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 134 },
1722 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 52, .child_index = 135 },
1723 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 138 },
1724 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 139 },
1725 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 140 },
1726 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 141 },
1727 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 145 },
1728 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 146 },
1729 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 149 },
1730 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 151 },
1731 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 152 },
1732 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 153 },
1733 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 154 },
1734 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 155 },
1735 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 7, .child_index = 156 },
1736 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 44, .child_index = 159 },
1737 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 161 },
1738 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 162 },
1739 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 163 },
1740 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 165 },
1741 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 167 },
1742 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 168 },
1743 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 169 },
1744 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 172 },
1745 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 173 },
1746 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 174 },
1747 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 175 },
1748 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 176 },
1749 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 177 },
1750 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 178 },
1751 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 180 },
1752 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 181 },
1753 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 182 },
1754 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 46, .child_index = 183 },
1755 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 60, .child_index = 186 },
1756 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 64, .child_index = 188 },
1757 .{ .char = 't', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 190 },
1758 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 192 },
1759 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 168 },
1760 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 193 },
1761 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 64, .child_index = 52 },
1762 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 56 },
1763 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 58 },
1764 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 59 },
1765 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 60 },
1766 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 138, .child_index = 61 },
1767 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 71 },
1768 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 194 },
1769 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 75 },
1770 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 114, .child_index = 76 },
1771 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 81 },
1772 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 83 },
1773 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 32, .child_index = 196 },
1774 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 200 },
1775 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 237, .child_index = 90 },
1776 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 99 },
1777 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 202 },
1699 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 758, .child_index = 25 },
1700 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 30 },
1701 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 31 },
1702 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 710, .child_index = 33 },
1703 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 49 },
1704 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 51 },
1705 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 52 },
1706 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 53 },
1707 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 728, .child_index = 54 },
1708 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 56 },
1709 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 57 },
1710 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 58 },
1711 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 64, .child_index = 59 },
1712 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 63 },
1713 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 65 },
1714 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 66 },
1715 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 67 },
1716 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 138, .child_index = 68 },
1717 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 78 },
1718 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 80 },
1719 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 82 },
1720 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 114, .child_index = 83 },
1721 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 88 },
1722 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 90 },
1723 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 91 },
1724 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 95 },
1725 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 237, .child_index = 97 },
1726 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 106 },
1727 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 107 },
1728 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 108 },
1729 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 109 },
1730 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 110 },
1731 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 111 },
1732 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 31 },
1733 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 718, .child_index = 112 },
1734 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 128 },
1735 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 58 },
1736 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 129 },
1737 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 134 },
1738 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 37, .child_index = 135 },
1739 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 136 },
1740 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 137 },
1741 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 138 },
1742 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 139 },
1743 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 141 },
1744 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 143 },
1745 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 144 },
1746 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 145 },
1747 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 52, .child_index = 146 },
1748 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 149 },
1749 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 150 },
1750 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 151 },
1751 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 152 },
1752 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 156 },
1753 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 157 },
1754 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 160 },
1755 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 162 },
1756 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 163 },
1757 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 164 },
1758 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 165 },
1759 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 166 },
1760 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 7, .child_index = 167 },
1761 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 44, .child_index = 170 },
1762 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 172 },
1763 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 173 },
1764 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 174 },
1765 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 176 },
1766 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 178 },
1767 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 179 },
1768 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 180 },
1769 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 183 },
1770 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 184 },
1771 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 185 },
1772 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 186 },
1773 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 187 },
1774 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 188 },
1775 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 189 },
1776 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 191 },
1777 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 192 },
1778 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 193 },
1779 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 46, .child_index = 194 },
1780 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 60, .child_index = 197 },
1781 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 64, .child_index = 199 },
1782 .{ .char = 't', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 201 },
1783 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 203 },
1784 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 179 },
1785 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 204 },
1786 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 205 },
1787 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 206 },
1788 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 207 },
1789 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 208 },
1790 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 64, .child_index = 59 },
1791 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 63 },
1792 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 65 },
1793 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 66 },
1794 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 67 },
1795 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 138, .child_index = 68 },
1796 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 78 },
1797 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 209 },
1798 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 82 },
1799 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 114, .child_index = 83 },
1800 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 88 },
1801 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 90 },
1802 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 32, .child_index = 211 },
1803 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 215 },
1804 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 237, .child_index = 97 },
1805 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 106 },
1806 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 217 },
17781807 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
17791808 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
17801809 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
17811810 .{ .char = 'v', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
17821811 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1783 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 162 },
1784 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 203 },
1785 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 169 },
1786 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 207 },
1787 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 209 },
1788 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 212 },
1789 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 212 },
1790 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 213 },
1791 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
1792 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 214 },
1793 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 215 },
1794 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 218 },
1795 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 219 },
1796 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 44, .child_index = 220 },
1797 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 221 },
1798 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 222 },
1799 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 223 },
1800 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 224 },
1801 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 225 },
1802 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 227 },
1803 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 228 },
1804 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 229 },
1805 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 230 },
1806 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 232 },
1807 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 233 },
1808 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 234 },
1809 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 236 },
1810 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 237 },
1811 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 238 },
1812 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 239 },
1813 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 240 },
1814 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 241 },
1815 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 243 },
1812 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 173 },
1813 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 218 },
1814 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 180 },
1815 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 222 },
1816 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 224 },
1817 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 227 },
1818 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 227 },
1819 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 228 },
1820 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
1821 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 229 },
1822 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 230 },
1823 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 233 },
1824 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 234 },
1825 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 44, .child_index = 235 },
1826 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 236 },
1827 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 237 },
1828 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 238 },
1829 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 239 },
1830 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 240 },
1831 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 242 },
1832 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 243 },
1833 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 244 },
1834 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 245 },
1835 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 247 },
1836 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 248 },
1837 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 249 },
1838 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 251 },
1839 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 252 },
1840 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 253 },
1841 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 254 },
1842 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 255 },
1843 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 256 },
1844 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 258 },
18161845 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1817 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 244 },
1846 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 259 },
18181847 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1819 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 245 },
1820 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 246 },
1821 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 246 },
1822 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 214 },
1823 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 248 },
1824 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 251 },
1825 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 214 },
1826 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 252 },
1827 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
1828 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 254 },
1829 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 256 },
1830 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 257 },
1831 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 258 },
1832 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 259 },
1833 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 260 },
1834 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 261 },
1835 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 262 },
1836 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 263 },
1837 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 264 },
1838 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 162 },
1839 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 214 },
1840 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 265 },
1841 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 267 },
1842 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 268 },
1843 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 246 },
1844 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 269 },
1845 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 246 },
1846 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 272 },
1847 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 272 },
1848 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 56, .child_index = 276 },
1849 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 278 },
1850 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 279 },
1848 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 260 },
1849 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 261 },
1850 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 261 },
1851 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 229 },
1852 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 263 },
1853 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 266 },
1854 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 229 },
1855 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 267 },
1856 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
1857 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 269 },
1858 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 271 },
1859 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 272 },
1860 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 273 },
1861 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 274 },
1862 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 275 },
1863 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 276 },
1864 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 277 },
1865 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 278 },
1866 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 279 },
1867 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 173 },
1868 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 229 },
1869 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 280 },
1870 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 282 },
1871 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 283 },
1872 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 261 },
1873 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 284 },
1874 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 261 },
1875 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 287 },
1876 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 287 },
1877 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 56, .child_index = 291 },
1878 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 293 },
1879 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 294 },
18511880 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1852 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 280 },
1853 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 283 },
1854 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 154 },
1855 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 284 },
1856 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 172 },
1857 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 173 },
1858 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 285 },
1859 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 286 },
1860 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 287 },
1861 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 177 },
1862 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 288 },
1863 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 289 },
1864 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 213 },
1865 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 294 },
1866 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 295 },
1867 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 297 },
1868 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 214 },
1869 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 301 },
1870 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 302 },
1871 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 303 },
1872 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 258 },
1873 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 304 },
1874 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 297 },
1875 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 308 },
1876 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 309 },
1877 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 310 },
1878 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
1879 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 312 },
1880 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 44, .child_index = 313 },
1881 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 314 },
1882 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
1883 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 317 },
1884 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 237 },
1885 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 218 },
1886 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 318 },
1887 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 318 },
1888 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 237 },
1889 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
1890 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 134 },
1891 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 228 },
1892 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 320 },
1893 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 321 },
1894 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 322 },
1895 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 323 },
1896 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 324 },
1897 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
1898 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 325 },
1899 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 326 },
1900 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 326 },
1901 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 213 },
1902 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
1903 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 327 },
1904 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 328 },
1905 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 252 },
1906 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 297 },
1907 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 214 },
1908 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 329 },
1909 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 330 },
1910 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 331 },
1911 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
1912 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 304 },
1913 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 295 },
1914 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 256 },
1915 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 257 },
1881 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 295 },
1882 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 298 },
1883 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 299 },
1884 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 300 },
1885 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 301 },
1886 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 302 },
1887 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 165 },
1888 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 303 },
1889 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 183 },
1890 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 184 },
1891 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 304 },
1892 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 305 },
1893 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 306 },
1894 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 188 },
1895 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 307 },
1896 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 308 },
1897 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 228 },
1898 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 313 },
1899 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 314 },
1900 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 316 },
1901 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 229 },
1902 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 320 },
1903 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 321 },
1904 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 322 },
1905 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 273 },
1906 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 323 },
1907 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 316 },
1908 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 327 },
1909 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 328 },
1910 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 329 },
1911 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
1912 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 331 },
1913 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 44, .child_index = 332 },
1914 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 333 },
1915 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
1916 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 336 },
1917 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 252 },
1918 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 233 },
1919 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 337 },
1920 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 337 },
1921 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 252 },
1922 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
1923 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 145 },
1924 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 243 },
1925 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 339 },
1926 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 340 },
1927 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 341 },
1928 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 342 },
1929 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 343 },
1930 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
1931 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 344 },
1932 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 345 },
1933 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 345 },
1934 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 228 },
1935 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
1936 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 346 },
1937 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 347 },
1938 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 267 },
1939 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 316 },
1940 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 229 },
1941 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 348 },
1942 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 349 },
1943 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
1944 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
1945 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 323 },
1946 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 314 },
1947 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 271 },
1948 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 272 },
19161949 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1917 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 332 },
1918 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
1919 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 333 },
1920 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
1921 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
1922 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 336 },
1923 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 339 },
1924 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 265 },
1925 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 304 },
1926 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
1927 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 342 },
1928 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 344 },
1929 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 304 },
1930 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 213 },
1931 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 345 },
1932 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 304 },
1933 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 213 },
1934 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 346 },
1935 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 348 },
1936 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 351 },
1937 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 351 },
1938 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 214 },
1939 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 353 },
1940 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 289 },
1941 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 294 },
1942 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 354 },
1943 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 356 },
1944 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 357 },
1945 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 359 },
1946 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 360 },
1947 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 361 },
1948 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 362 },
1950 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 351 },
1951 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 271 },
1952 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 352 },
1953 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
1954 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 354 },
1955 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 355 },
1956 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 358 },
1957 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 280 },
1958 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 323 },
1959 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
1960 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 361 },
1961 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 363 },
1962 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 323 },
1963 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 228 },
1964 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 364 },
1965 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 323 },
1966 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 228 },
1967 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 365 },
1968 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 367 },
1969 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 370 },
1970 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 370 },
1971 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 229 },
1972 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 372 },
1973 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 308 },
1974 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 313 },
1975 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 373 },
1976 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 375 },
1977 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 204 },
1978 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 376 },
1979 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 377 },
1980 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 378 },
1981 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 379 },
1982 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 381 },
1983 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 382 },
1984 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 383 },
1985 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 39, .child_index = 384 },
19491986 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
19501987 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
19511988 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
19521989 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
19531990 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1954 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 371 },
1955 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 375 },
1956 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 376 },
1957 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 377 },
1958 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 377 },
1959 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 377 },
1960 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 377 },
1961 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 264 },
1962 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 378 },
1963 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 379 },
1991 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 393 },
1992 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 397 },
1993 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 398 },
1994 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 399 },
1995 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 399 },
1996 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 399 },
1997 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 399 },
1998 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 279 },
1999 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 400 },
2000 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 401 },
19642001 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
19652002 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
19662003 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
19672004 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1968 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 381 },
1969 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 385 },
1970 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 386 },
1971 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 387 },
1972 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 389 },
1973 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 44, .child_index = 390 },
1974 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 392 },
1975 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 394 },
1976 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 394 },
1977 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 395 },
1978 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 387 },
1979 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
1980 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 398 },
1981 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 399 },
1982 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 401 },
1983 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 402 },
1984 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
1985 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 404 },
1986 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 308 },
1987 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 408 },
1988 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 409 },
1989 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 331 },
1990 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 410 },
1991 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 257 },
2005 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 403 },
2006 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 407 },
2007 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 408 },
2008 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 409 },
2009 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 411 },
2010 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 44, .child_index = 412 },
2011 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 414 },
2012 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 416 },
2013 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 416 },
2014 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 417 },
2015 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 409 },
2016 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2017 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 420 },
2018 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 421 },
2019 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 423 },
2020 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 424 },
2021 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2022 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 426 },
2023 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 327 },
2024 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 430 },
2025 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 431 },
2026 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
2027 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 432 },
2028 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 272 },
19922029 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1993 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 411 },
1994 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 412 },
1995 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 413 },
1996 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 411 },
1997 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 412 },
1998 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 414 },
1999 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 327 },
2000 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 213 },
2001 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 415 },
2002 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 416 },
2003 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 304 },
2004 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 417 },
2005 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 418 },
2006 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 419 },
2007 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 422 },
2008 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 304 },
2009 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 213 },
2010 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 346 },
2011 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 423 },
2012 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 425 },
2013 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
2014 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 426 },
2015 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 427 },
2016 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 428 },
2017 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 429 },
2018 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 430 },
2019 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 431 },
2020 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 433 },
2021 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 436 },
2022 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 440 },
2023 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 441 },
2024 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 442 },
2025 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 446 },
2026 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 447 },
2027 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 448 },
2028 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 450 },
2029 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 451 },
2030 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 452 },
2031 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 453 },
2032 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 453 },
2033 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 453 },
2034 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 453 },
2035 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 454 },
2036 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 454 },
2030 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 433 },
2031 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 434 },
2032 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
2033 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 433 },
2034 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 434 },
2035 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 436 },
2036 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 346 },
2037 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 228 },
2038 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 437 },
2039 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 438 },
2040 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 323 },
2041 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 439 },
2042 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 440 },
2043 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 441 },
2044 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 444 },
2045 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 323 },
2046 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 228 },
2047 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 365 },
2048 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 445 },
2049 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 447 },
2050 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
2051 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 448 },
2052 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 449 },
2053 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 450 },
2054 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 377 },
2055 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 451 },
2056 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 452 },
2057 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 453 },
2058 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 454 },
2059 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 455 },
2060 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 457 },
2061 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 460 },
2062 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 464 },
2063 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 465 },
2064 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 466 },
2065 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 470 },
2066 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 471 },
2067 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 472 },
2068 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 474 },
2069 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 475 },
2070 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 476 },
2071 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 477 },
2072 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 477 },
2073 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 477 },
2074 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 477 },
2075 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 478 },
2076 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 478 },
20372077 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2038 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 265 },
2039 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 254 },
2040 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 265 },
2041 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 455 },
2042 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 457 },
2043 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 459 },
2044 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 461 },
2045 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 459 },
2046 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 463 },
2078 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 280 },
2079 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 269 },
2080 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 280 },
2081 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 479 },
2082 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 481 },
2083 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 483 },
2084 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 485 },
2085 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 483 },
2086 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 487 },
20472087 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
20482088 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2049 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
2050 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 464 },
2051 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 464 },
2052 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 470 },
2053 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 471 },
2054 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 472 },
2055 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 474 },
2056 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 476 },
2057 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 476 },
2058 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 477 },
2059 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 387 },
2060 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 479 },
2061 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 477 },
2062 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 483 },
2063 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 485 },
2064 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 486 },
2065 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 488 },
2066 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 488 },
2067 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 489 },
2068 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 493 },
2069 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
2070 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
2071 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
2072 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
2073 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
2074 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 495 },
2075 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 265 },
2076 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
2077 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 411 },
2078 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 496 },
2079 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 497 },
2080 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 413 },
2081 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 471 },
2082 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 498 },
2083 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 502 },
2084 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 505 },
2085 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 423 },
2086 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 506 },
2087 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 506 },
2088 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 507 },
2089 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 508 },
2090 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 509 },
2091 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 494 },
2092 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 510 },
2093 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 411 },
2094 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 412 },
2095 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 511 },
2096 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 512 },
2097 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 327 },
2098 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 213 },
2099 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 513 },
2100 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 514 },
2101 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 515 },
2102 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 516 },
2103 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 517 },
2104 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 518 },
2105 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 519 },
2106 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 520 },
2107 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 521 },
2108 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 520 },
2109 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 523 },
2110 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 524 },
2111 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 526 },
2112 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
2089 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2090 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 488 },
2091 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 488 },
2092 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 494 },
2093 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
2094 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 496 },
2095 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 498 },
2096 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 500 },
2097 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 500 },
2098 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 501 },
2099 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 409 },
2100 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 503 },
2101 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 501 },
2102 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 507 },
2103 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 509 },
2104 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 510 },
2105 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
2106 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
2107 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 513 },
2108 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 517 },
2109 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
2110 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
2111 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
2112 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
2113 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 518 },
2114 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 519 },
2115 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 280 },
2116 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
2117 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 433 },
2118 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 520 },
2119 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 521 },
2120 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 435 },
2121 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
2122 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 522 },
2123 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 526 },
2124 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 529 },
2125 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 445 },
2126 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 530 },
2127 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 530 },
2128 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 531 },
2129 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 532 },
2130 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 533 },
2131 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 534 },
2132 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 535 },
2133 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 518 },
2134 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 536 },
2135 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 433 },
2136 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 434 },
2137 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 537 },
2138 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 538 },
2139 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 346 },
2140 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 228 },
2141 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 539 },
2142 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 540 },
2143 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 541 },
2144 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 542 },
2145 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 543 },
2146 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 544 },
2147 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 545 },
2148 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 546 },
2149 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 547 },
2150 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 546 },
2151 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 549 },
2152 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 550 },
2153 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 552 },
2154 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 553 },
21132155 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2114 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 528 },
2115 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 494 },
2116 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 532 },
2117 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 332 },
2118 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 533 },
2119 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 534 },
2120 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 535 },
2121 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 536 },
2122 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 537 },
2123 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
2124 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 538 },
2125 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 539 },
2126 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 540 },
2127 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 542 },
2128 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 543 },
2129 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 544 },
2130 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 547 },
2131 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 534 },
2132 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 470 },
2133 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 497 },
2134 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 548 },
2135 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 549 },
2136 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 550 },
2137 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 387 },
2138 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
2139 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 311 },
2140 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 542 },
2141 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 311 },
2142 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
2156 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 554 },
2157 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 518 },
2158 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 558 },
2159 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 351 },
2160 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
2161 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 560 },
2162 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 561 },
2163 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 562 },
2164 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 563 },
2165 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
2166 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 564 },
2167 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 565 },
2168 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 566 },
2169 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 568 },
2170 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 569 },
2171 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 570 },
2172 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 573 },
2173 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 560 },
2174 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 494 },
2175 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 521 },
2176 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 574 },
2177 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 575 },
2178 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 576 },
2179 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 409 },
2180 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2181 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 330 },
2182 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 568 },
2183 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 330 },
2184 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
21432185 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
21442186 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2145 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 483 },
2146 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 551 },
2147 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 553 },
2148 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 555 },
2149 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 556 },
2150 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 559 },
2151 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 556 },
2152 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 560 },
2153 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 563 },
2187 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 507 },
2188 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 577 },
2189 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 579 },
2190 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 581 },
2191 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 582 },
2192 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 585 },
2193 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 582 },
2194 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 586 },
2195 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 589 },
21542196 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2155 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 564 },
2156 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 565 },
2157 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 536 },
2158 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 497 },
2159 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 568 },
2160 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 413 },
2161 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 471 },
2162 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 569 },
2163 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 571 },
2164 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 551 },
2165 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 573 },
2166 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 577 },
2167 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 581 },
2168 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 584 },
2169 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 585 },
2170 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 586 },
2171 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 589 },
2172 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 591 },
2173 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 592 },
2174 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 594 },
2175 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 595 },
2176 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 596 },
2177 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 597 },
2178 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 598 },
2179 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 600 },
2180 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 603 },
2181 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 604 },
2182 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
2183 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 606 },
2184 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 607 },
2185 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 608 },
2186 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 609 },
2187 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 611 },
2188 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 612 },
2189 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 613 },
2190 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 614 },
2191 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 615 },
2192 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
2193 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 617 },
2197 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 590 },
2198 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 591 },
2199 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
2200 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 521 },
2201 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 594 },
2202 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 435 },
2203 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
2204 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 595 },
2205 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 597 },
2206 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 577 },
2207 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 599 },
2208 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 603 },
2209 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 607 },
2210 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 608 },
2211 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 609 },
2212 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 612 },
2213 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 613 },
2214 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 614 },
2215 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 617 },
2216 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 619 },
2217 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 620 },
2218 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 622 },
2219 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 623 },
2220 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 624 },
2221 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 625 },
2222 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 626 },
2223 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 628 },
2224 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 631 },
2225 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 632 },
2226 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 633 },
2227 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 634 },
2228 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 635 },
2229 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 636 },
2230 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 637 },
2231 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 639 },
2232 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 640 },
2233 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 641 },
2234 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 642 },
2235 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 643 },
2236 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 644 },
2237 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 645 },
21942238 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2195 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 618 },
2239 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 646 },
21962240 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2197 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 619 },
2198 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
2199 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
2200 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 311 },
2201 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
2202 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
2203 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
2204 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 539 },
2205 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 540 },
2206 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 477 },
2241 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 647 },
2242 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2243 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2244 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 330 },
2245 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2246 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2247 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2248 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 565 },
2249 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 566 },
2250 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 501 },
22072251 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2208 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 620 },
2209 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 621 },
2210 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 413 },
2211 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 534 },
2212 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 471 },
2213 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 387 },
2214 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 470 },
2215 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 470 },
2216 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 623 },
2217 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 488 },
2218 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 488 },
2219 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 556 },
2220 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 486 },
2221 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 488 },
2222 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 488 },
2223 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 213 },
2224 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 625 },
2225 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 455 },
2226 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 457 },
2227 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 461 },
2228 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 626 },
2229 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 536 },
2230 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 497 },
2231 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 494 },
2232 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 413 },
2233 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 569 },
2234 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 627 },
2235 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 571 },
2236 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 551 },
2237 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 629 },
2238 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 630 },
2239 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 631 },
2240 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 632 },
2241 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 633 },
2242 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 457 },
2243 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 635 },
2244 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 637 },
2245 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 638 },
2252 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 648 },
2253 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 649 },
2254 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
2255 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 560 },
2256 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
2257 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 409 },
2258 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
2259 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
2260 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 651 },
2261 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
2262 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
2263 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 582 },
2264 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 510 },
2265 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
2266 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
2267 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 228 },
2268 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 653 },
2269 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 479 },
2270 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 481 },
2271 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 485 },
2272 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 654 },
2273 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 562 },
2274 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 521 },
2275 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 518 },
2276 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
2277 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 595 },
2278 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 655 },
2279 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 597 },
2280 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 577 },
2281 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 657 },
2282 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 658 },
2283 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 659 },
2284 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 660 },
2285 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 409 },
2286 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 661 },
2287 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 662 },
2288 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 481 },
2289 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 664 },
2290 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 666 },
2291 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 667 },
22462292 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
22472293 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
22482294 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2249 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 640 },
2250 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 641 },
2251 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 643 },
2252 .{ .char = '0', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 644 },
2253 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 304 },
2254 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 645 },
2255 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 647 },
2256 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 648 },
2257 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 649 },
2258 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 650 },
2259 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 651 },
2260 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 652 },
2261 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 637 },
2262 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 653 },
2295 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 669 },
2296 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 670 },
2297 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 672 },
2298 .{ .char = '0', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 673 },
2299 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 323 },
2300 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 674 },
2301 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 676 },
2302 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 677 },
2303 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 678 },
2304 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 679 },
2305 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 680 },
2306 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 681 },
2307 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 666 },
2308 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 682 },
22632309 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2264 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 654 },
2265 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 655 },
2266 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 656 },
2267 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 657 },
2268 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 658 },
2269 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 659 },
2270 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 660 },
2271 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 661 },
2272 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 662 },
2273 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 663 },
2274 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 664 },
2275 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 665 },
2276 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 453 },
2277 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 453 },
2278 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 453 },
2279 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 453 },
2280 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 377 },
2310 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 683 },
2311 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 684 },
2312 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 685 },
2313 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 686 },
2314 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 687 },
2315 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 688 },
2316 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 689 },
2317 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
2318 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 691 },
2319 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 692 },
2320 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 693 },
2321 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 694 },
2322 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 477 },
2323 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 477 },
2324 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 477 },
2325 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 477 },
2326 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 399 },
22812327 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2282 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 377 },
2283 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 471 },
2284 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
2285 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 214 },
2328 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 399 },
2329 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 495 },
2330 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
2331 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 229 },
22862332 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2287 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 626 },
2288 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 568 },
2289 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 666 },
2290 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 667 },
2291 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 668 },
2292 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 669 },
2293 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 670 },
2294 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 673 },
2295 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 483 },
2296 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 674 },
2297 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 585 },
2333 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 654 },
2334 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 594 },
2335 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 695 },
2336 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 696 },
2337 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 697 },
2338 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 698 },
2339 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 699 },
2340 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 700 },
2341 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 703 },
2342 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 507 },
2343 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 704 },
2344 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 613 },
22982345 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
22992346 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2300 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 675 },
2301 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 676 },
2302 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 676 },
2303 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 677 },
2304 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 289 },
2305 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 678 },
2306 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 658 },
2347 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 705 },
2348 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 706 },
2349 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 706 },
2350 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 707 },
2351 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 308 },
2352 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 708 },
2353 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 687 },
23072354 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2308 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 585 },
2309 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 679 },
2310 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 680 },
2311 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 650 },
2312 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 585 },
2313 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 681 },
2314 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 682 },
2315 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 683 },
2316 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 684 },
2317 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 471 },
2318 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 471 },
2319 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 686 },
2320 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 687 },
2321 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 688 },
2322 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 689 },
2323 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 690 },
2324 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 691 },
2325 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 692 },
2326 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 377 },
2327 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 377 },
2328 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 377 },
2329 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 377 },
2355 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 613 },
2356 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 709 },
2357 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 710 },
2358 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 679 },
2359 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 613 },
2360 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 711 },
2361 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 712 },
2362 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 713 },
2363 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 714 },
2364 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
2365 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
2366 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 716 },
2367 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 717 },
2368 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 718 },
2369 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 719 },
2370 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 720 },
2371 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 721 },
2372 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 722 },
2373 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 399 },
2374 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 399 },
2375 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 399 },
2376 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 399 },
2377 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 723 },
23302378 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
23312379 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
23322380 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2333 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 693 },
2334 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 696 },
2335 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 698 },
2336 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 699 },
2337 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 416 },
2338 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 471 },
2381 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 725 },
2382 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 728 },
2383 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 730 },
2384 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 731 },
2385 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 438 },
2386 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
23392387 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2340 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 700 },
2341 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 704 },
2342 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 542 },
2343 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 542 },
2344 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 412 },
2345 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 563 },
2346 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 705 },
2347 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 706 },
2348 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 707 },
2349 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 708 },
2350 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 709 },
2351 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 710 },
2352 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 711 },
2353 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 453 },
2354 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 453 },
2355 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 453 },
2356 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 453 },
2357 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 453 },
2358 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 712 },
2388 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 732 },
2389 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 736 },
2390 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 568 },
2391 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 568 },
2392 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 434 },
2393 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 589 },
2394 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 737 },
2395 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 738 },
2396 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
2397 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 740 },
2398 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 741 },
2399 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 742 },
2400 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 743 },
2401 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 744 },
2402 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 745 },
2403 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 477 },
2404 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 477 },
2405 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 477 },
2406 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 477 },
2407 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 477 },
2408 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 746 },
23592409 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2360 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 413 },
2361 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 413 },
2362 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 413 },
2363 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 413 },
2364 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 585 },
2365 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 714 },
2366 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 715 },
2410 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 435 },
2411 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 435 },
2412 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 435 },
2413 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
2414 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 613 },
2415 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 748 },
2416 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 749 },
23672417 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2368 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
2369 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 332 },
2370 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 534 },
2371 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 536 },
2372 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 377 },
2373 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 377 },
2374 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 716 },
2375 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 717 },
2376 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 603 },
2377 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 603 },
2418 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 518 },
2419 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 351 },
2420 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 560 },
2421 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
2422 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 607 },
2423 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 607 },
2424 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 399 },
2425 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 399 },
2426 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 750 },
2427 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 751 },
2428 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 631 },
2429 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 631 },
23782430};
23792431pub const data = blk: {
2380 @setEvalBranchQuota(13491);
2432 @setEvalBranchQuota(13653);
23812433 break :blk [_]Properties{
2434 .{ .param_str = "V4LLiV2LLi", .attributes = .{ .@"const" = true }, .features = "lasx" },
2435 .{ .param_str = "V4dV2d", .attributes = .{ .@"const" = true }, .features = "lasx" },
2436 .{ .param_str = "V8fV4f", .attributes = .{ .@"const" = true }, .features = "lasx" },
2437 .{ .param_str = "V4LLiV2LLiV2LLi", .attributes = .{ .@"const" = true }, .features = "lasx" },
2438 .{ .param_str = "V4dV2dV2d", .attributes = .{ .@"const" = true }, .features = "lasx" },
2439 .{ .param_str = "V8fV4fV4f", .attributes = .{ .@"const" = true }, .features = "lasx" },
2440 .{ .param_str = "V2LLiV4LLi", .attributes = .{ .@"const" = true }, .features = "lasx" },
2441 .{ .param_str = "V2dV4d", .attributes = .{ .@"const" = true }, .features = "lasx" },
2442 .{ .param_str = "V4fV8f", .attributes = .{ .@"const" = true }, .features = "lasx" },
2443 .{ .param_str = "V2LLiV4LLi", .attributes = .{ .@"const" = true }, .features = "lasx" },
2444 .{ .param_str = "V2dV4d", .attributes = .{ .@"const" = true }, .features = "lasx" },
2445 .{ .param_str = "V4fV8f", .attributes = .{ .@"const" = true }, .features = "lasx" },
2446 .{ .param_str = "V4LLiV4LLiV2LLi", .attributes = .{ .@"const" = true }, .features = "lasx" },
2447 .{ .param_str = "V4dV4dV2d", .attributes = .{ .@"const" = true }, .features = "lasx" },
2448 .{ .param_str = "V8fV8fV4f", .attributes = .{ .@"const" = true }, .features = "lasx" },
2449 .{ .param_str = "V4LLiV4LLiV2LLi", .attributes = .{ .@"const" = true }, .features = "lasx" },
2450 .{ .param_str = "V4dV4dV2d", .attributes = .{ .@"const" = true }, .features = "lasx" },
2451 .{ .param_str = "V8fV8fV4f", .attributes = .{ .@"const" = true }, .features = "lasx" },
23822452 .{ .param_str = "V4LLiV32Sc", .attributes = .{ .@"const" = true }, .features = "lasx" },
23832453 .{ .param_str = "V4LLiV16s", .attributes = .{ .@"const" = true }, .features = "lasx" },
23842454 .{ .param_str = "V4LLiV8Si", .attributes = .{ .@"const" = true }, .features = "lasx" },
lib/compiler/aro/aro/Builtins/neon.zig created+3606
......@@ -0,0 +1,3606 @@
1//! Autogenerated by GenerateDef from src/aro/Builtins/neon.def, do not edit
2// zig fmt: off
3
4const std = @import("std");
5
6pub fn with(comptime Properties: type) type {
7return struct {
8
9/// Integer starting at 0 derived from the unique index,
10/// corresponds with the data array index.
11pub const Tag = enum(u16) { __builtin_neon___a32_vcvt_bf16_f32,
12 __builtin_neon_splat_lane_bf16,
13 __builtin_neon_splat_lane_v,
14 __builtin_neon_splat_laneq_bf16,
15 __builtin_neon_splat_laneq_v,
16 __builtin_neon_splatq_lane_bf16,
17 __builtin_neon_splatq_lane_v,
18 __builtin_neon_splatq_laneq_bf16,
19 __builtin_neon_splatq_laneq_v,
20 __builtin_neon_vabd_f16,
21 __builtin_neon_vabd_v,
22 __builtin_neon_vabdd_f64,
23 __builtin_neon_vabdq_f16,
24 __builtin_neon_vabdq_v,
25 __builtin_neon_vabds_f32,
26 __builtin_neon_vabs_f16,
27 __builtin_neon_vabs_v,
28 __builtin_neon_vabsd_s64,
29 __builtin_neon_vabsq_f16,
30 __builtin_neon_vabsq_v,
31 __builtin_neon_vadd_v,
32 __builtin_neon_vaddd_s64,
33 __builtin_neon_vaddd_u64,
34 __builtin_neon_vaddhn_v,
35 __builtin_neon_vaddlv_s16,
36 __builtin_neon_vaddlv_s32,
37 __builtin_neon_vaddlv_s8,
38 __builtin_neon_vaddlv_u16,
39 __builtin_neon_vaddlv_u32,
40 __builtin_neon_vaddlv_u8,
41 __builtin_neon_vaddlvq_s16,
42 __builtin_neon_vaddlvq_s32,
43 __builtin_neon_vaddlvq_s8,
44 __builtin_neon_vaddlvq_u16,
45 __builtin_neon_vaddlvq_u32,
46 __builtin_neon_vaddlvq_u8,
47 __builtin_neon_vaddq_p128,
48 __builtin_neon_vaddq_v,
49 __builtin_neon_vaddv_f32,
50 __builtin_neon_vaddv_s16,
51 __builtin_neon_vaddv_s32,
52 __builtin_neon_vaddv_s8,
53 __builtin_neon_vaddv_u16,
54 __builtin_neon_vaddv_u32,
55 __builtin_neon_vaddv_u8,
56 __builtin_neon_vaddvq_f32,
57 __builtin_neon_vaddvq_f64,
58 __builtin_neon_vaddvq_s16,
59 __builtin_neon_vaddvq_s32,
60 __builtin_neon_vaddvq_s64,
61 __builtin_neon_vaddvq_s8,
62 __builtin_neon_vaddvq_u16,
63 __builtin_neon_vaddvq_u32,
64 __builtin_neon_vaddvq_u64,
65 __builtin_neon_vaddvq_u8,
66 __builtin_neon_vaesdq_u8,
67 __builtin_neon_vaeseq_u8,
68 __builtin_neon_vaesimcq_u8,
69 __builtin_neon_vaesmcq_u8,
70 __builtin_neon_vamax_f16,
71 __builtin_neon_vamax_f32,
72 __builtin_neon_vamaxq_f16,
73 __builtin_neon_vamaxq_f32,
74 __builtin_neon_vamaxq_f64,
75 __builtin_neon_vamin_f16,
76 __builtin_neon_vamin_f32,
77 __builtin_neon_vaminq_f16,
78 __builtin_neon_vaminq_f32,
79 __builtin_neon_vaminq_f64,
80 __builtin_neon_vbcaxq_s16,
81 __builtin_neon_vbcaxq_s32,
82 __builtin_neon_vbcaxq_s64,
83 __builtin_neon_vbcaxq_s8,
84 __builtin_neon_vbcaxq_u16,
85 __builtin_neon_vbcaxq_u32,
86 __builtin_neon_vbcaxq_u64,
87 __builtin_neon_vbcaxq_u8,
88 __builtin_neon_vbfdot_f32,
89 __builtin_neon_vbfdotq_f32,
90 __builtin_neon_vbfmlalbq_f32,
91 __builtin_neon_vbfmlaltq_f32,
92 __builtin_neon_vbfmmlaq_f32,
93 __builtin_neon_vbsl_v,
94 __builtin_neon_vbslq_v,
95 __builtin_neon_vcadd_rot270_f16,
96 __builtin_neon_vcadd_rot270_f32,
97 __builtin_neon_vcadd_rot90_f16,
98 __builtin_neon_vcadd_rot90_f32,
99 __builtin_neon_vcaddq_rot270_f16,
100 __builtin_neon_vcaddq_rot270_f32,
101 __builtin_neon_vcaddq_rot270_f64,
102 __builtin_neon_vcaddq_rot90_f16,
103 __builtin_neon_vcaddq_rot90_f32,
104 __builtin_neon_vcaddq_rot90_f64,
105 __builtin_neon_vcage_f16,
106 __builtin_neon_vcage_v,
107 __builtin_neon_vcaged_f64,
108 __builtin_neon_vcageq_f16,
109 __builtin_neon_vcageq_v,
110 __builtin_neon_vcages_f32,
111 __builtin_neon_vcagt_f16,
112 __builtin_neon_vcagt_v,
113 __builtin_neon_vcagtd_f64,
114 __builtin_neon_vcagtq_f16,
115 __builtin_neon_vcagtq_v,
116 __builtin_neon_vcagts_f32,
117 __builtin_neon_vcale_f16,
118 __builtin_neon_vcale_v,
119 __builtin_neon_vcaled_f64,
120 __builtin_neon_vcaleq_f16,
121 __builtin_neon_vcaleq_v,
122 __builtin_neon_vcales_f32,
123 __builtin_neon_vcalt_f16,
124 __builtin_neon_vcalt_v,
125 __builtin_neon_vcaltd_f64,
126 __builtin_neon_vcaltq_f16,
127 __builtin_neon_vcaltq_v,
128 __builtin_neon_vcalts_f32,
129 __builtin_neon_vceqd_f64,
130 __builtin_neon_vceqd_s64,
131 __builtin_neon_vceqd_u64,
132 __builtin_neon_vceqs_f32,
133 __builtin_neon_vceqz_f16,
134 __builtin_neon_vceqz_v,
135 __builtin_neon_vceqzd_f64,
136 __builtin_neon_vceqzd_s64,
137 __builtin_neon_vceqzd_u64,
138 __builtin_neon_vceqzq_f16,
139 __builtin_neon_vceqzq_v,
140 __builtin_neon_vceqzs_f32,
141 __builtin_neon_vcged_f64,
142 __builtin_neon_vcged_s64,
143 __builtin_neon_vcged_u64,
144 __builtin_neon_vcges_f32,
145 __builtin_neon_vcgez_f16,
146 __builtin_neon_vcgez_v,
147 __builtin_neon_vcgezd_f64,
148 __builtin_neon_vcgezd_s64,
149 __builtin_neon_vcgezq_f16,
150 __builtin_neon_vcgezq_v,
151 __builtin_neon_vcgezs_f32,
152 __builtin_neon_vcgtd_f64,
153 __builtin_neon_vcgtd_s64,
154 __builtin_neon_vcgtd_u64,
155 __builtin_neon_vcgts_f32,
156 __builtin_neon_vcgtz_f16,
157 __builtin_neon_vcgtz_v,
158 __builtin_neon_vcgtzd_f64,
159 __builtin_neon_vcgtzd_s64,
160 __builtin_neon_vcgtzq_f16,
161 __builtin_neon_vcgtzq_v,
162 __builtin_neon_vcgtzs_f32,
163 __builtin_neon_vcled_f64,
164 __builtin_neon_vcled_s64,
165 __builtin_neon_vcled_u64,
166 __builtin_neon_vcles_f32,
167 __builtin_neon_vclez_f16,
168 __builtin_neon_vclez_v,
169 __builtin_neon_vclezd_f64,
170 __builtin_neon_vclezd_s64,
171 __builtin_neon_vclezq_f16,
172 __builtin_neon_vclezq_v,
173 __builtin_neon_vclezs_f32,
174 __builtin_neon_vcls_v,
175 __builtin_neon_vclsq_v,
176 __builtin_neon_vcltd_f64,
177 __builtin_neon_vcltd_s64,
178 __builtin_neon_vcltd_u64,
179 __builtin_neon_vclts_f32,
180 __builtin_neon_vcltz_f16,
181 __builtin_neon_vcltz_v,
182 __builtin_neon_vcltzd_f64,
183 __builtin_neon_vcltzd_s64,
184 __builtin_neon_vcltzq_f16,
185 __builtin_neon_vcltzq_v,
186 __builtin_neon_vcltzs_f32,
187 __builtin_neon_vclz_v,
188 __builtin_neon_vclzq_v,
189 __builtin_neon_vcmla_f16,
190 __builtin_neon_vcmla_f32,
191 __builtin_neon_vcmla_rot180_f16,
192 __builtin_neon_vcmla_rot180_f32,
193 __builtin_neon_vcmla_rot270_f16,
194 __builtin_neon_vcmla_rot270_f32,
195 __builtin_neon_vcmla_rot90_f16,
196 __builtin_neon_vcmla_rot90_f32,
197 __builtin_neon_vcmlaq_f16,
198 __builtin_neon_vcmlaq_f32,
199 __builtin_neon_vcmlaq_f64,
200 __builtin_neon_vcmlaq_rot180_f16,
201 __builtin_neon_vcmlaq_rot180_f32,
202 __builtin_neon_vcmlaq_rot180_f64,
203 __builtin_neon_vcmlaq_rot270_f16,
204 __builtin_neon_vcmlaq_rot270_f32,
205 __builtin_neon_vcmlaq_rot270_f64,
206 __builtin_neon_vcmlaq_rot90_f16,
207 __builtin_neon_vcmlaq_rot90_f32,
208 __builtin_neon_vcmlaq_rot90_f64,
209 __builtin_neon_vcnt_v,
210 __builtin_neon_vcntq_v,
211 __builtin_neon_vcvt1_bf16_mf8_fpm,
212 __builtin_neon_vcvt1_f16_mf8_fpm,
213 __builtin_neon_vcvt1_high_bf16_mf8_fpm,
214 __builtin_neon_vcvt1_high_f16_mf8_fpm,
215 __builtin_neon_vcvt1_low_bf16_mf8_fpm,
216 __builtin_neon_vcvt1_low_f16_mf8_fpm,
217 __builtin_neon_vcvt2_bf16_mf8_fpm,
218 __builtin_neon_vcvt2_f16_mf8_fpm,
219 __builtin_neon_vcvt2_high_bf16_mf8_fpm,
220 __builtin_neon_vcvt2_high_f16_mf8_fpm,
221 __builtin_neon_vcvt2_low_bf16_mf8_fpm,
222 __builtin_neon_vcvt2_low_f16_mf8_fpm,
223 __builtin_neon_vcvt_bf16_f32,
224 __builtin_neon_vcvt_f16_f32,
225 __builtin_neon_vcvt_f16_s16,
226 __builtin_neon_vcvt_f16_u16,
227 __builtin_neon_vcvt_f32_f16,
228 __builtin_neon_vcvt_f32_f64,
229 __builtin_neon_vcvt_f32_v,
230 __builtin_neon_vcvt_f64_f32,
231 __builtin_neon_vcvt_f64_v,
232 __builtin_neon_vcvt_high_mf8_f32_fpm,
233 __builtin_neon_vcvt_mf8_f16_fpm,
234 __builtin_neon_vcvt_mf8_f32_fpm,
235 __builtin_neon_vcvt_n_f16_s16,
236 __builtin_neon_vcvt_n_f16_u16,
237 __builtin_neon_vcvt_n_f32_v,
238 __builtin_neon_vcvt_n_f64_v,
239 __builtin_neon_vcvt_n_s16_f16,
240 __builtin_neon_vcvt_n_s32_v,
241 __builtin_neon_vcvt_n_s64_v,
242 __builtin_neon_vcvt_n_u16_f16,
243 __builtin_neon_vcvt_n_u32_v,
244 __builtin_neon_vcvt_n_u64_v,
245 __builtin_neon_vcvt_s16_f16,
246 __builtin_neon_vcvt_s32_v,
247 __builtin_neon_vcvt_s64_v,
248 __builtin_neon_vcvt_u16_f16,
249 __builtin_neon_vcvt_u32_v,
250 __builtin_neon_vcvt_u64_v,
251 __builtin_neon_vcvta_s16_f16,
252 __builtin_neon_vcvta_s32_v,
253 __builtin_neon_vcvta_s64_v,
254 __builtin_neon_vcvta_u16_f16,
255 __builtin_neon_vcvta_u32_v,
256 __builtin_neon_vcvta_u64_v,
257 __builtin_neon_vcvtad_s32_f64,
258 __builtin_neon_vcvtad_s64_f64,
259 __builtin_neon_vcvtad_u32_f64,
260 __builtin_neon_vcvtad_u64_f64,
261 __builtin_neon_vcvtaq_s16_f16,
262 __builtin_neon_vcvtaq_s32_v,
263 __builtin_neon_vcvtaq_s64_v,
264 __builtin_neon_vcvtaq_u16_f16,
265 __builtin_neon_vcvtaq_u32_v,
266 __builtin_neon_vcvtaq_u64_v,
267 __builtin_neon_vcvtas_s32_f32,
268 __builtin_neon_vcvtas_s64_f32,
269 __builtin_neon_vcvtas_u32_f32,
270 __builtin_neon_vcvtas_u64_f32,
271 __builtin_neon_vcvtd_f64_s64,
272 __builtin_neon_vcvtd_f64_u64,
273 __builtin_neon_vcvtd_n_f64_s64,
274 __builtin_neon_vcvtd_n_f64_u64,
275 __builtin_neon_vcvtd_n_s64_f64,
276 __builtin_neon_vcvtd_n_u64_f64,
277 __builtin_neon_vcvtd_s32_f64,
278 __builtin_neon_vcvtd_s64_f64,
279 __builtin_neon_vcvtd_u32_f64,
280 __builtin_neon_vcvtd_u64_f64,
281 __builtin_neon_vcvth_bf16_f32,
282 __builtin_neon_vcvtm_s16_f16,
283 __builtin_neon_vcvtm_s32_v,
284 __builtin_neon_vcvtm_s64_v,
285 __builtin_neon_vcvtm_u16_f16,
286 __builtin_neon_vcvtm_u32_v,
287 __builtin_neon_vcvtm_u64_v,
288 __builtin_neon_vcvtmd_s32_f64,
289 __builtin_neon_vcvtmd_s64_f64,
290 __builtin_neon_vcvtmd_u32_f64,
291 __builtin_neon_vcvtmd_u64_f64,
292 __builtin_neon_vcvtmq_s16_f16,
293 __builtin_neon_vcvtmq_s32_v,
294 __builtin_neon_vcvtmq_s64_v,
295 __builtin_neon_vcvtmq_u16_f16,
296 __builtin_neon_vcvtmq_u32_v,
297 __builtin_neon_vcvtmq_u64_v,
298 __builtin_neon_vcvtms_s32_f32,
299 __builtin_neon_vcvtms_s64_f32,
300 __builtin_neon_vcvtms_u32_f32,
301 __builtin_neon_vcvtms_u64_f32,
302 __builtin_neon_vcvtn_s16_f16,
303 __builtin_neon_vcvtn_s32_v,
304 __builtin_neon_vcvtn_s64_v,
305 __builtin_neon_vcvtn_u16_f16,
306 __builtin_neon_vcvtn_u32_v,
307 __builtin_neon_vcvtn_u64_v,
308 __builtin_neon_vcvtnd_s32_f64,
309 __builtin_neon_vcvtnd_s64_f64,
310 __builtin_neon_vcvtnd_u32_f64,
311 __builtin_neon_vcvtnd_u64_f64,
312 __builtin_neon_vcvtnq_s16_f16,
313 __builtin_neon_vcvtnq_s32_v,
314 __builtin_neon_vcvtnq_s64_v,
315 __builtin_neon_vcvtnq_u16_f16,
316 __builtin_neon_vcvtnq_u32_v,
317 __builtin_neon_vcvtnq_u64_v,
318 __builtin_neon_vcvtns_s32_f32,
319 __builtin_neon_vcvtns_s64_f32,
320 __builtin_neon_vcvtns_u32_f32,
321 __builtin_neon_vcvtns_u64_f32,
322 __builtin_neon_vcvtp_s16_f16,
323 __builtin_neon_vcvtp_s32_v,
324 __builtin_neon_vcvtp_s64_v,
325 __builtin_neon_vcvtp_u16_f16,
326 __builtin_neon_vcvtp_u32_v,
327 __builtin_neon_vcvtp_u64_v,
328 __builtin_neon_vcvtpd_s32_f64,
329 __builtin_neon_vcvtpd_s64_f64,
330 __builtin_neon_vcvtpd_u32_f64,
331 __builtin_neon_vcvtpd_u64_f64,
332 __builtin_neon_vcvtpq_s16_f16,
333 __builtin_neon_vcvtpq_s32_v,
334 __builtin_neon_vcvtpq_s64_v,
335 __builtin_neon_vcvtpq_u16_f16,
336 __builtin_neon_vcvtpq_u32_v,
337 __builtin_neon_vcvtpq_u64_v,
338 __builtin_neon_vcvtps_s32_f32,
339 __builtin_neon_vcvtps_s64_f32,
340 __builtin_neon_vcvtps_u32_f32,
341 __builtin_neon_vcvtps_u64_f32,
342 __builtin_neon_vcvtq_f16_s16,
343 __builtin_neon_vcvtq_f16_u16,
344 __builtin_neon_vcvtq_f32_v,
345 __builtin_neon_vcvtq_f64_v,
346 __builtin_neon_vcvtq_high_bf16_f32,
347 __builtin_neon_vcvtq_low_bf16_f32,
348 __builtin_neon_vcvtq_mf8_f16_fpm,
349 __builtin_neon_vcvtq_n_f16_s16,
350 __builtin_neon_vcvtq_n_f16_u16,
351 __builtin_neon_vcvtq_n_f32_v,
352 __builtin_neon_vcvtq_n_f64_v,
353 __builtin_neon_vcvtq_n_s16_f16,
354 __builtin_neon_vcvtq_n_s32_v,
355 __builtin_neon_vcvtq_n_s64_v,
356 __builtin_neon_vcvtq_n_u16_f16,
357 __builtin_neon_vcvtq_n_u32_v,
358 __builtin_neon_vcvtq_n_u64_v,
359 __builtin_neon_vcvtq_s16_f16,
360 __builtin_neon_vcvtq_s32_v,
361 __builtin_neon_vcvtq_s64_v,
362 __builtin_neon_vcvtq_u16_f16,
363 __builtin_neon_vcvtq_u32_v,
364 __builtin_neon_vcvtq_u64_v,
365 __builtin_neon_vcvts_f32_s32,
366 __builtin_neon_vcvts_f32_u32,
367 __builtin_neon_vcvts_n_f32_s32,
368 __builtin_neon_vcvts_n_f32_u32,
369 __builtin_neon_vcvts_n_s32_f32,
370 __builtin_neon_vcvts_n_u32_f32,
371 __builtin_neon_vcvts_s32_f32,
372 __builtin_neon_vcvts_s64_f32,
373 __builtin_neon_vcvts_u32_f32,
374 __builtin_neon_vcvts_u64_f32,
375 __builtin_neon_vcvtx_f32_v,
376 __builtin_neon_vcvtxd_f32_f64,
377 __builtin_neon_vdot_f16_mf8_fpm,
378 __builtin_neon_vdot_f32_mf8_fpm,
379 __builtin_neon_vdot_lane_f16_mf8_fpm,
380 __builtin_neon_vdot_lane_f32_mf8_fpm,
381 __builtin_neon_vdot_laneq_f16_mf8_fpm,
382 __builtin_neon_vdot_laneq_f32_mf8_fpm,
383 __builtin_neon_vdot_s32,
384 __builtin_neon_vdot_u32,
385 __builtin_neon_vdotq_f16_mf8_fpm,
386 __builtin_neon_vdotq_f32_mf8_fpm,
387 __builtin_neon_vdotq_lane_f16_mf8_fpm,
388 __builtin_neon_vdotq_lane_f32_mf8_fpm,
389 __builtin_neon_vdotq_laneq_f16_mf8_fpm,
390 __builtin_neon_vdotq_laneq_f32_mf8_fpm,
391 __builtin_neon_vdotq_s32,
392 __builtin_neon_vdotq_u32,
393 __builtin_neon_vdupb_lane_i8,
394 __builtin_neon_vdupb_lane_mf8,
395 __builtin_neon_vdupb_laneq_i8,
396 __builtin_neon_vdupb_laneq_mf8,
397 __builtin_neon_vdupd_lane_f64,
398 __builtin_neon_vdupd_lane_i64,
399 __builtin_neon_vdupd_laneq_f64,
400 __builtin_neon_vdupd_laneq_i64,
401 __builtin_neon_vduph_lane_bf16,
402 __builtin_neon_vduph_lane_f16,
403 __builtin_neon_vduph_lane_i16,
404 __builtin_neon_vduph_laneq_bf16,
405 __builtin_neon_vduph_laneq_f16,
406 __builtin_neon_vduph_laneq_i16,
407 __builtin_neon_vdups_lane_f32,
408 __builtin_neon_vdups_lane_i32,
409 __builtin_neon_vdups_laneq_f32,
410 __builtin_neon_vdups_laneq_i32,
411 __builtin_neon_veor3q_s16,
412 __builtin_neon_veor3q_s32,
413 __builtin_neon_veor3q_s64,
414 __builtin_neon_veor3q_s8,
415 __builtin_neon_veor3q_u16,
416 __builtin_neon_veor3q_u32,
417 __builtin_neon_veor3q_u64,
418 __builtin_neon_veor3q_u8,
419 __builtin_neon_vext_v,
420 __builtin_neon_vextq_v,
421 __builtin_neon_vfma_f16,
422 __builtin_neon_vfma_lane_f16,
423 __builtin_neon_vfma_lane_v,
424 __builtin_neon_vfma_laneq_f16,
425 __builtin_neon_vfma_laneq_v,
426 __builtin_neon_vfma_v,
427 __builtin_neon_vfmad_lane_f64,
428 __builtin_neon_vfmad_laneq_f64,
429 __builtin_neon_vfmah_lane_f16,
430 __builtin_neon_vfmah_laneq_f16,
431 __builtin_neon_vfmaq_f16,
432 __builtin_neon_vfmaq_lane_f16,
433 __builtin_neon_vfmaq_lane_v,
434 __builtin_neon_vfmaq_laneq_f16,
435 __builtin_neon_vfmaq_laneq_v,
436 __builtin_neon_vfmaq_v,
437 __builtin_neon_vfmas_lane_f32,
438 __builtin_neon_vfmas_laneq_f32,
439 __builtin_neon_vfmlal_high_f16,
440 __builtin_neon_vfmlal_low_f16,
441 __builtin_neon_vfmlalq_high_f16,
442 __builtin_neon_vfmlalq_low_f16,
443 __builtin_neon_vfmlsl_high_f16,
444 __builtin_neon_vfmlsl_low_f16,
445 __builtin_neon_vfmlslq_high_f16,
446 __builtin_neon_vfmlslq_low_f16,
447 __builtin_neon_vget_lane_bf16,
448 __builtin_neon_vget_lane_f32,
449 __builtin_neon_vget_lane_f64,
450 __builtin_neon_vget_lane_i16,
451 __builtin_neon_vget_lane_i32,
452 __builtin_neon_vget_lane_i64,
453 __builtin_neon_vget_lane_i8,
454 __builtin_neon_vget_lane_mf8,
455 __builtin_neon_vgetq_lane_bf16,
456 __builtin_neon_vgetq_lane_f32,
457 __builtin_neon_vgetq_lane_f64,
458 __builtin_neon_vgetq_lane_i16,
459 __builtin_neon_vgetq_lane_i32,
460 __builtin_neon_vgetq_lane_i64,
461 __builtin_neon_vgetq_lane_i8,
462 __builtin_neon_vgetq_lane_mf8,
463 __builtin_neon_vhadd_v,
464 __builtin_neon_vhaddq_v,
465 __builtin_neon_vhsub_v,
466 __builtin_neon_vhsubq_v,
467 __builtin_neon_vld1_bf16,
468 __builtin_neon_vld1_bf16_x2,
469 __builtin_neon_vld1_bf16_x3,
470 __builtin_neon_vld1_bf16_x4,
471 __builtin_neon_vld1_dup_bf16,
472 __builtin_neon_vld1_dup_v,
473 __builtin_neon_vld1_lane_bf16,
474 __builtin_neon_vld1_lane_v,
475 __builtin_neon_vld1_v,
476 __builtin_neon_vld1_x2_v,
477 __builtin_neon_vld1_x3_v,
478 __builtin_neon_vld1_x4_v,
479 __builtin_neon_vld1q_bf16,
480 __builtin_neon_vld1q_bf16_x2,
481 __builtin_neon_vld1q_bf16_x3,
482 __builtin_neon_vld1q_bf16_x4,
483 __builtin_neon_vld1q_dup_bf16,
484 __builtin_neon_vld1q_dup_v,
485 __builtin_neon_vld1q_lane_bf16,
486 __builtin_neon_vld1q_lane_v,
487 __builtin_neon_vld1q_v,
488 __builtin_neon_vld1q_x2_v,
489 __builtin_neon_vld1q_x3_v,
490 __builtin_neon_vld1q_x4_v,
491 __builtin_neon_vld2_bf16,
492 __builtin_neon_vld2_dup_bf16,
493 __builtin_neon_vld2_dup_v,
494 __builtin_neon_vld2_lane_bf16,
495 __builtin_neon_vld2_lane_v,
496 __builtin_neon_vld2_v,
497 __builtin_neon_vld2q_bf16,
498 __builtin_neon_vld2q_dup_bf16,
499 __builtin_neon_vld2q_dup_v,
500 __builtin_neon_vld2q_lane_bf16,
501 __builtin_neon_vld2q_lane_v,
502 __builtin_neon_vld2q_v,
503 __builtin_neon_vld3_bf16,
504 __builtin_neon_vld3_dup_bf16,
505 __builtin_neon_vld3_dup_v,
506 __builtin_neon_vld3_lane_bf16,
507 __builtin_neon_vld3_lane_v,
508 __builtin_neon_vld3_v,
509 __builtin_neon_vld3q_bf16,
510 __builtin_neon_vld3q_dup_bf16,
511 __builtin_neon_vld3q_dup_v,
512 __builtin_neon_vld3q_lane_bf16,
513 __builtin_neon_vld3q_lane_v,
514 __builtin_neon_vld3q_v,
515 __builtin_neon_vld4_bf16,
516 __builtin_neon_vld4_dup_bf16,
517 __builtin_neon_vld4_dup_v,
518 __builtin_neon_vld4_lane_bf16,
519 __builtin_neon_vld4_lane_v,
520 __builtin_neon_vld4_v,
521 __builtin_neon_vld4q_bf16,
522 __builtin_neon_vld4q_dup_bf16,
523 __builtin_neon_vld4q_dup_v,
524 __builtin_neon_vld4q_lane_bf16,
525 __builtin_neon_vld4q_lane_v,
526 __builtin_neon_vld4q_v,
527 __builtin_neon_vldap1_lane_f64,
528 __builtin_neon_vldap1_lane_p64,
529 __builtin_neon_vldap1_lane_s64,
530 __builtin_neon_vldap1_lane_u64,
531 __builtin_neon_vldap1q_lane_f64,
532 __builtin_neon_vldap1q_lane_p64,
533 __builtin_neon_vldap1q_lane_s64,
534 __builtin_neon_vldap1q_lane_u64,
535 __builtin_neon_vldrq_p128,
536 __builtin_neon_vluti2_lane_bf16,
537 __builtin_neon_vluti2_lane_f16,
538 __builtin_neon_vluti2_lane_mf8,
539 __builtin_neon_vluti2_lane_p16,
540 __builtin_neon_vluti2_lane_p8,
541 __builtin_neon_vluti2_lane_s16,
542 __builtin_neon_vluti2_lane_s8,
543 __builtin_neon_vluti2_lane_u16,
544 __builtin_neon_vluti2_lane_u8,
545 __builtin_neon_vluti2_laneq_bf16,
546 __builtin_neon_vluti2_laneq_f16,
547 __builtin_neon_vluti2_laneq_mf8,
548 __builtin_neon_vluti2_laneq_p16,
549 __builtin_neon_vluti2_laneq_p8,
550 __builtin_neon_vluti2_laneq_s16,
551 __builtin_neon_vluti2_laneq_s8,
552 __builtin_neon_vluti2_laneq_u16,
553 __builtin_neon_vluti2_laneq_u8,
554 __builtin_neon_vluti2q_lane_bf16,
555 __builtin_neon_vluti2q_lane_f16,
556 __builtin_neon_vluti2q_lane_mf8,
557 __builtin_neon_vluti2q_lane_p16,
558 __builtin_neon_vluti2q_lane_p8,
559 __builtin_neon_vluti2q_lane_s16,
560 __builtin_neon_vluti2q_lane_s8,
561 __builtin_neon_vluti2q_lane_u16,
562 __builtin_neon_vluti2q_lane_u8,
563 __builtin_neon_vluti2q_laneq_bf16,
564 __builtin_neon_vluti2q_laneq_f16,
565 __builtin_neon_vluti2q_laneq_mf8,
566 __builtin_neon_vluti2q_laneq_p16,
567 __builtin_neon_vluti2q_laneq_p8,
568 __builtin_neon_vluti2q_laneq_s16,
569 __builtin_neon_vluti2q_laneq_s8,
570 __builtin_neon_vluti2q_laneq_u16,
571 __builtin_neon_vluti2q_laneq_u8,
572 __builtin_neon_vluti4q_lane_bf16_x2,
573 __builtin_neon_vluti4q_lane_f16_x2,
574 __builtin_neon_vluti4q_lane_mf8,
575 __builtin_neon_vluti4q_lane_p16_x2,
576 __builtin_neon_vluti4q_lane_p8,
577 __builtin_neon_vluti4q_lane_s16_x2,
578 __builtin_neon_vluti4q_lane_s8,
579 __builtin_neon_vluti4q_lane_u16_x2,
580 __builtin_neon_vluti4q_lane_u8,
581 __builtin_neon_vluti4q_laneq_bf16_x2,
582 __builtin_neon_vluti4q_laneq_f16_x2,
583 __builtin_neon_vluti4q_laneq_mf8,
584 __builtin_neon_vluti4q_laneq_p16_x2,
585 __builtin_neon_vluti4q_laneq_p8,
586 __builtin_neon_vluti4q_laneq_s16_x2,
587 __builtin_neon_vluti4q_laneq_s8,
588 __builtin_neon_vluti4q_laneq_u16_x2,
589 __builtin_neon_vluti4q_laneq_u8,
590 __builtin_neon_vmax_f16,
591 __builtin_neon_vmax_v,
592 __builtin_neon_vmaxnm_f16,
593 __builtin_neon_vmaxnm_v,
594 __builtin_neon_vmaxnmq_f16,
595 __builtin_neon_vmaxnmq_v,
596 __builtin_neon_vmaxnmv_f16,
597 __builtin_neon_vmaxnmv_f32,
598 __builtin_neon_vmaxnmvq_f16,
599 __builtin_neon_vmaxnmvq_f32,
600 __builtin_neon_vmaxnmvq_f64,
601 __builtin_neon_vmaxq_f16,
602 __builtin_neon_vmaxq_v,
603 __builtin_neon_vmaxv_f16,
604 __builtin_neon_vmaxv_f32,
605 __builtin_neon_vmaxv_s16,
606 __builtin_neon_vmaxv_s32,
607 __builtin_neon_vmaxv_s8,
608 __builtin_neon_vmaxv_u16,
609 __builtin_neon_vmaxv_u32,
610 __builtin_neon_vmaxv_u8,
611 __builtin_neon_vmaxvq_f16,
612 __builtin_neon_vmaxvq_f32,
613 __builtin_neon_vmaxvq_f64,
614 __builtin_neon_vmaxvq_s16,
615 __builtin_neon_vmaxvq_s32,
616 __builtin_neon_vmaxvq_s8,
617 __builtin_neon_vmaxvq_u16,
618 __builtin_neon_vmaxvq_u32,
619 __builtin_neon_vmaxvq_u8,
620 __builtin_neon_vmin_f16,
621 __builtin_neon_vmin_v,
622 __builtin_neon_vminnm_f16,
623 __builtin_neon_vminnm_v,
624 __builtin_neon_vminnmq_f16,
625 __builtin_neon_vminnmq_v,
626 __builtin_neon_vminnmv_f16,
627 __builtin_neon_vminnmv_f32,
628 __builtin_neon_vminnmvq_f16,
629 __builtin_neon_vminnmvq_f32,
630 __builtin_neon_vminnmvq_f64,
631 __builtin_neon_vminq_f16,
632 __builtin_neon_vminq_v,
633 __builtin_neon_vminv_f16,
634 __builtin_neon_vminv_f32,
635 __builtin_neon_vminv_s16,
636 __builtin_neon_vminv_s32,
637 __builtin_neon_vminv_s8,
638 __builtin_neon_vminv_u16,
639 __builtin_neon_vminv_u32,
640 __builtin_neon_vminv_u8,
641 __builtin_neon_vminvq_f16,
642 __builtin_neon_vminvq_f32,
643 __builtin_neon_vminvq_f64,
644 __builtin_neon_vminvq_s16,
645 __builtin_neon_vminvq_s32,
646 __builtin_neon_vminvq_s8,
647 __builtin_neon_vminvq_u16,
648 __builtin_neon_vminvq_u32,
649 __builtin_neon_vminvq_u8,
650 __builtin_neon_vmlalbq_f16_mf8_fpm,
651 __builtin_neon_vmlalbq_lane_f16_mf8_fpm,
652 __builtin_neon_vmlalbq_laneq_f16_mf8_fpm,
653 __builtin_neon_vmlallbbq_f32_mf8_fpm,
654 __builtin_neon_vmlallbbq_lane_f32_mf8_fpm,
655 __builtin_neon_vmlallbbq_laneq_f32_mf8_fpm,
656 __builtin_neon_vmlallbtq_f32_mf8_fpm,
657 __builtin_neon_vmlallbtq_lane_f32_mf8_fpm,
658 __builtin_neon_vmlallbtq_laneq_f32_mf8_fpm,
659 __builtin_neon_vmlalltbq_f32_mf8_fpm,
660 __builtin_neon_vmlalltbq_lane_f32_mf8_fpm,
661 __builtin_neon_vmlalltbq_laneq_f32_mf8_fpm,
662 __builtin_neon_vmlallttq_f32_mf8_fpm,
663 __builtin_neon_vmlallttq_lane_f32_mf8_fpm,
664 __builtin_neon_vmlallttq_laneq_f32_mf8_fpm,
665 __builtin_neon_vmlaltq_f16_mf8_fpm,
666 __builtin_neon_vmlaltq_lane_f16_mf8_fpm,
667 __builtin_neon_vmlaltq_laneq_f16_mf8_fpm,
668 __builtin_neon_vmmlaq_f16_mf8_fpm,
669 __builtin_neon_vmmlaq_f32_mf8_fpm,
670 __builtin_neon_vmmlaq_s32,
671 __builtin_neon_vmmlaq_u32,
672 __builtin_neon_vmovl_v,
673 __builtin_neon_vmovn_v,
674 __builtin_neon_vmul_lane_v,
675 __builtin_neon_vmul_laneq_v,
676 __builtin_neon_vmul_n_f64,
677 __builtin_neon_vmul_v,
678 __builtin_neon_vmull_p64,
679 __builtin_neon_vmull_v,
680 __builtin_neon_vmulq_v,
681 __builtin_neon_vmulx_f16,
682 __builtin_neon_vmulx_v,
683 __builtin_neon_vmulxd_f64,
684 __builtin_neon_vmulxh_lane_f16,
685 __builtin_neon_vmulxh_laneq_f16,
686 __builtin_neon_vmulxq_f16,
687 __builtin_neon_vmulxq_v,
688 __builtin_neon_vmulxs_f32,
689 __builtin_neon_vnegd_s64,
690 __builtin_neon_vpadal_v,
691 __builtin_neon_vpadalq_v,
692 __builtin_neon_vpadd_f16,
693 __builtin_neon_vpadd_v,
694 __builtin_neon_vpaddd_f64,
695 __builtin_neon_vpaddd_s64,
696 __builtin_neon_vpaddd_u64,
697 __builtin_neon_vpaddl_v,
698 __builtin_neon_vpaddlq_v,
699 __builtin_neon_vpaddq_f16,
700 __builtin_neon_vpaddq_v,
701 __builtin_neon_vpadds_f32,
702 __builtin_neon_vpmax_f16,
703 __builtin_neon_vpmax_v,
704 __builtin_neon_vpmaxnm_f16,
705 __builtin_neon_vpmaxnm_v,
706 __builtin_neon_vpmaxnmq_f16,
707 __builtin_neon_vpmaxnmq_v,
708 __builtin_neon_vpmaxnmqd_f64,
709 __builtin_neon_vpmaxnms_f32,
710 __builtin_neon_vpmaxq_f16,
711 __builtin_neon_vpmaxq_v,
712 __builtin_neon_vpmaxqd_f64,
713 __builtin_neon_vpmaxs_f32,
714 __builtin_neon_vpmin_f16,
715 __builtin_neon_vpmin_v,
716 __builtin_neon_vpminnm_f16,
717 __builtin_neon_vpminnm_v,
718 __builtin_neon_vpminnmq_f16,
719 __builtin_neon_vpminnmq_v,
720 __builtin_neon_vpminnmqd_f64,
721 __builtin_neon_vpminnms_f32,
722 __builtin_neon_vpminq_f16,
723 __builtin_neon_vpminq_v,
724 __builtin_neon_vpminqd_f64,
725 __builtin_neon_vpmins_f32,
726 __builtin_neon_vqabs_v,
727 __builtin_neon_vqabsb_s8,
728 __builtin_neon_vqabsd_s64,
729 __builtin_neon_vqabsh_s16,
730 __builtin_neon_vqabsq_v,
731 __builtin_neon_vqabss_s32,
732 __builtin_neon_vqadd_v,
733 __builtin_neon_vqaddb_s8,
734 __builtin_neon_vqaddb_u8,
735 __builtin_neon_vqaddd_s64,
736 __builtin_neon_vqaddd_u64,
737 __builtin_neon_vqaddh_s16,
738 __builtin_neon_vqaddh_u16,
739 __builtin_neon_vqaddq_v,
740 __builtin_neon_vqadds_s32,
741 __builtin_neon_vqadds_u32,
742 __builtin_neon_vqdmlal_v,
743 __builtin_neon_vqdmlalh_lane_s16,
744 __builtin_neon_vqdmlalh_laneq_s16,
745 __builtin_neon_vqdmlalh_s16,
746 __builtin_neon_vqdmlals_lane_s32,
747 __builtin_neon_vqdmlals_laneq_s32,
748 __builtin_neon_vqdmlals_s32,
749 __builtin_neon_vqdmlsl_v,
750 __builtin_neon_vqdmlslh_lane_s16,
751 __builtin_neon_vqdmlslh_laneq_s16,
752 __builtin_neon_vqdmlslh_s16,
753 __builtin_neon_vqdmlsls_lane_s32,
754 __builtin_neon_vqdmlsls_laneq_s32,
755 __builtin_neon_vqdmlsls_s32,
756 __builtin_neon_vqdmulh_lane_v,
757 __builtin_neon_vqdmulh_laneq_v,
758 __builtin_neon_vqdmulh_v,
759 __builtin_neon_vqdmulhh_s16,
760 __builtin_neon_vqdmulhq_lane_v,
761 __builtin_neon_vqdmulhq_laneq_v,
762 __builtin_neon_vqdmulhq_v,
763 __builtin_neon_vqdmulhs_s32,
764 __builtin_neon_vqdmull_v,
765 __builtin_neon_vqdmullh_s16,
766 __builtin_neon_vqdmulls_s32,
767 __builtin_neon_vqmovn_v,
768 __builtin_neon_vqmovnd_s64,
769 __builtin_neon_vqmovnd_u64,
770 __builtin_neon_vqmovnh_s16,
771 __builtin_neon_vqmovnh_u16,
772 __builtin_neon_vqmovns_s32,
773 __builtin_neon_vqmovns_u32,
774 __builtin_neon_vqmovun_v,
775 __builtin_neon_vqmovund_s64,
776 __builtin_neon_vqmovunh_s16,
777 __builtin_neon_vqmovuns_s32,
778 __builtin_neon_vqneg_v,
779 __builtin_neon_vqnegb_s8,
780 __builtin_neon_vqnegd_s64,
781 __builtin_neon_vqnegh_s16,
782 __builtin_neon_vqnegq_v,
783 __builtin_neon_vqnegs_s32,
784 __builtin_neon_vqrdmlah_s16,
785 __builtin_neon_vqrdmlah_s32,
786 __builtin_neon_vqrdmlahh_s16,
787 __builtin_neon_vqrdmlahq_s16,
788 __builtin_neon_vqrdmlahq_s32,
789 __builtin_neon_vqrdmlahs_s32,
790 __builtin_neon_vqrdmlsh_s16,
791 __builtin_neon_vqrdmlsh_s32,
792 __builtin_neon_vqrdmlshh_s16,
793 __builtin_neon_vqrdmlshq_s16,
794 __builtin_neon_vqrdmlshq_s32,
795 __builtin_neon_vqrdmlshs_s32,
796 __builtin_neon_vqrdmulh_lane_v,
797 __builtin_neon_vqrdmulh_laneq_v,
798 __builtin_neon_vqrdmulh_v,
799 __builtin_neon_vqrdmulhh_s16,
800 __builtin_neon_vqrdmulhq_lane_v,
801 __builtin_neon_vqrdmulhq_laneq_v,
802 __builtin_neon_vqrdmulhq_v,
803 __builtin_neon_vqrdmulhs_s32,
804 __builtin_neon_vqrshl_v,
805 __builtin_neon_vqrshlb_s8,
806 __builtin_neon_vqrshlb_u8,
807 __builtin_neon_vqrshld_s64,
808 __builtin_neon_vqrshld_u64,
809 __builtin_neon_vqrshlh_s16,
810 __builtin_neon_vqrshlh_u16,
811 __builtin_neon_vqrshlq_v,
812 __builtin_neon_vqrshls_s32,
813 __builtin_neon_vqrshls_u32,
814 __builtin_neon_vqrshrn_n_v,
815 __builtin_neon_vqrshrnd_n_s64,
816 __builtin_neon_vqrshrnd_n_u64,
817 __builtin_neon_vqrshrnh_n_s16,
818 __builtin_neon_vqrshrnh_n_u16,
819 __builtin_neon_vqrshrns_n_s32,
820 __builtin_neon_vqrshrns_n_u32,
821 __builtin_neon_vqrshrun_n_v,
822 __builtin_neon_vqrshrund_n_s64,
823 __builtin_neon_vqrshrunh_n_s16,
824 __builtin_neon_vqrshruns_n_s32,
825 __builtin_neon_vqshl_n_v,
826 __builtin_neon_vqshl_v,
827 __builtin_neon_vqshlb_n_s8,
828 __builtin_neon_vqshlb_n_u8,
829 __builtin_neon_vqshlb_s8,
830 __builtin_neon_vqshlb_u8,
831 __builtin_neon_vqshld_n_s64,
832 __builtin_neon_vqshld_n_u64,
833 __builtin_neon_vqshld_s64,
834 __builtin_neon_vqshld_u64,
835 __builtin_neon_vqshlh_n_s16,
836 __builtin_neon_vqshlh_n_u16,
837 __builtin_neon_vqshlh_s16,
838 __builtin_neon_vqshlh_u16,
839 __builtin_neon_vqshlq_n_v,
840 __builtin_neon_vqshlq_v,
841 __builtin_neon_vqshls_n_s32,
842 __builtin_neon_vqshls_n_u32,
843 __builtin_neon_vqshls_s32,
844 __builtin_neon_vqshls_u32,
845 __builtin_neon_vqshlu_n_v,
846 __builtin_neon_vqshlub_n_s8,
847 __builtin_neon_vqshlud_n_s64,
848 __builtin_neon_vqshluh_n_s16,
849 __builtin_neon_vqshluq_n_v,
850 __builtin_neon_vqshlus_n_s32,
851 __builtin_neon_vqshrn_n_v,
852 __builtin_neon_vqshrnd_n_s64,
853 __builtin_neon_vqshrnd_n_u64,
854 __builtin_neon_vqshrnh_n_s16,
855 __builtin_neon_vqshrnh_n_u16,
856 __builtin_neon_vqshrns_n_s32,
857 __builtin_neon_vqshrns_n_u32,
858 __builtin_neon_vqshrun_n_v,
859 __builtin_neon_vqshrund_n_s64,
860 __builtin_neon_vqshrunh_n_s16,
861 __builtin_neon_vqshruns_n_s32,
862 __builtin_neon_vqsub_v,
863 __builtin_neon_vqsubb_s8,
864 __builtin_neon_vqsubb_u8,
865 __builtin_neon_vqsubd_s64,
866 __builtin_neon_vqsubd_u64,
867 __builtin_neon_vqsubh_s16,
868 __builtin_neon_vqsubh_u16,
869 __builtin_neon_vqsubq_v,
870 __builtin_neon_vqsubs_s32,
871 __builtin_neon_vqsubs_u32,
872 __builtin_neon_vqtbl1_v,
873 __builtin_neon_vqtbl1q_v,
874 __builtin_neon_vqtbl2_v,
875 __builtin_neon_vqtbl2q_v,
876 __builtin_neon_vqtbl3_v,
877 __builtin_neon_vqtbl3q_v,
878 __builtin_neon_vqtbl4_v,
879 __builtin_neon_vqtbl4q_v,
880 __builtin_neon_vqtbx1_v,
881 __builtin_neon_vqtbx1q_v,
882 __builtin_neon_vqtbx2_v,
883 __builtin_neon_vqtbx2q_v,
884 __builtin_neon_vqtbx3_v,
885 __builtin_neon_vqtbx3q_v,
886 __builtin_neon_vqtbx4_v,
887 __builtin_neon_vqtbx4q_v,
888 __builtin_neon_vraddhn_v,
889 __builtin_neon_vrax1q_u64,
890 __builtin_neon_vrbit_v,
891 __builtin_neon_vrbitq_v,
892 __builtin_neon_vrecpe_f16,
893 __builtin_neon_vrecpe_v,
894 __builtin_neon_vrecped_f64,
895 __builtin_neon_vrecpeq_f16,
896 __builtin_neon_vrecpeq_v,
897 __builtin_neon_vrecpes_f32,
898 __builtin_neon_vrecps_f16,
899 __builtin_neon_vrecps_v,
900 __builtin_neon_vrecpsd_f64,
901 __builtin_neon_vrecpsq_f16,
902 __builtin_neon_vrecpsq_v,
903 __builtin_neon_vrecpss_f32,
904 __builtin_neon_vrecpxd_f64,
905 __builtin_neon_vrecpxs_f32,
906 __builtin_neon_vrhadd_v,
907 __builtin_neon_vrhaddq_v,
908 __builtin_neon_vrnd32x_f32,
909 __builtin_neon_vrnd32x_f64,
910 __builtin_neon_vrnd32xq_f32,
911 __builtin_neon_vrnd32xq_f64,
912 __builtin_neon_vrnd32z_f32,
913 __builtin_neon_vrnd32z_f64,
914 __builtin_neon_vrnd32zq_f32,
915 __builtin_neon_vrnd32zq_f64,
916 __builtin_neon_vrnd64x_f32,
917 __builtin_neon_vrnd64x_f64,
918 __builtin_neon_vrnd64xq_f32,
919 __builtin_neon_vrnd64xq_f64,
920 __builtin_neon_vrnd64z_f32,
921 __builtin_neon_vrnd64z_f64,
922 __builtin_neon_vrnd64zq_f32,
923 __builtin_neon_vrnd64zq_f64,
924 __builtin_neon_vrnd_f16,
925 __builtin_neon_vrnd_v,
926 __builtin_neon_vrnda_f16,
927 __builtin_neon_vrnda_v,
928 __builtin_neon_vrndaq_f16,
929 __builtin_neon_vrndaq_v,
930 __builtin_neon_vrndi_f16,
931 __builtin_neon_vrndi_v,
932 __builtin_neon_vrndiq_f16,
933 __builtin_neon_vrndiq_v,
934 __builtin_neon_vrndm_f16,
935 __builtin_neon_vrndm_v,
936 __builtin_neon_vrndmq_f16,
937 __builtin_neon_vrndmq_v,
938 __builtin_neon_vrndn_f16,
939 __builtin_neon_vrndn_v,
940 __builtin_neon_vrndnq_f16,
941 __builtin_neon_vrndnq_v,
942 __builtin_neon_vrndns_f32,
943 __builtin_neon_vrndp_f16,
944 __builtin_neon_vrndp_v,
945 __builtin_neon_vrndpq_f16,
946 __builtin_neon_vrndpq_v,
947 __builtin_neon_vrndq_f16,
948 __builtin_neon_vrndq_v,
949 __builtin_neon_vrndx_f16,
950 __builtin_neon_vrndx_v,
951 __builtin_neon_vrndxq_f16,
952 __builtin_neon_vrndxq_v,
953 __builtin_neon_vrshl_v,
954 __builtin_neon_vrshld_s64,
955 __builtin_neon_vrshld_u64,
956 __builtin_neon_vrshlq_v,
957 __builtin_neon_vrshr_n_v,
958 __builtin_neon_vrshrd_n_s64,
959 __builtin_neon_vrshrd_n_u64,
960 __builtin_neon_vrshrn_n_v,
961 __builtin_neon_vrshrq_n_v,
962 __builtin_neon_vrsqrte_f16,
963 __builtin_neon_vrsqrte_v,
964 __builtin_neon_vrsqrted_f64,
965 __builtin_neon_vrsqrteq_f16,
966 __builtin_neon_vrsqrteq_v,
967 __builtin_neon_vrsqrtes_f32,
968 __builtin_neon_vrsqrts_f16,
969 __builtin_neon_vrsqrts_v,
970 __builtin_neon_vrsqrtsd_f64,
971 __builtin_neon_vrsqrtsq_f16,
972 __builtin_neon_vrsqrtsq_v,
973 __builtin_neon_vrsqrtss_f32,
974 __builtin_neon_vrsra_n_v,
975 __builtin_neon_vrsrad_n_s64,
976 __builtin_neon_vrsrad_n_u64,
977 __builtin_neon_vrsraq_n_v,
978 __builtin_neon_vrsubhn_v,
979 __builtin_neon_vscale_f16,
980 __builtin_neon_vscale_f32,
981 __builtin_neon_vscaleq_f16,
982 __builtin_neon_vscaleq_f32,
983 __builtin_neon_vscaleq_f64,
984 __builtin_neon_vset_lane_bf16,
985 __builtin_neon_vset_lane_f32,
986 __builtin_neon_vset_lane_f64,
987 __builtin_neon_vset_lane_i16,
988 __builtin_neon_vset_lane_i32,
989 __builtin_neon_vset_lane_i64,
990 __builtin_neon_vset_lane_i8,
991 __builtin_neon_vset_lane_mf8,
992 __builtin_neon_vsetq_lane_bf16,
993 __builtin_neon_vsetq_lane_f32,
994 __builtin_neon_vsetq_lane_f64,
995 __builtin_neon_vsetq_lane_i16,
996 __builtin_neon_vsetq_lane_i32,
997 __builtin_neon_vsetq_lane_i64,
998 __builtin_neon_vsetq_lane_i8,
999 __builtin_neon_vsetq_lane_mf8,
1000 __builtin_neon_vsha1cq_u32,
1001 __builtin_neon_vsha1h_u32,
1002 __builtin_neon_vsha1mq_u32,
1003 __builtin_neon_vsha1pq_u32,
1004 __builtin_neon_vsha1su0q_u32,
1005 __builtin_neon_vsha1su1q_u32,
1006 __builtin_neon_vsha256h2q_u32,
1007 __builtin_neon_vsha256hq_u32,
1008 __builtin_neon_vsha256su0q_u32,
1009 __builtin_neon_vsha256su1q_u32,
1010 __builtin_neon_vsha512h2q_u64,
1011 __builtin_neon_vsha512hq_u64,
1012 __builtin_neon_vsha512su0q_u64,
1013 __builtin_neon_vsha512su1q_u64,
1014 __builtin_neon_vshl_n_v,
1015 __builtin_neon_vshl_v,
1016 __builtin_neon_vshld_n_s64,
1017 __builtin_neon_vshld_n_u64,
1018 __builtin_neon_vshld_s64,
1019 __builtin_neon_vshld_u64,
1020 __builtin_neon_vshll_n_v,
1021 __builtin_neon_vshlq_n_v,
1022 __builtin_neon_vshlq_v,
1023 __builtin_neon_vshr_n_v,
1024 __builtin_neon_vshrd_n_s64,
1025 __builtin_neon_vshrd_n_u64,
1026 __builtin_neon_vshrn_n_v,
1027 __builtin_neon_vshrq_n_v,
1028 __builtin_neon_vsli_n_v,
1029 __builtin_neon_vslid_n_s64,
1030 __builtin_neon_vslid_n_u64,
1031 __builtin_neon_vsliq_n_v,
1032 __builtin_neon_vsm3partw1q_u32,
1033 __builtin_neon_vsm3partw2q_u32,
1034 __builtin_neon_vsm3ss1q_u32,
1035 __builtin_neon_vsm3tt1aq_u32,
1036 __builtin_neon_vsm3tt1bq_u32,
1037 __builtin_neon_vsm3tt2aq_u32,
1038 __builtin_neon_vsm3tt2bq_u32,
1039 __builtin_neon_vsm4ekeyq_u32,
1040 __builtin_neon_vsm4eq_u32,
1041 __builtin_neon_vsqadd_v,
1042 __builtin_neon_vsqaddb_u8,
1043 __builtin_neon_vsqaddd_u64,
1044 __builtin_neon_vsqaddh_u16,
1045 __builtin_neon_vsqaddq_v,
1046 __builtin_neon_vsqadds_u32,
1047 __builtin_neon_vsqrt_f16,
1048 __builtin_neon_vsqrt_v,
1049 __builtin_neon_vsqrtq_f16,
1050 __builtin_neon_vsqrtq_v,
1051 __builtin_neon_vsra_n_v,
1052 __builtin_neon_vsrad_n_s64,
1053 __builtin_neon_vsrad_n_u64,
1054 __builtin_neon_vsraq_n_v,
1055 __builtin_neon_vsri_n_v,
1056 __builtin_neon_vsrid_n_s64,
1057 __builtin_neon_vsrid_n_u64,
1058 __builtin_neon_vsriq_n_v,
1059 __builtin_neon_vst1_bf16,
1060 __builtin_neon_vst1_bf16_x2,
1061 __builtin_neon_vst1_bf16_x3,
1062 __builtin_neon_vst1_bf16_x4,
1063 __builtin_neon_vst1_lane_bf16,
1064 __builtin_neon_vst1_lane_v,
1065 __builtin_neon_vst1_v,
1066 __builtin_neon_vst1_x2_v,
1067 __builtin_neon_vst1_x3_v,
1068 __builtin_neon_vst1_x4_v,
1069 __builtin_neon_vst1q_bf16,
1070 __builtin_neon_vst1q_bf16_x2,
1071 __builtin_neon_vst1q_bf16_x3,
1072 __builtin_neon_vst1q_bf16_x4,
1073 __builtin_neon_vst1q_lane_bf16,
1074 __builtin_neon_vst1q_lane_v,
1075 __builtin_neon_vst1q_v,
1076 __builtin_neon_vst1q_x2_v,
1077 __builtin_neon_vst1q_x3_v,
1078 __builtin_neon_vst1q_x4_v,
1079 __builtin_neon_vst2_bf16,
1080 __builtin_neon_vst2_lane_bf16,
1081 __builtin_neon_vst2_lane_v,
1082 __builtin_neon_vst2_v,
1083 __builtin_neon_vst2q_bf16,
1084 __builtin_neon_vst2q_lane_bf16,
1085 __builtin_neon_vst2q_lane_v,
1086 __builtin_neon_vst2q_v,
1087 __builtin_neon_vst3_bf16,
1088 __builtin_neon_vst3_lane_bf16,
1089 __builtin_neon_vst3_lane_v,
1090 __builtin_neon_vst3_v,
1091 __builtin_neon_vst3q_bf16,
1092 __builtin_neon_vst3q_lane_bf16,
1093 __builtin_neon_vst3q_lane_v,
1094 __builtin_neon_vst3q_v,
1095 __builtin_neon_vst4_bf16,
1096 __builtin_neon_vst4_lane_bf16,
1097 __builtin_neon_vst4_lane_v,
1098 __builtin_neon_vst4_v,
1099 __builtin_neon_vst4q_bf16,
1100 __builtin_neon_vst4q_lane_bf16,
1101 __builtin_neon_vst4q_lane_v,
1102 __builtin_neon_vst4q_v,
1103 __builtin_neon_vstl1_lane_f64,
1104 __builtin_neon_vstl1_lane_p64,
1105 __builtin_neon_vstl1_lane_s64,
1106 __builtin_neon_vstl1_lane_u64,
1107 __builtin_neon_vstl1q_lane_f64,
1108 __builtin_neon_vstl1q_lane_p64,
1109 __builtin_neon_vstl1q_lane_s64,
1110 __builtin_neon_vstl1q_lane_u64,
1111 __builtin_neon_vstrq_p128,
1112 __builtin_neon_vsubd_s64,
1113 __builtin_neon_vsubd_u64,
1114 __builtin_neon_vsubhn_v,
1115 __builtin_neon_vtbl1_v,
1116 __builtin_neon_vtbl2_v,
1117 __builtin_neon_vtbl3_v,
1118 __builtin_neon_vtbl4_v,
1119 __builtin_neon_vtbx1_v,
1120 __builtin_neon_vtbx2_v,
1121 __builtin_neon_vtbx3_v,
1122 __builtin_neon_vtbx4_v,
1123 __builtin_neon_vtrn_v,
1124 __builtin_neon_vtrnq_v,
1125 __builtin_neon_vtst_v,
1126 __builtin_neon_vtstd_s64,
1127 __builtin_neon_vtstd_u64,
1128 __builtin_neon_vtstq_v,
1129 __builtin_neon_vuqadd_v,
1130 __builtin_neon_vuqaddb_s8,
1131 __builtin_neon_vuqaddd_s64,
1132 __builtin_neon_vuqaddh_s16,
1133 __builtin_neon_vuqaddq_v,
1134 __builtin_neon_vuqadds_s32,
1135 __builtin_neon_vusdot_s32,
1136 __builtin_neon_vusdotq_s32,
1137 __builtin_neon_vusmmlaq_s32,
1138 __builtin_neon_vuzp_v,
1139 __builtin_neon_vuzpq_v,
1140 __builtin_neon_vxarq_u64,
1141 __builtin_neon_vzip_v,
1142 __builtin_neon_vzipq_v,
1143};
1144
1145pub fn fromName(name: []const u8) ?Properties {
1146 const data_index = tagFromName(name) orelse return null;
1147 return data[@intFromEnum(data_index)];
1148}
1149
1150pub fn tagFromName(name: []const u8) ?Tag {
1151 const unique_index = uniqueIndex(name) orelse return null;
1152 return @enumFromInt(unique_index - 1);
1153}
1154
1155pub fn fromTag(tag: Tag) Properties {
1156 return data[@intFromEnum(tag)];
1157}
1158
1159pub fn nameFromTagIntoBuf(tag: Tag, name_buf: []u8) []u8 {
1160 std.debug.assert(name_buf.len >= longest_name);
1161 const unique_index = @intFromEnum(tag) + 1;
1162 return nameFromUniqueIndex(unique_index, name_buf);
1163}
1164
1165pub fn nameFromTag(tag: Tag) NameBuf {
1166 var name_buf: NameBuf = undefined;
1167 const unique_index = @intFromEnum(tag) + 1;
1168 const name = nameFromUniqueIndex(unique_index, &name_buf.buf);
1169 name_buf.len = @intCast(name.len);
1170 return name_buf;
1171}
1172
1173pub const NameBuf = struct {
1174 buf: [longest_name]u8 = undefined,
1175 len: std.math.IntFittingRange(0, longest_name),
1176
1177 pub fn span(self: *const NameBuf) []const u8 {
1178 return self.buf[0..self.len];
1179 }
1180};
1181
1182pub fn exists(name: []const u8) bool {
1183 if (name.len < shortest_name or name.len > longest_name) return false;
1184
1185 var index: u16 = 0;
1186 for (name) |c| {
1187 index = findInList(dafsa[index].child_index, c) orelse return false;
1188 }
1189 return dafsa[index].end_of_word;
1190}
1191
1192pub const shortest_name = 21;
1193pub const longest_name = 42;
1194
1195/// Search siblings of `first_child_index` for the `char`
1196/// If found, returns the index of the node within the `dafsa` array.
1197/// Otherwise, returns `null`.
1198pub fn findInList(first_child_index: u16, char: u8) ?u16 {
1199 @setEvalBranchQuota(2264);
1200 var index = first_child_index;
1201 while (true) {
1202 if (dafsa[index].char == char) return index;
1203 if (dafsa[index].end_of_list) return null;
1204 index += 1;
1205 }
1206 unreachable;
1207}
1208
1209/// Returns a unique (minimal perfect hash) index (starting at 1) for the `name`,
1210/// or null if the name was not found.
1211pub fn uniqueIndex(name: []const u8) ?u16 {
1212 if (name.len < shortest_name or name.len > longest_name) return null;
1213
1214 var index: u16 = 0;
1215 var node_index: u16 = 0;
1216
1217 for (name) |c| {
1218 const child_index = findInList(dafsa[node_index].child_index, c) orelse return null;
1219 var sibling_index = dafsa[node_index].child_index;
1220 while (true) {
1221 const sibling_c = dafsa[sibling_index].char;
1222 std.debug.assert(sibling_c != 0);
1223 if (sibling_c < c) {
1224 index += dafsa[sibling_index].number;
1225 }
1226 if (dafsa[sibling_index].end_of_list) break;
1227 sibling_index += 1;
1228 }
1229 node_index = child_index;
1230 if (dafsa[node_index].end_of_word) index += 1;
1231 }
1232
1233 if (!dafsa[node_index].end_of_word) return null;
1234
1235 return index;
1236}
1237
1238/// Returns a slice of `buf` with the name associated with the given `index`.
1239/// This function should only be called with an `index` that
1240/// is already known to exist within the `dafsa`, e.g. an index
1241/// returned from `uniqueIndex`.
1242pub fn nameFromUniqueIndex(index: u16, buf: []u8) []u8 {
1243 std.debug.assert(index >= 1 and index <= data.len);
1244
1245 var node_index: u16 = 0;
1246 var count: u16 = index;
1247 var w = std.Io.Writer.fixed(buf);
1248
1249 while (true) {
1250 var sibling_index = dafsa[node_index].child_index;
1251 while (true) {
1252 if (dafsa[sibling_index].number > 0 and dafsa[sibling_index].number < count) {
1253 count -= dafsa[sibling_index].number;
1254 } else {
1255 w.writeByte(dafsa[sibling_index].char) catch unreachable;
1256 node_index = sibling_index;
1257 if (dafsa[node_index].end_of_word) {
1258 count -= 1;
1259 }
1260 break;
1261 }
1262
1263 if (dafsa[sibling_index].end_of_list) break;
1264 sibling_index += 1;
1265 }
1266 if (count == 0) break;
1267 }
1268
1269 return w.buffered();
1270}
1271
1272const Node = packed struct {
1273 char: u8,
1274 /// Nodes are numbered with "an integer which gives the number of words that
1275 /// would be accepted by the automaton starting from that state." This numbering
1276 /// allows calculating "a one-to-one correspondence between the integers 1 to L
1277 /// (L is the number of words accepted by the automaton) and the words themselves."
1278 ///
1279 /// Essentially, this allows us to have a minimal perfect hashing scheme such that
1280 /// it's possible to store & lookup the properties of each builtin using a separate array.
1281 number: std.math.IntFittingRange(0, data.len),
1282 /// If true, this node is the end of a valid builtin.
1283 /// Note: This does not necessarily mean that this node does not have child nodes.
1284 end_of_word: bool,
1285 /// If true, this node is the end of a sibling list.
1286 /// If false, then (index + 1) will contain the next sibling.
1287 end_of_list: bool,
1288 /// Index of the first child of this node.
1289 child_index: u16,
1290};
1291
1292const dafsa = [_]Node{
1293 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
1294 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 2 },
1295 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 3 },
1296 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 4 },
1297 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 5 },
1298 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 6 },
1299 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 7 },
1300 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 8 },
1301 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 9 },
1302 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 10 },
1303 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 11 },
1304 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 12 },
1305 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 13 },
1306 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 14 },
1307 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 15 },
1308 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1132, .child_index = 16 },
1309 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 19 },
1310 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 20 },
1311 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1123, .child_index = 21 },
1312 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 40 },
1313 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 41 },
1314 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 60, .child_index = 42 },
1315 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 46 },
1316 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 282, .child_index = 49 },
1317 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 34, .child_index = 56 },
1318 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 58 },
1319 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 60 },
1320 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 61 },
1321 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 62 },
1322 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 123, .child_index = 64 },
1323 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 99, .child_index = 66 },
1324 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 72 },
1325 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 73 },
1326 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 162, .child_index = 75 },
1327 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 91, .child_index = 82 },
1328 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 136, .child_index = 88 },
1329 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 97 },
1330 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 100 },
1331 .{ .char = 'x', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 103 },
1332 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 104 },
1333 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 105 },
1334 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 106 },
1335 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 107 },
1336 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 35, .child_index = 109 },
1337 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 110 },
1338 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 111 },
1339 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 113 },
1340 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 114 },
1341 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 116 },
1342 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 34, .child_index = 117 },
1343 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 120 },
1344 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 121 },
1345 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 123 },
1346 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 127 },
1347 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 128 },
1348 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 166, .child_index = 129 },
1349 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 130 },
1350 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 131 },
1351 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 132 },
1352 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 128 },
1353 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 133 },
1354 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 135 },
1355 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 136 },
1356 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 137 },
1357 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 69, .child_index = 138 },
1358 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 54, .child_index = 144 },
1359 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 145 },
1360 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 146 },
1361 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 147 },
1362 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 148 },
1363 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 149 },
1364 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 150 },
1365 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 151 },
1366 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 152 },
1367 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 153 },
1368 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 155 },
1369 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 157 },
1370 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 158 },
1371 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 159 },
1372 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 41, .child_index = 160 },
1373 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 47, .child_index = 162 },
1374 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 164 },
1375 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 165 },
1376 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 167 },
1377 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 168 },
1378 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 169 },
1379 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 45, .child_index = 170 },
1380 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 26, .child_index = 171 },
1381 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 175 },
1382 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 135 },
1383 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 176 },
1384 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 179 },
1385 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 180 },
1386 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 182 },
1387 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 184 },
1388 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 53, .child_index = 186 },
1389 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 192 },
1390 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 193 },
1391 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 195 },
1392 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 196 },
1393 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 197 },
1394 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 198 },
1395 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 200 },
1396 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 201 },
1397 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 200 },
1398 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 202 },
1399 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 203 },
1400 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 204 },
1401 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 208 },
1402 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 211 },
1403 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 217 },
1404 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 221 },
1405 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 222 },
1406 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 223 },
1407 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 224 },
1408 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 225 },
1409 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 227 },
1410 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 229 },
1411 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 230 },
1412 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 230 },
1413 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 232 },
1414 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 235 },
1415 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 235 },
1416 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 235 },
1417 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 227 },
1418 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 235 },
1419 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 227 },
1420 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 238 },
1421 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 227 },
1422 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 166, .child_index = 239 },
1423 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 251 },
1424 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 253 },
1425 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 257 },
1426 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 258 },
1427 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 263 },
1428 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 265 },
1429 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 267 },
1430 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 268 },
1431 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 269 },
1432 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 271 },
1433 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 271 },
1434 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 271 },
1435 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 273 },
1436 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 274 },
1437 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 54, .child_index = 275 },
1438 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 276 },
1439 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 276 },
1440 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 280 },
1441 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 281 },
1442 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 282 },
1443 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 284 },
1444 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 288 },
1445 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 289 },
1446 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 291 },
1447 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 292 },
1448 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 293 },
1449 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 294 },
1450 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 295 },
1451 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 297 },
1452 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 298 },
1453 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 299 },
1454 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 300 },
1455 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 37, .child_index = 301 },
1456 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 303 },
1457 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 304 },
1458 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 306 },
1459 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 307 },
1460 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 128 },
1461 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 308 },
1462 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 136 },
1463 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 45, .child_index = 309 },
1464 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 319 },
1465 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 321 },
1466 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 322 },
1467 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 323 },
1468 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 324 },
1469 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 325 },
1470 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 328 },
1471 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 332 },
1472 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 336 },
1473 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 339 },
1474 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 342 },
1475 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 343 },
1476 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 344 },
1477 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 336 },
1478 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 336 },
1479 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 345 },
1480 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 347 },
1481 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 347 },
1482 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 347 },
1483 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 349 },
1484 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 274 },
1485 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 350 },
1486 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 352 },
1487 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 352 },
1488 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 227 },
1489 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 356 },
1490 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 359 },
1491 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 360 },
1492 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 361 },
1493 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 227 },
1494 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 362 },
1495 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 363 },
1496 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 364 },
1497 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1498 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 368 },
1499 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 369 },
1500 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1501 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1502 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 371 },
1503 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 369 },
1504 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
1505 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 373 },
1506 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 374 },
1507 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 375 },
1508 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 376 },
1509 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 377 },
1510 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 379 },
1511 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 379 },
1512 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 380 },
1513 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 381 },
1514 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 382 },
1515 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 382 },
1516 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 384 },
1517 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 385 },
1518 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 386 },
1519 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1520 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
1521 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 388 },
1522 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 389 },
1523 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 204 },
1524 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 204 },
1525 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 391 },
1526 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 370 },
1527 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 392 },
1528 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 391 },
1529 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 370 },
1530 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 396 },
1531 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 400 },
1532 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 402 },
1533 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 402 },
1534 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 403 },
1535 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 410 },
1536 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 414 },
1537 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 415 },
1538 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 410 },
1539 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 410 },
1540 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 410 },
1541 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 23, .child_index = 416 },
1542 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 417 },
1543 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 418 },
1544 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 420 },
1545 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 424 },
1546 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 425 },
1547 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 426 },
1548 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 427 },
1549 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 428 },
1550 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 384 },
1551 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 429 },
1552 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 432 },
1553 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 433 },
1554 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 434 },
1555 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 435 },
1556 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 436 },
1557 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 436 },
1558 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 437 },
1559 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 438 },
1560 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 227 },
1561 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 227 },
1562 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 439 },
1563 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 444 },
1564 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 445 },
1565 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 449 },
1566 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 349 },
1567 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 450 },
1568 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 54, .child_index = 451 },
1569 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1570 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 453 },
1571 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 369 },
1572 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 454 },
1573 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 456 },
1574 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 459 },
1575 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1576 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 388 },
1577 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 460 },
1578 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 463 },
1579 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1580 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 464 },
1581 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 371 },
1582 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 116 },
1583 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 469 },
1584 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 474 },
1585 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 474 },
1586 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 478 },
1587 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 484 },
1588 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 490 },
1589 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 492 },
1590 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 493 },
1591 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 478 },
1592 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 495 },
1593 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 497 },
1594 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 499 },
1595 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 506 },
1596 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 484 },
1597 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 508 },
1598 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 508 },
1599 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1600 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 362 },
1601 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 513 },
1602 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 516 },
1603 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 517 },
1604 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1605 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 518 },
1606 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 518 },
1607 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 518 },
1608 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 520 },
1609 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 518 },
1610 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 369 },
1611 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 518 },
1612 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 356 },
1613 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 332 },
1614 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 523 },
1615 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 336 },
1616 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1617 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 524 },
1618 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 525 },
1619 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 530 },
1620 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 531 },
1621 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 532 },
1622 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 534 },
1623 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 535 },
1624 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 536 },
1625 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 374 },
1626 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 537 },
1627 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 535 },
1628 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 535 },
1629 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 374 },
1630 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 537 },
1631 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 535 },
1632 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 538 },
1633 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 539 },
1634 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 540 },
1635 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 541 },
1636 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 543 },
1637 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 518 },
1638 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 544 },
1639 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 548 },
1640 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 549 },
1641 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 552 },
1642 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 553 },
1643 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 373 },
1644 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 374 },
1645 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1646 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1647 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1648 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 388 },
1649 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
1650 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 373 },
1651 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 388 },
1652 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 555 },
1653 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 556 },
1654 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 557 },
1655 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 558 },
1656 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
1657 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 560 },
1658 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 561 },
1659 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 562 },
1660 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1661 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 563 },
1662 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 366 },
1663 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 564 },
1664 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 565 },
1665 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1666 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 566 },
1667 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 388 },
1668 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 568 },
1669 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 570 },
1670 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 572 },
1671 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 575 },
1672 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 576 },
1673 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 381 },
1674 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 379 },
1675 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 577 },
1676 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 578 },
1677 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 579 },
1678 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 580 },
1679 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 582 },
1680 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 583 },
1681 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 372 },
1682 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 584 },
1683 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 585 },
1684 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 586 },
1685 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1686 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 391 },
1687 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 369 },
1688 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1689 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1690 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 589 },
1691 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 369 },
1692 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1693 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 590 },
1694 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 592 },
1695 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 593 },
1696 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 597 },
1697 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 598 },
1698 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 601 },
1699 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 602 },
1700 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 603 },
1701 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 604 },
1702 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 604 },
1703 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 607 },
1704 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 609 },
1705 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 610 },
1706 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 611 },
1707 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 612 },
1708 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
1709 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 23, .child_index = 617 },
1710 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 624 },
1711 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 628 },
1712 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
1713 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 630 },
1714 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 632 },
1715 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
1716 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
1717 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 420 },
1718 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 634 },
1719 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 635 },
1720 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 636 },
1721 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 637 },
1722 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 562 },
1723 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 638 },
1724 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1725 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 639 },
1726 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 640 },
1727 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 429 },
1728 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 641 },
1729 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 642 },
1730 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 644 },
1731 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 437 },
1732 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 645 },
1733 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 646 },
1734 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 647 },
1735 .{ .char = 'v', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1736 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 648 },
1737 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 439 },
1738 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 651 },
1739 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 646 },
1740 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 647 },
1741 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1742 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 445 },
1743 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 652 },
1744 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 653 },
1745 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 655 },
1746 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 656 },
1747 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 659 },
1748 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 662 },
1749 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 663 },
1750 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 664 },
1751 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 663 },
1752 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 666 },
1753 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 667 },
1754 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 368 },
1755 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1756 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 668 },
1757 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1758 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 368 },
1759 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 433 },
1760 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 369 },
1761 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1762 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1763 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 391 },
1764 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 227 },
1765 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 369 },
1766 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1767 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1768 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 670 },
1769 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 671 },
1770 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1771 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
1772 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 673 },
1773 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 371 },
1774 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 674 },
1775 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1776 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
1777 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
1778 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 676 },
1779 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 373 },
1780 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 677 },
1781 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1782 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 678 },
1783 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 679 },
1784 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 679 },
1785 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 680 },
1786 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 682 },
1787 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 686 },
1788 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 687 },
1789 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 689 },
1790 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 484 },
1791 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 506 },
1792 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 532 },
1793 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 690 },
1794 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 534 },
1795 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 691 },
1796 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 536 },
1797 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 692 },
1798 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 693 },
1799 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 699 },
1800 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 703 },
1801 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 227 },
1802 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 227 },
1803 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 227 },
1804 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 227 },
1805 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 374 },
1806 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 204 },
1807 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 204 },
1808 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 704 },
1809 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 706 },
1810 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 706 },
1811 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1812 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 369 },
1813 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1814 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 369 },
1815 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1816 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 708 },
1817 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 382 },
1818 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 710 },
1819 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 711 },
1820 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 710 },
1821 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 710 },
1822 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 712 },
1823 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 713 },
1824 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 714 },
1825 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1826 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1827 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 715 },
1828 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 374 },
1829 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 532 },
1830 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 718 },
1831 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 719 },
1832 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 720 },
1833 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 721 },
1834 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 723 },
1835 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 711 },
1836 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 724 },
1837 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 645 },
1838 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 647 },
1839 .{ .char = 'v', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1840 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 648 },
1841 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 544 },
1842 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 651 },
1843 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 647 },
1844 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1845 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 549 },
1846 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 730 },
1847 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 731 },
1848 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 478 },
1849 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 732 },
1850 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 734 },
1851 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 735 },
1852 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 736 },
1853 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 737 },
1854 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 560 },
1855 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 738 },
1856 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
1857 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
1858 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
1859 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
1860 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
1861 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 740 },
1862 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 742 },
1863 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 743 },
1864 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1865 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
1866 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 744 },
1867 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 744 },
1868 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 747 },
1869 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 750 },
1870 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 751 },
1871 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 753 },
1872 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 754 },
1873 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 564 },
1874 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1875 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 756 },
1876 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 758 },
1877 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 759 },
1878 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 760 },
1879 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
1880 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
1881 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
1882 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 761 },
1883 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 751 },
1884 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 763 },
1885 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 764 },
1886 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 766 },
1887 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 767 },
1888 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 768 },
1889 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 769 },
1890 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 770 },
1891 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 771 },
1892 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 772 },
1893 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 773 },
1894 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 774 },
1895 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 775 },
1896 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 776 },
1897 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 779 },
1898 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 780 },
1899 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 781 },
1900 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 604 },
1901 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 604 },
1902 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 782 },
1903 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 607 },
1904 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 784 },
1905 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 786 },
1906 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 787 },
1907 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 788 },
1908 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 788 },
1909 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 597 },
1910 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 790 },
1911 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 793 },
1912 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 794 },
1913 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 795 },
1914 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 603 },
1915 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 604 },
1916 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 604 },
1917 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 796 },
1918 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 797 },
1919 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 798 },
1920 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 798 },
1921 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 800 },
1922 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 801 },
1923 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 802 },
1924 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 803 },
1925 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 804 },
1926 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
1927 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 806 },
1928 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 807 },
1929 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 808 },
1930 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 809 },
1931 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 810 },
1932 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 811 },
1933 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 812 },
1934 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 813 },
1935 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 814 },
1936 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 816 },
1937 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 817 },
1938 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 818 },
1939 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 819 },
1940 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 820 },
1941 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1942 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
1943 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 388 },
1944 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
1945 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 743 },
1946 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 821 },
1947 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 822 },
1948 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 823 },
1949 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1950 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 369 },
1951 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 382 },
1952 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 751 },
1953 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 744 },
1954 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 744 },
1955 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 824 },
1956 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 827 },
1957 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 828 },
1958 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 828 },
1959 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 830 },
1960 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 833 },
1961 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
1962 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1963 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 834 },
1964 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
1965 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 368 },
1966 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 837 },
1967 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 838 },
1968 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 839 },
1969 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 840 },
1970 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 842 },
1971 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 844 },
1972 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 846 },
1973 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 849 },
1974 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 853 },
1975 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
1976 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 373 },
1977 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 677 },
1978 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 678 },
1979 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 856 },
1980 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 860 },
1981 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 860 },
1982 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 861 },
1983 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 862 },
1984 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 865 },
1985 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 868 },
1986 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 374 },
1987 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 871 },
1988 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 872 },
1989 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 873 },
1990 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 535 },
1991 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 874 },
1992 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 374 },
1993 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 537 },
1994 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 875 },
1995 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 876 },
1996 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 877 },
1997 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 368 },
1998 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1999 .{ .char = 'x', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 881 },
2000 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 881 },
2001 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 204 },
2002 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 204 },
2003 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 711 },
2004 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 883 },
2005 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 884 },
2006 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 886 },
2007 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 888 },
2008 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 373 },
2009 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
2010 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
2011 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 373 },
2012 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 890 },
2013 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
2014 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 891 },
2015 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 891 },
2016 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 893 },
2017 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
2018 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 576 },
2019 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 558 },
2020 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 894 },
2021 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 388 },
2022 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 711 },
2023 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 895 },
2024 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 730 },
2025 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 839 },
2026 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
2027 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 896 },
2028 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
2029 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 897 },
2030 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 898 },
2031 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2032 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
2033 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 744 },
2034 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 744 },
2035 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 740 },
2036 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 900 },
2037 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 738 },
2038 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2039 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2040 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 901 },
2041 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 903 },
2042 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 903 },
2043 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
2044 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 738 },
2045 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
2046 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 908 },
2047 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 903 },
2048 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 903 },
2049 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 758 },
2050 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 758 },
2051 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
2052 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 911 },
2053 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 912 },
2054 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
2055 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
2056 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 913 },
2057 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 908 },
2058 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 914 },
2059 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 767 },
2060 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 802 },
2061 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 915 },
2062 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 916 },
2063 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 917 },
2064 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 918 },
2065 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 919 },
2066 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 920 },
2067 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 921 },
2068 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 922 },
2069 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 790 },
2070 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 604 },
2071 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 604 },
2072 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 923 },
2073 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 388 },
2074 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 388 },
2075 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 788 },
2076 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 788 },
2077 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 798 },
2078 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 798 },
2079 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 924 },
2080 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 925 },
2081 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 928 },
2082 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 929 },
2083 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 930 },
2084 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 780 },
2085 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 781 },
2086 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 931 },
2087 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 932 },
2088 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 933 },
2089 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 934 },
2090 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 935 },
2091 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 938 },
2092 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 939 },
2093 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 780 },
2094 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 940 },
2095 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 941 },
2096 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 941 },
2097 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 942 },
2098 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2099 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 943 },
2100 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 944 },
2101 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 945 },
2102 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 946 },
2103 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 947 },
2104 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 948 },
2105 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 949 },
2106 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 950 },
2107 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 951 },
2108 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 952 },
2109 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 814 },
2110 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 953 },
2111 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 954 },
2112 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 955 },
2113 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 956 },
2114 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 957 },
2115 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 821 },
2116 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 958 },
2117 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 908 },
2118 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 744 },
2119 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 744 },
2120 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 959 },
2121 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 961 },
2122 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 961 },
2123 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 630 },
2124 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
2125 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2126 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 962 },
2127 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 366 },
2128 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 671 },
2129 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
2130 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
2131 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
2132 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2133 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 907 },
2134 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
2135 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 562 },
2136 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
2137 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
2138 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2139 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
2140 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 963 },
2141 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 964 },
2142 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 965 },
2143 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 674 },
2144 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 967 },
2145 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
2146 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
2147 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 674 },
2148 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
2149 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
2150 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 371 },
2151 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 674 },
2152 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
2153 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 968 },
2154 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 849 },
2155 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 676 },
2156 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 907 },
2157 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
2158 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 677 },
2159 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 562 },
2160 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
2161 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 678 },
2162 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
2163 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2164 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 972 },
2165 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 973 },
2166 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
2167 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 975 },
2168 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 976 },
2169 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 977 },
2170 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 374 },
2171 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 872 },
2172 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 873 },
2173 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 874 },
2174 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 978 },
2175 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 979 },
2176 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2177 .{ .char = '0', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 710 },
2178 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
2179 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 980 },
2180 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 712 },
2181 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 982 },
2182 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 984 },
2183 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 985 },
2184 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 710 },
2185 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
2186 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
2187 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 986 },
2188 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 987 },
2189 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
2190 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 988 },
2191 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 989 },
2192 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2193 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
2194 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2195 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
2196 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 738 },
2197 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2198 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 899 },
2199 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2200 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2201 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 738 },
2202 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2203 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
2204 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 990 },
2205 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 992 },
2206 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 993 },
2207 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 996 },
2208 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 997 },
2209 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 998 },
2210 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
2211 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 999 },
2212 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1002 },
2213 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1004 },
2214 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1006 },
2215 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1007 },
2216 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 651 },
2217 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 373 },
2218 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 786 },
2219 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1008 },
2220 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1008 },
2221 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 368 },
2222 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 368 },
2223 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 677 },
2224 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1009 },
2225 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 415 },
2226 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1010 },
2227 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 678 },
2228 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 796 },
2229 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1011 },
2230 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1011 },
2231 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
2232 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
2233 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 928 },
2234 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1012 },
2235 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1013 },
2236 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1015 },
2237 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1016 },
2238 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1017 },
2239 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1018 },
2240 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 518 },
2241 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1019 },
2242 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1020 },
2243 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1021 },
2244 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1022 },
2245 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1023 },
2246 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1024 },
2247 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1025 },
2248 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1026 },
2249 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 955 },
2250 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1028 },
2251 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1029 },
2252 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 767 },
2253 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1030 },
2254 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1031 },
2255 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 227 },
2256 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1032 },
2257 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1034 },
2258 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 667 },
2259 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2260 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 965 },
2261 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1036 },
2262 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 674 },
2263 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1037 },
2264 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
2265 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 673 },
2266 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 371 },
2267 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 674 },
2268 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
2269 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 677 },
2270 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 678 },
2271 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 901 },
2272 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 978 },
2273 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 710 },
2274 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 711 },
2275 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 362 },
2276 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 558 },
2277 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1038 },
2278 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1040 },
2279 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
2280 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1042 },
2281 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 415 },
2282 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1043 },
2283 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1045 },
2284 .{ .char = '9', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1046 },
2285 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1047 },
2286 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1049 },
2287 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1045 },
2288 .{ .char = '9', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1046 },
2289 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1050 },
2290 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 998 },
2291 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1053 },
2292 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
2293 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 562 },
2294 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
2295 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1055 },
2296 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2297 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
2298 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2299 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1057 },
2300 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1058 },
2301 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 929 },
2302 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 415 },
2303 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1060 },
2304 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 938 },
2305 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1061 },
2306 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1062 },
2307 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1063 },
2308 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1064 },
2309 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1066 },
2310 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1068 },
2311 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1070 },
2312 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1072 },
2313 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1074 },
2314 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 580 },
2315 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1076 },
2316 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 923 },
2317 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1077 },
2318 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1081 },
2319 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 651 },
2320 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2321 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1082 },
2322 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1083 },
2323 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1084 },
2324 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1085 },
2325 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1087 },
2326 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
2327 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1088 },
2328 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2329 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 751 },
2330 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1036 },
2331 .{ .char = '0', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 362 },
2332 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 362 },
2333 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 710 },
2334 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
2335 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1089 },
2336 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1026 },
2337 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 955 },
2338 .{ .char = '7', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1046 },
2339 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1090 },
2340 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1091 },
2341 .{ .char = '9', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1092 },
2342 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1046 },
2343 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
2344 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1091 },
2345 .{ .char = '9', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1092 },
2346 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 766 },
2347 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 767 },
2348 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 738 },
2349 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
2350 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1094 },
2351 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1095 },
2352 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1096 },
2353 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1097 },
2354 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1098 },
2355 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 630 },
2356 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1062 },
2357 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1099 },
2358 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1101 },
2359 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1102 },
2360 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1104 },
2361 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1105 },
2362 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1108 },
2363 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1109 },
2364 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1111 },
2365 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 563 },
2366 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 368 },
2367 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 651 },
2368 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 923 },
2369 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 923 },
2370 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 651 },
2371 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 901 },
2372 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 903 },
2373 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1112 },
2374 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1113 },
2375 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1116 },
2376 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1118 },
2377 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1119 },
2378 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1120 },
2379 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1121 },
2380 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1122 },
2381 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1123 },
2382 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1124 },
2383 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 577 },
2384 .{ .char = '7', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1092 },
2385 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 578 },
2386 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1092 },
2387 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1128 },
2388 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1129 },
2389 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1129 },
2390 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1095 },
2391 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1129 },
2392 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 907 },
2393 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1112 },
2394 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1099 },
2395 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
2396 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
2397 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1102 },
2398 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 651 },
2399 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 562 },
2400 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
2401 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1105 },
2402 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 633 },
2403 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 633 },
2404 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1109 },
2405 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
2406 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2407 .{ .char = '3', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2408 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2409 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1130 },
2410 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1136 },
2411 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1137 },
2412 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1139 },
2413 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 803 },
2414 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1141 },
2415 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1142 },
2416 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1143 },
2417 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
2418 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
2419 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 739 },
2420 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 739 },
2421 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1144 },
2422 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1145 },
2423 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 651 },
2424 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 562 },
2425 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1112 },
2426 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1146 },
2427 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1146 },
2428 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1146 },
2429 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1130 },
2430 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1148 },
2431 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1154 },
2432 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 766 },
2433 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1155 },
2434 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1156 },
2435 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1157 },
2436 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 732 },
2437 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1159 },
2438 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1160 },
2439 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 738 },
2440 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2441 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1161 },
2442 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1162 },
2443 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1112 },
2444 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1163 },
2445 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1163 },
2446 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1163 },
2447 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1148 },
2448 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 766 },
2449 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1165 },
2450 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 838 },
2451 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 674 },
2452 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1167 },
2453 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1168 },
2454 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1162 },
2455 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1169 },
2456 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1169 },
2457 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2458 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1170 },
2459 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1171 },
2460 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1096 },
2461 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2462 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1172 },
2463 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1120 },
2464 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1170 },
2465 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1173 },
2466 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
2467};
2468pub const data = blk: {
2469 @setEvalBranchQuota(10188);
2470 break :blk [_]Properties{
2471 .{ .param_str = "V8ScV16Sci", .features = "bf16,neon" },
2472 .{ .param_str = "V8ScV8ScIii", .features = "bf16,neon" },
2473 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
2474 .{ .param_str = "V8ScV16ScIii", .features = "bf16,neon" },
2475 .{ .param_str = "V8ScV16ScIii", .features = "neon" },
2476 .{ .param_str = "V16ScV8ScIii", .features = "bf16,neon" },
2477 .{ .param_str = "V16ScV8ScIii", .features = "neon" },
2478 .{ .param_str = "V16ScV16ScIii", .features = "bf16,neon" },
2479 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
2480 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
2481 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
2482 .{ .param_str = "ddd", .features = "neon" },
2483 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
2484 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
2485 .{ .param_str = "fff", .features = "neon" },
2486 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2487 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2488 .{ .param_str = "WiWi", .features = "neon" },
2489 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2490 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2491 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
2492 .{ .param_str = "WiWiWi", .features = "neon" },
2493 .{ .param_str = "UWiUWiUWi", .features = "neon" },
2494 .{ .param_str = "V8ScV16ScV16Sci", .features = "neon" },
2495 .{ .param_str = "iV4s", .features = "neon" },
2496 .{ .param_str = "WiV2i", .features = "neon" },
2497 .{ .param_str = "sV8Sc", .features = "neon" },
2498 .{ .param_str = "UiV4Us", .features = "neon" },
2499 .{ .param_str = "UWiV2Ui", .features = "neon" },
2500 .{ .param_str = "UsV8Uc", .features = "neon" },
2501 .{ .param_str = "iV8s", .features = "neon" },
2502 .{ .param_str = "WiV4i", .features = "neon" },
2503 .{ .param_str = "sV16Sc", .features = "neon" },
2504 .{ .param_str = "UiV8Us", .features = "neon" },
2505 .{ .param_str = "UWiV4Ui", .features = "neon" },
2506 .{ .param_str = "UsV16Uc", .features = "neon" },
2507 .{ .param_str = "ULLLiULLLiULLLi", .features = "neon" },
2508 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
2509 .{ .param_str = "fV2f", .features = "neon" },
2510 .{ .param_str = "sV4s", .features = "neon" },
2511 .{ .param_str = "iV2i", .features = "neon" },
2512 .{ .param_str = "ScV8Sc", .features = "neon" },
2513 .{ .param_str = "UsV4Us", .features = "neon" },
2514 .{ .param_str = "UiV2Ui", .features = "neon" },
2515 .{ .param_str = "UcV8Uc", .features = "neon" },
2516 .{ .param_str = "fV4f", .features = "neon" },
2517 .{ .param_str = "dV2d", .features = "neon" },
2518 .{ .param_str = "sV8s", .features = "neon" },
2519 .{ .param_str = "iV4i", .features = "neon" },
2520 .{ .param_str = "WiV2Wi", .features = "neon" },
2521 .{ .param_str = "ScV16Sc", .features = "neon" },
2522 .{ .param_str = "UsV8Us", .features = "neon" },
2523 .{ .param_str = "UiV4Ui", .features = "neon" },
2524 .{ .param_str = "UWiV2UWi", .features = "neon" },
2525 .{ .param_str = "UcV16Uc", .features = "neon" },
2526 .{ .param_str = "V16ScV16ScV16Sci", .features = "aes,neon" },
2527 .{ .param_str = "V16ScV16ScV16Sci", .features = "aes,neon" },
2528 .{ .param_str = "V16ScV16Sci", .features = "aes,neon" },
2529 .{ .param_str = "V16ScV16Sci", .features = "aes,neon" },
2530 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon,faminmax" },
2531 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon,faminmax" },
2532 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon,faminmax" },
2533 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon,faminmax" },
2534 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon,faminmax" },
2535 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon,faminmax" },
2536 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon,faminmax" },
2537 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon,faminmax" },
2538 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon,faminmax" },
2539 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon,faminmax" },
2540 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2541 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2542 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2543 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2544 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2545 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2546 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2547 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2548 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "bf16,neon" },
2549 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "bf16,neon" },
2550 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "bf16,neon" },
2551 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "bf16,neon" },
2552 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "bf16,neon" },
2553 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "neon" },
2554 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "neon" },
2555 .{ .param_str = "V8ScV8ScV8Sci", .features = "v8_3a,fullfp16,neon" },
2556 .{ .param_str = "V8ScV8ScV8Sci", .features = "v8_3a,neon" },
2557 .{ .param_str = "V8ScV8ScV8Sci", .features = "v8_3a,fullfp16,neon" },
2558 .{ .param_str = "V8ScV8ScV8Sci", .features = "v8_3a,neon" },
2559 .{ .param_str = "V16ScV16ScV16Sci", .features = "v8_3a,fullfp16,neon" },
2560 .{ .param_str = "V16ScV16ScV16Sci", .features = "v8_3a,neon" },
2561 .{ .param_str = "V16ScV16ScV16Sci", .features = "v8_3a,neon" },
2562 .{ .param_str = "V16ScV16ScV16Sci", .features = "v8_3a,fullfp16,neon" },
2563 .{ .param_str = "V16ScV16ScV16Sci", .features = "v8_3a,neon" },
2564 .{ .param_str = "V16ScV16ScV16Sci", .features = "v8_3a,neon" },
2565 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
2566 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
2567 .{ .param_str = "UWidd", .features = "neon" },
2568 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
2569 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
2570 .{ .param_str = "Uiff", .features = "neon" },
2571 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
2572 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
2573 .{ .param_str = "UWidd", .features = "neon" },
2574 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
2575 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
2576 .{ .param_str = "Uiff", .features = "neon" },
2577 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
2578 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
2579 .{ .param_str = "UWidd", .features = "neon" },
2580 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
2581 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
2582 .{ .param_str = "Uiff", .features = "neon" },
2583 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
2584 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
2585 .{ .param_str = "UWidd", .features = "neon" },
2586 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
2587 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
2588 .{ .param_str = "Uiff", .features = "neon" },
2589 .{ .param_str = "UWidd", .features = "neon" },
2590 .{ .param_str = "UWiWiWi", .features = "neon" },
2591 .{ .param_str = "UWiUWiUWi", .features = "neon" },
2592 .{ .param_str = "Uiff", .features = "neon" },
2593 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2594 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2595 .{ .param_str = "UWid", .features = "neon" },
2596 .{ .param_str = "UWiWi", .features = "neon" },
2597 .{ .param_str = "UWiUWi", .features = "neon" },
2598 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2599 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2600 .{ .param_str = "Uif", .features = "neon" },
2601 .{ .param_str = "UWidd", .features = "neon" },
2602 .{ .param_str = "UWiWiWi", .features = "neon" },
2603 .{ .param_str = "UWiUWiUWi", .features = "neon" },
2604 .{ .param_str = "Uiff", .features = "neon" },
2605 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2606 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2607 .{ .param_str = "UWid", .features = "neon" },
2608 .{ .param_str = "UWiWi", .features = "neon" },
2609 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2610 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2611 .{ .param_str = "Uif", .features = "neon" },
2612 .{ .param_str = "UWidd", .features = "neon" },
2613 .{ .param_str = "UWiWiWi", .features = "neon" },
2614 .{ .param_str = "UWiUWiUWi", .features = "neon" },
2615 .{ .param_str = "Uiff", .features = "neon" },
2616 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2617 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2618 .{ .param_str = "UWid", .features = "neon" },
2619 .{ .param_str = "UWiWi", .features = "neon" },
2620 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2621 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2622 .{ .param_str = "Uif", .features = "neon" },
2623 .{ .param_str = "UWidd", .features = "neon" },
2624 .{ .param_str = "UWiWiWi", .features = "neon" },
2625 .{ .param_str = "UWiUWiUWi", .features = "neon" },
2626 .{ .param_str = "Uiff", .features = "neon" },
2627 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2628 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2629 .{ .param_str = "UWid", .features = "neon" },
2630 .{ .param_str = "UWiWi", .features = "neon" },
2631 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2632 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2633 .{ .param_str = "Uif", .features = "neon" },
2634 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2635 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2636 .{ .param_str = "UWidd", .features = "neon" },
2637 .{ .param_str = "UWiWiWi", .features = "neon" },
2638 .{ .param_str = "UWiUWiUWi", .features = "neon" },
2639 .{ .param_str = "Uiff", .features = "neon" },
2640 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2641 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2642 .{ .param_str = "UWid", .features = "neon" },
2643 .{ .param_str = "UWiWi", .features = "neon" },
2644 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2645 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2646 .{ .param_str = "Uif", .features = "neon" },
2647 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2648 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2649 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_3a,fullfp16,neon" },
2650 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_3a,neon" },
2651 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_3a,fullfp16,neon" },
2652 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_3a,neon" },
2653 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_3a,fullfp16,neon" },
2654 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_3a,neon" },
2655 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_3a,fullfp16,neon" },
2656 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_3a,neon" },
2657 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,fullfp16,neon" },
2658 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,neon" },
2659 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,neon" },
2660 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,fullfp16,neon" },
2661 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,neon" },
2662 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,neon" },
2663 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,fullfp16,neon" },
2664 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,neon" },
2665 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,neon" },
2666 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,fullfp16,neon" },
2667 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,neon" },
2668 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_3a,neon" },
2669 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2670 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2671 .{ .param_str = "V8yV8mUWi", .features = "fp8,neon" },
2672 .{ .param_str = "V8hV8mUWi", .features = "fp8,neon" },
2673 .{ .param_str = "V8yV16mUWi", .features = "fp8,neon" },
2674 .{ .param_str = "V8hV16mUWi", .features = "fp8,neon" },
2675 .{ .param_str = "V8yV16mUWi", .features = "fp8,neon" },
2676 .{ .param_str = "V8hV16mUWi", .features = "fp8,neon" },
2677 .{ .param_str = "V8yV8mUWi", .features = "fp8,neon" },
2678 .{ .param_str = "V8hV8mUWi", .features = "fp8,neon" },
2679 .{ .param_str = "V8yV16mUWi", .features = "fp8,neon" },
2680 .{ .param_str = "V8hV16mUWi", .features = "fp8,neon" },
2681 .{ .param_str = "V8yV16mUWi", .features = "fp8,neon" },
2682 .{ .param_str = "V8hV16mUWi", .features = "fp8,neon" },
2683 .{ .param_str = "V8ScV16Sci", .features = "bf16,neon" },
2684 .{ .param_str = "V8ScV16Sci", .features = "neon" },
2685 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2686 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2687 .{ .param_str = "V16ScV8Sci", .features = "neon" },
2688 .{ .param_str = "V8ScV16Sci", .features = "neon" },
2689 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2690 .{ .param_str = "V16ScV8Sci", .features = "neon" },
2691 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2692 .{ .param_str = "V16mV8mV4fV4fUWi", .features = "fp8,neon" },
2693 .{ .param_str = "V8mV8ScV8ScUWi", .features = "fp8,neon" },
2694 .{ .param_str = "V8mV4fV4fUWi", .features = "fp8,neon" },
2695 .{ .param_str = "V8ScV8ScIii", .features = "fullfp16,neon" },
2696 .{ .param_str = "V8ScV8ScIii", .features = "fullfp16,neon" },
2697 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
2698 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
2699 .{ .param_str = "V8ScV8ScIii", .features = "fullfp16,neon" },
2700 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
2701 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
2702 .{ .param_str = "V8ScV8ScIii", .features = "fullfp16,neon" },
2703 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
2704 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
2705 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2706 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2707 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2708 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2709 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2710 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2711 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2712 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2713 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2714 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2715 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2716 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2717 .{ .param_str = "id", .features = "neon" },
2718 .{ .param_str = "Wid", .features = "neon" },
2719 .{ .param_str = "Uid", .features = "neon" },
2720 .{ .param_str = "UWid", .features = "neon" },
2721 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2722 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2723 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2724 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2725 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2726 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2727 .{ .param_str = "if", .features = "neon" },
2728 .{ .param_str = "Wif", .features = "neon" },
2729 .{ .param_str = "Uif", .features = "neon" },
2730 .{ .param_str = "UWif", .features = "neon" },
2731 .{ .param_str = "dWi", .features = "neon" },
2732 .{ .param_str = "dUWi", .features = "neon" },
2733 .{ .param_str = "dWiIi", .features = "neon" },
2734 .{ .param_str = "dUWiIi", .features = "neon" },
2735 .{ .param_str = "WidIi", .features = "neon" },
2736 .{ .param_str = "UWidIi", .features = "neon" },
2737 .{ .param_str = "id", .features = "neon" },
2738 .{ .param_str = "Wid", .features = "neon" },
2739 .{ .param_str = "Uid", .features = "neon" },
2740 .{ .param_str = "UWid", .features = "neon" },
2741 .{ .param_str = "yf", .features = "bf16,neon" },
2742 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2743 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2744 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2745 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2746 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2747 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2748 .{ .param_str = "id", .features = "neon" },
2749 .{ .param_str = "Wid", .features = "neon" },
2750 .{ .param_str = "Uid", .features = "neon" },
2751 .{ .param_str = "UWid", .features = "neon" },
2752 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2753 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2754 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2755 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2756 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2757 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2758 .{ .param_str = "if", .features = "neon" },
2759 .{ .param_str = "Wif", .features = "neon" },
2760 .{ .param_str = "Uif", .features = "neon" },
2761 .{ .param_str = "UWif", .features = "neon" },
2762 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2763 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2764 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2765 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2766 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2767 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2768 .{ .param_str = "id", .features = "neon" },
2769 .{ .param_str = "Wid", .features = "neon" },
2770 .{ .param_str = "Uid", .features = "neon" },
2771 .{ .param_str = "UWid", .features = "neon" },
2772 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2773 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2774 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2775 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2776 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2777 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2778 .{ .param_str = "if", .features = "neon" },
2779 .{ .param_str = "Wif", .features = "neon" },
2780 .{ .param_str = "Uif", .features = "neon" },
2781 .{ .param_str = "UWif", .features = "neon" },
2782 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2783 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2784 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2785 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
2786 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2787 .{ .param_str = "V8ScV8Sci", .features = "neon" },
2788 .{ .param_str = "id", .features = "neon" },
2789 .{ .param_str = "Wid", .features = "neon" },
2790 .{ .param_str = "Uid", .features = "neon" },
2791 .{ .param_str = "UWid", .features = "neon" },
2792 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2793 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2794 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2795 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2796 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2797 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2798 .{ .param_str = "if", .features = "neon" },
2799 .{ .param_str = "Wif", .features = "neon" },
2800 .{ .param_str = "Uif", .features = "neon" },
2801 .{ .param_str = "UWif", .features = "neon" },
2802 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2803 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2804 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2805 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2806 .{ .param_str = "V16ScV16ScV16Sci", .features = "bf16,neon" },
2807 .{ .param_str = "V16ScV16Sci", .features = "bf16,neon" },
2808 .{ .param_str = "V16mV16ScV16ScUWi", .features = "fp8,neon" },
2809 .{ .param_str = "V16ScV16ScIii", .features = "fullfp16,neon" },
2810 .{ .param_str = "V16ScV16ScIii", .features = "fullfp16,neon" },
2811 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
2812 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
2813 .{ .param_str = "V16ScV16ScIii", .features = "fullfp16,neon" },
2814 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
2815 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
2816 .{ .param_str = "V16ScV16ScIii", .features = "fullfp16,neon" },
2817 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
2818 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
2819 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2820 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2821 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2822 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
2823 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2824 .{ .param_str = "V16ScV16Sci", .features = "neon" },
2825 .{ .param_str = "fi", .features = "neon" },
2826 .{ .param_str = "fUi", .features = "neon" },
2827 .{ .param_str = "fiIi", .features = "neon" },
2828 .{ .param_str = "fUiIi", .features = "neon" },
2829 .{ .param_str = "ifIi", .features = "neon" },
2830 .{ .param_str = "UifIi", .features = "neon" },
2831 .{ .param_str = "if", .features = "neon" },
2832 .{ .param_str = "Wif", .features = "neon" },
2833 .{ .param_str = "Uif", .features = "neon" },
2834 .{ .param_str = "UWif", .features = "neon" },
2835 .{ .param_str = "V8ScV16Sci", .features = "neon" },
2836 .{ .param_str = "fd", .features = "neon" },
2837 .{ .param_str = "V4hV8ScV8mV8mUWi", .features = "fp8dot2,neon" },
2838 .{ .param_str = "V2fV2fV8mV8mUWi", .features = "fp8dot4,neon" },
2839 .{ .param_str = "V4hV8ScV8mV8mIiUWi", .features = "fp8dot2,neon" },
2840 .{ .param_str = "V2fV2fV8mV8mIiUWi", .features = "fp8dot4,neon" },
2841 .{ .param_str = "V4hV8ScV8mV16mIiUWi", .features = "fp8dot2,neon" },
2842 .{ .param_str = "V2fV2fV8mV16mIiUWi", .features = "fp8dot4,neon" },
2843 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "dotprod,neon" },
2844 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "dotprod,neon" },
2845 .{ .param_str = "V8hV16ScV16mV16mUWi", .features = "fp8dot2,neon" },
2846 .{ .param_str = "V4fV4fV16mV16mUWi", .features = "fp8dot4,neon" },
2847 .{ .param_str = "V8hV16ScV16mV8mIiUWi", .features = "fp8dot2,neon" },
2848 .{ .param_str = "V4fV4fV16mV8mIiUWi", .features = "fp8dot4,neon" },
2849 .{ .param_str = "V8hV16ScV16mV16mIiUWi", .features = "fp8dot2,neon" },
2850 .{ .param_str = "V4fV4fV16mV16mIiUWi", .features = "fp8dot4,neon" },
2851 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "dotprod,neon" },
2852 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "dotprod,neon" },
2853 .{ .param_str = "UcV8ScIi", .features = "neon" },
2854 .{ .param_str = "mV8mIi", .features = "neon" },
2855 .{ .param_str = "UcV16ScIi", .features = "neon" },
2856 .{ .param_str = "mV16mIi", .features = "neon" },
2857 .{ .param_str = "dV1dIi", .features = "neon" },
2858 .{ .param_str = "UWiV1WiIi", .features = "neon" },
2859 .{ .param_str = "dV2dIi", .features = "neon" },
2860 .{ .param_str = "UWiV2WiIi", .features = "neon" },
2861 .{ .param_str = "yV4yIi", .features = "bf16,neon" },
2862 .{ .param_str = "hV4hIi", .features = "neon" },
2863 .{ .param_str = "UsV4sIi", .features = "neon" },
2864 .{ .param_str = "yV8yIi", .features = "bf16,neon" },
2865 .{ .param_str = "hV8hIi", .features = "neon" },
2866 .{ .param_str = "UsV8sIi", .features = "neon" },
2867 .{ .param_str = "fV2fIi", .features = "neon" },
2868 .{ .param_str = "UiV2iIi", .features = "neon" },
2869 .{ .param_str = "fV4fIi", .features = "neon" },
2870 .{ .param_str = "UiV4iIi", .features = "neon" },
2871 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2872 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2873 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2874 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2875 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2876 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2877 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2878 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
2879 .{ .param_str = "V8ScV8ScV8ScIii", .features = "neon" },
2880 .{ .param_str = "V16ScV16ScV16ScIii", .features = "neon" },
2881 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "fullfp16,neon" },
2882 .{ .param_str = "V8ScV8ScV8ScV8ScIii", .features = "fullfp16,neon" },
2883 .{ .param_str = "V8ScV8ScV8ScV8ScIii", .features = "neon" },
2884 .{ .param_str = "V8ScV8ScV8ScV16ScIii", .features = "fullfp16,neon" },
2885 .{ .param_str = "V8ScV8ScV8ScV16ScIii", .features = "neon" },
2886 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "neon" },
2887 .{ .param_str = "dddV1dIi", .features = "neon" },
2888 .{ .param_str = "dddV2dIi", .features = "neon" },
2889 .{ .param_str = "hhhV4hIi", .features = "fullfp16,neon" },
2890 .{ .param_str = "hhhV8hIi", .features = "fullfp16,neon" },
2891 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "fullfp16,neon" },
2892 .{ .param_str = "V16ScV16ScV16ScV8ScIii", .features = "fullfp16,neon" },
2893 .{ .param_str = "V16ScV16ScV16ScV8ScIii", .features = "neon" },
2894 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "fullfp16,neon" },
2895 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "neon" },
2896 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "neon" },
2897 .{ .param_str = "fffV2fIi", .features = "neon" },
2898 .{ .param_str = "fffV4fIi", .features = "neon" },
2899 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "fp16fml,neon" },
2900 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "fp16fml,neon" },
2901 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "fp16fml,neon" },
2902 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "fp16fml,neon" },
2903 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "fp16fml,neon" },
2904 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "fp16fml,neon" },
2905 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "fp16fml,neon" },
2906 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "fp16fml,neon" },
2907 .{ .param_str = "yV4yIi", .features = "bf16,neon" },
2908 .{ .param_str = "fV2fIi", .features = "neon" },
2909 .{ .param_str = "dV1dIi", .features = "neon" },
2910 .{ .param_str = "UsV4sIi", .features = "neon" },
2911 .{ .param_str = "UiV2iIi", .features = "neon" },
2912 .{ .param_str = "UWiV1WiIi", .features = "neon" },
2913 .{ .param_str = "UcV8ScIi", .features = "neon" },
2914 .{ .param_str = "mV8mIi", .features = "neon" },
2915 .{ .param_str = "yV8yIi", .features = "bf16,neon" },
2916 .{ .param_str = "fV4fIi", .features = "neon" },
2917 .{ .param_str = "dV2dIi", .features = "neon" },
2918 .{ .param_str = "UsV8sIi", .features = "neon" },
2919 .{ .param_str = "UiV4iIi", .features = "neon" },
2920 .{ .param_str = "UWiV2WiIi", .features = "neon" },
2921 .{ .param_str = "UcV16ScIi", .features = "neon" },
2922 .{ .param_str = "mV16mIi", .features = "neon" },
2923 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
2924 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
2925 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
2926 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
2927 .{ .param_str = "V8ScvC*i", .features = "bf16,neon" },
2928 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2929 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2930 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2931 .{ .param_str = "V8ScvC*i", .features = "bf16,neon" },
2932 .{ .param_str = "V8ScvC*i", .features = "neon" },
2933 .{ .param_str = "V8ScvC*V8ScIii", .features = "bf16,neon" },
2934 .{ .param_str = "V8ScvC*V8ScIii", .features = "neon" },
2935 .{ .param_str = "V8ScvC*i", .features = "neon" },
2936 .{ .param_str = "vv*vC*i", .features = "neon" },
2937 .{ .param_str = "vv*vC*i", .features = "neon" },
2938 .{ .param_str = "vv*vC*i", .features = "neon" },
2939 .{ .param_str = "V16ScvC*i", .features = "bf16,neon" },
2940 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2941 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2942 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2943 .{ .param_str = "V16ScvC*i", .features = "bf16,neon" },
2944 .{ .param_str = "V16ScvC*i", .features = "neon" },
2945 .{ .param_str = "V16ScvC*V16ScIii", .features = "bf16,neon" },
2946 .{ .param_str = "V16ScvC*V16ScIii", .features = "neon" },
2947 .{ .param_str = "V16ScvC*i", .features = "neon" },
2948 .{ .param_str = "vv*vC*i", .features = "neon" },
2949 .{ .param_str = "vv*vC*i", .features = "neon" },
2950 .{ .param_str = "vv*vC*i", .features = "neon" },
2951 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2952 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2953 .{ .param_str = "vv*vC*i", .features = "neon" },
2954 .{ .param_str = "vv*vC*V8ScV8ScIii", .features = "bf16,neon" },
2955 .{ .param_str = "vv*vC*V8ScV8ScIii", .features = "neon" },
2956 .{ .param_str = "vv*vC*i", .features = "neon" },
2957 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2958 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2959 .{ .param_str = "vv*vC*i", .features = "neon" },
2960 .{ .param_str = "vv*vC*V16ScV16ScIii", .features = "bf16,neon" },
2961 .{ .param_str = "vv*vC*V16ScV16ScIii", .features = "neon" },
2962 .{ .param_str = "vv*vC*i", .features = "neon" },
2963 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2964 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2965 .{ .param_str = "vv*vC*i", .features = "neon" },
2966 .{ .param_str = "vv*vC*V8ScV8ScV8ScIii", .features = "bf16,neon" },
2967 .{ .param_str = "vv*vC*V8ScV8ScV8ScIii", .features = "neon" },
2968 .{ .param_str = "vv*vC*i", .features = "neon" },
2969 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2970 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2971 .{ .param_str = "vv*vC*i", .features = "neon" },
2972 .{ .param_str = "vv*vC*V16ScV16ScV16ScIii", .features = "bf16,neon" },
2973 .{ .param_str = "vv*vC*V16ScV16ScV16ScIii", .features = "neon" },
2974 .{ .param_str = "vv*vC*i", .features = "neon" },
2975 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2976 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2977 .{ .param_str = "vv*vC*i", .features = "neon" },
2978 .{ .param_str = "vv*vC*V8ScV8ScV8ScV8ScIii", .features = "bf16,neon" },
2979 .{ .param_str = "vv*vC*V8ScV8ScV8ScV8ScIii", .features = "neon" },
2980 .{ .param_str = "vv*vC*i", .features = "neon" },
2981 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2982 .{ .param_str = "vv*vC*i", .features = "bf16,neon" },
2983 .{ .param_str = "vv*vC*i", .features = "neon" },
2984 .{ .param_str = "vv*vC*V16ScV16ScV16ScV16ScIii", .features = "bf16,neon" },
2985 .{ .param_str = "vv*vC*V16ScV16ScV16ScV16ScIii", .features = "neon" },
2986 .{ .param_str = "vv*vC*i", .features = "neon" },
2987 .{ .param_str = "V8ScvC*V8ScIii", .features = "rcpc3,neon" },
2988 .{ .param_str = "V8ScvC*V8ScIii", .features = "rcpc3,neon" },
2989 .{ .param_str = "V8ScvC*V8ScIii", .features = "rcpc3,neon" },
2990 .{ .param_str = "V8ScvC*V8ScIii", .features = "rcpc3,neon" },
2991 .{ .param_str = "V16ScvC*V16ScIii", .features = "rcpc3,neon" },
2992 .{ .param_str = "V16ScvC*V16ScIii", .features = "rcpc3,neon" },
2993 .{ .param_str = "V16ScvC*V16ScIii", .features = "rcpc3,neon" },
2994 .{ .param_str = "V16ScvC*V16ScIii", .features = "rcpc3,neon" },
2995 .{ .param_str = "ULLLivC*", .features = "neon" },
2996 .{ .param_str = "V16ScV8ScV8ScIii", .features = "lut,bf16" },
2997 .{ .param_str = "V16ScV8ScV8ScIii", .features = "lut" },
2998 .{ .param_str = "V16ScV8ScV8ScIii", .features = "lut" },
2999 .{ .param_str = "V16ScV8ScV8ScIii", .features = "lut" },
3000 .{ .param_str = "V16ScV8ScV8ScIii", .features = "lut" },
3001 .{ .param_str = "V16ScV8ScV8ScIii", .features = "lut" },
3002 .{ .param_str = "V16ScV8ScV8ScIii", .features = "lut" },
3003 .{ .param_str = "V16ScV8ScV8ScIii", .features = "lut" },
3004 .{ .param_str = "V16ScV8ScV8ScIii", .features = "lut" },
3005 .{ .param_str = "V16ScV8ScV16ScIii", .features = "lut,bf16" },
3006 .{ .param_str = "V16ScV8ScV16ScIii", .features = "lut" },
3007 .{ .param_str = "V16ScV8ScV16ScIii", .features = "lut" },
3008 .{ .param_str = "V16ScV8ScV16ScIii", .features = "lut" },
3009 .{ .param_str = "V16ScV8ScV16ScIii", .features = "lut" },
3010 .{ .param_str = "V16ScV8ScV16ScIii", .features = "lut" },
3011 .{ .param_str = "V16ScV8ScV16ScIii", .features = "lut" },
3012 .{ .param_str = "V16ScV8ScV16ScIii", .features = "lut" },
3013 .{ .param_str = "V16ScV8ScV16ScIii", .features = "lut" },
3014 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut,bf16" },
3015 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3016 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3017 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3018 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3019 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3020 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3021 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3022 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3023 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut,bf16" },
3024 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3025 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3026 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3027 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3028 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3029 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3030 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3031 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3032 .{ .param_str = "V16ScV16ScV16ScV8ScIii", .features = "lut,bf16" },
3033 .{ .param_str = "V16ScV16ScV16ScV8ScIii", .features = "lut" },
3034 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3035 .{ .param_str = "V16ScV16ScV16ScV8ScIii", .features = "lut" },
3036 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3037 .{ .param_str = "V16ScV16ScV16ScV8ScIii", .features = "lut" },
3038 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3039 .{ .param_str = "V16ScV16ScV16ScV8ScIii", .features = "lut" },
3040 .{ .param_str = "V16ScV16ScV8ScIii", .features = "lut" },
3041 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "lut,bf16" },
3042 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "lut" },
3043 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3044 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "lut" },
3045 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3046 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "lut" },
3047 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3048 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "lut" },
3049 .{ .param_str = "V16ScV16ScV16ScIii", .features = "lut" },
3050 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3051 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3052 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3053 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3054 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3055 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3056 .{ .param_str = "hV8Sc", .features = "fullfp16,neon" },
3057 .{ .param_str = "fV2f", .features = "neon" },
3058 .{ .param_str = "hV16Sc", .features = "fullfp16,neon" },
3059 .{ .param_str = "fV4f", .features = "neon" },
3060 .{ .param_str = "dV2d", .features = "neon" },
3061 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3062 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3063 .{ .param_str = "hV8Sc", .features = "fullfp16,neon" },
3064 .{ .param_str = "fV2f", .features = "neon" },
3065 .{ .param_str = "sV4s", .features = "neon" },
3066 .{ .param_str = "iV2i", .features = "neon" },
3067 .{ .param_str = "ScV8Sc", .features = "neon" },
3068 .{ .param_str = "UsV4Us", .features = "neon" },
3069 .{ .param_str = "UiV2Ui", .features = "neon" },
3070 .{ .param_str = "UcV8Uc", .features = "neon" },
3071 .{ .param_str = "hV16Sc", .features = "fullfp16,neon" },
3072 .{ .param_str = "fV4f", .features = "neon" },
3073 .{ .param_str = "dV2d", .features = "neon" },
3074 .{ .param_str = "sV8s", .features = "neon" },
3075 .{ .param_str = "iV4i", .features = "neon" },
3076 .{ .param_str = "ScV16Sc", .features = "neon" },
3077 .{ .param_str = "UsV8Us", .features = "neon" },
3078 .{ .param_str = "UiV4Ui", .features = "neon" },
3079 .{ .param_str = "UcV16Uc", .features = "neon" },
3080 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3081 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3082 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3083 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3084 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3085 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3086 .{ .param_str = "hV8Sc", .features = "fullfp16,neon" },
3087 .{ .param_str = "fV2f", .features = "neon" },
3088 .{ .param_str = "hV16Sc", .features = "fullfp16,neon" },
3089 .{ .param_str = "fV4f", .features = "neon" },
3090 .{ .param_str = "dV2d", .features = "neon" },
3091 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3092 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3093 .{ .param_str = "hV8Sc", .features = "fullfp16,neon" },
3094 .{ .param_str = "fV2f", .features = "neon" },
3095 .{ .param_str = "sV4s", .features = "neon" },
3096 .{ .param_str = "iV2i", .features = "neon" },
3097 .{ .param_str = "ScV8Sc", .features = "neon" },
3098 .{ .param_str = "UsV4Us", .features = "neon" },
3099 .{ .param_str = "UiV2Ui", .features = "neon" },
3100 .{ .param_str = "UcV8Uc", .features = "neon" },
3101 .{ .param_str = "hV16Sc", .features = "fullfp16,neon" },
3102 .{ .param_str = "fV4f", .features = "neon" },
3103 .{ .param_str = "dV2d", .features = "neon" },
3104 .{ .param_str = "sV8s", .features = "neon" },
3105 .{ .param_str = "iV4i", .features = "neon" },
3106 .{ .param_str = "ScV16Sc", .features = "neon" },
3107 .{ .param_str = "UsV8Us", .features = "neon" },
3108 .{ .param_str = "UiV4Ui", .features = "neon" },
3109 .{ .param_str = "UcV16Uc", .features = "neon" },
3110 .{ .param_str = "V8hV16ScV16mV16mUWi", .features = "fp8fma,neon" },
3111 .{ .param_str = "V8hV16ScV16mV8mIiUWi", .features = "fp8fma,neon" },
3112 .{ .param_str = "V8hV16ScV16mV16mIiUWi", .features = "fp8fma,neon" },
3113 .{ .param_str = "V4fV4fV16mV16mUWi", .features = "fp8fma,neon" },
3114 .{ .param_str = "V4fV4fV16mV8mIiUWi", .features = "fp8fma,neon" },
3115 .{ .param_str = "V4fV4fV16mV16mIiUWi", .features = "fp8fma,neon" },
3116 .{ .param_str = "V4fV4fV16mV16mUWi", .features = "fp8fma,neon" },
3117 .{ .param_str = "V4fV4fV16mV8mIiUWi", .features = "fp8fma,neon" },
3118 .{ .param_str = "V4fV4fV16mV16mIiUWi", .features = "fp8fma,neon" },
3119 .{ .param_str = "V4fV4fV16mV16mUWi", .features = "fp8fma,neon" },
3120 .{ .param_str = "V4fV4fV16mV8mIiUWi", .features = "fp8fma,neon" },
3121 .{ .param_str = "V4fV4fV16mV16mIiUWi", .features = "fp8fma,neon" },
3122 .{ .param_str = "V4fV4fV16mV16mUWi", .features = "fp8fma,neon" },
3123 .{ .param_str = "V4fV4fV16mV8mIiUWi", .features = "fp8fma,neon" },
3124 .{ .param_str = "V4fV4fV16mV16mIiUWi", .features = "fp8fma,neon" },
3125 .{ .param_str = "V8hV16ScV16mV16mUWi", .features = "fp8fma,neon" },
3126 .{ .param_str = "V8hV16ScV16mV8mIiUWi", .features = "fp8fma,neon" },
3127 .{ .param_str = "V8hV16ScV16mV16mIiUWi", .features = "fp8fma,neon" },
3128 .{ .param_str = "V8hV16ScV16mV16mUWi", .features = "f8f16mm,neon" },
3129 .{ .param_str = "V4fV4fV16mV16mUWi", .features = "f8f32mm,neon" },
3130 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "i8mm,neon" },
3131 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "i8mm,neon" },
3132 .{ .param_str = "V16ScV8Sci", .features = "neon" },
3133 .{ .param_str = "V8ScV16Sci", .features = "neon" },
3134 .{ .param_str = "V8ScV8ScV8ScIii", .features = "neon" },
3135 .{ .param_str = "V8ScV8ScV16ScIii", .features = "neon" },
3136 .{ .param_str = "V1dV1dd", .features = "neon" },
3137 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3138 .{ .param_str = "ULLLiUWiUWi", .features = "aes,neon" },
3139 .{ .param_str = "V16ScV8ScV8Sci", .features = "neon" },
3140 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3141 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3142 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3143 .{ .param_str = "ddd", .features = "neon" },
3144 .{ .param_str = "hhV4hIi", .features = "fullfp16,neon" },
3145 .{ .param_str = "hhV8hIi", .features = "fullfp16,neon" },
3146 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3147 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3148 .{ .param_str = "fff", .features = "neon" },
3149 .{ .param_str = "WiWi", .features = "neon" },
3150 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3151 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3152 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3153 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3154 .{ .param_str = "dV2d", .features = "neon" },
3155 .{ .param_str = "WiV2Wi", .features = "neon" },
3156 .{ .param_str = "UWiV2UWi", .features = "neon" },
3157 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3158 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3159 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3160 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3161 .{ .param_str = "fV2f", .features = "neon" },
3162 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3163 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3164 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3165 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3166 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3167 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3168 .{ .param_str = "dV2d", .features = "neon" },
3169 .{ .param_str = "fV2f", .features = "neon" },
3170 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3171 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3172 .{ .param_str = "dV2d", .features = "neon" },
3173 .{ .param_str = "fV2f", .features = "neon" },
3174 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3175 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3176 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3177 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3178 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3179 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3180 .{ .param_str = "dV2d", .features = "neon" },
3181 .{ .param_str = "fV2f", .features = "neon" },
3182 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3183 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3184 .{ .param_str = "dV2d", .features = "neon" },
3185 .{ .param_str = "fV2f", .features = "neon" },
3186 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3187 .{ .param_str = "ScSc", .features = "neon" },
3188 .{ .param_str = "WiWi", .features = "neon" },
3189 .{ .param_str = "ss", .features = "neon" },
3190 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3191 .{ .param_str = "ii", .features = "neon" },
3192 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3193 .{ .param_str = "ScScSc", .features = "neon" },
3194 .{ .param_str = "UcUcUc", .features = "neon" },
3195 .{ .param_str = "WiWiWi", .features = "neon" },
3196 .{ .param_str = "UWiUWiUWi", .features = "neon" },
3197 .{ .param_str = "sss", .features = "neon" },
3198 .{ .param_str = "UsUsUs", .features = "neon" },
3199 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3200 .{ .param_str = "iii", .features = "neon" },
3201 .{ .param_str = "UiUiUi", .features = "neon" },
3202 .{ .param_str = "V16ScV16ScV8ScV8Sci", .features = "neon" },
3203 .{ .param_str = "iisV4sIi", .features = "neon" },
3204 .{ .param_str = "iisV8sIi", .features = "neon" },
3205 .{ .param_str = "iiss", .features = "neon" },
3206 .{ .param_str = "WiWiiV2iIi", .features = "neon" },
3207 .{ .param_str = "WiWiiV4iIi", .features = "neon" },
3208 .{ .param_str = "WiWiii", .features = "neon" },
3209 .{ .param_str = "V16ScV16ScV8ScV8Sci", .features = "neon" },
3210 .{ .param_str = "iisV4sIi", .features = "neon" },
3211 .{ .param_str = "iisV8sIi", .features = "neon" },
3212 .{ .param_str = "iiss", .features = "neon" },
3213 .{ .param_str = "WiWiiV2iIi", .features = "neon" },
3214 .{ .param_str = "WiWiiV4iIi", .features = "neon" },
3215 .{ .param_str = "WiWiii", .features = "neon" },
3216 .{ .param_str = "V8ScV8ScV8ScIii", .features = "neon" },
3217 .{ .param_str = "V8ScV8ScV16ScIii", .features = "neon" },
3218 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3219 .{ .param_str = "sss", .features = "neon" },
3220 .{ .param_str = "V16ScV16ScV8ScIii", .features = "neon" },
3221 .{ .param_str = "V16ScV16ScV16ScIii", .features = "neon" },
3222 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3223 .{ .param_str = "iii", .features = "neon" },
3224 .{ .param_str = "V16ScV8ScV8Sci", .features = "neon" },
3225 .{ .param_str = "iss", .features = "neon" },
3226 .{ .param_str = "Wiii", .features = "neon" },
3227 .{ .param_str = "V8ScV16Sci", .features = "neon" },
3228 .{ .param_str = "iWi", .features = "neon" },
3229 .{ .param_str = "UiUWi", .features = "neon" },
3230 .{ .param_str = "Scs", .features = "neon" },
3231 .{ .param_str = "UcUs", .features = "neon" },
3232 .{ .param_str = "si", .features = "neon" },
3233 .{ .param_str = "UsUi", .features = "neon" },
3234 .{ .param_str = "V8ScV16Sci", .features = "neon" },
3235 .{ .param_str = "UiWi", .features = "neon" },
3236 .{ .param_str = "Ucs", .features = "neon" },
3237 .{ .param_str = "Usi", .features = "neon" },
3238 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3239 .{ .param_str = "ScSc", .features = "neon" },
3240 .{ .param_str = "WiWi", .features = "neon" },
3241 .{ .param_str = "ss", .features = "neon" },
3242 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3243 .{ .param_str = "ii", .features = "neon" },
3244 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_1a,neon" },
3245 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_1a,neon" },
3246 .{ .param_str = "ssss", .features = "v8_1a,neon" },
3247 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_1a,neon" },
3248 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_1a,neon" },
3249 .{ .param_str = "iiii", .features = "v8_1a,neon" },
3250 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_1a,neon" },
3251 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "v8_1a,neon" },
3252 .{ .param_str = "ssss", .features = "v8_1a,neon" },
3253 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_1a,neon" },
3254 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "v8_1a,neon" },
3255 .{ .param_str = "iiii", .features = "v8_1a,neon" },
3256 .{ .param_str = "V8ScV8ScV8ScIii", .features = "neon" },
3257 .{ .param_str = "V8ScV8ScV16ScIii", .features = "neon" },
3258 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3259 .{ .param_str = "sss", .features = "neon" },
3260 .{ .param_str = "V16ScV16ScV8ScIii", .features = "neon" },
3261 .{ .param_str = "V16ScV16ScV16ScIii", .features = "neon" },
3262 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3263 .{ .param_str = "iii", .features = "neon" },
3264 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3265 .{ .param_str = "ScScSc", .features = "neon" },
3266 .{ .param_str = "UcUcSc", .features = "neon" },
3267 .{ .param_str = "WiWiWi", .features = "neon" },
3268 .{ .param_str = "UWiUWiWi", .features = "neon" },
3269 .{ .param_str = "sss", .features = "neon" },
3270 .{ .param_str = "UsUss", .features = "neon" },
3271 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3272 .{ .param_str = "iii", .features = "neon" },
3273 .{ .param_str = "UiUii", .features = "neon" },
3274 .{ .param_str = "V8ScV16ScIii", .features = "neon" },
3275 .{ .param_str = "iWiIi", .features = "neon" },
3276 .{ .param_str = "UiUWiIi", .features = "neon" },
3277 .{ .param_str = "ScsIi", .features = "neon" },
3278 .{ .param_str = "UcUsIi", .features = "neon" },
3279 .{ .param_str = "siIi", .features = "neon" },
3280 .{ .param_str = "UsUiIi", .features = "neon" },
3281 .{ .param_str = "V8ScV16ScIii", .features = "neon" },
3282 .{ .param_str = "UiWiIi", .features = "neon" },
3283 .{ .param_str = "UcsIi", .features = "neon" },
3284 .{ .param_str = "UsiIi", .features = "neon" },
3285 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
3286 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3287 .{ .param_str = "ScScIi", .features = "neon" },
3288 .{ .param_str = "UcUcIi", .features = "neon" },
3289 .{ .param_str = "ScScSc", .features = "neon" },
3290 .{ .param_str = "UcUcSc", .features = "neon" },
3291 .{ .param_str = "WiWiIi", .features = "neon" },
3292 .{ .param_str = "UWiUWiIi", .features = "neon" },
3293 .{ .param_str = "WiWiWi", .features = "neon" },
3294 .{ .param_str = "UWiUWiWi", .features = "neon" },
3295 .{ .param_str = "ssIi", .features = "neon" },
3296 .{ .param_str = "UsUsIi", .features = "neon" },
3297 .{ .param_str = "sss", .features = "neon" },
3298 .{ .param_str = "UsUss", .features = "neon" },
3299 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
3300 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3301 .{ .param_str = "iiIi", .features = "neon" },
3302 .{ .param_str = "UiUiIi", .features = "neon" },
3303 .{ .param_str = "iii", .features = "neon" },
3304 .{ .param_str = "UiUii", .features = "neon" },
3305 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
3306 .{ .param_str = "ScScIi", .features = "neon" },
3307 .{ .param_str = "WiWiIi", .features = "neon" },
3308 .{ .param_str = "ssIi", .features = "neon" },
3309 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
3310 .{ .param_str = "iiIi", .features = "neon" },
3311 .{ .param_str = "V8ScV16ScIii", .features = "neon" },
3312 .{ .param_str = "iWiIi", .features = "neon" },
3313 .{ .param_str = "UiUWiIi", .features = "neon" },
3314 .{ .param_str = "ScsIi", .features = "neon" },
3315 .{ .param_str = "UcUsIi", .features = "neon" },
3316 .{ .param_str = "siIi", .features = "neon" },
3317 .{ .param_str = "UsUiIi", .features = "neon" },
3318 .{ .param_str = "V8ScV16ScIii", .features = "neon" },
3319 .{ .param_str = "UiWiIi", .features = "neon" },
3320 .{ .param_str = "UcsIi", .features = "neon" },
3321 .{ .param_str = "UsiIi", .features = "neon" },
3322 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3323 .{ .param_str = "ScScSc", .features = "neon" },
3324 .{ .param_str = "UcUcUc", .features = "neon" },
3325 .{ .param_str = "WiWiWi", .features = "neon" },
3326 .{ .param_str = "UWiUWiUWi", .features = "neon" },
3327 .{ .param_str = "sss", .features = "neon" },
3328 .{ .param_str = "UsUsUs", .features = "neon" },
3329 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3330 .{ .param_str = "iii", .features = "neon" },
3331 .{ .param_str = "UiUiUi", .features = "neon" },
3332 .{ .param_str = "V8ScV16ScV8Sci", .features = "neon" },
3333 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3334 .{ .param_str = "V8ScV16ScV16ScV8Sci", .features = "neon" },
3335 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "neon" },
3336 .{ .param_str = "V8ScV16ScV16ScV16ScV8Sci", .features = "neon" },
3337 .{ .param_str = "V16ScV16ScV16ScV16ScV16Sci", .features = "neon" },
3338 .{ .param_str = "V8ScV16ScV16ScV16ScV16ScV8Sci", .features = "neon" },
3339 .{ .param_str = "V16ScV16ScV16ScV16ScV16ScV16Sci", .features = "neon" },
3340 .{ .param_str = "V8ScV8ScV16ScV8Sci", .features = "neon" },
3341 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "neon" },
3342 .{ .param_str = "V8ScV8ScV16ScV16ScV8Sci", .features = "neon" },
3343 .{ .param_str = "V16ScV16ScV16ScV16ScV16Sci", .features = "neon" },
3344 .{ .param_str = "V8ScV8ScV16ScV16ScV16ScV8Sci", .features = "neon" },
3345 .{ .param_str = "V16ScV16ScV16ScV16ScV16ScV16Sci", .features = "neon" },
3346 .{ .param_str = "V8ScV8ScV16ScV16ScV16ScV16ScV8Sci", .features = "neon" },
3347 .{ .param_str = "V16ScV16ScV16ScV16ScV16ScV16ScV16Sci", .features = "neon" },
3348 .{ .param_str = "V8ScV16ScV16Sci", .features = "neon" },
3349 .{ .param_str = "V16ScV16ScV16Sci", .features = "sha3,neon" },
3350 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3351 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3352 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3353 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3354 .{ .param_str = "dd", .features = "neon" },
3355 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3356 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3357 .{ .param_str = "ff", .features = "neon" },
3358 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3359 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3360 .{ .param_str = "ddd", .features = "neon" },
3361 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3362 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3363 .{ .param_str = "fff", .features = "neon" },
3364 .{ .param_str = "dd", .features = "neon" },
3365 .{ .param_str = "ff", .features = "neon" },
3366 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3367 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3368 .{ .param_str = "V8ScV8Sci", .features = "v8_5a,neon" },
3369 .{ .param_str = "V8ScV8Sci", .features = "v8_5a,neon" },
3370 .{ .param_str = "V16ScV16Sci", .features = "v8_5a,neon" },
3371 .{ .param_str = "V16ScV16Sci", .features = "v8_5a,neon" },
3372 .{ .param_str = "V8ScV8Sci", .features = "v8_5a,neon" },
3373 .{ .param_str = "V8ScV8Sci", .features = "v8_5a,neon" },
3374 .{ .param_str = "V16ScV16Sci", .features = "v8_5a,neon" },
3375 .{ .param_str = "V16ScV16Sci", .features = "v8_5a,neon" },
3376 .{ .param_str = "V8ScV8Sci", .features = "v8_5a,neon" },
3377 .{ .param_str = "V8ScV8Sci", .features = "v8_5a,neon" },
3378 .{ .param_str = "V16ScV16Sci", .features = "v8_5a,neon" },
3379 .{ .param_str = "V16ScV16Sci", .features = "v8_5a,neon" },
3380 .{ .param_str = "V8ScV8Sci", .features = "v8_5a,neon" },
3381 .{ .param_str = "V8ScV8Sci", .features = "v8_5a,neon" },
3382 .{ .param_str = "V16ScV16Sci", .features = "v8_5a,neon" },
3383 .{ .param_str = "V16ScV16Sci", .features = "v8_5a,neon" },
3384 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3385 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3386 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3387 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3388 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3389 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3390 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3391 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3392 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3393 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3394 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3395 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3396 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3397 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3398 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3399 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3400 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3401 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3402 .{ .param_str = "ff", .features = "neon" },
3403 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3404 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3405 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3406 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3407 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3408 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3409 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3410 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3411 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3412 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3413 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3414 .{ .param_str = "WiWiWi", .features = "neon" },
3415 .{ .param_str = "UWiUWiWi", .features = "neon" },
3416 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3417 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
3418 .{ .param_str = "WiWiIi", .features = "neon" },
3419 .{ .param_str = "UWiUWiIi", .features = "neon" },
3420 .{ .param_str = "V8ScV16ScIii", .features = "neon" },
3421 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
3422 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3423 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3424 .{ .param_str = "dd", .features = "neon" },
3425 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3426 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3427 .{ .param_str = "ff", .features = "neon" },
3428 .{ .param_str = "V8ScV8ScV8Sci", .features = "fullfp16,neon" },
3429 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3430 .{ .param_str = "ddd", .features = "neon" },
3431 .{ .param_str = "V16ScV16ScV16Sci", .features = "fullfp16,neon" },
3432 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3433 .{ .param_str = "fff", .features = "neon" },
3434 .{ .param_str = "V8ScV8ScV8ScIii", .features = "neon" },
3435 .{ .param_str = "WiWiWiIi", .features = "neon" },
3436 .{ .param_str = "UWiUWiUWiIi", .features = "neon" },
3437 .{ .param_str = "V16ScV16ScV16ScIii", .features = "neon" },
3438 .{ .param_str = "V8ScV16ScV16Sci", .features = "neon" },
3439 .{ .param_str = "V8ScV8ScV8Sci", .features = "fp8,neon" },
3440 .{ .param_str = "V8ScV8ScV8Sci", .features = "fp8,neon" },
3441 .{ .param_str = "V16ScV16ScV16Sci", .features = "fp8,neon" },
3442 .{ .param_str = "V16ScV16ScV16Sci", .features = "fp8,neon" },
3443 .{ .param_str = "V16ScV16ScV16Sci", .features = "fp8,neon" },
3444 .{ .param_str = "V4yyV4yIi", .features = "bf16,neon" },
3445 .{ .param_str = "V2ffV2fIi", .features = "neon" },
3446 .{ .param_str = "V1ddV1dIi", .features = "neon" },
3447 .{ .param_str = "V4ssV4sIi", .features = "neon" },
3448 .{ .param_str = "V2iiV2iIi", .features = "neon" },
3449 .{ .param_str = "V1WiWiV1WiIi", .features = "neon" },
3450 .{ .param_str = "V8ScScV8ScIi", .features = "neon" },
3451 .{ .param_str = "V8mmV8mIi", .features = "neon" },
3452 .{ .param_str = "V8yyV8yIi", .features = "bf16,neon" },
3453 .{ .param_str = "V4ffV4fIi", .features = "neon" },
3454 .{ .param_str = "V2ddV2dIi", .features = "neon" },
3455 .{ .param_str = "V8ssV8sIi", .features = "neon" },
3456 .{ .param_str = "V4iiV4iIi", .features = "neon" },
3457 .{ .param_str = "V2WiWiV2WiIi", .features = "neon" },
3458 .{ .param_str = "V16ScScV16ScIi", .features = "neon" },
3459 .{ .param_str = "V16mmV16mIi", .features = "neon" },
3460 .{ .param_str = "V4iV4UiUiV4Ui", .features = "sha2,neon" },
3461 .{ .param_str = "UiUi", .features = "sha2,neon" },
3462 .{ .param_str = "V4iV4UiUiV4Ui", .features = "sha2,neon" },
3463 .{ .param_str = "V4iV4UiUiV4Ui", .features = "sha2,neon" },
3464 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha2,neon" },
3465 .{ .param_str = "V16ScV16ScV16Sci", .features = "sha2,neon" },
3466 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha2,neon" },
3467 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha2,neon" },
3468 .{ .param_str = "V16ScV16ScV16Sci", .features = "sha2,neon" },
3469 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha2,neon" },
3470 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
3471 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
3472 .{ .param_str = "V16ScV16ScV16Sci", .features = "sha3,neon" },
3473 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sha3,neon" },
3474 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
3475 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3476 .{ .param_str = "WiWiIi", .features = "neon" },
3477 .{ .param_str = "UWiUWiIi", .features = "neon" },
3478 .{ .param_str = "WiWiWi", .features = "neon" },
3479 .{ .param_str = "UWiUWiWi", .features = "neon" },
3480 .{ .param_str = "V16ScV8ScIii", .features = "neon" },
3481 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
3482 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3483 .{ .param_str = "V8ScV8ScIii", .features = "neon" },
3484 .{ .param_str = "WiWiIi", .features = "neon" },
3485 .{ .param_str = "UWiUWiIi", .features = "neon" },
3486 .{ .param_str = "V8ScV16ScIii", .features = "neon" },
3487 .{ .param_str = "V16ScV16ScIii", .features = "neon" },
3488 .{ .param_str = "V8ScV8ScV8ScIii", .features = "neon" },
3489 .{ .param_str = "WiWiWiIi", .features = "neon" },
3490 .{ .param_str = "UWiUWiUWiIi", .features = "neon" },
3491 .{ .param_str = "V16ScV16ScV16ScIii", .features = "neon" },
3492 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sm4,neon" },
3493 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sm4,neon" },
3494 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "sm4,neon" },
3495 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "sm4,neon" },
3496 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "sm4,neon" },
3497 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "sm4,neon" },
3498 .{ .param_str = "V16ScV16ScV16ScV16ScIii", .features = "sm4,neon" },
3499 .{ .param_str = "V16ScV16ScV16Sci", .features = "sm4,neon" },
3500 .{ .param_str = "V16ScV16ScV16Sci", .features = "sm4,neon" },
3501 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3502 .{ .param_str = "UcUcSc", .features = "neon" },
3503 .{ .param_str = "UWiUWiWi", .features = "neon" },
3504 .{ .param_str = "UsUss", .features = "neon" },
3505 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3506 .{ .param_str = "UiUii", .features = "neon" },
3507 .{ .param_str = "V8ScV8Sci", .features = "fullfp16,neon" },
3508 .{ .param_str = "V8ScV8Sci", .features = "neon" },
3509 .{ .param_str = "V16ScV16Sci", .features = "fullfp16,neon" },
3510 .{ .param_str = "V16ScV16Sci", .features = "neon" },
3511 .{ .param_str = "V8ScV8ScV8ScIii", .features = "neon" },
3512 .{ .param_str = "WiWiWiIi", .features = "neon" },
3513 .{ .param_str = "UWiUWiUWiIi", .features = "neon" },
3514 .{ .param_str = "V16ScV16ScV16ScIii", .features = "neon" },
3515 .{ .param_str = "V8ScV8ScV8ScIii", .features = "neon" },
3516 .{ .param_str = "WiWiWiIi", .features = "neon" },
3517 .{ .param_str = "UWiUWiUWiIi", .features = "neon" },
3518 .{ .param_str = "V16ScV16ScV16ScIii", .features = "neon" },
3519 .{ .param_str = "vv*V8Sci", .features = "bf16,neon" },
3520 .{ .param_str = "vv*V8ScV8Sci", .features = "bf16,neon" },
3521 .{ .param_str = "vv*V8ScV8ScV8Sci", .features = "bf16,neon" },
3522 .{ .param_str = "vv*V8ScV8ScV8ScV8Sci", .features = "bf16,neon" },
3523 .{ .param_str = "vv*V8ScIii", .features = "bf16,neon" },
3524 .{ .param_str = "vv*V8ScIii", .features = "neon" },
3525 .{ .param_str = "vv*V8Sci", .features = "neon" },
3526 .{ .param_str = "vv*V8ScV8Sci", .features = "neon" },
3527 .{ .param_str = "vv*V8ScV8ScV8Sci", .features = "neon" },
3528 .{ .param_str = "vv*V8ScV8ScV8ScV8Sci", .features = "neon" },
3529 .{ .param_str = "vv*V16Sci", .features = "bf16,neon" },
3530 .{ .param_str = "vv*V16ScV16Sci", .features = "bf16,neon" },
3531 .{ .param_str = "vv*V16ScV16ScV16Sci", .features = "bf16,neon" },
3532 .{ .param_str = "vv*V16ScV16ScV16ScV16Sci", .features = "bf16,neon" },
3533 .{ .param_str = "vv*V16ScIii", .features = "bf16,neon" },
3534 .{ .param_str = "vv*V16ScIii", .features = "neon" },
3535 .{ .param_str = "vv*V16Sci", .features = "neon" },
3536 .{ .param_str = "vv*V16ScV16Sci", .features = "neon" },
3537 .{ .param_str = "vv*V16ScV16ScV16Sci", .features = "neon" },
3538 .{ .param_str = "vv*V16ScV16ScV16ScV16Sci", .features = "neon" },
3539 .{ .param_str = "vv*V8ScV8Sci", .features = "bf16,neon" },
3540 .{ .param_str = "vv*V8ScV8ScIii", .features = "bf16,neon" },
3541 .{ .param_str = "vv*V8ScV8ScIii", .features = "neon" },
3542 .{ .param_str = "vv*V8ScV8Sci", .features = "neon" },
3543 .{ .param_str = "vv*V16ScV16Sci", .features = "bf16,neon" },
3544 .{ .param_str = "vv*V16ScV16ScIii", .features = "bf16,neon" },
3545 .{ .param_str = "vv*V16ScV16ScIii", .features = "neon" },
3546 .{ .param_str = "vv*V16ScV16Sci", .features = "neon" },
3547 .{ .param_str = "vv*V8ScV8ScV8Sci", .features = "bf16,neon" },
3548 .{ .param_str = "vv*V8ScV8ScV8ScIii", .features = "bf16,neon" },
3549 .{ .param_str = "vv*V8ScV8ScV8ScIii", .features = "neon" },
3550 .{ .param_str = "vv*V8ScV8ScV8Sci", .features = "neon" },
3551 .{ .param_str = "vv*V16ScV16ScV16Sci", .features = "bf16,neon" },
3552 .{ .param_str = "vv*V16ScV16ScV16ScIii", .features = "bf16,neon" },
3553 .{ .param_str = "vv*V16ScV16ScV16ScIii", .features = "neon" },
3554 .{ .param_str = "vv*V16ScV16ScV16Sci", .features = "neon" },
3555 .{ .param_str = "vv*V8ScV8ScV8ScV8Sci", .features = "bf16,neon" },
3556 .{ .param_str = "vv*V8ScV8ScV8ScV8ScIii", .features = "bf16,neon" },
3557 .{ .param_str = "vv*V8ScV8ScV8ScV8ScIii", .features = "neon" },
3558 .{ .param_str = "vv*V8ScV8ScV8ScV8Sci", .features = "neon" },
3559 .{ .param_str = "vv*V16ScV16ScV16ScV16Sci", .features = "bf16,neon" },
3560 .{ .param_str = "vv*V16ScV16ScV16ScV16ScIii", .features = "bf16,neon" },
3561 .{ .param_str = "vv*V16ScV16ScV16ScV16ScIii", .features = "neon" },
3562 .{ .param_str = "vv*V16ScV16ScV16ScV16Sci", .features = "neon" },
3563 .{ .param_str = "vv*V8ScIii", .features = "rcpc3,neon" },
3564 .{ .param_str = "vv*V8ScIii", .features = "rcpc3,neon" },
3565 .{ .param_str = "vv*V8ScIii", .features = "rcpc3,neon" },
3566 .{ .param_str = "vv*V8ScIii", .features = "rcpc3,neon" },
3567 .{ .param_str = "vv*V16ScIii", .features = "rcpc3,neon" },
3568 .{ .param_str = "vv*V16ScIii", .features = "rcpc3,neon" },
3569 .{ .param_str = "vv*V16ScIii", .features = "rcpc3,neon" },
3570 .{ .param_str = "vv*V16ScIii", .features = "rcpc3,neon" },
3571 .{ .param_str = "vv*ULLLi", .features = "neon" },
3572 .{ .param_str = "WiWiWi", .features = "neon" },
3573 .{ .param_str = "UWiUWiUWi", .features = "neon" },
3574 .{ .param_str = "V8ScV16ScV16Sci", .features = "neon" },
3575 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3576 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "neon" },
3577 .{ .param_str = "V8ScV8ScV8ScV8ScV8Sci", .features = "neon" },
3578 .{ .param_str = "V8ScV8ScV8ScV8ScV8ScV8Sci", .features = "neon" },
3579 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "neon" },
3580 .{ .param_str = "V8ScV8ScV8ScV8ScV8Sci", .features = "neon" },
3581 .{ .param_str = "V8ScV8ScV8ScV8ScV8ScV8Sci", .features = "neon" },
3582 .{ .param_str = "V8ScV8ScV8ScV8ScV8ScV8ScV8Sci", .features = "neon" },
3583 .{ .param_str = "vv*V8ScV8Sci", .features = "neon" },
3584 .{ .param_str = "vv*V16ScV16Sci", .features = "neon" },
3585 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3586 .{ .param_str = "UWiWiWi", .features = "neon" },
3587 .{ .param_str = "UWiUWiUWi", .features = "neon" },
3588 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3589 .{ .param_str = "V8ScV8ScV8Sci", .features = "neon" },
3590 .{ .param_str = "ScScUc", .features = "neon" },
3591 .{ .param_str = "WiWiUWi", .features = "neon" },
3592 .{ .param_str = "ssUs", .features = "neon" },
3593 .{ .param_str = "V16ScV16ScV16Sci", .features = "neon" },
3594 .{ .param_str = "iiUi", .features = "neon" },
3595 .{ .param_str = "V8ScV8ScV8ScV8Sci", .features = "i8mm,neon" },
3596 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "i8mm,neon" },
3597 .{ .param_str = "V16ScV16ScV16ScV16Sci", .features = "i8mm,neon" },
3598 .{ .param_str = "vv*V8ScV8Sci", .features = "neon" },
3599 .{ .param_str = "vv*V16ScV16Sci", .features = "neon" },
3600 .{ .param_str = "V16ScV16ScV16ScIii", .features = "sha3,neon" },
3601 .{ .param_str = "vv*V8ScV8Sci", .features = "neon" },
3602 .{ .param_str = "vv*V16ScV16Sci", .features = "neon" },
3603 };
3604};
3605};
3606}
lib/compiler/aro/aro/Builtins/nvptx.zig+1904-1749
......@@ -117,15 +117,23 @@ pub const Tag = enum(u16) { __bmma_m8n8k128_ld_a_b1,
117117 __nvvm_add_rm_d,
118118 __nvvm_add_rm_f,
119119 __nvvm_add_rm_ftz_f,
120 __nvvm_add_rm_ftz_sat_f,
121 __nvvm_add_rm_sat_f,
120122 __nvvm_add_rn_d,
121123 __nvvm_add_rn_f,
122124 __nvvm_add_rn_ftz_f,
125 __nvvm_add_rn_ftz_sat_f,
126 __nvvm_add_rn_sat_f,
123127 __nvvm_add_rp_d,
124128 __nvvm_add_rp_f,
125129 __nvvm_add_rp_ftz_f,
130 __nvvm_add_rp_ftz_sat_f,
131 __nvvm_add_rp_sat_f,
126132 __nvvm_add_rz_d,
127133 __nvvm_add_rz_f,
128134 __nvvm_add_rz_ftz_f,
135 __nvvm_add_rz_ftz_sat_f,
136 __nvvm_add_rz_sat_f,
129137 __nvvm_atom_add_gen_d,
130138 __nvvm_atom_add_gen_f,
131139 __nvvm_atom_add_gen_i,
......@@ -328,8 +336,20 @@ pub const Tag = enum(u16) { __bmma_m8n8k128_ld_a_b1,
328336 __nvvm_f16x2_to_e5m2x2_rn_relu,
329337 __nvvm_f2bf16_rn,
330338 __nvvm_f2bf16_rn_relu,
339 __nvvm_f2bf16_rn_relu_satfinite,
340 __nvvm_f2bf16_rn_satfinite,
331341 __nvvm_f2bf16_rz,
332342 __nvvm_f2bf16_rz_relu,
343 __nvvm_f2bf16_rz_relu_satfinite,
344 __nvvm_f2bf16_rz_satfinite,
345 __nvvm_f2f16_rn,
346 __nvvm_f2f16_rn_relu,
347 __nvvm_f2f16_rn_relu_satfinite,
348 __nvvm_f2f16_rn_satfinite,
349 __nvvm_f2f16_rz,
350 __nvvm_f2f16_rz_relu,
351 __nvvm_f2f16_rz_relu_satfinite,
352 __nvvm_f2f16_rz_satfinite,
333353 __nvvm_f2h_rn,
334354 __nvvm_f2h_rn_ftz,
335355 __nvvm_f2i_rm,
......@@ -374,6 +394,16 @@ pub const Tag = enum(u16) { __bmma_m8n8k128_ld_a_b1,
374394 __nvvm_f2ull_rp_ftz,
375395 __nvvm_f2ull_rz,
376396 __nvvm_f2ull_rz_ftz,
397 __nvvm_f32x4_to_e2m1x4_rs_relu_satfinite,
398 __nvvm_f32x4_to_e2m1x4_rs_satfinite,
399 __nvvm_f32x4_to_e2m3x4_rs_relu_satfinite,
400 __nvvm_f32x4_to_e2m3x4_rs_satfinite,
401 __nvvm_f32x4_to_e3m2x4_rs_relu_satfinite,
402 __nvvm_f32x4_to_e3m2x4_rs_satfinite,
403 __nvvm_f32x4_to_e4m3x4_rs_relu_satfinite,
404 __nvvm_f32x4_to_e4m3x4_rs_satfinite,
405 __nvvm_f32x4_to_e5m2x4_rs_relu_satfinite,
406 __nvvm_f32x4_to_e5m2x4_rs_satfinite,
377407 __nvvm_fabs_d,
378408 __nvvm_fabs_f,
379409 __nvvm_fabs_f16,
......@@ -384,12 +414,28 @@ pub const Tag = enum(u16) { __bmma_m8n8k128_ld_a_b1,
384414 __nvvm_fence_sc_cluster,
385415 __nvvm_ff2bf16x2_rn,
386416 __nvvm_ff2bf16x2_rn_relu,
417 __nvvm_ff2bf16x2_rn_relu_satfinite,
418 __nvvm_ff2bf16x2_rn_satfinite,
419 __nvvm_ff2bf16x2_rs,
420 __nvvm_ff2bf16x2_rs_relu,
421 __nvvm_ff2bf16x2_rs_relu_satfinite,
422 __nvvm_ff2bf16x2_rs_satfinite,
387423 __nvvm_ff2bf16x2_rz,
388424 __nvvm_ff2bf16x2_rz_relu,
425 __nvvm_ff2bf16x2_rz_relu_satfinite,
426 __nvvm_ff2bf16x2_rz_satfinite,
389427 __nvvm_ff2f16x2_rn,
390428 __nvvm_ff2f16x2_rn_relu,
429 __nvvm_ff2f16x2_rn_relu_satfinite,
430 __nvvm_ff2f16x2_rn_satfinite,
431 __nvvm_ff2f16x2_rs,
432 __nvvm_ff2f16x2_rs_relu,
433 __nvvm_ff2f16x2_rs_relu_satfinite,
434 __nvvm_ff2f16x2_rs_satfinite,
391435 __nvvm_ff2f16x2_rz,
392436 __nvvm_ff2f16x2_rz_relu,
437 __nvvm_ff2f16x2_rz_relu_satfinite,
438 __nvvm_ff2f16x2_rz_satfinite,
393439 __nvvm_ff_to_e2m1x2_rn_relu_satfinite,
394440 __nvvm_ff_to_e2m1x2_rn_satfinite,
395441 __nvvm_ff_to_e2m3x2_rn_relu_satfinite,
......@@ -410,6 +456,8 @@ pub const Tag = enum(u16) { __bmma_m8n8k128_ld_a_b1,
410456 __nvvm_fma_rm_d,
411457 __nvvm_fma_rm_f,
412458 __nvvm_fma_rm_ftz_f,
459 __nvvm_fma_rm_ftz_sat_f,
460 __nvvm_fma_rm_sat_f,
413461 __nvvm_fma_rn_bf16,
414462 __nvvm_fma_rn_bf16x2,
415463 __nvvm_fma_rn_d,
......@@ -421,20 +469,26 @@ pub const Tag = enum(u16) { __bmma_m8n8k128_ld_a_b1,
421469 __nvvm_fma_rn_ftz_f16x2,
422470 __nvvm_fma_rn_ftz_relu_f16,
423471 __nvvm_fma_rn_ftz_relu_f16x2,
472 __nvvm_fma_rn_ftz_sat_f,
424473 __nvvm_fma_rn_ftz_sat_f16,
425474 __nvvm_fma_rn_ftz_sat_f16x2,
426475 __nvvm_fma_rn_relu_bf16,
427476 __nvvm_fma_rn_relu_bf16x2,
428477 __nvvm_fma_rn_relu_f16,
429478 __nvvm_fma_rn_relu_f16x2,
479 __nvvm_fma_rn_sat_f,
430480 __nvvm_fma_rn_sat_f16,
431481 __nvvm_fma_rn_sat_f16x2,
432482 __nvvm_fma_rp_d,
433483 __nvvm_fma_rp_f,
434484 __nvvm_fma_rp_ftz_f,
485 __nvvm_fma_rp_ftz_sat_f,
486 __nvvm_fma_rp_sat_f,
435487 __nvvm_fma_rz_d,
436488 __nvvm_fma_rz_f,
437489 __nvvm_fma_rz_ftz_f,
490 __nvvm_fma_rz_ftz_sat_f,
491 __nvvm_fma_rz_sat_f,
438492 __nvvm_fmax_bf16,
439493 __nvvm_fmax_bf16x2,
440494 __nvvm_fmax_d,
......@@ -871,7 +925,7 @@ pub const longest_name = 45;
871925/// If found, returns the index of the node within the `dafsa` array.
872926/// Otherwise, returns `null`.
873927pub fn findInList(first_child_index: u16, char: u8) ?u16 {
874 @setEvalBranchQuota(1614);
928 @setEvalBranchQuota(1722);
875929 var index = first_child_index;
876930 while (true) {
877931 if (dafsa[index].char == char) return index;
......@@ -966,14 +1020,14 @@ const Node = packed struct {
9661020
9671021const dafsa = [_]Node{
9681022 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
969 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 807, .child_index = 2 },
970 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 807, .child_index = 3 },
1023 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 861, .child_index = 2 },
1024 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 861, .child_index = 3 },
9711025 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 10 },
9721026 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 12 },
9731027 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 13 },
9741028 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 32, .child_index = 14 },
9751029 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 15 },
976 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 703, .child_index = 16 },
1030 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 757, .child_index = 16 },
9771031 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 17 },
9781032 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 18 },
9791033 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 19 },
......@@ -981,7 +1035,7 @@ const dafsa = [_]Node{
9811035 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 21 },
9821036 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 22 },
9831037 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 23 },
984 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 703, .child_index = 24 },
1038 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 757, .child_index = 24 },
9851039 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 25 },
9861040 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 26 },
9871041 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 27 },
......@@ -989,7 +1043,7 @@ const dafsa = [_]Node{
9891043 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 29 },
9901044 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 30 },
9911045 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 31 },
992 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 703, .child_index = 32 },
1046 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 757, .child_index = 32 },
9931047 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 33 },
9941048 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 34 },
9951049 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 35 },
......@@ -997,7 +1051,7 @@ const dafsa = [_]Node{
9971051 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 37 },
9981052 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 38 },
9991053 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 39 },
1000 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 703, .child_index = 42 },
1054 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 757, .child_index = 42 },
10011055 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 43 },
10021056 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 44 },
10031057 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 45 },
......@@ -1007,7 +1061,7 @@ const dafsa = [_]Node{
10071061 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 49 },
10081062 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 50 },
10091063 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 51 },
1010 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 703, .child_index = 52 },
1064 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 757, .child_index = 52 },
10111065 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 69 },
10121066 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 70 },
10131067 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 71 },
......@@ -1017,1435 +1071,1482 @@ const dafsa = [_]Node{
10171071 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 79 },
10181072 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 80 },
10191073 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 81 },
1020 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 123, .child_index = 82 },
1074 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 131, .child_index = 82 },
10211075 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 86 },
10221076 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 88 },
10231077 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 91 },
10241078 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 93 },
1025 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 188, .child_index = 98 },
1026 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 106 },
1027 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 107 },
1028 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 84, .child_index = 109 },
1029 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 44, .child_index = 113 },
1030 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 117 },
1031 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 119 },
1032 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 90, .child_index = 121 },
1033 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 37, .child_index = 125 },
1034 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 129 },
1035 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 130 },
1036 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 133 },
1037 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 134 },
1038 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 135 },
1039 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 136 },
1040 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 137 },
1041 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 138 },
1042 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 139 },
1043 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 140 },
1044 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 141 },
1045 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 142 },
1046 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 143 },
1047 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 144 },
1048 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 145 },
1049 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 146 },
1050 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 147 },
1051 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 148 },
1052 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 149 },
1053 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 150 },
1054 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 151 },
1055 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 152 },
1056 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 153 },
1057 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 154 },
1058 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 156 },
1059 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 157 },
1060 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 161 },
1061 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 162 },
1062 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 163 },
1063 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 164 },
1064 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 163 },
1065 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 165 },
1066 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 167 },
1067 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 48, .child_index = 168 },
1068 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 174 },
1069 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 175 },
1070 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 176 },
1071 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 178 },
1072 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 102, .child_index = 179 },
1073 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1074 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 182 },
1075 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 183 },
1076 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 185 },
1077 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 72, .child_index = 187 },
1078 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 189 },
1079 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 190 },
1080 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 191 },
1081 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 192 },
1082 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 194 },
1083 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 195 },
1084 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 196 },
1085 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 197 },
1086 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 198 },
1087 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 199 },
1088 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 200 },
1089 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 201 },
1090 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 70, .child_index = 202 },
1091 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 205 },
1092 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 206 },
1093 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 207 },
1094 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 209 },
1095 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 210 },
1096 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 211 },
1097 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 212 },
1098 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 213 },
1099 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 190 },
1100 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 214 },
1101 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 215 },
1102 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 216 },
1103 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 217 },
1104 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 218 },
1105 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 219 },
1106 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 220 },
1107 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 221 },
1108 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 222 },
1109 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 223 },
1110 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 224 },
1111 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 225 },
1112 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 227 },
1113 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 228 },
1114 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 229 },
1115 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 230 },
1116 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 231 },
1117 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 232 },
1118 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 233 },
1119 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 234 },
1120 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 237 },
1121 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 238 },
1122 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 239 },
1123 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 240 },
1124 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 241 },
1125 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 242 },
1126 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 243 },
1127 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 244 },
1128 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 245 },
1129 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 247 },
1130 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 248 },
1131 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 250 },
1132 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 251 },
1133 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 252 },
1134 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 253 },
1135 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 254 },
1136 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 255 },
1137 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 256 },
1138 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 242 },
1139 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 257 },
1140 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 258 },
1141 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 259 },
1142 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 261 },
1143 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 262 },
1144 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 263 },
1145 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 265 },
1146 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 266 },
1147 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 65, .child_index = 267 },
1148 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 269 },
1079 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 234, .child_index = 98 },
1080 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 107 },
1081 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 108 },
1082 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 84, .child_index = 110 },
1083 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 44, .child_index = 114 },
1084 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 118 },
1085 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 120 },
1086 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 90, .child_index = 122 },
1087 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 37, .child_index = 126 },
1088 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 130 },
1089 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 131 },
1090 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 134 },
1091 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 135 },
1092 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 136 },
1093 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 137 },
1094 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 138 },
1095 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 139 },
1096 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 140 },
1097 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 141 },
1098 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 142 },
1099 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 143 },
1100 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 144 },
1101 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 145 },
1102 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 146 },
1103 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 147 },
1104 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 148 },
1105 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 149 },
1106 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 150 },
1107 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 151 },
1108 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 152 },
1109 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 153 },
1110 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 154 },
1111 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 155 },
1112 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 157 },
1113 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 158 },
1114 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 162 },
1115 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 163 },
1116 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 164 },
1117 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 165 },
1118 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 164 },
1119 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 166 },
1120 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 168 },
1121 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 60, .child_index = 169 },
1122 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 176 },
1123 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 177 },
1124 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 178 },
1125 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 38, .child_index = 179 },
1126 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 181 },
1127 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 110, .child_index = 182 },
1128 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 184 },
1129 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 185 },
1130 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 186 },
1131 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 188 },
1132 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 72, .child_index = 190 },
1133 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 192 },
1134 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 193 },
1135 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 194 },
1136 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 195 },
1137 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 197 },
1138 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 198 },
1139 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 199 },
1140 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 200 },
1141 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 201 },
1142 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 202 },
1143 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 203 },
1144 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 204 },
1145 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 70, .child_index = 205 },
1146 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 208 },
1147 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 209 },
1148 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 210 },
1149 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 212 },
1150 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 213 },
1151 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 214 },
1152 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 215 },
1153 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 216 },
1154 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 193 },
1155 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 217 },
1156 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 218 },
1157 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 219 },
1158 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 220 },
1159 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 221 },
1160 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 222 },
1161 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 223 },
1162 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 224 },
1163 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 225 },
1164 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 226 },
1165 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 227 },
1166 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 228 },
1167 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 230 },
1168 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 231 },
1169 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 232 },
1170 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 233 },
1171 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 234 },
1172 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 235 },
1173 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 236 },
1174 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 237 },
1175 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 240 },
1176 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 241 },
1177 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 242 },
1178 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 243 },
1179 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 244 },
1180 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 245 },
1181 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 246 },
1182 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 247 },
1183 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 248 },
1184 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 250 },
1185 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 251 },
1186 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 253 },
1187 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 254 },
1188 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 255 },
1189 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
1190 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 257 },
1191 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 258 },
1192 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 259 },
1193 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 260 },
1194 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 245 },
1195 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 261 },
1196 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 262 },
1197 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 263 },
1198 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 265 },
1199 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 266 },
1200 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 267 },
1201 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 268 },
1202 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 270 },
1203 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 271 },
1204 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 73, .child_index = 272 },
1205 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 274 },
11491206 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1150 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 270 },
1151 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 271 },
1152 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 271 },
1153 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 272 },
1154 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 273 },
1155 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 274 },
1156 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 274 },
1157 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 275 },
1158 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 183 },
1159 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 276 },
1160 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 277 },
1161 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 278 },
1162 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 279 },
1163 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 280 },
1164 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 283 },
1165 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 286 },
1166 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 230 },
1167 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 287 },
1168 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 253 },
1169 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 288 },
1170 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 53, .child_index = 289 },
1171 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 290 },
1172 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 291 },
1173 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 292 },
1174 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 293 },
1175 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 294 },
1176 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 295 },
1177 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 296 },
1178 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 240 },
1179 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 297 },
1180 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 298 },
1181 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 299 },
1182 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 190 },
1183 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 300 },
1184 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 301 },
1185 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 302 },
1186 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 303 },
1187 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 304 },
1188 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 305 },
1189 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 306 },
1190 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 307 },
1191 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 308 },
1192 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 309 },
1193 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 310 },
1194 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 311 },
1195 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 312 },
1196 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 313 },
1197 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 314 },
1198 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 315 },
1199 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 316 },
1200 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 317 },
1201 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 318 },
1202 .{ .char = '0', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 319 },
1203 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 320 },
1204 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 322 },
1205 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 323 },
1206 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 324 },
1207 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 325 },
1208 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 326 },
1209 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 327 },
1210 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 328 },
1211 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 329 },
1212 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 271 },
1213 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 271 },
1214 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 244 },
1215 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 332 },
1216 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 334 },
1217 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 334 },
1218 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 334 },
1219 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 334 },
1220 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 335 },
1207 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 275 },
1208 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 276 },
1209 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 276 },
1210 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 277 },
1211 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 278 },
1212 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 279 },
1213 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 279 },
1214 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 280 },
1215 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 186 },
1216 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 281 },
1217 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 282 },
1218 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 283 },
1219 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 284 },
1220 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 285 },
1221 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 288 },
1222 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 291 },
1223 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 233 },
1224 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 292 },
1225 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
1226 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 293 },
1227 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 53, .child_index = 294 },
1228 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 295 },
1229 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 296 },
1230 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 297 },
1231 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 298 },
1232 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 299 },
1233 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 300 },
1234 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 301 },
1235 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 243 },
1236 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 302 },
1237 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 303 },
1238 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 304 },
1239 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 193 },
1240 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 305 },
1241 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 306 },
1242 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 307 },
1243 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 308 },
1244 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 309 },
1245 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 310 },
1246 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 311 },
1247 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 312 },
1248 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 313 },
1249 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 314 },
1250 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 315 },
1251 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 316 },
1252 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 317 },
1253 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 318 },
1254 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 319 },
1255 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 320 },
1256 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 321 },
1257 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 322 },
1258 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 323 },
1259 .{ .char = '0', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 324 },
1260 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 325 },
1261 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 327 },
1262 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 328 },
1263 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 329 },
1264 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 330 },
1265 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 331 },
1266 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 332 },
1267 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 333 },
1268 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 334 },
1269 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 276 },
1270 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 276 },
1271 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 247 },
1272 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 337 },
1273 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 339 },
1274 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 339 },
1275 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 339 },
1276 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 339 },
1277 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 340 },
12211278 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1222 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 336 },
1223 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 337 },
1224 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 338 },
1225 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 242 },
1226 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 339 },
1227 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 242 },
1228 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 257 },
1229 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 340 },
1230 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 341 },
1231 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 342 },
1232 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 343 },
1233 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 344 },
1234 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 345 },
1235 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 346 },
1236 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 347 },
1237 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 347 },
1238 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 348 },
1239 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 349 },
1240 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
1241 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 351 },
1242 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 352 },
1243 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 360 },
1244 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 361 },
1245 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 362 },
1246 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 363 },
1247 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 364 },
1248 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 365 },
1249 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 366 },
1250 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 367 },
1251 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 368 },
1252 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 317 },
1253 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 369 },
1254 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
1255 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 371 },
1256 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 372 },
1257 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 374 },
1258 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 375 },
1259 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 376 },
1260 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 377 },
1261 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 378 },
1262 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 379 },
1263 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 381 },
1264 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 382 },
1265 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 247 },
1266 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 383 },
1267 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 384 },
1268 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 385 },
1269 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 386 },
1270 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 387 },
1271 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 388 },
1272 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 389 },
1273 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 390 },
1274 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 391 },
1275 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 391 },
1276 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 392 },
1277 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 393 },
1278 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 393 },
1279 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 394 },
1280 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 395 },
1281 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 398 },
1282 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 399 },
1283 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 400 },
1284 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 401 },
1285 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 402 },
1286 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 406 },
1287 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 414 },
1288 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 417 },
1289 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 418 },
1290 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 419 },
1291 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 420 },
1279 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 341 },
1280 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 259 },
1281 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 342 },
1282 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 343 },
1283 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 245 },
1284 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 344 },
1285 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 245 },
1286 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 261 },
1287 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 345 },
1288 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 346 },
1289 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 347 },
1290 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 348 },
1291 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 349 },
1292 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 350 },
1293 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 351 },
1294 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 352 },
1295 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 353 },
1296 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 353 },
1297 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 354 },
1298 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 355 },
1299 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 356 },
1300 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 357 },
1301 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 358 },
1302 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 366 },
1303 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 367 },
1304 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 368 },
1305 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 369 },
1306 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 370 },
1307 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 371 },
1308 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 372 },
1309 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 373 },
1310 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 374 },
1311 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 375 },
1312 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 376 },
1313 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 377 },
1314 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 378 },
1315 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 379 },
1316 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 381 },
1317 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 382 },
1318 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 383 },
1319 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 384 },
1320 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 385 },
1321 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 386 },
1322 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 388 },
1323 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 389 },
1324 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 250 },
1325 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 390 },
1326 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 391 },
1327 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 392 },
1328 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 393 },
1329 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 394 },
1330 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 395 },
1331 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 396 },
1332 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 397 },
1333 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 398 },
1334 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 398 },
1335 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 399 },
1336 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 400 },
1337 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 400 },
1338 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 401 },
1339 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 402 },
1340 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 405 },
1341 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 406 },
1342 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 407 },
1343 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 408 },
1344 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 409 },
1345 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 413 },
12921346 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 421 },
1293 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 423 },
1294 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 424 },
1295 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 425 },
1296 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 426 },
1297 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 430 },
1298 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 431 },
1299 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 432 },
1300 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 424 },
1301 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 402 },
1302 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 436 },
1303 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 437 },
1304 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 438 },
1305 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 439 },
1306 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 440 },
1307 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 441 },
1308 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 442 },
1309 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 444 },
1310 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 343 },
1311 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 445 },
1312 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 446 },
1313 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 324 },
1314 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 447 },
1315 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 451 },
1316 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 456 },
1317 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 432 },
1318 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 457 },
1319 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 458 },
1320 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 459 },
1321 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 461 },
1322 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 459 },
1323 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 461 },
1324 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 459 },
1325 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 462 },
1326 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 464 },
1327 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 467 },
1328 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 471 },
1329 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 472 },
1330 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
1331 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 474 },
1332 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 475 },
1333 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 476 },
1334 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 477 },
1335 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 253 },
1336 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 294 },
1337 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 478 },
1338 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 479 },
1339 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 480 },
1340 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 481 },
1341 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 402 },
1342 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 482 },
1343 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 483 },
1344 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 484 },
1345 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 324 },
1346 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 275 },
1347 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 424 },
1348 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 425 },
1349 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 426 },
1350 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 427 },
1351 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 428 },
1352 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 430 },
1353 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 431 },
1354 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 432 },
1355 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 433 },
1356 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 437 },
1357 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 438 },
1358 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 439 },
1359 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 431 },
1360 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 443 },
1361 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 447 },
1362 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 448 },
1363 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 449 },
1364 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 450 },
1365 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 451 },
1366 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 452 },
1367 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 453 },
1368 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 454 },
1369 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 456 },
1370 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 349 },
1371 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 457 },
1372 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 458 },
1373 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 329 },
1374 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 459 },
1375 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 463 },
1376 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 468 },
1377 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 439 },
1378 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 469 },
1379 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 470 },
1380 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 471 },
1381 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 473 },
1382 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 471 },
1383 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 473 },
1384 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 471 },
1385 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 474 },
1386 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 476 },
1387 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 479 },
1388 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 483 },
1389 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 484 },
1390 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 485 },
1391 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 486 },
1392 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 487 },
1393 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 488 },
1394 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 489 },
1395 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
1396 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 299 },
1397 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 443 },
1398 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 490 },
1399 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 491 },
1400 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 492 },
1401 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 493 },
1402 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 443 },
1403 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 494 },
1404 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 495 },
1405 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 496 },
1406 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 329 },
1407 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 280 },
13471408 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1348 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 430 },
1349 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 485 },
1350 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 486 },
1351 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 324 },
1352 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 491 },
1353 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 492 },
1354 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1355 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 495 },
1356 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 496 },
1357 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 497 },
1358 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 391 },
1359 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 498 },
1360 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 393 },
1361 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 499 },
1362 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 500 },
1363 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 501 },
1364 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 502 },
1365 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 503 },
1366 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 504 },
1367 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 505 },
1368 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 506 },
1369 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
1370 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 324 },
1371 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 324 },
1372 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 324 },
1373 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 324 },
1374 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 508 },
1375 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 39, .child_index = 510 },
1376 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
1377 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 513 },
1378 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 514 },
1379 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 516 },
1380 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 38, .child_index = 517 },
1381 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 519 },
1382 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 521 },
1383 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 522 },
1384 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 523 },
1385 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 524 },
1386 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 525 },
1387 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 526 },
1388 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 527 },
1409 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 437 },
1410 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 497 },
1411 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 498 },
1412 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 329 },
1413 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 503 },
1414 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 504 },
1415 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 184 },
1416 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 507 },
1417 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 508 },
1418 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 509 },
1419 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 398 },
1420 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 510 },
1421 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 400 },
1422 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 511 },
1423 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 512 },
1424 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 513 },
1425 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 514 },
1426 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 515 },
1427 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 516 },
1428 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 517 },
1429 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 518 },
1430 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 519 },
1431 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 520 },
1432 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 520 },
1433 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 520 },
1434 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 520 },
1435 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 521 },
1436 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 39, .child_index = 523 },
1437 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 525 },
1438 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 526 },
1439 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 527 },
1440 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 529 },
1441 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 38, .child_index = 530 },
1442 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 532 },
1443 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 534 },
1444 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 535 },
1445 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 536 },
1446 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 537 },
1447 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 538 },
1448 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 539 },
1449 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 540 },
13891450 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1390 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 528 },
1391 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 529 },
1392 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 530 },
1393 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 531 },
1394 .{ .char = 'm', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 532 },
1395 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 532 },
1396 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 532 },
1397 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 532 },
1451 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 541 },
1452 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 542 },
1453 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 543 },
1454 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 544 },
1455 .{ .char = 'm', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 545 },
1456 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 545 },
1457 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 545 },
1458 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 545 },
13981459 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
13991460 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
14001461 .{ .char = 'm', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
14011462 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
14021463 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
14031464 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1404 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 533 },
1405 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 534 },
1406 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 535 },
1407 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 536 },
1408 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 532 },
1409 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 537 },
1465 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 329 },
1466 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 329 },
1467 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 329 },
1468 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 329 },
1469 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1470 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 547 },
1471 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 548 },
1472 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 549 },
1473 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 545 },
1474 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 550 },
1475 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 551 },
14101476 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1411 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 538 },
1412 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 540 },
1413 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 541 },
1414 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 542 },
1415 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 324 },
1416 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 19, .child_index = 544 },
1417 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 324 },
1418 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 324 },
1419 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 400 },
1477 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 6, .child_index = 552 },
1478 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 554 },
1479 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 555 },
1480 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 556 },
1481 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 520 },
1482 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 558 },
1483 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 520 },
1484 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 520 },
1485 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 407 },
14201486 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1421 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 19, .child_index = 545 },
1422 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 547 },
1423 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 548 },
1424 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 549 },
1425 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 550 },
1426 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 551 },
1487 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 19, .child_index = 559 },
1488 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 561 },
1489 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 562 },
1490 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 563 },
1491 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 564 },
1492 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 565 },
14271493 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
14281494 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
14291495 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
14301496 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1431 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 461 },
1497 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 473 },
14321498 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
14331499 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1434 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 459 },
1435 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 459 },
1436 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 459 },
1437 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 462 },
1438 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 459 },
1439 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 552 },
1440 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 553 },
1441 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 554 },
1442 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 555 },
1443 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 556 },
1444 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 557 },
1500 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 471 },
1501 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 471 },
1502 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 471 },
1503 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 474 },
1504 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 471 },
1505 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 566 },
1506 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 567 },
1507 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 568 },
1508 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 569 },
1509 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 570 },
1510 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 571 },
14451511 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1446 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 558 },
1447 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 561 },
1448 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
1449 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 563 },
1450 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 564 },
1451 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 565 },
1452 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 253 },
1453 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 566 },
1454 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 567 },
1455 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 568 },
1456 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 569 },
1457 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 570 },
1458 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 571 },
1459 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 572 },
1460 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 573 },
1461 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 575 },
1462 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 576 },
1463 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 577 },
1464 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 578 },
1465 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 581 },
1466 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 584 },
1467 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 585 },
1468 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 586 },
1469 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 587 },
1470 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 588 },
1471 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 589 },
1472 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 590 },
1473 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 591 },
1474 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 592 },
1475 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 593 },
1476 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 594 },
1477 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 595 },
1478 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 596 },
1479 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 597 },
1480 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 598 },
1481 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 598 },
1482 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 599 },
1483 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 600 },
1484 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 601 },
1485 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 602 },
1486 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 603 },
1487 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 604 },
1488 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 516 },
1489 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 605 },
1512 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 572 },
1513 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 575 },
1514 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 576 },
1515 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 577 },
1516 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 578 },
1517 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 579 },
1518 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
1519 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 580 },
1520 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 581 },
1521 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 582 },
1522 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 583 },
1523 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 584 },
1524 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 585 },
1525 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 586 },
1526 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 587 },
1527 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 589 },
1528 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 590 },
1529 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 591 },
1530 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 592 },
1531 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 595 },
1532 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 598 },
1533 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 599 },
1534 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 600 },
1535 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 601 },
1536 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 602 },
1537 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 603 },
1538 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 604 },
1539 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 605 },
1540 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 606 },
1541 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 607 },
1542 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 608 },
1543 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 611 },
1544 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 612 },
1545 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 613 },
1546 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 614 },
1547 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 615 },
1548 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 615 },
1549 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 616 },
1550 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 617 },
1551 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 618 },
1552 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 619 },
1553 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 620 },
1554 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 621 },
1555 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 529 },
1556 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 622 },
14901557 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1491 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 606 },
1492 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 607 },
1493 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 608 },
1494 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 609 },
1495 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 610 },
1496 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 611 },
1497 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 612 },
1498 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 613 },
1499 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 614 },
1500 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 615 },
1501 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 616 },
1502 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 617 },
1503 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 618 },
1504 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 619 },
1505 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 620 },
1506 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 592 },
1507 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 621 },
1508 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 622 },
1509 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 623 },
1510 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 624 },
1511 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 628 },
1512 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 19, .child_index = 629 },
1513 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 592 },
1514 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 634 },
1515 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 635 },
1516 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 636 },
1517 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 637 },
1518 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 638 },
1519 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 639 },
1520 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 640 },
1521 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 605 },
1522 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 641 },
1523 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 642 },
1524 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 644 },
1525 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 645 },
1558 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 623 },
1559 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 624 },
1560 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 625 },
1561 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 626 },
1562 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 627 },
1563 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 628 },
1564 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 629 },
1565 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 630 },
1566 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 631 },
1567 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 632 },
1568 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 633 },
1569 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 634 },
1570 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 635 },
1571 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 636 },
1572 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 638 },
1573 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 639 },
1574 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 606 },
1575 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 640 },
1576 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 641 },
1577 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 642 },
1578 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 643 },
1579 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 647 },
1580 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 21, .child_index = 648 },
1581 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 606 },
1582 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 653 },
1583 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 654 },
1584 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 655 },
1585 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 656 },
1586 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 657 },
1587 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 658 },
1588 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 659 },
1589 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 622 },
1590 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 660 },
1591 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 661 },
1592 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 663 },
1593 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 664 },
15261594 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1527 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 648 },
1528 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 649 },
1529 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 651 },
1530 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 652 },
1531 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 653 },
1532 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 654 },
1533 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 655 },
1534 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 656 },
1535 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 657 },
1536 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 658 },
1537 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 659 },
1538 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 660 },
1539 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 661 },
1540 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 662 },
1541 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 663 },
1542 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 664 },
1543 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 665 },
1544 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 666 },
1545 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 667 },
1546 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 668 },
1547 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 669 },
1548 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 670 },
1549 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 671 },
1550 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 672 },
1551 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 673 },
1552 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 674 },
1553 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 675 },
1554 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 676 },
1555 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 679 },
1556 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 680 },
1557 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 681 },
1558 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 682 },
1559 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 683 },
1560 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 684 },
1561 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 685 },
1562 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 686 },
1563 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 601 },
1564 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 687 },
1565 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 688 },
1566 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 689 },
1567 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 690 },
1568 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 690 },
1569 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 691 },
1570 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 601 },
1571 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 688 },
1572 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 692 },
1595 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 667 },
1596 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 668 },
1597 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 670 },
1598 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 671 },
1599 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 672 },
1600 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 673 },
1601 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 674 },
1602 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 675 },
1603 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 676 },
1604 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 677 },
1605 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 678 },
1606 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 679 },
1607 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 680 },
1608 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 681 },
1609 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 682 },
1610 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 683 },
1611 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 684 },
1612 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 685 },
1613 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 686 },
1614 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 687 },
1615 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 688 },
1616 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 689 },
1617 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 690 },
1618 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 691 },
1619 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 692 },
1620 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 693 },
1621 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 694 },
1622 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 695 },
1623 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 698 },
1624 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 699 },
1625 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 700 },
1626 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 701 },
1627 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 702 },
1628 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 703 },
1629 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 704 },
1630 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1631 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 705 },
1632 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 706 },
1633 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 707 },
1634 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 618 },
1635 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 708 },
1636 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 709 },
1637 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
1638 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 711 },
1639 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 711 },
1640 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 712 },
1641 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 618 },
1642 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 709 },
1643 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 713 },
15731644 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1574 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 607 },
1645 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 624 },
15751646 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1576 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
1577 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 694 },
1578 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 696 },
1579 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 697 },
1580 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 698 },
1581 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 699 },
1582 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 700 },
1583 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 701 },
1584 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 702 },
1585 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 703 },
1586 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 704 },
1587 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 705 },
1588 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 707 },
1589 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 709 },
1590 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
1591 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 536 },
1592 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 711 },
1593 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 712 },
1594 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 713 },
1595 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 714 },
1596 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 715 },
1597 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 400 },
1647 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 714 },
1648 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 715 },
1649 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 717 },
1650 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 718 },
1651 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 719 },
1652 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 720 },
1653 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 721 },
1654 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 722 },
1655 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 723 },
1656 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 724 },
1657 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 725 },
1658 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 726 },
1659 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 726 },
1660 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 727 },
1661 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 729 },
1662 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
1663 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 731 },
1664 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 732 },
1665 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 733 },
1666 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 734 },
1667 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 735 },
1668 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 736 },
1669 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 737 },
1670 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 407 },
15981671 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1599 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 10, .child_index = 716 },
1600 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 718 },
1601 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 719 },
1602 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 720 },
1603 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 721 },
1604 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 722 },
1605 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 723 },
1606 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 724 },
1607 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 725 },
1608 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 726 },
1609 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 727 },
1610 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 728 },
1611 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 729 },
1612 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 730 },
1613 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 731 },
1614 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 648 },
1615 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 732 },
1672 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 11, .child_index = 738 },
1673 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 740 },
1674 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 741 },
1675 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 742 },
1676 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 743 },
1677 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 744 },
1678 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 745 },
1679 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 746 },
1680 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 747 },
1681 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 748 },
1682 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 749 },
1683 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 750 },
1684 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 751 },
1685 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 752 },
1686 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 753 },
1687 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 667 },
1688 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 754 },
16161689 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
16171690 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1618 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 648 },
1619 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 733 },
1620 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 734 },
1621 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 735 },
1622 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 736 },
1623 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 737 },
1624 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 324 },
1625 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 738 },
1626 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 739 },
1627 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 661 },
1628 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 740 },
1629 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 741 },
1630 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 743 },
1631 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 744 },
1632 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 744 },
1633 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 745 },
1634 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 744 },
1635 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 746 },
1636 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 749 },
1637 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 750 },
1638 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 751 },
1639 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 752 },
1640 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 753 },
1641 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 754 },
1642 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 755 },
1643 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 758 },
1644 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 761 },
1645 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 762 },
1646 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 763 },
1647 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 764 },
1648 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 765 },
1649 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 765 },
1650 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 766 },
1651 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 767 },
1652 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 768 },
1653 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 769 },
1654 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 770 },
1655 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 771 },
1656 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 772 },
1657 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 779 },
1658 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 780 },
1659 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 781 },
1660 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 601 },
1661 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 782 },
1662 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 783 },
1663 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 784 },
1664 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 785 },
1665 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 786 },
1666 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 787 },
1667 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 789 },
1668 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 790 },
1669 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 793 },
1670 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 794 },
1671 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 795 },
1672 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 796 },
1673 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 797 },
1674 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 797 },
1675 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 798 },
1676 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 800 },
1677 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 801 },
1678 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 802 },
1679 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 803 },
1680 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 805 },
1681 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 806 },
1682 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 807 },
1683 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 808 },
1684 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 592 },
1685 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 809 },
1686 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 810 },
1687 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 811 },
1688 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 812 },
1689 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 816 },
1690 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 819 },
1691 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 820 },
1692 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 821 },
1693 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 822 },
1694 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 826 },
1695 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 827 },
1696 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 828 },
1697 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 829 },
1698 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 830 },
1699 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 834 },
1700 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1691 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 667 },
1692 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 755 },
1693 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 756 },
1694 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 757 },
1695 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 758 },
1696 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 759 },
1697 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 329 },
1698 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 760 },
1699 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 761 },
1700 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 680 },
1701 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 762 },
1702 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 763 },
1703 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 765 },
1704 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 766 },
1705 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 766 },
1706 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 767 },
1707 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 766 },
1708 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 768 },
1709 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 771 },
1710 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 772 },
1711 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 773 },
1712 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 774 },
1713 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 775 },
1714 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 776 },
1715 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 777 },
1716 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 780 },
1717 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 783 },
1718 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 784 },
1719 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 785 },
1720 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 786 },
1721 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 787 },
1722 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 787 },
1723 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 788 },
1724 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 789 },
1725 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 790 },
1726 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 791 },
1727 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 792 },
1728 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 793 },
1729 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 794 },
1730 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 795 },
1731 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 35, .child_index = 796 },
1732 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 803 },
1733 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 804 },
1734 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 805 },
1735 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 618 },
1736 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 806 },
1737 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 807 },
1738 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 808 },
1739 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 809 },
1740 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
1741 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 811 },
1742 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 813 },
1743 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 814 },
1744 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 817 },
1745 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 818 },
1746 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 819 },
1747 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 820 },
1748 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 821 },
1749 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 823 },
1750 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 726 },
1751 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 825 },
1752 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 826 },
1753 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 827 },
1754 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 828 },
1755 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 829 },
1756 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 831 },
1757 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 832 },
1758 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 833 },
1759 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 834 },
1760 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 606 },
1761 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 835 },
1762 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 836 },
1763 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 837 },
1764 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 838 },
1765 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 842 },
1766 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 845 },
1767 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 846 },
1768 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 847 },
1769 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 848 },
1770 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 852 },
1771 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 853 },
1772 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 854 },
1773 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 855 },
1774 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 856 },
1775 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 860 },
1776 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 184 },
17011777 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1702 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
1703 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 835 },
1704 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 836 },
1705 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 837 },
1706 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 661 },
1707 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 661 },
1708 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 838 },
1709 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 839 },
1710 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 839 },
1711 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 840 },
1712 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 782 },
1713 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 841 },
1714 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 842 },
1715 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 843 },
1716 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 763 },
1717 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 844 },
1718 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 845 },
1719 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 846 },
1720 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 847 },
1721 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 850 },
1722 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 851 },
1723 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 852 },
1724 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 853 },
1725 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 854 },
1726 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 855 },
1727 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 856 },
1728 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 763 },
1729 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 857 },
1730 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 858 },
1731 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 859 },
1732 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 765 },
1733 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 860 },
1734 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 861 },
1735 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 862 },
1778 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 519 },
1779 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 861 },
1780 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 862 },
1781 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 863 },
1782 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 680 },
1783 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 680 },
1784 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 864 },
1785 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 865 },
1786 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 865 },
1787 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 866 },
1788 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 806 },
1789 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 867 },
1790 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 868 },
1791 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 869 },
1792 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 785 },
1793 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 870 },
1794 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 871 },
1795 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 872 },
1796 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 873 },
1797 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 876 },
1798 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 877 },
1799 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 878 },
1800 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 879 },
1801 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 880 },
1802 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 881 },
1803 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 882 },
1804 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 785 },
1805 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 883 },
1806 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 884 },
1807 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 885 },
1808 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 787 },
1809 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 886 },
1810 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 887 },
1811 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 888 },
17361812 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
17371813 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1738 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 863 },
1739 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 864 },
1740 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 508 },
1741 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 865 },
1742 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
1743 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 513 },
1744 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 514 },
1745 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 516 },
1746 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 519 },
1747 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 866 },
1748 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 867 },
1749 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 868 },
1750 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 417 },
1751 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 869 },
1752 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 870 },
1753 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 871 },
1814 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 889 },
1815 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 718 },
1816 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 890 },
1817 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 891 },
1818 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 521 },
1819 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 892 },
1820 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 525 },
1821 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 526 },
1822 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 527 },
1823 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 529 },
1824 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 532 },
1825 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 893 },
1826 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 894 },
1827 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 895 },
1828 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 424 },
1829 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 896 },
1830 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 897 },
1831 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 898 },
17541832 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1755 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 872 },
1756 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 873 },
1757 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 874 },
1758 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 875 },
1759 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 878 },
1760 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 879 },
1833 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 899 },
1834 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 900 },
1835 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 901 },
1836 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 902 },
1837 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 905 },
1838 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 906 },
17611839 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1762 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 880 },
1763 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 881 },
1764 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 882 },
1765 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 884 },
1766 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 885 },
1767 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 887 },
1768 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 885 },
1769 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 888 },
1770 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 889 },
1771 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 890 },
1772 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 890 },
1773 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 890 },
1774 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 891 },
1775 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 891 },
1776 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 892 },
1777 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 893 },
1778 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 894 },
1779 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 895 },
1780 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 400 },
1781 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 888 },
1782 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 896 },
1783 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 897 },
1784 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 400 },
1785 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 888 },
1786 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 548 },
1787 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 898 },
1788 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 362 },
1789 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
1790 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 900 },
1791 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 901 },
1792 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 902 },
1793 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 903 },
1794 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 324 },
1795 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 904 },
1796 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 905 },
1797 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 906 },
1798 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 907 },
1799 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 908 },
1800 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 909 },
1801 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 910 },
1840 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 907 },
1841 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 908 },
1842 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 909 },
1843 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 911 },
1844 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 912 },
1845 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 821 },
1846 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 913 },
1847 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 914 },
1848 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 918 },
1849 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 919 },
1850 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 920 },
1851 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 923 },
1852 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 923 },
1853 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 923 },
1854 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 924 },
1855 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 924 },
1856 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 925 },
1857 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 926 },
1858 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 927 },
1859 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
1860 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 407 },
1861 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 918 },
1862 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 928 },
1863 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 929 },
1864 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 407 },
1865 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 918 },
1866 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 562 },
1867 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 930 },
1868 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 368 },
1869 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 931 },
1870 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 932 },
1871 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 933 },
1872 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 934 },
1873 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 935 },
1874 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 329 },
1875 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 936 },
1876 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 937 },
1877 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 938 },
1878 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 939 },
1879 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 940 },
1880 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 941 },
1881 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 942 },
18021882 .{ .char = 'a', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1803 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 911 },
1804 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 912 },
1805 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 913 },
1806 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 914 },
1807 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 768 },
1808 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 918 },
1809 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 919 },
1810 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 920 },
1811 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 921 },
1812 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 922 },
1813 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 923 },
1814 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 924 },
1883 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 943 },
1884 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 944 },
1885 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 945 },
1886 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 946 },
1887 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 790 },
1888 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 950 },
1889 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 951 },
1890 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 952 },
1891 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 953 },
1892 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 954 },
1893 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 955 },
1894 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 956 },
18151895 .{ .char = 'a', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
18161896 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
18171897 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1818 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 925 },
1819 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 850 },
1820 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 926 },
1821 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 927 },
1822 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 928 },
1823 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 929 },
1824 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 930 },
1825 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 931 },
1826 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 934 },
1827 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 935 },
1828 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 936 },
1829 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 937 },
1830 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 938 },
1831 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 939 },
1832 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 940 },
1833 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 596 },
1834 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 941 },
1835 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 942 },
1836 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 943 },
1837 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 944 },
1838 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 945 },
1839 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 628 },
1840 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 946 },
1841 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 947 },
1842 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 948 },
1843 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 949 },
1844 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 950 },
1845 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 951 },
1846 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 952 },
1847 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 953 },
1848 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 954 },
1849 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 955 },
1850 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 713 },
1851 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 714 },
1852 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 957 },
1853 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 958 },
1854 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 959 },
1855 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 960 },
1856 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 592 },
1857 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 961 },
1858 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 962 },
1859 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 963 },
1860 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 964 },
1861 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 965 },
1862 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 968 },
1863 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 400 },
1864 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 969 },
1865 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 970 },
1866 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 971 },
1867 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
1868 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 972 },
1869 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 973 },
1870 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
1871 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 975 },
1872 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
1873 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 976 },
1874 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 977 },
1875 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 978 },
1876 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 979 },
1877 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 981 },
1878 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 982 },
1879 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 983 },
1880 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 984 },
1881 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 985 },
1882 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 567 },
1883 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 568 },
1884 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 569 },
1885 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 571 },
1886 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 991 },
1887 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 744 },
1888 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 992 },
1889 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 995 },
1890 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 996 },
1891 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 997 },
1892 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 998 },
1893 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 999 },
1894 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1000 },
1895 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1003 },
1896 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1004 },
1897 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1005 },
1898 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1008 },
1899 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 934 },
1900 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 934 },
1898 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 957 },
1899 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 876 },
1900 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 958 },
1901 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 959 },
1902 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 960 },
1903 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 961 },
1904 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 962 },
1905 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 963 },
1906 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 966 },
1907 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 967 },
1908 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 968 },
1909 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 969 },
1910 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 970 },
1911 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 971 },
1912 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 973 },
1913 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 974 },
1914 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 613 },
1915 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 975 },
1916 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 976 },
1917 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 977 },
1918 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 978 },
1919 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 979 },
1920 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 647 },
1921 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
1922 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 981 },
1923 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 982 },
1924 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 983 },
1925 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 984 },
1926 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 985 },
1927 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 986 },
1928 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 987 },
1929 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 988 },
1930 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 989 },
1931 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 735 },
1932 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 736 },
1933 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 991 },
1934 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 992 },
1935 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
1936 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 994 },
1937 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 995 },
1938 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 996 },
1939 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 995 },
1940 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 606 },
1941 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 997 },
1942 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 726 },
1943 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 726 },
1944 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 726 },
1945 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 998 },
1946 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 999 },
1947 .{ .char = '0', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1000 },
1948 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1001 },
1949 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1004 },
1950 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1005 },
1951 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1006 },
1952 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1007 },
1953 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 731 },
1954 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1008 },
1955 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1009 },
1956 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1010 },
1957 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1011 },
1958 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 731 },
1959 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1012 },
1960 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1013 },
1961 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1014 },
1962 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1015 },
1963 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1017 },
1964 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1018 },
1965 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1019 },
1966 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 1020 },
1967 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1021 },
1968 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 581 },
1969 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 582 },
1970 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 583 },
1971 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 585 },
1972 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1027 },
1973 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 766 },
1974 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1028 },
1975 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1031 },
1976 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1032 },
1977 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1033 },
1978 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1034 },
1979 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1035 },
1980 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1036 },
1981 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1039 },
1982 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1040 },
1983 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1041 },
1984 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1044 },
1985 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 966 },
1986 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 966 },
19011987 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1902 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1009 },
1903 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1011 },
1904 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1012 },
1905 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1013 },
1906 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1014 },
1907 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1015 },
1908 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1016 },
1909 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1017 },
1910 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1018 },
1911 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1019 },
1912 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1021 },
1913 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1022 },
1914 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1023 },
1915 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1024 },
1916 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 528 },
1917 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1025 },
1918 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
1919 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1027 },
1920 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1028 },
1921 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1029 },
1922 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1030 },
1988 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1045 },
1989 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1047 },
1990 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1048 },
1991 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1049 },
1992 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1050 },
1993 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1994 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 706 },
1995 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1051 },
1996 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1052 },
1997 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1053 },
1998 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1054 },
1999 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1055 },
2000 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1057 },
2001 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1058 },
2002 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1059 },
2003 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1060 },
2004 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 541 },
2005 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1061 },
2006 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1062 },
2007 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1063 },
2008 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1064 },
2009 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1065 },
2010 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1066 },
19232011 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1924 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1031 },
1925 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1033 },
1926 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1034 },
1927 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1035 },
1928 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 959 },
1929 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1036 },
1930 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1037 },
1931 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1038 },
1932 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1039 },
1933 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 888 },
1934 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1040 },
1935 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 719 },
1936 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1041 },
1937 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1043 },
1938 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1044 },
1939 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1045 },
1940 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1046 },
1941 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1047 },
1942 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1048 },
1943 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1049 },
1944 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1050 },
1945 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1051 },
1946 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1052 },
1947 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1053 },
1948 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1054 },
1949 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1055 },
1950 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1056 },
1951 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1057 },
1952 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 1058 },
1953 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1059 },
1954 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1061 },
1955 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1062 },
1956 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 522 },
1957 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1064 },
1958 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1023 },
1959 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1065 },
1960 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1066 },
1961 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1066 },
2012 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1067 },
2013 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1069 },
2014 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1070 },
2015 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 912 },
2016 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1071 },
2017 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1073 },
2018 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1074 },
2019 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1075 },
2020 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1076 },
2021 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1077 },
2022 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1078 },
2023 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 918 },
2024 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1079 },
2025 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 741 },
2026 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1080 },
2027 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1082 },
2028 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1083 },
2029 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1084 },
2030 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1085 },
2031 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1086 },
2032 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1087 },
2033 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1088 },
2034 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1089 },
2035 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1090 },
2036 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1091 },
2037 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1092 },
2038 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1093 },
2039 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1094 },
2040 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1095 },
2041 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1096 },
2042 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 1097 },
2043 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1098 },
2044 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1100 },
2045 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1101 },
2046 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 535 },
2047 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1103 },
2048 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1059 },
2049 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1104 },
2050 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1105 },
2051 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1105 },
19622052 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1963 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1067 },
1964 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1069 },
1965 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1070 },
1966 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1071 },
1967 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1072 },
2053 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1106 },
2054 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1108 },
2055 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1109 },
2056 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1110 },
2057 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1111 },
19682058 .{ .char = 'a', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
19692059 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1970 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1073 },
1971 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1074 },
1972 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1073 },
1973 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1008 },
1974 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1008 },
2060 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1112 },
2061 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1113 },
2062 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1112 },
2063 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1044 },
2064 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1044 },
19752065 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1976 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1075 },
1977 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1072 },
1978 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1072 },
1979 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1077 },
1980 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1078 },
1981 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1080 },
1982 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1081 },
1983 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1083 },
1984 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1087 },
1985 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1090 },
1986 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1091 },
2066 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1114 },
2067 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1111 },
2068 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1111 },
2069 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1116 },
2070 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1117 },
2071 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1119 },
2072 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1120 },
2073 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1122 },
2074 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1126 },
2075 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1129 },
2076 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1130 },
19872077 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1988 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1094 },
1989 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1095 },
1990 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1096 },
1991 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 522 },
2078 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1133 },
2079 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1134 },
2080 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1135 },
2081 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 535 },
19922082 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1993 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1097 },
1994 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1098 },
1995 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1099 },
1996 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1100 },
1997 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1101 },
1998 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 891 },
1999 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 592 },
2000 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 611 },
2001 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1102 },
2002 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1103 },
2003 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1104 },
2004 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1105 },
2005 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1106 },
2006 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1107 },
2007 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1108 },
2008 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1109 },
2009 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 400 },
2010 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 506 },
2011 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1110 },
2012 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1113 },
2013 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1114 },
2014 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 253 },
2015 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1048 },
2016 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 648 },
2017 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1115 },
2018 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1116 },
2019 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1117 },
2020 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1118 },
2021 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1119 },
2022 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1120 },
2023 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1121 },
2024 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1122 },
2025 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1123 },
2026 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 1124 },
2027 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 605 },
2028 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 605 },
2029 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1125 },
2030 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1127 },
2031 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1024 },
2032 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1062 },
2033 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1128 },
2034 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1129 },
2035 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1130 },
2036 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1131 },
2037 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1132 },
2038 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1133 },
2039 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1134 },
2083 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1136 },
2084 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1137 },
2085 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1138 },
2086 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1139 },
2087 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1140 },
2088 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 924 },
2089 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 606 },
2090 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 628 },
2091 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 913 },
2092 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1141 },
2093 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1142 },
2094 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1142 },
2095 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1142 },
2096 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1142 },
2097 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1143 },
2098 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1144 },
2099 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1145 },
2100 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1146 },
2101 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1147 },
2102 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 407 },
2103 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 518 },
2104 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1148 },
2105 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1151 },
2106 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1152 },
2107 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
2108 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1087 },
2109 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 667 },
2110 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1153 },
2111 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1154 },
2112 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1155 },
2113 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1156 },
2114 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1157 },
2115 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1158 },
2116 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1159 },
2117 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1160 },
2118 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1161 },
2119 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 1162 },
2120 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 622 },
2121 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 622 },
2122 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1163 },
2123 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1165 },
2124 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1060 },
2125 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1101 },
2126 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1166 },
2127 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1167 },
2128 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1168 },
2129 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1169 },
2130 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1170 },
2131 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1171 },
2132 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1172 },
20402133 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2041 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1135 },
2042 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1136 },
2043 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1138 },
2044 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1138 },
2045 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 839 },
2046 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1139 },
2047 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1140 },
2048 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 839 },
2049 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 671 },
2050 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1140 },
2134 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1173 },
2135 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1174 },
2136 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1176 },
2137 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1176 },
2138 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 865 },
2139 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1177 },
2140 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1178 },
2141 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 865 },
2142 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 690 },
2143 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1178 },
20512144 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
20522145 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
20532146 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2054 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1094 },
2147 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1133 },
20552148 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2056 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1094 },
2057 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
2058 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 430 },
2149 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1133 },
2150 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 184 },
2151 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 437 },
20592152 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2060 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1094 },
2061 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1019 },
2153 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1133 },
2154 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1055 },
20622155 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2063 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1141 },
2064 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1142 },
2065 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1143 },
2066 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1144 },
2067 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1145 },
2068 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1146 },
2069 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1147 },
2070 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2071 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 887 },
2072 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1149 },
2073 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1150 },
2074 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1151 },
2075 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1152 },
2076 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1153 },
2077 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1154 },
2078 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 400 },
2079 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 888 },
2080 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 897 },
2081 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1155 },
2082 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1156 },
2083 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1157 },
2084 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1158 },
2085 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1159 },
2086 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1160 },
2087 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1161 },
2088 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1119 },
2089 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1162 },
2090 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1163 },
2091 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1164 },
2092 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 1165 },
2093 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1173 },
2094 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1174 },
2156 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1179 },
2157 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1180 },
2158 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1181 },
2159 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1182 },
2160 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1183 },
2161 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1184 },
2162 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1185 },
2163 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1187 },
2164 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1188 },
2165 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1189 },
2166 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1190 },
2167 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1191 },
2168 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1192 },
2169 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1193 },
2170 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 407 },
2171 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 918 },
2172 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 929 },
2173 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1194 },
2174 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1195 },
2175 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1196 },
2176 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1197 },
2177 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1198 },
2178 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1199 },
2179 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1200 },
2180 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1157 },
2181 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1201 },
2182 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1202 },
2183 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1203 },
2184 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 53, .child_index = 1204 },
2185 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1212 },
2186 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1213 },
20952187 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2096 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1175 },
2097 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1176 },
2098 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1177 },
2099 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1178 },
2100 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1179 },
2101 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1180 },
2102 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1181 },
2103 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1182 },
2104 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1184 },
2105 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1185 },
2188 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1214 },
2189 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1215 },
2190 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1216 },
2191 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1217 },
2192 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1218 },
2193 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1219 },
2194 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1220 },
2195 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1221 },
2196 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1223 },
2197 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1224 },
21062198 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2107 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1186 },
2108 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1187 },
2109 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1188 },
2110 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 253 },
2111 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1189 },
2112 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1190 },
2113 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1191 },
2114 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1192 },
2115 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1193 },
2116 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1194 },
2117 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1195 },
2118 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 522 },
2119 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1196 },
2120 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 797 },
2121 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1197 },
2122 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 895 },
2123 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1199 },
2124 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1200 },
2125 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1201 },
2126 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1202 },
2127 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1203 },
2128 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1204 },
2129 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1205 },
2130 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1206 },
2131 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1207 },
2132 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1208 },
2133 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 1210 },
2134 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1212 },
2135 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1214 },
2136 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 1215 },
2137 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1219 },
2138 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1220 },
2139 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1221 },
2140 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1222 },
2141 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1223 },
2142 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1223 },
2143 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1224 },
2144 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2145 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1225 },
2146 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1225 },
2147 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1226 },
2148 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1227 },
2199 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1225 },
2200 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1226 },
2201 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1227 },
2202 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
21492203 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1228 },
2150 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1229 },
2151 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 768 },
2152 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1135 },
2153 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1135 },
2154 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1230 },
2155 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1013 },
2156 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1232 },
2157 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1234 },
2158 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1235 },
2159 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1236 },
2160 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1237 },
2161 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 648 },
2162 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1238 },
2163 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1239 },
2164 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1240 },
2165 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 887 },
2166 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 887 },
2167 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1242 },
2168 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1243 },
2169 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 802 },
2170 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1244 },
2171 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1246 },
2172 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1248 },
2173 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1251 },
2174 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1252 },
2175 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1253 },
2204 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1229 },
2205 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1230 },
2206 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1231 },
2207 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1232 },
2208 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1233 },
2209 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1234 },
2210 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1235 },
2211 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 535 },
2212 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1236 },
2213 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1237 },
2214 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1238 },
2215 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1240 },
2216 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1241 },
2217 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1242 },
2218 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1243 },
2219 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1244 },
2220 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1245 },
2221 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1246 },
2222 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1247 },
2223 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1248 },
2224 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1249 },
2225 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1250 },
2226 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 1252 },
2227 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1254 },
2228 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1256 },
2229 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 1257 },
2230 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1261 },
2231 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1262 },
2232 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1263 },
2233 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1264 },
2234 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1265 },
2235 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1265 },
2236 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1266 },
2237 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2238 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1267 },
2239 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1267 },
2240 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1268 },
2241 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1269 },
2242 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1270 },
2243 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1271 },
2244 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 790 },
2245 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1173 },
2246 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1173 },
2247 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1272 },
2248 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1049 },
2249 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1274 },
2250 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1276 },
2251 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1277 },
2252 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1278 },
2253 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1279 },
2254 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 667 },
2255 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1280 },
2256 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1281 },
2257 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1282 },
2258 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1283 },
2259 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
2260 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 913 },
2261 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 913 },
2262 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 407 },
2263 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1286 },
2264 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1287 },
2265 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 827 },
2266 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1288 },
2267 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1290 },
2268 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1292 },
2269 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1295 },
2270 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1296 },
2271 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1297 },
21762272 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
21772273 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2178 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1254 },
2179 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1256 },
2180 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1257 },
2181 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1258 },
2182 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1259 },
2183 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1260 },
2184 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1220 },
2185 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1221 },
2186 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1262 },
2187 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1263 },
2188 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1267 },
2189 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1268 },
2190 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1269 },
2191 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1270 },
2192 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 768 },
2193 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1272 },
2194 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1273 },
2195 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1277 },
2196 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1279 },
2274 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1298 },
2275 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1300 },
2276 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1301 },
2277 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1302 },
2278 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1303 },
2279 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1304 },
2280 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1262 },
2281 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1263 },
2282 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1306 },
2283 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1307 },
2284 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1311 },
2285 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1312 },
2286 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1313 },
2287 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1314 },
2288 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 790 },
2289 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1316 },
2290 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1317 },
2291 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1321 },
2292 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1323 },
21972293 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
21982294 .{ .char = 'a', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
21992295 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2200 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1280 },
2201 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1281 },
2202 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1282 },
2203 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1283 },
2204 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1194 },
2205 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1284 },
2206 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
2207 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1286 },
2208 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1287 },
2209 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 959 },
2210 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1288 },
2211 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1289 },
2212 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1291 },
2213 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1292 },
2214 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 768 },
2215 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1072 },
2216 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1293 },
2217 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1294 },
2218 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1205 },
2219 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1295 },
2220 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1296 },
2221 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1053 },
2222 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1297 },
2223 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1298 },
2224 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1221 },
2225 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1299 },
2226 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1300 },
2227 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1301 },
2228 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1302 },
2229 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1256 },
2230 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1303 },
2296 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1324 },
2297 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1325 },
2298 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1326 },
2299 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1327 },
2300 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1233 },
2301 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1328 },
2302 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1329 },
2303 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1330 },
2304 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1331 },
2305 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1332 },
2306 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 912 },
2307 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1333 },
2308 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1334 },
2309 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1335 },
2310 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1337 },
2311 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1338 },
2312 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 790 },
2313 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1111 },
2314 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1339 },
2315 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1340 },
2316 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1247 },
2317 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1341 },
2318 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1342 },
2319 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1092 },
2320 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1343 },
2321 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1344 },
2322 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1263 },
2323 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1345 },
2324 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1346 },
2325 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1347 },
2326 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1348 },
2327 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1300 },
2328 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1349 },
22312329 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
22322330 .{ .char = '1', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
22332331 .{ .char = '2', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
22342332 .{ .char = '3', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2235 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 605 },
2236 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1304 },
2237 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1305 },
2238 .{ .char = 'N', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1306 },
2239 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1307 },
2240 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1308 },
2241 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1309 },
2242 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1310 },
2243 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1311 },
2244 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1312 },
2245 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1313 },
2246 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1313 },
2247 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1314 },
2248 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1315 },
2249 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1316 },
2250 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1317 },
2251 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1318 },
2252 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1319 },
2253 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 733 },
2254 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1320 },
2255 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1321 },
2256 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1322 },
2257 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 400 },
2258 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 888 },
2259 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 733 },
2260 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 733 },
2261 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1323 },
2262 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1324 },
2263 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1325 },
2264 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1326 },
2265 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1327 },
2266 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1328 },
2267 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1329 },
2268 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1267 },
2269 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1330 },
2270 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1332 },
2271 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1333 },
2272 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1334 },
2273 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1338 },
2274 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1340 },
2275 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1341 },
2276 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1342 },
2277 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1343 },
2278 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1344 },
2279 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1345 },
2280 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1346 },
2281 .{ .char = 'D', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1347 },
2282 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1349 },
2283 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1350 },
2284 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 253 },
2285 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1351 },
2286 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1352 },
2287 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1353 },
2333 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 622 },
2334 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1350 },
2335 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1351 },
2336 .{ .char = 'N', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1352 },
2337 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1353 },
2338 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1354 },
2339 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1355 },
2340 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1356 },
2341 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1357 },
2342 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1358 },
2343 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1359 },
2344 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1359 },
2345 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1360 },
2346 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1361 },
2347 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1362 },
2348 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1363 },
2349 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1364 },
2350 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1365 },
2351 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 755 },
22882352 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2289 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1354 },
2290 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1355 },
2291 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1356 },
2292 .{ .char = 'C', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1357 },
2293 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 605 },
2294 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1358 },
2295 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1359 },
2296 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1360 },
2297 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1361 },
2298 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 605 },
2299 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1362 },
2300 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1363 },
2301 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1267 },
2353 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1236 },
2354 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1366 },
2355 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1367 },
2356 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1368 },
2357 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 407 },
2358 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 918 },
2359 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 755 },
2360 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 755 },
2361 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1369 },
2362 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1370 },
2363 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1371 },
2364 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1372 },
2365 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1373 },
2366 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1374 },
2367 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1375 },
2368 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1311 },
2369 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1376 },
2370 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1378 },
2371 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1379 },
2372 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1380 },
2373 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1384 },
2374 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1386 },
2375 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1387 },
2376 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1388 },
2377 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1389 },
2378 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1390 },
2379 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1391 },
2380 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1392 },
2381 .{ .char = 'D', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1393 },
2382 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1395 },
2383 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
2384 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
2385 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1397 },
2386 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1398 },
2387 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1399 },
2388 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1400 },
2389 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1401 },
2390 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1402 },
2391 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1403 },
2392 .{ .char = 'C', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1404 },
2393 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 622 },
2394 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1405 },
2395 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1406 },
2396 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1407 },
2397 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1408 },
2398 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 622 },
2399 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1409 },
2400 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1410 },
2401 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1311 },
23022402 .{ .char = 'w', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
23032403 .{ .char = 'x', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
23042404 .{ .char = 'y', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
23052405 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2306 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 605 },
2307 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1364 },
2406 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 622 },
2407 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1411 },
23082408 .{ .char = 'N', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2309 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1365 },
2310 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1366 },
2311 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1367 },
2312 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1368 },
2313 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1369 },
2314 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1368 },
2315 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1370 },
2316 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1370 },
2317 .{ .char = 'D', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1372 },
2318 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1375 },
2319 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1376 },
2320 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1377 },
2321 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1378 },
2322 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1379 },
2323 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 709 },
2324 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1380 },
2325 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1381 },
2326 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1142 },
2327 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1072 },
2328 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1382 },
2329 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1383 },
2330 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1384 },
2331 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1385 },
2332 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1386 },
2333 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1387 },
2334 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1066 },
2335 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1388 },
2336 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1389 },
2337 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1390 },
2338 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1391 },
2339 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1391 },
2340 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1391 },
2341 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1391 },
2342 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1392 },
2343 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1393 },
2344 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1394 },
2345 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1395 },
2346 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1396 },
2347 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 960 },
2348 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1397 },
2349 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1399 },
2350 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1400 },
2351 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1402 },
2352 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1403 },
2353 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1404 },
2354 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1320 },
2355 .{ .char = 'N', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1306 },
2356 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1405 },
2357 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1392 },
2358 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1406 },
2409 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1412 },
2410 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1413 },
2411 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1414 },
2412 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1415 },
2413 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1416 },
2414 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1415 },
2415 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1417 },
2416 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1417 },
2417 .{ .char = 'D', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1419 },
2418 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1422 },
2419 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1423 },
2420 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1424 },
2421 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1425 },
2422 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1426 },
2423 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2424 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
2425 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1427 },
2426 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1428 },
2427 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1180 },
2428 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1111 },
2429 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1429 },
2430 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1430 },
2431 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1431 },
2432 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1432 },
2433 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1433 },
2434 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1434 },
2435 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1105 },
2436 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1435 },
2437 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1436 },
2438 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1437 },
2439 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1438 },
2440 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1438 },
2441 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1438 },
2442 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1438 },
2443 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1439 },
2444 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1440 },
2445 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1441 },
2446 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1442 },
2447 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1443 },
2448 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
2449 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1444 },
2450 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1446 },
2451 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1447 },
2452 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1449 },
2453 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1450 },
2454 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1451 },
2455 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1330 },
2456 .{ .char = 'N', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1352 },
2457 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1452 },
2458 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1439 },
2459 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1453 },
23592460 .{ .char = '_', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2360 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1391 },
2361 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1407 },
2362 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1408 },
2363 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1409 },
2364 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1410 },
2365 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1294 },
2366 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1205 },
2367 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1411 },
2368 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1412 },
2369 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1268 },
2370 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1414 },
2371 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1415 },
2372 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1221 },
2373 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1416 },
2374 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1392 },
2375 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1417 },
2376 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1418 },
2377 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1419 },
2378 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1420 },
2379 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1421 },
2380 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1422 },
2381 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1423 },
2382 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1150 },
2383 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1424 },
2384 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1427 },
2385 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1428 },
2386 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1429 },
2387 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1430 },
2388 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1431 },
2389 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1432 },
2390 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1433 },
2391 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1422 },
2392 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1434 },
2393 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1435 },
2394 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1435 },
2395 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1437 },
2396 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1439 },
2397 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1440 },
2398 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1441 },
2399 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1442 },
2400 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1444 },
2401 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1445 },
2461 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1438 },
2462 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1454 },
2463 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1455 },
2464 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1456 },
2465 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1457 },
2466 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1340 },
2467 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1247 },
2468 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1458 },
2469 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1459 },
2470 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1312 },
2471 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1461 },
2472 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1462 },
2473 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1263 },
2474 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1463 },
2475 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1439 },
2476 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1464 },
2477 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1465 },
2478 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1466 },
2479 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1467 },
2480 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1468 },
2481 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1469 },
2482 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1470 },
2483 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1189 },
2484 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1471 },
2485 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1474 },
2486 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1475 },
2487 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1476 },
2488 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1477 },
2489 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1478 },
2490 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1479 },
2491 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1480 },
2492 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1469 },
2493 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1481 },
2494 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1482 },
2495 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1482 },
2496 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1484 },
2497 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1486 },
2498 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1487 },
2499 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1488 },
2500 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1489 },
2501 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1491 },
2502 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1492 },
24022503 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
24032504 .{ .char = 'e', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
24042505 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2405 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1447 },
2406 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1448 },
2407 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1449 },
2408 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1450 },
2409 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1453 },
2410 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1454 },
2411 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1205 },
2412 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1119 },
2413 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1268 },
2414 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1455 },
2415 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1456 },
2416 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1457 },
2417 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1458 },
2418 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1229 },
2506 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1494 },
2507 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1495 },
2508 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1496 },
2509 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1497 },
2510 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1500 },
2511 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1501 },
2512 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1247 },
2513 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1157 },
2514 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1312 },
2515 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1502 },
2516 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1503 },
2517 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1504 },
2518 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1505 },
2519 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1271 },
24192520 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
24202521 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2421 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1229 },
2422 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1459 },
2423 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1460 },
2424 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1461 },
2425 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1462 },
2426 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1325 },
2427 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1463 },
2428 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 769 },
2429 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1464 },
2430 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1465 },
2431 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1466 },
2432 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1467 },
2433 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1392 },
2434 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1119 },
2435 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1468 },
2436 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1469 },
2437 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1470 },
2438 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1392 },
2522 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1271 },
2523 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1506 },
2524 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1507 },
2525 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1508 },
2526 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1509 },
2527 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1371 },
2528 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1510 },
2529 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 791 },
2530 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1511 },
2531 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1512 },
2532 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1513 },
2533 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1514 },
2534 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1439 },
2535 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1157 },
2536 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1515 },
2537 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1516 },
2538 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1517 },
2539 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1439 },
24392540};
24402541pub const data = blk: {
2441 @setEvalBranchQuota(7263);
2542 @setEvalBranchQuota(7749);
24422543 break :blk [_]Properties{
2443 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2444 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2445 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2446 .{ .param_str = "vi*iC*iC*iC*Ii", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2447 .{ .param_str = "vi*iC*iC*iC*Ii", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2448 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2544 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2545 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2546 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2547 .{ .param_str = "vi*iC*iC*iC*Ii", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2548 .{ .param_str = "vi*iC*iC*iC*Ii", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2549 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
24492550 .{ .param_str = "ii" },
24502551 .{ .param_str = "ii" },
24512552 .{ .param_str = "ii" },
......@@ -2462,103 +2563,111 @@ pub const data = blk: {
24622563 .{ .param_str = "viiiffff" },
24632564 .{ .param_str = "viiiiiii" },
24642565 .{ .param_str = "viiiUiUiUiUi" },
2465 .{ .param_str = "vd*dC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2466 .{ .param_str = "vd*dC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2467 .{ .param_str = "vd*dC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2468 .{ .param_str = "vd*dC*dC*dC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2469 .{ .param_str = "vd*dC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2470 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2471 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2472 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2473 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2474 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2475 .{ .param_str = "vi*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2476 .{ .param_str = "vf*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2477 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2478 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2479 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2480 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2481 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2482 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2483 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2484 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2485 .{ .param_str = "vi*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2486 .{ .param_str = "vf*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2487 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2488 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2489 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2490 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2491 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2492 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2493 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2494 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2495 .{ .param_str = "vi*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2496 .{ .param_str = "vf*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2497 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2498 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2499 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2500 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2501 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2502 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2503 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2504 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2505 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2506 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2507 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2508 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2509 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2510 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2511 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2512 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2513 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2514 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2515 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2516 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2517 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2518 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2519 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2520 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2521 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2522 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2523 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2524 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2525 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2526 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2527 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2528 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2529 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2530 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2531 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2532 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2533 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2534 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2535 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2536 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2537 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2538 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2539 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2540 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2541 .{ .param_str = "vf*fC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2542 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2543 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2544 .{ .param_str = "vf*fC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2545 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2546 .{ .param_str = "yy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2547 .{ .param_str = "V2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2548 .{ .param_str = "Ui", .features = "ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
2566 .{ .param_str = "vd*dC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2567 .{ .param_str = "vd*dC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2568 .{ .param_str = "vd*dC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2569 .{ .param_str = "vd*dC*dC*dC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2570 .{ .param_str = "vd*dC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2571 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2572 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2573 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2574 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2575 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2576 .{ .param_str = "vi*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2577 .{ .param_str = "vf*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2578 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2579 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2580 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2581 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2582 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2583 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2584 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2585 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2586 .{ .param_str = "vi*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2587 .{ .param_str = "vf*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2588 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2589 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2590 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2591 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2592 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2593 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2594 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2595 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2596 .{ .param_str = "vi*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2597 .{ .param_str = "vf*iC*iC*iC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2598 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2599 .{ .param_str = "vi*iC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2600 .{ .param_str = "vf*fC*UiIi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2601 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2602 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2603 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2604 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2605 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2606 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2607 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2608 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2609 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2610 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2611 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2612 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2613 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2614 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2615 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2616 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2617 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2618 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2619 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2620 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2621 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2622 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2623 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2624 .{ .param_str = "vi*iC*UiIi", .features = "(sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2625 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2626 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2627 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2628 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2629 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2630 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2631 .{ .param_str = "vi*iC*iC*iC*IiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2632 .{ .param_str = "vi*iC*UiIi", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2633 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2634 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2635 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2636 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2637 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2638 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2639 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2640 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2641 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2642 .{ .param_str = "vf*fC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2643 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2644 .{ .param_str = "vi*iC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2645 .{ .param_str = "vf*fC*UiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2646 .{ .param_str = "vf*iC*iC*fC*IiIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2647 .{ .param_str = "yy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2648 .{ .param_str = "V2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2649 .{ .param_str = "Ui", .features = "ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
25492650 .{ .param_str = "ddd" },
25502651 .{ .param_str = "fff" },
25512652 .{ .param_str = "fff" },
2653 .{ .param_str = "fff" },
2654 .{ .param_str = "fff" },
25522655 .{ .param_str = "ddd" },
25532656 .{ .param_str = "fff" },
25542657 .{ .param_str = "fff" },
2658 .{ .param_str = "fff" },
2659 .{ .param_str = "fff" },
25552660 .{ .param_str = "ddd" },
25562661 .{ .param_str = "fff" },
25572662 .{ .param_str = "fff" },
2663 .{ .param_str = "fff" },
2664 .{ .param_str = "fff" },
25582665 .{ .param_str = "ddd" },
25592666 .{ .param_str = "fff" },
25602667 .{ .param_str = "fff" },
2561 .{ .param_str = "ddD*d", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2668 .{ .param_str = "fff" },
2669 .{ .param_str = "fff" },
2670 .{ .param_str = "ddD*d", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
25622671 .{ .param_str = "ffD*f" },
25632672 .{ .param_str = "iiD*i" },
25642673 .{ .param_str = "LiLiD*Li" },
......@@ -2569,42 +2678,42 @@ pub const data = blk: {
25692678 .{ .param_str = "iiD*ii" },
25702679 .{ .param_str = "LiLiD*LiLi" },
25712680 .{ .param_str = "LLiLLiD*LLiLLi" },
2572 .{ .param_str = "UsUsD*UsUs", .features = "sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2573 .{ .param_str = "ddD*d", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2574 .{ .param_str = "ffD*f", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2575 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2576 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2577 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2578 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2579 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2580 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2581 .{ .param_str = "iiD*ii", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2582 .{ .param_str = "LiLiD*LiLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2583 .{ .param_str = "LLiLLiD*LLiLLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2584 .{ .param_str = "UsUsD*UsUs", .features = "sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2585 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2586 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2587 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2588 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2589 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2590 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2591 .{ .param_str = "ULiULiD*ULi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2592 .{ .param_str = "ULLiULLiD*ULLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2593 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2594 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2595 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2596 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2597 .{ .param_str = "ULiULiD*ULi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2598 .{ .param_str = "ULLiULLiD*ULLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2599 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2600 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2601 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2602 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2603 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2604 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2605 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2606 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2607 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2681 .{ .param_str = "UsUsD*UsUs", .features = "sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2682 .{ .param_str = "ddD*d", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2683 .{ .param_str = "ffD*f", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2684 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2685 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2686 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2687 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2688 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2689 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2690 .{ .param_str = "iiD*ii", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2691 .{ .param_str = "LiLiD*LiLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2692 .{ .param_str = "LLiLLiD*LLiLLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2693 .{ .param_str = "UsUsD*UsUs", .features = "sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2694 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2695 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2696 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2697 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2698 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2699 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2700 .{ .param_str = "ULiULiD*ULi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2701 .{ .param_str = "ULLiULLiD*ULLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2702 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2703 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2704 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2705 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2706 .{ .param_str = "ULiULiD*ULi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2707 .{ .param_str = "ULLiULLiD*ULLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2708 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2709 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2710 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2711 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2712 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2713 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2714 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2715 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2716 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
26082717 .{ .param_str = "UiUiD*Ui" },
26092718 .{ .param_str = "UiUiD*Ui" },
26102719 .{ .param_str = "iiD*i" },
......@@ -2625,41 +2734,41 @@ pub const data = blk: {
26252734 .{ .param_str = "iiD*i" },
26262735 .{ .param_str = "LiLiD*Li" },
26272736 .{ .param_str = "LLiLLiD*LLi" },
2628 .{ .param_str = "ddD*d", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2629 .{ .param_str = "ffD*f", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2630 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2631 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2632 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2633 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2634 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2635 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2636 .{ .param_str = "iiD*ii", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2637 .{ .param_str = "LiLiD*LiLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2638 .{ .param_str = "LLiLLiD*LLiLLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2639 .{ .param_str = "UsUsD*UsUs", .features = "sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2640 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2641 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2642 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2643 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2644 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2645 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2646 .{ .param_str = "ULiULiD*ULi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2647 .{ .param_str = "ULLiULLiD*ULLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2648 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2649 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2650 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2651 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2652 .{ .param_str = "ULiULiD*ULi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2653 .{ .param_str = "ULLiULLiD*ULLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2654 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2655 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2656 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2657 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2658 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2659 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2660 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2661 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2662 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a" },
2737 .{ .param_str = "ddD*d", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2738 .{ .param_str = "ffD*f", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2739 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2740 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2741 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2742 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2743 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2744 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2745 .{ .param_str = "iiD*ii", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2746 .{ .param_str = "LiLiD*LiLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2747 .{ .param_str = "LLiLLiD*LLiLLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2748 .{ .param_str = "UsUsD*UsUs", .features = "sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2749 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2750 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2751 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2752 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2753 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2754 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2755 .{ .param_str = "ULiULiD*ULi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2756 .{ .param_str = "ULLiULLiD*ULLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2757 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2758 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2759 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2760 .{ .param_str = "UiUiD*Ui", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2761 .{ .param_str = "ULiULiD*ULi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2762 .{ .param_str = "ULLiULLiD*ULLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2763 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2764 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2765 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2766 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2767 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2768 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2769 .{ .param_str = "iiD*i", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2770 .{ .param_str = "LiLiD*Li", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
2771 .{ .param_str = "LLiLLiD*LLi", .features = "sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a" },
26632772 .{ .param_str = "iiD*i" },
26642773 .{ .param_str = "LiLiD*Li" },
26652774 .{ .param_str = "LLiLLiD*LLi" },
......@@ -2670,16 +2779,16 @@ pub const data = blk: {
26702779 .{ .param_str = "ii" },
26712780 .{ .param_str = "ii" },
26722781 .{ .param_str = "vi" },
2673 .{ .param_str = "vUi", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
2674 .{ .param_str = "v", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2675 .{ .param_str = "v", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2676 .{ .param_str = "v", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2677 .{ .param_str = "vUi", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
2678 .{ .param_str = "vUiUi", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
2679 .{ .param_str = "sV2y", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2680 .{ .param_str = "sV2y", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2681 .{ .param_str = "sV2y", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2682 .{ .param_str = "sV2y", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2782 .{ .param_str = "vUi", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
2783 .{ .param_str = "v", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2784 .{ .param_str = "v", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2785 .{ .param_str = "v", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2786 .{ .param_str = "vUi", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
2787 .{ .param_str = "vUiUi", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
2788 .{ .param_str = "sV2y", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2789 .{ .param_str = "sV2y", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2790 .{ .param_str = "sV2y", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2791 .{ .param_str = "sV2y", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
26832792 .{ .param_str = "dd" },
26842793 .{ .param_str = "ff" },
26852794 .{ .param_str = "ff" },
......@@ -2687,17 +2796,17 @@ pub const data = blk: {
26872796 .{ .param_str = "vcC*4" },
26882797 .{ .param_str = "ff" },
26892798 .{ .param_str = "ff" },
2690 .{ .param_str = "vv*3vC*1.", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2691 .{ .param_str = "vv*3vC*1.", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2692 .{ .param_str = "vv*3vC*1.", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2693 .{ .param_str = "vv*3vC*1.", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2694 .{ .param_str = "v", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2695 .{ .param_str = "vWi*", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2696 .{ .param_str = "vWi*", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2697 .{ .param_str = "vWi*3", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2698 .{ .param_str = "vWi*3", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2699 .{ .param_str = "v", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2700 .{ .param_str = "vIi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2799 .{ .param_str = "vv*3vC*1.", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2800 .{ .param_str = "vv*3vC*1.", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2801 .{ .param_str = "vv*3vC*1.", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2802 .{ .param_str = "vv*3vC*1.", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2803 .{ .param_str = "v", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2804 .{ .param_str = "vWi*", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2805 .{ .param_str = "vWi*", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2806 .{ .param_str = "vWi*3", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2807 .{ .param_str = "vWi*3", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2808 .{ .param_str = "v", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2809 .{ .param_str = "vIi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
27012810 .{ .param_str = "fd" },
27022811 .{ .param_str = "fd" },
27032812 .{ .param_str = "fd" },
......@@ -2738,30 +2847,42 @@ pub const data = blk: {
27382847 .{ .param_str = "ddd" },
27392848 .{ .param_str = "fff" },
27402849 .{ .param_str = "fff" },
2741 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2742 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2743 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2744 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2745 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2746 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2747 .{ .param_str = "V2hs", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2748 .{ .param_str = "V2hs", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2749 .{ .param_str = "V2hs", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2750 .{ .param_str = "V2hs", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2850 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2851 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2852 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2853 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2854 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2855 .{ .param_str = "V2hs", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2856 .{ .param_str = "V2hs", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2857 .{ .param_str = "V2hs", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2858 .{ .param_str = "V2hs", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2859 .{ .param_str = "V2hs", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
27512860 .{ .param_str = "dd" },
27522861 .{ .param_str = "ff" },
2753 .{ .param_str = "hh", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2754 .{ .param_str = "V2hV2h", .features = "(sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2862 .{ .param_str = "hh", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2863 .{ .param_str = "V2hV2h", .features = "(sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
27552864 .{ .param_str = "ff" },
27562865 .{ .param_str = "v" },
2757 .{ .param_str = "sV2h", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2758 .{ .param_str = "sV2h", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2759 .{ .param_str = "sV2h", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2760 .{ .param_str = "sV2h", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2761 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2762 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2763 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2764 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2866 .{ .param_str = "sV2h", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2867 .{ .param_str = "sV2h", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2868 .{ .param_str = "sV2h", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2869 .{ .param_str = "sV2h", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2870 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2871 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2872 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2873 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2874 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2875 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2876 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2877 .{ .param_str = "yf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2878 .{ .param_str = "hf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2879 .{ .param_str = "hf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2880 .{ .param_str = "hf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2881 .{ .param_str = "hf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2882 .{ .param_str = "hf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2883 .{ .param_str = "hf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2884 .{ .param_str = "hf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2885 .{ .param_str = "hf", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
27652886 .{ .param_str = "Usf" },
27662887 .{ .param_str = "Usf" },
27672888 .{ .param_str = "if" },
......@@ -2780,16 +2901,16 @@ pub const data = blk: {
27802901 .{ .param_str = "LLif" },
27812902 .{ .param_str = "LLif" },
27822903 .{ .param_str = "LLif" },
2783 .{ .param_str = "Zif", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2784 .{ .param_str = "Zif", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2785 .{ .param_str = "Zif", .features = "(sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx86|ptx87)" },
2786 .{ .param_str = "Zif", .features = "(sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx86|ptx87)" },
2787 .{ .param_str = "Zif", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2788 .{ .param_str = "Zif", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2789 .{ .param_str = "Zif", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2790 .{ .param_str = "Zif", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2791 .{ .param_str = "Zif", .features = "(sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx86|ptx87)" },
2792 .{ .param_str = "Zif", .features = "(sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx86|ptx87)" },
2904 .{ .param_str = "Zif", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2905 .{ .param_str = "Zif", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2906 .{ .param_str = "Zif", .features = "(sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx86|ptx87|ptx88|ptx90)" },
2907 .{ .param_str = "Zif", .features = "(sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx86|ptx87|ptx88|ptx90)" },
2908 .{ .param_str = "Zif", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2909 .{ .param_str = "Zif", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2910 .{ .param_str = "Zif", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2911 .{ .param_str = "Zif", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2912 .{ .param_str = "Zif", .features = "(sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx86|ptx87|ptx88|ptx90)" },
2913 .{ .param_str = "Zif", .features = "(sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx86|ptx87|ptx88|ptx90)" },
27932914 .{ .param_str = "Uif" },
27942915 .{ .param_str = "Uif" },
27952916 .{ .param_str = "Uif" },
......@@ -2806,144 +2927,178 @@ pub const data = blk: {
28062927 .{ .param_str = "ULLif" },
28072928 .{ .param_str = "ULLif" },
28082929 .{ .param_str = "ULLif" },
2930 .{ .param_str = "sV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2931 .{ .param_str = "sV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2932 .{ .param_str = "V4cV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2933 .{ .param_str = "V4cV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2934 .{ .param_str = "V4cV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2935 .{ .param_str = "V4cV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2936 .{ .param_str = "V4cV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2937 .{ .param_str = "V4cV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2938 .{ .param_str = "V4cV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2939 .{ .param_str = "V4cV4fUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
28092940 .{ .param_str = "dd" },
28102941 .{ .param_str = "ff" },
2811 .{ .param_str = "hh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2812 .{ .param_str = "V2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2942 .{ .param_str = "hh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2943 .{ .param_str = "V2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
28132944 .{ .param_str = "ff" },
2814 .{ .param_str = "hh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2815 .{ .param_str = "V2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2816 .{ .param_str = "v", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2817 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2818 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2819 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2820 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2821 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2822 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2823 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2824 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2825 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2826 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2827 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2828 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2829 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2830 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2831 .{ .param_str = "sff", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2832 .{ .param_str = "sff", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2833 .{ .param_str = "sff", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2834 .{ .param_str = "sff", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2835 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2836 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2837 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2838 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
2945 .{ .param_str = "hh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2946 .{ .param_str = "V2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2947 .{ .param_str = "v", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2948 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2949 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2950 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2951 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2952 .{ .param_str = "V2yffUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2953 .{ .param_str = "V2yffUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2954 .{ .param_str = "V2yffUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2955 .{ .param_str = "V2yffUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2956 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2957 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2958 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2959 .{ .param_str = "V2yff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2960 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2961 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2962 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2963 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2964 .{ .param_str = "V2hffUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2965 .{ .param_str = "V2hffUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2966 .{ .param_str = "V2hffUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2967 .{ .param_str = "V2hffUZi", .features = "(sm_100a|sm_103a),(ptx87|ptx88|ptx90)" },
2968 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2969 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2970 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2971 .{ .param_str = "V2hff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2972 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2973 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2974 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2975 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2976 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2977 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2978 .{ .param_str = "sff", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2979 .{ .param_str = "sff", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2980 .{ .param_str = "sff", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2981 .{ .param_str = "sff", .features = "(sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2982 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2983 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2984 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
2985 .{ .param_str = "sff", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
28392986 .{ .param_str = "dd" },
28402987 .{ .param_str = "ff" },
28412988 .{ .param_str = "ff" },
28422989 .{ .param_str = "dddd" },
28432990 .{ .param_str = "ffff" },
28442991 .{ .param_str = "ffff" },
2845 .{ .param_str = "yyyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2846 .{ .param_str = "V2yV2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2992 .{ .param_str = "ffff" },
2993 .{ .param_str = "ffff" },
2994 .{ .param_str = "yyyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2995 .{ .param_str = "V2yV2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
28472996 .{ .param_str = "dddd" },
28482997 .{ .param_str = "ffff" },
2849 .{ .param_str = "hhhh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2850 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2998 .{ .param_str = "hhhh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
2999 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3000 .{ .param_str = "ffff" },
3001 .{ .param_str = "hhhh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3002 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3003 .{ .param_str = "hhhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3004 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
28513005 .{ .param_str = "ffff" },
2852 .{ .param_str = "hhhh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2853 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2854 .{ .param_str = "hhhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2855 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2856 .{ .param_str = "hhhh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2857 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2858 .{ .param_str = "yyyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2859 .{ .param_str = "V2yV2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2860 .{ .param_str = "hhhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2861 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2862 .{ .param_str = "hhhh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2863 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3006 .{ .param_str = "hhhh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3007 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3008 .{ .param_str = "yyyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3009 .{ .param_str = "V2yV2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3010 .{ .param_str = "hhhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3011 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3012 .{ .param_str = "ffff" },
3013 .{ .param_str = "hhhh", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3014 .{ .param_str = "V2hV2hV2hV2h", .features = "(sm_53|sm_60|sm_61|sm_62|sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx42|ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
28643015 .{ .param_str = "dddd" },
28653016 .{ .param_str = "ffff" },
28663017 .{ .param_str = "ffff" },
3018 .{ .param_str = "ffff" },
3019 .{ .param_str = "ffff" },
28673020 .{ .param_str = "dddd" },
28683021 .{ .param_str = "ffff" },
28693022 .{ .param_str = "ffff" },
2870 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2871 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3023 .{ .param_str = "ffff" },
3024 .{ .param_str = "ffff" },
3025 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3026 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
28723027 .{ .param_str = "ddd" },
28733028 .{ .param_str = "fff" },
2874 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2875 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2876 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2877 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3029 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3030 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3031 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3032 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
28783033 .{ .param_str = "fff" },
2879 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2880 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2881 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2882 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2883 .{ .param_str = "fff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2884 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2885 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2886 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2887 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2888 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2889 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2890 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2891 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2892 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2893 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2894 .{ .param_str = "fff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2895 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2896 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2897 .{ .param_str = "yyy", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2898 .{ .param_str = "V2yV2yV2y", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2899 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2900 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2901 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2902 .{ .param_str = "yyy", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2903 .{ .param_str = "V2yV2yV2y", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2904 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2905 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2906 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2907 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2908 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3034 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3035 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3036 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3037 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3038 .{ .param_str = "fff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3039 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3040 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3041 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3042 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3043 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3044 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3045 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3046 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3047 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3048 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3049 .{ .param_str = "fff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3050 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3051 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3052 .{ .param_str = "yyy", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3053 .{ .param_str = "V2yV2yV2y", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3054 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3055 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3056 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3057 .{ .param_str = "yyy", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3058 .{ .param_str = "V2yV2yV2y", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3059 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3060 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3061 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3062 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3063 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
29093064 .{ .param_str = "ddd" },
29103065 .{ .param_str = "fff" },
2911 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2912 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2913 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2914 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3066 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3067 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3068 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3069 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
29153070 .{ .param_str = "fff" },
2916 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2917 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2918 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2919 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2920 .{ .param_str = "fff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2921 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2922 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2923 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2924 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2925 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2926 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2927 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2928 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2929 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2930 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2931 .{ .param_str = "fff", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2932 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2933 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2934 .{ .param_str = "yyy", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2935 .{ .param_str = "V2yV2yV2y", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2936 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2937 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2938 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2939 .{ .param_str = "yyy", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2940 .{ .param_str = "V2yV2yV2y", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2941 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2942 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2943 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2944 .{ .param_str = "UiUiUii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
2945 .{ .param_str = "iv*", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
2946 .{ .param_str = "iv*3", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3071 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3072 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3073 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3074 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3075 .{ .param_str = "fff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3076 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3077 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3078 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3079 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3080 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3081 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3082 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3083 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3084 .{ .param_str = "yyy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3085 .{ .param_str = "V2yV2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3086 .{ .param_str = "fff", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3087 .{ .param_str = "hhh", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3088 .{ .param_str = "V2hV2hV2h", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3089 .{ .param_str = "yyy", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3090 .{ .param_str = "V2yV2yV2y", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3091 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3092 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3093 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3094 .{ .param_str = "yyy", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3095 .{ .param_str = "V2yV2yV2y", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3096 .{ .param_str = "fff", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3097 .{ .param_str = "hhh", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3098 .{ .param_str = "V2hV2hV2h", .features = "(sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3099 .{ .param_str = "UiUiUii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
3100 .{ .param_str = "iv*", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3101 .{ .param_str = "iv*3", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
29473102 .{ .param_str = "di" },
29483103 .{ .param_str = "di" },
29493104 .{ .param_str = "di" },
......@@ -2952,12 +3107,12 @@ pub const data = blk: {
29523107 .{ .param_str = "fi" },
29533108 .{ .param_str = "fi" },
29543109 .{ .param_str = "fi" },
2955 .{ .param_str = "b", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3110 .{ .param_str = "b", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
29563111 .{ .param_str = "bvC*", .attributes = .{ .@"const" = true } },
29573112 .{ .param_str = "bvC*", .attributes = .{ .@"const" = true } },
29583113 .{ .param_str = "bvC*", .attributes = .{ .@"const" = true } },
29593114 .{ .param_str = "bvC*", .attributes = .{ .@"const" = true } },
2960 .{ .param_str = "bvC*", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3115 .{ .param_str = "bvC*", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
29613116 .{ .param_str = "ccC*" },
29623117 .{ .param_str = "E2cE2cC*" },
29633118 .{ .param_str = "E4cE4cC*" },
......@@ -3042,27 +3197,27 @@ pub const data = blk: {
30423197 .{ .param_str = "fLLi" },
30433198 .{ .param_str = "fLLi" },
30443199 .{ .param_str = "dii" },
3045 .{ .param_str = "v*v*i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3046 .{ .param_str = "v*3v*3i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3047 .{ .param_str = "UiUiUii*", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3048 .{ .param_str = "UiUiWii*", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3049 .{ .param_str = "UiUiUi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3050 .{ .param_str = "UiUiWi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3051 .{ .param_str = "WiWi*", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3052 .{ .param_str = "WiWi*", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3053 .{ .param_str = "WiWi*i", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3054 .{ .param_str = "WiWi*3i", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3055 .{ .param_str = "WiWi*3", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3056 .{ .param_str = "WiWi*i", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3057 .{ .param_str = "WiWi*3i", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3058 .{ .param_str = "WiWi*3", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3059 .{ .param_str = "vWi*i", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3060 .{ .param_str = "vWi*3i", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3061 .{ .param_str = "vWi*", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3062 .{ .param_str = "vWi*3", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3063 .{ .param_str = "iWi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3064 .{ .param_str = "bWi*Wi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3065 .{ .param_str = "bWi*3Wi", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3200 .{ .param_str = "v*v*i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3201 .{ .param_str = "v*3v*3i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3202 .{ .param_str = "UiUiUii*", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3203 .{ .param_str = "UiUiWii*", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3204 .{ .param_str = "UiUiUi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3205 .{ .param_str = "UiUiWi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3206 .{ .param_str = "WiWi*", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3207 .{ .param_str = "WiWi*", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3208 .{ .param_str = "WiWi*i", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3209 .{ .param_str = "WiWi*3i", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3210 .{ .param_str = "WiWi*3", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3211 .{ .param_str = "WiWi*i", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3212 .{ .param_str = "WiWi*3i", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3213 .{ .param_str = "WiWi*3", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3214 .{ .param_str = "vWi*i", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3215 .{ .param_str = "vWi*3i", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3216 .{ .param_str = "vWi*", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3217 .{ .param_str = "vWi*3", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3218 .{ .param_str = "iWi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3219 .{ .param_str = "bWi*Wi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3220 .{ .param_str = "bWi*3Wi", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
30663221 .{ .param_str = "v" },
30673222 .{ .param_str = "v" },
30683223 .{ .param_str = "v" },
......@@ -3086,9 +3241,9 @@ pub const data = blk: {
30863241 .{ .param_str = "LLiLLiLLi" },
30873242 .{ .param_str = "UiUiUi" },
30883243 .{ .param_str = "ULLiULLiULLi" },
3089 .{ .param_str = "vUi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3090 .{ .param_str = "yy", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3091 .{ .param_str = "V2yV2y", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3244 .{ .param_str = "vUi", .features = "(sm_70|sm_72|sm_75|sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3245 .{ .param_str = "yy", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3246 .{ .param_str = "V2yV2y", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
30923247 .{ .param_str = "vIUs" },
30933248 .{ .param_str = "UiUiUiUi" },
30943249 .{ .param_str = "dd" },
......@@ -3107,20 +3262,20 @@ pub const data = blk: {
31073262 .{ .param_str = "ff" },
31083263 .{ .param_str = "i" },
31093264 .{ .param_str = "LLi" },
3110 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3111 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3112 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3113 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3114 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3115 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3116 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3117 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3118 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3119 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3120 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3121 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3122 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3123 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3265 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3266 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3267 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3268 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3269 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3270 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3271 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3272 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3273 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3274 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3275 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3276 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3277 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3278 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
31243279 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
31253280 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
31263281 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
......@@ -3133,10 +3288,10 @@ pub const data = blk: {
31333288 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
31343289 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
31353290 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
3136 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3137 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3138 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3139 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)", .attributes = .{ .@"const" = true } },
3291 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3292 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3293 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
3294 .{ .param_str = "i", .features = "(sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)", .attributes = .{ .@"const" = true } },
31403295 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
31413296 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
31423297 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
......@@ -3158,22 +3313,22 @@ pub const data = blk: {
31583313 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
31593314 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
31603315 .{ .param_str = "i", .attributes = .{ .@"const" = true } },
3161 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3162 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3163 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87)" },
3164 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87)" },
3165 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87)" },
3166 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87)" },
3167 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87)" },
3168 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87)" },
3169 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87)" },
3170 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87)" },
3171 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3172 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3173 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3174 .{ .param_str = "UiUii", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3175 .{ .param_str = "UiUii", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3176 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_120|sm_120a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87)" },
3316 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3317 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3318 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87|ptx88|ptx90)" },
3319 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87|ptx88|ptx90)" },
3320 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87|ptx88|ptx90)" },
3321 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87|ptx88|ptx90)" },
3322 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87|ptx88|ptx90)" },
3323 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87|ptx88|ptx90)" },
3324 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87|ptx88|ptx90)" },
3325 .{ .param_str = "ffi", .features = "(sm_100a),(ptx86|ptx87|ptx88|ptx90)" },
3326 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3327 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3328 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3329 .{ .param_str = "UiUii", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3330 .{ .param_str = "UiUii", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
3331 .{ .param_str = "iii", .features = "(sm_80|sm_86|sm_87|sm_88|sm_89|sm_90|sm_90a|sm_100|sm_100a|sm_101|sm_101a|sm_103|sm_103a|sm_110|sm_110a|sm_120|sm_120a|sm_121|sm_121a),(ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90)" },
31773332 .{ .param_str = "UicC*" },
31783333 .{ .param_str = "dd" },
31793334 .{ .param_str = "ff" },
......@@ -3192,14 +3347,14 @@ pub const data = blk: {
31923347 .{ .param_str = "iiii" },
31933348 .{ .param_str = "ffii" },
31943349 .{ .param_str = "iiii" },
3195 .{ .param_str = "fUifii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3196 .{ .param_str = "iUiiii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3197 .{ .param_str = "fUifii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3198 .{ .param_str = "iUiiii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3199 .{ .param_str = "fUifii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3200 .{ .param_str = "iUiiii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3201 .{ .param_str = "fUifii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3202 .{ .param_str = "iUiiii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3350 .{ .param_str = "fUifii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
3351 .{ .param_str = "iUiiii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
3352 .{ .param_str = "fUifii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
3353 .{ .param_str = "iUiiii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
3354 .{ .param_str = "fUifii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
3355 .{ .param_str = "iUiiii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
3356 .{ .param_str = "fUifii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
3357 .{ .param_str = "iUiiii", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
32033358 .{ .param_str = "ffii" },
32043359 .{ .param_str = "iiii" },
32053360 .{ .param_str = "ff" },
......@@ -3221,7 +3376,7 @@ pub const data = blk: {
32213376 .{ .param_str = "dd" },
32223377 .{ .param_str = "ff" },
32233378 .{ .param_str = "ff" },
3224 .{ .param_str = "V2ys", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87)" },
3379 .{ .param_str = "V2ys", .features = "(sm_100a|sm_101a|sm_120a),(ptx86|ptx87|ptx88|ptx90)" },
32253380 .{ .param_str = "dUi" },
32263381 .{ .param_str = "dUi" },
32273382 .{ .param_str = "dUi" },
......@@ -3239,13 +3394,13 @@ pub const data = blk: {
32393394 .{ .param_str = "fULLi" },
32403395 .{ .param_str = "fULLi" },
32413396 .{ .param_str = "bb" },
3242 .{ .param_str = "bUib", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3397 .{ .param_str = "bUib", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
32433398 .{ .param_str = "bb" },
3244 .{ .param_str = "bUib", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3399 .{ .param_str = "bUib", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
32453400 .{ .param_str = "Uib" },
3246 .{ .param_str = "UiUib", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3401 .{ .param_str = "UiUib", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
32473402 .{ .param_str = "bb" },
3248 .{ .param_str = "bUib", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87" },
3403 .{ .param_str = "bUib", .features = "ptx60|ptx61|ptx62|ptx63|ptx64|ptx65|ptx70|ptx71|ptx72|ptx73|ptx74|ptx75|ptx76|ptx77|ptx78|ptx80|ptx81|ptx82|ptx83|ptx84|ptx85|ptx86|ptx87|ptx88|ptx90" },
32493404 .{ .param_str = "v" },
32503405 };
32513406};
lib/compiler/aro/aro/Builtins/powerpc.zig+972-1150
......@@ -234,6 +234,10 @@ pub const Tag = enum(u16) { __builtin_addf128_round_to_odd,
234234 __builtin_altivec_vupklsb,
235235 __builtin_altivec_vupklsh,
236236 __builtin_altivec_vupklsw,
237 __builtin_amo_ldat,
238 __builtin_amo_ldat_s,
239 __builtin_amo_lwat,
240 __builtin_amo_lwat_s,
237241 __builtin_bpermd,
238242 __builtin_cbcdtd,
239243 __builtin_cdtbcd,
......@@ -254,48 +258,6 @@ pub const Tag = enum(u16) { __builtin_addf128_round_to_odd,
254258 __builtin_get_texasru,
255259 __builtin_get_tfhar,
256260 __builtin_get_tfiar,
257 __builtin_mma_assemble_acc,
258 __builtin_mma_assemble_pair,
259 __builtin_mma_build_acc,
260 __builtin_mma_disassemble_acc,
261 __builtin_mma_disassemble_pair,
262 __builtin_mma_dmxvi8gerx4,
263 __builtin_mma_dmxvi8gerx4pp,
264 __builtin_mma_dmxvi8gerx4spp,
265 __builtin_mma_lxvp,
266 __builtin_mma_pmdmxvi8gerx4,
267 __builtin_mma_pmdmxvi8gerx4pp,
268 __builtin_mma_pmdmxvi8gerx4spp,
269 __builtin_mma_pmxvbf16ger2,
270 __builtin_mma_pmxvf16ger2,
271 __builtin_mma_pmxvf32ger,
272 __builtin_mma_pmxvf64ger,
273 __builtin_mma_pmxvi16ger2,
274 __builtin_mma_pmxvi16ger2pp,
275 __builtin_mma_pmxvi16ger2s,
276 __builtin_mma_pmxvi16ger2spp,
277 __builtin_mma_pmxvi4ger8,
278 __builtin_mma_pmxvi4ger8pp,
279 __builtin_mma_pmxvi8ger4,
280 __builtin_mma_pmxvi8ger4pp,
281 __builtin_mma_pmxvi8ger4spp,
282 __builtin_mma_stxvp,
283 __builtin_mma_xvbf16ger2,
284 __builtin_mma_xvf16ger2,
285 __builtin_mma_xvf32ger,
286 __builtin_mma_xvf64ger,
287 __builtin_mma_xvi16ger2,
288 __builtin_mma_xvi16ger2pp,
289 __builtin_mma_xvi16ger2s,
290 __builtin_mma_xvi16ger2spp,
291 __builtin_mma_xvi4ger8,
292 __builtin_mma_xvi4ger8pp,
293 __builtin_mma_xvi8ger4,
294 __builtin_mma_xvi8ger4pp,
295 __builtin_mma_xvi8ger4spp,
296 __builtin_mma_xxmfacc,
297 __builtin_mma_xxmtacc,
298 __builtin_mma_xxsetaccz,
299261 __builtin_mulf128_round_to_odd,
300262 __builtin_pack_longdouble,
301263 __builtin_pack_vector_int128,
......@@ -304,6 +266,8 @@ pub const Tag = enum(u16) { __builtin_addf128_round_to_odd,
304266 __builtin_ppc_addex,
305267 __builtin_ppc_addg6s,
306268 __builtin_ppc_alignx,
269 __builtin_ppc_bcdcopysign,
270 __builtin_ppc_bcdsetsign,
307271 __builtin_ppc_cbcdtd,
308272 __builtin_ppc_cdtbcd,
309273 __builtin_ppc_cmpb,
......@@ -468,9 +432,6 @@ pub const Tag = enum(u16) { __builtin_addf128_round_to_odd,
468432 __builtin_ttest,
469433 __builtin_unpack_longdouble,
470434 __builtin_unpack_vector_int128,
471 __builtin_vsx_assemble_pair,
472 __builtin_vsx_build_pair,
473 __builtin_vsx_disassemble_pair,
474435 __builtin_vsx_extractuword,
475436 __builtin_vsx_insertword,
476437 __builtin_vsx_ldrmb,
......@@ -478,7 +439,6 @@ pub const Tag = enum(u16) { __builtin_addf128_round_to_odd,
478439 __builtin_vsx_lxvd2x_be,
479440 __builtin_vsx_lxvl,
480441 __builtin_vsx_lxvll,
481 __builtin_vsx_lxvp,
482442 __builtin_vsx_lxvw4x,
483443 __builtin_vsx_lxvw4x_be,
484444 __builtin_vsx_scalar_extract_expq,
......@@ -488,7 +448,6 @@ pub const Tag = enum(u16) { __builtin_addf128_round_to_odd,
488448 __builtin_vsx_stxvd2x_be,
489449 __builtin_vsx_stxvl,
490450 __builtin_vsx_stxvll,
491 __builtin_vsx_stxvp,
492451 __builtin_vsx_stxvw4x,
493452 __builtin_vsx_stxvw4x_be,
494453 __builtin_vsx_xsmaxdp,
......@@ -631,7 +590,7 @@ pub const longest_name = 34;
631590/// If found, returns the index of the node within the `dafsa` array.
632591/// Otherwise, returns `null`.
633592pub fn findInList(first_child_index: u16, char: u8) ?u16 {
634 @setEvalBranchQuota(1134);
593 @setEvalBranchQuota(1052);
635594 var index = first_child_index;
636595 while (true) {
637596 if (dafsa[index].char == char) return index;
......@@ -726,47 +685,47 @@ const Node = packed struct {
726685
727686const dafsa = [_]Node{
728687 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
729 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 2 },
730 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 3 },
731 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 4 },
732 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 5 },
733 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 6 },
734 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 7 },
735 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 8 },
736 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 9 },
737 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 10 },
738 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 567, .child_index = 11 },
739 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 226, .child_index = 24 },
740 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 26 },
741 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 27 },
742 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 31 },
743 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 34 },
744 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 35 },
745 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 43, .child_index = 36 },
746 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 144, .child_index = 38 },
688 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 2 },
689 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 3 },
690 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 4 },
691 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 5 },
692 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 6 },
693 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 7 },
694 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 8 },
695 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 9 },
696 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 10 },
697 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 526, .child_index = 11 },
698 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 230, .child_index = 24 },
699 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 27 },
700 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 28 },
701 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 32 },
702 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 35 },
703 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 36 },
704 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 37 },
705 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 146, .child_index = 38 },
747706 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 42 },
748707 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 43 },
749708 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 46 },
750709 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 53 },
751 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 107, .child_index = 54 },
710 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 102, .child_index = 54 },
752711 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 55 },
753 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 56 },
754 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 57 },
755 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 58 },
756 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 59 },
757 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 60 },
758 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 61 },
759 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 62 },
760 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 63 },
761 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 64 },
762 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 65 },
763 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 66 },
764 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 42, .child_index = 67 },
712 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 224, .child_index = 56 },
713 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 57 },
714 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 58 },
715 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 59 },
716 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 60 },
717 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 61 },
718 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 62 },
719 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 63 },
720 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 64 },
721 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 65 },
722 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 66 },
723 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 67 },
765724 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 68 },
766725 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 69 },
767726 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 70 },
768727 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 71 },
769 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 140, .child_index = 72 },
728 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 142, .child_index = 72 },
770729 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 73 },
771730 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 74 },
772731 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 75 },
......@@ -779,29 +738,29 @@ const dafsa = [_]Node{
779738 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 83 },
780739 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 85 },
781740 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 86 },
782 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 107, .child_index = 87 },
741 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 102, .child_index = 87 },
783742 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 88 },
784743 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 90 },
785 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
786 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 92 },
787 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 93 },
788 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 94 },
789 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 95 },
790 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 97 },
791 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 98 },
792 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 99 },
793 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 102 },
794 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 103 },
795 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 42, .child_index = 104 },
796 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 102 },
744 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 91 },
745 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 92 },
746 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 93 },
747 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 94 },
748 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 95 },
749 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 96 },
750 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 98 },
751 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 99 },
752 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 100 },
753 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 103 },
754 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 104 },
755 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 103 },
797756 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 105 },
798757 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 106 },
799758 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 107 },
800 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 140, .child_index = 108 },
759 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 142, .child_index = 108 },
801760 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 109 },
802761 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 110 },
803762 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 113 },
804 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 102 },
763 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 103 },
805764 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 114 },
806765 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 115 },
807766 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 116 },
......@@ -812,1111 +771,1015 @@ const dafsa = [_]Node{
812771 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 121 },
813772 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 122 },
814773 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 123 },
815 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 107, .child_index = 124 },
774 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 102, .child_index = 124 },
816775 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 125 },
817776 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 126 },
818777 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 127 },
819 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 128 },
778 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 128 },
779 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 129 },
820780 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 107 },
821 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 129 },
822 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 130 },
823 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 131 },
824 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 131 },
825 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 132 },
781 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 130 },
782 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 131 },
783 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 132 },
784 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 132 },
785 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 133 },
826786 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
827 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 133 },
787 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 134 },
828788 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 125 },
829 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 133 },
789 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 134 },
830790 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 125 },
831 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 134 },
832 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 42, .child_index = 135 },
833 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 142 },
834 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
835 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
836 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 140, .child_index = 144 },
837 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 159 },
838 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 134 },
839 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 160 },
840 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 161 },
841 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 102 },
842 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 162 },
843 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
844 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 164 },
845 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 165 },
846 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 166 },
847 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 168 },
848 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 169 },
849 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 170 },
850 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 171 },
791 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 135 },
792 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 136 },
793 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
794 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
795 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 142, .child_index = 138 },
796 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 154 },
797 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 135 },
798 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 155 },
799 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 156 },
800 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 103 },
801 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 157 },
802 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 158 },
803 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 159 },
804 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 160 },
805 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 161 },
806 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
807 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 164 },
808 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 165 },
809 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 166 },
851810 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 69 },
852 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 107, .child_index = 172 },
853 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 180 },
854 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
855 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 182 },
856 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
857 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
858 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
859 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 183 },
860 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 184 },
861 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 186 },
862 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 187 },
863 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 189 },
864 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 190 },
865 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 191 },
866 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 193 },
867 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 194 },
868 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 195 },
869 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 196 },
870 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 198 },
811 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 102, .child_index = 167 },
812 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 172 },
813 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
814 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 174 },
815 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 175 },
816 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
817 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
818 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
819 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 177 },
820 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 178 },
821 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 180 },
822 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 181 },
823 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 183 },
871824 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
872 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 200 },
873 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 202 },
874 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 206 },
875 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 207 },
876 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 42, .child_index = 209 },
877 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 215 },
878 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 216 },
879 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 220 },
880 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 23, .child_index = 225 },
881 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 230 },
882 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 231 },
883 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 233 },
884 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 237 },
885 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 241 },
886 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 245 },
887 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 160 },
888 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
889 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
890 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 247 },
891 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 248 },
892 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 249 },
893 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 250 },
894 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 251 },
895 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 252 },
896 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 253 },
897 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 102 },
898 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 254 },
825 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 185 },
826 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 187 },
827 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 188 },
828 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 192 },
829 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 193 },
830 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 42, .child_index = 195 },
831 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 201 },
832 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 202 },
833 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 206 },
834 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 23, .child_index = 211 },
835 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 216 },
836 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 217 },
837 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 219 },
838 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 223 },
839 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 227 },
840 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 231 },
841 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 155 },
842 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
843 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
844 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 233 },
845 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 234 },
846 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 235 },
847 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 236 },
848 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 237 },
849 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 238 },
850 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 239 },
851 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 103 },
852 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 240 },
899853 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
900 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 255 },
901 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 256 },
902 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 257 },
903 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 258 },
904 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 259 },
905 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 260 },
906 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 262 },
907 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 84, .child_index = 264 },
908 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 267 },
854 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 241 },
855 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 242 },
856 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 243 },
857 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 245 },
858 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 84, .child_index = 247 },
859 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 250 },
909860 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
910 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 268 },
911 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
912 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 269 },
913 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 270 },
861 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 251 },
862 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 252 },
863 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 252 },
864 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
865 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 253 },
866 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 254 },
914867 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
915 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 271 },
916 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 272 },
917 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 274 },
918 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 275 },
919 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 276 },
920 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 277 },
921 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 278 },
922 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 279 },
923 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 193 },
924 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 281 },
925 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 284 },
926 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 286 },
927 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 287 },
928 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 288 },
929 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 289 },
930 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 58 },
931 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 59 },
932 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 290 },
933 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 291 },
934 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 292 },
935 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 293 },
936 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 294 },
937 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 295 },
938 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 297 },
939 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 299 },
940 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 300 },
941 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 302 },
942 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 305 },
943 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 307 },
944 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 308 },
945 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 309 },
946 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 310 },
947 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 311 },
948 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 312 },
949 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 312 },
950 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 312 },
951 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 313 },
952 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 314 },
953 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 316 },
954 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 318 },
955 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 322 },
956 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 323 },
957 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 326 },
958 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
959 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 328 },
960 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 329 },
961 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 330 },
962 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 331 },
963 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 332 },
964 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 334 },
965 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 335 },
966 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 336 },
967 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 342 },
968 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 343 },
969 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 344 },
970 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 345 },
971 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 346 },
868 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 255 },
869 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 256 },
870 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 258 },
871 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 259 },
872 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 260 },
873 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 261 },
874 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 262 },
875 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 59 },
876 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 60 },
877 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 263 },
878 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 264 },
879 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 265 },
880 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 266 },
881 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 267 },
882 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 268 },
883 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 270 },
884 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 272 },
885 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 273 },
886 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 275 },
887 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 278 },
888 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 280 },
889 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 281 },
890 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 282 },
891 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 283 },
892 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 284 },
893 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 285 },
894 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 285 },
895 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 285 },
896 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 286 },
897 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 287 },
898 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 289 },
899 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 291 },
900 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 295 },
901 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 296 },
902 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 299 },
903 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 300 },
904 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 301 },
905 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 302 },
906 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 303 },
907 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 304 },
908 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 305 },
909 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 307 },
910 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 308 },
911 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 309 },
912 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 315 },
913 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 316 },
914 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 317 },
915 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 318 },
916 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 319 },
972917 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
973 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 347 },
918 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 320 },
974919 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
975 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 348 },
920 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 321 },
976921 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
977922 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
978 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
979 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 351 },
980 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 352 },
981 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 353 },
982 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 161 },
983 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 354 },
984 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 355 },
985 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 356 },
986 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 357 },
987 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 358 },
988 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 359 },
989 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 360 },
990 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 361 },
991 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 362 },
992 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 364 },
993 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 75, .child_index = 365 },
994 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 375 },
995 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 379 },
996 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 380 },
923 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 323 },
924 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 324 },
925 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 325 },
926 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
927 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 156 },
928 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
929 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 328 },
930 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 329 },
931 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 330 },
932 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 331 },
933 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 332 },
934 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 334 },
935 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 75, .child_index = 335 },
936 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 345 },
937 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 349 },
938 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 350 },
939 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 351 },
997940 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
998 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 344 },
999 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 381 },
1000 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 382 },
1001 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 382 },
1002 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 383 },
1003 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 384 },
1004 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 385 },
1005 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 386 },
1006 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1007 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 388 },
1008 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 389 },
1009 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 390 },
1010 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 391 },
1011 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 394 },
1012 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 397 },
941 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
942 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 352 },
943 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 353 },
944 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 353 },
945 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 354 },
946 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 355 },
947 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 356 },
948 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 358 },
949 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 359 },
950 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 361 },
951 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 364 },
952 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 365 },
953 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 369 },
954 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 370 },
955 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 371 },
956 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 373 },
957 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 375 },
958 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 376 },
959 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 377 },
960 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 378 },
961 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 379 },
962 .{ .char = 'e', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 381 },
963 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 382 },
964 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 387 },
965 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 388 },
966 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 389 },
967 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 390 },
968 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 166 },
969 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 391 },
970 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 392 },
971 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 316 },
972 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 393 },
973 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 394 },
974 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 393 },
975 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 284 },
976 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 395 },
977 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 396 },
978 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 397 },
979 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 398 },
980 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 399 },
981 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 400 },
982 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 396 },
983 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 401 },
984 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 398 },
1013985 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 399 },
1014 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 400 },
1015 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 401 },
1016 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 402 },
1017 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 404 },
986 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 402 },
987 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 403 },
988 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 404 },
1018989 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 405 },
1019 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 408 },
1020 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 409 },
1021 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 413 },
1022 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 414 },
1023 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 415 },
1024 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 417 },
1025 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 419 },
1026 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 420 },
1027 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 421 },
1028 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 422 },
1029 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 423 },
1030 .{ .char = 'e', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 425 },
1031 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 426 },
1032 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 431 },
1033 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 432 },
1034 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 433 },
1035 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 434 },
1036 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 171 },
1037 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
1038 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 436 },
1039 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 343 },
1040 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 437 },
1041 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 438 },
1042 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 437 },
1043 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 311 },
1044 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 439 },
1045 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 440 },
1046 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 441 },
1047 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 442 },
1048 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 443 },
1049 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 444 },
1050 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 440 },
1051 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 445 },
1052 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 442 },
1053 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 443 },
1054 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 446 },
1055 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 447 },
1056 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 448 },
1057 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 449 },
1058 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 451 },
1059 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 452 },
1060 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 453 },
1061 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 454 },
1062 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 456 },
1063 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 457 },
1064 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 459 },
1065 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 459 },
1066 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 460 },
1067 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 459 },
1068 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 461 },
1069 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 459 },
1070 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 462 },
1071 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 463 },
990 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 407 },
991 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 408 },
992 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 409 },
993 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 410 },
994 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 412 },
995 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 413 },
996 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 415 },
997 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 415 },
998 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 416 },
999 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 415 },
1000 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 417 },
1001 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 415 },
1002 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 418 },
1003 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 419 },
10721004 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1073 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 464 },
1074 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 465 },
1075 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 466 },
1076 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 467 },
1077 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 467 },
1005 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 420 },
1006 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 421 },
1007 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 422 },
1008 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 423 },
1009 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 423 },
10781010 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1079 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 171 },
1080 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
1011 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 166 },
1012 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
10811013 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1082 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
1083 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 469 },
1084 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 470 },
1085 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 471 },
1086 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 472 },
1087 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
1088 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 474 },
1089 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 478 },
1090 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 473 },
1091 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 360 },
1092 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 479 },
1093 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 481 },
1094 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 482 },
1095 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 485 },
1096 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 486 },
1097 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 487 },
1098 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 491 },
1099 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 492 },
1100 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 495 },
1101 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 496 },
1102 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 499 },
1103 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 501 },
1104 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 502 },
1105 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 503 },
1106 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 504 },
1107 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
1108 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 506 },
1109 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 511 },
1110 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1111 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 513 },
1112 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 514 },
1113 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 189 },
1114 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 515 },
1115 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1116 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 277 },
1117 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 281 },
1118 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 516 },
1119 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 517 },
1120 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 518 },
1121 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 519 },
1122 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 520 },
1123 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 521 },
1124 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 522 },
1125 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 523 },
1126 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 523 },
1127 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 524 },
1128 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 525 },
1129 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 526 },
1130 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 527 },
1014 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 424 },
1015 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 425 },
1016 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 426 },
1017 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 427 },
1018 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 430 },
1019 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 426 },
1020 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 330 },
1021 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 431 },
1022 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 433 },
1023 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 434 },
1024 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 437 },
1025 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 438 },
1026 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 439 },
1027 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 443 },
1028 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 444 },
1029 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 447 },
1030 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 448 },
1031 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 451 },
1032 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 453 },
1033 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 454 },
1034 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 455 },
1035 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 456 },
1036 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 457 },
1037 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 224, .child_index = 458 },
1038 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 463 },
1039 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 464 },
1040 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 465 },
1041 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 466 },
1042 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 467 },
1043 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 468 },
11311044 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 126 },
1132 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 528 },
1045 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 469 },
1046 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 470 },
1047 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 471 },
11331048 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1134 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 529 },
1135 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 530 },
1136 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 531 },
1137 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 532 },
1138 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 171 },
1139 .{ .char = 't', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 533 },
1049 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 472 },
1050 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
1051 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 474 },
1052 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 475 },
1053 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 166 },
1054 .{ .char = 't', .end_of_word = true, .end_of_list = false, .number = 4, .child_index = 476 },
11401055 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1141 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 535 },
1142 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 536 },
1143 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 143 },
1144 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
1145 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 537 },
1146 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 539 },
1147 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 353 },
1148 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 541 },
1149 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 542 },
1150 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 543 },
1151 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 544 },
1152 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 421 },
1056 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 478 },
1057 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 479 },
1058 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 137 },
1059 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
1060 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 480 },
1061 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 482 },
1062 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
1063 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 484 },
1064 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 485 },
1065 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 486 },
1066 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 487 },
1067 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 377 },
11531068 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
11541069 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1155 .{ .char = 'm', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 425 },
1156 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 425 },
1157 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 425 },
1158 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 425 },
1159 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 545 },
1160 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 425 },
1161 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1162 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 547 },
1163 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 548 },
1164 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 549 },
1165 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
1166 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 550 },
1167 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 553 },
1168 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 555 },
1169 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 558 },
1170 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1171 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1172 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
1173 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 560 },
1174 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 562 },
1175 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 564 },
1176 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 565 },
1177 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 566 },
1178 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 567 },
1179 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
1180 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 568 },
1181 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 569 },
1182 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 569 },
1183 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
1184 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 570 },
1185 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 571 },
1070 .{ .char = 'm', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 381 },
1071 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 381 },
1072 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 381 },
1073 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 381 },
1074 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 488 },
1075 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 381 },
1076 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 489 },
1077 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 490 },
1078 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 491 },
1079 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 492 },
1080 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
1081 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 493 },
1082 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 496 },
1083 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 498 },
1084 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 501 },
1085 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 465 },
1086 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 465 },
1087 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 502 },
1088 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 503 },
1089 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 505 },
1090 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
1091 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 508 },
1092 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 509 },
1093 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 510 },
1094 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
1095 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 511 },
1096 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1097 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
1098 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
1099 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 513 },
1100 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 514 },
11861101 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1187 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
1188 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 344 },
1189 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 572 },
1190 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 573 },
1102 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
1103 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
1104 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 515 },
1105 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 516 },
11911106 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1192 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 574 },
1193 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 575 },
1194 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 576 },
1195 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 577 },
1196 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 578 },
1197 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 579 },
1198 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 255 },
1199 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 580 },
1200 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 581 },
1201 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 530 },
1202 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 582 },
1203 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 558 },
1204 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1205 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 583 },
1206 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 584 },
1207 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 585 },
1208 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 586 },
1209 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 587 },
1210 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 588 },
1211 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 589 },
1212 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 590 },
1213 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 595 },
1214 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 596 },
1215 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 597 },
1216 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 599 },
1217 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 600 },
1218 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 601 },
1219 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 602 },
1220 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 604 },
1221 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 605 },
1222 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 607 },
1223 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 609 },
1224 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 485 },
1225 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 610 },
1226 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 611 },
1227 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 596 },
1228 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 613 },
1229 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 614 },
1230 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 615 },
1231 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
1232 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 617 },
1233 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 618 },
1234 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 619 },
1235 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 620 },
1236 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 621 },
1237 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 623 },
1238 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 199, .child_index = 624 },
1239 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 637 },
1107 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 517 },
1108 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 518 },
1109 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 519 },
1110 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 520 },
1111 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 521 },
1112 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 522 },
1113 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
1114 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 523 },
1115 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 501 },
1116 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 524 },
1117 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 525 },
1118 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 526 },
1119 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
1120 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 528 },
1121 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 529 },
1122 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 530 },
1123 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 531 },
1124 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 536 },
1125 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 537 },
1126 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 538 },
1127 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 540 },
1128 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 541 },
1129 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 542 },
1130 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 543 },
1131 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 545 },
1132 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 546 },
1133 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 548 },
1134 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 550 },
1135 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 437 },
1136 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 551 },
1137 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 552 },
1138 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 537 },
1139 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 554 },
1140 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 555 },
1141 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 556 },
1142 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 557 },
1143 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 558 },
1144 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
1145 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 560 },
1146 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 561 },
1147 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 562 },
1148 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 564 },
1149 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 199, .child_index = 565 },
1150 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1151 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 578 },
12401152 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1241 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 638 },
1242 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 639 },
1243 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 640 },
1244 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 517 },
1245 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 641 },
1246 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 642 },
1247 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 642 },
1248 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 643 },
1249 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 644 },
1250 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 645 },
1251 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 646 },
1252 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 647 },
1253 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 648 },
1254 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 649 },
1153 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 579 },
1154 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 580 },
12551155 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1256 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
1257 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 530 },
1156 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
1157 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 581 },
1158 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 582 },
1159 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
12581160 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1259 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 650 },
1260 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 651 },
1261 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 652 },
1161 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 583 },
1162 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 584 },
1163 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 585 },
12621164 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
12631165 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1264 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 653 },
1265 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 654 },
1266 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 654 },
1267 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 655 },
1268 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 655 },
1269 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 656 },
1270 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 425 },
1271 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 425 },
1272 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 657 },
1273 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 658 },
1274 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 425 },
1275 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 659 },
1276 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 660 },
1277 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 661 },
1278 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
1279 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
1280 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1281 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 143 },
1282 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
1166 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 586 },
1167 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 587 },
1168 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 587 },
1169 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 588 },
1170 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 588 },
1171 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 589 },
1172 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 381 },
1173 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 381 },
1174 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 590 },
1175 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 591 },
1176 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 381 },
1177 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 592 },
1178 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 593 },
1179 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 594 },
1180 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 465 },
1181 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 465 },
1182 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 465 },
1183 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 137 },
1184 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
12831185 .{ .char = 'e', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
12841186 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
12851187 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
12861188 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
12871189 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1288 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 662 },
1289 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 577 },
1290 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 186 },
1291 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 186 },
1292 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 664 },
1293 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 665 },
1294 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 666 },
1295 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 667 },
1296 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 668 },
1297 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 669 },
1298 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 670 },
1299 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 672 },
1300 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 550 },
1301 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 673 },
1302 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 675 },
1190 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 595 },
1191 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 520 },
1192 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 180 },
1193 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 180 },
1194 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 597 },
1195 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 598 },
1196 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 599 },
1197 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 600 },
1198 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 601 },
1199 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 602 },
1200 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 603 },
1201 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 605 },
1202 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 493 },
1203 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 606 },
1204 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 608 },
13031205 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1304 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 676 },
1206 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 609 },
13051207 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1306 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 677 },
1307 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 678 },
1308 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 679 },
1309 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 680 },
1310 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 681 },
1311 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 681 },
1312 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 682 },
1313 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 683 },
1314 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 683 },
1315 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1316 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 684 },
1317 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 686 },
1318 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 687 },
1319 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 688 },
1320 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 689 },
1321 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 690 },
1322 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 692 },
1323 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1324 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 693 },
1325 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 694 },
1326 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1327 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1328 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 695 },
1329 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1330 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 696 },
1331 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 600 },
1332 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 697 },
1333 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 387 },
1334 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1335 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 697 },
1336 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 698 },
1337 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 699 },
1338 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 700 },
1339 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 609 },
1340 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 701 },
1341 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 702 },
1342 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 703 },
1343 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 704 },
1344 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 705 },
1345 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 706 },
1346 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 707 },
1347 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 708 },
1348 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 710 },
1349 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 713 },
1350 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 714 },
1351 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 715 },
1352 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 716 },
1353 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 60, .child_index = 719 },
1354 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 724 },
1355 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 725 },
1356 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 726 },
1357 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 728 },
1358 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 729 },
1359 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 39, .child_index = 730 },
1360 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 735 },
1361 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 736 },
1362 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 739 },
1363 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 743 },
1364 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 748 },
1365 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 186 },
1366 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 749 },
1367 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 523 },
1368 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 750 },
1369 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 751 },
1370 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 752 },
1371 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 753 },
1372 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 754 },
1373 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 755 },
1374 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 463 },
1375 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 756 },
1376 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 757 },
1377 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 758 },
1378 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 759 },
1208 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 610 },
1209 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 611 },
1210 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 612 },
1211 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 612 },
1212 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 613 },
1213 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 614 },
1214 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 614 },
1215 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1216 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 615 },
1217 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 617 },
1218 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 618 },
1219 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 619 },
1220 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 620 },
1221 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 621 },
1222 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 623 },
1223 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1224 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 624 },
1225 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 625 },
1226 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1227 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1228 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 626 },
1229 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1230 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 627 },
1231 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 541 },
1232 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 628 },
1233 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 629 },
1234 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
1235 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 628 },
1236 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 630 },
1237 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 631 },
1238 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 632 },
1239 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 550 },
1240 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 633 },
1241 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 634 },
1242 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 635 },
1243 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 636 },
1244 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 637 },
1245 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 638 },
1246 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 639 },
1247 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 640 },
1248 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 642 },
1249 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 645 },
1250 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 646 },
1251 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 647 },
1252 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 648 },
1253 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 60, .child_index = 651 },
1254 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 656 },
1255 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 657 },
1256 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 658 },
1257 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 660 },
1258 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 661 },
1259 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 39, .child_index = 662 },
1260 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 667 },
1261 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 668 },
1262 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 671 },
1263 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 675 },
1264 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 680 },
1265 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 180 },
1266 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 681 },
1267 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 682 },
1268 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 683 },
1269 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 684 },
1270 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 685 },
13791271 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1380 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 760 },
1381 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 761 },
1272 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 686 },
1273 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 687 },
13821274 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
13831275 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1384 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 762 },
1385 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 425 },
1386 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 763 },
1387 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 764 },
1388 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 765 },
1389 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 766 },
1276 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 688 },
1277 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 381 },
1278 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 689 },
1279 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 690 },
1280 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 691 },
1281 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 692 },
13901282 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
13911283 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1392 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 767 },
1393 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 768 },
1394 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 530 },
1395 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 769 },
1396 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 771 },
1284 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 693 },
1285 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 694 },
1286 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
1287 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 695 },
1288 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 697 },
13971289 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
13981290 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
13991291 .{ .char = 'f', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1400 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 772 },
1401 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 773 },
1402 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 774 },
1403 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 775 },
1404 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 776 },
1405 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 777 },
1406 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 778 },
1407 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 779 },
1408 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 780 },
1409 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 781 },
1410 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 782 },
1411 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1412 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 783 },
1413 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 784 },
1414 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 599 },
1415 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 786 },
1416 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 787 },
1417 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 789 },
1418 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 790 },
1419 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 795 },
1420 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 795 },
1421 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1422 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 797 },
1423 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 797 },
1424 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 694 },
1425 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 798 },
1426 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 802 },
1427 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1428 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 530 },
1429 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 803 },
1430 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1431 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 804 },
1292 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 698 },
1293 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 699 },
1294 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 700 },
1295 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 701 },
1296 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 702 },
1297 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 703 },
1298 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 704 },
1299 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 705 },
1300 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 706 },
1301 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
1302 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 707 },
1303 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 708 },
1304 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 540 },
1305 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
1306 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 711 },
1307 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 713 },
1308 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 714 },
1309 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 719 },
1310 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 719 },
1311 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1312 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 721 },
1313 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 721 },
1314 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 625 },
1315 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 722 },
1316 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1317 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 726 },
1318 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1319 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
1320 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 727 },
1321 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1322 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 728 },
14321323 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1433 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
1434 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 669 },
1435 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 806 },
1436 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 165 },
1437 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 533 },
1438 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 807 },
1439 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 810 },
1440 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 558 },
1441 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 812 },
1442 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 813 },
1443 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 814 },
1444 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 816 },
1445 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 817 },
1446 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 818 },
1447 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 819 },
1448 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 821 },
1449 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 823 },
1450 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 824 },
1451 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 825 },
1452 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 828 },
1453 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 829 },
1454 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 831 },
1455 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 530 },
1456 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 832 },
1457 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 833 },
1458 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 834 },
1459 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 836 },
1460 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 838 },
1461 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 839 },
1462 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 840 },
1463 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 841 },
1464 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 842 },
1465 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 843 },
1466 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 846 },
1467 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 847 },
1468 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 848 },
1469 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 849 },
1470 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 853 },
1471 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 854 },
1472 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 855 },
1473 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 857 },
1474 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 860 },
1475 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 861 },
1476 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 863 },
1477 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 864 },
1478 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 865 },
1479 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 866 },
1480 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1481 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 867 },
1482 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 868 },
1483 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 869 },
1484 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 870 },
1485 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 871 },
1486 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 872 },
1487 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 873 },
1324 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 729 },
1325 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 602 },
1326 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 730 },
1327 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 160 },
1328 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 476 },
1329 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 731 },
1330 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 734 },
1331 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 501 },
1332 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 736 },
1333 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 737 },
1334 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 738 },
1335 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 740 },
1336 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 741 },
1337 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 742 },
1338 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 743 },
1339 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 745 },
1340 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 40, .child_index = 747 },
1341 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 748 },
1342 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 749 },
1343 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 752 },
1344 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 753 },
1345 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 755 },
1346 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
1347 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 756 },
1348 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 757 },
1349 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 758 },
1350 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 760 },
1351 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 762 },
1352 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 763 },
1353 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 764 },
1354 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 765 },
1355 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 766 },
1356 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 767 },
1357 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 770 },
1358 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 771 },
1359 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 772 },
1360 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 773 },
1361 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 777 },
1362 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 778 },
1363 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 779 },
1364 .{ .char = 'r', .end_of_word = true, .end_of_list = false, .number = 6, .child_index = 781 },
1365 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 784 },
1366 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 785 },
1367 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 787 },
1368 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 788 },
1369 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 789 },
1370 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 684 },
1371 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 790 },
1372 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 791 },
14881373 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1489 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 874 },
1490 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 875 },
1491 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 425 },
1492 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 876 },
1493 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 877 },
1494 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 878 },
1495 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 879 },
1496 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 880 },
1374 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 792 },
1375 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 793 },
1376 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 381 },
1377 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 794 },
1378 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 795 },
1379 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 796 },
1380 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 797 },
1381 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 798 },
14971382 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
14981383 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1499 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 882 },
1500 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 883 },
1501 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 884 },
1502 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 773 },
1503 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 885 },
1504 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 886 },
1505 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 887 },
1506 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 888 },
1507 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 889 },
1508 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 890 },
1509 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 891 },
1510 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 892 },
1511 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 894 },
1512 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 894 },
1513 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 894 },
1514 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 896 },
1515 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 897 },
1516 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
1517 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1518 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 900 },
1519 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 387 },
1520 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 387 },
1521 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 901 },
1522 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 901 },
1523 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 789 },
1524 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 683 },
1525 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1384 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 800 },
1385 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 801 },
1386 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 802 },
1387 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 699 },
1388 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 803 },
1389 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 804 },
1390 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
1391 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 806 },
1392 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 807 },
1393 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 808 },
1394 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 810 },
1395 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 810 },
1396 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 810 },
1397 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 812 },
1398 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 813 },
1399 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 815 },
1400 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
1401 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 816 },
1402 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 629 },
1403 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 629 },
1404 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 817 },
1405 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 817 },
1406 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 713 },
1407 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 614 },
1408 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
15261409 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
15271410 .{ .char = 'm', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
15281411 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
15291412 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1530 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 902 },
1531 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1532 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 903 },
1533 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 669 },
1534 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 904 },
1535 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 527 },
1536 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 527 },
1537 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
1413 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 818 },
1414 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1415 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 819 },
1416 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 602 },
1417 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 820 },
1418 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 468 },
1419 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 468 },
1420 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
15381421 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
15391422 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1540 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 905 },
1541 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 906 },
1542 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 807 },
1543 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 558 },
1544 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 908 },
1545 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 909 },
1546 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 912 },
1547 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 527 },
1548 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
1549 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 914 },
1550 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 916 },
1551 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 921 },
1552 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 925 },
1553 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 926 },
1554 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 926 },
1555 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 916 },
1556 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 927 },
1557 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 928 },
1558 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 930 },
1559 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
1560 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 932 },
1561 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 934 },
1562 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 935 },
1563 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 936 },
1564 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 939 },
1565 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 940 },
1566 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 936 },
1567 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 941 },
1568 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 942 },
1569 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 945 },
1570 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 946 },
1571 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 527 },
1572 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 947 },
1573 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 949 },
1574 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 951 },
1575 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1576 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 952 },
1423 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 821 },
1424 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 822 },
1425 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 731 },
1426 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 501 },
1427 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 824 },
1428 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 825 },
1429 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 828 },
1430 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 468 },
1431 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
1432 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 830 },
1433 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 832 },
1434 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 837 },
1435 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 841 },
1436 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 842 },
1437 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 842 },
1438 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 832 },
1439 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 843 },
1440 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 844 },
1441 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 846 },
1442 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
1443 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 848 },
1444 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 850 },
1445 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 851 },
1446 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 852 },
1447 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 855 },
1448 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 856 },
1449 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 852 },
1450 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 857 },
1451 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 858 },
1452 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 861 },
1453 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 862 },
1454 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 468 },
1455 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 863 },
1456 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 865 },
1457 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 867 },
1458 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
1459 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 868 },
15771460 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
15781461 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
15791462 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1580 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 956 },
1581 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 957 },
1582 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 958 },
1463 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 872 },
1464 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 873 },
1465 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 874 },
15831466 .{ .char = 'o', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
15841467 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1585 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 959 },
1468 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 875 },
15861469 .{ .char = 'o', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
15871470 .{ .char = 'v', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1588 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 962 },
1589 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 909 },
1590 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 963 },
1591 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 966 },
1592 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 968 },
1593 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 969 },
1594 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 269 },
1595 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 970 },
1596 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 971 },
1597 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 972 },
1598 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 655 },
1599 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
1600 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 975 },
1601 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 976 },
1602 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 978 },
1603 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 980 },
1604 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 981 },
1605 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 982 },
1606 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 983 },
1607 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 676 },
1608 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 986 },
1609 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 987 },
1610 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 670 },
1611 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 988 },
1612 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 989 },
1613 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 990 },
1614 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 991 },
1615 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 678 },
1616 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 992 },
1617 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 780 },
1618 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
1619 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 353 },
1620 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 994 },
1621 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 995 },
1622 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 996 },
1623 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 996 },
1624 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 997 },
1471 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 878 },
1472 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 825 },
1473 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 879 },
1474 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 882 },
1475 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 884 },
1476 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 885 },
1477 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 886 },
1478 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 887 },
1479 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 889 },
1480 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 891 },
1481 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 892 },
1482 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 893 },
1483 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 894 },
1484 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 609 },
1485 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 897 },
1486 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 898 },
1487 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 603 },
1488 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
1489 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 900 },
1490 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 901 },
1491 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 902 },
1492 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 704 },
1493 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 903 },
1494 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
1495 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 904 },
1496 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 905 },
1497 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 906 },
1498 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 906 },
1499 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 907 },
16251500 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1626 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 998 },
1627 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 998 },
1628 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 999 },
1629 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1000 },
1630 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 605 },
1631 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1001 },
1632 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1005 },
1633 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1634 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 512 },
1635 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1006 },
1636 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1011 },
1637 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1012 },
1638 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1013 },
1639 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1013 },
1640 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 959 },
1641 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 959 },
1642 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 530 },
1643 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 530 },
1501 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
1502 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
1503 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 909 },
1504 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 910 },
1505 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 546 },
1506 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 911 },
1507 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 915 },
1508 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 465 },
1509 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 465 },
1510 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 916 },
1511 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 921 },
1512 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 922 },
1513 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 923 },
1514 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 923 },
1515 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 875 },
1516 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 875 },
1517 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 473 },
1518 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
16441519 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
16451520 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
16461521 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
1647 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 610 },
1522 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 551 },
16481523 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1649 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1016 },
1650 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1017 },
1651 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1018 },
1652 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1020 },
1653 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1021 },
1654 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1655 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1022 },
1656 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1024 },
1657 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 934 },
1658 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1025 },
1659 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1026 },
1660 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1029 },
1661 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1031 },
1662 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 847 },
1663 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 847 },
1664 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 387 },
1665 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1033 },
1666 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 959 },
1667 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1037 },
1668 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 939 },
1669 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1038 },
1670 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 912 },
1671 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1022 },
1672 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 912 },
1673 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1041 },
1674 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 958 },
1675 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1042 },
1676 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1042 },
1677 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1044 },
1678 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1044 },
1679 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1045 },
1524 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 926 },
1525 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 927 },
1526 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 928 },
1527 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 930 },
1528 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 931 },
1529 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1530 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 932 },
1531 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 934 },
1532 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 850 },
1533 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 935 },
1534 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 936 },
1535 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 939 },
1536 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 941 },
1537 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 771 },
1538 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 771 },
1539 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 629 },
1540 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 943 },
1541 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 875 },
1542 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 947 },
1543 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 855 },
1544 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 948 },
1545 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 828 },
1546 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 932 },
1547 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 828 },
1548 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 951 },
1549 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 874 },
1550 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 952 },
1551 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 952 },
1552 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 954 },
1553 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 954 },
1554 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 955 },
16801555 .{ .char = 'm', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
16811556 .{ .char = 'n', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
16821557 .{ .char = 'p', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
16831558 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1684 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
1685 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1046 },
1686 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1047 },
1559 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
1560 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 956 },
1561 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 957 },
16871562 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
16881563 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
16891564 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1690 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1048 },
1691 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1050 },
1692 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1051 },
1693 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 998 },
1694 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1053 },
1695 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1053 },
1696 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1055 },
1697 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1057 },
1698 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1058 },
1699 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1700 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 387 },
1701 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1060 },
1702 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1061 },
1703 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1062 },
1704 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1063 },
1705 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1064 },
1706 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 982 },
1707 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1065 },
1708 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1066 },
1709 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1067 },
1710 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1711 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1068 },
1712 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1069 },
1713 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 311 },
1714 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1070 },
1715 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1071 },
1716 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1072 },
1717 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1073 },
1718 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1074 },
1719 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1075 },
1720 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
1721 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
1722 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1076 },
1723 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1077 },
1724 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1078 },
1725 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1079 },
1726 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1727 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1080 },
1728 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1729 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1730 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1731 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1732 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
1733 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1081 },
1734 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1735 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1736 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1737 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1738 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
1739 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1082 },
1740 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 344 },
1741 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 181 },
1742 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 181 },
1743 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1744 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 996 },
1745 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1084 },
1746 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1016 },
1747 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1086 },
1748 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1089 },
1749 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1033 },
1750 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 344 },
1751 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 344 },
1752 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1094 },
1753 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1095 },
1754 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1096 },
1755 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1096 },
1756 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1097 },
1757 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 527 },
1758 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
1759 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 527 },
1760 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
1565 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 958 },
1566 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 960 },
1567 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 961 },
1568 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
1569 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 963 },
1570 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 963 },
1571 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 965 },
1572 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 966 },
1573 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 234 },
1574 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 967 },
1575 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 968 },
1576 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 893 },
1577 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 969 },
1578 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 970 },
1579 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 971 },
1580 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
1581 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 972 },
1582 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 973 },
1583 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 284 },
1584 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 974 },
1585 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 975 },
1586 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 976 },
1587 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 977 },
1588 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 978 },
1589 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 979 },
1590 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
1591 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
1592 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 981 },
1593 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 982 },
1594 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 983 },
1595 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1596 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 984 },
1597 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1598 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1599 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1600 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1601 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
1602 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 985 },
1603 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1604 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1605 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1606 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1607 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
1608 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 986 },
1609 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
1610 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 173 },
1611 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 173 },
1612 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1613 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 906 },
1614 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 988 },
1615 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 926 },
1616 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 990 },
1617 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 993 },
1618 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 943 },
1619 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 317 },
1620 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
1621 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 998 },
1622 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 999 },
1623 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1000 },
1624 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1000 },
1625 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1001 },
1626 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 468 },
1627 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
1628 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 468 },
1629 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
17611630 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
17621631 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
17631632 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
17641633 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1765 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1098 },
1766 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1099 },
1767 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1100 },
1768 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1101 },
1769 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 847 },
1770 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 181 },
1771 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1772 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1773 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1103 },
1774 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 934 },
1775 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1106 },
1776 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1107 },
1777 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1107 },
1778 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 998 },
1779 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1109 },
1780 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1111 },
1781 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 527 },
1782 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 959 },
1783 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 646 },
1784 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 888 },
1785 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 869 },
1786 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 387 },
1787 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 971 },
1788 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1789 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 353 },
1790 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1112 },
1791 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1113 },
1792 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1114 },
1793 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1115 },
1794 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1116 },
1795 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1119 },
1796 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 293 },
1797 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1120 },
1798 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1121 },
1799 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 130 },
1800 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1122 },
1801 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 249 },
1802 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1123 },
1803 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 130 },
1804 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1124 },
1805 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1125 },
1806 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1807 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 248 },
1634 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1002 },
1635 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1003 },
1636 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1004 },
1637 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1005 },
1638 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 771 },
1639 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 173 },
1640 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1641 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1642 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1007 },
1643 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 850 },
1644 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1010 },
1645 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1011 },
1646 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1011 },
1647 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 908 },
1648 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1013 },
1649 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1015 },
1650 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 468 },
1651 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 875 },
1652 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
1653 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1016 },
1654 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1017 },
1655 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1018 },
1656 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1019 },
1657 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1020 },
1658 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1023 },
1659 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 266 },
1660 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1024 },
1661 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1025 },
1662 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 131 },
1663 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
1664 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 235 },
1665 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1027 },
1666 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 131 },
1667 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1028 },
1668 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1029 },
1669 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
1670 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 234 },
18081671 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1809 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1126 },
1672 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1030 },
18101673 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
18111674 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1812 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 996 },
1813 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1127 },
1814 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 996 },
1815 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1132 },
1816 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1132 },
1817 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1078 },
1818 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1136 },
1819 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1078 },
1820 .{ .char = 'w', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1078 },
1821 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 959 },
1822 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1137 },
1823 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1140 },
1824 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1141 },
1825 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
1826 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1143 },
1827 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
1828 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1144 },
1829 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1830 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1144 },
1675 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 906 },
1676 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1031 },
1677 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 906 },
1678 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1036 },
1679 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1036 },
1680 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 982 },
1681 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1040 },
1682 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 982 },
1683 .{ .char = 'w', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 982 },
1684 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 875 },
1685 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1041 },
1686 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1044 },
1687 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1045 },
1688 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
1689 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1047 },
1690 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
1691 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1048 },
1692 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1693 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1048 },
18311694 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
18321695 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
18331696 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1834 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 669 },
1835 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1078 },
1836 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1078 },
1837 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 181 },
1838 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1839 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1840 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1146 },
1841 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1147 },
1842 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1148 },
1697 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 602 },
1698 .{ .char = 'l', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 982 },
1699 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 982 },
1700 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 173 },
1701 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1702 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1703 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1050 },
1704 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1051 },
1705 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1052 },
18431706 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1844 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1149 },
1845 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1151 },
1846 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1152 },
1847 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 353 },
1848 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 311 },
1849 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1153 },
1850 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 248 },
1851 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1154 },
1852 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1155 },
1853 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1156 },
1854 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1157 },
1855 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1078 },
1856 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1136 },
1857 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1078 },
1858 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1136 },
1859 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1078 },
1860 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1078 },
1861 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1136 },
1862 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1078 },
1863 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1078 },
1864 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1865 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1866 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 246 },
1867 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
1868 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1006 },
1707 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1053 },
1708 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1055 },
1709 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1056 },
1710 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
1711 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 284 },
1712 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1057 },
1713 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 234 },
1714 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1058 },
1715 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1059 },
1716 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1060 },
1717 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1061 },
1718 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 982 },
1719 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1040 },
1720 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 982 },
1721 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1040 },
1722 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 982 },
1723 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 982 },
1724 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1040 },
1725 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 982 },
1726 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 982 },
1727 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
1728 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1729 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 232 },
1730 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
1731 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 916 },
18691732 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
18701733 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1871 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1734 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
18721735 .{ .char = 'm', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
18731736 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1874 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1158 },
1875 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1159 },
1876 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1160 },
1877 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1164 },
1878 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1164 },
1879 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1165 },
1880 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1166 },
1881 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1167 },
1882 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1168 },
1883 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1169 },
1884 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1170 },
1885 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1171 },
1886 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1172 },
1887 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1152 },
1888 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1173 },
1889 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 171 },
1890 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 171 },
1891 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 535 },
1892 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1165 },
1893 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1894 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1174 },
1895 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1175 },
1896 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1176 },
1897 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1177 },
1898 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1178 },
1899 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1179 },
1737 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1062 },
1738 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1063 },
1739 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1064 },
1740 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1068 },
1741 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1068 },
1742 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1069 },
1743 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1070 },
1744 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1071 },
1745 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1072 },
1746 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1073 },
1747 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1074 },
1748 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1075 },
1749 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1076 },
1750 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1056 },
1751 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1077 },
1752 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 166 },
1753 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 166 },
1754 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 478 },
1755 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1069 },
1756 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
1757 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1078 },
1758 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1079 },
1759 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1080 },
1760 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1081 },
1761 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1082 },
1762 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1083 },
19001763 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
19011764 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
1902 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1165 },
1903 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
1904 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
1905 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1180 },
1906 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1181 },
1907 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 143 },
1908 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1182 },
1909 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1183 },
1910 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1184 },
1911 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1185 },
1912 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1186 },
1913 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1187 },
1914 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1173 },
1915 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1188 },
1916 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
1765 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1069 },
1766 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 323 },
1767 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
1768 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1084 },
1769 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1085 },
1770 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 137 },
1771 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1086 },
1772 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1087 },
1773 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1088 },
1774 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1089 },
1775 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1090 },
1776 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1091 },
1777 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1077 },
1778 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1092 },
1779 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 629 },
19171780};
19181781pub const data = blk: {
1919 @setEvalBranchQuota(5103);
1782 @setEvalBranchQuota(4734);
19201783 break :blk [_]Properties{
19211784 .{ .param_str = "LLdLLdLLd", .features = "float128" },
19221785 .{ .param_str = "UiUiUi", .features = "isa_v206_instructions" },
......@@ -2144,6 +2007,10 @@ pub const data = blk: {
21442007 .{ .param_str = "V8sV16c", .features = "altivec" },
21452008 .{ .param_str = "V4iV8s", .features = "altivec" },
21462009 .{ .param_str = "V2LLiV4i", .features = "power8_vector" },
2010 .{ .param_str = "ULiULi*ULiIi", .features = "isa_v30_instructions" },
2011 .{ .param_str = "SLiSLi*SLiIi", .features = "isa_v30_instructions" },
2012 .{ .param_str = "UiUi*UiIi", .features = "isa_v30_instructions" },
2013 .{ .param_str = "SiSi*SiIi", .features = "isa_v30_instructions" },
21472014 .{ .param_str = "SLLiSLLiSLLi", .features = "bpermd" },
21482015 .{ .param_str = "UiUi", .features = "isa_v206_instructions" },
21492016 .{ .param_str = "UiUi", .features = "isa_v206_instructions" },
......@@ -2164,48 +2031,6 @@ pub const data = blk: {
21642031 .{ .param_str = "LUi", .attributes = .{ .@"const" = true }, .features = "htm" },
21652032 .{ .param_str = "LUi", .attributes = .{ .@"const" = true }, .features = "htm" },
21662033 .{ .param_str = "LUi", .attributes = .{ .@"const" = true }, .features = "htm" },
2167 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2168 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "paired_vector_memops" },
2169 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma" },
2170 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2171 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "paired_vector_memops" },
2172 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2173 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2174 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2175 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "paired_vector_memops" },
2176 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2177 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2178 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2179 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2180 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2181 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2182 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2183 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2184 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2185 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2186 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2187 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2188 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2189 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2190 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2191 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2192 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "paired_vector_memops" },
2193 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2194 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2195 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2196 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2197 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2198 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2199 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2200 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2201 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2202 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2203 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2204 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2205 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2206 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2207 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
2208 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "mma,paired_vector_memops" },
22092034 .{ .param_str = "LLdLLdLLd", .features = "float128" },
22102035 .{ .param_str = "Lddd" },
22112036 .{ .param_str = "V1LLLiULLiULLi", .features = "vsx" },
......@@ -2214,6 +2039,8 @@ pub const data = blk: {
22142039 .{ .param_str = "LLiLLiLLiCIi", .features = "isa_v30_instructions" },
22152040 .{ .param_str = "LLiLLiLLi", .features = "isa_v206_instructions" },
22162041 .{ .param_str = "vIivC*", .attributes = .{ .@"const" = true } },
2042 .{ .param_str = "V16UcV16UcV16Uc", .features = "power9_vector" },
2043 .{ .param_str = "V16UcV16UcUc", .attributes = .{ .custom_typecheck = true }, .features = "power9_vector" },
22172044 .{ .param_str = "LLiLLi", .features = "isa_v206_instructions" },
22182045 .{ .param_str = "LLiLLi", .features = "isa_v206_instructions" },
22192046 .{ .param_str = "LLiLLiLLi" },
......@@ -2378,9 +2205,6 @@ pub const data = blk: {
23782205 .{ .param_str = "LUi", .features = "htm" },
23792206 .{ .param_str = "dLdIi" },
23802207 .{ .param_str = "ULLiV1LLLii", .features = "vsx" },
2381 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "paired_vector_memops" },
2382 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "paired_vector_memops" },
2383 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "paired_vector_memops" },
23842208 .{ .param_str = "V2ULLiV16UcIi", .features = "vsx" },
23852209 .{ .param_str = "V16UcV4UiV16UcIi", .features = "vsx" },
23862210 .{ .param_str = "V16UcCc*Ii", .features = "isa_v207_instructions" },
......@@ -2388,7 +2212,6 @@ pub const data = blk: {
23882212 .{ .param_str = "V2dSLLivC*", .features = "vsx" },
23892213 .{ .param_str = "V4ivC*ULLi", .features = "power9_vector" },
23902214 .{ .param_str = "V4ivC*ULLi", .features = "power9_vector" },
2391 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "paired_vector_memops" },
23922215 .{ .param_str = "V4iLivC*", .features = "vsx" },
23932216 .{ .param_str = "V4iSLLivC*", .features = "vsx" },
23942217 .{ .param_str = "ULLiLLd", .features = "float128" },
......@@ -2398,7 +2221,6 @@ pub const data = blk: {
23982221 .{ .param_str = "vV2dSLLivC*", .features = "vsx" },
23992222 .{ .param_str = "vV4iv*ULLi", .features = "power9_vector" },
24002223 .{ .param_str = "vV4iv*ULLi", .features = "power9_vector" },
2401 .{ .param_str = "i.", .attributes = .{ .custom_typecheck = true }, .features = "paired_vector_memops" },
24022224 .{ .param_str = "vV4iLiv*", .features = "vsx" },
24032225 .{ .param_str = "vV4iSLLivC*", .features = "vsx" },
24042226 .{ .param_str = "ddd", .features = "vsx" },
lib/compiler/aro/aro/Builtins/riscv.zig+210-146
......@@ -47,6 +47,19 @@ pub const Tag = enum(u16) { __builtin_riscv_aes32dsi,
4747 __builtin_riscv_cv_alu_subRN,
4848 __builtin_riscv_cv_alu_subuN,
4949 __builtin_riscv_cv_alu_subuRN,
50 __builtin_riscv_mips_ehb,
51 __builtin_riscv_mips_ihb,
52 __builtin_riscv_mips_pause,
53 __builtin_riscv_nds_fcvt_bf16_s,
54 __builtin_riscv_nds_fcvt_s_bf16,
55 __builtin_riscv_nds_ffb_32,
56 __builtin_riscv_nds_ffb_64,
57 __builtin_riscv_nds_ffmism_32,
58 __builtin_riscv_nds_ffmism_64,
59 __builtin_riscv_nds_ffzmism_32,
60 __builtin_riscv_nds_ffzmism_64,
61 __builtin_riscv_nds_flmism_32,
62 __builtin_riscv_nds_flmism_64,
5063 __builtin_riscv_ntl_load,
5164 __builtin_riscv_ntl_store,
5265 __builtin_riscv_orc_b_32,
......@@ -126,13 +139,13 @@ pub fn exists(name: []const u8) bool {
126139}
127140
128141pub const shortest_name = 21;
129pub const longest_name = 29;
142pub const longest_name = 31;
130143
131144/// Search siblings of `first_child_index` for the `char`
132145/// If found, returns the index of the node within the `dafsa` array.
133146/// Otherwise, returns `null`.
134147pub fn findInList(first_child_index: u16, char: u8) ?u16 {
135 @setEvalBranchQuota(136);
148 @setEvalBranchQuota(162);
136149 var index = first_child_index;
137150 while (true) {
138151 if (dafsa[index].char == char) return index;
......@@ -227,173 +240,211 @@ const Node = packed struct {
227240
228241const dafsa = [_]Node{
229242 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
230 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 2 },
231 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 3 },
232 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 4 },
233 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 5 },
234 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 6 },
235 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 7 },
236 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 8 },
237 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 9 },
238 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 10 },
239 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 11 },
240 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 12 },
241 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 13 },
242 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 14 },
243 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 15 },
244 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 16 },
245 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 68, .child_index = 17 },
246 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 27 },
247 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 28 },
248 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 29 },
249 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 32 },
250 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 33 },
251 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 34 },
252 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 35 },
253 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 37 },
254 .{ .char = 'x', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 38 },
255 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 39 },
256 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 40 },
257 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 41 },
258 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 42 },
259 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 44 },
260 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 45 },
261 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 46 },
262 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 47 },
263 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 48 },
264 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 49 },
265 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 50 },
266 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 52 },
267 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 53 },
268 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 54 },
269 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 55 },
270 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 57 },
271 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 58 },
272 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
273 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
274 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 60 },
275 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 61 },
276 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 62 },
277 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 63 },
278 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 64 },
279 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 66 },
280 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 67 },
281 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 39 },
282 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 69 },
283 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 70 },
284 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 71 },
285 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 72 },
286 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 73 },
287 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 74 },
288 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 75 },
289 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 77 },
290 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 78 },
291 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 80 },
292 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 81 },
293 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 82 },
294 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 83 },
295 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 84 },
296 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 86 },
297 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
298 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 88 },
299 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 89 },
300 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 90 },
301 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 92 },
302 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
303 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 96 },
304 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 99 },
305 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 100 },
306 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 101 },
307 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 102 },
308 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 103 },
309 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
243 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 2 },
244 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 3 },
245 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 4 },
246 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 5 },
247 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 6 },
248 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 7 },
249 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 8 },
250 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 9 },
251 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 10 },
252 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 11 },
253 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 12 },
254 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 13 },
255 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 14 },
256 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 15 },
257 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 16 },
258 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 81, .child_index = 17 },
259 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 28 },
260 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 29 },
261 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 26, .child_index = 30 },
262 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 33 },
263 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 34 },
264 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 36 },
265 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 37 },
266 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 38 },
267 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 40 },
268 .{ .char = 'x', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 41 },
269 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 42 },
270 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 43 },
271 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 44 },
272 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 45 },
273 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 47 },
274 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 48 },
275 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 49 },
276 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 50 },
277 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 51 },
278 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 52 },
279 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 53 },
280 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 54 },
281 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 55 },
282 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 57 },
283 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 58 },
284 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 59 },
285 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 60 },
286 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 62 },
287 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 63 },
288 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 64 },
289 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 64 },
290 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 65 },
291 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 66 },
292 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 67 },
293 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 68 },
294 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 69 },
295 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 70 },
296 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 71 },
297 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 73 },
298 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 74 },
299 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 42 },
300 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 76 },
301 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 77 },
302 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 78 },
303 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 79 },
304 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 80 },
305 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 81 },
306 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 82 },
307 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 84 },
308 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 85 },
309 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 86 },
310 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 87 },
311 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 89 },
312 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 90 },
313 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 91 },
314 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 92 },
315 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 93 },
316 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 95 },
317 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 96 },
318 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 97 },
319 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 98 },
320 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 99 },
321 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 101 },
322 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 64 },
323 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 105 },
324 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 108 },
325 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 109 },
326 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 110 },
327 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 111 },
328 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 114 },
329 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 117 },
330 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 118 },
331 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 64 },
310332 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
311 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 104 },
312 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 105 },
333 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 119 },
334 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 120 },
313335 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
314336 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
315337 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
316338 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
317 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 106 },
318 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 99 },
319 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 108 },
320 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 108 },
321 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 109 },
322 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 109 },
323 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 110 },
324 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 111 },
325 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 75 },
326 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 59 },
327 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
339 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 121 },
340 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 108 },
341 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 123 },
342 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 123 },
343 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 124 },
344 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 124 },
345 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 125 },
346 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 126 },
347 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 82 },
348 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 64 },
349 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 64 },
328350 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
329351 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
330 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 112 },
331 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 113 },
332 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 114 },
333 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 115 },
334 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 116 },
335 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 59 },
336 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 59 },
337 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 117 },
338 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 119 },
352 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 127 },
353 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 128 },
354 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 128 },
355 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 37 },
356 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 129 },
357 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 130 },
358 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 133 },
359 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 134 },
360 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 135 },
361 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 136 },
362 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 137 },
363 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 64 },
364 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 64 },
365 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 138 },
366 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 140 },
339367 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
340 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 120 },
341 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 122 },
342 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 86 },
343 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 126 },
344 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 127 },
345 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 129 },
368 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 141 },
369 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 143 },
370 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 147 },
371 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 148 },
372 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 64 },
373 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 149 },
374 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 133 },
375 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 149 },
376 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 95 },
377 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 150 },
378 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 151 },
379 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 153 },
346380 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
347 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 131 },
381 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 155 },
348382 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
349 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 131 },
383 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 155 },
350384 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
351 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 132 },
352 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 133 },
353 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 134 },
354 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 135 },
355 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 81 },
356 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 137 },
357 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 138 },
358 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 139 },
359 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 140 },
385 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 156 },
386 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 157 },
387 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 158 },
388 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 159 },
389 .{ .char = 'b', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
390 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 161 },
391 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 162 },
392 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 90 },
393 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 163 },
394 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 164 },
395 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 165 },
396 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 166 },
360397 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
361 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 141 },
362 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 142 },
363 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 143 },
364 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 144 },
365 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 145 },
366 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 84 },
367 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 84 },
368 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 146 },
369 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 148 },
370 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 150 },
371 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 153 },
372 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 154 },
373 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 156 },
374 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 150 },
375 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 157 },
376 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 157 },
377 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 159 },
378 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 159 },
398 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 167 },
399 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 168 },
400 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 169 },
401 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 170 },
402 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 171 },
403 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 172 },
404 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 174 },
405 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 93 },
406 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 93 },
407 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 175 },
408 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 177 },
409 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 179 },
410 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 182 },
411 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 183 },
412 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 185 },
413 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 179 },
414 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 186 },
415 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 187 },
416 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 64 },
417 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 188 },
418 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 188 },
419 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 190 },
420 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 190 },
379421 .{ .char = 'N', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
380 .{ .char = 'R', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 160 },
381 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 161 },
382 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 156 },
383 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 163 },
384 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 163 },
422 .{ .char = 'R', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 191 },
423 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 192 },
424 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 185 },
425 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 194 },
426 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 194 },
385427 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
428 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 196 },
429 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 197 },
386430 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
387431 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
388432 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
389433 .{ .char = 'N', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
390434 .{ .char = 'N', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
391 .{ .char = 'R', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 160 },
435 .{ .char = 'R', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 191 },
392436 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
393437 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
438 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 198 },
439 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 199 },
440 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 200 },
441 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 201 },
442 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 96 },
443 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 202 },
444 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
394445};
395446pub const data = blk: {
396 @setEvalBranchQuota(612);
447 @setEvalBranchQuota(729);
397448 break :blk [_]Properties{
398449 .{ .param_str = "UiUiUiIUi", .features = "zknd,32bit", .attributes = .{ .@"const" = true } },
399450 .{ .param_str = "UiUiUiIUi", .features = "zknd,32bit", .attributes = .{ .@"const" = true } },
......@@ -434,6 +485,19 @@ pub const data = blk: {
434485 .{ .param_str = "iiiUi", .features = "xcvalu", .attributes = .{ .@"const" = true } },
435486 .{ .param_str = "UiUiUiUi", .features = "xcvalu", .attributes = .{ .@"const" = true } },
436487 .{ .param_str = "UiUiUiUi", .features = "xcvalu", .attributes = .{ .@"const" = true } },
488 .{ .param_str = "v", .features = "xmipsexectl", .attributes = .{ .@"const" = true } },
489 .{ .param_str = "v", .features = "xmipsexectl", .attributes = .{ .@"const" = true } },
490 .{ .param_str = "v", .features = "xmipsexectl", .attributes = .{ .@"const" = true } },
491 .{ .param_str = "yf", .features = "xandesbfhcvt", .attributes = .{ .@"const" = true } },
492 .{ .param_str = "fy", .features = "xandesbfhcvt", .attributes = .{ .@"const" = true } },
493 .{ .param_str = "ZiUZiUZi", .features = "xandesperf,32bit", .attributes = .{ .@"const" = true } },
494 .{ .param_str = "WiUWiUWi", .features = "xandesperf,64bit", .attributes = .{ .@"const" = true } },
495 .{ .param_str = "ZiUZiUZi", .features = "xandesperf,32bit", .attributes = .{ .@"const" = true } },
496 .{ .param_str = "WiUWiUWi", .features = "xandesperf,64bit", .attributes = .{ .@"const" = true } },
497 .{ .param_str = "ZiUZiUZi", .features = "xandesperf,32bit", .attributes = .{ .@"const" = true } },
498 .{ .param_str = "WiUWiUWi", .features = "xandesperf,64bit", .attributes = .{ .@"const" = true } },
499 .{ .param_str = "ZiUZiUZi", .features = "xandesperf,32bit", .attributes = .{ .@"const" = true } },
500 .{ .param_str = "WiUWiUWi", .features = "xandesperf,64bit", .attributes = .{ .@"const" = true } },
437501 .{ .param_str = "v.", .features = "zihintntl", .attributes = .{ .custom_typecheck = true } },
438502 .{ .param_str = "v.", .features = "zihintntl", .attributes = .{ .custom_typecheck = true } },
439503 .{ .param_str = "UiUi", .features = "zbb", .attributes = .{ .@"const" = true } },
lib/compiler/aro/aro/Builtins/wasm.zig created+962
......@@ -0,0 +1,962 @@
1//! Autogenerated by GenerateDef from src/aro/Builtins/wasm.def, do not edit
2// zig fmt: off
3
4const std = @import("std");
5
6pub fn with(comptime Properties: type) type {
7return struct {
8
9/// Integer starting at 0 derived from the unique index,
10/// corresponds with the data array index.
11pub const Tag = enum(u16) { __builtin_wasm_abs_f16x8,
12 __builtin_wasm_abs_f32x4,
13 __builtin_wasm_abs_f64x2,
14 __builtin_wasm_abs_i16x8,
15 __builtin_wasm_abs_i32x4,
16 __builtin_wasm_abs_i64x2,
17 __builtin_wasm_abs_i8x16,
18 __builtin_wasm_all_true_i16x8,
19 __builtin_wasm_all_true_i32x4,
20 __builtin_wasm_all_true_i64x2,
21 __builtin_wasm_all_true_i8x16,
22 __builtin_wasm_any_true_v128,
23 __builtin_wasm_avgr_u_i16x8,
24 __builtin_wasm_avgr_u_i8x16,
25 __builtin_wasm_bitmask_i16x8,
26 __builtin_wasm_bitmask_i32x4,
27 __builtin_wasm_bitmask_i64x2,
28 __builtin_wasm_bitmask_i8x16,
29 __builtin_wasm_bitselect,
30 __builtin_wasm_ceil_f16x8,
31 __builtin_wasm_ceil_f32x4,
32 __builtin_wasm_ceil_f64x2,
33 __builtin_wasm_dot_s_i32x4_i16x8,
34 __builtin_wasm_extadd_pairwise_i16x8_s_i32x4,
35 __builtin_wasm_extadd_pairwise_i16x8_u_i32x4,
36 __builtin_wasm_extadd_pairwise_i8x16_s_i16x8,
37 __builtin_wasm_extadd_pairwise_i8x16_u_i16x8,
38 __builtin_wasm_extract_lane_f16x8,
39 __builtin_wasm_floor_f16x8,
40 __builtin_wasm_floor_f32x4,
41 __builtin_wasm_floor_f64x2,
42 __builtin_wasm_loadf16_f32,
43 __builtin_wasm_max_f16x8,
44 __builtin_wasm_max_f32,
45 __builtin_wasm_max_f32x4,
46 __builtin_wasm_max_f64,
47 __builtin_wasm_max_f64x2,
48 __builtin_wasm_memory_atomic_notify,
49 __builtin_wasm_memory_atomic_wait32,
50 __builtin_wasm_memory_atomic_wait64,
51 __builtin_wasm_memory_grow,
52 __builtin_wasm_memory_size,
53 __builtin_wasm_min_f16x8,
54 __builtin_wasm_min_f32,
55 __builtin_wasm_min_f32x4,
56 __builtin_wasm_min_f64,
57 __builtin_wasm_min_f64x2,
58 __builtin_wasm_narrow_s_i16x8_i32x4,
59 __builtin_wasm_narrow_s_i8x16_i16x8,
60 __builtin_wasm_narrow_u_i16x8_i32x4,
61 __builtin_wasm_narrow_u_i8x16_i16x8,
62 __builtin_wasm_nearest_f16x8,
63 __builtin_wasm_nearest_f32x4,
64 __builtin_wasm_nearest_f64x2,
65 __builtin_wasm_pmax_f16x8,
66 __builtin_wasm_pmax_f32x4,
67 __builtin_wasm_pmax_f64x2,
68 __builtin_wasm_pmin_f16x8,
69 __builtin_wasm_pmin_f32x4,
70 __builtin_wasm_pmin_f64x2,
71 __builtin_wasm_q15mulr_sat_s_i16x8,
72 __builtin_wasm_ref_is_null_extern,
73 __builtin_wasm_ref_null_extern,
74 __builtin_wasm_ref_null_func,
75 __builtin_wasm_relaxed_dot_bf16x8_add_f32_f32x4,
76 __builtin_wasm_relaxed_dot_i8x16_i7x16_add_s_i32x4,
77 __builtin_wasm_relaxed_dot_i8x16_i7x16_s_i16x8,
78 __builtin_wasm_relaxed_laneselect_i16x8,
79 __builtin_wasm_relaxed_laneselect_i32x4,
80 __builtin_wasm_relaxed_laneselect_i64x2,
81 __builtin_wasm_relaxed_laneselect_i8x16,
82 __builtin_wasm_relaxed_madd_f16x8,
83 __builtin_wasm_relaxed_madd_f32x4,
84 __builtin_wasm_relaxed_madd_f64x2,
85 __builtin_wasm_relaxed_max_f32x4,
86 __builtin_wasm_relaxed_max_f64x2,
87 __builtin_wasm_relaxed_min_f32x4,
88 __builtin_wasm_relaxed_min_f64x2,
89 __builtin_wasm_relaxed_nmadd_f16x8,
90 __builtin_wasm_relaxed_nmadd_f32x4,
91 __builtin_wasm_relaxed_nmadd_f64x2,
92 __builtin_wasm_relaxed_q15mulr_s_i16x8,
93 __builtin_wasm_relaxed_swizzle_i8x16,
94 __builtin_wasm_relaxed_trunc_s_i32x4_f32x4,
95 __builtin_wasm_relaxed_trunc_s_zero_i32x4_f64x2,
96 __builtin_wasm_relaxed_trunc_u_i32x4_f32x4,
97 __builtin_wasm_relaxed_trunc_u_zero_i32x4_f64x2,
98 __builtin_wasm_replace_lane_f16x8,
99 __builtin_wasm_rethrow,
100 __builtin_wasm_shuffle_i8x16,
101 __builtin_wasm_splat_f16x8,
102 __builtin_wasm_sqrt_f16x8,
103 __builtin_wasm_sqrt_f32x4,
104 __builtin_wasm_sqrt_f64x2,
105 __builtin_wasm_storef16_f32,
106 __builtin_wasm_swizzle_i8x16,
107 __builtin_wasm_table_copy,
108 __builtin_wasm_table_fill,
109 __builtin_wasm_table_get,
110 __builtin_wasm_table_grow,
111 __builtin_wasm_table_set,
112 __builtin_wasm_table_size,
113 __builtin_wasm_test_function_pointer_signature,
114 __builtin_wasm_throw,
115 __builtin_wasm_tls_align,
116 __builtin_wasm_tls_base,
117 __builtin_wasm_tls_size,
118 __builtin_wasm_trunc_f16x8,
119 __builtin_wasm_trunc_f32x4,
120 __builtin_wasm_trunc_f64x2,
121 __builtin_wasm_trunc_s_i32_f32,
122 __builtin_wasm_trunc_s_i32_f64,
123 __builtin_wasm_trunc_s_i64_f32,
124 __builtin_wasm_trunc_s_i64_f64,
125 __builtin_wasm_trunc_sat_s_zero_f64x2_i32x4,
126 __builtin_wasm_trunc_sat_u_zero_f64x2_i32x4,
127 __builtin_wasm_trunc_saturate_s_i16x8_f16x8,
128 __builtin_wasm_trunc_saturate_s_i32_f32,
129 __builtin_wasm_trunc_saturate_s_i32_f64,
130 __builtin_wasm_trunc_saturate_s_i32x4_f32x4,
131 __builtin_wasm_trunc_saturate_s_i64_f32,
132 __builtin_wasm_trunc_saturate_s_i64_f64,
133 __builtin_wasm_trunc_saturate_u_i16x8_f16x8,
134 __builtin_wasm_trunc_saturate_u_i32_f32,
135 __builtin_wasm_trunc_saturate_u_i32_f64,
136 __builtin_wasm_trunc_saturate_u_i32x4_f32x4,
137 __builtin_wasm_trunc_saturate_u_i64_f32,
138 __builtin_wasm_trunc_saturate_u_i64_f64,
139 __builtin_wasm_trunc_u_i32_f32,
140 __builtin_wasm_trunc_u_i32_f64,
141 __builtin_wasm_trunc_u_i64_f32,
142 __builtin_wasm_trunc_u_i64_f64,
143};
144
145pub fn fromName(name: []const u8) ?Properties {
146 const data_index = tagFromName(name) orelse return null;
147 return data[@intFromEnum(data_index)];
148}
149
150pub fn tagFromName(name: []const u8) ?Tag {
151 const unique_index = uniqueIndex(name) orelse return null;
152 return @enumFromInt(unique_index - 1);
153}
154
155pub fn fromTag(tag: Tag) Properties {
156 return data[@intFromEnum(tag)];
157}
158
159pub fn nameFromTagIntoBuf(tag: Tag, name_buf: []u8) []u8 {
160 std.debug.assert(name_buf.len >= longest_name);
161 const unique_index = @intFromEnum(tag) + 1;
162 return nameFromUniqueIndex(unique_index, name_buf);
163}
164
165pub fn nameFromTag(tag: Tag) NameBuf {
166 var name_buf: NameBuf = undefined;
167 const unique_index = @intFromEnum(tag) + 1;
168 const name = nameFromUniqueIndex(unique_index, &name_buf.buf);
169 name_buf.len = @intCast(name.len);
170 return name_buf;
171}
172
173pub const NameBuf = struct {
174 buf: [longest_name]u8 = undefined,
175 len: std.math.IntFittingRange(0, longest_name),
176
177 pub fn span(self: *const NameBuf) []const u8 {
178 return self.buf[0..self.len];
179 }
180};
181
182pub fn exists(name: []const u8) bool {
183 if (name.len < shortest_name or name.len > longest_name) return false;
184
185 var index: u16 = 0;
186 for (name) |c| {
187 index = findInList(dafsa[index].child_index, c) orelse return false;
188 }
189 return dafsa[index].end_of_word;
190}
191
192pub const shortest_name = 20;
193pub const longest_name = 50;
194
195/// Search siblings of `first_child_index` for the `char`
196/// If found, returns the index of the node within the `dafsa` array.
197/// Otherwise, returns `null`.
198pub fn findInList(first_child_index: u16, char: u8) ?u16 {
199 @setEvalBranchQuota(264);
200 var index = first_child_index;
201 while (true) {
202 if (dafsa[index].char == char) return index;
203 if (dafsa[index].end_of_list) return null;
204 index += 1;
205 }
206 unreachable;
207}
208
209/// Returns a unique (minimal perfect hash) index (starting at 1) for the `name`,
210/// or null if the name was not found.
211pub fn uniqueIndex(name: []const u8) ?u16 {
212 if (name.len < shortest_name or name.len > longest_name) return null;
213
214 var index: u16 = 0;
215 var node_index: u16 = 0;
216
217 for (name) |c| {
218 const child_index = findInList(dafsa[node_index].child_index, c) orelse return null;
219 var sibling_index = dafsa[node_index].child_index;
220 while (true) {
221 const sibling_c = dafsa[sibling_index].char;
222 std.debug.assert(sibling_c != 0);
223 if (sibling_c < c) {
224 index += dafsa[sibling_index].number;
225 }
226 if (dafsa[sibling_index].end_of_list) break;
227 sibling_index += 1;
228 }
229 node_index = child_index;
230 if (dafsa[node_index].end_of_word) index += 1;
231 }
232
233 if (!dafsa[node_index].end_of_word) return null;
234
235 return index;
236}
237
238/// Returns a slice of `buf` with the name associated with the given `index`.
239/// This function should only be called with an `index` that
240/// is already known to exist within the `dafsa`, e.g. an index
241/// returned from `uniqueIndex`.
242pub fn nameFromUniqueIndex(index: u16, buf: []u8) []u8 {
243 std.debug.assert(index >= 1 and index <= data.len);
244
245 var node_index: u16 = 0;
246 var count: u16 = index;
247 var w = std.Io.Writer.fixed(buf);
248
249 while (true) {
250 var sibling_index = dafsa[node_index].child_index;
251 while (true) {
252 if (dafsa[sibling_index].number > 0 and dafsa[sibling_index].number < count) {
253 count -= dafsa[sibling_index].number;
254 } else {
255 w.writeByte(dafsa[sibling_index].char) catch unreachable;
256 node_index = sibling_index;
257 if (dafsa[node_index].end_of_word) {
258 count -= 1;
259 }
260 break;
261 }
262
263 if (dafsa[sibling_index].end_of_list) break;
264 sibling_index += 1;
265 }
266 if (count == 0) break;
267 }
268
269 return w.buffered();
270}
271
272const Node = packed struct {
273 char: u8,
274 /// Nodes are numbered with "an integer which gives the number of words that
275 /// would be accepted by the automaton starting from that state." This numbering
276 /// allows calculating "a one-to-one correspondence between the integers 1 to L
277 /// (L is the number of words accepted by the automaton) and the words themselves."
278 ///
279 /// Essentially, this allows us to have a minimal perfect hashing scheme such that
280 /// it's possible to store & lookup the properties of each builtin using a separate array.
281 number: std.math.IntFittingRange(0, data.len),
282 /// If true, this node is the end of a valid builtin.
283 /// Note: This does not necessarily mean that this node does not have child nodes.
284 end_of_word: bool,
285 /// If true, this node is the end of a sibling list.
286 /// If false, then (index + 1) will contain the next sibling.
287 end_of_list: bool,
288 /// Index of the first child of this node.
289 child_index: u16,
290};
291
292const dafsa = [_]Node{
293 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
294 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 2 },
295 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 3 },
296 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 4 },
297 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 5 },
298 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 6 },
299 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 7 },
300 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 8 },
301 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 9 },
302 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 10 },
303 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 11 },
304 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 12 },
305 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 13 },
306 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 14 },
307 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 15 },
308 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 132, .child_index = 16 },
309 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 30 },
310 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 34 },
311 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 35 },
312 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 36 },
313 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 37 },
314 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 38 },
315 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 39 },
316 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 40 },
317 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 43 },
318 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 45 },
319 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 46 },
320 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 47 },
321 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 48 },
322 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 53 },
323 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 58 },
324 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 59 },
325 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 60 },
326 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 61 },
327 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 62 },
328 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 63 },
329 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 64 },
330 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 65 },
331 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 66 },
332 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 67 },
333 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 68 },
334 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 69 },
335 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 70 },
336 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 71 },
337 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 72 },
338 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 73 },
339 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 75 },
340 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 76 },
341 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 80 },
342 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 81 },
343 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 82 },
344 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 83 },
345 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 84 },
346 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 85 },
347 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 86 },
348 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 87 },
349 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 88 },
350 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 89 },
351 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 90 },
352 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 91 },
353 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 92 },
354 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 93 },
355 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 94 },
356 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 96 },
357 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 97 },
358 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 98 },
359 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 100 },
360 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 101 },
361 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 102 },
362 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 103 },
363 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 102 },
364 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 104 },
365 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 105 },
366 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 106 },
367 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 107 },
368 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 108 },
369 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 109 },
370 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 23, .child_index = 110 },
371 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 111 },
372 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 112 },
373 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 113 },
374 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 114 },
375 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 115 },
376 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 116 },
377 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 117 },
378 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 118 },
379 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 119 },
380 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 120 },
381 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 121 },
382 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 122 },
383 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 123 },
384 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 125 },
385 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 126 },
386 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 127 },
387 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 128 },
388 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 129 },
389 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 130 },
390 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 131 },
391 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 132 },
392 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 133 },
393 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 134 },
394 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 135 },
395 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 136 },
396 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 137 },
397 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 138 },
398 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 139 },
399 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 130 },
400 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 130 },
401 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 140 },
402 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 141 },
403 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 23, .child_index = 143 },
404 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 144 },
405 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
406 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 145 },
407 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 146 },
408 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 130 },
409 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 147 },
410 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 148 },
411 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 149 },
412 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 150 },
413 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 151 },
414 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 152 },
415 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 155 },
416 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 156 },
417 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 159 },
418 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 163 },
419 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 164 },
420 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 165 },
421 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 166 },
422 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 167 },
423 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 168 },
424 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 169 },
425 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 170 },
426 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 171 },
427 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 130 },
428 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 172 },
429 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 173 },
430 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 176 },
431 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 177 },
432 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 178 },
433 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 179 },
434 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 180 },
435 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 181 },
436 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 23, .child_index = 182 },
437 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 183 },
438 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 184 },
439 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 185 },
440 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 135 },
441 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 184 },
442 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 186 },
443 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 187 },
444 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
445 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 188 },
446 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 189 },
447 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 190 },
448 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 191 },
449 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 192 },
450 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 193 },
451 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 194 },
452 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 192 },
453 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 193 },
454 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 194 },
455 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 195 },
456 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 196 },
457 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 197 },
458 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 198 },
459 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 199 },
460 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 200 },
461 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 156 },
462 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 201 },
463 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 202 },
464 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 203 },
465 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 204 },
466 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 192 },
467 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 205 },
468 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 206 },
469 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 207 },
470 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 208 },
471 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 115 },
472 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 209 },
473 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 210 },
474 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 211 },
475 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 23, .child_index = 212 },
476 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 213 },
477 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 214 },
478 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 215 },
479 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 216 },
480 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 220 },
481 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 221 },
482 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 222 },
483 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 223 },
484 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 25, .child_index = 224 },
485 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 227 },
486 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 228 },
487 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 229 },
488 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 230 },
489 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 231 },
490 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 232 },
491 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 233 },
492 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 234 },
493 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 235 },
494 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 236 },
495 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 237 },
496 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 238 },
497 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 239 },
498 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 240 },
499 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 241 },
500 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 242 },
501 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 245 },
502 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 247 },
503 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 248 },
504 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 249 },
505 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 23, .child_index = 250 },
506 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 238 },
507 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 251 },
508 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 252 },
509 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 253 },
510 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 254 },
511 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 255 },
512 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 257 },
513 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 259 },
514 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 260 },
515 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 261 },
516 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 261 },
517 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 156 },
518 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 262 },
519 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 264 },
520 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 265 },
521 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 266 },
522 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 267 },
523 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 268 },
524 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 234 },
525 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 269 },
526 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 270 },
527 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 272 },
528 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 273 },
529 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 274 },
530 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 275 },
531 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 276 },
532 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 277 },
533 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 266 },
534 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 267 },
535 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 278 },
536 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 87 },
537 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 190 },
538 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 279 },
539 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 279 },
540 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 280 },
541 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 281 },
542 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 282 },
543 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 23, .child_index = 283 },
544 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 290 },
545 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 192 },
546 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 291 },
547 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 292 },
548 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 273 },
549 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 120 },
550 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 273 },
551 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 223 },
552 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 293 },
553 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 294 },
554 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
555 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 295 },
556 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 296 },
557 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 295 },
558 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
559 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
560 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
561 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
562 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 297 },
563 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 192 },
564 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 195 },
565 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 159 },
566 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
567 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 298 },
568 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 299 },
569 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 300 },
570 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 301 },
571 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 302 },
572 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 303 },
573 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 304 },
574 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 305 },
575 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 306 },
576 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 308 },
577 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 309 },
578 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 310 },
579 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 312 },
580 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 313 },
581 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 314 },
582 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 315 },
583 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 316 },
584 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
585 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 318 },
586 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 319 },
587 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
588 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 320 },
589 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 322 },
590 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 324 },
591 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 325 },
592 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 326 },
593 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
594 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 267 },
595 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 328 },
596 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 329 },
597 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 331 },
598 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 332 },
599 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 333 },
600 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 334 },
601 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 335 },
602 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 336 },
603 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 337 },
604 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 339 },
605 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 340 },
606 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 341 },
607 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 84 },
608 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 342 },
609 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 195 },
610 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
611 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
612 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 343 },
613 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 344 },
614 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 345 },
615 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 346 },
616 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 348 },
617 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 349 },
618 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
619 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 351 },
620 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 352 },
621 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 353 },
622 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 354 },
623 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 355 },
624 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 356 },
625 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 357 },
626 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 358 },
627 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 359 },
628 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 360 },
629 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 361 },
630 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 362 },
631 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 363 },
632 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 363 },
633 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 364 },
634 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 365 },
635 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 366 },
636 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 367 },
637 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 368 },
638 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 368 },
639 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 369 },
640 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 369 },
641 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 370 },
642 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 265 },
643 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 371 },
644 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 372 },
645 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 185 },
646 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 373 },
647 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 374 },
648 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 375 },
649 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 376 },
650 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 377 },
651 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 378 },
652 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 379 },
653 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 380 },
654 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 382 },
655 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 130 },
656 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 383 },
657 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 362 },
658 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 384 },
659 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 385 },
660 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 386 },
661 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 387 },
662 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 388 },
663 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 389 },
664 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 252 },
665 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 390 },
666 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 391 },
667 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 392 },
668 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 393 },
669 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
670 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 333 },
671 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 394 },
672 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
673 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 395 },
674 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 396 },
675 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 397 },
676 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 398 },
677 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 400 },
678 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 401 },
679 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 402 },
680 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 403 },
681 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 405 },
682 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 406 },
683 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 407 },
684 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 408 },
685 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 410 },
686 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
687 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 294 },
688 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 411 },
689 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 412 },
690 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 413 },
691 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 193 },
692 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 194 },
693 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 414 },
694 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 415 },
695 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 417 },
696 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 267 },
697 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 266 },
698 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 418 },
699 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 419 },
700 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 420 },
701 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 421 },
702 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 422 },
703 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 423 },
704 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 424 },
705 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 425 },
706 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 426 },
707 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 356 },
708 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 427 },
709 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 427 },
710 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 428 },
711 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 429 },
712 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 430 },
713 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 432 },
714 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 433 },
715 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 434 },
716 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
717 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 436 },
718 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 437 },
719 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 438 },
720 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 439 },
721 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 441 },
722 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 442 },
723 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 443 },
724 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 443 },
725 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 444 },
726 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 446 },
727 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 447 },
728 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 193 },
729 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 448 },
730 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 449 },
731 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 450 },
732 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 451 },
733 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 452 },
734 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 453 },
735 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 454 },
736 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 455 },
737 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 456 },
738 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 457 },
739 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 458 },
740 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 403 },
741 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 459 },
742 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 460 },
743 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 234 },
744 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 461 },
745 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 462 },
746 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 463 },
747 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 464 },
748 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 465 },
749 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 468 },
750 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 469 },
751 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
752 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 470 },
753 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 471 },
754 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 472 },
755 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
756 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 474 },
757 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 475 },
758 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 476 },
759 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 477 },
760 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 345 },
761 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 478 },
762 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 479 },
763 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 480 },
764 .{ .char = '7', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 481 },
765 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 482 },
766 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 483 },
767 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 484 },
768 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 485 },
769 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 486 },
770 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 487 },
771 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 489 },
772 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 490 },
773 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 491 },
774 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 492 },
775 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 493 },
776 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
777 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
778 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 496 },
779 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 497 },
780 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 387 },
781 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 482 },
782 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 498 },
783 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 500 },
784 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 502 },
785 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 503 },
786 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 504 },
787 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
788 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 506 },
789 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 410 },
790 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 185 },
791 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 410 },
792 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 410 },
793 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 350 },
794 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
795 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
796 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 508 },
797 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
798 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 509 },
799 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 510 },
800 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 511 },
801 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 512 },
802 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 514 },
803 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 515 },
804 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 516 },
805 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 517 },
806 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 350 },
807 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 518 },
808 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 519 },
809 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 493 },
810 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 520 },
811 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 521 },
812 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 522 },
813 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 523 },
814 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 524 },
815 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 525 },
816 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 526 },
817 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 527 },
818 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 528 },
819 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 410 },
820 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 194 },
821 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 529 },
822 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 261 },
823};
824pub const data = blk: {
825 @setEvalBranchQuota(1188);
826 break :blk [_]Properties{
827 .{ .param_str = "V8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
828 .{ .param_str = "V4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
829 .{ .param_str = "V2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
830 .{ .param_str = "V8sV8s", .attributes = .{ .@"const" = true }, .features = "simd128" },
831 .{ .param_str = "V4iV4i", .attributes = .{ .@"const" = true }, .features = "simd128" },
832 .{ .param_str = "V2LLiV2LLi", .attributes = .{ .@"const" = true }, .features = "simd128" },
833 .{ .param_str = "V16ScV16Sc", .attributes = .{ .@"const" = true }, .features = "simd128" },
834 .{ .param_str = "iV8s", .attributes = .{ .@"const" = true }, .features = "simd128" },
835 .{ .param_str = "iV4i", .attributes = .{ .@"const" = true }, .features = "simd128" },
836 .{ .param_str = "iV2LLi", .attributes = .{ .@"const" = true }, .features = "simd128" },
837 .{ .param_str = "iV16Sc", .attributes = .{ .@"const" = true }, .features = "simd128" },
838 .{ .param_str = "iV16Sc", .attributes = .{ .@"const" = true }, .features = "simd128" },
839 .{ .param_str = "V8UsV8UsV8Us", .attributes = .{ .@"const" = true }, .features = "simd128" },
840 .{ .param_str = "V16UcV16UcV16Uc", .attributes = .{ .@"const" = true }, .features = "simd128" },
841 .{ .param_str = "UiV8s", .attributes = .{ .@"const" = true }, .features = "simd128" },
842 .{ .param_str = "UiV4i", .attributes = .{ .@"const" = true }, .features = "simd128" },
843 .{ .param_str = "UiV2LLi", .attributes = .{ .@"const" = true }, .features = "simd128" },
844 .{ .param_str = "UiV16Sc", .attributes = .{ .@"const" = true }, .features = "simd128" },
845 .{ .param_str = "V4iV4iV4iV4i", .attributes = .{ .@"const" = true }, .features = "simd128" },
846 .{ .param_str = "V8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
847 .{ .param_str = "V4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
848 .{ .param_str = "V2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
849 .{ .param_str = "V4iV8sV8s", .attributes = .{ .@"const" = true }, .features = "simd128" },
850 .{ .param_str = "V4iV8s", .attributes = .{ .@"const" = true }, .features = "simd128" },
851 .{ .param_str = "V4UiV8Us", .attributes = .{ .@"const" = true }, .features = "simd128" },
852 .{ .param_str = "V8sV16Sc", .attributes = .{ .@"const" = true }, .features = "simd128" },
853 .{ .param_str = "V8UsV16Uc", .attributes = .{ .@"const" = true }, .features = "simd128" },
854 .{ .param_str = "fV8hIi", .attributes = .{ .@"const" = true }, .features = "fp16" },
855 .{ .param_str = "V8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
856 .{ .param_str = "V4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
857 .{ .param_str = "V2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
858 .{ .param_str = "fh*", .attributes = .{ .pure = true }, .features = "fp16" },
859 .{ .param_str = "V8hV8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
860 .{ .param_str = "fff", .attributes = .{ .@"const" = true } },
861 .{ .param_str = "V4fV4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
862 .{ .param_str = "ddd", .attributes = .{ .@"const" = true } },
863 .{ .param_str = "V2dV2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
864 .{ .param_str = "Uii*Ui", .features = "atomics" },
865 .{ .param_str = "ii*iLLi", .features = "atomics" },
866 .{ .param_str = "iLLi*LLiLLi", .features = "atomics" },
867 .{ .param_str = "zIiz" },
868 .{ .param_str = "zIi" },
869 .{ .param_str = "V8hV8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
870 .{ .param_str = "fff", .attributes = .{ .@"const" = true } },
871 .{ .param_str = "V4fV4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
872 .{ .param_str = "ddd", .attributes = .{ .@"const" = true } },
873 .{ .param_str = "V2dV2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
874 .{ .param_str = "V8sV4iV4i", .attributes = .{ .@"const" = true }, .features = "simd128" },
875 .{ .param_str = "V16ScV8sV8s", .attributes = .{ .@"const" = true }, .features = "simd128" },
876 .{ .param_str = "V8UsV4iV4i", .attributes = .{ .@"const" = true }, .features = "simd128" },
877 .{ .param_str = "V16UcV8sV8s", .attributes = .{ .@"const" = true }, .features = "simd128" },
878 .{ .param_str = "V8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
879 .{ .param_str = "V4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
880 .{ .param_str = "V2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
881 .{ .param_str = "V8hV8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
882 .{ .param_str = "V4fV4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
883 .{ .param_str = "V2dV2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
884 .{ .param_str = "V8hV8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
885 .{ .param_str = "V4fV4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
886 .{ .param_str = "V2dV2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
887 .{ .param_str = "V8sV8sV8s", .attributes = .{ .@"const" = true }, .features = "simd128" },
888 .{ .param_str = "ii", .attributes = .{ .@"const" = true, .custom_typecheck = true }, .features = "reference_types" },
889 .{ .param_str = "i", .attributes = .{ .@"const" = true, .custom_typecheck = true }, .features = "reference_types" },
890 .{ .param_str = "i", .attributes = .{ .@"const" = true, .custom_typecheck = true }, .features = "reference_types" },
891 .{ .param_str = "V4fV8UsV8UsV4f", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
892 .{ .param_str = "V4iV16ScV16ScV4i", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
893 .{ .param_str = "V8sV16ScV16Sc", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
894 .{ .param_str = "V8sV8sV8sV8s", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
895 .{ .param_str = "V4iV4iV4iV4i", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
896 .{ .param_str = "V2LLiV2LLiV2LLiV2LLi", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
897 .{ .param_str = "V16ScV16ScV16ScV16Sc", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
898 .{ .param_str = "V8hV8hV8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
899 .{ .param_str = "V4fV4fV4fV4f", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
900 .{ .param_str = "V2dV2dV2dV2d", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
901 .{ .param_str = "V4fV4fV4f", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
902 .{ .param_str = "V2dV2dV2d", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
903 .{ .param_str = "V4fV4fV4f", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
904 .{ .param_str = "V2dV2dV2d", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
905 .{ .param_str = "V8hV8hV8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
906 .{ .param_str = "V4fV4fV4fV4f", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
907 .{ .param_str = "V2dV2dV2dV2d", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
908 .{ .param_str = "V8sV8sV8s", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
909 .{ .param_str = "V16ScV16ScV16Sc", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
910 .{ .param_str = "V4iV4f", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
911 .{ .param_str = "V4iV2d", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
912 .{ .param_str = "V4UiV4f", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
913 .{ .param_str = "V4UiV2d", .attributes = .{ .@"const" = true }, .features = "relaxed_simd" },
914 .{ .param_str = "V8hV8hIif", .attributes = .{ .@"const" = true }, .features = "fp16" },
915 .{ .param_str = "v", .attributes = .{ .@"noreturn" = true }, .features = "exception_handling" },
916 .{ .param_str = "V16ScV16ScV16ScIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIi", .attributes = .{ .@"const" = true }, .features = "simd128" },
917 .{ .param_str = "V8hf", .attributes = .{ .@"const" = true }, .features = "fp16" },
918 .{ .param_str = "V8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
919 .{ .param_str = "V4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
920 .{ .param_str = "V2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
921 .{ .param_str = "vfh*", .features = "fp16" },
922 .{ .param_str = "V16ScV16ScV16Sc", .attributes = .{ .@"const" = true }, .features = "simd128" },
923 .{ .param_str = "viiiii", .attributes = .{ .custom_typecheck = true }, .features = "reference_types" },
924 .{ .param_str = "viiii", .attributes = .{ .custom_typecheck = true }, .features = "reference_types" },
925 .{ .param_str = "iii", .attributes = .{ .custom_typecheck = true }, .features = "reference_types" },
926 .{ .param_str = "iiii", .attributes = .{ .custom_typecheck = true }, .features = "reference_types" },
927 .{ .param_str = "viii", .attributes = .{ .custom_typecheck = true }, .features = "reference_types" },
928 .{ .param_str = "zi", .attributes = .{ .custom_typecheck = true }, .features = "reference_types" },
929 .{ .param_str = "i.", .attributes = .{ .@"const" = true, .custom_typecheck = true }, .features = "gc" },
930 .{ .param_str = "vIUiv*", .attributes = .{ .@"noreturn" = true }, .features = "exception_handling" },
931 .{ .param_str = "z", .attributes = .{ .@"const" = true }, .features = "bulk_memory" },
932 .{ .param_str = "v*", .attributes = .{ .pure = true }, .features = "bulk_memory" },
933 .{ .param_str = "z", .attributes = .{ .@"const" = true }, .features = "bulk_memory" },
934 .{ .param_str = "V8hV8h", .attributes = .{ .@"const" = true }, .features = "fp16" },
935 .{ .param_str = "V4fV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
936 .{ .param_str = "V2dV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
937 .{ .param_str = "if", .attributes = .{ .@"const" = true } },
938 .{ .param_str = "id", .attributes = .{ .@"const" = true } },
939 .{ .param_str = "LLif", .attributes = .{ .@"const" = true } },
940 .{ .param_str = "LLid", .attributes = .{ .@"const" = true } },
941 .{ .param_str = "V4iV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
942 .{ .param_str = "V4UiV2d", .attributes = .{ .@"const" = true }, .features = "simd128" },
943 .{ .param_str = "V8sV8h", .attributes = .{ .@"const" = true }, .features = "simd128" },
944 .{ .param_str = "if", .attributes = .{ .@"const" = true }, .features = "nontrapping_fptoint" },
945 .{ .param_str = "id", .attributes = .{ .@"const" = true }, .features = "nontrapping_fptoint" },
946 .{ .param_str = "V4iV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
947 .{ .param_str = "LLif", .attributes = .{ .@"const" = true }, .features = "nontrapping_fptoint" },
948 .{ .param_str = "LLid", .attributes = .{ .@"const" = true }, .features = "nontrapping_fptoint" },
949 .{ .param_str = "V8sV8h", .attributes = .{ .@"const" = true }, .features = "simd128" },
950 .{ .param_str = "if", .attributes = .{ .@"const" = true }, .features = "nontrapping_fptoint" },
951 .{ .param_str = "id", .attributes = .{ .@"const" = true }, .features = "nontrapping_fptoint" },
952 .{ .param_str = "V4iV4f", .attributes = .{ .@"const" = true }, .features = "simd128" },
953 .{ .param_str = "LLif", .attributes = .{ .@"const" = true }, .features = "nontrapping_fptoint" },
954 .{ .param_str = "LLid", .attributes = .{ .@"const" = true }, .features = "nontrapping_fptoint" },
955 .{ .param_str = "if", .attributes = .{ .@"const" = true } },
956 .{ .param_str = "id", .attributes = .{ .@"const" = true } },
957 .{ .param_str = "LLif", .attributes = .{ .@"const" = true } },
958 .{ .param_str = "LLid", .attributes = .{ .@"const" = true } },
959 };
960};
961};
962}
lib/compiler/aro/aro/Builtins/x86.zig+2701-2863
......@@ -256,7 +256,6 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
256256 __builtin_ia32_cvtqq2pd512_mask,
257257 __builtin_ia32_cvtqq2ps128_mask,
258258 __builtin_ia32_cvtqq2ps512_mask,
259 __builtin_ia32_cvtsbf162ss_32,
260259 __builtin_ia32_cvtsd2si,
261260 __builtin_ia32_cvtsd2ss,
262261 __builtin_ia32_cvtsd2ss_round_mask,
......@@ -881,24 +880,12 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
881880 __builtin_ia32_prolq128,
882881 __builtin_ia32_prolq256,
883882 __builtin_ia32_prolq512,
884 __builtin_ia32_prolvd128,
885 __builtin_ia32_prolvd256,
886 __builtin_ia32_prolvd512,
887 __builtin_ia32_prolvq128,
888 __builtin_ia32_prolvq256,
889 __builtin_ia32_prolvq512,
890883 __builtin_ia32_prord128,
891884 __builtin_ia32_prord256,
892885 __builtin_ia32_prord512,
893886 __builtin_ia32_prorq128,
894887 __builtin_ia32_prorq256,
895888 __builtin_ia32_prorq512,
896 __builtin_ia32_prorvd128,
897 __builtin_ia32_prorvd256,
898 __builtin_ia32_prorvd512,
899 __builtin_ia32_prorvq128,
900 __builtin_ia32_prorvq256,
901 __builtin_ia32_prorvq512,
902889 __builtin_ia32_psadbw128,
903890 __builtin_ia32_psadbw256,
904891 __builtin_ia32_psadbw512,
......@@ -1217,19 +1204,11 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
12171204 __builtin_ia32_shufps256,
12181205 __builtin_ia32_shufps512,
12191206 __builtin_ia32_slwpcb,
1220 __builtin_ia32_sqrtpd,
1221 __builtin_ia32_sqrtpd256,
12221207 __builtin_ia32_sqrtpd512,
1223 __builtin_ia32_sqrtph,
1224 __builtin_ia32_sqrtph256,
12251208 __builtin_ia32_sqrtph512,
1226 __builtin_ia32_sqrtps,
1227 __builtin_ia32_sqrtps256,
12281209 __builtin_ia32_sqrtps512,
1229 __builtin_ia32_sqrtsd,
12301210 __builtin_ia32_sqrtsd_round_mask,
12311211 __builtin_ia32_sqrtsh_round_mask,
1232 __builtin_ia32_sqrtss,
12331212 __builtin_ia32_sqrtss_round_mask,
12341213 __builtin_ia32_stmxcsr,
12351214 __builtin_ia32_storeapd128_mask,
......@@ -1394,8 +1373,6 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
13941373 __builtin_ia32_vcvtph2pd128_mask,
13951374 __builtin_ia32_vcvtph2pd256_mask,
13961375 __builtin_ia32_vcvtph2pd512_mask,
1397 __builtin_ia32_vcvtph2ps,
1398 __builtin_ia32_vcvtph2ps256,
13991376 __builtin_ia32_vcvtph2ps256_mask,
14001377 __builtin_ia32_vcvtph2ps512_mask,
14011378 __builtin_ia32_vcvtph2ps_mask,
......@@ -1568,9 +1545,6 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
15681545 __builtin_ia32_vfcmulcph256_mask,
15691546 __builtin_ia32_vfcmulcph512_mask,
15701547 __builtin_ia32_vfcmulcsh_mask,
1571 __builtin_ia32_vfmaddbf16128,
1572 __builtin_ia32_vfmaddbf16256,
1573 __builtin_ia32_vfmaddbf16512,
15741548 __builtin_ia32_vfmaddcph128_mask,
15751549 __builtin_ia32_vfmaddcph128_maskz,
15761550 __builtin_ia32_vfmaddcph256_mask,
......@@ -1582,31 +1556,21 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
15821556 __builtin_ia32_vfmaddcsh_maskz,
15831557 __builtin_ia32_vfmaddcsh_round_mask,
15841558 __builtin_ia32_vfmaddcsh_round_mask3,
1585 __builtin_ia32_vfmaddpd,
1586 __builtin_ia32_vfmaddpd256,
15871559 __builtin_ia32_vfmaddpd512_mask,
15881560 __builtin_ia32_vfmaddpd512_mask3,
15891561 __builtin_ia32_vfmaddpd512_maskz,
1590 __builtin_ia32_vfmaddph,
1591 __builtin_ia32_vfmaddph256,
15921562 __builtin_ia32_vfmaddph512_mask,
15931563 __builtin_ia32_vfmaddph512_mask3,
15941564 __builtin_ia32_vfmaddph512_maskz,
1595 __builtin_ia32_vfmaddps,
1596 __builtin_ia32_vfmaddps256,
15971565 __builtin_ia32_vfmaddps512_mask,
15981566 __builtin_ia32_vfmaddps512_mask3,
15991567 __builtin_ia32_vfmaddps512_maskz,
1600 __builtin_ia32_vfmaddsd,
1601 __builtin_ia32_vfmaddsd3,
16021568 __builtin_ia32_vfmaddsd3_mask,
16031569 __builtin_ia32_vfmaddsd3_mask3,
16041570 __builtin_ia32_vfmaddsd3_maskz,
16051571 __builtin_ia32_vfmaddsh3_mask,
16061572 __builtin_ia32_vfmaddsh3_mask3,
16071573 __builtin_ia32_vfmaddsh3_maskz,
1608 __builtin_ia32_vfmaddss,
1609 __builtin_ia32_vfmaddss3,
16101574 __builtin_ia32_vfmaddss3_mask,
16111575 __builtin_ia32_vfmaddss3_mask3,
16121576 __builtin_ia32_vfmaddss3_maskz,
......@@ -1809,12 +1773,6 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
18091773 __builtin_ia32_vphsubbw,
18101774 __builtin_ia32_vphsubdq,
18111775 __builtin_ia32_vphsubwd,
1812 __builtin_ia32_vplzcntd_128,
1813 __builtin_ia32_vplzcntd_256,
1814 __builtin_ia32_vplzcntd_512,
1815 __builtin_ia32_vplzcntq_128,
1816 __builtin_ia32_vplzcntq_256,
1817 __builtin_ia32_vplzcntq_512,
18181776 __builtin_ia32_vpmacsdd,
18191777 __builtin_ia32_vpmacsdqh,
18201778 __builtin_ia32_vpmacsdql,
......@@ -1837,13 +1795,9 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
18371795 __builtin_ia32_vpmultishiftqb256,
18381796 __builtin_ia32_vpmultishiftqb512,
18391797 __builtin_ia32_vpperm,
1840 __builtin_ia32_vprotb,
18411798 __builtin_ia32_vprotbi,
1842 __builtin_ia32_vprotd,
18431799 __builtin_ia32_vprotdi,
1844 __builtin_ia32_vprotq,
18451800 __builtin_ia32_vprotqi,
1846 __builtin_ia32_vprotw,
18471801 __builtin_ia32_vprotwi,
18481802 __builtin_ia32_vpshab,
18491803 __builtin_ia32_vpshad,
......@@ -1857,15 +1811,6 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
18571811 __builtin_ia32_vpshldq128,
18581812 __builtin_ia32_vpshldq256,
18591813 __builtin_ia32_vpshldq512,
1860 __builtin_ia32_vpshldvd128,
1861 __builtin_ia32_vpshldvd256,
1862 __builtin_ia32_vpshldvd512,
1863 __builtin_ia32_vpshldvq128,
1864 __builtin_ia32_vpshldvq256,
1865 __builtin_ia32_vpshldvq512,
1866 __builtin_ia32_vpshldvw128,
1867 __builtin_ia32_vpshldvw256,
1868 __builtin_ia32_vpshldvw512,
18691814 __builtin_ia32_vpshldw128,
18701815 __builtin_ia32_vpshldw256,
18711816 __builtin_ia32_vpshldw512,
......@@ -1877,15 +1822,6 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
18771822 __builtin_ia32_vpshrdq128,
18781823 __builtin_ia32_vpshrdq256,
18791824 __builtin_ia32_vpshrdq512,
1880 __builtin_ia32_vpshrdvd128,
1881 __builtin_ia32_vpshrdvd256,
1882 __builtin_ia32_vpshrdvd512,
1883 __builtin_ia32_vpshrdvq128,
1884 __builtin_ia32_vpshrdvq256,
1885 __builtin_ia32_vpshrdvq512,
1886 __builtin_ia32_vpshrdvw128,
1887 __builtin_ia32_vpshrdvw256,
1888 __builtin_ia32_vpshrdvw512,
18891825 __builtin_ia32_vpshrdw128,
18901826 __builtin_ia32_vpshrdw256,
18911827 __builtin_ia32_vpshrdw512,
......@@ -1919,9 +1855,6 @@ pub const Tag = enum(u16) { _AddressOfReturnAddress,
19191855 __builtin_ia32_vsm4rnds4128,
19201856 __builtin_ia32_vsm4rnds4256,
19211857 __builtin_ia32_vsm4rnds4512,
1922 __builtin_ia32_vsqrtbf16,
1923 __builtin_ia32_vsqrtbf16256,
1924 __builtin_ia32_vsqrtbf16512,
19251858 __builtin_ia32_vsubbf16128,
19261859 __builtin_ia32_vsubbf16256,
19271860 __builtin_ia32_vsubbf16512,
......@@ -2043,7 +1976,7 @@ pub const longest_name = 41;
20431976/// If found, returns the index of the node within the `dafsa` array.
20441977/// Otherwise, returns `null`.
20451978pub fn findInList(first_child_index: u16, char: u8) ?u16 {
2046 @setEvalBranchQuota(3958);
1979 @setEvalBranchQuota(3824);
20471980 var index = first_child_index;
20481981 while (true) {
20491982 if (dafsa[index].char == char) return index;
......@@ -2138,13 +2071,13 @@ const Node = packed struct {
21382071
21392072const dafsa = [_]Node{
21402073 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
2141 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1979, .child_index = 2 },
2074 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1912, .child_index = 2 },
21422075 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 10 },
21432076 .{ .char = 'B', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 11 },
21442077 .{ .char = 'I', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 12 },
21452078 .{ .char = 'R', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 13 },
21462079 .{ .char = 'W', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 14 },
2147 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1953, .child_index = 15 },
2080 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1886, .child_index = 15 },
21482081 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 22 },
21492082 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 24 },
21502083 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 26 },
......@@ -2152,7 +2085,7 @@ const dafsa = [_]Node{
21522085 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 28 },
21532086 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 29 },
21542087 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 30 },
2155 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1937, .child_index = 31 },
2088 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1870, .child_index = 31 },
21562089 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 32 },
21572090 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 33 },
21582091 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 34 },
......@@ -2168,7 +2101,7 @@ const dafsa = [_]Node{
21682101 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 44 },
21692102 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 45 },
21702103 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 46 },
2171 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 47 },
2104 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 47 },
21722105 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 48 },
21732106 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 49 },
21742107 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 50 },
......@@ -2184,7 +2117,7 @@ const dafsa = [_]Node{
21842117 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 65 },
21852118 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 66 },
21862119 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 68 },
2187 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 69 },
2120 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 69 },
21882121 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 70 },
21892122 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 71 },
21902123 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 72 },
......@@ -2206,7 +2139,7 @@ const dafsa = [_]Node{
22062139 .{ .char = 'B', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 88 },
22072140 .{ .char = 'W', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 14 },
22082141 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 89 },
2209 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 90 },
2142 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 90 },
22102143 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 91 },
22112144 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 92 },
22122145 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 93 },
......@@ -2227,7 +2160,7 @@ const dafsa = [_]Node{
22272160 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 106 },
22282161 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 107 },
22292162 .{ .char = 'B', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 88 },
2230 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 108 },
2163 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 108 },
22312164 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 109 },
22322165 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
22332166 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
......@@ -2245,7 +2178,7 @@ const dafsa = [_]Node{
22452178 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 118 },
22462179 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 120 },
22472180 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 121 },
2248 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 122 },
2181 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 122 },
22492182 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 123 },
22502183 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 124 },
22512184 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 128 },
......@@ -2259,7 +2192,7 @@ const dafsa = [_]Node{
22592192 .{ .char = 'R', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 136 },
22602193 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 137 },
22612194 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 138 },
2262 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 139 },
2195 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 139 },
22632196 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
22642197 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 140 },
22652198 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 141 },
......@@ -2276,7 +2209,7 @@ const dafsa = [_]Node{
22762209 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 149 },
22772210 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 150 },
22782211 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 151 },
2279 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 152 },
2212 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 152 },
22802213 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 153 },
22812214 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 142 },
22822215 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 154 },
......@@ -2289,7 +2222,7 @@ const dafsa = [_]Node{
22892222 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 160 },
22902223 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 161 },
22912224 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 145 },
2292 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 162 },
2225 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 162 },
22932226 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 132 },
22942227 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
22952228 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 164 },
......@@ -2299,7 +2232,7 @@ const dafsa = [_]Node{
22992232 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 166 },
23002233 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 167 },
23012234 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 168 },
2302 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 174 },
2235 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 174 },
23032236 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
23042237 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
23052238 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 175 },
......@@ -2311,7 +2244,7 @@ const dafsa = [_]Node{
23112244 .{ .char = 'I', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 179 },
23122245 .{ .char = 'O', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 180 },
23132246 .{ .char = 'X', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 181 },
2314 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 182 },
2247 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 182 },
23152248 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 183 },
23162249 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 184 },
23172250 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 185 },
......@@ -2319,20 +2252,20 @@ const dafsa = [_]Node{
23192252 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 185 },
23202253 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 187 },
23212254 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 180 },
2322 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 188 },
2255 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 188 },
23232256 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 189 },
23242257 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 187 },
23252258 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 190 },
23262259 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 191 },
23272260 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 192 },
2328 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1937, .child_index = 193 },
2261 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1870, .child_index = 193 },
23292262 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 213 },
23302263 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 214 },
23312264 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 215 },
23322265 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
23332266 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 43, .child_index = 216 },
23342267 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 222 },
2335 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 222, .child_index = 225 },
2268 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 221, .child_index = 225 },
23362269 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 230 },
23372270 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 56, .child_index = 233 },
23382271 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 236 },
......@@ -2342,12 +2275,12 @@ const dafsa = [_]Node{
23422275 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 59, .child_index = 244 },
23432276 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 38, .child_index = 252 },
23442277 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 79, .child_index = 258 },
2345 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 360, .child_index = 265 },
2278 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 348, .child_index = 265 },
23462279 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 101, .child_index = 275 },
2347 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 140, .child_index = 282 },
2280 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 132, .child_index = 282 },
23482281 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 291 },
23492282 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 293 },
2350 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 640, .child_index = 296 },
2283 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 594, .child_index = 296 },
23512284 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 310 },
23522285 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 312 },
23532286 .{ .char = 'A', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 319 },
......@@ -2366,7 +2299,7 @@ const dafsa = [_]Node{
23662299 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 62, .child_index = 337 },
23672300 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 48, .child_index = 338 },
23682301 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 339 },
2369 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 340 },
2302 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 102, .child_index = 340 },
23702303 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 341 },
23712304 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 342 },
23722305 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 344 },
......@@ -2409,7 +2342,7 @@ const dafsa = [_]Node{
24092342 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 394 },
24102343 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 396 },
24112344 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 129, .child_index = 399 },
2412 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 402 },
2345 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 402 },
24132346 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 108, .child_index = 404 },
24142347 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 19, .child_index = 409 },
24152348 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 411 },
......@@ -2425,7 +2358,7 @@ const dafsa = [_]Node{
24252358 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 100 },
24262359 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 428 },
24272360 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 374 },
2428 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 430 },
2361 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 430 },
24292362 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 29, .child_index = 431 },
24302363 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 433 },
24312364 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 434 },
......@@ -2435,1964 +2368,1936 @@ const dafsa = [_]Node{
24352368 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 439 },
24362369 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 440 },
24372370 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 441 },
2438 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 222, .child_index = 442 },
2371 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 220, .child_index = 442 },
24392372 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 445 },
24402373 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 19, .child_index = 447 },
2441 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 94, .child_index = 449 },
2374 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 81, .child_index = 449 },
24422375 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 453 },
24432376 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 455 },
24442377 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 456 },
2445 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 203, .child_index = 459 },
2446 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 469 },
2447 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 473 },
2448 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 478 },
2449 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 479 },
2450 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 480 },
2451 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 482 },
2452 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 486 },
2453 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 487 },
2454 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 488 },
2378 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 175, .child_index = 459 },
2379 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 468 },
2380 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 472 },
2381 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 476 },
2382 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 477 },
2383 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 478 },
2384 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 480 },
2385 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 484 },
2386 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 485 },
2387 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 486 },
24552388 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 41 },
2456 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 489 },
2457 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 491 },
2458 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
2459 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
2460 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 496 },
2461 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 497 },
2462 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 498 },
2463 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 498 },
2464 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 499 },
2465 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 502 },
2466 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 506 },
2467 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
2389 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 487 },
2390 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 489 },
2391 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 492 },
2392 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 493 },
2393 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
2394 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 495 },
2395 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 496 },
2396 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 496 },
2397 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 497 },
2398 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 22, .child_index = 500 },
2399 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 504 },
2400 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
24682401 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
2469 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 508 },
2470 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 509 },
2471 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 510 },
2472 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 511 },
2473 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 512 },
2474 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 513 },
2402 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 506 },
2403 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 507 },
2404 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 508 },
2405 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 509 },
2406 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 510 },
2407 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 511 },
24752408 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 96 },
2476 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 514 },
2477 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 62, .child_index = 515 },
2478 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 48, .child_index = 526 },
2479 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 528 },
2480 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 103, .child_index = 529 },
2409 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
2410 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 62, .child_index = 513 },
2411 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 48, .child_index = 524 },
2412 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 526 },
2413 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 102, .child_index = 527 },
24812414 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 383 },
2482 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 539 },
2483 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 540 },
2484 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 542 },
2485 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 543 },
2486 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 545 },
2487 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 546 },
2488 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 547 },
2489 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 548 },
2490 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 549 },
2491 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 550 },
2492 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 551 },
2493 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 552 },
2494 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 553 },
2495 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 554 },
2496 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 555 },
2497 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 557 },
2498 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 558 },
2499 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 559 },
2500 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 560 },
2501 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 561 },
2502 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 562 },
2503 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 563 },
2504 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 564 },
2505 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 565 },
2506 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 566 },
2507 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 571 },
2508 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 572 },
2509 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 573 },
2510 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 574 },
2511 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 575 },
2512 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 576 },
2513 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 577 },
2514 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 578 },
2515 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 579 },
2516 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 580 },
2517 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 582 },
2518 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 583 },
2519 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 584 },
2520 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 584 },
2521 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 586 },
2522 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 587 },
2523 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 590 },
2524 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 540 },
2525 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 591 },
2526 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 592 },
2527 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 593 },
2415 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 537 },
2416 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 538 },
2417 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 540 },
2418 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 541 },
2419 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 543 },
2420 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 544 },
2421 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 545 },
2422 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 546 },
2423 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 547 },
2424 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 548 },
2425 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 549 },
2426 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 550 },
2427 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 551 },
2428 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 552 },
2429 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 553 },
2430 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 555 },
2431 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 556 },
2432 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 557 },
2433 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 558 },
2434 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 559 },
2435 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 560 },
2436 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 561 },
2437 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 562 },
2438 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 563 },
2439 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 564 },
2440 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 569 },
2441 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 570 },
2442 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 571 },
2443 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 572 },
2444 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 573 },
2445 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 574 },
2446 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 575 },
2447 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 576 },
2448 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 577 },
2449 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 578 },
2450 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 580 },
2451 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 581 },
2452 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 582 },
2453 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 582 },
2454 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 584 },
2455 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 585 },
2456 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 588 },
2457 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 538 },
2458 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 589 },
2459 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 590 },
2460 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 591 },
25282461 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 115 },
2529 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 594 },
2530 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 595 },
2531 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 596 },
2532 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 597 },
2533 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 598 },
2534 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 19, .child_index = 599 },
2535 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 600 },
2536 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 601 },
2537 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 602 },
2538 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 603 },
2539 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 604 },
2540 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 108, .child_index = 605 },
2541 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 606 },
2542 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 607 },
2543 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 608 },
2544 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 610 },
2545 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 611 },
2546 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 612 },
2547 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 613 },
2548 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 57, .child_index = 614 },
2549 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 616 },
2550 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 618 },
2551 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 619 },
2552 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 620 },
2553 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 623 },
2554 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 627 },
2555 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 628 },
2556 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 630 },
2557 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 631 },
2558 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 632 },
2559 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 633 },
2560 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 634 },
2561 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 635 },
2562 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 636 },
2563 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 637 },
2564 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 638 },
2565 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 640 },
2566 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 641 },
2567 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 513 },
2568 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 642 },
2569 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 644 },
2570 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 645 },
2571 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 577 },
2572 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 646 },
2573 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 647 },
2462 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 592 },
2463 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 593 },
2464 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 594 },
2465 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 595 },
2466 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 596 },
2467 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 19, .child_index = 597 },
2468 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 598 },
2469 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 599 },
2470 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 600 },
2471 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 601 },
2472 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 602 },
2473 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 108, .child_index = 603 },
2474 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 604 },
2475 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 605 },
2476 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 606 },
2477 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 608 },
2478 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 609 },
2479 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 610 },
2480 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 611 },
2481 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 57, .child_index = 612 },
2482 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 614 },
2483 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 616 },
2484 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 617 },
2485 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 618 },
2486 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 621 },
2487 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 625 },
2488 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 626 },
2489 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 628 },
2490 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 629 },
2491 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 630 },
2492 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 631 },
2493 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 632 },
2494 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 633 },
2495 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 634 },
2496 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 635 },
2497 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 636 },
2498 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 28, .child_index = 638 },
2499 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 639 },
2500 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 511 },
2501 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 640 },
2502 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 642 },
2503 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 643 },
2504 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 575 },
2505 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 644 },
2506 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 645 },
25742507 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 101 },
2575 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 650 },
2576 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 651 },
2577 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 652 },
2578 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 653 },
2579 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 654 },
2580 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 655 },
2581 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 656 },
2582 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 657 },
2583 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 658 },
2584 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 210, .child_index = 659 },
2585 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 660 },
2586 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 661 },
2587 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 662 },
2588 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 663 },
2589 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 664 },
2590 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 70, .child_index = 665 },
2591 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 668 },
2592 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 669 },
2593 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 670 },
2594 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 671 },
2595 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 672 },
2596 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 673 },
2597 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 674 },
2598 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 675 },
2599 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 676 },
2600 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 677 },
2601 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 48, .child_index = 678 },
2602 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 37, .child_index = 679 },
2603 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 680 },
2604 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 682 },
2605 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 683 },
2606 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 685 },
2607 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 686 },
2608 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 687 },
2609 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 657 },
2610 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 688 },
2611 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 689 },
2612 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 690 },
2613 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 691 },
2614 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 692 },
2615 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 693 },
2616 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 695 },
2617 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 696 },
2618 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 697 },
2619 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 698 },
2620 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 699 },
2621 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 700 },
2622 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 701 },
2623 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 702 },
2624 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 703 },
2625 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 704 },
2626 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 705 },
2627 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 706 },
2508 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 648 },
2509 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 649 },
2510 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 650 },
2511 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 651 },
2512 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 652 },
2513 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 653 },
2514 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 654 },
2515 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 655 },
2516 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 656 },
2517 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 208, .child_index = 657 },
2518 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 658 },
2519 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 659 },
2520 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 660 },
2521 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 661 },
2522 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 662 },
2523 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 57, .child_index = 663 },
2524 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 666 },
2525 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 667 },
2526 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 668 },
2527 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 669 },
2528 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 670 },
2529 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 671 },
2530 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 672 },
2531 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 673 },
2532 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 674 },
2533 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 675 },
2534 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 48, .child_index = 676 },
2535 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 37, .child_index = 677 },
2536 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 678 },
2537 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 21, .child_index = 680 },
2538 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 682 },
2539 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 683 },
2540 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 684 },
2541 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 655 },
2542 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 685 },
2543 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 686 },
2544 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 687 },
2545 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 688 },
2546 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 689 },
2547 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 690 },
2548 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 692 },
2549 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 693 },
2550 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 694 },
2551 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 695 },
2552 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 696 },
2553 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 697 },
2554 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 698 },
2555 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 699 },
2556 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 700 },
2557 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 701 },
2558 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 702 },
26282559 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
2629 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 707 },
2630 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 708 },
2631 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 709 },
2560 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 703 },
2561 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 704 },
2562 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 705 },
26322563 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 62 },
2633 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 707 },
2634 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 710 },
2635 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 711 },
2636 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 712 },
2637 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 713 },
2638 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
2639 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 714 },
2640 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 715 },
2641 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 718 },
2642 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 722 },
2643 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 723 },
2644 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 724 },
2645 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 725 },
2646 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 726 },
2564 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 703 },
2565 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 706 },
2566 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 707 },
2567 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 708 },
2568 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 709 },
2569 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
2570 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 710 },
2571 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 711 },
2572 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 714 },
2573 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 718 },
2574 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 719 },
2575 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 720 },
2576 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 721 },
2577 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 722 },
26472578 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 54 },
2648 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 727 },
2649 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 728 },
2650 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 729 },
2651 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 730 },
2652 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 731 },
2653 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 732 },
2654 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 733 },
2655 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
2656 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
2657 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 737 },
2658 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 738 },
2659 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 740 },
2660 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 742 },
2661 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 743 },
2662 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
2663 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 746 },
2664 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 749 },
2665 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
2666 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 750 },
2667 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 755 },
2668 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 756 },
2669 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 757 },
2670 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 758 },
2671 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 760 },
2672 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 761 },
2673 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 762 },
2674 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 764 },
2675 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 766 },
2676 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 27, .child_index = 770 },
2677 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 772 },
2678 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 757 },
2679 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 775 },
2680 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 715 },
2681 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 776 },
2682 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 779 },
2579 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 723 },
2580 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 724 },
2581 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 725 },
2582 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 726 },
2583 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 727 },
2584 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 728 },
2585 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 729 },
2586 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
2587 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
2588 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 733 },
2589 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 734 },
2590 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 736 },
2591 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 738 },
2592 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 739 },
2593 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
2594 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 742 },
2595 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 745 },
2596 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
2597 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 746 },
2598 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 751 },
2599 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 752 },
2600 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 753 },
2601 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 754 },
2602 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 756 },
2603 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 757 },
2604 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 30, .child_index = 758 },
2605 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 760 },
2606 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 762 },
2607 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 27, .child_index = 765 },
2608 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 767 },
2609 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 753 },
2610 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 770 },
2611 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 711 },
2612 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 771 },
2613 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 774 },
26832614 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
2684 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 780 },
2615 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 775 },
26852616 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2686 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 781 },
2687 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 782 },
2688 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 783 },
2689 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 784 },
2690 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 786 },
2691 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 787 },
2692 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 788 },
2693 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 789 },
2694 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 790 },
2695 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 791 },
2696 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 792 },
2697 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 793 },
2698 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 793 },
2699 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 794 },
2700 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 795 },
2701 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 796 },
2702 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 797 },
2703 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 801 },
2704 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 806 },
2705 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 797 },
2706 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2707 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2708 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2709 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2617 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 776 },
2618 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 777 },
2619 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 778 },
2620 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 779 },
2621 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 781 },
2622 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 782 },
2623 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 783 },
2624 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 784 },
2625 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 785 },
2626 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 786 },
2627 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 787 },
2628 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 788 },
2629 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 788 },
2630 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 789 },
2631 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 790 },
2632 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 791 },
2633 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 792 },
2634 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 796 },
2635 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 801 },
2636 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 792 },
2637 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2638 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2639 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2640 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
27102641 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 368 },
2711 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 811 },
2712 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 812 },
2713 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 813 },
2714 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 575 },
2715 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 797 },
2716 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 814 },
2642 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 806 },
2643 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 807 },
2644 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 808 },
2645 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 573 },
2646 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 792 },
2647 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 809 },
27172648 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 113 },
2718 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 815 },
2719 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 816 },
2720 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 821 },
2721 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 822 },
2722 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 823 },
2723 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 824 },
2724 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 827 },
2725 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 830 },
2649 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
2650 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 811 },
2651 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 816 },
2652 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 817 },
2653 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 818 },
2654 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 819 },
2655 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 822 },
2656 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 825 },
2657 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 828 },
2658 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 829 },
2659 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 831 },
2660 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 832 },
2661 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 608 },
27262662 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 833 },
2727 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 834 },
2728 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 836 },
2729 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 837 },
2730 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 610 },
2731 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 838 },
2732 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 839 },
2733 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 841 },
2734 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 842 },
2735 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 844 },
2736 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 845 },
2737 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 846 },
2738 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 729 },
2739 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 19, .child_index = 848 },
2740 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 729 },
2741 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 851 },
2742 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 852 },
2743 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 853 },
2744 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 854 },
2745 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 855 },
2746 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 861 },
2747 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 864 },
2748 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 865 },
2749 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 865 },
2750 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 868 },
2751 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 869 },
2752 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 870 },
2753 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 871 },
2754 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 27, .child_index = 875 },
2755 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 871 },
2756 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 879 },
2757 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 880 },
2758 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 881 },
2759 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 882 },
2760 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 883 },
2761 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 884 },
2762 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 886 },
2663 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 834 },
2664 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 836 },
2665 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 837 },
2666 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 839 },
2667 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 840 },
2668 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 841 },
2669 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 725 },
2670 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 19, .child_index = 843 },
2671 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 725 },
2672 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 846 },
2673 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 847 },
2674 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 848 },
2675 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 849 },
2676 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 108, .child_index = 850 },
2677 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 856 },
2678 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 859 },
2679 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 860 },
2680 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 860 },
2681 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 862 },
2682 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 863 },
2683 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 864 },
2684 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 865 },
2685 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 27, .child_index = 869 },
2686 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 30, .child_index = 865 },
2687 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 873 },
2688 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 874 },
2689 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 875 },
2690 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 876 },
2691 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 877 },
2692 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 878 },
2693 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 880 },
27632694 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 163 },
2764 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 888 },
2695 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 882 },
27652696 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 93 },
2766 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 889 },
2767 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 890 },
2768 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 891 },
2769 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 892 },
2770 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 893 },
2771 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 894 },
2772 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 895 },
2773 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 896 },
2774 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 897 },
2775 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 898 },
2776 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 899 },
2777 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 900 },
2778 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 901 },
2779 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 902 },
2780 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 903 },
2781 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 904 },
2782 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 905 },
2783 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 908 },
2784 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 909 },
2785 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 911 },
2786 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 913 },
2787 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 914 },
2788 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 715 },
2789 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 776 },
2790 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 915 },
2791 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 919 },
2792 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 920 },
2793 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 921 },
2794 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 922 },
2795 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 923 },
2796 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 924 },
2797 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 925 },
2798 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 926 },
2799 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 210, .child_index = 927 },
2800 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 923 },
2801 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 938 },
2802 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 939 },
2803 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 941 },
2804 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 942 },
2805 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 57, .child_index = 944 },
2806 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 945 },
2807 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 946 },
2808 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 947 },
2809 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 948 },
2810 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 949 },
2811 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 951 },
2812 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 952 },
2813 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 923 },
2814 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 953 },
2815 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 923 },
2816 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 955 },
2817 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 956 },
2818 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 48, .child_index = 958 },
2819 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 960 },
2820 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 961 },
2821 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 962 },
2822 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 963 },
2823 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 964 },
2824 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 966 },
2825 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 967 },
2826 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 968 },
2827 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 969 },
2828 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 973 },
2829 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 974 },
2830 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 975 },
2831 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 976 },
2832 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 977 },
2833 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 978 },
2834 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 980 },
2835 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 982 },
2836 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 923 },
2837 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 983 },
2838 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 984 },
2839 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 985 },
2840 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 986 },
2841 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 987 },
2842 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 888 },
2697 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 883 },
2698 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 884 },
2699 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 885 },
2700 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 886 },
2701 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 887 },
2702 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 888 },
2703 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 889 },
2704 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 890 },
2705 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 891 },
2706 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 892 },
2707 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 893 },
2708 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 894 },
2709 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 895 },
2710 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 896 },
2711 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 897 },
2712 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 898 },
2713 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 899 },
2714 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 902 },
2715 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 903 },
2716 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 538 },
2717 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 905 },
2718 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 906 },
2719 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 711 },
2720 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 771 },
2721 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 907 },
2722 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 911 },
2723 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 912 },
2724 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 913 },
2725 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 914 },
2726 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 915 },
2727 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 916 },
2728 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 917 },
2729 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 918 },
2730 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 208, .child_index = 919 },
2731 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 915 },
2732 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 930 },
2733 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 931 },
2734 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 933 },
2735 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 934 },
2736 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 44, .child_index = 936 },
2737 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 937 },
2738 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 938 },
2739 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 939 },
2740 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 940 },
2741 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 941 },
2742 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 943 },
2743 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 944 },
2744 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 915 },
2745 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 945 },
2746 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 915 },
2747 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 947 },
2748 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 948 },
2749 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 48, .child_index = 950 },
2750 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 952 },
2751 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 953 },
2752 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 954 },
2753 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 955 },
2754 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 957 },
2755 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 958 },
2756 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 959 },
2757 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 29, .child_index = 960 },
2758 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 964 },
2759 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 965 },
2760 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 966 },
2761 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 967 },
2762 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 968 },
2763 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 969 },
2764 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 971 },
2765 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 915 },
2766 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 973 },
2767 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 974 },
2768 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 975 },
2769 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 976 },
2770 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 977 },
2771 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 882 },
28432772 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
2844 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 703 },
2845 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 988 },
2846 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 989 },
2773 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 699 },
2774 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 978 },
2775 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 979 },
2776 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 980 },
2777 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 981 },
2778 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 982 },
2779 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 983 },
2780 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 984 },
2781 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 985 },
2782 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 986 },
2783 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 989 },
2784 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 990 },
2785 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 990 },
28472786 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 990 },
2848 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 991 },
2849 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 992 },
2850 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
2851 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 994 },
2852 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 995 },
2853 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 996 },
2854 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 999 },
2855 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1000 },
2856 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1000 },
2857 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1000 },
2858 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1001 },
2859 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1001 },
2860 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1001 },
2861 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 558 },
2862 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1002 },
2863 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1002 },
2864 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1003 },
2865 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1004 },
2866 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1005 },
2867 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1007 },
2868 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1009 },
2869 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1011 },
2870 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1012 },
2871 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1013 },
2872 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
2873 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1015 },
2874 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
2875 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1017 },
2876 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1018 },
2877 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1019 },
2878 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1019 },
2879 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1019 },
2880 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 737 },
2881 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 738 },
2882 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1021 },
2883 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1022 },
2884 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
2885 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1022 },
2886 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1025 },
2887 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1026 },
2888 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1025 },
2889 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1027 },
2890 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1028 },
2891 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1029 },
2892 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1029 },
2893 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1031 },
2894 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1032 },
2895 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1033 },
2896 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1034 },
2897 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1037 },
2898 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1037 },
2899 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1038 },
2900 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1039 },
2901 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1040 },
2902 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 1042 },
2903 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1043 },
2904 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1037 },
2905 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1044 },
2906 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
2907 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1046 },
2908 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1047 },
2909 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1048 },
2910 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 1049 },
2911 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1051 },
2912 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1053 },
2913 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1054 },
2914 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1055 },
2915 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1056 },
2916 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1001 },
2917 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1001 },
2918 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1001 },
2919 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1057 },
2920 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1058 },
2921 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1059 },
2922 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1060 },
2923 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1061 },
2924 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 1062 },
2925 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1063 },
2926 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1064 },
2927 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1065 },
2928 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1066 },
2787 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 991 },
2788 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 991 },
2789 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 991 },
2790 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 556 },
2791 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 992 },
2792 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 992 },
2793 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
2794 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 994 },
2795 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 860 },
2796 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 995 },
2797 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 997 },
2798 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 999 },
2799 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1000 },
2800 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1001 },
2801 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1002 },
2802 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1003 },
2803 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1004 },
2804 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1005 },
2805 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1006 },
2806 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1007 },
2807 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1007 },
2808 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1007 },
2809 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 733 },
2810 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 734 },
2811 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1009 },
2812 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1010 },
2813 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
2814 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1010 },
2815 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1013 },
2816 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1014 },
2817 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1013 },
2818 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1015 },
2819 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
2820 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1017 },
2821 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1017 },
2822 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1019 },
2823 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1020 },
2824 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1021 },
2825 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1022 },
2826 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1025 },
2827 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1025 },
2828 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
2829 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1027 },
2830 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1028 },
2831 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 1030 },
2832 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1031 },
2833 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1025 },
2834 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1032 },
2835 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1033 },
2836 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1034 },
2837 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1035 },
2838 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 25, .child_index = 1036 },
2839 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1038 },
2840 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1040 },
2841 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1041 },
2842 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1042 },
2843 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1043 },
2844 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 991 },
2845 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 991 },
2846 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 991 },
2847 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1044 },
2848 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1045 },
2849 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1046 },
2850 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1047 },
2851 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1048 },
2852 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 1049 },
2853 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1050 },
2854 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1051 },
2855 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1052 },
2856 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1053 },
29292857 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 132 },
2930 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1067 },
2931 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1068 },
2932 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1069 },
2933 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1070 },
2934 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 892 },
2935 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1072 },
2936 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1073 },
2937 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2938 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2939 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2940 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
2941 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2942 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2943 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 797 },
2944 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
2945 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
2858 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1054 },
2859 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1055 },
2860 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1056 },
2861 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1057 },
2862 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 886 },
2863 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1059 },
2864 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1060 },
2865 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2866 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2867 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2868 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
2869 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2870 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2871 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 792 },
2872 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
2873 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
29462874 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
29472875 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
29482876 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
29492877 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
29502878 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
2951 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1074 },
2952 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1075 },
2953 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1077 },
2954 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 780 },
2879 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1061 },
2880 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1062 },
2881 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1064 },
2882 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 775 },
29552883 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 96 },
2956 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1078 },
2957 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1079 },
2958 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1080 },
2959 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1081 },
2960 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1078 },
2961 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1085 },
2962 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1086 },
2963 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1087 },
2964 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1088 },
2965 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1089 },
2966 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1090 },
2967 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1091 },
2968 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
2969 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1091 },
2970 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1096 },
2971 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1001 },
2972 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1096 },
2973 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1097 },
2974 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1098 },
2975 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1099 },
2976 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1100 },
2977 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1101 },
2978 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1103 },
2979 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1104 },
2980 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1104 },
2981 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1105 },
2982 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
2983 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
2984 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1106 },
2985 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1107 },
2986 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1108 },
2987 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1108 },
2988 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1109 },
2989 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1111 },
2990 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1112 },
2991 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1113 },
2992 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1116 },
2993 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1113 },
2994 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1117 },
2995 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1119 },
2996 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1121 },
2997 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 1122 },
2998 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 1125 },
2999 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 1128 },
3000 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1129 },
3001 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1130 },
3002 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1131 },
3003 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1134 },
3004 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1135 },
3005 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3006 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3007 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1005 },
3008 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1136 },
3009 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1137 },
3010 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1141 },
3011 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1144 },
3012 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1149 },
3013 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1153 },
3014 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1149 },
3015 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1149 },
3016 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1149 },
3017 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1158 },
3018 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1149 },
3019 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1163 },
3020 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1164 },
3021 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1167 },
3022 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1168 },
3023 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1170 },
3024 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
3025 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 780 },
3026 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1026 },
2884 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1065 },
2885 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1066 },
2886 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1067 },
2887 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1068 },
2888 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1065 },
2889 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1072 },
2890 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1073 },
2891 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1074 },
2892 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1075 },
2893 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1076 },
2894 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1077 },
2895 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1078 },
2896 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
2897 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1078 },
2898 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1083 },
2899 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 991 },
2900 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1083 },
2901 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1084 },
2902 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1085 },
2903 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1086 },
2904 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1087 },
2905 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1088 },
2906 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1090 },
2907 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1091 },
2908 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1091 },
2909 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1092 },
2910 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
2911 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
2912 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1093 },
2913 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1094 },
2914 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1095 },
2915 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1095 },
2916 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1096 },
2917 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1098 },
2918 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1099 },
2919 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1100 },
2920 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1103 },
2921 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1100 },
2922 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1104 },
2923 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1106 },
2924 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1108 },
2925 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 17, .child_index = 1109 },
2926 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 1112 },
2927 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 36, .child_index = 1115 },
2928 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1116 },
2929 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1117 },
2930 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1118 },
2931 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1121 },
2932 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1122 },
2933 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
2934 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
2935 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1123 },
2936 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1124 },
2937 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1128 },
2938 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1131 },
2939 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1136 },
2940 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1140 },
2941 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1136 },
2942 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1136 },
2943 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1136 },
2944 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1145 },
2945 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1136 },
2946 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1150 },
2947 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1151 },
2948 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1154 },
2949 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1155 },
2950 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1157 },
2951 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
2952 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 775 },
2953 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1014 },
30272954 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3028 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 889 },
2955 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 883 },
30292956 .{ .char = 'u', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3030 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1172 },
3031 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1172 },
2957 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1159 },
2958 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1159 },
30322959 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
3033 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1173 },
3034 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1174 },
3035 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 1175 },
3036 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1176 },
3037 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1177 },
3038 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 620 },
3039 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1179 },
3040 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1180 },
3041 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1181 },
3042 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1182 },
3043 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1183 },
3044 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1184 },
3045 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1185 },
3046 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1186 },
3047 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1187 },
3048 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1188 },
3049 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1189 },
3050 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1191 },
3051 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1193 },
3052 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 830 },
3053 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1196 },
3054 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1200 },
3055 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
3056 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
3057 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
3058 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
3059 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 750 },
3060 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 788 },
3061 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
3062 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3063 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1201 },
3064 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1202 },
3065 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1203 },
3066 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1204 },
3067 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 1205 },
3068 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1206 },
3069 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1208 },
3070 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1209 },
3071 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1210 },
3072 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 64, .child_index = 1211 },
3073 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1208 },
3074 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 1214 },
3075 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 70, .child_index = 1218 },
3076 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1221 },
3077 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1225 },
3078 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1226 },
3079 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1227 },
3080 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1228 },
3081 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1229 },
3082 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 1230 },
3083 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 946 },
3084 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 57, .child_index = 1231 },
3085 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1232 },
3086 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1233 },
3087 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1234 },
3088 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1177 },
3089 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1235 },
3090 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1236 },
3091 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1237 },
3092 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1238 },
3093 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1201 },
3094 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1239 },
3095 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1240 },
3096 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1241 },
3097 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1246 },
3098 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1247 },
3099 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1247 },
3100 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 1249 },
3101 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1251 },
2960 .{ .char = 'c', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1160 },
2961 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1161 },
2962 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 1162 },
2963 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1163 },
2964 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1164 },
2965 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 618 },
2966 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1166 },
2967 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1167 },
2968 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1168 },
2969 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1169 },
2970 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1170 },
2971 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1171 },
2972 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1172 },
2973 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1173 },
2974 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1174 },
2975 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1175 },
2976 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1176 },
2977 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1178 },
2978 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1180 },
2979 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1184 },
2980 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
2981 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
2982 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
2983 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
2984 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 746 },
2985 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 783 },
2986 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 983 },
2987 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
2988 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1185 },
2989 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1186 },
2990 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1187 },
2991 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1188 },
2992 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 1189 },
2993 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1190 },
2994 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1192 },
2995 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1193 },
2996 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1194 },
2997 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 62, .child_index = 1195 },
2998 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1192 },
2999 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 1198 },
3000 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 70, .child_index = 1202 },
3001 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1205 },
3002 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1209 },
3003 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1210 },
3004 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1211 },
3005 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1212 },
3006 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1213 },
3007 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 1214 },
3008 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 938 },
3009 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 44, .child_index = 1215 },
3010 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1216 },
3011 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1217 },
3012 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1218 },
3013 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1164 },
3014 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1219 },
3015 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1220 },
3016 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1221 },
3017 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1222 },
3018 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1185 },
3019 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1223 },
3020 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1224 },
3021 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1225 },
3022 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1230 },
3023 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1231 },
3024 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1231 },
3025 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 37, .child_index = 1233 },
3026 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1235 },
3027 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1236 },
3028 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1237 },
3029 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1238 },
3030 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1240 },
3031 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1241 },
3032 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1242 },
3033 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 801 },
3034 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 1246 },
3035 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1250 },
3036 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1251 },
31023037 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1252 },
3103 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1253 },
3104 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 1254 },
3105 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1255 },
3106 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1257 },
3107 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1258 },
3108 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1259 },
3109 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 806 },
3110 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 22, .child_index = 1263 },
3111 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1267 },
3112 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1268 },
3113 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1269 },
3114 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1270 },
3115 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1271 },
3116 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1272 },
3117 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1273 },
3118 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1185 },
3119 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1274 },
3120 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1275 },
3121 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1276 },
3122 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1277 },
3123 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1278 },
3124 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1281 },
3038 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1253 },
3039 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1254 },
3040 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1255 },
3041 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1256 },
3042 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1172 },
3043 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1257 },
3044 .{ .char = 'k', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1258 },
3045 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1259 },
3046 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1260 },
3047 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1263 },
31253048 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
3126 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 699 },
3127 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 894 },
3128 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
3129 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1283 },
3130 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1284 },
3131 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1285 },
3132 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1286 },
3049 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 695 },
3050 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 888 },
3051 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 983 },
3052 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1265 },
3053 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1266 },
3054 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1267 },
3055 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1268 },
31333056 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3134 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1289 },
3057 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1271 },
31353058 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 187 },
31363059 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 192 },
3137 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1290 },
3138 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1291 },
3139 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1292 },
3140 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1293 },
3141 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1294 },
3142 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1295 },
3143 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1300 },
3144 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1301 },
3145 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3146 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3147 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1302 },
3148 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1303 },
3149 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1070 },
3150 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 793 },
3151 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
3060 .{ .char = 'A', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1272 },
3061 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1273 },
3062 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1274 },
3063 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1275 },
3064 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1276 },
3065 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1277 },
3066 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1282 },
3067 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1283 },
3068 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1284 },
3069 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
3070 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1057 },
3071 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 788 },
3072 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
31523073 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 153 },
3153 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1304 },
3154 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1305 },
3074 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1286 },
3075 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1287 },
31553076 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3156 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1306 },
3157 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1307 },
3158 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1308 },
3159 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1309 },
3160 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1309 },
3161 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1019 },
3162 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
3163 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1311 },
3164 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1018 },
3165 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1312 },
3166 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1312 },
3167 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 742 },
3077 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1288 },
3078 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1289 },
3079 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1290 },
3080 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1291 },
3081 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1291 },
3082 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1007 },
3083 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1004 },
3084 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1293 },
3085 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1006 },
3086 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1294 },
3087 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1294 },
3088 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 738 },
31683089 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
31693090 .{ .char = 'e', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
31703091 .{ .char = 't', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3171 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1028 },
3172 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1313 },
3173 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1317 },
3174 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
3175 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
3176 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
3177 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1318 },
3178 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1319 },
3179 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1320 },
3180 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1321 },
3181 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1322 },
3182 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1323 },
3183 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1327 },
3184 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1331 },
3185 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1332 },
3186 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1333 },
3187 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1334 },
3188 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1335 },
3189 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 1336 },
3190 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1337 },
3191 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1338 },
3192 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1338 },
3193 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1038 },
3194 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1044 },
3195 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1047 },
3196 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1339 },
3197 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1340 },
3198 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1341 },
3199 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1342 },
3200 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1343 },
3201 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1344 },
3202 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1349 },
3092 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1016 },
3093 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1295 },
3094 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1299 },
3095 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
3096 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
3097 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
3098 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1300 },
3099 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1301 },
3100 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1302 },
3101 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1303 },
3102 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1304 },
3103 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 17, .child_index = 1305 },
3104 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1309 },
3105 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1313 },
3106 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1314 },
3107 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1315 },
3108 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1316 },
3109 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 13, .child_index = 1317 },
3110 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1318 },
3111 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1319 },
3112 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1319 },
3113 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
3114 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1032 },
3115 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1034 },
3116 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1320 },
3117 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1321 },
3118 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1322 },
3119 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1323 },
3120 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1324 },
3121 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1325 },
3122 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1330 },
32033123 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3204 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1350 },
3205 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1351 },
3124 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1331 },
3125 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1332 },
32063126 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 145 },
3207 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1352 },
3208 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1356 },
3209 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1358 },
3210 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 780 },
3211 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 780 },
3212 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1359 },
3127 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 40, .child_index = 1333 },
3128 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1337 },
3129 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1339 },
3130 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 775 },
3131 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 775 },
3132 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1340 },
32133133 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
3214 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1364 },
3215 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 797 },
3216 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 797 },
3217 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1366 },
3218 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1369 },
3219 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1371 },
3220 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1372 },
3221 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1373 },
3222 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1374 },
3223 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1374 },
3224 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1374 },
3225 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
3226 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
3227 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1375 },
3228 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1376 },
3229 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1377 },
3230 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1378 },
3231 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
3232 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1293 },
3233 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1379 },
3234 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
3235 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1293 },
3236 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1294 },
3237 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1380 },
3238 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1381 },
3239 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1382 },
3240 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 793 },
3134 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1345 },
3135 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 792 },
3136 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 792 },
3137 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1347 },
3138 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1350 },
3139 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1352 },
3140 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1353 },
3141 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1354 },
3142 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1355 },
3143 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1355 },
3144 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1355 },
3145 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
3146 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
3147 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1356 },
3148 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1357 },
3149 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1358 },
3150 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1359 },
3151 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
3152 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1275 },
3153 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1360 },
3154 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
3155 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1275 },
3156 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1276 },
3157 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1361 },
3158 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1362 },
3159 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1363 },
3160 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 788 },
32413161 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3242 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1309 },
3162 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1291 },
32433163 .{ .char = 'x', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3244 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1384 },
3245 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1386 },
3246 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1387 },
3247 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1390 },
3248 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1391 },
3249 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1392 },
3250 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1392 },
3251 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1394 },
3252 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1395 },
3253 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1396 },
3254 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1398 },
3255 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
3256 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1399 },
3257 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1400 },
3258 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1401 },
3259 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1402 },
3260 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1402 },
3261 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1405 },
3262 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1402 },
3263 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1406 },
3264 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1402 },
3265 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1119 },
3266 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1409 },
3267 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1412 },
3268 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1125 },
3269 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1406 },
3270 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3271 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1413 },
3272 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1136 },
3273 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3274 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1130 },
3275 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1414 },
3276 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3277 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3278 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1091 },
3279 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1415 },
3280 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1415 },
3281 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1396 },
3282 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1396 },
3283 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
3284 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1379 },
3285 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
3286 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1293 },
3287 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3288 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1416 },
3289 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1379 },
3290 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
3291 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1293 },
3292 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3293 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1417 },
3294 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1418 },
3295 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1419 },
3296 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1420 },
3297 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1366 },
3298 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1417 },
3299 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1419 },
3300 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1011 },
3301 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1366 },
3302 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
3303 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1422 },
3304 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1396 },
3305 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1423 },
3306 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
3307 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1424 },
3308 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1369 },
3309 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1425 },
3310 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1369 },
3311 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1427 },
3312 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1429 },
3164 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1365 },
3165 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1367 },
3166 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1368 },
3167 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1371 },
3168 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1372 },
3169 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1373 },
3170 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1373 },
3171 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1375 },
3172 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1376 },
3173 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1377 },
3174 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1379 },
3175 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
3176 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1380 },
3177 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1381 },
3178 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1382 },
3179 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1383 },
3180 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1383 },
3181 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1386 },
3182 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1383 },
3183 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1387 },
3184 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1383 },
3185 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1106 },
3186 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1390 },
3187 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1393 },
3188 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1112 },
3189 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 1387 },
3190 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3191 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1394 },
3192 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1123 },
3193 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3194 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1117 },
3195 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1395 },
3196 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3197 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
3198 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1078 },
3199 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1396 },
3200 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1396 },
3201 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1377 },
3202 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1377 },
3203 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
3204 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1360 },
3205 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
3206 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1275 },
3207 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
3208 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1397 },
3209 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1360 },
3210 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
3211 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1275 },
3212 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3213 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1398 },
3214 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1399 },
3215 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1400 },
3216 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1401 },
3217 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1347 },
3218 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1398 },
3219 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1400 },
3220 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 999 },
3221 .{ .char = '8', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1347 },
3222 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
3223 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1403 },
3224 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1377 },
3225 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1404 },
3226 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
3227 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1405 },
3228 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1350 },
3229 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1406 },
3230 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1350 },
3231 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1408 },
3232 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1410 },
33133233 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3314 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1431 },
3315 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 1432 },
3316 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1435 },
3317 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1070 },
3318 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1309 },
3319 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1436 },
3320 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1437 },
3321 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1438 },
3322 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1440 },
3323 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1441 },
3324 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1447 },
3325 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1448 },
3326 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1449 },
3327 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1450 },
3328 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 978 },
3329 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1451 },
3330 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1451 },
3331 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1091 },
3332 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1091 },
3333 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1091 },
3334 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1091 },
3335 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1091 },
3336 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1078 },
3337 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1079 },
3338 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1081 },
3339 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1078 },
3340 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1453 },
3341 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1454 },
3342 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1455 },
3343 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1456 },
3344 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1457 },
3345 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1461 },
3346 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1463 },
3347 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1464 },
3348 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1225 },
3349 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1465 },
3350 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1466 },
3351 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1225 },
3352 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 47, .child_index = 1469 },
3353 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1470 },
3354 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1471 },
3355 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1472 },
3356 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1473 },
3357 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1471 },
3358 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1474 },
3359 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 54, .child_index = 1475 },
3360 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1478 },
3361 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1208 },
3362 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1208 },
3363 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1481 },
3364 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1225 },
3365 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1482 },
3366 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1483 },
3367 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1484 },
3368 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1485 },
3369 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1486 },
3370 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1487 },
3371 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 57, .child_index = 1488 },
3372 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1492 },
3373 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1495 },
3374 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1497 },
3375 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 657 },
3376 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1498 },
3377 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1499 },
3378 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1501 },
3379 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1502 },
3380 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1503 },
3234 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1412 },
3235 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 32, .child_index = 1413 },
3236 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1416 },
3237 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1057 },
3238 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1291 },
3239 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1417 },
3240 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1418 },
3241 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1419 },
3242 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1421 },
3243 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1422 },
3244 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1428 },
3245 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1429 },
3246 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1430 },
3247 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1431 },
3248 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 969 },
3249 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1432 },
3250 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1432 },
3251 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 1078 },
3252 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1078 },
3253 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1065 },
3254 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1066 },
3255 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1068 },
3256 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1065 },
3257 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1434 },
3258 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1435 },
3259 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1436 },
3260 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1437 },
3261 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1438 },
3262 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1442 },
3263 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1444 },
3264 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1445 },
3265 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1209 },
3266 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1446 },
3267 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1447 },
3268 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1209 },
3269 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 45, .child_index = 1450 },
3270 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1451 },
3271 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1452 },
3272 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1453 },
3273 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1454 },
3274 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1452 },
3275 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1455 },
3276 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 54, .child_index = 1456 },
3277 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1459 },
3278 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1192 },
3279 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1192 },
3280 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1462 },
3281 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1209 },
3282 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1463 },
3283 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1464 },
3284 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1465 },
3285 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1466 },
3286 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1467 },
3287 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1468 },
3288 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 44, .child_index = 1469 },
3289 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1472 },
3290 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1475 },
3291 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1477 },
3292 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 655 },
3293 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1478 },
3294 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1479 },
3295 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1481 },
3296 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1482 },
3297 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1483 },
33813298 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
33823299 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
33833300 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3384 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 806 },
3301 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 801 },
33853302 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3386 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1504 },
3387 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1505 },
3388 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1505 },
3389 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1507 },
3390 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 1508 },
3391 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1510 },
3392 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1514 },
3393 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1517 },
3394 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1518 },
3395 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1521 },
3396 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1522 },
3397 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1523 },
3303 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1484 },
3304 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1485 },
3305 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1485 },
3306 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1487 },
3307 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 34, .child_index = 1488 },
3308 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1490 },
3309 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1494 },
3310 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 1497 },
3311 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1500 },
3312 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1501 },
3313 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1502 },
33983314 .{ .char = 'm', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3399 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1063 },
3400 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1063 },
3401 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 1063 },
3402 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1063 },
3315 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
3316 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
3317 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
3318 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
34033319 .{ .char = 'b', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3404 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 19, .child_index = 1524 },
3320 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 10, .child_index = 1503 },
34053321 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
34063322 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3407 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1528 },
3408 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1532 },
3409 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1533 },
3410 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1534 },
3411 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 925 },
3412 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1535 },
3413 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1536 },
3414 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1537 },
3415 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1538 },
3416 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1539 },
3417 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1540 },
3418 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 793 },
3419 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1541 },
3420 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 793 },
3421 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1542 },
3422 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1543 },
3323 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1506 },
3324 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1509 },
3325 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1510 },
3326 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1511 },
3327 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 917 },
3328 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1512 },
3329 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1513 },
3330 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1514 },
3331 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1515 },
3332 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1516 },
3333 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 788 },
3334 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1517 },
3335 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 788 },
3336 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1518 },
3337 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1519 },
34233338 .{ .char = 'n', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3424 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1544 },
3425 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1343 },
3339 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1520 },
3340 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1324 },
34263341 .{ .char = 'c', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3427 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1545 },
3342 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1521 },
34283343 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3429 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 545 },
3344 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 543 },
34303345 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 184 },
3431 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1546 },
3432 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1547 },
3346 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1522 },
3347 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1523 },
34333348 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 54 },
3434 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1548 },
3435 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1549 },
3436 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1550 },
3437 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1293 },
3438 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1551 },
3439 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1552 },
3440 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1379 },
3441 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1553 },
3442 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
3443 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1302 },
3444 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1554 },
3445 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1555 },
3446 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
3447 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
3448 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
3349 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1524 },
3350 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1525 },
3351 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1526 },
3352 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1275 },
3353 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1527 },
3354 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1528 },
3355 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1360 },
3356 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1529 },
3357 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
3358 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1284 },
3359 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1530 },
3360 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1531 },
3361 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
3362 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
3363 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
34493364 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
34503365 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3451 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1556 },
3452 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1557 },
3453 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1028 },
3454 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1029 },
3455 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1029 },
3456 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1031 },
3457 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1558 },
3458 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1559 },
3459 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1560 },
3460 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1561 },
3461 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1562 },
3462 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1563 },
3463 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1564 },
3464 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1565 },
3465 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
3466 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1567 },
3467 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1569 },
3468 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1570 },
3469 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
3470 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1567 },
3471 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1571 },
3472 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1573 },
3473 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1574 },
3474 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1085 },
3475 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1576 },
3476 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1578 },
3477 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1581 },
3478 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1011 },
3479 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1584 },
3480 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1585 },
3366 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1532 },
3367 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1533 },
3368 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
3369 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1017 },
3370 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1017 },
3371 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1019 },
3372 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1534 },
3373 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1535 },
3374 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1536 },
3375 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1537 },
3376 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1538 },
3377 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1539 },
3378 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1540 },
3379 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1541 },
3380 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3381 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1543 },
3382 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1545 },
3383 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1546 },
3384 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3385 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1543 },
3386 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1547 },
3387 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1549 },
3388 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1072 },
3389 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1551 },
3390 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1553 },
3391 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1556 },
3392 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 999 },
3393 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1559 },
3394 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1560 },
34813395 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3482 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1586 },
3396 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1561 },
34833397 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3484 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1587 },
3485 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1589 },
3486 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1590 },
3487 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1589 },
3488 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1587 },
3489 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1591 },
3490 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1594 },
3491 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1595 },
3492 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1597 },
3493 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1599 },
3494 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1601 },
3495 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1602 },
3496 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1603 },
3497 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1606 },
3498 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1438 },
3499 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1609 },
3500 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1610 },
3501 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1610 },
3502 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1612 },
3503 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1063 },
3504 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1613 },
3505 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1613 },
3506 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
3507 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
3508 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
3509 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
3510 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
3511 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1614 },
3512 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1618 },
3513 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1619 },
3514 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1016 },
3515 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
3516 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1622 },
3517 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1623 },
3518 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1624 },
3519 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1625 },
3520 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1103 },
3521 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1626 },
3522 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1627 },
3523 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1628 },
3524 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1136 },
3525 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1629 },
3526 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3527 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1396 },
3528 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1630 },
3529 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
3530 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1134 },
3531 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1631 },
3532 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
3533 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1293 },
3534 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1058 },
3535 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1632 },
3536 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1379 },
3537 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1058 },
3538 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
3539 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1636 },
3540 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1413 },
3541 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3542 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1637 },
3543 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1638 },
3544 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1639 },
3545 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1630 },
3546 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1637 },
3547 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1640 },
3548 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1639 },
3549 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1402 },
3550 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1402 },
3551 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1402 },
3552 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1402 },
3553 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1136 },
3554 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1641 },
3555 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1091 },
3556 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1642 },
3557 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1645 },
3558 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
3559 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1647 },
3560 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
3561 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
3562 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1648 },
3563 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1649 },
3564 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
3565 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1650 },
3566 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1650 },
3567 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1026 },
3568 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
3569 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1651 },
3570 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1652 },
3571 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1653 },
3572 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 1654 },
3573 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1603 },
3574 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1655 },
3575 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1658 },
3576 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1659 },
3577 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1660 },
3578 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1603 },
3579 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 776 },
3580 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1661 },
3581 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1663 },
3582 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1663 },
3583 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1664 },
3584 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1663 },
3585 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1668 },
3586 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1663 },
3587 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1672 },
3588 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1673 },
3398 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1562 },
3399 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1564 },
3400 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1565 },
3401 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1564 },
3402 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1562 },
3403 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 13, .child_index = 1566 },
3404 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1569 },
3405 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1570 },
3406 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 1572 },
3407 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1574 },
3408 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1576 },
3409 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1577 },
3410 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1578 },
3411 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1581 },
3412 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1419 },
3413 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1584 },
3414 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1585 },
3415 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1585 },
3416 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1587 },
3417 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1050 },
3418 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1588 },
3419 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1588 },
3420 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
3421 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
3422 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
3423 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
3424 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3425 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1589 },
3426 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1593 },
3427 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1594 },
3428 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1004 },
3429 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1595 },
3430 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1597 },
3431 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1598 },
3432 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1599 },
3433 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1600 },
3434 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1090 },
3435 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1601 },
3436 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1602 },
3437 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1603 },
3438 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1123 },
3439 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1604 },
3440 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3441 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1377 },
3442 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1605 },
3443 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
3444 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1121 },
3445 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1606 },
3446 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
3447 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1275 },
3448 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1045 },
3449 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1607 },
3450 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1360 },
3451 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1045 },
3452 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
3453 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1611 },
3454 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1394 },
3455 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3456 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1612 },
3457 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1613 },
3458 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1614 },
3459 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1605 },
3460 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1612 },
3461 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1615 },
3462 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1614 },
3463 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1383 },
3464 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1383 },
3465 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1383 },
3466 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1383 },
3467 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1123 },
3468 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1616 },
3469 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1078 },
3470 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1617 },
3471 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
3472 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
3473 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1622 },
3474 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
3475 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
3476 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1623 },
3477 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1624 },
3478 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
3479 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1625 },
3480 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1625 },
3481 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1014 },
3482 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
3483 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1626 },
3484 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1627 },
3485 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1628 },
3486 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 1629 },
3487 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1578 },
3488 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1630 },
3489 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1633 },
3490 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1634 },
3491 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1635 },
3492 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1578 },
3493 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 771 },
3494 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1636 },
3495 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1638 },
3496 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1638 },
3497 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1639 },
3498 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1638 },
3499 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1643 },
3500 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1638 },
3501 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1647 },
3502 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1648 },
35893503 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 153 },
3590 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1675 },
3591 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1676 },
3592 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1677 },
3593 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1678 },
3594 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1679 },
3595 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1680 },
3596 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1682 },
3597 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1683 },
3504 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1650 },
3505 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1651 },
3506 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1652 },
3507 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1653 },
3508 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1654 },
3509 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1655 },
3510 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1657 },
3511 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1658 },
35983512 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
35993513 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
36003514 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3601 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1684 },
3602 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1685 },
3603 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1686 },
3604 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1687 },
3605 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1688 },
3606 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1689 },
3607 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1689 },
3608 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1691 },
3609 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 47, .child_index = 1692 },
3610 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1700 },
3611 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1702 },
3612 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1704 },
3515 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1659 },
3516 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1660 },
3517 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1661 },
3518 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1662 },
3519 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1663 },
3520 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1664 },
3521 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1664 },
3522 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1666 },
3523 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 45, .child_index = 1667 },
3524 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 14, .child_index = 1675 },
3525 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1677 },
3526 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1679 },
36133527 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 144 },
3614 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1463 },
3615 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1706 },
3616 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1707 },
3617 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1708 },
3618 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1709 },
3619 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1710 },
3620 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1709 },
3621 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1473 },
3622 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1711 },
3623 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3624 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1712 },
3625 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1713 },
3626 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1501 },
3627 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1714 },
3628 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1201 },
3629 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 1715 },
3630 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 15, .child_index = 1717 },
3631 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 28, .child_index = 1720 },
3632 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1724 },
3633 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1725 },
3634 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1728 },
3635 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1711 },
3636 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1731 },
3637 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1732 },
3638 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1271 },
3639 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1733 },
3640 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1734 },
3641 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1507 },
3642 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1735 },
3643 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1738 },
3644 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1739 },
3645 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1740 },
3646 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1740 },
3647 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1741 },
3648 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1742 },
3649 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1743 },
3650 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1746 },
3651 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1028 },
3652 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1749 },
3653 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1752 },
3654 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1754 },
3655 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1028 },
3528 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1444 },
3529 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1681 },
3530 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 24, .child_index = 1682 },
3531 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1683 },
3532 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1684 },
3533 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1685 },
3534 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1684 },
3535 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1454 },
3536 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1686 },
3537 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3538 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1687 },
3539 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1688 },
3540 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1481 },
3541 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1689 },
3542 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 1690 },
3543 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1692 },
3544 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1695 },
3545 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1699 },
3546 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1700 },
3547 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1703 },
3548 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1686 },
3549 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1706 },
3550 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1707 },
3551 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1254 },
3552 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1708 },
3553 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1709 },
3554 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1487 },
3555 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1710 },
3556 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1713 },
3557 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1714 },
3558 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1715 },
3559 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1715 },
3560 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1716 },
3561 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 1717 },
3562 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1718 },
3563 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1721 },
3564 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
3565 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1724 },
3566 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1727 },
3567 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1729 },
3568 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
36563569 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
3657 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1755 },
3658 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1757 },
3659 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1759 },
3660 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1761 },
3661 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1763 },
3662 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1765 },
3663 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1766 },
3664 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3665 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3666 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1767 },
3667 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3668 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3669 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3670 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1767 },
3671 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3672 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1770 },
3673 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 925 },
3674 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1771 },
3675 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 925 },
3676 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 978 },
3677 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1772 },
3678 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1773 },
3679 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1774 },
3680 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1775 },
3681 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1776 },
3682 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1777 },
3683 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1778 },
3684 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1779 },
3685 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
3570 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1730 },
3571 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1732 },
3572 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1734 },
3573 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1736 },
3574 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1738 },
3575 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1739 },
3576 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
3577 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
3578 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3579 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
3580 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
3581 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3582 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1740 },
3583 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 917 },
3584 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1741 },
3585 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 917 },
3586 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 969 },
3587 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1742 },
3588 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1743 },
3589 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1744 },
3590 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1745 },
3591 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1746 },
3592 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1747 },
3593 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1748 },
3594 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 983 },
36863595 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 187 },
3687 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1780 },
3688 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1781 },
3689 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1782 },
3690 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1783 },
3691 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1784 },
3692 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1785 },
3693 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1786 },
3694 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1545 },
3596 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1749 },
3597 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1750 },
3598 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1751 },
3599 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1752 },
3600 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1753 },
3601 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1754 },
3602 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1755 },
3603 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1521 },
36953604 .{ .char = 'y', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3696 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1025 },
3697 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1787 },
3698 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1788 },
3699 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1792 },
3700 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1793 },
3701 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1794 },
3702 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1798 },
3703 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1799 },
3704 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1800 },
3705 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1803 },
3706 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
3707 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
3708 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1566 },
3709 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1806 },
3710 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1793 },
3711 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1793 },
3712 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1808 },
3713 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1810 },
3605 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1013 },
3606 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1756 },
3607 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 36, .child_index = 1757 },
3608 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1761 },
3609 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1762 },
3610 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1763 },
3611 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1767 },
3612 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1768 },
3613 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1769 },
3614 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 1772 },
3615 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3616 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3617 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1542 },
3618 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1775 },
3619 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1762 },
3620 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1762 },
3621 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1777 },
37143622 .{ .char = 'i', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3715 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1096 },
3716 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1001 },
3623 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1083 },
3624 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 991 },
37173625 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3718 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1564 },
3719 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
3720 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1567 },
3721 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1569 },
3722 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
3723 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1567 },
3724 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1811 },
3725 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1663 },
3726 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1812 },
3727 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
3728 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
3729 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
3730 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1813 },
3731 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1609 },
3732 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1814 },
3733 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1814 },
3734 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1816 },
3735 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1603 },
3736 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1655 },
3737 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1818 },
3738 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1818 },
3739 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1819 },
3740 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1822 },
3741 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1819 },
3742 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1822 },
3743 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
3744 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
3745 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
3746 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1650 },
3747 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1650 },
3748 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1650 },
3749 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1823 },
3750 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1824 },
3751 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1825 },
3752 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1300 },
3753 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 797 },
3754 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1589 },
3755 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1589 },
3756 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1589 },
3757 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1589 },
3758 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1555 },
3759 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1826 },
3760 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1341 },
3626 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1540 },
3627 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3628 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1543 },
3629 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1545 },
3630 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3631 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1543 },
3632 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1779 },
3633 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1638 },
3634 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1780 },
3635 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
3636 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3637 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3638 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1781 },
3639 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1584 },
3640 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1782 },
3641 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1782 },
3642 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 1784 },
3643 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1578 },
3644 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1630 },
3645 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1786 },
3646 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1786 },
3647 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 1787 },
3648 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1790 },
3649 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1787 },
3650 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1790 },
3651 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
3652 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
3653 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3654 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1625 },
3655 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1625 },
3656 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1625 },
3657 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1791 },
3658 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1792 },
3659 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1793 },
3660 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1282 },
3661 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 792 },
3662 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1564 },
3663 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1564 },
3664 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1564 },
3665 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1564 },
3666 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1531 },
3667 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1794 },
3668 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1322 },
37613669 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 54 },
3762 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1819 },
3763 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1827 },
3764 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1828 },
3670 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1787 },
3671 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1795 },
3672 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1796 },
37653673 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
37663674 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 96 },
3767 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1829 },
3768 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1829 },
3769 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3770 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
3771 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1831 },
3772 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1109 },
3773 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1833 },
3774 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1833 },
3775 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1109 },
3776 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1834 },
3777 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1835 },
3778 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1836 },
3779 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1837 },
3780 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1838 },
3781 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1839 },
3782 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1840 },
3783 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1841 },
3784 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1842 },
3785 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
3786 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
3787 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
3788 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1843 },
3789 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
3790 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1845 },
3791 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1846 },
3792 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1846 },
3793 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1847 },
3794 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 1848 },
3795 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1026 },
3796 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1026 },
3797 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
3798 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1850 },
3675 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1797 },
3676 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1797 },
3677 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3678 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
3679 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1799 },
3680 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1096 },
3681 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1801 },
3682 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1801 },
3683 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1096 },
3684 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1802 },
3685 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1803 },
3686 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1804 },
3687 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1805 },
3688 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1806 },
3689 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1807 },
3690 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1808 },
3691 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1809 },
3692 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1810 },
3693 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
3694 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
3695 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
3696 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1811 },
3697 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
3698 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1813 },
3699 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1814 },
3700 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1814 },
3701 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1815 },
3702 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 1816 },
3703 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1014 },
3704 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1014 },
3705 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
3706 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1818 },
37993707 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3800 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1179 },
3801 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1852 },
3802 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1852 },
3803 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3804 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1853 },
3805 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1663 },
3806 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1663 },
3807 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1663 },
3808 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1854 },
3809 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1855 },
3810 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1855 },
3811 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1855 },
3708 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1166 },
3709 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1820 },
3710 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1820 },
3711 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3712 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1821 },
3713 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1638 },
3714 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1638 },
3715 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1638 },
3716 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1822 },
3717 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1823 },
3718 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1823 },
3719 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1823 },
38123720 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 132 },
38133721 .{ .char = '1', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
38143722 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
38153723 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 192 },
3816 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1856 },
3817 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1857 },
3818 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1858 },
3819 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3820 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1859 },
3821 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1860 },
3822 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
3823 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1861 },
3824 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1862 },
3825 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1864 },
3826 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1865 },
3827 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1866 },
3828 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1225 },
3829 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1859 },
3830 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1860 },
3831 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1867 },
3832 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1868 },
3833 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
3834 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1868 },
3835 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1869 },
3836 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 11, .child_index = 1871 },
3837 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
3838 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1873 },
3839 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
3840 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1869 },
3841 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1876 },
3842 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1877 },
3843 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1879 },
3844 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1880 },
3845 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1879 },
3846 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1883 },
3847 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1886 },
3848 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1891 },
3849 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1895 },
3850 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1897 },
3851 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
3852 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1899 },
3853 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1900 },
3854 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1715 },
3855 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1901 },
3856 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1902 },
3857 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1903 },
3858 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1903 },
3859 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 1903 },
3860 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1905 },
3861 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1906 },
3862 .{ .char = 's', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 1905 },
3863 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1907 },
3864 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1908 },
3865 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1909 },
3866 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1909 },
3867 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1909 },
3868 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1910 },
3869 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1910 },
3870 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1910 },
3871 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
3872 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 925 },
3873 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1911 },
3874 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1912 },
3875 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1201 },
3876 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1913 },
3877 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 776 },
3878 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1916 },
3879 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1917 },
3880 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1918 },
3881 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1922 },
3882 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1923 },
3883 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 793 },
3884 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1191 },
3885 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1924 },
3724 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1824 },
3725 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1825 },
3726 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1826 },
3727 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3728 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1827 },
3729 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1828 },
3730 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3731 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1829 },
3732 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1830 },
3733 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1832 },
3734 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1833 },
3735 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1834 },
3736 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1209 },
3737 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1827 },
3738 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1828 },
3739 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1835 },
3740 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1836 },
3741 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3742 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1836 },
3743 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1837 },
3744 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1839 },
3745 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3746 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1841 },
3747 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3748 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1837 },
3749 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1844 },
3750 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1845 },
3751 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1847 },
3752 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1848 },
3753 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1847 },
3754 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1851 },
3755 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1854 },
3756 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1859 },
3757 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1863 },
3758 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1865 },
3759 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3760 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1867 },
3761 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1868 },
3762 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 11, .child_index = 1690 },
3763 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 1869 },
3764 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1870 },
3765 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1871 },
3766 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1871 },
3767 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1871 },
3768 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1872 },
3769 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1872 },
3770 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1872 },
3771 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1873 },
3772 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1874 },
3773 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1875 },
3774 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1875 },
3775 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1875 },
3776 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1876 },
3777 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1876 },
3778 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1876 },
3779 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
3780 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 917 },
3781 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1877 },
3782 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1878 },
3783 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1185 },
3784 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1879 },
3785 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 771 },
3786 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1882 },
3787 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1883 },
3788 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1884 },
3789 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1888 },
3790 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1889 },
3791 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 788 },
3792 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1178 },
3793 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1890 },
38863794 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
38873795 .{ .char = 'q', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
38883796 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3889 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1746 },
3890 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1028 },
3891 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1752 },
3797 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1721 },
3798 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
3799 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1727 },
38923800 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
38933801 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
38943802 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3895 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1663 },
3896 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1663 },
38973803 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
3898 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1925 },
3899 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1757 },
3900 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1761 },
3804 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1891 },
3805 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1730 },
3806 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1734 },
39013807 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
39023808 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
3903 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1927 },
3809 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1893 },
39043810 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
3905 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1928 },
3906 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1930 },
3907 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3908 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3909 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3910 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1931 },
3911 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1932 },
3811 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1894 },
3812 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1896 },
3813 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1897 },
3814 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1898 },
39123815 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 54 },
3913 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3914 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1773 },
3915 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1933 },
3916 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 793 },
3816 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3817 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1743 },
3818 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 788 },
39173819 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
39183820 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 151 },
3919 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1934 },
3920 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1303 },
3921 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1935 },
3922 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1936 },
3923 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1936 },
3924 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1937 },
3925 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1938 },
3926 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1939 },
3927 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1934 },
3928 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1587 },
3929 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1589 },
3930 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1589 },
3931 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1940 },
3932 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3933 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1018 },
3934 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3935 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3936 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
3937 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3938 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1943 },
3939 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1944 },
3940 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
3941 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
3942 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1018 },
3943 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
3944 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1018 },
3945 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1312 },
3946 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
3947 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1018 },
3948 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
3949 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1018 },
3950 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1945 },
3951 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1946 },
3952 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1947 },
3953 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1949 },
3954 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1950 },
3955 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1951 },
3956 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1952 },
3957 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1954 },
3958 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1956 },
3959 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 780 },
3960 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1070 },
3961 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 780 },
3962 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1957 },
3963 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1111 },
3964 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1959 },
3965 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1960 },
3966 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1374 },
3967 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 889 },
3968 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1819 },
3969 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1961 },
3970 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1962 },
3971 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1963 },
3972 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1300 },
3973 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
3974 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1969 },
3975 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1970 },
3976 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1970 },
3977 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1970 },
3978 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1972 },
3979 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 545 },
3980 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1973 },
3981 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1974 },
3982 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1975 },
3983 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1976 },
3984 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1976 },
3985 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1979 },
3986 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1980 },
3987 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1981 },
3988 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1982 },
3989 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1983 },
3990 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1986 },
3991 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 776 },
3992 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1989 },
3993 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1663 },
3994 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1855 },
3995 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1300 },
3996 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1990 },
3997 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1991 },
3998 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1303 },
3999 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1992 },
4000 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1993 },
4001 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1994 },
4002 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1995 },
4003 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1995 },
4004 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1996 },
4005 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1997 },
4006 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1998 },
4007 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1999 },
3821 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1899 },
3822 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
3823 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1900 },
3824 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1901 },
3825 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 1901 },
3826 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1902 },
3827 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1903 },
3828 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1904 },
3829 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1899 },
3830 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1562 },
3831 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1564 },
3832 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1564 },
3833 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 24, .child_index = 1905 },
3834 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3835 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1006 },
3836 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
3837 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
3838 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
3839 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3840 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1908 },
3841 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1909 },
3842 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1004 },
3843 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
3844 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1006 },
3845 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
3846 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1006 },
3847 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1294 },
3848 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
3849 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1006 },
3850 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1004 },
3851 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1006 },
3852 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1910 },
3853 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1911 },
3854 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 1913 },
3855 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1914 },
3856 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1915 },
3857 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 1916 },
3858 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1918 },
3859 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1920 },
3860 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 775 },
3861 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 1057 },
3862 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 775 },
3863 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1921 },
3864 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1098 },
3865 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1923 },
3866 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1924 },
3867 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1355 },
3868 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 883 },
3869 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 1787 },
3870 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1925 },
3871 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1926 },
3872 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1927 },
3873 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1282 },
3874 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3875 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1933 },
3876 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1934 },
3877 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1934 },
3878 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1934 },
3879 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1936 },
3880 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 543 },
3881 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1937 },
3882 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1938 },
3883 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1939 },
3884 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1940 },
3885 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1940 },
3886 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1943 },
3887 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1944 },
3888 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1945 },
3889 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 1946 },
3890 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1947 },
3891 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1950 },
3892 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 771 },
3893 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1953 },
3894 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1638 },
3895 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1823 },
3896 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1282 },
3897 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1954 },
3898 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1955 },
3899 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
3900 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1956 },
3901 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1957 },
3902 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1958 },
3903 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1959 },
3904 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1959 },
3905 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1960 },
3906 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1961 },
3907 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 1962 },
3908 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1963 },
3909 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1964 },
3910 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1965 },
3911 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1966 },
3912 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
3913 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1967 },
3914 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3915 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3916 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3917 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 1971 },
3918 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 991 },
3919 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
3920 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1975 },
3921 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 991 },
3922 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 505 },
3923 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 991 },
3924 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1976 },
3925 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1976 },
3926 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1977 },
3927 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3928 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1837 },
3929 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1542 },
3930 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1841 },
3931 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
3932 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1976 },
3933 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1837 },
3934 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1976 },
3935 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1977 },
3936 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1979 },
3937 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1980 },
3938 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1975 },
3939 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1847 },
3940 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 1981 },
3941 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1986 },
3942 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 1990 },
3943 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 1993 },
3944 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1994 },
3945 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1995 },
3946 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1996 },
3947 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1997 },
3948 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1998 },
3949 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1999 },
40083950 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2000 },
4009 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2001 },
4010 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2002 },
4011 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
4012 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 2003 },
4013 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
4014 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
4015 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
4016 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 2003 },
4017 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1001 },
4018 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
4019 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2007 },
4020 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1001 },
4021 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 507 },
4022 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1001 },
4023 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2008 },
4024 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2008 },
4025 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2009 },
4026 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
4027 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1869 },
4028 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1566 },
4029 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 9, .child_index = 1873 },
4030 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
4031 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2008 },
4032 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1869 },
4033 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2008 },
4034 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2009 },
4035 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2011 },
4036 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2012 },
4037 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2007 },
4038 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1879 },
4039 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 9, .child_index = 2013 },
4040 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2018 },
4041 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 2022 },
4042 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2025 },
4043 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
4044 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2026 },
4045 .{ .char = '3', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 2027 },
4046 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2028 },
4047 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 2029 },
4048 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2030 },
4049 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2031 },
4050 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2032 },
4051 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2033 },
4052 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2034 },
4053 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2035 },
4054 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2035 },
4055 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2035 },
4056 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2038 },
4057 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2039 },
4058 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1379 },
4059 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1058 },
4060 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1293 },
4061 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
4062 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2040 },
4063 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2041 },
4064 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2042 },
3951 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2001 },
3952 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2002 },
3953 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2002 },
3954 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2002 },
3955 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2005 },
3956 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2006 },
3957 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1360 },
3958 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
3959 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1275 },
3960 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3961 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2007 },
3962 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2008 },
3963 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2009 },
40653964 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
40663965 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
40673966 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
4068 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2043 },
4069 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2043 },
4070 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2044 },
4071 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2045 },
4072 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2046 },
4073 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 1091 },
3967 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2010 },
3968 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2010 },
3969 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2011 },
3970 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2012 },
3971 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2013 },
40743972 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4075 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2047 },
4076 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2048 },
4077 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
4078 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2049 },
4079 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2051 },
4080 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
4081 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
4082 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2052 },
4083 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2053 },
4084 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2054 },
4085 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2055 },
4086 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2056 },
4087 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2057 },
4088 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2058 },
4089 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2059 },
4090 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2063 },
4091 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2064 },
4092 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1976 },
4093 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1976 },
4094 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2065 },
4095 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2065 },
4096 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2066 },
4097 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2069 },
4098 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2070 },
4099 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2071 },
4100 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2073 },
4101 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2075 },
4102 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2076 },
4103 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1379 },
4104 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1300 },
4105 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1300 },
4106 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1300 },
4107 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1300 },
4108 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1300 },
4109 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1300 },
4110 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1312 },
4111 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2077 },
4112 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2077 },
4113 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2078 },
4114 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2078 },
4115 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2078 },
4116 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2079 },
4117 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2080 },
4118 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2081 },
4119 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1001 },
4120 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2082 },
4121 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1303 },
4122 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2083 },
4123 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 2084 },
4124 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 2085 },
4125 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2086 },
4126 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2087 },
4127 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2087 },
4128 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2087 },
4129 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2088 },
4130 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2092 },
4131 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2092 },
4132 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2093 },
4133 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2094 },
4134 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1313 },
4135 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2095 },
4136 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2096 },
4137 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2097 },
4138 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2099 },
4139 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2100 },
4140 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2101 },
4141 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
4142 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2001 },
4143 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1311 },
4144 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1018 },
4145 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1312 },
4146 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
4147 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
4148 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2103 },
4149 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2008 },
4150 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2008 },
4151 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2104 },
4152 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2011 },
4153 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2106 },
4154 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1418 },
4155 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2107 },
4156 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2108 },
4157 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1645 },
4158 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2106 },
4159 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2107 },
4160 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1645 },
4161 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1645 },
4162 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2079 },
4163 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2080 },
4164 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2026 },
4165 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2110 },
4166 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2112 },
4167 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2113 },
4168 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2113 },
4169 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 1717 },
4170 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1725 },
4171 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2114 },
4172 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2115 },
4173 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2116 },
4174 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2117 },
4175 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
4176 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1017 },
4177 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2118 },
4178 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2119 },
4179 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2120 },
4180 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2122 },
4181 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2123 },
4182 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2127 },
4183 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1130 },
4184 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2128 },
4185 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2129 },
4186 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2130 },
4187 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
4188 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2131 },
4189 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2132 },
4190 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2133 },
4191 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2134 },
4192 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2135 },
4193 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2136 },
4194 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2137 },
4195 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2138 },
4196 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1303 },
4197 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2139 },
4198 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2140 },
4199 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1587 },
4200 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1589 },
4201 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1589 },
4202 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1587 },
4203 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2141 },
4204 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2143 },
4205 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2145 },
4206 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2070 },
4207 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2146 },
4208 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2148 },
4209 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2148 },
4210 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2149 },
4211 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2092 },
3973 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2014 },
3974 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2015 },
3975 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
3976 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2016 },
3977 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2018 },
3978 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
3979 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
3980 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2019 },
3981 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2020 },
3982 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2021 },
3983 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2022 },
3984 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2023 },
3985 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2024 },
3986 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2025 },
3987 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2029 },
3988 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2030 },
3989 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1940 },
3990 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1940 },
3991 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2031 },
3992 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2031 },
3993 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 2032 },
3994 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2035 },
3995 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2036 },
3996 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2037 },
3997 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2039 },
3998 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2041 },
3999 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2042 },
4000 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1360 },
4001 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1282 },
4002 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1282 },
4003 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1282 },
4004 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1282 },
4005 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1282 },
4006 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1282 },
4007 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1294 },
4008 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2043 },
4009 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2043 },
4010 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2044 },
4011 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2044 },
4012 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2044 },
4013 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2045 },
4014 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2046 },
4015 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2047 },
4016 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 991 },
4017 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2048 },
4018 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
4019 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2049 },
4020 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 2050 },
4021 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 5, .child_index = 2051 },
4022 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2052 },
4023 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2053 },
4024 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2053 },
4025 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2053 },
4026 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2054 },
4027 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2058 },
4028 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2058 },
4029 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2059 },
4030 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2060 },
4031 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1295 },
4032 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2061 },
4033 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2062 },
4034 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2063 },
4035 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2065 },
4036 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2066 },
4037 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2067 },
4038 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
4039 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1965 },
4040 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1005 },
4041 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1006 },
4042 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1294 },
4043 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
4044 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1293 },
4045 .{ .char = '5', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1006 },
4046 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1294 },
4047 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
4048 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
4049 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2069 },
4050 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1976 },
4051 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1976 },
4052 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2070 },
4053 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1979 },
4054 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2072 },
4055 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1399 },
4056 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2073 },
4057 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2074 },
4058 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
4059 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2072 },
4060 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2073 },
4061 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 1620 },
4062 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1620 },
4063 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2045 },
4064 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2046 },
4065 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1994 },
4066 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2076 },
4067 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2078 },
4068 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2079 },
4069 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 2080 },
4070 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1700 },
4071 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2083 },
4072 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2084 },
4073 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2085 },
4074 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2086 },
4075 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1004 },
4076 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1005 },
4077 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2087 },
4078 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2088 },
4079 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2089 },
4080 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2091 },
4081 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2092 },
4082 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2096 },
4083 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1117 },
4084 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2097 },
4085 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2098 },
4086 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2099 },
4087 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
4088 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2100 },
4089 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2101 },
4090 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2102 },
4091 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2103 },
4092 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2104 },
4093 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2105 },
4094 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2106 },
4095 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
4096 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2107 },
4097 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2108 },
4098 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1562 },
4099 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1564 },
4100 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1564 },
4101 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1562 },
4102 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2109 },
4103 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2111 },
4104 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2113 },
4105 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2036 },
4106 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2114 },
4107 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2116 },
4108 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2116 },
4109 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2117 },
4110 .{ .char = '4', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 2058 },
42124111 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4213 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2151 },
4112 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2119 },
42144113 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4215 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2152 },
4216 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2153 },
4217 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2154 },
4218 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2155 },
4219 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2156 },
4220 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2157 },
4221 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2158 },
4222 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2159 },
4223 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2160 },
4224 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2160 },
4225 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2160 },
4226 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2160 },
4227 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2161 },
4228 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2069 },
4229 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2070 },
4230 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2146 },
4231 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2146 },
4232 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1394 },
4233 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1993 },
4234 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2164 },
4235 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2165 },
4236 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
4237 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1483 },
4238 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2167 },
4239 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2168 },
4240 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2170 },
4241 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 734 },
4242 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2171 },
4243 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2035 },
4114 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2120 },
4115 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2121 },
4116 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2122 },
4117 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2123 },
4118 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2124 },
4119 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2125 },
4120 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2126 },
4121 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2127 },
4122 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2128 },
4123 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2128 },
4124 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2128 },
4125 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2128 },
4126 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2129 },
4127 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2035 },
4128 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2036 },
4129 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 2114 },
4130 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 2114 },
4131 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1375 },
4132 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1957 },
4133 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2132 },
4134 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2133 },
4135 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
4136 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1464 },
4137 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2135 },
4138 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 2136 },
4139 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2138 },
4140 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 730 },
4141 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2139 },
4142 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2002 },
42444143 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 54 },
4245 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
4246 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2172 },
4247 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2174 },
4248 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
4249 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2149 },
4250 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2175 },
4251 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2176 },
4252 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2028 },
4253 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2177 },
4254 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2032 },
4255 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2178 },
4256 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2179 },
4257 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2180 },
4258 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2181 },
4259 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2182 },
4260 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2183 },
4261 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2183 },
4262 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2184 },
4263 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
4264 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1833 },
4265 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2186 },
4266 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1149 },
4267 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1191 },
4268 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2188 },
4269 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2189 },
4270 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2190 },
4271 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2191 },
4272 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2192 },
4273 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2193 },
4274 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2194 },
4275 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2195 },
4276 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2196 },
4277 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2171 },
4278 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
4279 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1303 },
4280 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1303 },
4281 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2197 },
4282 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
4283 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2198 },
4284 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
4285 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2175 },
4286 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2149 },
4287 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2149 },
4288 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2149 },
4144 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
4145 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2140 },
4146 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2142 },
4147 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
4148 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2117 },
4149 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2143 },
4150 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2144 },
4151 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1995 },
4152 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2145 },
4153 .{ .char = 'd', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 2146 },
4154 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 5, .child_index = 2146 },
4155 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 5, .child_index = 2146 },
4156 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1999 },
4157 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2148 },
4158 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2149 },
4159 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2150 },
4160 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2151 },
4161 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2152 },
4162 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2153 },
4163 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2153 },
4164 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2154 },
4165 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
4166 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1801 },
4167 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 2156 },
4168 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1136 },
4169 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1178 },
4170 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2158 },
4171 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2159 },
4172 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2160 },
4173 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2161 },
4174 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2162 },
4175 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2163 },
4176 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2164 },
4177 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2165 },
4178 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2166 },
4179 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2139 },
4180 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
4181 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1285 },
4182 .{ .char = '4', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2167 },
4183 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
4184 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2168 },
4185 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
4186 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2143 },
4187 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2117 },
4188 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2117 },
4189 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2117 },
42894190 .{ .char = 'f', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
42904191 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4291 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1392 },
4292 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
4293 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2199 },
4294 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1026 },
4295 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2200 },
4296 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2065 },
4297 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2065 },
4298 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2065 },
4299 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1659 },
4300 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2201 },
4301 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1016 },
4302 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1017 },
4303 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1557 },
4304 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
4305 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
4306 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1663 },
4307 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1483 },
4308 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1868 },
4309 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1868 },
4310 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2202 },
4311 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
4312 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 810 },
4313 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
4314 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 810 },
4315 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2203 },
4316 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2204 },
4317 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2205 },
4318 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2206 },
4319 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2207 },
4320 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2209 },
4321 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1001 },
4322 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2212 },
4323 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1663 },
4324 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2213 },
4325 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1111 },
4326 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
4327 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1093 },
4328 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2215 },
4329 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
4330 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2216 },
4331 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1625 },
4332 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2217 },
4333 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2217 },
4334 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2218 },
4335 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2059 },
4336 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1663 },
4337 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2219 },
4338 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2221 },
4339 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 734 },
4340 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2223 },
4341 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2224 },
4342 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1396 },
4343 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2227 },
4344 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2228 },
4345 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2229 },
4346 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2230 },
4347 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2231 },
4348 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2034 },
4349 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2232 },
4350 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2107 },
4351 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2233 },
4352 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1755 },
4353 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1394 },
4354 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1394 },
4355 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1629 },
4356 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2087 },
4357 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2048 },
4358 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2234 },
4359 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1017 },
4360 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1557 },
4361 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1017 },
4362 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1018 },
4363 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2235 },
4364 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1000 },
4365 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1093 },
4366 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1000 },
4367 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2236 },
4368 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2237 },
4369 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 2238 },
4370 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2240 },
4371 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2241 },
4372 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2174 },
4373 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2174 },
4374 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1300 },
4375 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2242 },
4192 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1373 },
4193 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
4194 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2169 },
4195 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1014 },
4196 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2170 },
4197 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2031 },
4198 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2031 },
4199 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2031 },
4200 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1634 },
4201 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2171 },
4202 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1004 },
4203 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1005 },
4204 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1533 },
4205 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
4206 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
4207 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1638 },
4208 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1464 },
4209 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 1836 },
4210 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 1836 },
4211 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2172 },
4212 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
4213 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 805 },
4214 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
4215 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 805 },
4216 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2173 },
4217 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2174 },
4218 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2175 },
4219 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1045 },
4220 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1994 },
4221 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2176 },
4222 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2177 },
4223 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2179 },
4224 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 991 },
4225 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2182 },
4226 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1638 },
4227 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 2183 },
4228 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1098 },
4229 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
4230 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1080 },
4231 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2185 },
4232 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
4233 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2186 },
4234 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1600 },
4235 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2187 },
4236 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2187 },
4237 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2188 },
4238 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 2025 },
4239 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1638 },
4240 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2189 },
4241 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2191 },
4242 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 730 },
4243 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2193 },
4244 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 2194 },
4245 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 1377 },
4246 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2197 },
4247 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2198 },
4248 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2199 },
4249 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2200 },
4250 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 2201 },
4251 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2001 },
4252 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2202 },
4253 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 2073 },
4254 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2203 },
4255 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 2204 },
4256 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1375 },
4257 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1375 },
4258 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1604 },
4259 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2053 },
4260 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2015 },
4261 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2206 },
4262 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1005 },
4263 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1533 },
4264 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 1005 },
4265 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1006 },
4266 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2207 },
4267 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 990 },
4268 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1080 },
4269 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 990 },
4270 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2208 },
4271 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2209 },
4272 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 2210 },
4273 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2212 },
4274 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2213 },
4275 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2142 },
4276 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2142 },
4277 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 1638 },
4278 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 1638 },
4279 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 1282 },
4280 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2214 },
43764281 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4377 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2243 },
4282 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2215 },
43784283 .{ .char = '3', .end_of_word = true, .end_of_list = false, .number = 1, .child_index = 0 },
43794284 .{ .char = 'z', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
43804285 .{ .char = '3', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
4381 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2244 },
4382 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2245 },
4383 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2246 },
4384 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2034 },
4385 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2247 },
4386 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2248 },
4387 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2249 },
4388 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2250 },
4389 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 993 },
4390 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2251 },
4391 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2252 },
4286 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2216 },
4287 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2217 },
4288 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2218 },
4289 .{ .char = 'q', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 2001 },
4290 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2219 },
4291 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2220 },
4292 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 2221 },
4293 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2222 },
4294 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 983 },
4295 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 2223 },
4296 .{ .char = 'k', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 2224 },
43924297 .{ .char = '3', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
43934298};
43944299pub const data = blk: {
4395 @setEvalBranchQuota(17811);
4300 @setEvalBranchQuota(17208);
43964301 break :blk [_]Properties{
43974302 .{ .param_str = "v*", .header = .intrin, .language = .all_ms_languages },
43984303 .{ .param_str = "UcUNi*UNi", .header = .intrin, .language = .all_ms_languages },
......@@ -4411,56 +4316,56 @@ pub const data = blk: {
44114316 .{ .param_str = "vv*Si", .features = "raoint" },
44124317 .{ .param_str = "vv*Si", .features = "raoint" },
44134318 .{ .param_str = "UcUcUiUiUi*", .attributes = .{ .const_evaluable = true } },
4414 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4415 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
4416 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4319 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4320 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
4321 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
44174322 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
44184323 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
44194324 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4420 .{ .param_str = "V2dV2dV2d", .features = "sse3", .attributes = .{ .@"const" = true } },
4421 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
4422 .{ .param_str = "V4fV4fV4f", .features = "sse3", .attributes = .{ .@"const" = true } },
4423 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
4325 .{ .param_str = "V2dV2dV2d", .features = "sse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4326 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4327 .{ .param_str = "V4fV4fV4f", .features = "sse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4328 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
44244329 .{ .param_str = "V2OiV2OiV2Oi", .features = "aes", .attributes = .{ .@"const" = true } },
44254330 .{ .param_str = "UcV2Oi*V2OivC*", .features = "kl" },
44264331 .{ .param_str = "V4OiV4OiV4Oi", .features = "vaes", .attributes = .{ .@"const" = true } },
44274332 .{ .param_str = "UcV2Oi*V2OivC*", .features = "kl" },
4428 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512,vaes", .attributes = .{ .@"const" = true } },
4333 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,vaes", .attributes = .{ .@"const" = true } },
44294334 .{ .param_str = "V2OiV2OiV2Oi", .features = "aes", .attributes = .{ .@"const" = true } },
44304335 .{ .param_str = "V4OiV4OiV4Oi", .features = "vaes", .attributes = .{ .@"const" = true } },
4431 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512,vaes", .attributes = .{ .@"const" = true } },
4336 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,vaes", .attributes = .{ .@"const" = true } },
44324337 .{ .param_str = "UcV2Oi*V2OiC*vC*", .features = "kl,widekl" },
44334338 .{ .param_str = "UcV2Oi*V2OiC*vC*", .features = "kl,widekl" },
44344339 .{ .param_str = "V2OiV2OiV2Oi", .features = "aes", .attributes = .{ .@"const" = true } },
44354340 .{ .param_str = "UcV2Oi*V2OivC*", .features = "kl" },
44364341 .{ .param_str = "V4OiV4OiV4Oi", .features = "vaes", .attributes = .{ .@"const" = true } },
44374342 .{ .param_str = "UcV2Oi*V2OivC*", .features = "kl" },
4438 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512,vaes", .attributes = .{ .@"const" = true } },
4343 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,vaes", .attributes = .{ .@"const" = true } },
44394344 .{ .param_str = "V2OiV2OiV2Oi", .features = "aes", .attributes = .{ .@"const" = true } },
44404345 .{ .param_str = "V4OiV4OiV4Oi", .features = "vaes", .attributes = .{ .@"const" = true } },
4441 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512,vaes", .attributes = .{ .@"const" = true } },
4346 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,vaes", .attributes = .{ .@"const" = true } },
44424347 .{ .param_str = "UcV2Oi*V2OiC*vC*", .features = "kl,widekl" },
44434348 .{ .param_str = "UcV2Oi*V2OiC*vC*", .features = "kl,widekl" },
44444349 .{ .param_str = "V2OiV2Oi", .features = "aes", .attributes = .{ .@"const" = true } },
44454350 .{ .param_str = "V2OiV2OiIc", .features = "aes", .attributes = .{ .@"const" = true } },
4446 .{ .param_str = "V4iV4iV4iIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4447 .{ .param_str = "V8iV8iV8iIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4448 .{ .param_str = "V16iV16iV16iIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4449 .{ .param_str = "V2OiV2OiV2OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4450 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4451 .{ .param_str = "V8OiV8OiV8OiIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4351 .{ .param_str = "V4iV4iV4iIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4352 .{ .param_str = "V8iV8iV8iIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4353 .{ .param_str = "V16iV16iV16iIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4354 .{ .param_str = "V2OiV2OiV2OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4355 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4356 .{ .param_str = "V8OiV8OiV8OiIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
44524357 .{ .param_str = "vv*Si", .features = "raoint" },
44534358 .{ .param_str = "vv*Si", .features = "raoint" },
44544359 .{ .param_str = "UiUiUi", .features = "bmi", .attributes = .{ .@"const" = true, .const_evaluable = true } },
44554360 .{ .param_str = "UiUiIUi", .features = "tbm", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4456 .{ .param_str = "V2dV2dV2dIi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
4457 .{ .param_str = "V4dV4dV4dIi", .features = "avx", .attributes = .{ .@"const" = true } },
4458 .{ .param_str = "V4fV4fV4fIi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
4459 .{ .param_str = "V8fV8fV8fIi", .features = "avx", .attributes = .{ .@"const" = true } },
4460 .{ .param_str = "V2dV2dV2dV2d", .features = "sse4_1", .attributes = .{ .@"const" = true } },
4461 .{ .param_str = "V4dV4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
4462 .{ .param_str = "V4fV4fV4fV4f", .features = "sse4_1", .attributes = .{ .@"const" = true } },
4463 .{ .param_str = "V8fV8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
4361 .{ .param_str = "V2dV2dV2dIi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4362 .{ .param_str = "V4dV4dV4dIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4363 .{ .param_str = "V4fV4fV4fIi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4364 .{ .param_str = "V8fV8fV8fIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4365 .{ .param_str = "V2dV2dV2dV2d", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4366 .{ .param_str = "V4dV4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4367 .{ .param_str = "V4fV4fV4fV4f", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4368 .{ .param_str = "V8fV8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
44644369 .{ .param_str = "UiUiUi", .features = "bmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
44654370 .{ .param_str = "vvC*", .features = "cldemote" },
44664371 .{ .param_str = "vvC*", .features = "sse2" },
......@@ -4468,12 +4373,12 @@ pub const data = blk: {
44684373 .{ .param_str = "vv*", .features = "shstk" },
44694374 .{ .param_str = "vvC*", .features = "clwb" },
44704375 .{ .param_str = "vv*", .features = "clzero" },
4471 .{ .param_str = "UsV16cV16cIiUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
4472 .{ .param_str = "UiV32cV32cIiUi", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
4473 .{ .param_str = "UOiV64cV64cIiUOi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
4474 .{ .param_str = "UcV4iV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4475 .{ .param_str = "UcV8iV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4476 .{ .param_str = "UsV16iV16iIiUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4376 .{ .param_str = "UsV16cV16cIiUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4377 .{ .param_str = "UiV32cV32cIiUi", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4378 .{ .param_str = "UOiV64cV64cIiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4379 .{ .param_str = "UcV4iV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4380 .{ .param_str = "UcV8iV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4381 .{ .param_str = "UsV16iV16iIiUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
44774382 .{ .param_str = "V2dV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
44784383 .{ .param_str = "V4fV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
44794384 .{ .param_str = "V2dV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
......@@ -4506,18 +4411,18 @@ pub const data = blk: {
45064411 .{ .param_str = "UcV2dV2dIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
45074412 .{ .param_str = "V4dV4dV4dIc", .features = "avx", .attributes = .{ .@"const" = true } },
45084413 .{ .param_str = "UcV4dV4dIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4509 .{ .param_str = "UcV8dV8dIiUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4414 .{ .param_str = "UcV8dV8dIiUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
45104415 .{ .param_str = "UcV8xV8xIiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
45114416 .{ .param_str = "UsV16xV16xIiUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
4512 .{ .param_str = "UiV32xV32xIiUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
4417 .{ .param_str = "UiV32xV32xIiUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
45134418 .{ .param_str = "V4fV4fV4fIc", .features = "sse", .attributes = .{ .@"const" = true } },
45144419 .{ .param_str = "UcV4fV4fIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
45154420 .{ .param_str = "V8fV8fV8fIc", .features = "avx", .attributes = .{ .@"const" = true } },
45164421 .{ .param_str = "UcV8fV8fIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4517 .{ .param_str = "UsV16fV16fIiUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4518 .{ .param_str = "UcV2OiV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4519 .{ .param_str = "UcV4OiV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4520 .{ .param_str = "UcV8OiV8OiIiUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4422 .{ .param_str = "UsV16fV16fIiUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4423 .{ .param_str = "UcV2OiV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4424 .{ .param_str = "UcV4OiV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4425 .{ .param_str = "UcV8OiV8OiIiUc", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
45214426 .{ .param_str = "V2dV2dV2dIc", .features = "sse2", .attributes = .{ .@"const" = true } },
45224427 .{ .param_str = "UcV2dV2dIiUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
45234428 .{ .param_str = "UcV8xV8xIiUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
......@@ -4527,9 +4432,9 @@ pub const data = blk: {
45274432 .{ .param_str = "V4fV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
45284433 .{ .param_str = "V2dV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
45294434 .{ .param_str = "V4fV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
4530 .{ .param_str = "UcV8sV8sIiUc", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
4531 .{ .param_str = "UsV16sV16sIiUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
4532 .{ .param_str = "UiV32sV32sIiUi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
4435 .{ .param_str = "UcV8sV8sIiUc", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4436 .{ .param_str = "UsV16sV16sIiUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4437 .{ .param_str = "UiV32sV32sIiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
45334438 .{ .param_str = "iV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
45344439 .{ .param_str = "iV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
45354440 .{ .param_str = "iV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
......@@ -4544,159 +4449,158 @@ pub const data = blk: {
45444449 .{ .param_str = "iV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
45454450 .{ .param_str = "V2dV2dV2dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
45464451 .{ .param_str = "V4dV4dV4dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4547 .{ .param_str = "V8dV8dV8dUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4452 .{ .param_str = "V8dV8dV8dUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
45484453 .{ .param_str = "V2OiV2OiV2OiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
45494454 .{ .param_str = "V4OiV4OiV4OiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4550 .{ .param_str = "V8OiV8OiV8OiUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4455 .{ .param_str = "V8OiV8OiV8OiUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
45514456 .{ .param_str = "V8sV8sV8sUc", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
45524457 .{ .param_str = "V16sV16sV16sUs", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
4553 .{ .param_str = "V32sV32sV32sUi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
4458 .{ .param_str = "V32sV32sV32sUi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true } },
45544459 .{ .param_str = "V16cV16cV16cUs", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
45554460 .{ .param_str = "V32cV32cV32cUi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
4556 .{ .param_str = "V64cV64cV64cUOi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
4461 .{ .param_str = "V64cV64cV64cUOi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true } },
45574462 .{ .param_str = "V4fV4fV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
45584463 .{ .param_str = "V8fV8fV8fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4559 .{ .param_str = "V16fV16fV16fUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4464 .{ .param_str = "V16fV16fV16fUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
45604465 .{ .param_str = "V4iV4iV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
45614466 .{ .param_str = "V8iV8iV8iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4562 .{ .param_str = "V16iV16iV16iUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4467 .{ .param_str = "V16iV16iV16iUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
45634468 .{ .param_str = "vV2d*V2dUc", .features = "avx512vl" },
45644469 .{ .param_str = "vV4d*V4dUc", .features = "avx512vl" },
4565 .{ .param_str = "vV8d*V8dUc", .features = "avx512f,evex512" },
4470 .{ .param_str = "vV8d*V8dUc", .features = "avx512f" },
45664471 .{ .param_str = "vV2Oi*V2OiUc", .features = "avx512vl" },
45674472 .{ .param_str = "vV4Oi*V4OiUc", .features = "avx512vl" },
4568 .{ .param_str = "vV8Oi*V8OiUc", .features = "avx512f,evex512" },
4473 .{ .param_str = "vV8Oi*V8OiUc", .features = "avx512f" },
45694474 .{ .param_str = "vV8s*V8sUc", .features = "avx512vl,avx512vbmi2" },
45704475 .{ .param_str = "vV16s*V16sUs", .features = "avx512vl,avx512vbmi2" },
4571 .{ .param_str = "vV32s*V32sUi", .features = "avx512vbmi2,evex512" },
4476 .{ .param_str = "vV32s*V32sUi", .features = "avx512vbmi2" },
45724477 .{ .param_str = "vV16c*V16cUs", .features = "avx512vl,avx512vbmi2" },
45734478 .{ .param_str = "vV32c*V32cUi", .features = "avx512vl,avx512vbmi2" },
4574 .{ .param_str = "vV64c*V64cUOi", .features = "avx512vbmi2,evex512" },
4479 .{ .param_str = "vV64c*V64cUOi", .features = "avx512vbmi2" },
45754480 .{ .param_str = "vV4f*V4fUc", .features = "avx512vl" },
45764481 .{ .param_str = "vV8f*V8fUc", .features = "avx512vl" },
4577 .{ .param_str = "vV16f*V16fUs", .features = "avx512f,evex512" },
4482 .{ .param_str = "vV16f*V16fUs", .features = "avx512f" },
45784483 .{ .param_str = "vV4i*V4iUc", .features = "avx512vl" },
45794484 .{ .param_str = "vV8i*V8iUc", .features = "avx512vl" },
4580 .{ .param_str = "vV16i*V16iUs", .features = "avx512f,evex512" },
4485 .{ .param_str = "vV16i*V16iUs", .features = "avx512f" },
45814486 .{ .param_str = "UiUiUs", .features = "crc32", .attributes = .{ .@"const" = true } },
45824487 .{ .param_str = "UiUiUc", .features = "crc32", .attributes = .{ .@"const" = true } },
45834488 .{ .param_str = "UiUiUi", .features = "crc32", .attributes = .{ .@"const" = true } },
4584 .{ .param_str = "UsV16c", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
4585 .{ .param_str = "UiV32c", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
4586 .{ .param_str = "UOiV64c", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
4587 .{ .param_str = "UcV4i", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4588 .{ .param_str = "UcV8i", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4589 .{ .param_str = "UsV16i", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4590 .{ .param_str = "V16fV16iV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4591 .{ .param_str = "V16cUs", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
4592 .{ .param_str = "V32cUi", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
4593 .{ .param_str = "V64cUOi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
4594 .{ .param_str = "V4iUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4595 .{ .param_str = "V8iUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4596 .{ .param_str = "V16iUs", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4597 .{ .param_str = "V2OiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4598 .{ .param_str = "V4OiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4599 .{ .param_str = "V8OiUc", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4600 .{ .param_str = "V8sUc", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
4601 .{ .param_str = "V16sUs", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
4602 .{ .param_str = "V32sUi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
4489 .{ .param_str = "UsV16c", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4490 .{ .param_str = "UiV32c", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4491 .{ .param_str = "UOiV64c", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4492 .{ .param_str = "UcV4i", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4493 .{ .param_str = "UcV8i", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4494 .{ .param_str = "UsV16i", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4495 .{ .param_str = "V16fV16iV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4496 .{ .param_str = "V16cUs", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4497 .{ .param_str = "V32cUi", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4498 .{ .param_str = "V64cUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4499 .{ .param_str = "V4iUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4500 .{ .param_str = "V8iUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4501 .{ .param_str = "V16iUs", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4502 .{ .param_str = "V2OiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4503 .{ .param_str = "V4OiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4504 .{ .param_str = "V8OiUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4505 .{ .param_str = "V8sUc", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4506 .{ .param_str = "V16sUs", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4507 .{ .param_str = "V32sUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
46034508 .{ .param_str = "V8yV4fV4f", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true } },
46044509 .{ .param_str = "V16yV8fV8f", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true } },
4605 .{ .param_str = "V32yV16fV16f", .features = "avx512bf16,evex512", .attributes = .{ .@"const" = true } },
4510 .{ .param_str = "V32yV16fV16f", .features = "avx512bf16", .attributes = .{ .@"const" = true } },
46064511 .{ .param_str = "V8yV4fV8yUc", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true } },
46074512 .{ .param_str = "V8yV8fV8yUc", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true } },
4608 .{ .param_str = "V16yV16fV16yUs", .features = "avx512bf16,evex512", .attributes = .{ .@"const" = true } },
4513 .{ .param_str = "V16yV16fV16yUs", .features = "avx512bf16", .attributes = .{ .@"const" = true } },
46094514 .{ .param_str = "V2OiV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
46104515 .{ .param_str = "V4iV2dV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
46114516 .{ .param_str = "V4iV4d", .features = "avx", .attributes = .{ .@"const" = true } },
4612 .{ .param_str = "V8iV8dV8iUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4613 .{ .param_str = "V4fV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
4614 .{ .param_str = "V4fV4d", .features = "avx", .attributes = .{ .@"const" = true } },
4615 .{ .param_str = "V8fV8dV8fUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4616 .{ .param_str = "V4fV2dV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4517 .{ .param_str = "V8iV8dV8iUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4518 .{ .param_str = "V4fV2d", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4519 .{ .param_str = "V4fV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4520 .{ .param_str = "V8fV8dV8fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4521 .{ .param_str = "V4fV2dV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
46174522 .{ .param_str = "V2OiV2dV2OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
46184523 .{ .param_str = "V4OiV4dV4OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4619 .{ .param_str = "V8OiV8dV8OiUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4524 .{ .param_str = "V8OiV8dV8OiUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46204525 .{ .param_str = "V4iV2dV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
46214526 .{ .param_str = "V4iV4dV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4622 .{ .param_str = "V8iV8dV8iUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4527 .{ .param_str = "V8iV8dV8iUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46234528 .{ .param_str = "V2OiV2dV2OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
46244529 .{ .param_str = "V4OiV4dV4OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4625 .{ .param_str = "V8OiV8dV8OiUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4530 .{ .param_str = "V8OiV8dV8OiUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46264531 .{ .param_str = "V4iV4f", .features = "sse2", .attributes = .{ .@"const" = true } },
46274532 .{ .param_str = "V8iV8f", .features = "avx", .attributes = .{ .@"const" = true } },
4628 .{ .param_str = "V16iV16fV16iUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4629 .{ .param_str = "V8dV8fV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4533 .{ .param_str = "V16iV16fV16iUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4534 .{ .param_str = "V8dV8fV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46304535 .{ .param_str = "V2OiV4fV2OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
46314536 .{ .param_str = "V4OiV4fV4OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4632 .{ .param_str = "V8OiV8fV8OiUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4537 .{ .param_str = "V8OiV8fV8OiUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46334538 .{ .param_str = "V4iV4fV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
46344539 .{ .param_str = "V8iV8fV8iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4635 .{ .param_str = "V16iV16fV16iUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4540 .{ .param_str = "V16iV16fV16iUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46364541 .{ .param_str = "V2OiV4fV2OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
46374542 .{ .param_str = "V4OiV4fV4OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4638 .{ .param_str = "V8OiV8fV8OiUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4639 .{ .param_str = "UcV2Oi", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4640 .{ .param_str = "UcV4Oi", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4641 .{ .param_str = "UcV8Oi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4642 .{ .param_str = "V8dV8OiV8dUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4543 .{ .param_str = "V8OiV8fV8OiUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4544 .{ .param_str = "UcV2Oi", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4545 .{ .param_str = "UcV4Oi", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4546 .{ .param_str = "UcV8Oi", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4547 .{ .param_str = "V8dV8OiV8dUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46434548 .{ .param_str = "V4fV2OiV4fUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4644 .{ .param_str = "V8fV8OiV8fUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4645 .{ .param_str = "fy", .features = "avx512bf16", .attributes = .{ .@"const" = true } },
4549 .{ .param_str = "V8fV8OiV8fUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46464550 .{ .param_str = "iV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
4647 .{ .param_str = "V4fV4fV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
4648 .{ .param_str = "V4fV4fV2dV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4551 .{ .param_str = "V4fV4fV2d", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4552 .{ .param_str = "V4fV4fV2dV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
46494553 .{ .param_str = "V4fV4fiIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46504554 .{ .param_str = "V2dV2dV4fV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46514555 .{ .param_str = "iV4f", .features = "sse", .attributes = .{ .@"const" = true } },
46524556 .{ .param_str = "V4iV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
46534557 .{ .param_str = "V4iV2dV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
46544558 .{ .param_str = "V4iV4d", .features = "avx", .attributes = .{ .@"const" = true } },
4655 .{ .param_str = "V8iV8dV8iUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4559 .{ .param_str = "V8iV8dV8iUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46564560 .{ .param_str = "V2OiV2dV2OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
46574561 .{ .param_str = "V4OiV4dV4OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4658 .{ .param_str = "V8OiV8dV8OiUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4562 .{ .param_str = "V8OiV8dV8OiUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46594563 .{ .param_str = "V4iV2dV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
46604564 .{ .param_str = "V4iV4dV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4661 .{ .param_str = "V8iV8dV8iUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4565 .{ .param_str = "V8iV8dV8iUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46624566 .{ .param_str = "V2OiV2dV2OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
46634567 .{ .param_str = "V4OiV4dV4OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4664 .{ .param_str = "V8OiV8dV8OiUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4568 .{ .param_str = "V8OiV8dV8OiUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46654569 .{ .param_str = "V4iV4f", .features = "sse2", .attributes = .{ .@"const" = true } },
46664570 .{ .param_str = "V8iV8f", .features = "avx", .attributes = .{ .@"const" = true } },
4667 .{ .param_str = "V16iV16fV16iUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4571 .{ .param_str = "V16iV16fV16iUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46684572 .{ .param_str = "V2OiV4fV2OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
46694573 .{ .param_str = "V4OiV4fV4OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4670 .{ .param_str = "V8OiV8fV8OiUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4574 .{ .param_str = "V8OiV8fV8OiUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46714575 .{ .param_str = "V4iV4fV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
46724576 .{ .param_str = "V8iV8fV8iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4673 .{ .param_str = "V16iV16fV16iUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4577 .{ .param_str = "V16iV16fV16iUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46744578 .{ .param_str = "V2OiV4fV2OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
46754579 .{ .param_str = "V4OiV4fV4OiUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4676 .{ .param_str = "V8OiV8fV8OiUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4580 .{ .param_str = "V8OiV8fV8OiUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46774581 .{ .param_str = "iV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
46784582 .{ .param_str = "iV4f", .features = "sse", .attributes = .{ .@"const" = true } },
4679 .{ .param_str = "V16fV16iV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4680 .{ .param_str = "V8dV8OiV8dUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4583 .{ .param_str = "V16fV16iV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4584 .{ .param_str = "V8dV8OiV8dUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46814585 .{ .param_str = "V4fV2OiV4fUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
4682 .{ .param_str = "V8fV8OiV8fUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4586 .{ .param_str = "V8fV8OiV8fUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
46834587 .{ .param_str = "V4fV4fUiIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4684 .{ .param_str = "UcV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
4685 .{ .param_str = "UsV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
4686 .{ .param_str = "UiV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
4588 .{ .param_str = "UcV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4589 .{ .param_str = "UsV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4590 .{ .param_str = "UiV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
46874591 .{ .param_str = "V8sV16cV16cIi", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
46884592 .{ .param_str = "V16sV32cV32cIi", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
4689 .{ .param_str = "V32sV64cV64cIi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
4593 .{ .param_str = "V32sV64cV64cIi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
46904594 .{ .param_str = "vUi*Ui", .features = "movdiri" },
4691 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4692 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
4693 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4595 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4596 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
4597 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46944598 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46954599 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
46964600 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
46974601 .{ .param_str = "V4fV4fV8yV8y", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true } },
46984602 .{ .param_str = "V8fV8fV16yV16y", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true } },
4699 .{ .param_str = "V16fV16fV32yV32y", .features = "avx512bf16,evex512", .attributes = .{ .@"const" = true } },
4603 .{ .param_str = "V16fV16fV32yV32y", .features = "avx512bf16", .attributes = .{ .@"const" = true } },
47004604 .{ .param_str = "V2dV2dV2dIc", .features = "sse4_1", .attributes = .{ .@"const" = true } },
47014605 .{ .param_str = "V4fV4fV4fIc", .features = "sse4_1", .attributes = .{ .@"const" = true } },
47024606 .{ .param_str = "V8fV8fV8fIc", .features = "avx", .attributes = .{ .@"const" = true } },
......@@ -4707,80 +4611,80 @@ pub const data = blk: {
47074611 .{ .param_str = "Ucv*vC*", .features = "enqcmd" },
47084612 .{ .param_str = "V2dV2dV2dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47094613 .{ .param_str = "V4dV4dV4dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4710 .{ .param_str = "V8dV8dV8dUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4614 .{ .param_str = "V8dV8dV8dUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
47114615 .{ .param_str = "V2OiV2OiV2OiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47124616 .{ .param_str = "V4OiV4OiV4OiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4713 .{ .param_str = "V8OiV8OiV8OiUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4617 .{ .param_str = "V8OiV8OiV8OiUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
47144618 .{ .param_str = "V8sV8sV8sUc", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
47154619 .{ .param_str = "V16sV16sV16sUs", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
4716 .{ .param_str = "V32sV32sV32sUi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
4620 .{ .param_str = "V32sV32sV32sUi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true } },
47174621 .{ .param_str = "V2dV2dC*V2dUc", .features = "avx512vl" },
47184622 .{ .param_str = "V4dV4dC*V4dUc", .features = "avx512vl" },
4719 .{ .param_str = "V8dV8dC*V8dUc", .features = "avx512f,evex512" },
4623 .{ .param_str = "V8dV8dC*V8dUc", .features = "avx512f" },
47204624 .{ .param_str = "V4iV2OiC*V2OiUc", .features = "avx512vl" },
47214625 .{ .param_str = "V4OiV4OiC*V4OiUc", .features = "avx512vl" },
4722 .{ .param_str = "V8OiV8OiC*V8OiUc", .features = "avx512f,evex512" },
4626 .{ .param_str = "V8OiV8OiC*V8OiUc", .features = "avx512f" },
47234627 .{ .param_str = "V8sV8sC*V8sUc", .features = "avx512vl,avx512vbmi2" },
47244628 .{ .param_str = "V16sV16sC*V16sUs", .features = "avx512vl,avx512vbmi2" },
4725 .{ .param_str = "V32sV32sC*V32sUi", .features = "avx512vbmi2,evex512" },
4629 .{ .param_str = "V32sV32sC*V32sUi", .features = "avx512vbmi2" },
47264630 .{ .param_str = "V16cV16cC*V16cUs", .features = "avx512vl,avx512vbmi2" },
47274631 .{ .param_str = "V32cV32cC*V32cUi", .features = "avx512vl,avx512vbmi2" },
4728 .{ .param_str = "V64cV64cC*V64cUOi", .features = "avx512vbmi2,evex512" },
4632 .{ .param_str = "V64cV64cC*V64cUOi", .features = "avx512vbmi2" },
47294633 .{ .param_str = "V4fV4fC*V4fUc", .features = "avx512vl" },
47304634 .{ .param_str = "V8fV8fC*V8fUc", .features = "avx512vl" },
4731 .{ .param_str = "V16fV16fC*V16fUs", .features = "avx512f,evex512" },
4635 .{ .param_str = "V16fV16fC*V16fUs", .features = "avx512f" },
47324636 .{ .param_str = "V4iV4iC*V4iUc", .features = "avx512vl" },
47334637 .{ .param_str = "V8iV8iC*V8iUc", .features = "avx512vl" },
4734 .{ .param_str = "V16iV16iC*V16iUs", .features = "avx512f,evex512" },
4638 .{ .param_str = "V16iV16iC*V16iUs", .features = "avx512f" },
47354639 .{ .param_str = "V16cV16cV16cUs", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
47364640 .{ .param_str = "V32cV32cV32cUi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
4737 .{ .param_str = "V64cV64cV64cUOi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
4641 .{ .param_str = "V64cV64cV64cUOi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true } },
47384642 .{ .param_str = "V4fV4fV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47394643 .{ .param_str = "V8fV8fV8fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4740 .{ .param_str = "V16fV16fV16fUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4644 .{ .param_str = "V16fV16fV16fUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
47414645 .{ .param_str = "V4iV4iV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47424646 .{ .param_str = "V8iV8iV8iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4743 .{ .param_str = "V16iV16iV16iUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4744 .{ .param_str = "V2OiV4OiIi", .features = "avx2", .attributes = .{ .@"const" = true } },
4745 .{ .param_str = "V4fV8fIiV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4746 .{ .param_str = "V4fV16fIiV4fUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4747 .{ .param_str = "V8fV16fIiV8fUc", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4748 .{ .param_str = "V2dV4dIiV2dUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4749 .{ .param_str = "V2dV8dIiV2dUc", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4750 .{ .param_str = "V4dV8dIiV4dUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4751 .{ .param_str = "V4iV8iIiV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4752 .{ .param_str = "V4iV16iIiV4iUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4753 .{ .param_str = "V8iV16iIiV8iUc", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4754 .{ .param_str = "V2OiV4OiIiV2OiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4755 .{ .param_str = "V2OiV8OiIiV2OiUc", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4756 .{ .param_str = "V4OiV8OiIiV4OiUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4647 .{ .param_str = "V16iV16iV16iUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4648 .{ .param_str = "V2OiV4OiIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4649 .{ .param_str = "V4fV8fIiV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4650 .{ .param_str = "V4fV16fIiV4fUc", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4651 .{ .param_str = "V8fV16fIiV8fUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4652 .{ .param_str = "V2dV4dIiV2dUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4653 .{ .param_str = "V2dV8dIiV2dUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4654 .{ .param_str = "V4dV8dIiV4dUc", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4655 .{ .param_str = "V4iV8iIiV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4656 .{ .param_str = "V4iV16iIiV4iUc", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4657 .{ .param_str = "V8iV16iIiV8iUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4658 .{ .param_str = "V2OiV4OiIiV2OiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4659 .{ .param_str = "V2OiV8OiIiV2OiUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4660 .{ .param_str = "V4OiV8OiIiV4OiUc", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
47574661 .{ .param_str = "V2OiV2OiV16c", .features = "sse4a", .attributes = .{ .@"const" = true } },
47584662 .{ .param_str = "V2OiV2OiIcIc", .features = "sse4a", .attributes = .{ .@"const" = true } },
47594663 .{ .param_str = "V2dV2dV2dV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47604664 .{ .param_str = "V2dV2dV2dV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47614665 .{ .param_str = "V4dV4dV4dV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47624666 .{ .param_str = "V4dV4dV4dV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4763 .{ .param_str = "V8dV8dV8dV8OiIiUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4764 .{ .param_str = "V8dV8dV8dV8OiIiUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4667 .{ .param_str = "V8dV8dV8dV8OiIiUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4668 .{ .param_str = "V8dV8dV8dV8OiIiUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
47654669 .{ .param_str = "V4fV4fV4fV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47664670 .{ .param_str = "V4fV4fV4fV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47674671 .{ .param_str = "V8fV8fV8fV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
47684672 .{ .param_str = "V8fV8fV8fV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4769 .{ .param_str = "V16fV16fV16fV16iIiUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4770 .{ .param_str = "V16fV16fV16fV16iIiUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4673 .{ .param_str = "V16fV16fV16fV16iIiUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4674 .{ .param_str = "V16fV16fV16fV16iIiUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
47714675 .{ .param_str = "V2dV2dV2dV2OiIiUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
47724676 .{ .param_str = "V2dV2dV2dV2OiIiUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
47734677 .{ .param_str = "V4fV4fV4fV4iIiUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
47744678 .{ .param_str = "V4fV4fV4fV4iIiUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
47754679 .{ .param_str = "UcV2dIiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
47764680 .{ .param_str = "UcV4dIiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4777 .{ .param_str = "UcV8dIiUc", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4681 .{ .param_str = "UcV8dIiUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
47784682 .{ .param_str = "UcV8xIiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
47794683 .{ .param_str = "UsV16xIiUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
4780 .{ .param_str = "UiV32xIiUi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
4684 .{ .param_str = "UiV32xIiUi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
47814685 .{ .param_str = "UcV4fIiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
47824686 .{ .param_str = "UcV8fIiUc", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4783 .{ .param_str = "UsV16fIiUs", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4687 .{ .param_str = "UsV16fIiUs", .features = "avx512dq", .attributes = .{ .@"const" = true } },
47844688 .{ .param_str = "UcV2dIiUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
47854689 .{ .param_str = "UcV8xIiUc", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
47864690 .{ .param_str = "UcV4fIiUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
......@@ -4810,10 +4714,10 @@ pub const data = blk: {
48104714 .{ .param_str = "V8fV8ffC*V8iV8fIc", .features = "avx2" },
48114715 .{ .param_str = "V2OiV2OiOiC*V4iV2OiIc", .features = "avx2" },
48124716 .{ .param_str = "V4OiV4OiOiC*V4iV4OiIc", .features = "avx2" },
4813 .{ .param_str = "V8fV8fvC*V8OiUcIi", .features = "avx512f,evex512" },
4814 .{ .param_str = "V8iV8ivC*V8OiUcIi", .features = "avx512f,evex512" },
4815 .{ .param_str = "V8dV8dvC*V8OiUcIi", .features = "avx512f,evex512" },
4816 .{ .param_str = "V8OiV8OivC*V8OiUcIi", .features = "avx512f,evex512" },
4717 .{ .param_str = "V8fV8fvC*V8OiUcIi", .features = "avx512f" },
4718 .{ .param_str = "V8iV8ivC*V8OiUcIi", .features = "avx512f" },
4719 .{ .param_str = "V8dV8dvC*V8OiUcIi", .features = "avx512f" },
4720 .{ .param_str = "V8OiV8OivC*V8OiUcIi", .features = "avx512f" },
48174721 .{ .param_str = "V4iV4iiC*V2OiV4iIc", .features = "avx2" },
48184722 .{ .param_str = "V4iV4iiC*V4OiV4iIc", .features = "avx2" },
48194723 .{ .param_str = "V2dV2ddC*V2OiV2dIc", .features = "avx2" },
......@@ -4822,119 +4726,119 @@ pub const data = blk: {
48224726 .{ .param_str = "V4fV4ffC*V4OiV4fIc", .features = "avx2" },
48234727 .{ .param_str = "V2OiV2OiOiC*V2OiV2OiIc", .features = "avx2" },
48244728 .{ .param_str = "V4OiV4OiOiC*V4OiV4OiIc", .features = "avx2" },
4825 .{ .param_str = "V16fV16fvC*V16iUsIi", .features = "avx512f,evex512" },
4826 .{ .param_str = "V16iV16ivC*V16iUsIi", .features = "avx512f,evex512" },
4827 .{ .param_str = "V8dV8dvC*V8iUcIi", .features = "avx512f,evex512" },
4828 .{ .param_str = "V8OiV8OivC*V8iUcIi", .features = "avx512f,evex512" },
4729 .{ .param_str = "V16fV16fvC*V16iUsIi", .features = "avx512f" },
4730 .{ .param_str = "V16iV16ivC*V16iUsIi", .features = "avx512f" },
4731 .{ .param_str = "V8dV8dvC*V8iUcIi", .features = "avx512f" },
4732 .{ .param_str = "V8OiV8OivC*V8iUcIi", .features = "avx512f" },
48294733 .{ .param_str = "V2dV2dV2dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
48304734 .{ .param_str = "V4dV4dV4dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4831 .{ .param_str = "V8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4735 .{ .param_str = "V8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
48324736 .{ .param_str = "V8xV8xV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
48334737 .{ .param_str = "V16xV16xV16xUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
4834 .{ .param_str = "V32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
4738 .{ .param_str = "V32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
48354739 .{ .param_str = "V4fV4fV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
48364740 .{ .param_str = "V8fV8fV8fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4837 .{ .param_str = "V16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4741 .{ .param_str = "V16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
48384742 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
48394743 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
48404744 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
48414745 .{ .param_str = "V2dV2dIiV2dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
48424746 .{ .param_str = "V4dV4dIiV4dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4843 .{ .param_str = "V8dV8dIiV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4747 .{ .param_str = "V8dV8dIiV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
48444748 .{ .param_str = "V8xV8xIiV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
48454749 .{ .param_str = "V16xV16xIiV16xUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
4846 .{ .param_str = "V32xV32xIiV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
4750 .{ .param_str = "V32xV32xIiV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
48474751 .{ .param_str = "V4fV4fIiV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
48484752 .{ .param_str = "V8fV8fIiV8fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4849 .{ .param_str = "V16fV16fIiV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4753 .{ .param_str = "V16fV16fIiV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
48504754 .{ .param_str = "V2dV2dV2dIiV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
48514755 .{ .param_str = "V8xV8xV8xIiV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
48524756 .{ .param_str = "V4fV4fV4fIiV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4853 .{ .param_str = "V2dV2dV2d", .features = "sse3", .attributes = .{ .@"const" = true } },
4854 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
4855 .{ .param_str = "V4fV4fV4f", .features = "sse3", .attributes = .{ .@"const" = true } },
4856 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
4857 .{ .param_str = "V2dV2dV2d", .features = "sse3", .attributes = .{ .@"const" = true } },
4858 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
4859 .{ .param_str = "V4fV4fV4f", .features = "sse3", .attributes = .{ .@"const" = true } },
4860 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
4757 .{ .param_str = "V2dV2dV2d", .features = "sse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4758 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4759 .{ .param_str = "V4fV4fV4f", .features = "sse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4760 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4761 .{ .param_str = "V2dV2dV2d", .features = "sse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4762 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4763 .{ .param_str = "V4fV4fV4f", .features = "sse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4764 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
48614765 .{ .param_str = "vUi", .features = "shstk" },
4862 .{ .param_str = "V4OiV4OiV2OiIi", .features = "avx2", .attributes = .{ .@"const" = true } },
4863 .{ .param_str = "V16fV16fV4fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4864 .{ .param_str = "V8fV8fV4fIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4865 .{ .param_str = "V16fV16fV8fIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4866 .{ .param_str = "V4dV4dV2dIi", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4867 .{ .param_str = "V8dV8dV2dIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4868 .{ .param_str = "V8dV8dV4dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4869 .{ .param_str = "V16iV16iV4iIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4870 .{ .param_str = "V8iV8iV4iIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
4871 .{ .param_str = "V16iV16iV8iIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4872 .{ .param_str = "V4OiV4OiV2OiIi", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true } },
4873 .{ .param_str = "V8OiV8OiV2OiIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
4874 .{ .param_str = "V8OiV8OiV4OiIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4875 .{ .param_str = "V4fV4fV4fIc", .features = "sse4_1", .attributes = .{ .@"const" = true } },
4766 .{ .param_str = "V4OiV4OiV2OiIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4767 .{ .param_str = "V16fV16fV4fIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4768 .{ .param_str = "V8fV8fV4fIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4769 .{ .param_str = "V16fV16fV8fIi", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4770 .{ .param_str = "V4dV4dV2dIi", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4771 .{ .param_str = "V8dV8dV2dIi", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4772 .{ .param_str = "V8dV8dV4dIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4773 .{ .param_str = "V16iV16iV4iIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4774 .{ .param_str = "V8iV8iV4iIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4775 .{ .param_str = "V16iV16iV8iIi", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4776 .{ .param_str = "V4OiV4OiV2OiIi", .features = "avx512dq,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4777 .{ .param_str = "V8OiV8OiV2OiIi", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4778 .{ .param_str = "V8OiV8OiV4OiIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4779 .{ .param_str = "V4fV4fV4fIc", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
48764780 .{ .param_str = "V2OiV2OiV2Oi", .features = "sse4a", .attributes = .{ .@"const" = true } },
48774781 .{ .param_str = "V2OiV2OiV2OiIcIc", .features = "sse4a", .attributes = .{ .@"const" = true } },
48784782 .{ .param_str = "vUiv*", .features = "invpcid", .attributes = .{ .@"const" = true } },
4879 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4880 .{ .param_str = "UsUsUs", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4881 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4882 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4883 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4884 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4885 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4886 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4887 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4888 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4889 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4890 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4891 .{ .param_str = "UcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4892 .{ .param_str = "UiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4893 .{ .param_str = "UOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4894 .{ .param_str = "UsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4895 .{ .param_str = "UOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4896 .{ .param_str = "UsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4897 .{ .param_str = "UcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4898 .{ .param_str = "UiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4899 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4900 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4901 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4902 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4903 .{ .param_str = "iUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4904 .{ .param_str = "iUsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4905 .{ .param_str = "iUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4906 .{ .param_str = "iUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4907 .{ .param_str = "iUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4908 .{ .param_str = "iUsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4909 .{ .param_str = "iUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4910 .{ .param_str = "iUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4911 .{ .param_str = "UOiUOiIUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4912 .{ .param_str = "UsUsIUi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4913 .{ .param_str = "UcUcIUi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4914 .{ .param_str = "UiUiIUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4915 .{ .param_str = "UOiUOiIUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4916 .{ .param_str = "UsUsIUi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4917 .{ .param_str = "UcUcIUi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4918 .{ .param_str = "UiUiIUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4919 .{ .param_str = "iUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4920 .{ .param_str = "iUsUs", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4921 .{ .param_str = "iUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4922 .{ .param_str = "iUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4923 .{ .param_str = "iUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4924 .{ .param_str = "iUsUs", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4925 .{ .param_str = "iUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4926 .{ .param_str = "iUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4927 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4928 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4929 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4930 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4931 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4932 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4933 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4934 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4935 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
4936 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true } },
4937 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
4783 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4784 .{ .param_str = "UsUsUs", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4785 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4786 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4787 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4788 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4789 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4790 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4791 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4792 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4793 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4794 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4795 .{ .param_str = "UcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4796 .{ .param_str = "UiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4797 .{ .param_str = "UOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4798 .{ .param_str = "UsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4799 .{ .param_str = "UOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4800 .{ .param_str = "UsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4801 .{ .param_str = "UcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4802 .{ .param_str = "UiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4803 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4804 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4805 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4806 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4807 .{ .param_str = "iUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4808 .{ .param_str = "iUsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4809 .{ .param_str = "iUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4810 .{ .param_str = "iUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4811 .{ .param_str = "iUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4812 .{ .param_str = "iUsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4813 .{ .param_str = "iUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4814 .{ .param_str = "iUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4815 .{ .param_str = "UOiUOiIUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4816 .{ .param_str = "UsUsIUi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4817 .{ .param_str = "UcUcIUi", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4818 .{ .param_str = "UiUiIUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4819 .{ .param_str = "UOiUOiIUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4820 .{ .param_str = "UsUsIUi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4821 .{ .param_str = "UcUcIUi", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4822 .{ .param_str = "UiUiIUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4823 .{ .param_str = "iUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4824 .{ .param_str = "iUsUs", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4825 .{ .param_str = "iUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4826 .{ .param_str = "iUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4827 .{ .param_str = "iUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4828 .{ .param_str = "iUsUs", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4829 .{ .param_str = "iUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4830 .{ .param_str = "iUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4831 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4832 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4833 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4834 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4835 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4836 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4837 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4838 .{ .param_str = "UOiUOiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4839 .{ .param_str = "UsUsUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4840 .{ .param_str = "UcUcUc", .features = "avx512dq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4841 .{ .param_str = "UiUiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
49384842 .{ .param_str = "V16ccC*", .features = "sse3" },
49394843 .{ .param_str = "V32ccC*", .features = "avx" },
49404844 .{ .param_str = "vUi", .features = "sse" },
......@@ -4942,22 +4846,22 @@ pub const data = blk: {
49424846 .{ .param_str = "vv*", .features = "lwp" },
49434847 .{ .param_str = "V2dV2dC*V2dUc", .features = "avx512vl" },
49444848 .{ .param_str = "V4dV4dC*V4dUc", .features = "avx512vl" },
4945 .{ .param_str = "V8dV8dC*V8dUc", .features = "avx512f,evex512" },
4849 .{ .param_str = "V8dV8dC*V8dUc", .features = "avx512f" },
49464850 .{ .param_str = "V4fV4fC*V4fUc", .features = "avx512vl" },
49474851 .{ .param_str = "V8fV8fC*V8fUc", .features = "avx512vl" },
4948 .{ .param_str = "V16fV16fC*V16fUs", .features = "avx512f,evex512" },
4852 .{ .param_str = "V16fV16fC*V16fUs", .features = "avx512f" },
49494853 .{ .param_str = "V2OiV2OiC*V2OiUc", .features = "avx512vl" },
49504854 .{ .param_str = "V4OiV4OiC*V4OiUc", .features = "avx512vl" },
4951 .{ .param_str = "V8OiOiC*V8OiUc", .features = "avx512f,evex512" },
4855 .{ .param_str = "V8OiOiC*V8OiUc", .features = "avx512f" },
49524856 .{ .param_str = "V8sV8sC*V8sUc", .features = "avx512bw,avx512vl" },
49534857 .{ .param_str = "V16sV16sC*V16sUs", .features = "avx512bw,avx512vl" },
4954 .{ .param_str = "V32sV32sC*V32sUi", .features = "avx512bw,evex512" },
4858 .{ .param_str = "V32sV32sC*V32sUi", .features = "avx512bw" },
49554859 .{ .param_str = "V16cV16cC*V16cUs", .features = "avx512bw,avx512vl" },
49564860 .{ .param_str = "V32cV32cC*V32cUi", .features = "avx512bw,avx512vl" },
4957 .{ .param_str = "V64cV64cC*V64cUOi", .features = "avx512bw,evex512" },
4861 .{ .param_str = "V64cV64cC*V64cUOi", .features = "avx512bw" },
49584862 .{ .param_str = "V4iV4iC*V4iUc", .features = "avx512vl" },
49594863 .{ .param_str = "V8iV8iC*V8iUc", .features = "avx512vl" },
4960 .{ .param_str = "V16iiC*V16iUs", .features = "avx512f,evex512" },
4864 .{ .param_str = "V16iiC*V16iUs", .features = "avx512f" },
49614865 .{ .param_str = "vV2OiV2OiV2OiUi", .features = "kl" },
49624866 .{ .param_str = "V8yV8yC*V8yUc", .features = "avx10_2" },
49634867 .{ .param_str = "V2dV2dC*V2dUc", .features = "avx512f" },
......@@ -4965,10 +4869,10 @@ pub const data = blk: {
49654869 .{ .param_str = "V4fV4fC*V4fUc", .features = "avx512f" },
49664870 .{ .param_str = "V2dV2dC*V2dUc", .features = "avx512vl" },
49674871 .{ .param_str = "V4dV4dC*V4dUc", .features = "avx512vl" },
4968 .{ .param_str = "V8ddC*V8dUc", .features = "avx512f,evex512" },
4872 .{ .param_str = "V8ddC*V8dUc", .features = "avx512f" },
49694873 .{ .param_str = "V4fV4fC*V4fUc", .features = "avx512vl" },
49704874 .{ .param_str = "V8fV8fC*V8fUc", .features = "avx512vl" },
4971 .{ .param_str = "V16ffC*V16fUs", .features = "avx512f,evex512" },
4875 .{ .param_str = "V16ffC*V16fUs", .features = "avx512f" },
49724876 .{ .param_str = "UcUiUiIUi", .features = "lwp" },
49734877 .{ .param_str = "vUiUiIUi", .features = "lwp" },
49744878 .{ .param_str = "UsUs", .attributes = .{ .@"const" = true, .const_evaluable = true } },
......@@ -4990,30 +4894,30 @@ pub const data = blk: {
49904894 .{ .param_str = "vV8f*V8iV8f", .features = "avx" },
49914895 .{ .param_str = "vV2Oi*V2OiV2Oi", .features = "avx2" },
49924896 .{ .param_str = "vV4Oi*V4OiV4Oi", .features = "avx2" },
4993 .{ .param_str = "V2dV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
4994 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
4995 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4996 .{ .param_str = "V8xV8xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
4997 .{ .param_str = "V16xV16xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
4998 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
4999 .{ .param_str = "V4fV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
5000 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
5001 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4897 .{ .param_str = "V2dV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4898 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4899 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4900 .{ .param_str = "V8xV8xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4901 .{ .param_str = "V16xV16xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4902 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4903 .{ .param_str = "V4fV4fV4f", .features = "sse", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4904 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4905 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
50024906 .{ .param_str = "V2dV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
50034907 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
50044908 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
50054909 .{ .param_str = "V4fV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
50064910 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
50074911 .{ .param_str = "v", .features = "sse2" },
5008 .{ .param_str = "V2dV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
5009 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
5010 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5011 .{ .param_str = "V8xV8xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5012 .{ .param_str = "V16xV16xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5013 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5014 .{ .param_str = "V4fV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
5015 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
5016 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4912 .{ .param_str = "V2dV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4913 .{ .param_str = "V4dV4dV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4914 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4915 .{ .param_str = "V8xV8xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4916 .{ .param_str = "V16xV16xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4917 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4918 .{ .param_str = "V4fV4fV4f", .features = "sse", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4919 .{ .param_str = "V8fV8fV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4920 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
50174921 .{ .param_str = "V2dV2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
50184922 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
50194923 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
......@@ -5024,65 +4928,65 @@ pub const data = blk: {
50244928 .{ .param_str = "vv*vC*", .features = "movdir64b" },
50254929 .{ .param_str = "V4iV4iC*V4iUc", .features = "avx512vl" },
50264930 .{ .param_str = "V8iV8iC*V8iUc", .features = "avx512vl" },
5027 .{ .param_str = "V16iV16iC*V16iUs", .features = "avx512f,evex512" },
4931 .{ .param_str = "V16iV16iC*V16iUs", .features = "avx512f" },
50284932 .{ .param_str = "vV4i*V4iUc", .features = "avx512vl" },
50294933 .{ .param_str = "vV8i*V8iUc", .features = "avx512vl" },
5030 .{ .param_str = "vV16i*V16iUs", .features = "avx512f,evex512" },
4934 .{ .param_str = "vV16i*V16iUs", .features = "avx512f" },
50314935 .{ .param_str = "V2OiV2OiC*V2OiUc", .features = "avx512vl" },
50324936 .{ .param_str = "V4OiV4OiC*V4OiUc", .features = "avx512vl" },
5033 .{ .param_str = "V8OiV8OiC*V8OiUc", .features = "avx512f,evex512" },
4937 .{ .param_str = "V8OiV8OiC*V8OiUc", .features = "avx512f" },
50344938 .{ .param_str = "vV2Oi*V2OiUc", .features = "avx512vl" },
50354939 .{ .param_str = "vV4Oi*V4OiUc", .features = "avx512vl" },
5036 .{ .param_str = "vV8Oi*V8OiUc", .features = "avx512f,evex512" },
5037 .{ .param_str = "iV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
5038 .{ .param_str = "iV4d", .features = "avx", .attributes = .{ .@"const" = true } },
5039 .{ .param_str = "iV4f", .features = "sse" },
5040 .{ .param_str = "iV8f", .features = "avx", .attributes = .{ .@"const" = true } },
4940 .{ .param_str = "vV8Oi*V8OiUc", .features = "avx512f" },
4941 .{ .param_str = "iV2d", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4942 .{ .param_str = "iV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4943 .{ .param_str = "iV4f", .features = "sse", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4944 .{ .param_str = "iV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
50414945 .{ .param_str = "vi*i", .features = "sse2" },
50424946 .{ .param_str = "vd*V2d", .features = "sse4a" },
50434947 .{ .param_str = "vf*V4f", .features = "sse4a" },
50444948 .{ .param_str = "V16cV16cV16cIc", .features = "sse4_1", .attributes = .{ .@"const" = true } },
50454949 .{ .param_str = "V32cV32cV32cIc", .features = "avx2", .attributes = .{ .@"const" = true } },
50464950 .{ .param_str = "V32sV64cV64cIc", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5047 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5048 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5049 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
4951 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
4952 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
4953 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
50504954 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
50514955 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
50524956 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
50534957 .{ .param_str = "vUiUi", .features = "sse3" },
50544958 .{ .param_str = "vUiUiUi", .features = "mwaitx" },
5055 .{ .param_str = "V8sV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true } },
5056 .{ .param_str = "V16sV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5057 .{ .param_str = "V32sV16iV16i", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5058 .{ .param_str = "V16cV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true } },
5059 .{ .param_str = "V32cV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5060 .{ .param_str = "V64cV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5061 .{ .param_str = "V8sV4iV4i", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5062 .{ .param_str = "V16sV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5063 .{ .param_str = "V32sV16iV16i", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5064 .{ .param_str = "V16cV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true } },
5065 .{ .param_str = "V32cV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5066 .{ .param_str = "V64cV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5067 .{ .param_str = "V16cV16cV16cIi", .features = "ssse3", .attributes = .{ .@"const" = true } },
5068 .{ .param_str = "V32cV32cV32cIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5069 .{ .param_str = "V64cV64cV64cIi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
4959 .{ .param_str = "V8sV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4960 .{ .param_str = "V16sV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4961 .{ .param_str = "V32sV16iV16i", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4962 .{ .param_str = "V16cV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4963 .{ .param_str = "V32cV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4964 .{ .param_str = "V64cV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4965 .{ .param_str = "V8sV4iV4i", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4966 .{ .param_str = "V16sV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4967 .{ .param_str = "V32sV16iV16i", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4968 .{ .param_str = "V16cV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4969 .{ .param_str = "V32cV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4970 .{ .param_str = "V64cV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4971 .{ .param_str = "V16cV16cV16cIi", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4972 .{ .param_str = "V32cV32cV32cIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4973 .{ .param_str = "V64cV64cV64cIi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
50704974 .{ .param_str = "v" },
5071 .{ .param_str = "V16cV16cV16c", .features = "sse2", .attributes = .{ .@"const" = true } },
5072 .{ .param_str = "V32cV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true } },
5073 .{ .param_str = "V64cV64cV64c", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5074 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true } },
5075 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5076 .{ .param_str = "V32sV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5077 .{ .param_str = "V4iV4iV4iIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5078 .{ .param_str = "V8iV8iV8iIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5079 .{ .param_str = "V16cV16cV16cV16c", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5080 .{ .param_str = "V32cV32cV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true } },
5081 .{ .param_str = "V8sV8sV8sIi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5082 .{ .param_str = "V16sV16sV16sIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5083 .{ .param_str = "V2OiV2OiV2OiIc", .features = "pclmul", .attributes = .{ .@"const" = true } },
5084 .{ .param_str = "V4OiV4OiV4OiIc", .features = "vpclmulqdq", .attributes = .{ .@"const" = true } },
5085 .{ .param_str = "V8OiV8OiV8OiIc", .features = "avx512f,evex512,vpclmulqdq", .attributes = .{ .@"const" = true } },
4975 .{ .param_str = "V16UcV16UcV16Uc", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4976 .{ .param_str = "V32UcV32UcV32Uc", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4977 .{ .param_str = "V64UcV64UcV64Uc", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4978 .{ .param_str = "V8UsV8UsV8Us", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4979 .{ .param_str = "V16UsV16UsV16Us", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4980 .{ .param_str = "V32UsV32UsV32Us", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4981 .{ .param_str = "V4iV4iV4iIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4982 .{ .param_str = "V8iV8iV8iIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4983 .{ .param_str = "V16cV16cV16cV16c", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4984 .{ .param_str = "V32cV32cV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4985 .{ .param_str = "V8sV8sV8sIi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4986 .{ .param_str = "V16sV16sV16sIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4987 .{ .param_str = "V2OiV2OiV2OiIc", .features = "pclmul", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4988 .{ .param_str = "V4OiV4OiV4OiIc", .features = "vpclmulqdq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
4989 .{ .param_str = "V8OiV8OiV8OiIc", .features = "avx512f,vpclmulqdq", .attributes = .{ .@"const" = true, .const_evaluable = true } },
50864990 .{ .param_str = "iV16ciV16ciIc", .features = "sse4_2", .attributes = .{ .@"const" = true } },
50874991 .{ .param_str = "iV16ciV16ciIc", .features = "sse4_2", .attributes = .{ .@"const" = true } },
50884992 .{ .param_str = "iV16ciV16ciIc", .features = "sse4_2", .attributes = .{ .@"const" = true } },
......@@ -5098,339 +5002,327 @@ pub const data = blk: {
50985002 .{ .param_str = "iV16cV16cIc", .features = "sse4_2", .attributes = .{ .@"const" = true } },
50995003 .{ .param_str = "V16cV16cV16cIc", .features = "sse4_2", .attributes = .{ .@"const" = true } },
51005004 .{ .param_str = "UiUiUi", .features = "bmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5101 .{ .param_str = "V4dV4dIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5102 .{ .param_str = "V8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5103 .{ .param_str = "V4OiV4OiIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5104 .{ .param_str = "V8OiV8OiIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5105 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5106 .{ .param_str = "V4dV4dV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5107 .{ .param_str = "V8dV8dV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5108 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5109 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5110 .{ .param_str = "V8sV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5111 .{ .param_str = "V16sV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5112 .{ .param_str = "V32sV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5113 .{ .param_str = "V16cV16cV16c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true } },
5114 .{ .param_str = "V32cV32cV32c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true } },
5115 .{ .param_str = "V64cV64cV64c", .features = "avx512vbmi,evex512", .attributes = .{ .@"const" = true } },
5116 .{ .param_str = "V8fV8fV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5117 .{ .param_str = "V16fV16fV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5118 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5119 .{ .param_str = "V16iV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5005 .{ .param_str = "V4dV4dIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5006 .{ .param_str = "V8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5007 .{ .param_str = "V4OiV4OiIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5008 .{ .param_str = "V8OiV8OiIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5009 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5010 .{ .param_str = "V4dV4dV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5011 .{ .param_str = "V8dV8dV8Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5012 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5013 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5014 .{ .param_str = "V8sV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5015 .{ .param_str = "V16sV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5016 .{ .param_str = "V32sV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5017 .{ .param_str = "V16cV16cV16c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5018 .{ .param_str = "V32cV32cV32c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5019 .{ .param_str = "V64cV64cV64c", .features = "avx512vbmi", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5020 .{ .param_str = "V8fV8fV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5021 .{ .param_str = "V16fV16fV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5022 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5023 .{ .param_str = "V16iV16iV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
51205024 .{ .param_str = "UiUiUi", .features = "bmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5121 .{ .param_str = "V4iV4iV4i", .features = "ssse3", .attributes = .{ .@"const" = true } },
5122 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5123 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true } },
5124 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5125 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true } },
5126 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5127 .{ .param_str = "V8sV8s", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5128 .{ .param_str = "V4iV4iV4i", .features = "ssse3", .attributes = .{ .@"const" = true } },
5129 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5130 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true } },
5131 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5132 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true } },
5133 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5134 .{ .param_str = "V8sV16cV16c", .features = "ssse3", .attributes = .{ .@"const" = true } },
5135 .{ .param_str = "V16sV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true } },
5136 .{ .param_str = "V32sV64cV64c", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5137 .{ .param_str = "V4iV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true } },
5138 .{ .param_str = "V8iV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5139 .{ .param_str = "V16iV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5025 .{ .param_str = "V4iV4iV4i", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5026 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5027 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5028 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5029 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5030 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5031 .{ .param_str = "V8sV8s", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5032 .{ .param_str = "V4iV4iV4i", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5033 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5034 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5035 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5036 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5037 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5038 .{ .param_str = "V8sV16cV16c", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5039 .{ .param_str = "V16sV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5040 .{ .param_str = "V32sV64cV64c", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5041 .{ .param_str = "V4iV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5042 .{ .param_str = "V8iV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5043 .{ .param_str = "V16iV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
51405044 .{ .param_str = "V16cV4iV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51415045 .{ .param_str = "vV16c*V4iUc", .features = "avx512vl" },
51425046 .{ .param_str = "V16cV8iV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51435047 .{ .param_str = "vV16c*V8iUc", .features = "avx512vl" },
5144 .{ .param_str = "V16cV16iV16cUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5145 .{ .param_str = "vV16c*V16iUs", .features = "avx512f,evex512" },
5048 .{ .param_str = "V16cV16iV16cUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
5049 .{ .param_str = "vV16c*V16iUs", .features = "avx512f" },
51465050 .{ .param_str = "V8sV4iV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51475051 .{ .param_str = "vV8s*V4iUc", .features = "avx512vl" },
51485052 .{ .param_str = "V8sV8iV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51495053 .{ .param_str = "vV8s*V8iUc", .features = "avx512vl" },
5150 .{ .param_str = "V16sV16iV16sUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5151 .{ .param_str = "vV16s*V16iUs", .features = "avx512f,evex512" },
5152 .{ .param_str = "iV16c", .features = "sse2", .attributes = .{ .@"const" = true } },
5153 .{ .param_str = "iV32c", .features = "avx2", .attributes = .{ .@"const" = true } },
5054 .{ .param_str = "V16sV16iV16sUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
5055 .{ .param_str = "vV16s*V16iUs", .features = "avx512f" },
5056 .{ .param_str = "iV16c", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5057 .{ .param_str = "iV32c", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
51545058 .{ .param_str = "V16cV2OiV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51555059 .{ .param_str = "vV16c*V2OiUc", .features = "avx512vl" },
51565060 .{ .param_str = "V16cV4OiV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51575061 .{ .param_str = "vV16c*V4OiUc", .features = "avx512vl" },
5158 .{ .param_str = "V16cV8OiV16cUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5159 .{ .param_str = "vV16c*V8OiUc", .features = "avx512f,evex512" },
5062 .{ .param_str = "V16cV8OiV16cUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
5063 .{ .param_str = "vV16c*V8OiUc", .features = "avx512f" },
51605064 .{ .param_str = "V4iV2OiV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51615065 .{ .param_str = "vV4i*V2OiUc", .features = "avx512vl" },
51625066 .{ .param_str = "vV4i*V4OiUc", .features = "avx512vl" },
5163 .{ .param_str = "V8iV8OiV8iUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5164 .{ .param_str = "vV8i*V8OiUc", .features = "avx512f,evex512" },
5067 .{ .param_str = "V8iV8OiV8iUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
5068 .{ .param_str = "vV8i*V8OiUc", .features = "avx512f" },
51655069 .{ .param_str = "V8sV2OiV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51665070 .{ .param_str = "vV8s*V2OiUc", .features = "avx512vl" },
51675071 .{ .param_str = "V8sV4OiV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51685072 .{ .param_str = "vV8s*V4OiUc", .features = "avx512vl" },
5169 .{ .param_str = "V8sV8OiV8sUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5170 .{ .param_str = "vV8s*V8OiUc", .features = "avx512f,evex512" },
5073 .{ .param_str = "V8sV8OiV8sUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
5074 .{ .param_str = "vV8s*V8OiUc", .features = "avx512f" },
51715075 .{ .param_str = "V16cV4iV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51725076 .{ .param_str = "vV16c*V4iUc", .features = "avx512vl" },
51735077 .{ .param_str = "V16cV8iV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51745078 .{ .param_str = "vV16c*V8iUc", .features = "avx512vl" },
5175 .{ .param_str = "V16cV16iV16cUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5176 .{ .param_str = "vV16c*V16iUs", .features = "avx512f,evex512" },
5079 .{ .param_str = "V16cV16iV16cUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
5080 .{ .param_str = "vV16c*V16iUs", .features = "avx512f" },
51775081 .{ .param_str = "V8sV4iV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51785082 .{ .param_str = "vV8s*V4iUc", .features = "avx512vl" },
51795083 .{ .param_str = "V8sV8iV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51805084 .{ .param_str = "vV8s*V8iUc", .features = "avx512vl" },
5181 .{ .param_str = "V16sV16iV16sUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5182 .{ .param_str = "vV16s*V16iUs", .features = "avx512f,evex512" },
5085 .{ .param_str = "V16sV16iV16sUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
5086 .{ .param_str = "vV16s*V16iUs", .features = "avx512f" },
51835087 .{ .param_str = "V16cV2OiV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51845088 .{ .param_str = "vV16c*V2OiUc", .features = "avx512vl" },
51855089 .{ .param_str = "V16cV4OiV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51865090 .{ .param_str = "vV16c*V4OiUc", .features = "avx512vl" },
5187 .{ .param_str = "V16cV8OiV16cUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5188 .{ .param_str = "vV16c*V8OiUc", .features = "avx512f,evex512" },
5091 .{ .param_str = "V16cV8OiV16cUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
5092 .{ .param_str = "vV16c*V8OiUc", .features = "avx512f" },
51895093 .{ .param_str = "V4iV2OiV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51905094 .{ .param_str = "vV4i*V2OiUc", .features = "avx512vl" },
51915095 .{ .param_str = "V4iV4OiV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51925096 .{ .param_str = "vV4i*V4OiUc", .features = "avx512vl" },
5193 .{ .param_str = "V8iV8OiV8iUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5194 .{ .param_str = "vV8i*V8OiUc", .features = "avx512f,evex512" },
5097 .{ .param_str = "V8iV8OiV8iUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
5098 .{ .param_str = "vV8i*V8OiUc", .features = "avx512f" },
51955099 .{ .param_str = "V8sV2OiV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51965100 .{ .param_str = "vV8s*V2OiUc", .features = "avx512vl" },
51975101 .{ .param_str = "V8sV4OiV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
51985102 .{ .param_str = "vV8s*V4OiUc", .features = "avx512vl" },
5199 .{ .param_str = "V8sV8OiV8sUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5200 .{ .param_str = "vV8s*V8OiUc", .features = "avx512f,evex512" },
5103 .{ .param_str = "V8sV8OiV8sUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
5104 .{ .param_str = "vV8s*V8OiUc", .features = "avx512f" },
52015105 .{ .param_str = "V16cV8sV16cUc", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
52025106 .{ .param_str = "vV16c*V8sUc", .features = "avx512vl,avx512bw" },
52035107 .{ .param_str = "V16cV16sV16cUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
52045108 .{ .param_str = "vV16c*V16sUs", .features = "avx512vl,avx512bw" },
5205 .{ .param_str = "V32cV32sV32cUi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5206 .{ .param_str = "vV32c*V32sUi", .features = "avx512bw,evex512" },
5109 .{ .param_str = "V32cV32sV32cUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
5110 .{ .param_str = "vV32c*V32sUi", .features = "avx512bw" },
52075111 .{ .param_str = "V16cV4iV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52085112 .{ .param_str = "vV16c*V4iUc", .features = "avx512vl" },
52095113 .{ .param_str = "V16cV8iV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52105114 .{ .param_str = "vV16c*V8iUc", .features = "avx512vl" },
5211 .{ .param_str = "V16cV16iV16cUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5212 .{ .param_str = "vV16c*V16iUs", .features = "avx512f,evex512" },
5115 .{ .param_str = "V16cV16iV16cUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
5116 .{ .param_str = "vV16c*V16iUs", .features = "avx512f" },
52135117 .{ .param_str = "V8sV4iV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52145118 .{ .param_str = "vV8s*V4iUc", .features = "avx512vl" },
52155119 .{ .param_str = "V8sV8iV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52165120 .{ .param_str = "vV8s*V8iUc", .features = "avx512vl" },
5217 .{ .param_str = "V16sV16iV16sUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5218 .{ .param_str = "vV16s*V16iUs", .features = "avx512f,evex512" },
5121 .{ .param_str = "V16sV16iV16sUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
5122 .{ .param_str = "vV16s*V16iUs", .features = "avx512f" },
52195123 .{ .param_str = "V16cV2OiV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52205124 .{ .param_str = "vV16c*V2OiUc", .features = "avx512vl" },
52215125 .{ .param_str = "V16cV4OiV16cUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52225126 .{ .param_str = "vV16c*V4OiUc", .features = "avx512vl" },
5223 .{ .param_str = "V16cV8OiV16cUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5224 .{ .param_str = "vV16c*V8OiUc", .features = "avx512f,evex512" },
5127 .{ .param_str = "V16cV8OiV16cUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
5128 .{ .param_str = "vV16c*V8OiUc", .features = "avx512f" },
52255129 .{ .param_str = "V4iV2OiV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52265130 .{ .param_str = "vV4i*V2OiUc", .features = "avx512vl" },
52275131 .{ .param_str = "V4iV4OiV4iUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52285132 .{ .param_str = "vV4i*V4OiUc", .features = "avx512vl" },
5229 .{ .param_str = "V8iV8OiV8iUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5230 .{ .param_str = "vV8i*V8OiUc", .features = "avx512f,evex512" },
5133 .{ .param_str = "V8iV8OiV8iUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
5134 .{ .param_str = "vV8i*V8OiUc", .features = "avx512f" },
52315135 .{ .param_str = "V8sV2OiV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52325136 .{ .param_str = "vV8s*V2OiUc", .features = "avx512vl" },
52335137 .{ .param_str = "V8sV4OiV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
52345138 .{ .param_str = "vV8s*V4OiUc", .features = "avx512vl" },
5235 .{ .param_str = "V8sV8OiV8sUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5236 .{ .param_str = "vV8s*V8OiUc", .features = "avx512f,evex512" },
5139 .{ .param_str = "V8sV8OiV8sUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
5140 .{ .param_str = "vV8s*V8OiUc", .features = "avx512f" },
52375141 .{ .param_str = "V16cV8sV16cUc", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
52385142 .{ .param_str = "vV16c*V8sUc", .features = "avx512vl,avx512bw" },
52395143 .{ .param_str = "V16cV16sV16cUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
52405144 .{ .param_str = "vV16c*V16sUs", .features = "avx512vl,avx512bw" },
5241 .{ .param_str = "V32cV32sV32cUi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5242 .{ .param_str = "vV32c*V32sUi", .features = "avx512bw,evex512" },
5145 .{ .param_str = "V32cV32sV32cUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
5146 .{ .param_str = "vV32c*V32sUi", .features = "avx512bw" },
52435147 .{ .param_str = "V16cV8sV16cUc", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
52445148 .{ .param_str = "vV16c*V8sUc", .features = "avx512vl,avx512bw" },
52455149 .{ .param_str = "vV16c*V16sUs", .features = "avx512vl,avx512bw" },
5246 .{ .param_str = "V32cV32sV32cUi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5247 .{ .param_str = "vV32c*V32sUi", .features = "avx512bw,evex512" },
5248 .{ .param_str = "V2OiV4iV4i", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5249 .{ .param_str = "V4OiV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5250 .{ .param_str = "V8OiV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5251 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true } },
5252 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5253 .{ .param_str = "V32sV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5254 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true } },
5255 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5256 .{ .param_str = "V32sV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5257 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true } },
5258 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5259 .{ .param_str = "V32sV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5260 .{ .param_str = "V2OiV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true } },
5261 .{ .param_str = "V4OiV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5262 .{ .param_str = "V8OiV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5150 .{ .param_str = "V32cV32sV32cUi", .features = "avx512bw", .attributes = .{ .@"const" = true } },
5151 .{ .param_str = "vV32c*V32sUi", .features = "avx512bw" },
5152 .{ .param_str = "V2OiV4iV4i", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5153 .{ .param_str = "V4OiV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5154 .{ .param_str = "V8OiV16iV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5155 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5156 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5157 .{ .param_str = "V32sV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5158 .{ .param_str = "V8UsV8UsV8Us", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5159 .{ .param_str = "V16UsV16UsV16Us", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5160 .{ .param_str = "V32UsV32UsV32Us", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5161 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5162 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5163 .{ .param_str = "V32sV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5164 .{ .param_str = "V2OiV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5165 .{ .param_str = "V4OiV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5166 .{ .param_str = "V8OiV16iV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
52635167 .{ .param_str = "vvC*", .features = "movrs", .attributes = .{ .@"const" = true } },
5264 .{ .param_str = "V4iV4iIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5265 .{ .param_str = "V8iV8iIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5266 .{ .param_str = "V16iV16iIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5267 .{ .param_str = "V2OiV2OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5268 .{ .param_str = "V4OiV4OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5269 .{ .param_str = "V8OiV8OiIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5270 .{ .param_str = "V4iV4iV4i", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5271 .{ .param_str = "V8iV8iV8i", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5272 .{ .param_str = "V16iV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5273 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5274 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5275 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5276 .{ .param_str = "V4iV4iIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5277 .{ .param_str = "V8iV8iIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5278 .{ .param_str = "V16iV16iIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5279 .{ .param_str = "V2OiV2OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5280 .{ .param_str = "V4OiV4OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5281 .{ .param_str = "V8OiV8OiIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5282 .{ .param_str = "V4iV4iV4i", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5283 .{ .param_str = "V8iV8iV8i", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5284 .{ .param_str = "V16iV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5285 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5286 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5287 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5168 .{ .param_str = "V4iV4iIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5169 .{ .param_str = "V8iV8iIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5170 .{ .param_str = "V16iV16iIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5171 .{ .param_str = "V2OiV2OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5172 .{ .param_str = "V4OiV4OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5173 .{ .param_str = "V8OiV8OiIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5174 .{ .param_str = "V4iV4iIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5175 .{ .param_str = "V8iV8iIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5176 .{ .param_str = "V16iV16iIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5177 .{ .param_str = "V2OiV2OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5178 .{ .param_str = "V4OiV4OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5179 .{ .param_str = "V8OiV8OiIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
52885180 .{ .param_str = "V2OiV16cV16c", .features = "sse2", .attributes = .{ .@"const" = true } },
52895181 .{ .param_str = "V4OiV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true } },
5290 .{ .param_str = "V8OiV64cV64c", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5291 .{ .param_str = "V16cV16cV16c", .features = "ssse3", .attributes = .{ .@"const" = true } },
5292 .{ .param_str = "V32cV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true } },
5293 .{ .param_str = "V64cV64cV64c", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5294 .{ .param_str = "V4iV4iIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5295 .{ .param_str = "V8iV8iIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5296 .{ .param_str = "V16iV16iIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5297 .{ .param_str = "V8sV8sIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5298 .{ .param_str = "V16sV16sIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5299 .{ .param_str = "V32sV32sIi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5300 .{ .param_str = "V8sV8sIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5301 .{ .param_str = "V16sV16sIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5302 .{ .param_str = "V32sV32sIi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5303 .{ .param_str = "V16cV16cV16c", .features = "ssse3", .attributes = .{ .@"const" = true } },
5304 .{ .param_str = "V32cV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true } },
5305 .{ .param_str = "V4iV4iV4i", .features = "ssse3", .attributes = .{ .@"const" = true } },
5306 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5307 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true } },
5308 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true } },
5309 .{ .param_str = "V4iV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true } },
5310 .{ .param_str = "V8iV8iV4i", .features = "avx2", .attributes = .{ .@"const" = true } },
5311 .{ .param_str = "V16iV16iV4i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5312 .{ .param_str = "V4iV4ii", .features = "sse2", .attributes = .{ .@"const" = true } },
5313 .{ .param_str = "V8iV8ii", .features = "avx2", .attributes = .{ .@"const" = true } },
5314 .{ .param_str = "V16iV16ii", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5315 .{ .param_str = "V2OiV2OiIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5316 .{ .param_str = "V4OiV4OiIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5317 .{ .param_str = "V8OiV8OiIi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5318 .{ .param_str = "V2OiV2OiV2Oi", .features = "sse2", .attributes = .{ .@"const" = true } },
5319 .{ .param_str = "V4OiV4OiV2Oi", .features = "avx2", .attributes = .{ .@"const" = true } },
5320 .{ .param_str = "V8OiV8OiV2Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5321 .{ .param_str = "V2OiV2Oii", .features = "sse2", .attributes = .{ .@"const" = true } },
5322 .{ .param_str = "V4OiV4Oii", .features = "avx2", .attributes = .{ .@"const" = true } },
5323 .{ .param_str = "V8OiV8Oii", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5324 .{ .param_str = "V16sV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5325 .{ .param_str = "V16iV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5326 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx2", .attributes = .{ .@"const" = true } },
5327 .{ .param_str = "V32sV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5328 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx2", .attributes = .{ .@"const" = true } },
5329 .{ .param_str = "V4iV4iV4i", .features = "avx2", .attributes = .{ .@"const" = true } },
5330 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5331 .{ .param_str = "V8sV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5332 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5333 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true } },
5334 .{ .param_str = "V16sV16sV8s", .features = "avx2", .attributes = .{ .@"const" = true } },
5335 .{ .param_str = "V32sV32sV8s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5336 .{ .param_str = "V8sV8si", .features = "sse2", .attributes = .{ .@"const" = true } },
5337 .{ .param_str = "V16sV16si", .features = "avx2", .attributes = .{ .@"const" = true } },
5338 .{ .param_str = "V32sV32si", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5339 .{ .param_str = "V4iV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true } },
5340 .{ .param_str = "V8iV8iV4i", .features = "avx2", .attributes = .{ .@"const" = true } },
5341 .{ .param_str = "V16iV16iV4i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5342 .{ .param_str = "V4iV4ii", .features = "sse2", .attributes = .{ .@"const" = true } },
5343 .{ .param_str = "V8iV8ii", .features = "avx2", .attributes = .{ .@"const" = true } },
5344 .{ .param_str = "V16iV16ii", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5345 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5346 .{ .param_str = "V4OiV4OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5347 .{ .param_str = "V8OiV8OiV2Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5348 .{ .param_str = "V2OiV2Oii", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5349 .{ .param_str = "V4OiV4Oii", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5350 .{ .param_str = "V8OiV8Oii", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5351 .{ .param_str = "V16sV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5352 .{ .param_str = "V16iV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5353 .{ .param_str = "V32sV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5354 .{ .param_str = "V4iV4iV4i", .features = "avx2", .attributes = .{ .@"const" = true } },
5355 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5356 .{ .param_str = "V8sV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5357 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5358 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5359 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5360 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true } },
5361 .{ .param_str = "V16sV16sV8s", .features = "avx2", .attributes = .{ .@"const" = true } },
5362 .{ .param_str = "V32sV32sV8s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5363 .{ .param_str = "V8sV8si", .features = "sse2", .attributes = .{ .@"const" = true } },
5364 .{ .param_str = "V16sV16si", .features = "avx2", .attributes = .{ .@"const" = true } },
5365 .{ .param_str = "V32sV32si", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5366 .{ .param_str = "V4iV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true } },
5367 .{ .param_str = "V8iV8iV4i", .features = "avx2", .attributes = .{ .@"const" = true } },
5368 .{ .param_str = "V16iV16iV4i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5369 .{ .param_str = "V4iV4ii", .features = "sse2", .attributes = .{ .@"const" = true } },
5370 .{ .param_str = "V8iV8ii", .features = "avx2", .attributes = .{ .@"const" = true } },
5371 .{ .param_str = "V16iV16ii", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5372 .{ .param_str = "V2OiV2OiIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5373 .{ .param_str = "V4OiV4OiIi", .features = "avx2", .attributes = .{ .@"const" = true } },
5374 .{ .param_str = "V8OiV8OiIi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5375 .{ .param_str = "V2OiV2OiV2Oi", .features = "sse2", .attributes = .{ .@"const" = true } },
5376 .{ .param_str = "V4OiV4OiV2Oi", .features = "avx2", .attributes = .{ .@"const" = true } },
5377 .{ .param_str = "V8OiV8OiV2Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5378 .{ .param_str = "V2OiV2Oii", .features = "sse2", .attributes = .{ .@"const" = true } },
5379 .{ .param_str = "V4OiV4Oii", .features = "avx2", .attributes = .{ .@"const" = true } },
5380 .{ .param_str = "V8OiV8Oii", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5381 .{ .param_str = "V16sV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5382 .{ .param_str = "V16iV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5383 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx2", .attributes = .{ .@"const" = true } },
5384 .{ .param_str = "V32sV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5385 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx2", .attributes = .{ .@"const" = true } },
5386 .{ .param_str = "V4iV4iV4i", .features = "avx2", .attributes = .{ .@"const" = true } },
5387 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5388 .{ .param_str = "V8sV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5389 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true } },
5390 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true } },
5391 .{ .param_str = "V16sV16sV8s", .features = "avx2", .attributes = .{ .@"const" = true } },
5392 .{ .param_str = "V32sV32sV8s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5393 .{ .param_str = "V8sV8si", .features = "sse2", .attributes = .{ .@"const" = true } },
5394 .{ .param_str = "V16sV16si", .features = "avx2", .attributes = .{ .@"const" = true } },
5395 .{ .param_str = "V32sV32si", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5396 .{ .param_str = "V4iV4iV4iV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5397 .{ .param_str = "V4iV4iV4iV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5398 .{ .param_str = "V8iV8iV8iV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5399 .{ .param_str = "V8iV8iV8iV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5400 .{ .param_str = "V16iV16iV16iV16iIiUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5401 .{ .param_str = "V16iV16iV16iV16iIiUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5402 .{ .param_str = "V2OiV2OiV2OiV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5403 .{ .param_str = "V2OiV2OiV2OiV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5404 .{ .param_str = "V4OiV4OiV4OiV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5405 .{ .param_str = "V4OiV4OiV4OiV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5406 .{ .param_str = "V8OiV8OiV8OiV8OiIiUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5407 .{ .param_str = "V8OiV8OiV8OiV8OiIiUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5408 .{ .param_str = "iV2OiV2Oi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5409 .{ .param_str = "iV4OiV4Oi", .features = "avx", .attributes = .{ .@"const" = true } },
5410 .{ .param_str = "iV2OiV2Oi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5411 .{ .param_str = "iV4OiV4Oi", .features = "avx", .attributes = .{ .@"const" = true } },
5412 .{ .param_str = "iV2OiV2Oi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5413 .{ .param_str = "iV4OiV4Oi", .features = "avx", .attributes = .{ .@"const" = true } },
5182 .{ .param_str = "V8OiV64cV64c", .features = "avx512bw", .attributes = .{ .@"const" = true } },
5183 .{ .param_str = "V16cV16cV16c", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5184 .{ .param_str = "V32cV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5185 .{ .param_str = "V64cV64cV64c", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5186 .{ .param_str = "V4iV4iIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5187 .{ .param_str = "V8iV8iIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5188 .{ .param_str = "V16iV16iIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5189 .{ .param_str = "V8sV8sIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5190 .{ .param_str = "V16sV16sIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5191 .{ .param_str = "V32sV32sIi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5192 .{ .param_str = "V8sV8sIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5193 .{ .param_str = "V16sV16sIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5194 .{ .param_str = "V32sV32sIi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5195 .{ .param_str = "V16cV16cV16c", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5196 .{ .param_str = "V32cV32cV32c", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5197 .{ .param_str = "V4iV4iV4i", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5198 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5199 .{ .param_str = "V8sV8sV8s", .features = "ssse3", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5200 .{ .param_str = "V16sV16sV16s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5201 .{ .param_str = "V4iV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5202 .{ .param_str = "V8iV8iV4i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5203 .{ .param_str = "V16iV16iV4i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5204 .{ .param_str = "V4iV4ii", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5205 .{ .param_str = "V8iV8ii", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5206 .{ .param_str = "V16iV16ii", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5207 .{ .param_str = "V16cV16cIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5208 .{ .param_str = "V32cV32cIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5209 .{ .param_str = "V64cV64cIi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5210 .{ .param_str = "V2OiV2OiV2Oi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5211 .{ .param_str = "V4OiV4OiV2Oi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5212 .{ .param_str = "V8OiV8OiV2Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5213 .{ .param_str = "V2OiV2Oii", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5214 .{ .param_str = "V4OiV4Oii", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5215 .{ .param_str = "V8OiV8Oii", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5216 .{ .param_str = "V16sV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5217 .{ .param_str = "V16iV16iV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5218 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5219 .{ .param_str = "V32sV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5220 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5221 .{ .param_str = "V4iV4iV4i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5222 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5223 .{ .param_str = "V8sV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5224 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5225 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5226 .{ .param_str = "V16sV16sV8s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5227 .{ .param_str = "V32sV32sV8s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5228 .{ .param_str = "V8sV8si", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5229 .{ .param_str = "V16sV16si", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5230 .{ .param_str = "V32sV32si", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5231 .{ .param_str = "V4iV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5232 .{ .param_str = "V8iV8iV4i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5233 .{ .param_str = "V16iV16iV4i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5234 .{ .param_str = "V4iV4ii", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5235 .{ .param_str = "V8iV8ii", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5236 .{ .param_str = "V16iV16ii", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5237 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5238 .{ .param_str = "V4OiV4OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5239 .{ .param_str = "V8OiV8OiV2Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5240 .{ .param_str = "V2OiV2Oii", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5241 .{ .param_str = "V4OiV4Oii", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5242 .{ .param_str = "V8OiV8Oii", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5243 .{ .param_str = "V16sV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5244 .{ .param_str = "V16iV16iV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5245 .{ .param_str = "V32sV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5246 .{ .param_str = "V4iV4iV4i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5247 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5248 .{ .param_str = "V8sV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5249 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5250 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5251 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5252 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5253 .{ .param_str = "V16sV16sV8s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5254 .{ .param_str = "V32sV32sV8s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5255 .{ .param_str = "V8sV8si", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5256 .{ .param_str = "V16sV16si", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5257 .{ .param_str = "V32sV32si", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5258 .{ .param_str = "V4iV4iV4i", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5259 .{ .param_str = "V8iV8iV4i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5260 .{ .param_str = "V16iV16iV4i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5261 .{ .param_str = "V4iV4ii", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5262 .{ .param_str = "V8iV8ii", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5263 .{ .param_str = "V16iV16ii", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5264 .{ .param_str = "V16cV16cIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5265 .{ .param_str = "V32cV32cIi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5266 .{ .param_str = "V64cV64cIi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5267 .{ .param_str = "V2OiV2OiV2Oi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5268 .{ .param_str = "V4OiV4OiV2Oi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5269 .{ .param_str = "V8OiV8OiV2Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5270 .{ .param_str = "V2OiV2Oii", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5271 .{ .param_str = "V4OiV4Oii", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5272 .{ .param_str = "V8OiV8Oii", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5273 .{ .param_str = "V16sV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5274 .{ .param_str = "V16iV16iV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5275 .{ .param_str = "V2OiV2OiV2Oi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5276 .{ .param_str = "V32sV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5277 .{ .param_str = "V4OiV4OiV4Oi", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5278 .{ .param_str = "V4iV4iV4i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5279 .{ .param_str = "V8OiV8OiV8Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5280 .{ .param_str = "V8sV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5281 .{ .param_str = "V8iV8iV8i", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5282 .{ .param_str = "V8sV8sV8s", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5283 .{ .param_str = "V16sV16sV8s", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5284 .{ .param_str = "V32sV32sV8s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5285 .{ .param_str = "V8sV8si", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5286 .{ .param_str = "V16sV16si", .features = "avx2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5287 .{ .param_str = "V32sV32si", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5288 .{ .param_str = "V4iV4iV4iV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5289 .{ .param_str = "V4iV4iV4iV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5290 .{ .param_str = "V8iV8iV8iV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5291 .{ .param_str = "V8iV8iV8iV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5292 .{ .param_str = "V16iV16iV16iV16iIiUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5293 .{ .param_str = "V16iV16iV16iV16iIiUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5294 .{ .param_str = "V2OiV2OiV2OiV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5295 .{ .param_str = "V2OiV2OiV2OiV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5296 .{ .param_str = "V4OiV4OiV4OiV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5297 .{ .param_str = "V4OiV4OiV4OiV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5298 .{ .param_str = "V8OiV8OiV8OiV8OiIiUc", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5299 .{ .param_str = "V8OiV8OiV8OiV8OiIiUc", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5300 .{ .param_str = "iV2OiV2Oi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5301 .{ .param_str = "iV4OiV4Oi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5302 .{ .param_str = "iV2OiV2Oi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5303 .{ .param_str = "iV4OiV4Oi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5304 .{ .param_str = "iV2OiV2Oi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5305 .{ .param_str = "iV4OiV4Oi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
54145306 .{ .param_str = "vUi", .features = "ptwrite" },
54155307 .{ .param_str = "V2dV2dV2dIiV2dUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
54165308 .{ .param_str = "V4dV4dV4dIiV4dUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
5417 .{ .param_str = "V8dV8dV8dIiV8dUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
5309 .{ .param_str = "V8dV8dV8dIiV8dUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
54185310 .{ .param_str = "V4fV4fV4fIiV4fUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
54195311 .{ .param_str = "V8fV8fV8fIiV8fUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
5420 .{ .param_str = "V16fV16fV16fIiV16fUsIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
5312 .{ .param_str = "V16fV16fV16fIiV16fUsIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
54215313 .{ .param_str = "V2dV2dV2dV2dUcIiIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
54225314 .{ .param_str = "V4fV4fV4fV4fUcIiIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
54235315 .{ .param_str = "V2dV2dV2dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
54245316 .{ .param_str = "V4dV4dV4dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5425 .{ .param_str = "V8dV8dV8dUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5317 .{ .param_str = "V8dV8dV8dUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
54265318 .{ .param_str = "V4fV4fV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
54275319 .{ .param_str = "V8fV8fV8fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5428 .{ .param_str = "V16fV16fV16fUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5320 .{ .param_str = "V16fV16fV16fUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
54295321 .{ .param_str = "V2dV2dV2dV2dUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
54305322 .{ .param_str = "V4fV4fV4fV4fUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
54315323 .{ .param_str = "V8xV8xV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
54325324 .{ .param_str = "V16xV16xV16xUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5433 .{ .param_str = "V32xV32xV32xUi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5325 .{ .param_str = "V32xV32xV32xUi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
54345326 .{ .param_str = "V4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
54355327 .{ .param_str = "V8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
54365328 .{ .param_str = "V8xV8xV8xV8xUc", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
......@@ -5447,47 +5339,47 @@ pub const data = blk: {
54475339 .{ .param_str = "UOi" },
54485340 .{ .param_str = "UOiUi*" },
54495341 .{ .param_str = "Ui" },
5450 .{ .param_str = "ddV8d", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5342 .{ .param_str = "ddV8d", .features = "avx512f", .attributes = .{ .@"const" = true } },
54515343 .{ .param_str = "xxV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
54525344 .{ .param_str = "xxV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5453 .{ .param_str = "xxV32x", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5454 .{ .param_str = "ffV16f", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5455 .{ .param_str = "dV8d", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5345 .{ .param_str = "xxV32x", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5346 .{ .param_str = "ffV16f", .features = "avx512f", .attributes = .{ .@"const" = true } },
5347 .{ .param_str = "dV8d", .features = "avx512f", .attributes = .{ .@"const" = true } },
54565348 .{ .param_str = "xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
54575349 .{ .param_str = "xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5458 .{ .param_str = "xV32x", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5459 .{ .param_str = "fV16f", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5460 .{ .param_str = "dV8d", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5350 .{ .param_str = "xV32x", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5351 .{ .param_str = "fV16f", .features = "avx512f", .attributes = .{ .@"const" = true } },
5352 .{ .param_str = "dV8d", .features = "avx512f", .attributes = .{ .@"const" = true } },
54615353 .{ .param_str = "xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
54625354 .{ .param_str = "xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5463 .{ .param_str = "xV32x", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5464 .{ .param_str = "fV16f", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5465 .{ .param_str = "ddV8d", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5355 .{ .param_str = "xV32x", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5356 .{ .param_str = "fV16f", .features = "avx512f", .attributes = .{ .@"const" = true } },
5357 .{ .param_str = "ddV8d", .features = "avx512f", .attributes = .{ .@"const" = true } },
54665358 .{ .param_str = "xxV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
54675359 .{ .param_str = "xxV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5468 .{ .param_str = "xxV32x", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5469 .{ .param_str = "ffV16f", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5360 .{ .param_str = "xxV32x", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5361 .{ .param_str = "ffV16f", .features = "avx512f", .attributes = .{ .@"const" = true } },
54705362 .{ .param_str = "V2dV2dIiV2dUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
54715363 .{ .param_str = "V4dV4dIiV4dUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
5472 .{ .param_str = "V8dV8dIiV8dUcIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
5364 .{ .param_str = "V8dV8dIiV8dUcIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
54735365 .{ .param_str = "V8xV8xIiV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
54745366 .{ .param_str = "V16xV16xIiV16xUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5475 .{ .param_str = "V32xV32xIiV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5367 .{ .param_str = "V32xV32xIiV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
54765368 .{ .param_str = "V4fV4fIiV4fUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
54775369 .{ .param_str = "V8fV8fIiV8fUc", .features = "avx512vl,avx512dq", .attributes = .{ .@"const" = true } },
5478 .{ .param_str = "V16fV16fIiV16fUsIi", .features = "avx512dq,evex512", .attributes = .{ .@"const" = true } },
5370 .{ .param_str = "V16fV16fIiV16fUsIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
54795371 .{ .param_str = "V2dV2dV2dV2dUcIiIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
54805372 .{ .param_str = "V8xV8xV8xV8xUcIiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
54815373 .{ .param_str = "V4fV4fV4fV4fUcIiIi", .features = "avx512dq", .attributes = .{ .@"const" = true } },
54825374 .{ .param_str = "V2dV2dIiV2dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
54835375 .{ .param_str = "V4dV4dIiV4dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5484 .{ .param_str = "V8dV8dIiV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5376 .{ .param_str = "V8dV8dIiV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
54855377 .{ .param_str = "V8xV8xIiV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
54865378 .{ .param_str = "V16xV16xIiV16xUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5487 .{ .param_str = "V32xV32xIiV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5379 .{ .param_str = "V32xV32xIiV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
54885380 .{ .param_str = "V4fV4fIiV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
54895381 .{ .param_str = "V8fV8fIiV8fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5490 .{ .param_str = "V16fV16fIiV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5382 .{ .param_str = "V16fV16fIiV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
54915383 .{ .param_str = "V2dV2dV2dV2dUcIiIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
54925384 .{ .param_str = "V8xV8xV8xV8xUcIiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
54935385 .{ .param_str = "V4fV4fV4fV4fUcIiIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
......@@ -5499,15 +5391,15 @@ pub const data = blk: {
54995391 .{ .param_str = "V4fV4fV4fIi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
55005392 .{ .param_str = "V2dV2dV2dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
55015393 .{ .param_str = "V4dV4dV4dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5502 .{ .param_str = "V8dV8dV8dUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5394 .{ .param_str = "V8dV8dV8dUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
55035395 .{ .param_str = "V4fV4fV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
55045396 .{ .param_str = "V8fV8fV8fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5505 .{ .param_str = "V16fV16fV16fUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5397 .{ .param_str = "V16fV16fV16fUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
55065398 .{ .param_str = "V2dV2dV2dV2dUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
55075399 .{ .param_str = "V4fV4fV4fV4fUc", .features = "avx512f", .attributes = .{ .@"const" = true } },
55085400 .{ .param_str = "V8xV8xV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
55095401 .{ .param_str = "V16xV16xV16xUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5510 .{ .param_str = "V32xV32xV32xUi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5402 .{ .param_str = "V32xV32xV32xUi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
55115403 .{ .param_str = "V4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
55125404 .{ .param_str = "V8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
55135405 .{ .param_str = "V8xV8xV8xV8xUc", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
......@@ -5516,68 +5408,68 @@ pub const data = blk: {
55165408 .{ .param_str = "v", .features = "shstk" },
55175409 .{ .param_str = "V2dV2dV2dV2dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
55185410 .{ .param_str = "V4dV4dV4dV4dUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5519 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5411 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
55205412 .{ .param_str = "V8xV8xV8xV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
55215413 .{ .param_str = "V16xV16xV16xV16xUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5522 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5414 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
55235415 .{ .param_str = "V4fV4fV4fV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
55245416 .{ .param_str = "V8fV8fV8fV8fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5525 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5417 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
55265418 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
55275419 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
55285420 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5529 .{ .param_str = "vv*UcV8OiV8fIi", .features = "avx512f,evex512" },
5530 .{ .param_str = "vv*UcV8OiV8iIi", .features = "avx512f,evex512" },
5421 .{ .param_str = "vv*UcV8OiV8fIi", .features = "avx512f" },
5422 .{ .param_str = "vv*UcV8OiV8iIi", .features = "avx512f" },
55315423 .{ .param_str = "vv*UcV2OiV2dIi", .features = "avx512vl" },
55325424 .{ .param_str = "vv*UcV2OiV2OiIi", .features = "avx512vl" },
55335425 .{ .param_str = "vv*UcV4OiV4dIi", .features = "avx512vl" },
55345426 .{ .param_str = "vv*UcV4OiV4OiIi", .features = "avx512vl" },
55355427 .{ .param_str = "vv*UcV2OiV4fIi", .features = "avx512vl" },
55365428 .{ .param_str = "vv*UcV2OiV4iIi", .features = "avx512vl" },
5537 .{ .param_str = "vv*UcV8OiV8dIi", .features = "avx512f,evex512" },
5538 .{ .param_str = "vv*UcV8OiV8OiIi", .features = "avx512f,evex512" },
5429 .{ .param_str = "vv*UcV8OiV8dIi", .features = "avx512f" },
5430 .{ .param_str = "vv*UcV8OiV8OiIi", .features = "avx512f" },
55395431 .{ .param_str = "vv*UcV4OiV4fIi", .features = "avx512vl" },
55405432 .{ .param_str = "vv*UcV4OiV4iIi", .features = "avx512vl" },
5541 .{ .param_str = "vv*UsV16iV16fIi", .features = "avx512f,evex512" },
5542 .{ .param_str = "vv*UsV16iV16iIi", .features = "avx512f,evex512" },
5433 .{ .param_str = "vv*UsV16iV16fIi", .features = "avx512f" },
5434 .{ .param_str = "vv*UsV16iV16iIi", .features = "avx512f" },
55435435 .{ .param_str = "vv*UcV4iV2dIi", .features = "avx512vl" },
55445436 .{ .param_str = "vv*UcV4iV2OiIi", .features = "avx512vl" },
55455437 .{ .param_str = "vv*UcV4iV4dIi", .features = "avx512vl" },
55465438 .{ .param_str = "vv*UcV4iV4OiIi", .features = "avx512vl" },
55475439 .{ .param_str = "vv*UcV4iV4fIi", .features = "avx512vl" },
55485440 .{ .param_str = "vv*UcV4iV4iIi", .features = "avx512vl" },
5549 .{ .param_str = "vv*UcV8iV8dIi", .features = "avx512f,evex512" },
5550 .{ .param_str = "vv*UcV8iV8OiIi", .features = "avx512f,evex512" },
5441 .{ .param_str = "vv*UcV8iV8dIi", .features = "avx512f" },
5442 .{ .param_str = "vv*UcV8iV8OiIi", .features = "avx512f" },
55515443 .{ .param_str = "vv*UcV8iV8fIi", .features = "avx512vl" },
55525444 .{ .param_str = "vv*UcV8iV8iIi", .features = "avx512vl" },
5553 .{ .param_str = "V16cUsV16cV16c", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5554 .{ .param_str = "V32cUiV32cV32c", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5555 .{ .param_str = "V64cUOiV64cV64c", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5556 .{ .param_str = "V4iUcV4iV4i", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5557 .{ .param_str = "V8iUcV8iV8i", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5558 .{ .param_str = "V16iUsV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5559 .{ .param_str = "V8yUcV8yV8y", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true } },
5560 .{ .param_str = "V16yUsV16yV16y", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true } },
5561 .{ .param_str = "V32yUiV32yV32y", .features = "avx512bf16,evex512", .attributes = .{ .@"const" = true } },
5562 .{ .param_str = "V2dUcV2dV2d", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5563 .{ .param_str = "V4dUcV4dV4d", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5564 .{ .param_str = "V8dUcV8dV8d", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5565 .{ .param_str = "V8xUcV8xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5566 .{ .param_str = "V16xUsV16xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5567 .{ .param_str = "V32xUiV32xV32x", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5568 .{ .param_str = "V4fUcV4fV4f", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5569 .{ .param_str = "V8fUcV8fV8f", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5570 .{ .param_str = "V16fUsV16fV16f", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5571 .{ .param_str = "V2OiUcV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5572 .{ .param_str = "V4OiUcV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5573 .{ .param_str = "V8OiUcV8OiV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5574 .{ .param_str = "V8yUcV8yV8y", .features = "avx512bf16", .attributes = .{ .@"const" = true } },
5575 .{ .param_str = "V2dUcV2dV2d", .features = "avx512f", .attributes = .{ .@"const" = true } },
5576 .{ .param_str = "V8xUcV8xV8x", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5577 .{ .param_str = "V4fUcV4fV4f", .features = "avx512f", .attributes = .{ .@"const" = true } },
5578 .{ .param_str = "V8sUcV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5579 .{ .param_str = "V16sUsV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true } },
5580 .{ .param_str = "V32sUiV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5445 .{ .param_str = "V16cUsV16cV16c", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5446 .{ .param_str = "V32cUiV32cV32c", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5447 .{ .param_str = "V64cUOiV64cV64c", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5448 .{ .param_str = "V4iUcV4iV4i", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5449 .{ .param_str = "V8iUcV8iV8i", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5450 .{ .param_str = "V16iUsV16iV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5451 .{ .param_str = "V8yUcV8yV8y", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5452 .{ .param_str = "V16yUsV16yV16y", .features = "avx512bf16,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5453 .{ .param_str = "V32yUiV32yV32y", .features = "avx512bf16", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5454 .{ .param_str = "V2dUcV2dV2d", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5455 .{ .param_str = "V4dUcV4dV4d", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5456 .{ .param_str = "V8dUcV8dV8d", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5457 .{ .param_str = "V8xUcV8xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5458 .{ .param_str = "V16xUsV16xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5459 .{ .param_str = "V32xUiV32xV32x", .features = "avx512fp16", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5460 .{ .param_str = "V4fUcV4fV4f", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5461 .{ .param_str = "V8fUcV8fV8f", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5462 .{ .param_str = "V16fUsV16fV16f", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5463 .{ .param_str = "V2OiUcV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5464 .{ .param_str = "V4OiUcV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5465 .{ .param_str = "V8OiUcV8OiV8Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5466 .{ .param_str = "V8yUcV8yV8y", .features = "avx512bf16", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5467 .{ .param_str = "V2dUcV2dV2d", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5468 .{ .param_str = "V8xUcV8xV8x", .features = "avx512fp16", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5469 .{ .param_str = "V4fUcV4fV4f", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5470 .{ .param_str = "V8sUcV8sV8s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5471 .{ .param_str = "V16sUsV16sV16s", .features = "avx512bw,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5472 .{ .param_str = "V32sUiV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
55815473 .{ .param_str = "v", .features = "serialize" },
55825474 .{ .param_str = "v", .features = "shstk" },
55835475 .{ .param_str = "v", .features = "sse" },
......@@ -5588,86 +5480,78 @@ pub const data = blk: {
55885480 .{ .param_str = "V4iV4iV4i", .features = "sha", .attributes = .{ .@"const" = true } },
55895481 .{ .param_str = "V4iV4iV4i", .features = "sha", .attributes = .{ .@"const" = true } },
55905482 .{ .param_str = "V4iV4iV4iV4i", .features = "sha", .attributes = .{ .@"const" = true } },
5591 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5592 .{ .param_str = "V8fV8fV8fIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5593 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5594 .{ .param_str = "V4dV4dV4dIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5595 .{ .param_str = "V16iV16iV16iIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5596 .{ .param_str = "V8iV8iV8iIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5597 .{ .param_str = "V8OiV8OiV8OiIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5598 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5599 .{ .param_str = "V2dV2dV2dIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5600 .{ .param_str = "V4dV4dV4dIi", .features = "avx", .attributes = .{ .@"const" = true } },
5601 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5602 .{ .param_str = "V4fV4fV4fIi", .features = "sse", .attributes = .{ .@"const" = true } },
5603 .{ .param_str = "V8fV8fV8fIi", .features = "avx", .attributes = .{ .@"const" = true } },
5604 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5483 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5484 .{ .param_str = "V8fV8fV8fIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5485 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5486 .{ .param_str = "V4dV4dV4dIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5487 .{ .param_str = "V16iV16iV16iIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5488 .{ .param_str = "V8iV8iV8iIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5489 .{ .param_str = "V8OiV8OiV8OiIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5490 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5491 .{ .param_str = "V2dV2dV2dIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5492 .{ .param_str = "V4dV4dV4dIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5493 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5494 .{ .param_str = "V4fV4fV4fIi", .features = "sse", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5495 .{ .param_str = "V8fV8fV8fIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5496 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
56055497 .{ .param_str = "v*", .features = "lwp" },
5606 .{ .param_str = "V2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
5607 .{ .param_str = "V4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
5608 .{ .param_str = "V8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5609 .{ .param_str = "V8xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5610 .{ .param_str = "V16xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5611 .{ .param_str = "V32xV32xIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5612 .{ .param_str = "V4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
5613 .{ .param_str = "V8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
5614 .{ .param_str = "V16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5615 .{ .param_str = "V2dV2d", .features = "sse2", .attributes = .{ .@"const" = true } },
5498 .{ .param_str = "V8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5499 .{ .param_str = "V32xV32xIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5500 .{ .param_str = "V16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
56165501 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
56175502 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5618 .{ .param_str = "V4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
56195503 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
56205504 .{ .param_str = "Ui", .features = "sse" },
56215505 .{ .param_str = "vV2d*V2dUc", .features = "avx512vl" },
56225506 .{ .param_str = "vV4d*V4dUc", .features = "avx512vl" },
5623 .{ .param_str = "vV8d*V8dUc", .features = "avx512f,evex512" },
5507 .{ .param_str = "vV8d*V8dUc", .features = "avx512f" },
56245508 .{ .param_str = "vV4f*V4fUc", .features = "avx512vl" },
56255509 .{ .param_str = "vV8f*V8fUc", .features = "avx512vl" },
5626 .{ .param_str = "vV16f*V16fUs", .features = "avx512f,evex512" },
5510 .{ .param_str = "vV16f*V16fUs", .features = "avx512f" },
56275511 .{ .param_str = "vV2Oi*V2OiUc", .features = "avx512vl" },
56285512 .{ .param_str = "vV4Oi*V4OiUc", .features = "avx512vl" },
5629 .{ .param_str = "vOi*V8OiUc", .features = "avx512f,evex512" },
5513 .{ .param_str = "vOi*V8OiUc", .features = "avx512f" },
56305514 .{ .param_str = "vV8s*V8sUc", .features = "avx512vl,avx512bw" },
56315515 .{ .param_str = "vV16s*V16sUs", .features = "avx512vl,avx512bw" },
5632 .{ .param_str = "vV32s*V32sUi", .features = "avx512bw,evex512" },
5516 .{ .param_str = "vV32s*V32sUi", .features = "avx512bw" },
56335517 .{ .param_str = "vV16c*V16cUs", .features = "avx512vl,avx512bw" },
56345518 .{ .param_str = "vV32c*V32cUi", .features = "avx512vl,avx512bw" },
5635 .{ .param_str = "vV64c*V64cUOi", .features = "avx512bw,evex512" },
5519 .{ .param_str = "vV64c*V64cUOi", .features = "avx512bw" },
56365520 .{ .param_str = "vV4i*V4iUc", .features = "avx512vl" },
56375521 .{ .param_str = "vV8i*V8iUc", .features = "avx512vl" },
5638 .{ .param_str = "vi*V16iUs", .features = "avx512f,evex512" },
5522 .{ .param_str = "vi*V16iUs", .features = "avx512f" },
56395523 .{ .param_str = "vV8y*V8yUc", .features = "avx10_2" },
56405524 .{ .param_str = "vV2d*V2dUc", .features = "avx512f" },
56415525 .{ .param_str = "vV8x*V8xUc", .features = "avx512fp16" },
56425526 .{ .param_str = "vV4f*V4fUc", .features = "avx512f" },
56435527 .{ .param_str = "vV2d*V2dUc", .features = "avx512vl" },
56445528 .{ .param_str = "vV4d*V4dUc", .features = "avx512vl" },
5645 .{ .param_str = "vd*V8dUc", .features = "avx512f,evex512" },
5529 .{ .param_str = "vd*V8dUc", .features = "avx512f" },
56465530 .{ .param_str = "vV4f*V4fUc", .features = "avx512vl" },
56475531 .{ .param_str = "vV8f*V8fUc", .features = "avx512vl" },
5648 .{ .param_str = "vf*V16fUs", .features = "avx512f,evex512" },
5532 .{ .param_str = "vf*V16fUs", .features = "avx512f" },
56495533 .{ .param_str = "UcUcUiUiUi*", .attributes = .{ .const_evaluable = true } },
5650 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5651 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5652 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5534 .{ .param_str = "V8dV8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5535 .{ .param_str = "V32xV32xV32xIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5536 .{ .param_str = "V16fV16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
56535537 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
56545538 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
56555539 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
56565540 .{ .param_str = "UcUiUiUi", .features = "waitpkg" },
56575541 .{ .param_str = "UsUs", .attributes = .{ .@"const" = true, .const_evaluable = true } },
56585542 .{ .param_str = "UiUi", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5659 .{ .param_str = "UsV16cV16cIiUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
5660 .{ .param_str = "UiV32cV32cIiUi", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
5661 .{ .param_str = "UOiV64cV64cIiUOi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5662 .{ .param_str = "UcV4iV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5663 .{ .param_str = "UcV8iV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5664 .{ .param_str = "UsV16iV16iIiUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5665 .{ .param_str = "UcV2OiV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5666 .{ .param_str = "UcV4OiV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5667 .{ .param_str = "UcV8OiV8OiIiUc", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5668 .{ .param_str = "UcV8sV8sIiUc", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
5669 .{ .param_str = "UsV16sV16sIiUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
5670 .{ .param_str = "UiV32sV32sIiUi", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
5543 .{ .param_str = "UsV16cV16cIiUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5544 .{ .param_str = "UiV32cV32cIiUi", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5545 .{ .param_str = "UOiV64cV64cIiUOi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5546 .{ .param_str = "UcV4iV4iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5547 .{ .param_str = "UcV8iV8iIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5548 .{ .param_str = "UsV16iV16iIiUs", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5549 .{ .param_str = "UcV2OiV2OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5550 .{ .param_str = "UcV4OiV4OiIiUc", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5551 .{ .param_str = "UcV8OiV8OiIiUc", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5552 .{ .param_str = "UcV8sV8sIiUc", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5553 .{ .param_str = "UsV16sV16sIiUs", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5554 .{ .param_str = "UiV32sV32sIiUi", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
56715555 .{ .param_str = "iV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
56725556 .{ .param_str = "iV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
56735557 .{ .param_str = "iV4fV4f", .features = "sse", .attributes = .{ .@"const" = true } },
......@@ -5739,7 +5623,7 @@ pub const data = blk: {
57395623 .{ .param_str = "V32cV64cV32xV32cUi", .features = "avx10_2" },
57405624 .{ .param_str = "V8xV4iV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
57415625 .{ .param_str = "V8xV8iV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5742 .{ .param_str = "V16xV16iV16xUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5626 .{ .param_str = "V16xV16iV16xUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
57435627 .{ .param_str = "V8xV16cV8xUc", .features = "avx10_2" },
57445628 .{ .param_str = "V16xV16cV16xUs", .features = "avx10_2" },
57455629 .{ .param_str = "V32xV32cV32xUi", .features = "avx10_2" },
......@@ -5755,7 +5639,7 @@ pub const data = blk: {
57555639 .{ .param_str = "V8yV8f", .features = "avx512bf16,avx512vl|avxneconvert" },
57565640 .{ .param_str = "V8xV2dV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
57575641 .{ .param_str = "V8xV4dV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5758 .{ .param_str = "V8xV8dV8xUcIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5642 .{ .param_str = "V8xV8dV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
57595643 .{ .param_str = "V16cV8xV16cUc", .features = "avx10_2" },
57605644 .{ .param_str = "V16cV16xV16cUs", .features = "avx10_2" },
57615645 .{ .param_str = "V32cV32xV32cUi", .features = "avx10_2" },
......@@ -5764,7 +5648,7 @@ pub const data = blk: {
57645648 .{ .param_str = "V32cV32xV32cUi", .features = "avx10_2" },
57655649 .{ .param_str = "V4iV8xV4iUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
57665650 .{ .param_str = "V8iV8xV8iUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5767 .{ .param_str = "V16iV16xV16iUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5651 .{ .param_str = "V16iV16xV16iUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
57685652 .{ .param_str = "V16cV8xV16cUc", .features = "avx10_2" },
57695653 .{ .param_str = "V16cV16xV16cUs", .features = "avx10_2" },
57705654 .{ .param_str = "V32cV32xV32cUi", .features = "avx10_2" },
......@@ -5779,47 +5663,45 @@ pub const data = blk: {
57795663 .{ .param_str = "V32UsV32xV32UsUiIi", .features = "avx10_2" },
57805664 .{ .param_str = "V2dV8xV2dUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
57815665 .{ .param_str = "V4dV8xV4dUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5782 .{ .param_str = "V8dV8xV8dUcIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5783 .{ .param_str = "V4fV8s", .features = "f16c", .attributes = .{ .@"const" = true } },
5784 .{ .param_str = "V8fV8s", .features = "f16c", .attributes = .{ .@"const" = true } },
5666 .{ .param_str = "V8dV8xV8dUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
57855667 .{ .param_str = "V8fV8sV8fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5786 .{ .param_str = "V16fV16sV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5668 .{ .param_str = "V16fV16sV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
57875669 .{ .param_str = "V4fV8sV4fUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
57885670 .{ .param_str = "V4fV8xV4fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
57895671 .{ .param_str = "V8fV8xV8fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5790 .{ .param_str = "V16fV16xV16fUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5672 .{ .param_str = "V16fV16xV16fUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
57915673 .{ .param_str = "V2OiV8xV2OiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
57925674 .{ .param_str = "V4OiV8xV4OiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5793 .{ .param_str = "V8OiV8xV8OiUcIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5675 .{ .param_str = "V8OiV8xV8OiUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
57945676 .{ .param_str = "V4UiV8xV4UiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
57955677 .{ .param_str = "V8UiV8xV8UiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5796 .{ .param_str = "V16UiV16xV16UiUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5678 .{ .param_str = "V16UiV16xV16UiUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
57975679 .{ .param_str = "V2UOiV8xV2UOiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
57985680 .{ .param_str = "V4UOiV8xV4UOiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5799 .{ .param_str = "V8UOiV8xV8UOiUcIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5681 .{ .param_str = "V8UOiV8xV8UOiUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58005682 .{ .param_str = "V8UsV8xV8UsUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58015683 .{ .param_str = "V16UsV16xV16UsUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5802 .{ .param_str = "V32UsV32xV32UsUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5684 .{ .param_str = "V32UsV32xV32UsUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58035685 .{ .param_str = "V8sV8xV8sUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58045686 .{ .param_str = "V16sV16xV16sUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5805 .{ .param_str = "V32sV32xV32sUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5687 .{ .param_str = "V32sV32xV32sUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58065688 .{ .param_str = "V4UiV4fV4UiUc", .features = "avx10_2" },
58075689 .{ .param_str = "V8UiV8fV8UiUc", .features = "avx10_2" },
58085690 .{ .param_str = "V16UiV16fV16UiUsIi", .features = "avx10_2" },
58095691 .{ .param_str = "V4UiV4fV4UiUc", .features = "avx10_2" },
58105692 .{ .param_str = "V8UiV8fV8UiUc", .features = "avx10_2" },
58115693 .{ .param_str = "V16UiV16fV16UiUsIi", .features = "avx10_2" },
5812 .{ .param_str = "V8sV4fIi", .features = "f16c", .attributes = .{ .@"const" = true } },
5813 .{ .param_str = "V8sV8fIi", .features = "f16c", .attributes = .{ .@"const" = true } },
5694 .{ .param_str = "V8sV4fIi", .features = "f16c", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5695 .{ .param_str = "V8sV8fIi", .features = "f16c", .attributes = .{ .@"const" = true, .const_evaluable = true } },
58145696 .{ .param_str = "V8sV8fIiV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
5815 .{ .param_str = "V16sV16fIiV16sUs", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5697 .{ .param_str = "V16sV16fIiV16sUs", .features = "avx512f", .attributes = .{ .@"const" = true } },
58165698 .{ .param_str = "V8sV4fIiV8sUc", .features = "avx512vl", .attributes = .{ .@"const" = true } },
58175699 .{ .param_str = "V8xV4fV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58185700 .{ .param_str = "V8xV8fV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5819 .{ .param_str = "V16xV16fV16xUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5701 .{ .param_str = "V16xV16fV16xUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58205702 .{ .param_str = "V8xV2OiV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58215703 .{ .param_str = "V8xV4OiV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5822 .{ .param_str = "V8xV8OiV8xUcIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5704 .{ .param_str = "V8xV8OiV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58235705 .{ .param_str = "V8xV8xV2dV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58245706 .{ .param_str = "iV2dIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
58255707 .{ .param_str = "UiV2dIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
......@@ -5851,7 +5733,7 @@ pub const data = blk: {
58515733 .{ .param_str = "V8OiV8dV8OiUcIi", .features = "avx10_2" },
58525734 .{ .param_str = "V4iV8xV4iUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58535735 .{ .param_str = "V8iV8xV8iUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5854 .{ .param_str = "V16iV16xV16iUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5736 .{ .param_str = "V16iV16xV16iUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58555737 .{ .param_str = "V8UsV8xV8UsUc", .features = "avx10_2" },
58565738 .{ .param_str = "V16UsV16xV16UsUs", .features = "avx10_2" },
58575739 .{ .param_str = "V32UsV32xV32UsUiIi", .features = "avx10_2" },
......@@ -5860,19 +5742,19 @@ pub const data = blk: {
58605742 .{ .param_str = "V32UsV32xV32UsUiIi", .features = "avx10_2" },
58615743 .{ .param_str = "V2OiV8xV2OiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58625744 .{ .param_str = "V4OiV8xV4OiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5863 .{ .param_str = "V8OiV8xV8OiUcIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5745 .{ .param_str = "V8OiV8xV8OiUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58645746 .{ .param_str = "V4UiV8xV4UiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58655747 .{ .param_str = "V8UiV8xV8UiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5866 .{ .param_str = "V16UiV16xV16UiUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5748 .{ .param_str = "V16UiV16xV16UiUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58675749 .{ .param_str = "V2UOiV8xV2UOiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58685750 .{ .param_str = "V4UOiV8xV4UOiUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5869 .{ .param_str = "V8UOiV8xV8UOiUcIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5751 .{ .param_str = "V8UOiV8xV8UOiUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58705752 .{ .param_str = "V8UsV8xV8UsUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58715753 .{ .param_str = "V16UsV16xV16UsUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5872 .{ .param_str = "V32UsV32xV32UsUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5754 .{ .param_str = "V32UsV32xV32UsUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58735755 .{ .param_str = "V8sV8xV8sUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
58745756 .{ .param_str = "V16sV16xV16sUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5875 .{ .param_str = "V32sV32xV32sUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5757 .{ .param_str = "V32sV32xV32sUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
58765758 .{ .param_str = "V4iV4fV4iUc", .features = "avx10_2" },
58775759 .{ .param_str = "V8iV8fV8iUc", .features = "avx10_2" },
58785760 .{ .param_str = "V16iV16fV16iUsIi", .features = "avx10_2" },
......@@ -5903,126 +5785,113 @@ pub const data = blk: {
59035785 .{ .param_str = "UiV4fIi", .features = "avx10_2", .attributes = .{ .@"const" = true } },
59045786 .{ .param_str = "V8xV4UiV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59055787 .{ .param_str = "V8xV8UiV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5906 .{ .param_str = "V16xV16UiV16xUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5788 .{ .param_str = "V16xV16UiV16xUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59075789 .{ .param_str = "V8xV2UOiV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59085790 .{ .param_str = "V8xV4UOiV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5909 .{ .param_str = "V8xV8UOiV8xUcIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5791 .{ .param_str = "V8xV8UOiV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59105792 .{ .param_str = "V8xV8xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59115793 .{ .param_str = "V8xV8UsV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59125794 .{ .param_str = "V16xV16UsV16xUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5913 .{ .param_str = "V32xV32UsV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5795 .{ .param_str = "V32xV32UsV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59145796 .{ .param_str = "V8xV8sV8xUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59155797 .{ .param_str = "V16xV16sV16xUs", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5916 .{ .param_str = "V32xV32sV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5798 .{ .param_str = "V32xV32sV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59175799 .{ .param_str = "V8yV8yV8y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
59185800 .{ .param_str = "V16yV16yV16y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
59195801 .{ .param_str = "V32yV32yV32y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
59205802 .{ .param_str = "V4fV4fV8xV8x", .features = "avx10_2", .attributes = .{ .@"const" = true } },
59215803 .{ .param_str = "V8fV8fV16xV16x", .features = "avx10_2", .attributes = .{ .@"const" = true } },
59225804 .{ .param_str = "V16fV16fV32xV32x", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5923 .{ .param_str = "sV16sIi", .features = "avx", .attributes = .{ .@"const" = true } },
5924 .{ .param_str = "cV16cIi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5925 .{ .param_str = "OiV2OiIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5926 .{ .param_str = "cV32cIi", .features = "avx", .attributes = .{ .@"const" = true } },
5927 .{ .param_str = "sV4sIi", .features = "sse", .attributes = .{ .@"const" = true } },
5928 .{ .param_str = "fV4fIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5929 .{ .param_str = "iV4iIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5930 .{ .param_str = "sV8sIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5931 .{ .param_str = "iV8iIi", .features = "avx", .attributes = .{ .@"const" = true } },
5932 .{ .param_str = "V16sV16ssIi", .features = "avx", .attributes = .{ .@"const" = true } },
5933 .{ .param_str = "V16cV16ccIi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5934 .{ .param_str = "V32cV32ccIi", .features = "avx", .attributes = .{ .@"const" = true } },
5935 .{ .param_str = "V4sV4ssIi", .features = "sse", .attributes = .{ .@"const" = true } },
5936 .{ .param_str = "V4iV4iiIi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
5937 .{ .param_str = "V8sV8ssIi", .features = "sse2", .attributes = .{ .@"const" = true } },
5938 .{ .param_str = "V8iV8iiIi", .features = "avx", .attributes = .{ .@"const" = true } },
5939 .{ .param_str = "V2dV4dIi", .features = "avx", .attributes = .{ .@"const" = true } },
5940 .{ .param_str = "V4fV8fIi", .features = "avx", .attributes = .{ .@"const" = true } },
5941 .{ .param_str = "V4iV8iIi", .features = "avx", .attributes = .{ .@"const" = true } },
5805 .{ .param_str = "sV16sIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5806 .{ .param_str = "cV16cIi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5807 .{ .param_str = "OiV2OiIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5808 .{ .param_str = "cV32cIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5809 .{ .param_str = "sV4sIi", .features = "sse", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5810 .{ .param_str = "fV4fIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5811 .{ .param_str = "iV4iIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5812 .{ .param_str = "sV8sIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5813 .{ .param_str = "iV8iIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5814 .{ .param_str = "V16sV16ssIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5815 .{ .param_str = "V16cV16ccIi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5816 .{ .param_str = "V32cV32ccIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5817 .{ .param_str = "V4sV4ssIi", .features = "sse", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5818 .{ .param_str = "V4iV4iiIi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5819 .{ .param_str = "V8sV8ssIi", .features = "sse2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5820 .{ .param_str = "V8iV8iiIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5821 .{ .param_str = "V2dV4dIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5822 .{ .param_str = "V4fV8fIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5823 .{ .param_str = "V4iV8iIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
59425824 .{ .param_str = "V4fV4fV4fV4fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59435825 .{ .param_str = "V4fV4fV4fV4fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59445826 .{ .param_str = "V8fV8fV8fV8fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59455827 .{ .param_str = "V8fV8fV8fV8fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5946 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5947 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5948 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5828 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5829 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5830 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59495831 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59505832 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59515833 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59525834 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59535835 .{ .param_str = "V4fV4fV4fV4fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59545836 .{ .param_str = "V8fV8fV8fV8fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5955 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5837 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59565838 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5957 .{ .param_str = "V8yV8yV8yV8y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5958 .{ .param_str = "V16yV16yV16yV16y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5959 .{ .param_str = "V32yV32yV32yV32y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
59605839 .{ .param_str = "V4fV4fV4fV4fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59615840 .{ .param_str = "V4fV4fV4fV4fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59625841 .{ .param_str = "V8fV8fV8fV8fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
59635842 .{ .param_str = "V8fV8fV8fV8fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5964 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5965 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5966 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5843 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5844 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5845 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59675846 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59685847 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59695848 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59705849 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5971 .{ .param_str = "V2dV2dV2dV2d", .features = "fma|fma4", .attributes = .{ .@"const" = true } },
5972 .{ .param_str = "V4dV4dV4dV4d", .features = "fma|fma4", .attributes = .{ .@"const" = true } },
5973 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5974 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5975 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5976 .{ .param_str = "V8xV8xV8xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5977 .{ .param_str = "V16xV16xV16xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
5978 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5979 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5980 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5981 .{ .param_str = "V4fV4fV4fV4f", .features = "fma|fma4", .attributes = .{ .@"const" = true } },
5982 .{ .param_str = "V8fV8fV8fV8f", .features = "fma|fma4", .attributes = .{ .@"const" = true } },
5983 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5984 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5985 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5986 .{ .param_str = "V2dV2dV2dV2d", .features = "fma4", .attributes = .{ .@"const" = true } },
5987 .{ .param_str = "V2dV2dV2dV2d", .features = "fma", .attributes = .{ .@"const" = true } },
5850 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5851 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5852 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5853 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5854 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5855 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5856 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5857 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5858 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
59885859 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
59895860 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
59905861 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
59915862 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59925863 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
59935864 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5994 .{ .param_str = "V4fV4fV4fV4f", .features = "fma4", .attributes = .{ .@"const" = true } },
5995 .{ .param_str = "V4fV4fV4fV4f", .features = "fma", .attributes = .{ .@"const" = true } },
59965865 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
59975866 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
59985867 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
59995868 .{ .param_str = "V2dV2dV2dV2d", .features = "fma|fma4", .attributes = .{ .@"const" = true } },
60005869 .{ .param_str = "V4dV4dV4dV4d", .features = "fma|fma4", .attributes = .{ .@"const" = true } },
6001 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6002 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6003 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5870 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5871 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5872 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
60045873 .{ .param_str = "V8xV8xV8xV8x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
60055874 .{ .param_str = "V16xV16xV16xV16x", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
6006 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
6007 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
6008 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5875 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5876 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5877 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
60095878 .{ .param_str = "V4fV4fV4fV4f", .features = "fma|fma4", .attributes = .{ .@"const" = true } },
60105879 .{ .param_str = "V8fV8fV8fV8f", .features = "fma|fma4", .attributes = .{ .@"const" = true } },
6011 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6012 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6013 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6014 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6015 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
6016 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6017 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6018 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
6019 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
5880 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5881 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5882 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5883 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5884 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5885 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5886 .{ .param_str = "V8dV8dV8dV8dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
5887 .{ .param_str = "V32xV32xV32xV32xUiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
5888 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
60205889 .{ .param_str = "V2dV2dV2dV2dUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
60215890 .{ .param_str = "V8xV8xV8xV8xUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
60225891 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
60235892 .{ .param_str = "V4fV4fV4fV4fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
60245893 .{ .param_str = "V8fV8fV8fV8fUc", .features = "avx512fp16,avx512vl", .attributes = .{ .@"const" = true } },
6025 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16,evex512", .attributes = .{ .@"const" = true } },
5894 .{ .param_str = "V16fV16fV16fV16fUsIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
60265895 .{ .param_str = "V4fV4fV4fV4fUcIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
60275896 .{ .param_str = "UcV8yIiUc", .features = "avx10_2", .attributes = .{ .@"const" = true } },
60285897 .{ .param_str = "UsV16yIiUs", .features = "avx10_2", .attributes = .{ .@"const" = true } },
......@@ -6039,18 +5908,18 @@ pub const data = blk: {
60395908 .{ .param_str = "V8yV8yIiV8yUc", .features = "avx10_2", .attributes = .{ .@"const" = true } },
60405909 .{ .param_str = "V16yV16yIiV16yUs", .features = "avx10_2", .attributes = .{ .@"const" = true } },
60415910 .{ .param_str = "V32yV32yIiV32yUi", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6042 .{ .param_str = "V16cV16cV16cIc", .features = "gfni", .attributes = .{ .@"const" = true } },
6043 .{ .param_str = "V32cV32cV32cIc", .features = "avx,gfni", .attributes = .{ .@"const" = true } },
6044 .{ .param_str = "V64cV64cV64cIc", .features = "avx512f,evex512,gfni", .attributes = .{ .@"const" = true } },
6045 .{ .param_str = "V16cV16cV16cIc", .features = "gfni", .attributes = .{ .@"const" = true } },
6046 .{ .param_str = "V32cV32cV32cIc", .features = "avx,gfni", .attributes = .{ .@"const" = true } },
6047 .{ .param_str = "V64cV64cV64cIc", .features = "avx512f,evex512,gfni", .attributes = .{ .@"const" = true } },
6048 .{ .param_str = "V16cV16cV16c", .features = "gfni", .attributes = .{ .@"const" = true } },
6049 .{ .param_str = "V32cV32cV32c", .features = "avx,gfni", .attributes = .{ .@"const" = true } },
6050 .{ .param_str = "V64cV64cV64c", .features = "avx512f,evex512,gfni", .attributes = .{ .@"const" = true } },
6051 .{ .param_str = "V4dV4dV2dIi", .features = "avx", .attributes = .{ .@"const" = true } },
6052 .{ .param_str = "V8fV8fV4fIi", .features = "avx", .attributes = .{ .@"const" = true } },
6053 .{ .param_str = "V8iV8iV4iIi", .features = "avx", .attributes = .{ .@"const" = true } },
5911 .{ .param_str = "V16cV16cV16cIc", .features = "gfni", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5912 .{ .param_str = "V32cV32cV32cIc", .features = "avx,gfni", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5913 .{ .param_str = "V64cV64cV64cIc", .features = "avx512f,gfni", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5914 .{ .param_str = "V16cV16cV16cIc", .features = "gfni", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5915 .{ .param_str = "V32cV32cV32cIc", .features = "avx,gfni", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5916 .{ .param_str = "V64cV64cV64cIc", .features = "avx512f,gfni", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5917 .{ .param_str = "V16cV16cV16c", .features = "gfni", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5918 .{ .param_str = "V32cV32cV32c", .features = "avx,gfni", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5919 .{ .param_str = "V64cV64cV64c", .features = "avx512f,gfni", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5920 .{ .param_str = "V4dV4dV2dIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5921 .{ .param_str = "V8fV8fV4fIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5922 .{ .param_str = "V8iV8iV4iIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
60545923 .{ .param_str = "V8yV8yV8y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
60555924 .{ .param_str = "V16yV16yV16y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
60565925 .{ .param_str = "V32yV32yV32y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
......@@ -6077,10 +5946,10 @@ pub const data = blk: {
60775946 .{ .param_str = "V32yV32yV32y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
60785947 .{ .param_str = "vV4iV4iUc*Uc*", .features = "avx512vp2intersect,avx512vl" },
60795948 .{ .param_str = "vV8iV8iUc*Uc*", .features = "avx512vp2intersect,avx512vl" },
6080 .{ .param_str = "vV16iV16iUs*Us*", .features = "avx512vp2intersect,evex512" },
5949 .{ .param_str = "vV16iV16iUs*Us*", .features = "avx512vp2intersect" },
60815950 .{ .param_str = "vV2OiV2OiUc*Uc*", .features = "avx512vp2intersect,avx512vl" },
60825951 .{ .param_str = "vV4OiV4OiUc*Uc*", .features = "avx512vp2intersect,avx512vl" },
6083 .{ .param_str = "vV8OiV8OiUc*Uc*", .features = "avx512vp2intersect,evex512" },
5952 .{ .param_str = "vV8OiV8OiUc*Uc*", .features = "avx512vp2intersect" },
60845953 .{ .param_str = "V16cV16cV16cIc", .features = "xop", .attributes = .{ .@"const" = true } },
60855954 .{ .param_str = "V4iV4iV4iIc", .features = "xop", .attributes = .{ .@"const" = true } },
60865955 .{ .param_str = "V2OiV2OiV2OiIc", .features = "xop", .attributes = .{ .@"const" = true } },
......@@ -6089,97 +5958,97 @@ pub const data = blk: {
60895958 .{ .param_str = "V2OiV2OiV2OiIc", .features = "xop", .attributes = .{ .@"const" = true } },
60905959 .{ .param_str = "V8sV8sV8sIc", .features = "xop", .attributes = .{ .@"const" = true } },
60915960 .{ .param_str = "V8sV8sV8sIc", .features = "xop", .attributes = .{ .@"const" = true } },
6092 .{ .param_str = "V2OiV2Oi", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true } },
6093 .{ .param_str = "V4OiV4Oi", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true } },
6094 .{ .param_str = "V8OiV8Oi", .features = "avx512cd,evex512", .attributes = .{ .@"const" = true } },
6095 .{ .param_str = "V4iV4i", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true } },
6096 .{ .param_str = "V8iV8i", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true } },
6097 .{ .param_str = "V16iV16i", .features = "avx512cd,evex512", .attributes = .{ .@"const" = true } },
6098 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6099 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6100 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6101 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6102 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6103 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6104 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6105 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6106 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6107 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6108 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6109 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6110 .{ .param_str = "V4iV4iV4iV4i", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
6111 .{ .param_str = "V8iV8iV8iV8i", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
6112 .{ .param_str = "V16iV16iV16iV16i", .features = "avx512vnni,evex512", .attributes = .{ .@"const" = true } },
6113 .{ .param_str = "V4iV4iV4iV4i", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
6114 .{ .param_str = "V8iV8iV8iV8i", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
6115 .{ .param_str = "V16iV16iV16iV16i", .features = "avx512vnni,evex512", .attributes = .{ .@"const" = true } },
6116 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6117 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6118 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6119 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6120 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
6121 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6122 .{ .param_str = "V4iV4iV4iV4i", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
6123 .{ .param_str = "V8iV8iV8iV8i", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
6124 .{ .param_str = "V16iV16iV16iV16i", .features = "avx512vnni,evex512", .attributes = .{ .@"const" = true } },
6125 .{ .param_str = "V4iV4iV4iV4i", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
6126 .{ .param_str = "V8iV8iV8iV8i", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
6127 .{ .param_str = "V16iV16iV16iV16i", .features = "avx512vnni,evex512", .attributes = .{ .@"const" = true } },
6128 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint16|avx10_2" },
6129 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint16|avx10_2" },
6130 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2" },
6131 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint16|avx10_2" },
6132 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint16|avx10_2" },
6133 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2" },
6134 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint16|avx10_2" },
6135 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint16|avx10_2" },
6136 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2" },
6137 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint16|avx10_2" },
6138 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint16|avx10_2" },
6139 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2" },
6140 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint16|avx10_2" },
6141 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint16|avx10_2" },
6142 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2" },
6143 .{ .param_str = "V4iV4iV4iV4i", .features = "avxvnniint16|avx10_2" },
6144 .{ .param_str = "V8iV8iV8iV8i", .features = "avxvnniint16|avx10_2" },
6145 .{ .param_str = "V16iV16iV16iV16i", .features = "avx10_2" },
6146 .{ .param_str = "V4dV4dV4dIi", .features = "avx", .attributes = .{ .@"const" = true } },
6147 .{ .param_str = "V8fV8fV8fIi", .features = "avx", .attributes = .{ .@"const" = true } },
6148 .{ .param_str = "V8iV8iV8iIi", .features = "avx", .attributes = .{ .@"const" = true } },
6149 .{ .param_str = "V4iV4iV4iV4i", .features = "avx512vl", .attributes = .{ .@"const" = true } },
6150 .{ .param_str = "V8iV8iV8iV8i", .features = "avx512vl", .attributes = .{ .@"const" = true } },
6151 .{ .param_str = "V16iV16iV16iV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6152 .{ .param_str = "V8sV8sV8sV8s", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
6153 .{ .param_str = "V16sV16sV16sV16s", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true } },
6154 .{ .param_str = "V32sV32sV32sV32s", .features = "avx512bw,evex512", .attributes = .{ .@"const" = true } },
6155 .{ .param_str = "V2dV2dV2OiV2d", .features = "avx512vl", .attributes = .{ .@"const" = true } },
6156 .{ .param_str = "V4dV4dV4OiV4d", .features = "avx512vl", .attributes = .{ .@"const" = true } },
6157 .{ .param_str = "V8dV8dV8OiV8d", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6158 .{ .param_str = "V4fV4fV4iV4f", .features = "avx512vl", .attributes = .{ .@"const" = true } },
6159 .{ .param_str = "V8fV8fV8iV8f", .features = "avx512vl", .attributes = .{ .@"const" = true } },
6160 .{ .param_str = "V16fV16fV16iV16f", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6161 .{ .param_str = "V2OiV2OiV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
6162 .{ .param_str = "V4OiV4OiV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true } },
6163 .{ .param_str = "V8OiV8OiV8OiV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6164 .{ .param_str = "V16cV16cV16cV16c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true } },
6165 .{ .param_str = "V32cV32cV32cV32c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true } },
6166 .{ .param_str = "V64cV64cV64cV64c", .features = "avx512vbmi,evex512", .attributes = .{ .@"const" = true } },
5961 .{ .param_str = "V2OiV2Oi", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5962 .{ .param_str = "V4OiV4Oi", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5963 .{ .param_str = "V8OiV8Oi", .features = "avx512cd", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5964 .{ .param_str = "V4iV4i", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5965 .{ .param_str = "V8iV8i", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5966 .{ .param_str = "V16iV16i", .features = "avx512cd", .attributes = .{ .@"const" = true, .const_evaluable = true } },
5967 .{ .param_str = "V4iV4iV16cV16c", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5968 .{ .param_str = "V8iV8iV32cV32c", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5969 .{ .param_str = "V16iV16iV64cV64c", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5970 .{ .param_str = "V4iV4iV16cV16c", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5971 .{ .param_str = "V8iV8iV32cV32c", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5972 .{ .param_str = "V16iV16iV64cV64c", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5973 .{ .param_str = "V4iV4iV16cV16Uc", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5974 .{ .param_str = "V8iV8iV32cV32Uc", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5975 .{ .param_str = "V16iV16iV64cV64Uc", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5976 .{ .param_str = "V4iV4iV16cV16Uc", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5977 .{ .param_str = "V8iV8iV32cV32Uc", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5978 .{ .param_str = "V16iV16iV64cV64Uc", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5979 .{ .param_str = "V4iV4iV16UcV16c", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
5980 .{ .param_str = "V8iV8iV32UcV32c", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
5981 .{ .param_str = "V16iV16iV64UcV64c", .features = "avx512vnni", .attributes = .{ .@"const" = true } },
5982 .{ .param_str = "V4iV4iV16UcV16c", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
5983 .{ .param_str = "V8iV8iV32UcV32c", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
5984 .{ .param_str = "V16iV16iV64UcV64c", .features = "avx512vnni", .attributes = .{ .@"const" = true } },
5985 .{ .param_str = "V4iV4iV16UcV16Uc", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5986 .{ .param_str = "V8iV8iV32UcV32Uc", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5987 .{ .param_str = "V16iV16iV64UcV64Uc", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5988 .{ .param_str = "V4iV4iV16UcV16Uc", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5989 .{ .param_str = "V8iV8iV32UcV32Uc", .features = "avxvnniint8|avx10_2", .attributes = .{ .@"const" = true } },
5990 .{ .param_str = "V16iV16iV64UcV64Uc", .features = "avx10_2", .attributes = .{ .@"const" = true } },
5991 .{ .param_str = "V4iV4iV8sV8s", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
5992 .{ .param_str = "V8iV8iV16sV16s", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
5993 .{ .param_str = "V16iV16iV32sV32s", .features = "avx512vnni", .attributes = .{ .@"const" = true } },
5994 .{ .param_str = "V4iV4iV8sV8s", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
5995 .{ .param_str = "V8iV8iV16sV16s", .features = "avx512vl,avx512vnni|avxvnni", .attributes = .{ .@"const" = true } },
5996 .{ .param_str = "V16iV16iV32sV32s", .features = "avx512vnni", .attributes = .{ .@"const" = true } },
5997 .{ .param_str = "V4iV4iV8sV8Us", .features = "avxvnniint16|avx10_2" },
5998 .{ .param_str = "V8iV8iV16sV16Us", .features = "avxvnniint16|avx10_2" },
5999 .{ .param_str = "V16iV16iV32sV32Us", .features = "avx10_2" },
6000 .{ .param_str = "V4iV4iV8sV8Us", .features = "avxvnniint16|avx10_2" },
6001 .{ .param_str = "V8iV8iV16sV16Us", .features = "avxvnniint16|avx10_2" },
6002 .{ .param_str = "V16iV16iV32sV32Us", .features = "avx10_2" },
6003 .{ .param_str = "V4iV4iV8UsV8s", .features = "avxvnniint16|avx10_2" },
6004 .{ .param_str = "V8iV8iV16UsV16s", .features = "avxvnniint16|avx10_2" },
6005 .{ .param_str = "V16iV16iV32UsV32s", .features = "avx10_2" },
6006 .{ .param_str = "V4iV4iV8UsV8s", .features = "avxvnniint16|avx10_2" },
6007 .{ .param_str = "V8iV8iV16UsV16s", .features = "avxvnniint16|avx10_2" },
6008 .{ .param_str = "V16iV16iV32UsV32s", .features = "avx10_2" },
6009 .{ .param_str = "V4iV4iV8UsV8Us", .features = "avxvnniint16|avx10_2" },
6010 .{ .param_str = "V8iV8iV16UsV16Us", .features = "avxvnniint16|avx10_2" },
6011 .{ .param_str = "V16iV16iV32UsV32Us", .features = "avx10_2" },
6012 .{ .param_str = "V4iV4iV8UsV8Us", .features = "avxvnniint16|avx10_2" },
6013 .{ .param_str = "V8iV8iV16UsV16Us", .features = "avxvnniint16|avx10_2" },
6014 .{ .param_str = "V16iV16iV32UsV32Us", .features = "avx10_2" },
6015 .{ .param_str = "V4dV4dV4dIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6016 .{ .param_str = "V8fV8fV8fIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6017 .{ .param_str = "V8iV8iV8iIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6018 .{ .param_str = "V4iV4iV4iV4i", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6019 .{ .param_str = "V8iV8iV8iV8i", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6020 .{ .param_str = "V16iV16iV16iV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6021 .{ .param_str = "V8sV8sV8sV8s", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6022 .{ .param_str = "V16sV16sV16sV16s", .features = "avx512vl,avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6023 .{ .param_str = "V32sV32sV32sV32s", .features = "avx512bw", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6024 .{ .param_str = "V2dV2dV2OiV2d", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6025 .{ .param_str = "V4dV4dV4OiV4d", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6026 .{ .param_str = "V8dV8dV8OiV8d", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6027 .{ .param_str = "V4fV4fV4iV4f", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6028 .{ .param_str = "V8fV8fV8iV8f", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6029 .{ .param_str = "V16fV16fV16iV16f", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6030 .{ .param_str = "V2OiV2OiV2OiV2Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6031 .{ .param_str = "V4OiV4OiV4OiV4Oi", .features = "avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6032 .{ .param_str = "V8OiV8OiV8OiV8Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6033 .{ .param_str = "V16cV16cV16cV16c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6034 .{ .param_str = "V32cV32cV32cV32c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6035 .{ .param_str = "V64cV64cV64cV64c", .features = "avx512vbmi", .attributes = .{ .@"const" = true, .const_evaluable = true } },
61676036 .{ .param_str = "V2dV2dV2dV2OiIc", .features = "xop", .attributes = .{ .@"const" = true } },
61686037 .{ .param_str = "V4dV4dV4dV4OiIc", .features = "xop", .attributes = .{ .@"const" = true } },
61696038 .{ .param_str = "V4fV4fV4fV4iIc", .features = "xop", .attributes = .{ .@"const" = true } },
61706039 .{ .param_str = "V8fV8fV8fV8iIc", .features = "xop", .attributes = .{ .@"const" = true } },
6171 .{ .param_str = "V2dV2dIi", .features = "avx", .attributes = .{ .@"const" = true } },
6172 .{ .param_str = "V4dV4dIi", .features = "avx", .attributes = .{ .@"const" = true } },
6173 .{ .param_str = "V8dV8dIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6174 .{ .param_str = "V4fV4fIi", .features = "avx", .attributes = .{ .@"const" = true } },
6175 .{ .param_str = "V8fV8fIi", .features = "avx", .attributes = .{ .@"const" = true } },
6176 .{ .param_str = "V16fV16fIi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6177 .{ .param_str = "V2dV2dV2Oi", .features = "avx", .attributes = .{ .@"const" = true } },
6178 .{ .param_str = "V4dV4dV4Oi", .features = "avx", .attributes = .{ .@"const" = true } },
6179 .{ .param_str = "V8dV8dV8Oi", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6180 .{ .param_str = "V4fV4fV4i", .features = "avx", .attributes = .{ .@"const" = true } },
6181 .{ .param_str = "V8fV8fV8i", .features = "avx", .attributes = .{ .@"const" = true } },
6182 .{ .param_str = "V16fV16fV16i", .features = "avx512f,evex512", .attributes = .{ .@"const" = true } },
6040 .{ .param_str = "V2dV2dIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6041 .{ .param_str = "V4dV4dIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6042 .{ .param_str = "V8dV8dIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6043 .{ .param_str = "V4fV4fIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6044 .{ .param_str = "V8fV8fIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6045 .{ .param_str = "V16fV16fIi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6046 .{ .param_str = "V2dV2dV2Oi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6047 .{ .param_str = "V4dV4dV4Oi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6048 .{ .param_str = "V8dV8dV8Oi", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6049 .{ .param_str = "V4fV4fV4i", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6050 .{ .param_str = "V8fV8fV8i", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6051 .{ .param_str = "V16fV16fV16i", .features = "avx512f", .attributes = .{ .@"const" = true, .const_evaluable = true } },
61836052 .{ .param_str = "V4iV16c", .features = "xop", .attributes = .{ .@"const" = true } },
61846053 .{ .param_str = "V2OiV16c", .features = "xop", .attributes = .{ .@"const" = true } },
61856054 .{ .param_str = "V8sV16c", .features = "xop", .attributes = .{ .@"const" = true } },
......@@ -6195,12 +6064,6 @@ pub const data = blk: {
61956064 .{ .param_str = "V8sV16c", .features = "xop", .attributes = .{ .@"const" = true } },
61966065 .{ .param_str = "V2OiV4i", .features = "xop", .attributes = .{ .@"const" = true } },
61976066 .{ .param_str = "V4iV8s", .features = "xop", .attributes = .{ .@"const" = true } },
6198 .{ .param_str = "V4iV4i", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true } },
6199 .{ .param_str = "V8iV8i", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true } },
6200 .{ .param_str = "V16iV16i", .features = "avx512cd,evex512", .attributes = .{ .@"const" = true } },
6201 .{ .param_str = "V2OiV2Oi", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true } },
6202 .{ .param_str = "V4OiV4Oi", .features = "avx512cd,avx512vl", .attributes = .{ .@"const" = true } },
6203 .{ .param_str = "V8OiV8Oi", .features = "avx512cd,evex512", .attributes = .{ .@"const" = true } },
62046067 .{ .param_str = "V4iV4iV4iV4i", .features = "xop", .attributes = .{ .@"const" = true } },
62056068 .{ .param_str = "V2OiV4iV4iV2Oi", .features = "xop", .attributes = .{ .@"const" = true } },
62066069 .{ .param_str = "V2OiV4iV4iV2Oi", .features = "xop", .attributes = .{ .@"const" = true } },
......@@ -6213,71 +6076,49 @@ pub const data = blk: {
62136076 .{ .param_str = "V8sV8sV8sV8s", .features = "xop", .attributes = .{ .@"const" = true } },
62146077 .{ .param_str = "V4iV8sV8sV4i", .features = "xop", .attributes = .{ .@"const" = true } },
62156078 .{ .param_str = "V4iV8sV8sV4i", .features = "xop", .attributes = .{ .@"const" = true } },
6216 .{ .param_str = "V2OiV2OiV2OiV2Oi", .features = "avx512ifma,avx512vl|avxifma", .attributes = .{ .@"const" = true } },
6217 .{ .param_str = "V4OiV4OiV4OiV4Oi", .features = "avx512ifma,avx512vl|avxifma", .attributes = .{ .@"const" = true } },
6218 .{ .param_str = "V8OiV8OiV8OiV8Oi", .features = "avx512ifma,evex512", .attributes = .{ .@"const" = true } },
6219 .{ .param_str = "V2OiV2OiV2OiV2Oi", .features = "avx512ifma,avx512vl|avxifma", .attributes = .{ .@"const" = true } },
6220 .{ .param_str = "V4OiV4OiV4OiV4Oi", .features = "avx512ifma,avx512vl|avxifma", .attributes = .{ .@"const" = true } },
6221 .{ .param_str = "V8OiV8OiV8OiV8Oi", .features = "avx512ifma,evex512", .attributes = .{ .@"const" = true } },
6222 .{ .param_str = "V16cV16cV16c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true } },
6223 .{ .param_str = "V32cV32cV32c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true } },
6224 .{ .param_str = "V64cV64cV64c", .features = "avx512vbmi,evex512", .attributes = .{ .@"const" = true } },
6079 .{ .param_str = "V2OiV2OiV2OiV2Oi", .features = "avx512ifma,avx512vl|avxifma", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6080 .{ .param_str = "V4OiV4OiV4OiV4Oi", .features = "avx512ifma,avx512vl|avxifma", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6081 .{ .param_str = "V8OiV8OiV8OiV8Oi", .features = "avx512ifma", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6082 .{ .param_str = "V2OiV2OiV2OiV2Oi", .features = "avx512ifma,avx512vl|avxifma", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6083 .{ .param_str = "V4OiV4OiV4OiV4Oi", .features = "avx512ifma,avx512vl|avxifma", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6084 .{ .param_str = "V8OiV8OiV8OiV8Oi", .features = "avx512ifma", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6085 .{ .param_str = "V16cV16cV16c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6086 .{ .param_str = "V32cV32cV32c", .features = "avx512vbmi,avx512vl", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6087 .{ .param_str = "V64cV64cV64c", .features = "avx512vbmi", .attributes = .{ .@"const" = true, .const_evaluable = true } },
62256088 .{ .param_str = "V16cV16cV16cV16c", .features = "xop", .attributes = .{ .@"const" = true } },
6226 .{ .param_str = "V16cV16cV16c", .features = "xop", .attributes = .{ .@"const" = true } },
6227 .{ .param_str = "V16cV16cIc", .features = "xop", .attributes = .{ .@"const" = true } },
6228 .{ .param_str = "V4iV4iV4i", .features = "xop", .attributes = .{ .@"const" = true } },
6229 .{ .param_str = "V4iV4iIc", .features = "xop", .attributes = .{ .@"const" = true } },
6230 .{ .param_str = "V2OiV2OiV2Oi", .features = "xop", .attributes = .{ .@"const" = true } },
6231 .{ .param_str = "V2OiV2OiIc", .features = "xop", .attributes = .{ .@"const" = true } },
6232 .{ .param_str = "V8sV8sV8s", .features = "xop", .attributes = .{ .@"const" = true } },
6233 .{ .param_str = "V8sV8sIc", .features = "xop", .attributes = .{ .@"const" = true } },
6089 .{ .param_str = "V16cV16cIc", .features = "xop", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6090 .{ .param_str = "V4iV4iIc", .features = "xop", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6091 .{ .param_str = "V2OiV2OiIc", .features = "xop", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6092 .{ .param_str = "V8sV8sIc", .features = "xop", .attributes = .{ .@"const" = true, .const_evaluable = true } },
62346093 .{ .param_str = "V16cV16cV16c", .features = "xop", .attributes = .{ .@"const" = true } },
62356094 .{ .param_str = "V4iV4iV4i", .features = "xop", .attributes = .{ .@"const" = true } },
62366095 .{ .param_str = "V2OiV2OiV2Oi", .features = "xop", .attributes = .{ .@"const" = true } },
62376096 .{ .param_str = "V8sV8sV8s", .features = "xop", .attributes = .{ .@"const" = true } },
62386097 .{ .param_str = "V16cV16cV16c", .features = "xop", .attributes = .{ .@"const" = true } },
62396098 .{ .param_str = "V4iV4iV4i", .features = "xop", .attributes = .{ .@"const" = true } },
6240 .{ .param_str = "V4iV4iV4iIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6241 .{ .param_str = "V8iV8iV8iIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6242 .{ .param_str = "V16iV16iV16iIi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6243 .{ .param_str = "V2OiV2OiV2OiIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6244 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6245 .{ .param_str = "V8OiV8OiV8OiIi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6246 .{ .param_str = "V4iV4iV4iV4i", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6247 .{ .param_str = "V8iV8iV8iV8i", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6248 .{ .param_str = "V16iV16iV16iV16i", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6249 .{ .param_str = "V2OiV2OiV2OiV2Oi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6250 .{ .param_str = "V4OiV4OiV4OiV4Oi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6251 .{ .param_str = "V8OiV8OiV8OiV8Oi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6252 .{ .param_str = "V8sV8sV8sV8s", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6253 .{ .param_str = "V16sV16sV16sV16s", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6254 .{ .param_str = "V32sV32sV32sV32s", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6255 .{ .param_str = "V8sV8sV8sIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6256 .{ .param_str = "V16sV16sV16sIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6257 .{ .param_str = "V32sV32sV32sIi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6099 .{ .param_str = "V4iV4iV4iIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6100 .{ .param_str = "V8iV8iV8iIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6101 .{ .param_str = "V16iV16iV16iIi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6102 .{ .param_str = "V2OiV2OiV2OiIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6103 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6104 .{ .param_str = "V8OiV8OiV8OiIi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6105 .{ .param_str = "V8sV8sV8sIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6106 .{ .param_str = "V16sV16sV16sIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6107 .{ .param_str = "V32sV32sV32sIi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
62586108 .{ .param_str = "V2OiV2OiV2Oi", .features = "xop", .attributes = .{ .@"const" = true } },
62596109 .{ .param_str = "V8sV8sV8s", .features = "xop", .attributes = .{ .@"const" = true } },
6260 .{ .param_str = "V4iV4iV4iIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6261 .{ .param_str = "V8iV8iV8iIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6262 .{ .param_str = "V16iV16iV16iIi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6263 .{ .param_str = "V2OiV2OiV2OiIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6264 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6265 .{ .param_str = "V8OiV8OiV8OiIi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6266 .{ .param_str = "V4iV4iV4iV4i", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6267 .{ .param_str = "V8iV8iV8iV8i", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6268 .{ .param_str = "V16iV16iV16iV16i", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6269 .{ .param_str = "V2OiV2OiV2OiV2Oi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6270 .{ .param_str = "V4OiV4OiV4OiV4Oi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6271 .{ .param_str = "V8OiV8OiV8OiV8Oi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6272 .{ .param_str = "V8sV8sV8sV8s", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6273 .{ .param_str = "V16sV16sV16sV16s", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6274 .{ .param_str = "V32sV32sV32sV32s", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6275 .{ .param_str = "V8sV8sV8sIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6276 .{ .param_str = "V16sV16sV16sIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true } },
6277 .{ .param_str = "V32sV32sV32sIi", .features = "avx512vbmi2,evex512", .attributes = .{ .@"const" = true } },
6278 .{ .param_str = "UsV16cV16cUs", .features = "avx512vl,avx512bitalg", .attributes = .{ .@"const" = true } },
6279 .{ .param_str = "UiV32cV32cUi", .features = "avx512vl,avx512bitalg", .attributes = .{ .@"const" = true } },
6280 .{ .param_str = "UOiV64cV64cUOi", .features = "avx512bitalg,evex512", .attributes = .{ .@"const" = true } },
6110 .{ .param_str = "V4iV4iV4iIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6111 .{ .param_str = "V8iV8iV8iIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6112 .{ .param_str = "V16iV16iV16iIi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6113 .{ .param_str = "V2OiV2OiV2OiIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6114 .{ .param_str = "V4OiV4OiV4OiIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6115 .{ .param_str = "V8OiV8OiV8OiIi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6116 .{ .param_str = "V8sV8sV8sIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6117 .{ .param_str = "V16sV16sV16sIi", .features = "avx512vl,avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6118 .{ .param_str = "V32sV32sV32sIi", .features = "avx512vbmi2", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6119 .{ .param_str = "UsV16cV16cUs", .features = "avx512vl,avx512bitalg", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6120 .{ .param_str = "UiV32cV32cUi", .features = "avx512vl,avx512bitalg", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6121 .{ .param_str = "UOiV64cV64cUOi", .features = "avx512bitalg", .attributes = .{ .@"const" = true, .const_evaluable = true } },
62816122 .{ .param_str = "V8yV8yV8yUc", .features = "avx10_2", .attributes = .{ .@"const" = true } },
62826123 .{ .param_str = "V16yV16yV16yUs", .features = "avx10_2", .attributes = .{ .@"const" = true } },
62836124 .{ .param_str = "V32yV32yV32yUi", .features = "avx10_2", .attributes = .{ .@"const" = true } },
......@@ -6305,24 +6146,21 @@ pub const data = blk: {
63056146 .{ .param_str = "V4UiV4UiV4Ui", .features = "sm4" },
63066147 .{ .param_str = "V8UiV8UiV8Ui", .features = "sm4" },
63076148 .{ .param_str = "V16UiV16UiV16Ui", .features = "avx10_2,sm4" },
6308 .{ .param_str = "V8yV8y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6309 .{ .param_str = "V16yV16y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6310 .{ .param_str = "V32yV32y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
63116149 .{ .param_str = "V8yV8yV8y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
63126150 .{ .param_str = "V16yV16yV16y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
63136151 .{ .param_str = "V32yV32yV32y", .features = "avx10_2", .attributes = .{ .@"const" = true } },
6314 .{ .param_str = "iV2dV2d", .features = "avx", .attributes = .{ .@"const" = true } },
6315 .{ .param_str = "iV4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
6316 .{ .param_str = "iV4fV4f", .features = "avx", .attributes = .{ .@"const" = true } },
6317 .{ .param_str = "iV8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
6318 .{ .param_str = "iV2dV2d", .features = "avx", .attributes = .{ .@"const" = true } },
6319 .{ .param_str = "iV4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
6320 .{ .param_str = "iV4fV4f", .features = "avx", .attributes = .{ .@"const" = true } },
6321 .{ .param_str = "iV8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
6322 .{ .param_str = "iV2dV2d", .features = "avx", .attributes = .{ .@"const" = true } },
6323 .{ .param_str = "iV4dV4d", .features = "avx", .attributes = .{ .@"const" = true } },
6324 .{ .param_str = "iV4fV4f", .features = "avx", .attributes = .{ .@"const" = true } },
6325 .{ .param_str = "iV8fV8f", .features = "avx", .attributes = .{ .@"const" = true } },
6152 .{ .param_str = "iV2dV2d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6153 .{ .param_str = "iV4dV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6154 .{ .param_str = "iV4fV4f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6155 .{ .param_str = "iV8fV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6156 .{ .param_str = "iV2dV2d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6157 .{ .param_str = "iV4dV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6158 .{ .param_str = "iV4fV4f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6159 .{ .param_str = "iV8fV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6160 .{ .param_str = "iV2dV2d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6161 .{ .param_str = "iV4dV4d", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6162 .{ .param_str = "iV4fV4f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
6163 .{ .param_str = "iV8fV8f", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
63266164 .{ .param_str = "v", .features = "avx" },
63276165 .{ .param_str = "v", .features = "avx" },
63286166 .{ .param_str = "v" },
lib/compiler/aro/aro/Builtins/x86_64.zig+422-516
......@@ -58,40 +58,25 @@ pub const Tag = enum(u16) { _BitScanForward64,
5858 __builtin_ia32_senduipi,
5959 __builtin_ia32_stui,
6060 __builtin_ia32_subborrow_u64,
61 __builtin_ia32_t2rpntlvwz0,
62 __builtin_ia32_t2rpntlvwz0_internal,
63 __builtin_ia32_t2rpntlvwz0rs,
64 __builtin_ia32_t2rpntlvwz0rs_internal,
65 __builtin_ia32_t2rpntlvwz0rst1,
66 __builtin_ia32_t2rpntlvwz0rst1_internal,
67 __builtin_ia32_t2rpntlvwz0t1,
68 __builtin_ia32_t2rpntlvwz0t1_internal,
69 __builtin_ia32_t2rpntlvwz1,
70 __builtin_ia32_t2rpntlvwz1_internal,
71 __builtin_ia32_t2rpntlvwz1rs,
72 __builtin_ia32_t2rpntlvwz1rs_internal,
73 __builtin_ia32_t2rpntlvwz1rst1,
74 __builtin_ia32_t2rpntlvwz1rst1_internal,
75 __builtin_ia32_t2rpntlvwz1t1,
76 __builtin_ia32_t2rpntlvwz1t1_internal,
7761 __builtin_ia32_tcmmimfp16ps,
7862 __builtin_ia32_tcmmimfp16ps_internal,
7963 __builtin_ia32_tcmmrlfp16ps,
8064 __builtin_ia32_tcmmrlfp16ps_internal,
81 __builtin_ia32_tconjtcmmimfp16ps,
82 __builtin_ia32_tconjtcmmimfp16ps_internal,
83 __builtin_ia32_tconjtfp16,
84 __builtin_ia32_tconjtfp16_internal,
8565 __builtin_ia32_tcvtrowd2ps,
8666 __builtin_ia32_tcvtrowd2ps_internal,
67 __builtin_ia32_tcvtrowd2psi,
8768 __builtin_ia32_tcvtrowps2bf16h,
8869 __builtin_ia32_tcvtrowps2bf16h_internal,
70 __builtin_ia32_tcvtrowps2bf16hi,
8971 __builtin_ia32_tcvtrowps2bf16l,
9072 __builtin_ia32_tcvtrowps2bf16l_internal,
73 __builtin_ia32_tcvtrowps2bf16li,
9174 __builtin_ia32_tcvtrowps2phh,
9275 __builtin_ia32_tcvtrowps2phh_internal,
76 __builtin_ia32_tcvtrowps2phhi,
9377 __builtin_ia32_tcvtrowps2phl,
9478 __builtin_ia32_tcvtrowps2phl_internal,
79 __builtin_ia32_tcvtrowps2phli,
9580 __builtin_ia32_tdpbf16ps,
9681 __builtin_ia32_tdpbf16ps_internal,
9782 __builtin_ia32_tdpbf8ps,
......@@ -126,6 +111,7 @@ pub const Tag = enum(u16) { _BitScanForward64,
126111 __builtin_ia32_tileloaddt164_internal,
127112 __builtin_ia32_tilemovrow,
128113 __builtin_ia32_tilemovrow_internal,
114 __builtin_ia32_tilemovrowi,
129115 __builtin_ia32_tilerelease,
130116 __builtin_ia32_tilestored64,
131117 __builtin_ia32_tilestored64_internal,
......@@ -133,18 +119,6 @@ pub const Tag = enum(u16) { _BitScanForward64,
133119 __builtin_ia32_tilezero_internal,
134120 __builtin_ia32_tmmultf32ps,
135121 __builtin_ia32_tmmultf32ps_internal,
136 __builtin_ia32_ttcmmimfp16ps,
137 __builtin_ia32_ttcmmimfp16ps_internal,
138 __builtin_ia32_ttcmmrlfp16ps,
139 __builtin_ia32_ttcmmrlfp16ps_internal,
140 __builtin_ia32_ttdpbf16ps,
141 __builtin_ia32_ttdpbf16ps_internal,
142 __builtin_ia32_ttdpfp16ps,
143 __builtin_ia32_ttdpfp16ps_internal,
144 __builtin_ia32_ttmmultf32ps,
145 __builtin_ia32_ttmmultf32ps_internal,
146 __builtin_ia32_ttransposed,
147 __builtin_ia32_ttransposed_internal,
148122 __builtin_ia32_tzcnt_u64,
149123 __builtin_ia32_urdmsr,
150124 __builtin_ia32_uwrmsr,
......@@ -251,13 +225,13 @@ pub fn exists(name: []const u8) bool {
251225}
252226
253227pub const shortest_name = 6;
254pub const longest_name = 41;
228pub const longest_name = 39;
255229
256230/// Search siblings of `first_child_index` for the `char`
257231/// If found, returns the index of the node within the `dafsa` array.
258232/// Otherwise, returns `null`.
259233pub fn findInList(first_child_index: u16, char: u8) ?u16 {
260 @setEvalBranchQuota(386);
234 @setEvalBranchQuota(334);
261235 var index = first_child_index;
262236 while (true) {
263237 if (dafsa[index].char == char) return index;
......@@ -352,15 +326,15 @@ const Node = packed struct {
352326
353327const dafsa = [_]Node{
354328 .{ .char = 0, .end_of_word = false, .end_of_list = true, .number = 0, .child_index = 1 },
355 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 193, .child_index = 2 },
329 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 167, .child_index = 2 },
356330 .{ .char = 'B', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 7 },
357331 .{ .char = 'I', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 8 },
358 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 188, .child_index = 9 },
332 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 162, .child_index = 9 },
359333 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 14 },
360334 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 15 },
361335 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 16 },
362336 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 17 },
363 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 183, .child_index = 18 },
337 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 157, .child_index = 18 },
364338 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 19 },
365339 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 20 },
366340 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 21 },
......@@ -369,7 +343,7 @@ const dafsa = [_]Node{
369343 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 14 },
370344 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 24 },
371345 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 25 },
372 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 26 },
346 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 26 },
373347 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 27 },
374348 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 28 },
375349 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 29 },
......@@ -377,70 +351,70 @@ const dafsa = [_]Node{
377351 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 30 },
378352 .{ .char = 'S', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 31 },
379353 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 32 },
380 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 33 },
354 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 33 },
381355 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 34 },
382356 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 35 },
383357 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 36 },
384358 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 37 },
385359 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 38 },
386360 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 39 },
387 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 40 },
361 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 40 },
388362 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 41 },
389363 .{ .char = 'h', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
390364 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 42 },
391365 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 43 },
392366 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 44 },
393367 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 45 },
394 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 46 },
368 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 46 },
395369 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 47 },
396370 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 48 },
397371 .{ .char = '8', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
398372 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 50 },
399373 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 52 },
400 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 53 },
374 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 53 },
401375 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 54 },
402376 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 55 },
403377 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 56 },
404378 .{ .char = 'F', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 57 },
405379 .{ .char = 'R', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 58 },
406380 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 59 },
407 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 60 },
381 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 60 },
408382 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 61 },
409383 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 62 },
410384 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 63 },
411385 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 64 },
412386 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 65 },
413387 .{ .char = 'k', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 66 },
414 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 67 },
388 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 67 },
415389 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 68 },
416390 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 69 },
417391 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 70 },
418392 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 71 },
419393 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 72 },
420394 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 73 },
421 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 74 },
395 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 74 },
422396 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 75 },
423397 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 30 },
424398 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 69 },
425399 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 76 },
426400 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 77 },
427401 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 78 },
428 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 79 },
402 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 79 },
429403 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 80 },
430404 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 81 },
431405 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 82 },
432406 .{ .char = 'C', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 83 },
433 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 84 },
407 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 84 },
434408 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 85 },
435409 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 86 },
436410 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
437411 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 88 },
438 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 89 },
412 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 89 },
439413 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 90 },
440414 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
441415 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
442416 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 92 },
443 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 183, .child_index = 93 },
417 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 157, .child_index = 93 },
444418 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 109 },
445419 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 110 },
446420 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 111 },
......@@ -455,473 +429,431 @@ const dafsa = [_]Node{
455429 .{ .char = 'p', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 128 },
456430 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 132 },
457431 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 134 },
458 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 88, .child_index = 137 },
459 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 145 },
460 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 33, .child_index = 147 },
461 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 150 },
462 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 151 },
432 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 62, .child_index = 137 },
433 .{ .char = 'u', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 143 },
434 .{ .char = 'v', .end_of_word = false, .end_of_list = false, .number = 33, .child_index = 145 },
435 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 148 },
436 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 149 },
463437 .{ .char = 'e', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
464438 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
465 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 153 },
466 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 154 },
467 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 156 },
468 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 157 },
469 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 158 },
470 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 159 },
471 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 160 },
472 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 161 },
473 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 162 },
474 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 163 },
475 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 164 },
476 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 165 },
477 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 166 },
478 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 168 },
479 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 169 },
480 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 170 },
481 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 171 },
482 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 172 },
483 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 173 },
484 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 174 },
485 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 175 },
486 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 176 },
487 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 180 },
488 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 181 },
489 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 161 },
490 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 182 },
491 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 16, .child_index = 183 },
492 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 184 },
493 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 187 },
494 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 188 },
495 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 189 },
496 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 190 },
497 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 12, .child_index = 191 },
498 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 170 },
499 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 195 },
500 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 196 },
501 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 197 },
502 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 198 },
503 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 199 },
504 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 200 },
505 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 205 },
506 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 206 },
507 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 207 },
439 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 151 },
440 .{ .char = 'a', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 152 },
441 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 154 },
442 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 155 },
443 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 156 },
444 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 157 },
445 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 158 },
446 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 159 },
447 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 160 },
448 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 161 },
449 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 162 },
450 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 163 },
451 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 164 },
452 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 166 },
453 .{ .char = 'w', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 167 },
454 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 168 },
455 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 169 },
456 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 170 },
457 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 171 },
458 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 172 },
459 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 173 },
460 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 174 },
461 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 178 },
462 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 179 },
463 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 159 },
464 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 180 },
465 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 19, .child_index = 181 },
466 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 20, .child_index = 183 },
467 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 184 },
468 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 19, .child_index = 185 },
469 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 186 },
470 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 168 },
471 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 187 },
472 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 188 },
473 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 18, .child_index = 189 },
474 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 190 },
475 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 191 },
476 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 7, .child_index = 192 },
477 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 197 },
478 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 198 },
479 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 199 },
508480 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 86 },
509481 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 86 },
510 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 208 },
482 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 200 },
511483 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
512 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 157 },
513 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 209 },
514 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 210 },
515 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 211 },
516 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 212 },
517 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 213 },
518 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 214 },
519 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 217 },
520 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 218 },
521 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 219 },
522 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 220 },
523 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 221 },
524 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 223 },
525 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 224 },
526 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 226 },
527 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 227 },
528 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 228 },
529 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 229 },
530 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 230 },
531 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 230 },
532 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 231 },
533 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 232 },
534 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 234 },
535 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 235 },
536 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 236 },
537 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 237 },
538 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 238 },
539 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 239 },
540 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 240 },
541 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 241 },
542 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 244 },
543 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 245 },
544 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 246 },
545 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 247 },
546 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 248 },
547 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 190 },
548 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 249 },
549 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 250 },
550 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 250 },
551 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 251 },
552 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 252 },
553 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 253 },
554 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 230 },
555 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 230 },
556 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 254 },
557 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 255 },
558 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 256 },
559 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 257 },
560 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 258 },
561 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 259 },
562 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 260 },
563 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 261 },
564 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 262 },
484 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 155 },
485 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 201 },
486 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 202 },
487 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 203 },
488 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 204 },
489 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 205 },
490 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 206 },
491 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 209 },
492 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 210 },
493 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 211 },
494 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 212 },
495 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 213 },
496 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 215 },
497 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 5, .child_index = 216 },
498 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 218 },
499 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 219 },
500 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 220 },
501 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 221 },
502 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 222 },
503 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 222 },
504 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 223 },
505 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 224 },
506 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 226 },
507 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 227 },
508 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 228 },
509 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 229 },
510 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 230 },
511 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 20, .child_index = 231 },
512 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 234 },
513 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 19, .child_index = 235 },
514 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 236 },
515 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 237 },
516 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 237 },
517 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 238 },
518 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 239 },
519 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 240 },
520 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 222 },
521 .{ .char = 'g', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 222 },
522 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 241 },
523 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 242 },
524 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 243 },
525 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 244 },
526 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 245 },
527 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 246 },
528 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 247 },
529 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 248 },
530 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 249 },
565531 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
566 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 263 },
567 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 264 },
568 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 265 },
569 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 268 },
570 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 269 },
571 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 270 },
532 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 250 },
533 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 251 },
534 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 252 },
535 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 255 },
536 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 256 },
537 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 257 },
538 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 258 },
539 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 259 },
540 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 260 },
541 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 261 },
542 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 262 },
543 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 263 },
544 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 264 },
545 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 265 },
546 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 249 },
547 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 249 },
548 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 266 },
549 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 267 },
550 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 268 },
551 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 269 },
552 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 270 },
572553 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 271 },
573 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 272 },
574 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 273 },
575 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 274 },
576 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 275 },
577 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 276 },
578 .{ .char = 'n', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 277 },
579 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 278 },
580 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 262 },
581 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 262 },
582 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 279 },
583 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 280 },
584 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 281 },
585 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 282 },
586 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 283 },
587 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 284 },
588 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 285 },
589 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 286 },
590 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 287 },
591 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 288 },
592 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 289 },
593 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 291 },
594 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 292 },
595 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 293 },
596 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 297 },
597 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 298 },
598 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 161 },
599 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 300 },
600 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 306 },
601 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 238 },
602 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 307 },
603 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 309 },
604 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 310 },
605 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 311 },
606 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 314 },
607 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 316 },
608 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
609 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 318 },
610 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 255 },
611 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 319 },
612 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 320 },
613 .{ .char = 'E', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 321 },
614 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 322 },
615 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 323 },
616 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 325 },
617 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 326 },
618 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 325 },
619 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 327 },
620 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 328 },
621 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
622 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 329 },
623 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 331 },
624 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 332 },
625 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 158 },
554 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 272 },
555 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 273 },
556 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 274 },
557 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 275 },
558 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 277 },
559 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 14, .child_index = 278 },
560 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 282 },
561 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 283 },
562 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 159 },
563 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 19, .child_index = 285 },
564 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 291 },
565 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 292 },
566 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 18, .child_index = 293 },
567 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 296 },
568 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 298 },
569 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 299 },
570 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 300 },
571 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 242 },
572 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 301 },
573 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 302 },
574 .{ .char = 'E', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 303 },
575 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 304 },
576 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 305 },
577 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 307 },
578 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 308 },
579 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 307 },
580 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 309 },
581 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 310 },
582 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 309 },
583 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 311 },
584 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 313 },
585 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 314 },
586 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 156 },
626587 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
627 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 284 },
628 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 333 },
629 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 334 },
630 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
631 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 336 },
632 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 337 },
633 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 341 },
634 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 342 },
635 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 343 },
636 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 344 },
637 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 344 },
638 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 318 },
639 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 345 },
640 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 346 },
641 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 347 },
642 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 348 },
643 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 349 },
644 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 350 },
645 .{ .char = 'j', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 351 },
646 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 352 },
647 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 353 },
648 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 355 },
649 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 356 },
650 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 356 },
651 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 358 },
652 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 355 },
653 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 359 },
654 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 360 },
655 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 362 },
656 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 363 },
657 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 364 },
658 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 365 },
659 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 366 },
660 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 367 },
661 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 368 },
662 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 297 },
663 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 369 },
664 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
665 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 371 },
666 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 375 },
667 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 376 },
668 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 377 },
669 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 378 },
670 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 379 },
671 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 285 },
588 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 271 },
589 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 315 },
590 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 316 },
591 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
592 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 318 },
593 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 319 },
594 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 323 },
595 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 324 },
596 .{ .char = 'b', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 325 },
597 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
598 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 326 },
599 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 300 },
600 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
601 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 328 },
602 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 329 },
603 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 330 },
604 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 331 },
605 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 332 },
606 .{ .char = 'f', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 333 },
607 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 335 },
608 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 336 },
609 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 336 },
610 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 338 },
611 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 335 },
612 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 339 },
613 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 340 },
614 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 8, .child_index = 342 },
615 .{ .char = 'm', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 343 },
616 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 344 },
617 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 345 },
618 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 346 },
619 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 347 },
620 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 348 },
621 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 7, .child_index = 349 },
622 .{ .char = 't', .end_of_word = false, .end_of_list = false, .number = 10, .child_index = 353 },
623 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 354 },
624 .{ .char = 'e', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 355 },
625 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 356 },
626 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 357 },
627 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 272 },
672628 .{ .char = 'q', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
673 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 380 },
674 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 381 },
675 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 385 },
676 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 386 },
677 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 387 },
678 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
679 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 211 },
680 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 388 },
681 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 389 },
682 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 390 },
683 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 327 },
684 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 327 },
685 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 328 },
686 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 391 },
629 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 358 },
630 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 359 },
631 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 363 },
632 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 364 },
633 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 365 },
634 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
635 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 203 },
636 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 366 },
637 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 367 },
638 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 368 },
639 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 309 },
640 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 309 },
641 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 310 },
642 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 369 },
687643 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
688644 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
689 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 387 },
645 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 365 },
690646 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
691 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 211 },
692 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 211 },
693 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 211 },
694 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 211 },
695 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 392 },
647 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 203 },
648 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 203 },
649 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 203 },
650 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 203 },
651 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 370 },
696652 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 87 },
697 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 393 },
698 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 394 },
699 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 395 },
700 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 396 },
701 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 397 },
702 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 398 },
703 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 399 },
704 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 399 },
705 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 400 },
706 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 402 },
707 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 403 },
708 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 404 },
709 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 359 },
710 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 405 },
711 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 405 },
712 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 403 },
713 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 404 },
714 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 406 },
715 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 407 },
716 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 408 },
717 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 409 },
718 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 410 },
719 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 411 },
720 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 412 },
721 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 413 },
722 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 358 },
723 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 414 },
653 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 371 },
654 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 372 },
655 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 373 },
656 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 374 },
657 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 375 },
658 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 376 },
659 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 376 },
660 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 377 },
661 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 378 },
662 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 379 },
663 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 339 },
664 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 380 },
665 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 380 },
666 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 378 },
667 .{ .char = '8', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 379 },
668 .{ .char = 'l', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 381 },
669 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 382 },
670 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 383 },
671 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 384 },
672 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 385 },
673 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 386 },
674 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 387 },
675 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 388 },
724676 .{ .char = 'r', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
725 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 415 },
726 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 415 },
727 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 416 },
728 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 415 },
729 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 417 },
730 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 420 },
731 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 421 },
732 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 422 },
733 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 423 },
734 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 427 },
677 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 389 },
678 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 389 },
679 .{ .char = 'i', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 390 },
680 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 389 },
681 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 391 },
682 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 394 },
683 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 395 },
684 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 396 },
685 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 397 },
686 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 401 },
735687 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 110 },
736688 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 91 },
737 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 429 },
689 .{ .char = 'o', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 403 },
738690 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
739 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 430 },
740 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 431 },
691 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 404 },
692 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 405 },
741693 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
742 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 432 },
743 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 336 },
744 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 433 },
745 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 435 },
746 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 436 },
747 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 437 },
748 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 438 },
749 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 439 },
750 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 211 },
751 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 440 },
752 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 441 },
753 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 297 },
754 .{ .char = 'c', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 442 },
755 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 443 },
756 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 10, .child_index = 444 },
757 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 404 },
758 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 446 },
759 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 447 },
760 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 448 },
761 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 449 },
762 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 450 },
763 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 451 },
764 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 452 },
765 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 453 },
766 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 454 },
767 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 455 },
768 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 456 },
769 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 457 },
770 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 459 },
771 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 460 },
772 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 415 },
773 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 460 },
774 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 416 },
775 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 461 },
776 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 462 },
777 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 463 },
778 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 463 },
779 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 463 },
780 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 463 },
694 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 406 },
695 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 318 },
696 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 407 },
697 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 409 },
698 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 410 },
699 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 411 },
700 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 412 },
701 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 413 },
702 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 203 },
703 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 414 },
704 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 282 },
705 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 15, .child_index = 415 },
706 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 379 },
707 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 417 },
708 .{ .char = 'd', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 418 },
709 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 419 },
710 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 420 },
711 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 421 },
712 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 422 },
713 .{ .char = 'l', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 423 },
714 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 424 },
715 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 425 },
716 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 426 },
717 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 427 },
718 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 429 },
719 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 430 },
720 .{ .char = 'h', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 389 },
721 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 430 },
722 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 390 },
723 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 431 },
724 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 432 },
725 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 433 },
726 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 433 },
727 .{ .char = 'q', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 433 },
728 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 433 },
781729 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 110 },
782730 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
783 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 466 },
784 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 467 },
785 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 468 },
786 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 469 },
731 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 436 },
732 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 437 },
733 .{ .char = 'y', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 438 },
734 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 439 },
787735 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 91 },
788736 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
789 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 470 },
790 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 211 },
791 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 471 },
792 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 473 },
793 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 474 },
794 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 475 },
795 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 476 },
796 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 477 },
797 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 478 },
798 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 479 },
799 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 480 },
800 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 447 },
801 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 481 },
802 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 482 },
803 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 483 },
804 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 484 },
805 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 485 },
806 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 486 },
807 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 487 },
808 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 447 },
809 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 479 },
810 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 488 },
811 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 336 },
812 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 389 },
813 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 489 },
814 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 490 },
815 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 492 },
816 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 493 },
737 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 440 },
738 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 203 },
739 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 441 },
740 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 443 },
741 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 444 },
742 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 445 },
743 .{ .char = 'd', .end_of_word = false, .end_of_list = false, .number = 3, .child_index = 446 },
744 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 447 },
745 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 418 },
746 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 448 },
747 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 449 },
748 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 450 },
749 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 451 },
750 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 452 },
751 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 453 },
752 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 454 },
753 .{ .char = 'o', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 418 },
754 .{ .char = '3', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 455 },
755 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 318 },
756 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 367 },
757 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 456 },
758 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 457 },
759 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 459 },
760 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 460 },
817761 .{ .char = '1', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 37 },
818 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 494 },
819 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 495 },
762 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 461 },
763 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 462 },
820764 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 91 },
821 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 496 },
822 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
823 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 471 },
824 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 497 },
825 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 498 },
765 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 463 },
766 .{ .char = 'x', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
767 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 441 },
768 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 464 },
769 .{ .char = '3', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 465 },
826770 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 110 },
827 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 499 },
828 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 500 },
829 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
830 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 501 },
831 .{ .char = 'm', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 502 },
832 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 503 },
833 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 404 },
834 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 504 },
835 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
836 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 506 },
837 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
838 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 508 },
839 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 511 },
840 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 512 },
841 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 513 },
842 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 514 },
843 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 515 },
844 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 516 },
845 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 517 },
846 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 518 },
847 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 519 },
848 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 521 },
849 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 498 },
850 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 522 },
851 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 523 },
771 .{ .char = '_', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 466 },
772 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 467 },
773 .{ .char = 'w', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
774 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 468 },
775 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 469 },
776 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 470 },
777 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 471 },
778 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 472 },
779 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 473 },
780 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 476 },
781 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 477 },
782 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 478 },
783 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 379 },
784 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 479 },
785 .{ .char = 's', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 480 },
786 .{ .char = 'u', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 481 },
787 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 482 },
788 .{ .char = 'v', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 483 },
789 .{ .char = '5', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 485 },
790 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 465 },
791 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 486 },
792 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 487 },
852793 .{ .char = '2', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
853 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 524 },
854 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
855 .{ .char = 'z', .end_of_word = false, .end_of_list = true, .number = 16, .child_index = 525 },
856 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 349 },
857 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 447 },
858 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 8, .child_index = 527 },
859 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 529 },
860 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 530 },
861 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 531 },
862 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 532 },
863 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 533 },
864 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 534 },
865 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 447 },
794 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 488 },
795 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
796 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 3, .child_index = 489 },
797 .{ .char = '2', .end_of_word = false, .end_of_list = true, .number = 12, .child_index = 490 },
798 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 492 },
799 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 493 },
800 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 494 },
801 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 495 },
802 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 496 },
803 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 497 },
804 .{ .char = 'w', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 498 },
866805 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 109 },
867 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 535 },
868 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 405 },
806 .{ .char = 'd', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 500 },
869807 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 35 },
870 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 427 },
871 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 516 },
872 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 325 },
873 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 325 },
874 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 325 },
808 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 401 },
809 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 480 },
810 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 307 },
811 .{ .char = '2', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 307 },
812 .{ .char = '4', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 307 },
875813 .{ .char = '6', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
876 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 536 },
877 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 335 },
878 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 537 },
879 .{ .char = '0', .end_of_word = true, .end_of_list = false, .number = 8, .child_index = 538 },
880 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 8, .child_index = 538 },
881 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 541 },
882 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 542 },
883 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 543 },
884 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 544 },
885 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 545 },
886 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 447 },
887 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 546 },
888 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 535 },
889 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 532 },
814 .{ .char = 'g', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 501 },
815 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 317 },
816 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 502 },
817 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 498 },
818 .{ .char = 'b', .end_of_word = false, .end_of_list = false, .number = 6, .child_index = 503 },
819 .{ .char = 'p', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 504 },
820 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 505 },
821 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 506 },
822 .{ .char = 'c', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 507 },
823 .{ .char = '4', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 418 },
824 .{ .char = 's', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 508 },
825 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 500 },
826 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 448 },
827 .{ .char = 'i', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
828 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 495 },
890829 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 30 },
891 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 548 },
892 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 481 },
893 .{ .char = 'r', .end_of_word = false, .end_of_list = false, .number = 4, .child_index = 549 },
894 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 550 },
895 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 551 },
896 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 552 },
897 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 554 },
898 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 555 },
899 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 556 },
900 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 532 },
901 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 534 },
830 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 510 },
831 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 511 },
832 .{ .char = 'h', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 512 },
833 .{ .char = 'e', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 514 },
834 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 515 },
835 .{ .char = 'o', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 516 },
836 .{ .char = '6', .end_of_word = false, .end_of_list = false, .number = 2, .child_index = 495 },
837 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 497 },
902838 .{ .char = 'p', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
903 .{ .char = 's', .end_of_word = true, .end_of_list = true, .number = 4, .child_index = 557 },
904 .{ .char = '1', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 447 },
905 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 559 },
906 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 2, .child_index = 447 },
907 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 447 },
908 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 560 },
909 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 561 },
910 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 562 },
911 .{ .char = '_', .end_of_word = false, .end_of_list = false, .number = 1, .child_index = 481 },
912 .{ .char = 't', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 550 },
913 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 4, .child_index = 552 },
914 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 563 },
915 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 564 },
916 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 565 },
917 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 566 },
918 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 447 },
919 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 567 },
839 .{ .char = '1', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 517 },
840 .{ .char = 'h', .end_of_word = true, .end_of_list = false, .number = 3, .child_index = 498 },
841 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 3, .child_index = 498 },
842 .{ .char = 'r', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 518 },
843 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 519 },
844 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 520 },
845 .{ .char = '6', .end_of_word = false, .end_of_list = true, .number = 6, .child_index = 512 },
846 .{ .char = 'n', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 521 },
847 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 2, .child_index = 522 },
848 .{ .char = 'f', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 523 },
849 .{ .char = 'a', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 524 },
850 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 2, .child_index = 418 },
851 .{ .char = 'i', .end_of_word = false, .end_of_list = true, .number = 1, .child_index = 525 },
920852 .{ .char = 'l', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
921853 .{ .char = 'g', .end_of_word = true, .end_of_list = true, .number = 1, .child_index = 0 },
922854};
923855pub const data = blk: {
924 @setEvalBranchQuota(1737);
856 @setEvalBranchQuota(1503);
925857 break :blk [_]Properties{
926858 .{ .param_str = "UcUNi*ULLi", .header = .intrin, .language = .all_ms_languages },
927859 .{ .param_str = "UcUNi*ULLi", .header = .intrin, .language = .all_ms_languages },
......@@ -973,40 +905,25 @@ pub const data = blk: {
973905 .{ .param_str = "vUWi", .features = "uintr" },
974906 .{ .param_str = "v", .features = "uintr" },
975907 .{ .param_str = "UcUcUOiUOiUOi*", .attributes = .{ .const_evaluable = true } },
976 .{ .param_str = "vIUcvC*z", .features = "amx_transpose" },
977 .{ .param_str = "vUsUsUsV256i*V256i*vC*z", .features = "amx_transpose" },
978 .{ .param_str = "vIUcvC*z", .features = "amx_movrs,amx_transpose" },
979 .{ .param_str = "vUsUsUsV256i*V256i*vC*z", .features = "amx_movrs,amx_transpose" },
980 .{ .param_str = "vIUcvC*z", .features = "amx_movrs,amx_transpose" },
981 .{ .param_str = "vUsUsUsV256i*V256i*vC*z", .features = "amx_movrs,amx_transpose" },
982 .{ .param_str = "vIUcvC*z", .features = "amx_transpose" },
983 .{ .param_str = "vUsUsUsV256i*V256i*vC*z", .features = "amx_transpose" },
984 .{ .param_str = "vIUcvC*z", .features = "amx_transpose" },
985 .{ .param_str = "vUsUsUsV256i*V256i*vC*z", .features = "amx_transpose" },
986 .{ .param_str = "vIUcvC*z", .features = "amx_movrs,amx_transpose" },
987 .{ .param_str = "vUsUsUsV256i*V256i*vC*z", .features = "amx_movrs,amx_transpose" },
988 .{ .param_str = "vIUcvC*z", .features = "amx_movrs,amx_transpose" },
989 .{ .param_str = "vUsUsUsV256i*V256i*vC*z", .features = "amx_movrs,amx_transpose" },
990 .{ .param_str = "vIUcvC*z", .features = "amx_transpose" },
991 .{ .param_str = "vUsUsUsV256i*V256i*vC*z", .features = "amx_transpose" },
992908 .{ .param_str = "vIUcIUcIUc", .features = "amx_complex" },
993909 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_complex" },
994910 .{ .param_str = "vIUcIUcIUc", .features = "amx_complex" },
995911 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_complex" },
996 .{ .param_str = "vIUcIUcIUc", .features = "amx_complex,amx_transpose" },
997 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_complex,amx_transpose" },
998 .{ .param_str = "vIUcIUc", .features = "amx_complex,amx_transpose" },
999 .{ .param_str = "V256iUsUsV256i", .features = "amx_complex,amx_transpose" },
1000912 .{ .param_str = "V16fIUcUi", .features = "amx_avx512,avx10_2" },
1001913 .{ .param_str = "V16fUsUsV256iUi", .features = "amx_avx512,avx10_2" },
914 .{ .param_str = "V16fIUcIUi", .features = "amx_avx512,avx10_2" },
1002915 .{ .param_str = "V32yIUcUi", .features = "amx_avx512,avx10_2" },
1003916 .{ .param_str = "V32yUsUsV256iUi", .features = "amx_avx512,avx10_2" },
917 .{ .param_str = "V32yIUcIUi", .features = "amx_avx512,avx10_2" },
1004918 .{ .param_str = "V32yIUcUi", .features = "amx_avx512,avx10_2" },
1005919 .{ .param_str = "V32yUsUsV256iUi", .features = "amx_avx512,avx10_2" },
920 .{ .param_str = "V32yIUcIUi", .features = "amx_avx512,avx10_2" },
1006921 .{ .param_str = "V32xIUcUi", .features = "amx_avx512,avx10_2" },
1007922 .{ .param_str = "V32xUsUsV256iUi", .features = "amx_avx512,avx10_2" },
923 .{ .param_str = "V32xIUcIUi", .features = "amx_avx512,avx10_2" },
1008924 .{ .param_str = "V32xIUcUi", .features = "amx_avx512,avx10_2" },
1009925 .{ .param_str = "V32xUsUsV256iUi", .features = "amx_avx512,avx10_2" },
926 .{ .param_str = "V32xIUcIUi", .features = "amx_avx512,avx10_2" },
1010927 .{ .param_str = "vIUcIUcIUc", .features = "amx_bf16" },
1011928 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_bf16" },
1012929 .{ .param_str = "vIUcUIcUIc", .features = "amx_fp8" },
......@@ -1041,6 +958,7 @@ pub const data = blk: {
1041958 .{ .param_str = "V256iUsUsvC*z", .features = "amx_tile" },
1042959 .{ .param_str = "V16iIUcUi", .features = "amx_avx512,avx10_2" },
1043960 .{ .param_str = "V16iUsUsV256iUi", .features = "amx_avx512,avx10_2" },
961 .{ .param_str = "V16iIUcIUi", .features = "amx_avx512,avx10_2" },
1044962 .{ .param_str = "v", .features = "amx_tile" },
1045963 .{ .param_str = "vIUcv*z", .features = "amx_tile" },
1046964 .{ .param_str = "vUsUsv*zV256i", .features = "amx_tile" },
......@@ -1048,18 +966,6 @@ pub const data = blk: {
1048966 .{ .param_str = "V256iUsUs", .features = "amx_tile" },
1049967 .{ .param_str = "vIUcIUcIUc", .features = "amx_tf32" },
1050968 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_tf32" },
1051 .{ .param_str = "vIUcIUcIUc", .features = "amx_complex,amx_transpose" },
1052 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_complex,amx_transpose" },
1053 .{ .param_str = "vIUcIUcIUc", .features = "amx_complex,amx_transpose" },
1054 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_complex,amx_transpose" },
1055 .{ .param_str = "vIUcIUcIUc", .features = "amx_bf16,amx_transpose" },
1056 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_bf16,amx_transpose" },
1057 .{ .param_str = "vIUcIUcIUc", .features = "amx_fp16,amx_transpose" },
1058 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_fp16,amx_transpose" },
1059 .{ .param_str = "vIUcIUcIUc", .features = "amx_tf32,amx_transpose" },
1060 .{ .param_str = "V256iUsUsUsV256iV256iV256i", .features = "amx_tf32,amx_transpose" },
1061 .{ .param_str = "vIUcIUc", .features = "amx_transpose" },
1062 .{ .param_str = "V256iUsUsV256i", .features = "amx_transpose" },
1063969 .{ .param_str = "UOiUOi", .attributes = .{ .@"const" = true, .const_evaluable = true } },
1064970 .{ .param_str = "UOiUOi", .features = "usermsr" },
1065971 .{ .param_str = "vUOiUOi", .features = "usermsr" },
......@@ -1081,9 +987,9 @@ pub const data = blk: {
1081987 .{ .param_str = "UOiV4fIi", .features = "avx512f", .attributes = .{ .@"const" = true } },
1082988 .{ .param_str = "UOiV4fIi", .features = "avx10_2", .attributes = .{ .@"const" = true } },
1083989 .{ .param_str = "V8xV8xUOiIi", .features = "avx512fp16", .attributes = .{ .@"const" = true } },
1084 .{ .param_str = "OiV4OiIi", .features = "avx", .attributes = .{ .@"const" = true } },
1085 .{ .param_str = "V2OiV2OiOiIi", .features = "sse4_1", .attributes = .{ .@"const" = true } },
1086 .{ .param_str = "V4OiV4OiOiIi", .features = "avx", .attributes = .{ .@"const" = true } },
990 .{ .param_str = "OiV4OiIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
991 .{ .param_str = "V2OiV2OiOiIi", .features = "sse4_1", .attributes = .{ .@"const" = true, .const_evaluable = true } },
992 .{ .param_str = "V4OiV4OiOiIi", .features = "avx", .attributes = .{ .@"const" = true, .const_evaluable = true } },
1087993 .{ .param_str = "V16cV16cC*", .features = "movrs,avx10_2" },
1088994 .{ .param_str = "V32cV32cC*", .features = "movrs,avx10_2" },
1089995 .{ .param_str = "V64cV64cC*", .features = "movrs,avx10_2" },
lib/compiler/aro/aro/CodeGen.zig+31-17
......@@ -9,6 +9,7 @@ const Builder = Ir.Builder;
99
1010const Builtins = @import("Builtins.zig");
1111const Compilation = @import("Compilation.zig");
12const Preprocessor = @import("Preprocessor.zig");
1213const StringId = @import("StringInterner.zig").StringId;
1314const Tree = @import("Tree.zig");
1415const Node = Tree.Node;
......@@ -37,6 +38,7 @@ const CodeGen = @This();
3738
3839tree: *const Tree,
3940comp: *Compilation,
41pp: *const Preprocessor,
4042builder: Builder,
4143wip_switch: *WipSwitch = undefined,
4244symbols: std.ArrayList(Symbol) = .empty,
......@@ -54,7 +56,7 @@ return_label: Ir.Ref = undefined,
5456compound_assign_dummy: ?Ir.Ref = null,
5557
5658fn fail(c: *CodeGen, comptime fmt: []const u8, args: anytype) error{ FatalError, OutOfMemory } {
57 var bfa_buf: [u8]1024 = undefined;
59 var bfa_buf: [1024]u8 = undefined;
5860 var bfa: std.heap.BufferFirstAllocator = .init(&bfa_buf, c.comp.gpa);
5961 const allocator = bfa.allocator();
6062 var buf: std.ArrayList(u8) = .empty;
......@@ -65,7 +67,7 @@ fn fail(c: *CodeGen, comptime fmt: []const u8, args: anytype) error{ FatalError,
6567 return error.FatalError;
6668}
6769
68pub fn genIr(tree: *const Tree) Compilation.Error!Ir {
70pub fn genIr(tree: *const Tree, pp: *const Preprocessor) Compilation.Error!Ir {
6971 const gpa = tree.comp.gpa;
7072 var c: CodeGen = .{
7173 .builder = .{
......@@ -75,6 +77,7 @@ pub fn genIr(tree: *const Tree) Compilation.Error!Ir {
7577 },
7678 .tree = tree,
7779 .comp = tree.comp,
80 .pp = pp,
7881 };
7982 defer c.symbols.deinit(gpa);
8083 defer c.ret_nodes.deinit(gpa);
......@@ -101,13 +104,16 @@ pub fn genIr(tree: *const Tree) Compilation.Error!Ir {
101104
102105 .function => |function| {
103106 if (function.body == null) continue;
107 if (function.@"inline") continue;
104108 c.genFn(function) catch |err| switch (err) {
105 error.FatalError, error.OutOfMemory => |e| return e,
109 error.FatalError => return error.FatalError,
110 error.OutOfMemory => return error.OutOfMemory,
106111 };
107112 },
108113
109114 .variable => |variable| c.genVar(variable) catch |err| switch (err) {
110 error.FatalError, error.OutOfMemory => |e| return e,
115 error.FatalError => return error.FatalError,
116 error.OutOfMemory => return error.OutOfMemory,
111117 },
112118 .global_asm => {
113119 return c.fail("TODO global assembly", .{});
......@@ -149,12 +155,14 @@ fn genType(c: *CodeGen, qt: QualType) !Interner.Ref {
149155 },
150156 .pointer => return .ptr,
151157 .func => return .func,
158 .block => return c.fail("TODO lower blocks", .{}),
152159 .complex => return c.fail("TODO lower complex types", .{}),
153160 .atomic => return c.fail("TODO lower atomic types", .{}),
154161 .@"enum" => |@"enum"| return c.genType(@"enum".tag.?),
155162 .int => |int| .{ .int_ty = int.bits(c.comp) },
156163 .bit_int => |bit_int| .{ .int_ty = bit_int.bits },
157164 .float => |float| .{ .float_ty = float.bits(c.comp) },
165 .storage_float => |storage_float| .{ .int_ty = storage_float.bits() },
158166 .array => |array| blk: {
159167 switch (array.len) {
160168 .fixed, .static => |len| {
......@@ -172,7 +180,7 @@ fn genType(c: *CodeGen, qt: QualType) !Interner.Ref {
172180 .nullptr_t => {
173181 return c.fail("TODO lower nullptr_t", .{});
174182 },
175 .attributed, .typeof, .typedef => unreachable,
183 .typeof, .typedef => unreachable,
176184 };
177185 return c.builder.interner.put(c.builder.gpa, key);
178186}
......@@ -428,14 +436,7 @@ fn genExpr(c: *CodeGen, node_index: Node.Index) Error!Ir.Ref {
428436 const old_continue_label = c.continue_label;
429437 defer c.continue_label = old_continue_label;
430438
431 switch (@"for".init) {
432 .decls => |decls| {
433 for (decls) |decl| try c.genStmt(decl);
434 },
435 .expr => |maybe_init| {
436 if (maybe_init) |init| _ = try c.genExpr(init);
437 },
438 }
439 if (@"for".init) |init| try c.genStmt(init);
439440
440441 const cond = @"for".cond orelse {
441442 const then_label = try c.builder.makeLabel("for.then");
......@@ -499,7 +500,12 @@ fn genExpr(c: *CodeGen, node_index: Node.Index) Error!Ir.Ref {
499500 .computed_goto_stmt,
500501 .nullptr_literal,
501502 .asm_stmt,
502 => return c.fail("TODO CodeGen.genStmt {s}\n", .{@tagName(node)}),
503 => return c.fail("TODO CodeGen.genStmt {t}\n", .{node}),
504 .decl_stmt => |decl_stmt| {
505 for (decl_stmt.decls) |decl| {
506 try c.genStmt(decl);
507 }
508 },
503509 .comma_expr => |bin| {
504510 _ = try c.genExpr(bin.lhs);
505511 return c.genExpr(bin.rhs);
......@@ -868,7 +874,15 @@ fn genExpr(c: *CodeGen, node_index: Node.Index) Error!Ir.Ref {
868874 .sizeof_expr,
869875 .builtin_va_arg_pack,
870876 .builtin_va_arg_pack_len,
871 => return c.fail("TODO CodeGen.genExpr {s}\n", .{@tagName(node)}),
877 => return c.fail("TODO CodeGen.genExpr {t}\n", .{node}),
878 .codegen_diagnostic => |diagnostic| {
879 try c.comp.diagnostics.addWithLocation(c.comp, .{
880 .kind = diagnostic.kind,
881 .text = @ptrCast(diagnostic.text),
882 .opt = diagnostic.opt,
883 .location = node_index.loc(c.tree).expand(c.comp),
884 }, c.pp.expansionSlice(diagnostic.tok), true);
885 },
872886 else => unreachable, // Not an expression.
873887 }
874888 return .none;
......@@ -924,7 +938,7 @@ fn genLval(c: *CodeGen, node_index: Node.Index) Error!Ir.Ref {
924938 .member_access_expr,
925939 .member_access_ptr_expr,
926940 .array_access_expr,
927 => return c.fail("TODO CodeGen.genLval {s}\n", .{@tagName(node)}),
941 => return c.fail("TODO CodeGen.genLval {t}\n", .{node}),
928942 else => unreachable, // Not an lval expression.
929943 }
930944}
......@@ -1181,7 +1195,7 @@ fn genInitializer(c: *CodeGen, ptr: Ir.Ref, dest_ty: QualType, initializer: Node
11811195 .union_init_expr,
11821196 .array_filler_expr,
11831197 .default_init_expr,
1184 => return c.fail("TODO CodeGen.genInitializer {s}\n", .{@tagName(node)}),
1198 => return c.fail("TODO CodeGen.genInitializer {t}\n", .{node}),
11851199 .string_literal_expr => {
11861200 const val = c.tree.value_map.get(initializer).?;
11871201 const str_ptr = try c.builder.addConstant(val.ref(), .ptr);
lib/compiler/aro/aro/Compilation.zig+597-109
......@@ -25,7 +25,7 @@ const Type = TypeStore.Type;
2525const QualType = TypeStore.QualType;
2626
2727pub const Error = error{
28 /// A fatal error has ocurred and compilation has stopped.
28 /// A fatal error has occurred and compilation has stopped.
2929 FatalError,
3030} || Allocator.Error;
3131pub const AddSourceError = Error || error{FileTooBig};
......@@ -140,7 +140,7 @@ io: Io,
140140cwd: std.Io.Dir,
141141diagnostics: *Diagnostics,
142142
143sources: std.array_hash_map.String(Source) = .empty,
143sources: std.StringArrayHashMapUnmanaged(Source) = .empty,
144144source_aliases: std.ArrayList(Source) = .empty,
145145/// Allocated into `gpa`, but keys are externally managed.
146146search_path: std.ArrayList(Include) = .empty,
......@@ -159,7 +159,7 @@ builtins: Builtins = .{},
159159string_interner: StringInterner = .{},
160160interner: Interner = .{},
161161type_store: TypeStore = .{},
162pragma_handlers: std.array_hash_map.String(*Pragma) = .empty,
162pragma_handlers: std.StringArrayHashMapUnmanaged(*Pragma) = .empty,
163163/// If this is not null, the directory containing the specified Source will be searched for includes
164164/// Used by MS extensions which allow searching for includes relative to the directory of the main source file.
165165ms_cwd_source_id: ?Source.Id = null,
......@@ -185,6 +185,16 @@ pub const InitOptions = struct {
185185 .environ_map = null,
186186 .add_default_pragma_handlers = false,
187187 };
188
189 var fuzzing_diagnostics: Diagnostics = .{ .output = .ignore };
190 pub const fuzzing: InitOptions = .{
191 .gpa = std.testing.allocator,
192 .arena = undefined,
193 .io = std.Io.failing,
194 .diagnostics = &fuzzing_diagnostics,
195 .environ_map = null,
196 .add_default_pragma_handlers = false,
197 };
188198};
189199
190200/// Initialize Compilation with default environment,
......@@ -215,6 +225,9 @@ pub fn deinit(comp: *Compilation) void {
215225 pragma.deinit(pragma, comp);
216226 }
217227 for (comp.sources.values()) |source| {
228 if (source.umbrella_framework_path) |path| {
229 assert(path.ptr == source.path.ptr);
230 }
218231 gpa.free(source.path);
219232 gpa.free(source.buf);
220233 gpa.free(source.splice_locs);
......@@ -262,6 +275,11 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
262275 , .{ name, name });
263276 }
264277 }.defineStd;
278 const defineBool = struct {
279 fn defineBool(_w: *Io.Writer, name: []const u8, value: bool) !void {
280 try _w.print("#define {s} {d}\n", .{ name, @intFromBool(value) });
281 }
282 }.defineBool;
265283 const target = &comp.target;
266284 const ptr_width = target.ptrBitWidth();
267285 const is_gnu = comp.langopts.standard.isGNU();
......@@ -301,6 +319,89 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
301319 if (comp.code_gen_options.optimization_level.isSizeOptimized()) {
302320 try define(w, "__OPTIMIZE_SIZE__");
303321 }
322 if (comp.langopts.pthread) switch (target.os.tag) {
323 .maccatalyst,
324 .macos,
325 .tvos,
326 .ios,
327 .driverkit,
328 .visionos,
329 .watchos,
330 .hurd,
331 .linux,
332 .netbsd,
333 .openbsd,
334 .fuchsia,
335 => try define(w, "_REENTRANT"),
336 .windows => if (target.abi == .msvc) {
337 // This matches clang where it is marked as a FIXME
338 try define(w, "_MT");
339 },
340 .emscripten => try define(w, "__EMSCRIPTEN_PTHREADS__"),
341 else => {},
342 };
343
344 // Target OS macros, transcribed from LLVM TargetOSMacros.def
345 if (comp.langopts.hasTargetOsMacros()) {
346 // Windows
347 try defineBool(w, "TARGET_OS_WIN32", target.os.tag == .windows);
348 try defineBool(w, "TARGET_OS_WINDOWS", target.os.tag == .windows);
349
350 // Linux
351 try defineBool(w, "TARGET_OS_LINUX", target.os.tag == .linux);
352
353 // Unix
354 try defineBool(
355 w,
356 "TARGET_OS_UNIX",
357 switch (target.os.tag) {
358 .freebsd, .openbsd, .netbsd, .illumos => true,
359 else => false,
360 },
361 );
362
363 // Apple Targets
364 try defineBool(w, "TARGET_OS_MAC", target.os.tag.isDarwin());
365 // NOTE: LLVM checks the triple for "Triple::Darwin" as well, but this
366 // is different from "isOSDarwin()" and would be like if Zig had a
367 // ".darwin" OS tag, but it doesn't.
368 try defineBool(w, "TARGET_OS_OSX", target.os.tag == .macos);
369 try defineBool(
370 w,
371 "TARGET_OS_IPHONE",
372 switch (target.os.tag) {
373 .ios, .tvos, .watchos => true,
374 else => false,
375 },
376 );
377 try defineBool(w, "TARGET_OS_IOS", target.os.tag == .ios);
378 try defineBool(w, "TARGET_OS_TV", target.os.tag == .tvos);
379 try defineBool(w, "TARGET_OS_WATCH", target.os.tag == .watchos);
380 try defineBool(w, "TARGET_OS_VISION", target.os.tag == .visionos);
381 try defineBool(w, "TARGET_OS_DRIVERKIT", target.os.tag == .driverkit);
382 // Note that LLVM has this as an actual target environment (ABI). Zig
383 // doesn't, so just doing a best effort here and assuming that all
384 // catalyst apps will be tagged as such in the OS.
385 try defineBool(w, "TARGET_OS_MACCATALYST", target.os.tag == .maccatalyst);
386 // Note that there are no other guards for this macro in LLVM either -
387 // running under the assumption that the only things that uses the
388 // ".simulator" ABI are the appropriate Apple device simulators.
389 try defineBool(w, "TARGET_OS_SIMULATOR", target.abi == .simulator);
390 try defineBool(
391 w,
392 "TARGET_OS_EMBEDDED",
393 switch (target.os.tag) {
394 .ios, .tvos, .visionos, .watchos => true,
395 else => false,
396 } and target.abi != .simulator,
397 );
398 try defineBool(w, "TARGET_OS_NANO", target.os.tag == .watchos);
399 try defineBool(w, "TARGET_IPHONE_SIMULATOR", target.abi == .simulator);
400 try defineBool(w, "TARGET_OS_UIKITFORMAC", target.os.tag == .maccatalyst);
401
402 // UEFI
403 try defineBool(w, "TARGET_OS_UEFI", target.os.tag == .uefi);
404 }
304405
305406 // os macros
306407 switch (target.os.tag) {
......@@ -317,6 +418,8 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
317418 if (ptr_width == 64) {
318419 try defineStd(w, "WIN64", is_gnu);
319420 try define(w, "__MINGW64__");
421 } else {
422 try define(w, "_X86_");
320423 }
321424 try define(w, "__MSVCRT__");
322425 try define(w, "__MINGW32__");
......@@ -380,25 +483,40 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
380483 const version = target.os.version_range.semver.min;
381484 var version_buf: [8]u8 = undefined;
382485 const version_str = if (target.os.tag == .macos and version.order(.{ .major = 10, .minor = 10, .patch = 0 }) == .lt)
383 std.fmt.bufPrint(&version_buf, "{d}{d}{d}", .{ version.major, @min(version.minor, 9), @min(version.patch, 9) }) catch unreachable
486 mem.print(&version_buf, "{d}{d}{d}", .{ version.major, @min(version.minor, 9), @min(version.patch, 9) }) catch unreachable
384487 else
385 std.fmt.bufPrint(&version_buf, "{d:0>2}{d:0>2}{d:0>2}", .{ version.major, @min(version.minor, 99), @min(version.patch, 99) }) catch unreachable;
386
387 try w.print("#define {s} {s}\n", .{ switch (target.os.tag) {
388 .tvos => "__ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__",
389 .ios, .maccatalyst => "__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__",
390 .watchos => "__ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__",
391 .driverkit => "__ENVIRONMENT_DRIVERKIT_VERSION_MIN_REQUIRED__",
392 .macos => "__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__",
393 else => unreachable,
394 }, version_str });
488 mem.print(&version_buf, "{d:0>2}{d:0>2}{d:0>2}", .{ version.major, @min(version.minor, 99), @min(version.patch, 99) }) catch unreachable;
489
490 platform_os_version_define: {
491 try w.print("#define {s} {s}\n", .{
492 switch (target.os.tag) {
493 .tvos => "__ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__",
494 .ios, .maccatalyst => "__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__",
495 .watchos => "__ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__",
496 .driverkit => "__ENVIRONMENT_DRIVERKIT_VERSION_MIN_REQUIRED__",
497 .macos => "__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__",
498 .visionos => {
499 // No platform-specific OS version define for visionOS
500 break :platform_os_version_define;
501 },
502 else => unreachable,
503 },
504 version_str,
505 });
506 }
395507
396508 try w.print("#define __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ {s}\n", .{version_str});
397509 },
398510 .wasi => try define(w, "__wasi__"),
399511 .emscripten => try define(w, "__EMSCRIPTEN__"),
512 .serenity => try define(w, "__serenity__"),
513 .@"switch" => try define(w, "__SWITCH__"),
400514 .@"3ds" => try define(w, "__3DS__"),
515 .gba => try define(w, "__GBA__"),
516 .psp => try define(w, "__PSP__"),
517 .psx => try define(w, "__psx__"),
401518 .vita => try define(w, "__vita__"),
519 .wiiu => try define(w, "__WIIU__"),
402520 else => {},
403521 }
404522
......@@ -416,9 +534,6 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
416534 .ps4,
417535 .ps5,
418536 => try defineStd(w, "unix", is_gnu),
419 .windows => if (target.abi.isGnu()) {
420 try defineStd(w, "unix", is_gnu);
421 },
422537 else => {},
423538 }
424539 if (target.abi.isAndroid()) {
......@@ -637,6 +752,106 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
637752 => {
638753 try define(w, "__mips__");
639754 try define(w, "_mips");
755 if (is_gnu) try define(w, "mips");
756 switch (target.cpu.arch) {
757 .mips, .mips64 => {
758 try define(w, "_MIPSEB");
759 try defineStd(w, "MIPSEB", is_gnu);
760 },
761 .mipsel,
762 .mips64el,
763 => {
764 try define(w, "_MIPSEL");
765 try defineStd(w, "MIPSEL", is_gnu);
766 },
767 else => unreachable,
768 }
769
770 switch (target.mipsAbi()) {
771 .o32 => {
772 try define(w, "__mips_o32");
773 try define(w, "_ABIO32");
774 try w.writeAll("#define _MIPS_SIM _ABIO32\n");
775 try w.writeAll("#define __mips 32\n");
776 try w.writeAll("#define _MIPS_ISA _MIPS_ISA_MIPS32\n");
777 },
778 .n32 => {
779 try define(w, "__mips_n32");
780 try w.writeAll("#define _ABIN32 2\n");
781 try w.writeAll("#define _MIPS_SIM _ABIN32\n");
782 try w.writeAll("#define __mips 64\n");
783 try define(w, "__mips64");
784 try define(w, "__mips64__");
785 try w.writeAll("#define _MIPS_ISA _MIPS_ISA_MIPS64\n");
786 },
787 .n64 => {
788 try define(w, "__mips_n64");
789 try w.writeAll("#define _ABI64 3\n");
790 try w.writeAll("#define _MIPS_SIM _ABI64\n");
791 try w.writeAll("#define __mips 64\n");
792 try define(w, "__mips64");
793 try define(w, "__mips64__");
794 try w.writeAll("#define _MIPS_ISA _MIPS_ISA_MIPS64\n");
795 },
796 }
797 if (target.cpu.model.llvm_name) |name| {
798 try w.print("#define _MIPS_ARCH \"{s}\"\n", .{name});
799 var buf: [16]u8 = undefined;
800 const upper = std.ascii.upperString(&buf, name);
801 try w.print("#define _MIPS_ARCH_{s} 1\n", .{upper});
802 }
803
804 if (!target.cpu.has(.mips, .noabicalls)) {
805 try define(w, "__mips_abicalls");
806 if (target.os.tag.isBSD()) {
807 try define(w, "__ABICALLS__");
808 }
809 }
810
811 if (target.cpu.has(.mips, .soft_float)) {
812 try define(w, "__mips_soft_float");
813 } else {
814 try define(w, "__mips_hard_float");
815 }
816 if (target.cpu.has(.mips, .single_float)) {
817 try define(w, "__mips_single_float");
818 }
819 {
820 const fpr: u8 = switch (target.defaultMipsFpMode()) {
821 .fp32 => 32,
822 .fp64 => 64,
823 .fpxx => 0,
824 };
825 try w.print("#define __mips_fpr {d}\n", .{fpr});
826 const fpset: u8 = if (target.defaultMipsFpMode() == .fp64 or
827 target.cpu.has(.mips, .single_float)) 32 else 16;
828 try w.print("#define _MIPS_FPSET {d}\n", .{fpset});
829 const spfpset: u8 = if (target.cpu.has(.mips, .nooddspreg) or
830 target.defaultMipsFpMode() == .fpxx) 16 else 32;
831 try w.print("#define _MIPS_SPFPSET {d}\n", .{spfpset});
832 }
833 if (target.cpu.has(.mips, .mips16)) try define(w, "__mips16");
834 if (target.cpu.has(.mips, .micromips)) try define(w, "__mips_micromips");
835 if (target.cpu.has(.mips, .nan2008)) try define(w, "__mips_nan2008");
836 if (target.cpu.has(.mips, .abs2008)) try define(w, "__mips_abs2008");
837 if (target.cpu.has(.mips, .dspr3)) {
838 try w.print("#define __mips_dsp_rev 3\n", .{});
839 try w.print("#define __mips_dsp 3\n", .{});
840 try define(w, "__mips_dspr3");
841 } else if (target.cpu.has(.mips, .dspr2)) {
842 try w.print("#define __mips_dsp_rev 2\n", .{});
843 try w.print("#define __mips_dsp 2\n", .{});
844 try define(w, "__mips_dspr2");
845 } else if (target.cpu.has(.mips, .dsp)) {
846 try w.print("#define __mips_dsp_rev 1\n", .{});
847 try w.print("#define __mips_dsp 1\n", .{});
848 }
849 if (target.cpu.has(.mips, .msa)) try define(w, "__mips_msa");
850 if (target.cpu.has(.mips, .nomadd4)) try define(w, "__mips_no_madd4");
851 try w.print("#define _MIPS_SZPTR {d}\n", .{target.ptrBitWidth()});
852 try w.print("#define _MIPS_SZINT {d}\n", .{target.cTypeBitSize(.int)});
853 try w.print("#define _MIPS_SZLONG {d}\n", .{target.cTypeBitSize(.long)});
854 try w.print("#define __mips_isa_rev {d}\n", .{target.mipsIsaRev()});
640855 },
641856 .powerpc,
642857 .powerpcle,
......@@ -679,15 +894,185 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
679894 try define(w, "__sparcv8");
680895 }
681896 },
682 .arm, .armeb, .thumb, .thumbeb => {
897 .arm, .armeb, .thumb, .thumbeb => |arch| {
683898 try define(w, "__arm__");
684899 try define(w, "__arm");
685 if (target.cpu.arch.isThumb()) {
900 try define(w, "__ARM_32BIT_STATE");
901 try define(w, "__APCS_32__");
902 try define(w, "__VFP_FP__");
903 try define(w, "__ARM_FP16_ARGS");
904 try define(w, "__ARM_FP16_FORMAT_IEEE");
905
906 try w.writeAll("#define __ARM_ACLE 200\n");
907
908 // see https://clang.llvm.org/doxygen/Basic_2Targets_2ARM_8cpp_source.html
909 // https://developer.arm.com/documentation/dui0774/g/chr1383660321827
910
911 // __ARM_ARCH_ISA_THUMB is defined to 2 if the core supports the Thumb-2 ISA.
912 if (target.armVersion()) |v| {
913 const supports_thumb2 = mem.eql(u8, v.string, "6T2") or
914 (v.version >= 7 and !mem.eql(u8, v.string, "8M_BASE"));
915 if (supports_thumb2) {
916 try w.writeAll("#define __ARM_ARCH_ISA_THUMB 2\n");
917 } else if (mem.findScalar(u8, v.string, 'T') != null or v.version >= 6) {
918 try w.writeAll("#define __ARM_ARCH_ISA_THUMB 1\n");
919 }
920 }
921
922 if (target.cpu.has(.arm, .thumb2) or target.cpu.has(.arm, .thumb_mode)) {
686923 try define(w, "__thumb__");
687924 }
925 // ARM ISA means we are not M profile
926 if (!target.cpu.has(.arm, .mclass)) {
927 try define(w, "__ARM_ARCH_ISA_ARM");
928 }
929
930 var arm_version: u8 = 6;
931 if (target.armVersion()) |v| {
932 arm_version = v.version;
933 try w.print("#define __ARM_ARCH_{s}__ 1\n", .{v.string});
934 try w.print("#define __ARM_ARCH {d}\n", .{v.version});
935 }
936
937 const arm_profile: ?u8 =
938 if (target.cpu.has(.arm, .aclass))
939 'A'
940 else if (target.cpu.has(.arm, .rclass))
941 'R'
942 else if (target.cpu.has(.arm, .mclass))
943 'M'
944 else
945 null;
946 if (arm_profile) |p| {
947 try w.print("#define __ARM_ARCH_PROFILE '{c}'\n", .{p});
948 }
949
950 if (arm_version == 5 or (arm_version == 6 and !target.cpu.has(.arm, .mclass)) or arm_version > 6) {
951 try define(w, "__ARM_FEATURE_CLZ");
952 }
953
954 if (target.armHasDsp()) {
955 try define(w, "__ARM_FEATURE_DSP");
956 }
957
958 const is_thumb = arch == .thumb or arch == .thumbeb or target.cpu.has(.arm, .mclass);
959 if ((is_thumb and target.cpu.has(.arm, .hwdiv)) or
960 (!is_thumb and target.cpu.has(.arm, .hwdiv_arm)))
961 {
962 try define(w, "__ARM_FEATURE_IDIV");
963 try define(w, "__ARM_ARCH_EXT_IDIV__");
964 }
965 var sat = false;
966 if (arm_version == 6 and !target.cpu.has(.arm, .mclass) or arm_version > 6) {
967 try define(w, "__ARM_FEATURE_SAT");
968 sat = true;
969 }
970
971 if (target.armHasDsp() or sat) {
972 try define(w, "__ARM_FEATURE_QBIT");
973 }
974
975 if ((!target.cpu.has(.arm, .mclass) and arm_version >= 6) or
976 (target.cpu.has(.arm, .mclass) and target.cpu.has(.arm, .dsp)))
977 {
978 try define(w, "__ARM_FEATURE_SIMD32");
979 }
980
981 // Which co-processor intrinsics in arm_acle.h are available.
982 // See https://arm-software.github.io/acle/main/acle.html#coprocessor-intrinsics
983 const coproc = struct {
984 /// __arm_cdp __arm_ldc, __arm_ldcl, __arm_stc,
985 /// __arm_stcl, __arm_mcr and __arm_mrc
986 const b1: u4 = 1 << 0;
987 /// __arm_cdp2, __arm_ldc2, __arm_stc2, __arm_ldc2l,
988 /// __arm_stc2l, __arm_mcr2 and __arm_mrc2
989 const b2: u4 = 1 << 1;
990 /// __arm_mcrr, __arm_mrrc
991 const b3: u4 = 1 << 2;
992 /// __arm_mcrr2, __arm_mrrc2
993 const b4: u4 = 1 << 3;
994
995 const all: u4 = b1 | b2 | b3 | b4;
996 };
997
998 const coproc_bf: u4 = blk: {
999 const v = target.armVersion() orelse break :blk 0;
1000 if (mem.eql(u8, v.string, "6M") or mem.eql(u8, v.string, "6SM") or
1001 mem.eql(u8, v.string, "8M_BASE")) break :blk 0;
1002 if (mem.eql(u8, v.string, "8M_MAIN") or mem.eql(u8, v.string, "8_1M_MAIN")) break :blk coproc.all;
1003 break :blk switch (v.version) {
1004 4 => coproc.b1,
1005 5 => if (mem.eql(u8, v.string, "5T")) coproc.b1 | coproc.b2 else coproc.b1 | coproc.b2 | coproc.b3,
1006 6, 7 => coproc.all,
1007 8, 9 => coproc.b1 | coproc.b3,
1008 else => 0,
1009 };
1010 };
1011 try w.print("#define __ARM_FEATURE_COPROC 0x{x}\n", .{coproc_bf});
1012
1013 if (arm_version >= 5 and arm_version <= 8 and target.os.tag != .windows) {
1014 try define(w, "__THUMB_INTERWORK__");
1015 }
1016
1017 if (comp.langopts.arm_ldrex) |ldrex| {
1018 try w.print("#define __ARM_FEATURE_LDREX 0x{x}\n", .{@as(u4, @bitCast(ldrex))});
1019 }
1020
1021 if (!target.cpu.has(.arm, .strict_align)) {
1022 try define(w, "__ARM_FEATURE_UNALIGNED");
1023 }
1024
1025 if (arch == .arm or arch == .thumb) {
1026 try define(w, "__ARMEL__");
1027 }
1028
1029 if (arch == .armeb or arch == .thumbeb) {
1030 try define(w, "__ARMEB__");
1031 try define(w, "__ARM_BIG_ENDIAN");
1032 }
1033 if (comp.code_gen_options.is_ropi) {
1034 try define(w, "__ARM_ROPI");
1035 }
1036
1037 if (comp.code_gen_options.is_rwpi) {
1038 try define(w, "__ARM_RWPI");
1039 }
1040
1041 const min_enum_size: u8 = if (comp.langopts.short_enums) 1 else 4;
1042 try w.print("#define __ARM_SIZEOF_MINIMAL_ENUM {d}\n", .{min_enum_size});
1043 try w.print("#define __ARM_SIZEOF_WCHAR_T {d}\n", .{comp.type_store.wchar.sizeof(comp)});
6881044 },
6891045 .aarch64, .aarch64_be => |arch| {
6901046 try define(w, "__aarch64__");
1047 try define(w, "__ARM_64BIT_STATE");
1048 try define(w, "__ARM_ARCH_ISA_A64");
1049 try define(w, "__ARM_FEATURE_CLZ");
1050 try define(w, "__ARM_FEATURE_FMA");
1051 if (comp.langopts.arm_ldrex) |ldrex| {
1052 try w.print("#define __ARM_FEATURE_LDREX 0x{x}\n", .{@as(u4, @bitCast(ldrex))});
1053 }
1054 try define(w, "__ARM_FEATURE_IDIV"); // As specified in ACLE
1055 try define(w, "__ARM_FEATURE_DIV"); // For backwards compatibility
1056 try define(w, "__ARM_STATE_ZA");
1057 try define(w, "__ARM_STATE_ZT0");
1058 try w.writeAll("#define __ARM_ALIGN_MAX_STACK_PWR 4\n");
1059 try define(w, "__ARM_FEATURE_NUMERIC_MAXMIN");
1060 try define(w, "__ARM_FEATURE_DIRECTED_ROUNDING");
1061
1062 try w.writeAll("#define __ARM_ACLE_VERSION(year,quarter,patch) (100 * (year) + 10 * (quarter) + (patch))\n");
1063 const acle_version = (100 * 2024) + (10 * 2) + 0; // ACLE 2024.2
1064 try w.print("#define __ARM_ACLE {d}\n", .{acle_version});
1065
1066 const arm_version: u8 = if (target.cpu.has(.aarch64, .v9a)) 9 else 8;
1067 const arm_profile: u8 = if (target.cpu.has(.aarch64, .v8r)) 'R' else 'A';
1068 try w.print("#define __ARM_ARCH {d}\n", .{arm_version});
1069 try w.print("#define __ARM_ARCH_PROFILE '{c}'\n", .{arm_profile});
1070
1071 if (target.cpu.has(.aarch64, .v8_3a)) {
1072 try define(w, "__ARM_FEATURE_COMPLEX");
1073 try define(w, "__ARM_FEATURE_JCVT");
1074 }
1075
6911076 switch (arch) {
6921077 .aarch64 => {
6931078 try define(w, "__AARCH64EL__");
......@@ -812,6 +1197,9 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
8121197 try w.print("#define __ARM_FEATURE_{s} 1\n", .{fs[1]});
8131198 }
8141199 }
1200 const min_enum_size: u8 = if (comp.langopts.short_enums) 1 else 4;
1201 try w.print("#define __ARM_SIZEOF_MINIMAL_ENUM {d}\n", .{min_enum_size});
1202 try w.print("#define __ARM_SIZEOF_WCHAR_T {d}\n", .{comp.type_store.wchar.sizeof(comp)});
8151203 },
8161204 .msp430 => {
8171205 try define(w, "MSP430");
......@@ -851,6 +1239,26 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
8511239 .riscv32, .riscv32be, .riscv64, .riscv64be => {
8521240 try define(w, "__riscv");
8531241 try w.print("#define __riscv_xlen {d}\n", .{ptr_width});
1242 const has_f = target.cpu.has(.riscv, .f);
1243 const has_d = target.cpu.has(.riscv, .d);
1244 const has_q = target.cpu.has(.riscv, .q);
1245 if (has_f) {
1246 try w.writeAll("#define __riscv_f 2002000\n");
1247 }
1248 if (has_d) {
1249 try w.writeAll("#define __riscv_d 2002000\n");
1250 }
1251 if (has_q) {
1252 try w.writeAll("#define __riscv_q 2002000\n");
1253 }
1254 if (has_q) {
1255 try w.writeAll("#define __riscv_flen 128\n");
1256 } else if (has_d) {
1257 try w.writeAll("#define __riscv_flen 64\n");
1258 } else if (has_f) {
1259 try w.writeAll("#define __riscv_flen 32\n");
1260 }
1261 try w.print("#define __riscv_float_abi_{t} 1\n", .{riscvFloatAbi(target)});
8541262 },
8551263 else => {},
8561264 }
......@@ -952,6 +1360,13 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
9521360 try comp.generateIntMaxAndWidth(w, "INT", .int);
9531361 try comp.generateIntMaxAndWidth(w, "LONG", .long);
9541362 try comp.generateIntMaxAndWidth(w, "LONG_LONG", .long_long);
1363 if (comp.langopts.has_int24) {
1364 const suffix = if (Type.Int.int.bits(comp) == 8) "LL" else "L";
1365 const unsigned_suffix = if (Type.Int.int.bits(comp) == 8) "ULL" else "UL";
1366 try w.print("#define __INT24_MAX__ 8388607{s}\n", .{suffix});
1367 try w.writeAll("#define __INT24_MIN__ (-__INT24_MAX__-1)\n");
1368 try w.print("#define __UINT24_MAX__ 16777215{s}\n", .{unsigned_suffix});
1369 }
9551370 try comp.generateIntMaxAndWidth(w, "WCHAR", comp.type_store.wchar);
9561371 try comp.generateIntMaxAndWidth(w, "WINT", comp.type_store.wint);
9571372 try comp.generateIntMaxAndWidth(w, "INTMAX", comp.type_store.intmax);
......@@ -1038,6 +1453,26 @@ fn generateSystemDefines(comp: *Compilation, w: *Io.Writer) !void {
10381453 }
10391454 },
10401455 }
1456
1457 // Blocks
1458 if (comp.langopts.blocks) {
1459 try define(w, "__BLOCKS__");
1460 }
1461}
1462
1463const RiscvFloatAbi = enum { soft, single, double };
1464
1465fn riscvFloatAbi(target: *const Target) RiscvFloatAbi {
1466 return switch (target.abi) {
1467 .gnusf, .muslsf => .soft,
1468 .gnuf32, .muslf32 => .single,
1469 else => if (target.cpu.has(.riscv, .d))
1470 .double
1471 else if (target.cpu.has(.riscv, .f))
1472 .single
1473 else
1474 .soft,
1475 };
10411476}
10421477
10431478/// Generate builtin macros that will be available to each source file.
......@@ -1053,7 +1488,7 @@ pub fn generateBuiltinMacros(comp: *Compilation, system_defines_mode: SystemDefi
10531488
10541489 if (allocating.written().len > std.math.maxInt(u32)) return error.FileTooBig;
10551490
1056 const contents = try allocating.toOwnedSlice();
1491 const contents = try allocating.toOwnedSliceSentinel(0);
10571492 errdefer comp.gpa.free(contents);
10581493 return comp.addSourceFromOwnedBuffer("<builtin>", contents, .user);
10591494}
......@@ -1194,8 +1629,22 @@ pub fn float80Type(comp: *const Compilation) ?QualType {
11941629 };
11951630}
11961631
1197/// Smallest integer type with at least N bits
1632/// target-independent lowest-rank integer type with at least N bits
1633pub fn smallestNBitIntTargetIndependent(comp: *const Compilation, bits: usize, signedness: std.builtin.Signedness) QualType {
1634 const candidates: [6]QualType = switch (signedness) {
1635 .signed => .{ .schar, .short, .int, .long, .long_long, .int128 },
1636 .unsigned => .{ .uchar, .ushort, .uint, .ulong, .ulong_long, .uint128 },
1637 };
1638 for (candidates) |qt| {
1639 if (qt.bitSizeof(comp) >= bits) return qt;
1640 } else unreachable;
1641}
1642
1643/// Lowest-rank integer type with at least N bits; subject to platform idiosyncrasies
11981644pub fn intLeastN(comp: *const Compilation, bits: usize, signedness: std.builtin.Signedness) QualType {
1645 if (bits <= 24 and bits > Type.Int.int.bits(comp) and comp.langopts.has_int24) {
1646 return if (signedness == .signed) .int24 else .uint24;
1647 }
11991648 if (bits == 64 and (comp.target.os.tag.isDarwin() or comp.target.cpu.arch.isWasm())) {
12001649 // WebAssembly and Darwin use `long long` for `int_least64_t` and `int_fast64_t`.
12011650 return if (signedness == .signed) .long_long else .ulong_long;
......@@ -1204,13 +1653,7 @@ pub fn intLeastN(comp: *const Compilation, bits: usize, signedness: std.builtin.
12041653 // AVR uses int for int_least16_t and int_fast16_t.
12051654 return if (signedness == .signed) .int else .uint;
12061655 }
1207 const candidates: [5]QualType = switch (signedness) {
1208 .signed => .{ .schar, .short, .int, .long, .long_long },
1209 .unsigned => .{ .uchar, .ushort, .uint, .ulong, .ulong_long },
1210 };
1211 for (candidates) |qt| {
1212 if (qt.bitSizeof(comp) >= bits) return qt;
1213 } else unreachable;
1656 return comp.smallestNBitIntTargetIndependent(bits, signedness);
12141657}
12151658
12161659fn generateFastOrLeastType(
......@@ -1233,7 +1676,7 @@ fn generateFastOrLeastType(
12331676 .least => "LEAST",
12341677 };
12351678
1236 const full = std.fmt.bufPrint(&buf, "{s}{s}{d}{s}", .{
1679 const full = mem.print(&buf, "{s}{s}{d}{s}", .{
12371680 base_name, kind_str, bits, suffix,
12381681 }) catch unreachable;
12391682
......@@ -1260,20 +1703,25 @@ fn generateFastAndLeastWidthTypes(comp: *Compilation, w: *Io.Writer) !void {
12601703
12611704fn generateExactWidthTypes(comp: *Compilation, w: *Io.Writer) !void {
12621705 try comp.generateExactWidthType(w, .schar);
1706 const char_bits = Type.Int.char.bits(comp);
1707 const short_bits = Type.Int.short.bits(comp);
1708 const int_bits = Type.Int.int.bits(comp);
1709 const long_bits = Type.Int.long.bits(comp);
1710 const long_long_bits = Type.Int.long_long.bits(comp);
12631711
1264 if (QualType.short.sizeof(comp) > QualType.char.sizeof(comp)) {
1712 if (short_bits > char_bits) {
12651713 try comp.generateExactWidthType(w, .short);
12661714 }
12671715
1268 if (QualType.int.sizeof(comp) > QualType.short.sizeof(comp)) {
1716 if (int_bits > short_bits) {
12691717 try comp.generateExactWidthType(w, .int);
12701718 }
12711719
1272 if (QualType.long.sizeof(comp) > QualType.int.sizeof(comp)) {
1720 if (long_bits > int_bits) {
12731721 try comp.generateExactWidthType(w, .long);
12741722 }
12751723
1276 if (QualType.long_long.sizeof(comp) > QualType.long.sizeof(comp)) {
1724 if (long_long_bits > long_bits) {
12771725 try comp.generateExactWidthType(w, .long_long);
12781726 }
12791727
......@@ -1281,25 +1729,25 @@ fn generateExactWidthTypes(comp: *Compilation, w: *Io.Writer) !void {
12811729 try comp.generateExactWidthIntMax(w, .uchar);
12821730 try comp.generateExactWidthIntMax(w, .schar);
12831731
1284 if (QualType.short.sizeof(comp) > QualType.char.sizeof(comp)) {
1732 if (short_bits > char_bits) {
12851733 try comp.generateExactWidthType(w, .ushort);
12861734 try comp.generateExactWidthIntMax(w, .ushort);
12871735 try comp.generateExactWidthIntMax(w, .short);
12881736 }
12891737
1290 if (QualType.int.sizeof(comp) > QualType.short.sizeof(comp)) {
1738 if (int_bits > short_bits) {
12911739 try comp.generateExactWidthType(w, .uint);
12921740 try comp.generateExactWidthIntMax(w, .uint);
12931741 try comp.generateExactWidthIntMax(w, .int);
12941742 }
12951743
1296 if (QualType.long.sizeof(comp) > QualType.int.sizeof(comp)) {
1744 if (long_bits > int_bits) {
12971745 try comp.generateExactWidthType(w, .ulong);
12981746 try comp.generateExactWidthIntMax(w, .ulong);
12991747 try comp.generateExactWidthIntMax(w, .long);
13001748 }
13011749
1302 if (QualType.long_long.sizeof(comp) > QualType.long.sizeof(comp)) {
1750 if (long_long_bits > long_bits) {
13031751 try comp.generateExactWidthType(w, .ulong_long);
13041752 try comp.generateExactWidthIntMax(w, .ulong_long);
13051753 try comp.generateExactWidthIntMax(w, .long_long);
......@@ -1342,7 +1790,7 @@ fn generateExactWidthType(comp: *Compilation, w: *Io.Writer, original_qt: QualTy
13421790
13431791 var buffer: [16]u8 = undefined;
13441792 const suffix = "_TYPE__";
1345 const full = std.fmt.bufPrint(&buffer, "{s}{d}{s}", .{
1793 const full = mem.print(&buffer, "{s}{d}{s}", .{
13461794 if (unsigned) "__UINT" else "__INT", width, suffix,
13471795 }) catch unreachable;
13481796
......@@ -1396,7 +1844,7 @@ fn generateExactWidthIntMax(comp: *Compilation, w: *Io.Writer, original_qt: Qual
13961844 }
13971845
13981846 var name_buffer: [6]u8 = undefined;
1399 const name = std.fmt.bufPrint(&name_buffer, "{s}{d}", .{
1847 const name = mem.print(&name_buffer, "{s}{d}", .{
14001848 if (unsigned) "UINT" else "INT", bit_count,
14011849 }) catch unreachable;
14021850
......@@ -1418,10 +1866,12 @@ fn generateSizeofType(comp: *Compilation, w: *Io.Writer, name: []const u8, qt: Q
14181866
14191867pub fn nextLargestIntSameSign(comp: *const Compilation, qt: QualType) ?QualType {
14201868 assert(qt.isInt(comp));
1421 const candidates: [4]QualType = if (qt.signedness(comp) == .signed)
1422 .{ .short, .int, .long, .long_long }
1869 const candidates: []const QualType = if (qt.signedness(comp) == .signed)
1870 if (comp.langopts.has_int24) &.{ .short, .int, .int24, .long, .long_long } else &.{ .short, .int, .long, .long_long }
1871 else if (comp.langopts.has_int24)
1872 &.{ .ushort, .uint, .uint24, .ulong, .ulong_long }
14231873 else
1424 .{ .ushort, .uint, .ulong, .ulong_long };
1874 &.{ .ushort, .uint, .ulong, .ulong_long };
14251875
14261876 const size = qt.sizeof(comp);
14271877 for (candidates) |candidate| {
......@@ -1443,7 +1893,7 @@ pub fn maxArrayBytes(comp: *const Compilation) u64 {
14431893pub fn fixedEnumTagType(comp: *const Compilation) ?QualType {
14441894 switch (comp.langopts.emulate) {
14451895 .msvc => return .int,
1446 .no, .clang => if (comp.target.os.tag == .windows and comp.target.abi == .msvc) return .int,
1896 .no, .clang => if ((comp.target.os.tag == .windows or comp.target.os.tag == .uefi) and comp.target.abi == .msvc) return .int,
14471897 .gcc => {},
14481898 }
14491899 return null;
......@@ -1463,7 +1913,7 @@ pub fn getSource(comp: *const Compilation, id: Source.Id) Source {
14631913 }
14641914 if (id.index == .generated) return .{
14651915 .path = "<scratch space>",
1466 .buf = comp.generated_buf.items,
1916 .buf = @ptrCast(comp.generated_buf.items),
14671917 .id = .generated,
14681918 .splice_locs = &.{},
14691919 .kind = .user,
......@@ -1477,7 +1927,7 @@ pub fn getSource(comp: *const Compilation, id: Source.Id) Source {
14771927/// or line-ending changes happen.
14781928/// caller retains ownership of `path`
14791929/// To add a file's contents given its path, see addSourceFromPath
1480pub fn addSourceFromOwnedBuffer(comp: *Compilation, path: []const u8, buf: []u8, kind: Source.Kind) !Source {
1930pub fn addSourceFromOwnedBuffer(comp: *Compilation, path: []const u8, buf: [:0]u8, kind: Source.Kind) !Source {
14811931 assert(buf.len <= std.math.maxInt(u32));
14821932 try comp.sources.ensureUnusedCapacity(comp.gpa, 1);
14831933
......@@ -1599,11 +2049,11 @@ pub fn addSourceFromOwnedBuffer(comp: *Compilation, path: []const u8, buf: []u8,
15992049
16002050 if (i != contents.len) {
16012051 var list: std.ArrayList(u8) = .{
1602 .items = contents[0..i],
1603 .capacity = contents.len,
16042052 .pointer_stability = .{},
2053 .items = contents[0..i],
2054 .capacity = contents.len + 1, // +1 for sentinel
16052055 };
1606 contents = try list.toOwnedSlice(comp.gpa);
2056 contents = try list.toOwnedSliceSentinel(comp.gpa, 0);
16072057 }
16082058 errdefer @compileError("errdefers in callers would possibly free the realloced slice using the original len");
16092059
......@@ -1622,7 +2072,7 @@ pub fn addSourceFromOwnedBuffer(comp: *Compilation, path: []const u8, buf: []u8,
16222072fn addNewlineEscapeError(
16232073 comp: *Compilation,
16242074 path: []const u8,
1625 buf: []const u8,
2075 buf: [:0]const u8,
16262076 splice_locs: []const u32,
16272077 byte_offset: u32,
16282078 line: u32,
......@@ -1658,7 +2108,7 @@ pub fn addSourceFromBuffer(comp: *Compilation, path: []const u8, buf: []const u8
16582108 if (comp.sources.get(path)) |some| return some;
16592109 if (buf.len > std.math.maxInt(u32)) return error.FileTooBig;
16602110
1661 const contents = try comp.gpa.dupe(u8, buf);
2111 const contents = try comp.gpa.dupeSentinel(u8, buf, 0);
16622112 errdefer comp.gpa.free(contents);
16632113
16642114 return comp.addSourceFromOwnedBuffer(path, contents, .user);
......@@ -1673,7 +2123,7 @@ pub fn addSourceFromPath(comp: *Compilation, path: []const u8) !Source {
16732123fn addSourceFromPathExtra(comp: *Compilation, path: []const u8, kind: Source.Kind) !Source {
16742124 if (comp.sources.get(path)) |some| return some;
16752125
1676 if (mem.indexOfScalar(u8, path, 0) != null) {
2126 if (mem.findScalar(u8, path, 0) != null) {
16772127 return error.FileNotFound;
16782128 }
16792129
......@@ -1777,7 +2227,7 @@ fn removeDuplicateSearchPaths(comp: *Compilation, start: usize, verbose: bool) !
17772227 continue;
17782228 }
17792229 } else {
1780 const gop = try seen_frameworks.getOrPut(allocator, include.path);
2230 const gop = try seen_includes.getOrPut(allocator, include.path);
17812231 if (!gop.found_existing) {
17822232 comp.search_path.items[i] = include;
17832233 i += 1;
......@@ -1830,11 +2280,12 @@ pub fn hasInclude(
18302280 which: WhichInclude,
18312281 opt_dep_file: ?*DepFile,
18322282) Compilation.Error!bool {
1833 if (try FindInclude.run(comp, filename, include_type, switch (which) {
1834 .next => .{ .only_search_after_dir = comp.getSource(includer_token_source).path },
2283 const includer_source = comp.getSource(includer_token_source);
2284 if (try FindInclude.run(comp, filename, includer_source, include_type, switch (which) {
2285 .next => .{ .only_search_after_dir = includer_source.path },
18352286 .first => switch (include_type) {
18362287 .cli => unreachable,
1837 .quotes => .{ .allow_same_dir = comp.getSource(includer_token_source).path },
2288 .quotes => .{ .allow_same_dir = includer_source.path },
18382289 .angle_brackets => .only_search,
18392290 },
18402291 })) |found| {
......@@ -1863,6 +2314,7 @@ const FindInclude = struct {
18632314 fn run(
18642315 comp: *Compilation,
18652316 include_path: []const u8,
2317 includer_source: Source,
18662318 include_type: IncludeType,
18672319 search_strat: union(enum) {
18682320 allow_same_dir: []const u8,
......@@ -1881,7 +2333,7 @@ const FindInclude = struct {
18812333 .allow_same_dir, .only_search => {},
18822334 .only_search_after_dir => return null,
18832335 }
1884 return find.check("{s}", .{include_path}, .user, false);
2336 return find.check(&.{include_path}, .user, false);
18852337 }
18862338
18872339 switch (search_strat) {
......@@ -1898,6 +2350,7 @@ const FindInclude = struct {
18982350 find.wait_for = std.fs.path.dirname(other_file);
18992351 },
19002352 }
2353
19012354 for (comp.search_path.items) |include| {
19022355 if (include.kind == .quote) {
19032356 if (include_type != .angle_brackets) {
......@@ -1912,64 +2365,86 @@ const FindInclude = struct {
19122365 if (try find.checkIncludeDir(include.path, source_kind)) |res| return res;
19132366 }
19142367 }
2368
19152369 if (comp.ms_cwd_source_id) |source_id| {
19162370 if (try find.checkMsCwdIncludeDir(source_id)) |res| return res;
19172371 }
2372
2373 if (includer_source.umbrella_framework_path) |umbrella_framework_path| {
2374 if (try find.checkSubframeworkDir(umbrella_framework_path, includer_source.kind)) |res| return res;
2375 }
2376
19182377 return null;
19192378 }
19202379 fn checkIncludeDir(find: *FindInclude, include_dir: []const u8, kind: Source.Kind) Allocator.Error!?Result {
1921 if (find.wait_for) |wait_for| {
1922 if (std.mem.eql(u8, include_dir, wait_for)) find.wait_for = null;
1923 return null;
1924 }
1925 return find.check("{s}{c}{s}", .{
2380 return find.check(&.{
19262381 include_dir,
1927 std.fs.path.sep,
19282382 find.include_path,
19292383 }, kind, false);
19302384 }
19312385 fn checkMsCwdIncludeDir(find: *FindInclude, source_id: Source.Id) Allocator.Error!?Result {
19322386 const path = find.comp.getSource(source_id).path;
19332387 const dir = std.fs.path.dirname(path) orelse ".";
1934 if (find.wait_for) |wait_for| {
1935 if (std.mem.eql(u8, dir, wait_for)) find.wait_for = null;
1936 return null;
1937 }
1938 return find.check("{s}{c}{s}", .{
2388 return find.check(&.{
19392389 dir,
1940 std.fs.path.sep,
19412390 find.include_path,
19422391 }, .user, true);
19432392 }
2393
19442394 fn checkFrameworkDir(find: *FindInclude, framework_dir: []const u8, kind: Source.Kind) Allocator.Error!?Result {
1945 if (find.wait_for) |wait_for| {
1946 match: {
1947 // If this is a match, then `wait_for` looks like '.../Foo.framework/Headers'.
1948 const wait_framework = std.fs.path.dirname(wait_for) orelse break :match;
1949 const wait_framework_dir = std.fs.path.dirname(wait_framework) orelse break :match;
1950 if (!std.mem.eql(u8, framework_dir, wait_framework_dir)) break :match;
1951 find.wait_for = null;
1952 }
1953 return null;
1954 }
19552395 // For an include like 'Foo/Bar.h', search in '<framework_dir>/Foo.framework/Headers/Bar.h'.
1956 const framework_name: []const u8, const header_sub_path: []const u8 = f: {
1957 const i = std.mem.indexOfScalar(u8, find.include_path, '/') orelse return null;
1958 break :f .{ find.include_path[0..i], find.include_path[i + 1 ..] };
1959 };
1960 return find.check("{s}{c}{s}.framework{c}Headers{c}{s}", .{
2396 const framework_name, const header_sub_path = mem.cutScalar(u8, find.include_path, '/') orelse return null;
2397
2398 var bfa_buf: [path_buf_stack_limit]u8 = undefined;
2399 var bfa_state: std.heap.BufferFirstAllocator = .init(&bfa_buf, find.comp.gpa);
2400 const bfa = bfa_state.allocator();
2401 const framework_lookup = try bfa.print("{s}.framework", .{framework_name});
2402 defer bfa.free(framework_lookup);
2403
2404 const res = try find.check(&.{
19612405 framework_dir,
1962 std.fs.path.sep,
1963 framework_name,
1964 std.fs.path.sep,
1965 std.fs.path.sep,
2406 framework_lookup,
2407 "Headers",
19662408 header_sub_path,
1967 }, kind, false);
2409 }, kind, false) orelse return null;
2410
2411 // Mark the new source as an umbrella framework for subframework search within it.
2412 const new_source = &find.comp.sources.values()[@backingInt(res.source.index)];
2413 const framework_name_index = mem.find(u8, new_source.path, framework_lookup) orelse return res;
2414 new_source.umbrella_framework_path = new_source.path[0 .. framework_name_index + framework_lookup.len];
2415 return res;
2416 }
2417
2418 fn checkSubframeworkDir(find: *FindInclude, umbrella_framework_path: []const u8, kind: Source.Kind) Allocator.Error!?Result {
2419 // For an include like 'Foo/Bar.h', search in '<umbrella_framework_path>/Frameworks/Foo.framework/Headers/Bar.h'.
2420 const framework_name, const header_sub_path = mem.cutScalar(u8, find.include_path, '/') orelse return null;
2421
2422 var bfa_buf: [path_buf_stack_limit]u8 = undefined;
2423 var bfa_state: std.heap.BufferFirstAllocator = .init(&bfa_buf, find.comp.gpa);
2424 const bfa = bfa_state.allocator();
2425 const framework_lookup = try bfa.print("{s}.framework", .{framework_name});
2426 defer bfa.free(framework_lookup);
2427
2428 const res = try find.check(&.{
2429 umbrella_framework_path,
2430 "Frameworks",
2431 framework_lookup,
2432 "Headers",
2433 header_sub_path,
2434 }, kind, false) orelse return null;
2435
2436 // Subframeworks are assumed to not be able to contain other
2437 // subframeworks (i.e. they can't be umbrella frameworks), but they
2438 // can reference one another, meaning that we keep the same
2439 // umbrella framework.
2440 const new_source = &find.comp.sources.values()[@backingInt(res.source.index)];
2441 new_source.umbrella_framework_path = new_source.path[0..umbrella_framework_path.len];
2442 return res;
19682443 }
2444
19692445 fn check(
19702446 find: *FindInclude,
1971 comptime format: []const u8,
1972 args: anytype,
2447 paths: []const []const u8,
19732448 kind: Source.Kind,
19742449 used_ms_search_rule: bool,
19752450 ) Allocator.Error!?Result {
......@@ -1978,10 +2453,15 @@ const FindInclude = struct {
19782453 var bfa_buf: [path_buf_stack_limit]u8 = undefined;
19792454 var bfa_state: std.heap.BufferFirstAllocator = .init(&bfa_buf, comp.gpa);
19802455 const bfa = bfa_state.allocator();
1981 const header_path = try std.fmt.allocPrint(bfa, format, args);
2456 const header_path = try std.fs.path.resolve(bfa, paths);
19822457 defer bfa.free(header_path);
19832458 find.comp.normalizePath(header_path);
19842459
2460 if (find.wait_for) |wait_for| if (std.fs.path.dirname(header_path)) |header_dir| {
2461 if (mem.eql(u8, header_dir, wait_for)) find.wait_for = null;
2462 return null;
2463 };
2464
19852465 const source = comp.addSourceFromPathExtra(header_path, kind) catch |err| switch (err) {
19862466 error.OutOfMemory => |e| return e,
19872467 else => return null,
......@@ -2007,8 +2487,8 @@ pub const IncludeType = enum {
20072487 cli,
20082488};
20092489
2010fn getPathContents(comp: *Compilation, path: []const u8, limit: Io.Limit) ![]u8 {
2011 if (mem.indexOfScalar(u8, path, 0) != null) {
2490fn getPathContents(comp: *Compilation, path: []const u8, limit: Io.Limit) ![:0]u8 {
2491 if (mem.findScalar(u8, path, 0) != null) {
20122492 return error.FileNotFound;
20132493 }
20142494
......@@ -2017,7 +2497,7 @@ fn getPathContents(comp: *Compilation, path: []const u8, limit: Io.Limit) ![]u8
20172497 return comp.getFileContents(file, limit);
20182498}
20192499
2020fn getFileContents(comp: *Compilation, file: std.Io.File, limit: Io.Limit) ![]u8 {
2500fn getFileContents(comp: *Compilation, file: std.Io.File, limit: Io.Limit) ![:0]u8 {
20212501 var file_buf: [4096]u8 = undefined;
20222502 var file_reader = file.reader(comp.io, &file_buf);
20232503
......@@ -2032,19 +2512,19 @@ fn getFileContents(comp: *Compilation, file: std.Io.File, limit: Io.Limit) ![]u8
20322512 var remaining = limit.min(.limited(std.math.maxInt(u32)));
20332513 while (remaining.nonzero()) {
20342514 const n = file_reader.interface.stream(&allocating.writer, remaining) catch |err| switch (err) {
2035 error.EndOfStream => return allocating.toOwnedSlice(),
2515 error.EndOfStream => return allocating.toOwnedSliceSentinel(0),
20362516 error.WriteFailed => return error.OutOfMemory,
20372517 error.ReadFailed => return file_reader.err.?,
20382518 };
20392519 remaining = remaining.subtract(n).?;
20402520 }
20412521 if (limit == .unlimited) return error.FileTooBig;
2042 return allocating.toOwnedSlice();
2522 return allocating.toOwnedSliceSentinel(0);
20432523}
20442524
20452525fn normalizePath(comp: *Compilation, path: []u8) void {
20462526 if (comp.langopts.ms_extensions and @import("builtin").target.os.tag != .windows) {
2047 std.mem.replaceScalar(u8, path, std.fs.path.sep_windows, std.fs.path.sep_posix);
2527 mem.replaceScalar(u8, path, std.fs.path.sep_windows, std.fs.path.sep_posix);
20482528 }
20492529}
20502530
......@@ -2056,7 +2536,7 @@ pub fn findEmbed(
20562536 include_type: IncludeType,
20572537 limit: Io.Limit,
20582538 opt_dep_file: ?*DepFile,
2059) !?[]u8 {
2539) !?[:0]u8 {
20602540 if (std.fs.path.isAbsolute(filename)) {
20612541 if (comp.getPathContents(filename, limit)) |some| {
20622542 errdefer comp.gpa.free(some);
......@@ -2083,7 +2563,7 @@ pub fn findEmbed(
20832563 if (opt_dep_file) |dep_file| try dep_file.addDependencyDupe(comp.gpa, comp.arena, filename);
20842564 return some;
20852565 } else |err| switch (err) {
2086 error.OutOfMemory => |e| return e,
2566 error.OutOfMemory => return error.OutOfMemory,
20872567 else => {},
20882568 }
20892569 },
......@@ -2098,7 +2578,7 @@ pub fn findEmbed(
20982578 if (opt_dep_file) |dep_file| try dep_file.addDependencyDupe(comp.gpa, comp.arena, filename);
20992579 return some;
21002580 } else |err| switch (err) {
2101 error.OutOfMemory => |e| return e,
2581 error.OutOfMemory => return error.OutOfMemory,
21022582 else => {},
21032583 }
21042584 }
......@@ -2114,18 +2594,26 @@ pub fn findInclude(
21142594 /// include vs include_next
21152595 which: WhichInclude,
21162596) Compilation.Error!?Source {
2117 const found = try FindInclude.run(comp, filename, include_type, switch (which) {
2118 .next => .{ .only_search_after_dir = comp.getSource(includer_token.source).path },
2597 const includer_source = comp.getSource(includer_token.source);
2598 const found = try FindInclude.run(comp, filename, includer_source, include_type, switch (which) {
2599 .next => .{ .only_search_after_dir = includer_source.path },
21192600 .first => switch (include_type) {
21202601 .cli => .{ .allow_same_dir = "." },
2121 .quotes => .{ .allow_same_dir = comp.getSource(includer_token.source).path },
2602 .quotes => .{ .allow_same_dir = includer_source.path },
21222603 .angle_brackets => .only_search,
21232604 },
21242605 }) orelse return null;
21252606 if (found.used_ms_search_rule) {
21262607 const diagnostic: Diagnostic = .ms_search_rule;
2608 var buf: [1024]u8 = undefined;
2609 var bfa: std.heap.BufferFirstAllocator = .init(&buf, comp.gpa);
2610 var allocating: std.Io.Writer.Allocating = .init(bfa.allocator());
2611 defer allocating.deinit();
2612
2613 Diagnostics.formatArgs(&allocating.writer, diagnostic.fmt, .{filename}) catch return error.OutOfMemory;
2614
21272615 try comp.diagnostics.add(.{
2128 .text = diagnostic.fmt,
2616 .text = allocating.written(),
21292617 .kind = diagnostic.kind,
21302618 .opt = diagnostic.opt,
21312619 .extension = diagnostic.extension,
......@@ -2300,7 +2788,7 @@ test "addSourceFromBuffer" {
23002788 try std.testing.expectEqualSlices(u32, splices, source.splice_locs);
23012789 }
23022790
2303 fn withAllocationFailures(allocator: std.mem.Allocator) !void {
2791 fn withAllocationFailures(allocator: mem.Allocator) !void {
23042792 var comp = try Compilation.init(.testing);
23052793 comp.gpa = allocator;
23062794 defer comp.deinit();
......@@ -2357,15 +2845,15 @@ test "addSourceFromBuffer - exhaustive check for carriage return elimination" {
23572845 while (true) {
23582846 const source = try comp.addSourceFromBuffer(&buf, &buf);
23592847 source_count += 1;
2360 try std.testing.expect(std.mem.indexOfScalar(u8, source.buf, '\r') == null);
2848 try std.testing.expect(mem.findScalar(u8, source.buf, '\r') == null);
23612849
2362 if (std.mem.allEqual(u8, &buf, alphabet[alen - 1])) break;
2850 if (mem.allEqual(u8, &buf, alphabet[alen - 1])) break;
23632851
2364 var idx = std.mem.indexOfScalar(u8, &alphabet, buf[buf.len - 1]).?;
2852 var idx = mem.findScalar(u8, &alphabet, buf[buf.len - 1]).?;
23652853 buf[buf.len - 1] = alphabet[(idx + 1) % alen];
23662854 var j = buf.len - 1;
23672855 while (j > 0) : (j -= 1) {
2368 idx = std.mem.indexOfScalar(u8, &alphabet, buf[j - 1]).?;
2856 idx = mem.findScalar(u8, &alphabet, buf[j - 1]).?;
23692857 if (buf[j] == alphabet[0]) buf[j - 1] = alphabet[(idx + 1) % alen] else break;
23702858 }
23712859 }
lib/compiler/aro/aro/DepFile.zig+2-2
......@@ -6,7 +6,7 @@ pub const Format = enum { make, nmake };
66const DepFile = @This();
77
88target: []const u8,
9deps: std.array_hash_map.String(void) = .empty,
9deps: std.StringArrayHashMapUnmanaged(void) = .empty,
1010format: Format,
1111
1212pub fn deinit(d: *DepFile, gpa: Allocator) void {
......@@ -71,7 +71,7 @@ fn writeTarget(path: []const u8, w: *std.Io.Writer) !void {
7171fn writePath(d: *const DepFile, path: []const u8, w: *std.Io.Writer) !void {
7272 switch (d.format) {
7373 .nmake => {
74 if (std.mem.indexOfAny(u8, path, " #${}^!")) |_|
74 if (std.mem.findAny(u8, path, " #${}^!")) |_|
7575 try w.print("\"{s}\"", .{path})
7676 else
7777 try w.writeAll(path);
lib/compiler/aro/aro/Diagnostics.zig+38-16
......@@ -36,15 +36,15 @@ pub const Message = struct {
3636 .warning => try term.setColor(.bright_magenta),
3737 .off => unreachable,
3838 }
39 try w.print("{s}: ", .{@tagName(msg.effective_kind)});
39 try w.print("{t}: ", .{msg.effective_kind});
4040
4141 try term.setColor(.white);
4242 try w.writeAll(msg.text);
4343 if (msg.opt) |some| {
4444 if (msg.effective_kind == .@"error" and msg.kind != .@"error") {
45 try w.print(" [-Werror,-W{s}]", .{@tagName(some)});
45 try w.print(" [-Werror,-W{t}]", .{some});
4646 } else if (msg.effective_kind != .note) {
47 try w.print(" [-W{s}]", .{@tagName(some)});
47 try w.print(" [-W{t}]", .{some});
4848 }
4949 } else if (msg.extension) {
5050 if (msg.effective_kind == .@"error") {
......@@ -177,7 +177,6 @@ pub const Option = enum {
177177 @"invalid-pp-token",
178178 @"deprecated-non-prototype",
179179 @"duplicate-embed-param",
180 @"unsupported-embed-param",
181180 @"unused-result",
182181 normalized,
183182 @"shift-count-negative",
......@@ -203,6 +202,17 @@ pub const Option = enum {
203202 @"file-name-extension",
204203 @"base-file-extension",
205204 @"include-level-extension",
205 @"blocks-extension",
206 @"extra-tokens",
207 @"unsupported-visibility",
208 @"deprecated-attributes",
209 section,
210 @"label-attribute",
211 @"unused-variable",
212 @"unused-parameter",
213 @"unused-local-typedef",
214 @"unused-label",
215 @"unused-comparison",
206216
207217 /// GNU extensions
208218 pub const gnu = [_]Option{
......@@ -229,6 +239,7 @@ pub const Option = enum {
229239 .@"fixed-enum-extension",
230240 .@"bit-int-extension",
231241 .@"nullability-extension",
242 .@"blocks-extension",
232243 };
233244
234245 /// Microsoft extensions
......@@ -245,6 +256,7 @@ pub const Option = enum {
245256 .@"initializer-overrides",
246257 .@"expansion-to-defined",
247258 .@"fuse-ld-path",
259 .@"blocks-extension",
248260 };
249261
250262 pub const implicit = [_]Option{
......@@ -255,6 +267,11 @@ pub const Option = enum {
255267 pub const unused = [_]Option{
256268 .@"unused-value",
257269 .@"unused-result",
270 .@"unused-variable",
271 // .@"unused-parameter", // Matches gcc and clang
272 .@"unused-local-typedef",
273 .@"unused-label",
274 .@"unused-comparison",
258275 };
259276
260277 pub const most = implicit ++ unused ++ [_]Option{
......@@ -332,15 +349,15 @@ pub fn deinit(d: *Diagnostics) void {
332349
333350/// Used by the __has_warning builtin macro.
334351pub fn warningExists(name: []const u8) bool {
335 if (std.mem.eql(u8, name, "pedantic")) return true;
336 inline for (comptime std.meta.declarations(Option)) |group_name| {
337 if (std.mem.eql(u8, name, group_name)) return true;
352 if (mem.eql(u8, name, "pedantic")) return true;
353 inline for (@typeInfo(Option).@"enum".decl_names) |group_name| {
354 if (mem.eql(u8, name, group_name)) return true;
338355 }
339356 return std.meta.stringToEnum(Option, name) != null;
340357}
341358
342359pub fn set(d: *Diagnostics, name: []const u8, to: Message.Kind) Compilation.Error!void {
343 if (std.mem.eql(u8, name, "pedantic")) {
360 if (mem.eql(u8, name, "pedantic")) {
344361 d.state.extensions = to;
345362 return;
346363 }
......@@ -349,8 +366,8 @@ pub fn set(d: *Diagnostics, name: []const u8, to: Message.Kind) Compilation.Erro
349366 return;
350367 }
351368
352 inline for (comptime std.meta.declarations(Option)) |group_name| {
353 if (std.mem.eql(u8, name, group_name)) {
369 inline for (@typeInfo(Option).@"enum".decl_names) |group_name| {
370 if (mem.eql(u8, name, group_name)) {
354371 for (@field(Option, group_name)) |option| {
355372 d.state.options.put(option, to);
356373 }
......@@ -359,7 +376,7 @@ pub fn set(d: *Diagnostics, name: []const u8, to: Message.Kind) Compilation.Erro
359376 }
360377
361378 var buf: [256]u8 = undefined;
362 const slice = std.fmt.bufPrint(&buf, "unknown warning '{s}'", .{name}) catch &buf;
379 const slice = mem.print(&buf, "unknown warning '{s}'", .{name}) catch &buf;
363380
364381 try d.add(.{
365382 .text = slice,
......@@ -369,6 +386,10 @@ pub fn set(d: *Diagnostics, name: []const u8, to: Message.Kind) Compilation.Erro
369386 });
370387}
371388
389pub fn severity(d: *Diagnostics, option: Option) Message.Kind {
390 return d.state.options.get(option) orelse .off;
391}
392
372393/// This mutates the `Diagnostics`, so may only be called when `message` is being added.
373394/// If `.off` is returned, `message` will not be included, so the caller should give up.
374395pub fn effectiveKind(d: *Diagnostics, message: anytype) Message.Kind {
......@@ -405,7 +426,7 @@ pub fn effectiveKind(d: *Diagnostics, message: anytype) Message.Kind {
405426
406427 // Use extension diagnostic behavior if not set explicitly.
407428 if (message.extension and !set_explicit) {
408 kind = @fromBackingInt(@intCast(@max(@backingInt(kind), @backingInt(d.state.extensions))));
429 kind = @fromBackingInt(@max(@backingInt(kind), @backingInt(d.state.extensions)));
409430 }
410431
411432 // Make diagnostic a warning if -Weverything is set.
......@@ -461,7 +482,7 @@ pub fn addWithLocation(
461482 try d.addMessage(.{
462483 .kind = .note,
463484 .effective_kind = .note,
464 .text = std.fmt.bufPrint(
485 .text = mem.print(
465486 &buf,
466487 "(skipping {d} expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)",
467488 .{expansion_locs.len - d.macro_backtrace_limit},
......@@ -499,8 +520,9 @@ pub fn formatArgs(w: *std.Io.Writer, fmt: []const u8, args: anytype) std.Io.Writ
499520 i += switch (@TypeOf(arg)) {
500521 []const u8 => try formatString(w, fmt[i..], arg),
501522 else => switch (@typeInfo(@TypeOf(arg))) {
502 .int, .comptime_int => try Diagnostics.formatInt(w, fmt[i..], arg),
503 .pointer => try Diagnostics.formatString(w, fmt[i..], arg),
523 .int, .comptime_int => try formatInt(w, fmt[i..], arg),
524 .pointer => try formatString(w, fmt[i..], arg),
525 .@"struct" => try arg.format(w, fmt[i..]),
504526 else => comptime unreachable,
505527 },
506528 };
......@@ -509,7 +531,7 @@ pub fn formatArgs(w: *std.Io.Writer, fmt: []const u8, args: anytype) std.Io.Writ
509531}
510532
511533pub fn templateIndex(w: *std.Io.Writer, fmt: []const u8, template: []const u8) std.Io.Writer.Error!usize {
512 const i = std.mem.indexOf(u8, fmt, template) orelse {
534 const i = mem.find(u8, fmt, template) orelse {
513535 if (@import("builtin").mode == .debug) {
514536 std.debug.panic("template `{s}` not found in format string `{s}`", .{ template, fmt });
515537 }
lib/compiler/aro/aro/Driver.zig+98-40
......@@ -225,6 +225,8 @@ pub const usage =
225225 \\ Use `# <num>` linemarkers in preprocessed output
226226 \\ -fvisibility=[default|hidden|internal|protected]
227227 \\ Set the default ELF image symbol visibility to the specified option—all symbols are marked with this unless overridden within the code
228 \\ -fblocks Enable support for clang's Blocks language extension
229 \\ -fno-blocks Disable support for clang's Blocks language extension
228230 \\ -iquote <dir> Add directory to QUOTE include search path
229231 \\ -I <dir> Add directory to include search path
230232 \\ -idirafter <dir> Add directory to AFTER include search path
......@@ -309,6 +311,8 @@ pub fn parseArgs(
309311 var strip = true;
310312 var debug: ?backend.CodeGenOptions.DebugFormat = null;
311313 var emulate: ?LangOpts.Compiler = null;
314 var m_args: std.ArrayList([]const u8) = .empty;
315 defer m_args.deinit(gpa);
312316 while (i < args.len) : (i += 1) {
313317 const arg = args[i];
314318 if (arg.len > 1 and arg[0] == '-') {
......@@ -317,7 +321,7 @@ pub fn parseArgs(
317321 try stdout.flush();
318322 return true;
319323 } else if (mem.eql(u8, arg, "--version")) {
320 try stdout.writeAll(@import("../backend.zig").version_str ++ "\n");
324 try stdout.writeAll(backend.version_str ++ "\n");
321325 try stdout.flush();
322326 return true;
323327 } else if (mem.startsWith(u8, arg, "-D")) {
......@@ -331,7 +335,7 @@ pub fn parseArgs(
331335 macro = args[i];
332336 }
333337 var value: []const u8 = "1";
334 if (mem.indexOfScalar(u8, macro, '=')) |some| {
338 if (mem.findScalar(u8, macro, '=')) |some| {
335339 value = macro[some + 1 ..];
336340 macro = macro[0..some];
337341 }
......@@ -383,7 +387,7 @@ pub fn parseArgs(
383387 } else if (mem.eql(u8, arg, "-fapple-kext")) {
384388 d.apple_kext = true;
385389 } else if (option(arg, "-fvisibility=")) |visibility| {
386 d.comp.langopts.default_symbol_visibility = Attribute.visibilityFromString(visibility) orelse
390 d.comp.langopts.default_symbol_visibility = Attribute.Args.Visibility.opts.map.get(visibility) orelse
387391 return d.fatal("unsupported value '{s}'' in '{s}'", .{ visibility, arg });
388392 } else if (option(arg, "-frandom-seed=")) |_| {
389393 // Ignore
......@@ -507,12 +511,16 @@ pub fn parseArgs(
507511 pic_arg = arg;
508512 } else if (mem.eql(u8, arg, "-fropi")) {
509513 d.ropi = true;
514 d.comp.code_gen_options.is_ropi = true;
510515 } else if (mem.eql(u8, arg, "-fno-ropi")) {
511516 d.ropi = false;
517 d.comp.code_gen_options.is_ropi = false;
512518 } else if (mem.eql(u8, arg, "-frwpi")) {
513519 d.rwpi = true;
520 d.comp.code_gen_options.is_rwpi = true;
514521 } else if (mem.eql(u8, arg, "-fno-rwpi")) {
515522 d.rwpi = false;
523 d.comp.code_gen_options.is_rwpi = false;
516524 } else if (mem.eql(u8, arg, "-fshort-enums")) {
517525 d.comp.langopts.short_enums = true;
518526 } else if (mem.eql(u8, arg, "-fno-short-enums")) {
......@@ -848,10 +856,18 @@ pub fn parseArgs(
848856 }
849857 } else if (mem.eql(u8, arg, "-fno-lto")) {
850858 // nothing to do
859 } else if (mem.eql(u8, arg, "-fblocks")) {
860 d.comp.langopts.blocks = true;
861 } else if (mem.eql(u8, arg, "-fno-blocks")) {
862 d.comp.langopts.blocks = false;
863 } else if (mem.eql(u8, arg, "-pthread")) {
864 d.comp.langopts.pthread = true;
865 } else if (mem.startsWith(u8, arg, "-m")) {
866 try m_args.append(gpa, arg);
851867 } else {
852868 try d.warn("unknown argument '{s}'", .{arg});
853869 }
854 } else if (std.mem.endsWith(u8, arg, ".o") or std.mem.endsWith(u8, arg, ".obj")) {
870 } else if (mem.endsWith(u8, arg, ".o") or mem.endsWith(u8, arg, ".obj")) {
855871 try d.link_objects.append(gpa, arg);
856872 } else {
857873 const source = d.addSource(arg) catch |er| {
......@@ -861,10 +877,11 @@ pub fn parseArgs(
861877 }
862878 }
863879 {
864 d.comp.target = try d.parseTarget(d.raw_target_triple orelse "native", d.raw_cpu);
880 d.comp.target = try d.parseTarget(d.raw_target_triple orelse "native", d.raw_cpu, m_args.items);
865881 if (d.raw_darwin_variant_target_triple) |darwin_triple| {
866 d.comp.darwin_target_variant = try d.parseTarget(darwin_triple, null);
882 d.comp.darwin_target_variant = try d.parseTarget(darwin_triple, null, &.{});
867883 }
884 d.comp.langopts.setTargetOptions(d.comp.target);
868885 }
869886 if (emulate != null or d.raw_target_triple != null) {
870887 d.comp.langopts.setEmulatedCompiler(emulate orelse d.comp.target.systemCompiler());
......@@ -875,6 +892,13 @@ pub fn parseArgs(
875892 .no => {},
876893 }
877894 }
895 switch (d.comp.langopts.emulate) {
896 // clang automatically enables Blocks for Darwin targets
897 .clang, .no => if (d.comp.target.os.tag.isDarwin()) {
898 d.comp.langopts.blocks |= d.comp.target.isBlocksSupported();
899 },
900 else => {},
901 }
878902 if (d.comp.langopts.preserve_comments and !d.only_preprocess) {
879903 return d.fatal("invalid argument '{s}' only allowed with '-E'", .{comment_arg});
880904 }
......@@ -916,7 +940,7 @@ pub fn parseArgs(
916940}
917941
918942fn option(arg: []const u8, name: []const u8) ?[]const u8 {
919 if (std.mem.startsWith(u8, arg, name) and arg.len > name.len) {
943 if (mem.startsWith(u8, arg, name) and arg.len > name.len) {
920944 return arg[name.len..];
921945 }
922946 return null;
......@@ -973,7 +997,12 @@ fn unsupportedOptionForTarget(d: *Driver, target: *const Target, opt: []const u8
973997 );
974998}
975999
976fn parseTarget(d: *Driver, arch_os_abi: []const u8, opt_cpu_features: ?[]const u8) Compilation.Error!Target {
1000fn parseTarget(
1001 d: *Driver,
1002 arch_os_abi: []const u8,
1003 opt_cpu_features: ?[]const u8,
1004 m_args: []const []const u8,
1005) Compilation.Error!Target {
9771006 var query: std.Target.Query = .{
9781007 .dynamic_linker = .init(null),
9791008 };
......@@ -1023,6 +1052,38 @@ fn parseTarget(d: *Driver, arch_os_abi: []const u8, opt_cpu_features: ?[]const u
10231052 return d.fatal("unexpected extra field in target: '{s}'", .{arch_os_abi});
10241053 }
10251054
1055 if (m_args.len != 0) {
1056 var llvm_to_index: std.StringHashMapUnmanaged(std.Target.Cpu.Feature.Set.Index) = .empty;
1057 defer llvm_to_index.deinit(d.comp.gpa);
1058
1059 const features = arch.allFeaturesList();
1060 try llvm_to_index.ensureUnusedCapacity(d.comp.gpa, @intCast(features.len));
1061 for (features) |feature| {
1062 const llvm_name = feature.llvm_name orelse continue;
1063 llvm_to_index.putAssumeCapacity(llvm_name, feature.index);
1064 }
1065
1066 const add_set = &query.cpu_features_add;
1067 const sub_set = &query.cpu_features_sub;
1068 for (m_args) |m_arg| {
1069 if (mem.cutPrefix(u8, m_arg, "-mno-")) |llvm_name| {
1070 const index = llvm_to_index.get(llvm_name) orelse {
1071 try d.warn("unknown CPU feature '{s}'", .{llvm_name});
1072 continue;
1073 };
1074 sub_set.addFeature(index);
1075 } else if (mem.cutPrefix(u8, m_arg, "-m")) |llvm_name| {
1076 const index = llvm_to_index.get(llvm_name) orelse {
1077 try d.warn("unknown CPU feature '{s}'", .{llvm_name});
1078 continue;
1079 };
1080 add_set.addFeature(index);
1081 } else {
1082 unreachable;
1083 }
1084 }
1085 }
1086
10261087 if (opt_cpu_features) |cpu_features| {
10271088 const all_features = arch.allFeaturesList();
10281089 var index: usize = 0;
......@@ -1041,10 +1102,8 @@ fn parseTarget(d: *Driver, arch_os_abi: []const u8, opt_cpu_features: ?[]const u
10411102 } else if (mem.eql(u8, cpu_name, "baseline")) {
10421103 query.cpu_model = .baseline;
10431104 } else {
1044 query.cpu_model = .{
1045 .explicit = arch.parseCpuModel(cpu_name) orelse
1046 return d.fatal("unknown CPU model: '{s}'", .{cpu_name}),
1047 };
1105 query.cpu_model = .{ .explicit = arch.parseCpuModel(cpu_name) orelse
1106 return d.fatal("unknown CPU model: '{s}'", .{cpu_name}) };
10481107 }
10491108
10501109 if (opt_sub_arch) |sub_arch| {
......@@ -1079,9 +1138,16 @@ fn parseTarget(d: *Driver, arch_os_abi: []const u8, opt_cpu_features: ?[]const u
10791138 return d.fatal("unknown CPU feature: '{s}'", .{feature_name});
10801139 }
10811140 }
1082 } else if (opt_sub_arch) |sub_arch| {
1083 if (sub_arch.toFeature(arch)) |feature| {
1084 query.cpu_features_add.addFeature(feature);
1141 } else if (!arch_is_native) {
1142 if (Target.cpuModelForTargetQuadruple(arch, query.os_tag, query.abi, vendor, opt_sub_arch)) |model| {
1143 query.cpu_model = .{ .explicit = model };
1144 } else if (opt_sub_arch) |sub_arch| {
1145 if (sub_arch.toCpuModel(arch)) |model| {
1146 query.cpu_model = .{ .explicit = model };
1147 } else if (sub_arch.toFeature(arch)) |feature| {
1148 query.cpu_model = .{ .explicit = &.{ .name = "empty", .llvm_name = null, .features = .empty } };
1149 query.cpu_features_add.addFeature(feature);
1150 }
10851151 }
10861152 }
10871153
......@@ -1183,12 +1249,13 @@ pub fn main(d: *Driver, tc: *Toolchain, args: []const []const u8, comptime fast_
11831249 var stdout = std.Io.File.stdout().writer(d.comp.io, &stdout_buf);
11841250 if (parseArgs(d, &stdout.interface, &macro_buf, args) catch |er| switch (er) {
11851251 error.WriteFailed => return d.fatal("failed to write to stdout: {s}", .{errorDescription(er)}),
1186 error.OutOfMemory, error.FatalError => |e| return e,
1252 error.OutOfMemory => return error.OutOfMemory,
1253 error.FatalError => return error.FatalError,
11871254 }) return;
11881255 if (macro_buf.items.len > std.math.maxInt(u32)) {
11891256 return d.fatal("user provided macro source exceeded max size", .{});
11901257 }
1191 const contents = try macro_buf.toOwnedSlice(d.comp.gpa);
1258 const contents = try macro_buf.toOwnedSliceSentinel(d.comp.gpa, 0);
11921259 errdefer d.comp.gpa.free(contents);
11931260
11941261 break :macros try d.comp.addSourceFromOwnedBuffer("<command line>", contents, .user);
......@@ -1207,11 +1274,12 @@ pub fn main(d: *Driver, tc: *Toolchain, args: []const []const u8, comptime fast_
12071274 };
12081275
12091276 tc.discover() catch |er| switch (er) {
1210 error.OutOfMemory => |e| return e,
1277 error.OutOfMemory => return error.OutOfMemory,
12111278 error.TooManyMultilibs => return d.fatal("found more than one multilib with the same priority", .{}),
12121279 };
12131280 tc.defineSystemIncludes() catch |er| switch (er) {
1214 error.OutOfMemory, error.FatalError => |e| return e,
1281 error.OutOfMemory => return error.OutOfMemory,
1282 error.FatalError => return error.FatalError,
12151283 };
12161284 try d.comp.initSearchPath(d.includes.items, d.verbose_search_path);
12171285
......@@ -1238,12 +1306,7 @@ pub fn main(d: *Driver, tc: *Toolchain, args: []const []const u8, comptime fast_
12381306}
12391307
12401308/// Initializes a DepFile if requested by driver options.
1241pub fn initDepFile(
1242 d: *Driver,
1243 source: Source,
1244 buf: *[std.fs.max_name_bytes]u8,
1245 omit_source: bool,
1246) Compilation.Error!?DepFile {
1309pub fn initDepFile(d: *Driver, source: Source, buf: *[std.fs.max_name_bytes]u8) Compilation.Error!?DepFile {
12471310 if (!d.dependencies.m and !d.dependencies.md) return null;
12481311 var dep_file: DepFile = .{
12491312 .target = undefined,
......@@ -1257,11 +1320,11 @@ pub fn initDepFile(
12571320 std.fs.path.stem(source.path),
12581321 d.comp.target.ofmt.fileExt(d.comp.target.cpu.arch),
12591322 };
1260 dep_file.target = std.fmt.bufPrint(buf, "{s}{s}", args) catch
1323 dep_file.target = mem.print(buf, "{s}{s}", args) catch
12611324 return d.fatal("dependency file name too long for filesystem '{s}{s}'", args);
12621325 }
12631326
1264 if (!omit_source) try dep_file.addDependency(d.comp.gpa, source.path);
1327 try dep_file.addDependency(d.comp.gpa, source.path);
12651328 errdefer comptime unreachable;
12661329
12671330 return dep_file;
......@@ -1270,7 +1333,7 @@ pub fn initDepFile(
12701333/// Returns name requested for the dependency file or null for stdout.
12711334pub fn getDepFileName(d: *Driver, source: Source, buf: *[std.fs.max_name_bytes]u8) Compilation.Error!?[]const u8 {
12721335 if (d.dependencies.file) |file| {
1273 if (std.mem.eql(u8, file, "-")) return null;
1336 if (mem.eql(u8, file, "-")) return null;
12741337 return file;
12751338 }
12761339 if (!d.dependencies.md) {
......@@ -1279,7 +1342,7 @@ pub fn getDepFileName(d: *Driver, source: Source, buf: *[std.fs.max_name_bytes]u
12791342 }
12801343
12811344 const base_name = std.fs.path.stem(d.output_name orelse source.path);
1282 return std.fmt.bufPrint(buf, "{s}.d", .{base_name}) catch
1345 return mem.print(buf, "{s}.d", .{base_name}) catch
12831346 return d.fatal("dependency file name too long for filesystem: {s}.d", .{base_name});
12841347}
12851348
......@@ -1297,7 +1360,7 @@ fn getRandomFilename(d: *Driver, buf: *[std.fs.max_name_bytes]u8, extension: []c
12971360 @as([]const u8, &random_name),
12981361 extension,
12991362 };
1300 return std.fmt.bufPrint(buf, fmt_template, fmt_args) catch return d.fatal("Filename too long for filesystem: " ++ fmt_template, fmt_args);
1363 return mem.print(buf, fmt_template, fmt_args) catch return d.fatal("Filename too long for filesystem: " ++ fmt_template, fmt_args);
13011364}
13021365
13031366/// If it's used, buf will either hold a filename or `/tmp/<12 random bytes with base-64 encoding>.<extension>`
......@@ -1310,7 +1373,7 @@ fn getOutFileName(d: *Driver, source: Source, buf: *[std.fs.max_name_bytes]u8) !
13101373 if (d.only_preprocess_and_compile) ".s" else d.comp.target.ofmt.fileExt(d.comp.target.cpu.arch),
13111374 };
13121375 return d.output_name orelse
1313 std.fmt.bufPrint(buf, fmt_template, fmt_args) catch return d.fatal("Filename too long for filesystem: " ++ fmt_template, fmt_args);
1376 mem.print(buf, fmt_template, fmt_args) catch return d.fatal("Filename too long for filesystem: " ++ fmt_template, fmt_args);
13141377 }
13151378
13161379 return d.getRandomFilename(buf, d.comp.target.ofmt.fileExt(d.comp.target.cpu.arch));
......@@ -1367,7 +1430,7 @@ fn processSource(
13671430 defer pp.deinit();
13681431
13691432 var name_buf: [std.fs.max_name_bytes]u8 = undefined;
1370 var opt_dep_file = try d.initDepFile(source, &name_buf, false);
1433 var opt_dep_file = try d.initDepFile(source, &name_buf);
13711434 defer if (opt_dep_file) |*dep_file| dep_file.deinit(gpa);
13721435
13731436 if (opt_dep_file) |*dep_file| pp.dep_file = dep_file;
......@@ -1415,11 +1478,6 @@ fn processSource(
14151478 if (d.only_preprocess) {
14161479 d.printDiagnosticsStats();
14171480
1418 if (d.diagnostics.errors != prev_total) {
1419 if (fast_exit) std.process.exit(1); // Not linking, no need for cleanup.
1420 return;
1421 }
1422
14231481 if (d.dependencies.m and !d.dependencies.md) {
14241482 if (fast_exit) std.process.exit(1); // Not linking, no need for cleanup.
14251483 return;
......@@ -1507,7 +1565,7 @@ fn processSource(
15071565 return;
15081566 }
15091567 } else {
1510 var ir = try tree.genIr();
1568 var ir = try tree.genIr(&pp);
15111569 defer ir.deinit(gpa);
15121570
15131571 if (d.verbose_ir) {
......@@ -1524,8 +1582,8 @@ fn processSource(
15241582 render_errors.deinit(gpa);
15251583 }
15261584
1527 var obj = ir.render(gpa, d.comp.target.toZigTarget(), &render_errors) catch |er| switch (er) {
1528 error.OutOfMemory => |e| return e,
1585 var obj = ir.render(gpa, d.comp.target.toZigTarget(), &render_errors) catch |e| switch (e) {
1586 error.OutOfMemory => return error.OutOfMemory,
15291587 error.LowerFail => {
15301588 return d.fatal(
15311589 "unable to render Ir to machine code: {s}",
lib/compiler/aro/aro/Driver/Distro.zig+3-3
......@@ -226,9 +226,9 @@ fn detectLSBRelease(tc: *const Toolchain) ?Tag {
226226fn scanForRedHat(buf: []const u8) Tag {
227227 if (mem.startsWith(u8, buf, "Fedora release")) return .fedora;
228228 if (mem.startsWith(u8, buf, "Red Hat Enterprise Linux") or mem.startsWith(u8, buf, "CentOS") or mem.startsWith(u8, buf, "Scientific Linux")) {
229 if (mem.indexOfPos(u8, buf, 0, "release 7") != null) return .rhel7;
230 if (mem.indexOfPos(u8, buf, 0, "release 6") != null) return .rhel6;
231 if (mem.indexOfPos(u8, buf, 0, "release 5") != null) return .rhel5;
229 if (mem.findPos(u8, buf, 0, "release 7") != null) return .rhel7;
230 if (mem.findPos(u8, buf, 0, "release 6") != null) return .rhel6;
231 if (mem.findPos(u8, buf, 0, "release 5") != null) return .rhel5;
232232 }
233233
234234 return .unknown;
lib/compiler/aro/aro/Driver/GCCVersion.zig+2-2
......@@ -69,7 +69,7 @@ pub fn parse(text: []const u8) GCCVersion {
6969 var minor_str = second;
7070
7171 if (rest.len == 0) {
72 const end = mem.indexOfNone(u8, minor_str, "0123456789") orelse minor_str.len;
72 const end = mem.findNone(u8, minor_str, "0123456789") orelse minor_str.len;
7373 if (end > 0) {
7474 good.suffix = minor_str[end..];
7575 minor_str = minor_str[0..end];
......@@ -80,7 +80,7 @@ pub fn parse(text: []const u8) GCCVersion {
8080 good.minor_str = minor_str;
8181
8282 if (rest.len > 0) {
83 const end = mem.indexOfNone(u8, rest, "0123456789") orelse rest.len;
83 const end = mem.findNone(u8, rest, "0123456789") orelse rest.len;
8484 if (end > 0) {
8585 const patch_num_text = rest[0..end];
8686 good.patch = std.fmt.parseInt(i32, patch_num_text, 10) catch return bad;
lib/compiler/aro/aro/Hideset.zig+31-33
......@@ -13,7 +13,6 @@ const Allocator = mem.Allocator;
1313
1414const Compilation = @import("Compilation.zig");
1515const Source = @import("Source.zig");
16const Tokenizer = @import("Tokenizer.zig");
1716
1817pub const Hideset = @This();
1918
......@@ -21,18 +20,6 @@ const Identifier = struct {
2120 id: Source.Id = .unused,
2221 byte_offset: u32 = 0,
2322
24 fn slice(self: Identifier, comp: *const Compilation) []const u8 {
25 var tmp_tokenizer: Tokenizer = .{
26 .buf = comp.getSource(self.id).buf,
27 .langopts = comp.langopts,
28 .index = self.byte_offset,
29 .source = .generated,
30 .splice_locs = &.{},
31 };
32 const res = tmp_tokenizer.next();
33 return tmp_tokenizer.buf[res.start..res.end];
34 }
35
3623 fn fromLocation(loc: Source.Location) Identifier {
3724 return .{
3825 .id = loc.id,
......@@ -43,6 +30,7 @@ const Identifier = struct {
4330
4431const Item = struct {
4532 identifier: Identifier = .{},
33 len: u32 = 0,
4634 next: Index = .none,
4735
4836 const List = std.MultiArrayList(Item);
......@@ -65,10 +53,16 @@ const Iterator = struct {
6553 slice: Item.List.Slice,
6654 i: Index,
6755
68 fn next(self: *Iterator) ?Identifier {
56 fn next(self: *Iterator) ?Item {
6957 if (self.i == .none) return null;
7058 defer self.i = self.slice.items(.next)[@backingInt(self.i)];
71 return self.slice.items(.identifier)[@backingInt(self.i)];
59 const identifier = self.slice.items(.identifier)[@backingInt(self.i)];
60 const length = self.slice.items(.len)[@backingInt(self.i)];
61
62 return .{
63 .identifier = identifier,
64 .len = length,
65 };
7266 }
7367};
7468
......@@ -110,21 +104,21 @@ fn ensureUnusedCapacity(self: *Hideset, new_size: usize) !void {
110104}
111105
112106/// Creates a one-item list with contents `identifier`
113fn createNodeAssumeCapacity(self: *Hideset, identifier: Identifier) Index {
114 return self.createNodeAssumeCapacityExtra(identifier, .none);
107fn createNodeAssumeCapacity(self: *Hideset, identifier: Identifier, length: u32) Index {
108 return self.createNodeAssumeCapacityExtra(identifier, .none, length);
115109}
116110
117111/// Creates a one-item list with contents `identifier`
118fn createNodeAssumeCapacityExtra(self: *Hideset, identifier: Identifier, next: Index) Index {
112fn createNodeAssumeCapacityExtra(self: *Hideset, identifier: Identifier, next: Index, length: u32) Index {
119113 const next_idx = self.linked_list.len;
120 self.linked_list.appendAssumeCapacity(.{ .identifier = identifier, .next = next });
114 self.linked_list.appendAssumeCapacity(.{ .identifier = identifier, .next = next, .len = length });
121115 return @fromBackingInt(@intCast(next_idx));
122116}
123117
124118/// Create a new list with `identifier` at the front followed by `tail`
125pub fn prepend(self: *Hideset, loc: Source.Location, tail: Index) !Index {
119pub fn prepend(self: *Hideset, loc: Source.Location, length: u32, tail: Index) !Index {
126120 const new_idx = self.linked_list.len;
127 try self.linked_list.append(self.comp.gpa, .{ .identifier = Identifier.fromLocation(loc), .next = tail });
121 try self.linked_list.append(self.comp.gpa, .{ .identifier = Identifier.fromLocation(loc), .next = tail, .len = length });
128122 return @fromBackingInt(@intCast(new_idx));
129123}
130124
......@@ -135,16 +129,16 @@ pub fn @"union"(self: *Hideset, a: Index, b: Index) !Index {
135129 self.tmp_map.clearRetainingCapacity();
136130
137131 var it = self.iterator(b);
138 while (it.next()) |identifier| {
139 try self.tmp_map.put(self.comp.gpa, identifier, {});
132 while (it.next()) |item| {
133 try self.tmp_map.put(self.comp.gpa, item.identifier, {});
140134 }
141135
142136 var head: Index = b;
143137 try self.ensureUnusedCapacity(self.len(a));
144138 it = self.iterator(a);
145 while (it.next()) |identifier| {
146 if (!self.tmp_map.contains(identifier)) {
147 head = self.createNodeAssumeCapacityExtra(identifier, head);
139 while (it.next()) |item| {
140 if (!self.tmp_map.contains(item.identifier)) {
141 head = self.createNodeAssumeCapacityExtra(item.identifier, head, item.len);
148142 }
149143 }
150144 return head;
......@@ -152,8 +146,12 @@ pub fn @"union"(self: *Hideset, a: Index, b: Index) !Index {
152146
153147pub fn contains(self: *const Hideset, list: Index, str: []const u8) bool {
154148 var it = self.iterator(list);
155 while (it.next()) |identifier| {
156 if (mem.eql(u8, str, identifier.slice(self.comp))) return true;
149 while (it.next()) |item| {
150 const start = item.identifier.byte_offset;
151 const end = start + item.len;
152 const slice = self.comp.getSource(item.identifier.id).buf[start..end];
153
154 if (mem.eql(u8, str, slice)) return true;
157155 }
158156 return false;
159157}
......@@ -176,15 +174,15 @@ pub fn intersection(self: *Hideset, a: Index, b: Index) !Index {
176174 var head: Index = .none;
177175 var it = self.iterator(a);
178176 var a_len: usize = 0;
179 while (it.next()) |identifier| : (a_len += 1) {
180 try self.tmp_map.put(self.comp.gpa, identifier, {});
177 while (it.next()) |item| : (a_len += 1) {
178 try self.tmp_map.put(self.comp.gpa, item.identifier, {});
181179 }
182180 try self.ensureUnusedCapacity(@min(a_len, self.len(b)));
183181
184182 it = self.iterator(b);
185 while (it.next()) |identifier| {
186 if (self.tmp_map.contains(identifier)) {
187 const new_idx = self.createNodeAssumeCapacity(identifier);
183 while (it.next()) |item| {
184 if (self.tmp_map.contains(item.identifier)) {
185 const new_idx = self.createNodeAssumeCapacity(item.identifier, item.len);
188186 if (head == .none) {
189187 head = new_idx;
190188 }
lib/compiler/aro/aro/LangOpts.zig+110-6
......@@ -1,7 +1,8 @@
11const std = @import("std");
22
3const Attribute = @import("Attribute.zig");
34const char_info = @import("char_info.zig");
4const DiagnosticTag = @import("Diagnostics.zig").Tag;
5const Target = @import("Target.zig");
56
67pub const Compiler = enum {
78 clang,
......@@ -57,10 +58,14 @@ pub const Standard = enum {
5758 default,
5859 /// ISO C 2017 with GNU extensions
5960 gnu17,
60 /// Working Draft for ISO C23
61 /// ISO C 2023
6162 c23,
62 /// Working Draft for ISO C23 with GNU extensions
63 /// ISO C 2023 with GNU extensions
6364 gnu23,
65 /// Working Draft for ISO C2Y
66 c2y,
67 /// Working Draft for ISO C2Y with GNU extensions
68 gnu2y,
6469
6570 const NameMap = std.StaticStringMap(Standard).initComptime(.{
6671 .{ "c89", .c89 }, .{ "c90", .c89 }, .{ "iso9899:1990", .c89 },
......@@ -71,7 +76,8 @@ pub const Standard = enum {
7176 .{ "iso9899:201x", .c11 }, .{ "gnu11", .gnu11 }, .{ "c17", .c17 },
7277 .{ "iso9899:2017", .c17 }, .{ "c18", .c17 }, .{ "iso9899:2018", .c17 },
7378 .{ "gnu17", .gnu17 }, .{ "gnu18", .gnu17 }, .{ "c23", .c23 },
74 .{ "gnu23", .gnu23 }, .{ "c2x", .c23 }, .{ "gnu2x", .gnu23 },
79 .{ "iso9899:2024", .c23 }, .{ "gnu23", .gnu23 }, .{ "c2x", .c23 },
80 .{ "gnu2x", .gnu23 }, .{ "c2y", .c2y }, .{ "gnu2y", .gnu23 },
7581 });
7682
7783 pub fn atLeast(self: Standard, other: Standard) bool {
......@@ -80,7 +86,7 @@ pub const Standard = enum {
8086
8187 pub fn isGNU(standard: Standard) bool {
8288 return switch (standard) {
83 .gnu89, .gnu99, .gnu11, .default, .gnu17, .gnu23 => true,
89 .gnu89, .gnu99, .gnu11, .default, .gnu17, .gnu23, .gnu2y => true,
8490 else => false,
8591 };
8692 }
......@@ -98,6 +104,7 @@ pub const Standard = enum {
98104 .c11, .gnu11 => "201112L",
99105 .default, .c17, .gnu17 => "201710L",
100106 .c23, .gnu23 => "202311L",
107 .c2y, .gnu2y => "202400L",
101108 };
102109 }
103110
......@@ -120,6 +127,20 @@ pub const Standard = enum {
120127 }
121128};
122129
130pub const ArmLdrex = packed struct(u4) {
131 b: bool = false, // byte (8-bit)
132 h: bool = false, // half (16-bit)
133 w: bool = false, // word (32-bit)
134 d: bool = false, // double (64-bit)
135
136 pub const b_int: u4 = 1;
137 pub const h_int: u4 = 2;
138 pub const w_int: u4 = 4;
139 pub const d_int: u4 = 8;
140 pub const none: ArmLdrex = .{};
141 pub const all: ArmLdrex = @bitCast(@as(u4, 15));
142};
143
123144const LangOpts = @This();
124145
125146emulate: Compiler = .no,
......@@ -157,7 +178,16 @@ gnuc_version: ?u32 = null,
157178
158179bounds_safety: BoundsSafety = .none,
159180
160default_symbol_visibility: std.builtin.SymbolVisibility = .default,
181default_symbol_visibility: Attribute.Args.Visibility = .default,
182
183blocks: bool = false,
184
185/// If non-null, contains ARM LDREX/STREX mask. Only populated on ARM targets.
186arm_ldrex: ?ArmLdrex = null,
187/// Whether the target supports AVR's non-standard 24-bit integer types.
188has_int24: bool = false,
189
190pthread: bool = false,
161191
162192pub fn setStandard(self: *LangOpts, name: []const u8) error{InvalidStandard}!void {
163193 self.standard = Standard.NameMap.get(name) orelse return error.InvalidStandard;
......@@ -176,6 +206,10 @@ pub fn hasDigraphs(self: *const LangOpts) bool {
176206 return self.digraphs orelse self.standard.atLeast(.gnu89);
177207}
178208
209pub fn hasTargetOsMacros(self: *const LangOpts) bool {
210 return self.emulate == .no or self.emulate == .clang;
211}
212
179213pub fn setEmulatedCompiler(self: *LangOpts, compiler: Compiler) void {
180214 self.emulate = compiler;
181215 self.setMSExtensions(compiler == .msvc);
......@@ -188,3 +222,73 @@ pub fn setFpEvalMethod(self: *LangOpts, fp_eval_method: FPEvalMethod) void {
188222pub fn setCharSignedness(self: *LangOpts, signedness: std.builtin.Signedness) void {
189223 self.char_signedness_override = signedness;
190224}
225
226pub fn allowFixedSizedIntSuffixes(self: *const LangOpts) bool {
227 return switch (self.emulate) {
228 .msvc => true,
229 .clang, .no => self.ms_extensions,
230 .gcc => false,
231 };
232}
233
234pub fn setTargetOptions(self: *LangOpts, target: Target) void {
235 // TODO: Move more stuff here :)
236 self.has_int24 = target.cpu.arch == .avr;
237 switch (target.cpu.arch) {
238 .arm, .armeb, .thumb, .thumbeb => {
239 {
240 // ARM exclusive load/store support.
241 // See this: https://arm-software.github.io/acle/main/acle.html#ldrexstrex
242 // These constants define masks containing data sizes are suitable for
243 // __builtin_arm_ldrex and __builtin_arm_strex.
244
245 const arm_version = if (target.armVersion()) |v| v.version else 6;
246 const ldrex: ArmLdrex = switch (arm_version) {
247 6 => if (target.cpu.has(.arm, .mclass))
248 .none
249 else if (target.cpu.has(.arm, .v6k) or target.cpu.has(.arm, .v6kz))
250 .all
251 else
252 .{ .w = true },
253 7, 8 => if (target.cpu.has(.arm, .mclass))
254 .{ .b = true, .h = true, .w = true }
255 else
256 .all,
257 9 => .all,
258 else => .none,
259 };
260
261 self.arm_ldrex = ldrex;
262 }
263 },
264 .aarch64, .aarch64_be => {
265 // ARM ldrex is always full-width
266 self.arm_ldrex = .all;
267 },
268 else => {},
269 }
270}
271
272test "ArmLdrex versions" {
273 const cases = [_]struct {
274 ldrex: ArmLdrex,
275 val: u4,
276 }{
277 .{ .ldrex = .{ .b = true }, .val = 1 },
278 .{ .ldrex = .{ .b = true, .h = true }, .val = 3 },
279 .{ .ldrex = .{ .b = true, .h = true, .w = true }, .val = 7 },
280 .{ .ldrex = .{ .b = true, .h = true, .w = true, .d = true }, .val = 15 },
281
282 .{ .ldrex = .{ .b = true }, .val = ArmLdrex.b_int },
283 .{ .ldrex = .{ .h = true }, .val = ArmLdrex.h_int },
284 .{ .ldrex = .{ .w = true }, .val = ArmLdrex.w_int },
285 .{ .ldrex = .{ .d = true }, .val = ArmLdrex.d_int },
286
287 .{ .ldrex = .none, .val = 0 },
288 .{ .ldrex = .all, .val = 15 },
289 };
290
291 for (cases) |c| {
292 try std.testing.expectEqual(c.val, @as(u4, @bitCast(c.ldrex)));
293 }
294}
lib/compiler/aro/aro/Parser.zig+2356-1948
......@@ -17,20 +17,40 @@ const Source = @import("Source.zig");
1717const StringId = @import("StringInterner.zig").StringId;
1818const SymbolStack = @import("SymbolStack.zig");
1919const Symbol = SymbolStack.Symbol;
20const text_literal = @import("text_literal.zig");
2120const Tokenizer = @import("Tokenizer.zig");
21const number_literal = Tokenizer.number_literal;
22const text_literal = Tokenizer.text_literal;
2223const Tree = @import("Tree.zig");
2324const Token = Tree.Token;
24const NumberPrefix = Token.NumberPrefix;
25const NumberSuffix = Token.NumberSuffix;
2625const TokenIndex = Tree.TokenIndex;
2726const Node = Tree.Node;
2827const TypeStore = @import("TypeStore.zig");
2928const Type = TypeStore.Type;
3029const QualType = TypeStore.QualType;
3130const Value = @import("Value.zig");
31const ArmLdrex = @import("LangOpts.zig").ArmLdrex;
32
33pub const Diagnostic = @import("Parser/Diagnostic.zig");
3234
3335const NodeList = std.ArrayList(Node.Index);
36const TentativeDefinitionKey = struct {
37 name: StringId,
38 kind: Kind,
39
40 const Kind = enum {
41 incomplete_type,
42 tentative_array,
43 };
44
45 fn incompleteType(name: StringId) TentativeDefinitionKey {
46 return .{ .name = name, .kind = .incomplete_type };
47 }
48
49 fn tentativeArray(name: StringId) TentativeDefinitionKey {
50 return .{ .name = name, .kind = .tentative_array };
51 }
52};
53
3454const Switch = struct {
3555 default: ?TokenIndex = null,
3656 ranges: std.ArrayList(Range) = .empty,
......@@ -60,7 +80,7 @@ const Switch = struct {
6080
6181const Label = union(enum) {
6282 unresolved_goto: TokenIndex,
63 label: TokenIndex,
83 label: Node.Index,
6484};
6585
6686const InitContext = enum {
......@@ -72,15 +92,6 @@ const InitContext = enum {
7292 static,
7393};
7494
75pub const Error = Compilation.Error || error{ParsingFailed};
76
77/// An attribute that has been parsed but not yet validated in its context
78const TentativeAttribute = struct {
79 attr: Attribute,
80 tok: TokenIndex,
81 seen: bool = false,
82};
83
8495/// How the parser handles const int decl references when it is expecting an integer
8596/// constant expression.
8697const ConstDeclFoldingMode = enum {
......@@ -94,6 +105,8 @@ const ConstDeclFoldingMode = enum {
94105 no_const_decl_folding,
95106};
96107
108pub const Error = Compilation.Error || error{ParsingFailed};
109
97110const Parser = @This();
98111
99112// values from preprocessor
......@@ -119,25 +132,25 @@ param_buf: std.ArrayList(Type.Func.Param) = .empty,
119132enum_buf: std.ArrayList(Type.Enum.Field) = .empty,
120133/// Record type fields.
121134record_buf: std.ArrayList(Type.Record.Field) = .empty,
122/// Attributes that have been parsed but not yet validated or applied.
123attr_buf: std.MultiArrayList(TentativeAttribute) = .empty,
124/// Used to store validated attributes before they are applied to types.
125attr_application_buf: std.ArrayList(Attribute) = .empty,
126/// type name -> variable name location for tentative definitions (top-level defs with thus-far-incomplete types)
127/// e.g. `struct Foo bar;` where `struct Foo` is not defined yet.
128/// The key is the StringId of `Foo` and the value is the TokenIndex of `bar`
129/// Items are removed if the type is subsequently completed with a definition.
130/// We only store the first tentative definition that uses a given type because this map is only used
131/// for issuing an error message, and correcting the first error for a type will fix all of them for that type.
132tentative_defs: std.AutoHashMapUnmanaged(StringId, TokenIndex) = .empty,
135
136wip_attrs: Attribute.Wip = .{},
137
138/// Tentative definitions that require a delayed diagnostic unless completed later.
139/// For incomplete records/enums, the key stores the type name and the value is a variable name token.
140/// For incomplete arrays, the key stores the variable name and the value is the name token.
141tentative_defs: std.AutoArrayHashMapUnmanaged(TentativeDefinitionKey, TokenIndex) = .empty,
142
143maybe_unused_decl: std.AutoArrayHashMapUnmanaged(Node.Index, bool) = .empty,
144/// Error count before the function body was parsed. No unused warnings are
145/// issued if there were errors in the body.
146local_unused_err_count: u32 = 0,
133147
134148// configuration and miscellaneous info
135no_eval: bool = false,
136in_macro: bool = false,
137149extension_suppressed: bool = false,
138150contains_address_of_label: bool = false,
139151label_count: u32 = 0,
140152const_decl_folding: ConstDeclFoldingMode = .fold_const_decls,
153record_static_assert_eval_note: bool = false,
141154/// location of first computed goto in function currently being parsed
142155/// if a computed goto is used, the function must contain an
143156/// address-of-label expression (tracked with contains_address_of_label)
......@@ -156,6 +169,7 @@ func: struct {
156169 name: TokenIndex = 0,
157170 ident: ?Result = null,
158171 pretty_ident: ?Result = null,
172 decl: Node.OptIndex = .null,
159173} = .{},
160174
161175/// Various variables that are different for each record.
......@@ -420,8 +434,6 @@ fn expectClosing(p: *Parser, opening: TokenIndex, id: Token.Id) Error!void {
420434 };
421435}
422436
423pub const Diagnostic = @import("Parser/Diagnostic.zig");
424
425437pub fn err(p: *Parser, tok_i: TokenIndex, diagnostic: Diagnostic, args: anytype) Compilation.Error!void {
426438 if (p.extension_suppressed) {
427439 if (diagnostic.extension and diagnostic.kind == .off) return;
......@@ -462,7 +474,6 @@ fn formatArgs(p: *Parser, w: *std.Io.Writer, fmt: []const u8, args: anytype) !vo
462474 []const u8 => try Diagnostics.formatString(w, fmt[i..], arg),
463475 Tree.Token.Id => try formatTokenId(w, fmt[i..], arg),
464476 QualType => try p.formatQualType(w, fmt[i..], arg),
465 text_literal.Ascii => try arg.format(w, fmt[i..]),
466477 Result => try p.formatResult(w, fmt[i..], arg),
467478 *Result => try p.formatResult(w, fmt[i..], arg.*),
468479 Enumerator, *Enumerator => try p.formatResult(w, fmt[i..], .{
......@@ -470,12 +481,12 @@ fn formatArgs(p: *Parser, w: *std.Io.Writer, fmt: []const u8, args: anytype) !vo
470481 .val = arg.val,
471482 .qt = arg.qt,
472483 }),
473 Codepoint => try arg.format(w, fmt[i..]),
474 Normalized => try arg.format(w, fmt[i..]),
475 Escaped => try arg.format(w, fmt[i..]),
484 *const Attribute.Wip.Parsed, *Attribute.Wip.Parsed => try formatAttributeName(w, fmt[i..], arg),
485 Attribute => try formatAttributeName(w, fmt[i..], arg),
476486 else => switch (@typeInfo(@TypeOf(arg))) {
477487 .int, .comptime_int => try Diagnostics.formatInt(w, fmt[i..], arg),
478488 .pointer => try Diagnostics.formatString(w, fmt[i..], arg),
489 .@"struct" => try arg.format(w, fmt[i..]),
479490 else => comptime unreachable,
480491 },
481492 };
......@@ -495,7 +506,7 @@ fn formatQualType(p: *Parser, w: *std.Io.Writer, fmt: []const u8, qt: QualType)
495506 try qt.print(p.comp, w);
496507 try w.writeByte('\'');
497508
498 if (qt.isC23Auto()) return i;
509 if (qt.isAuto()) return i;
499510 if (qt.get(p.comp, .vector)) |vector_ty| {
500511 try w.print(" (vector of {d} '", .{vector_ty.len});
501512 try vector_ty.elem.printDesugared(p.comp, w);
......@@ -515,7 +526,7 @@ fn formatResult(p: *Parser, w: *std.Io.Writer, fmt: []const u8, res: Result) !us
515526 .null => try w.writeAll("nullptr_t"),
516527 else => if (try res.val.print(res.qt, p.comp, w)) |nested| switch (nested) {
517528 .pointer => |ptr| {
518 const ptr_node: Node.Index = @fromBackingInt(@intCast(ptr.node));
529 const ptr_node: Node.Index = @fromBackingInt(ptr.node);
519530 const decl_name = p.tree.tokSlice(ptr_node.tok(&p.tree));
520531 try ptr.offset.printPointer(decl_name, p.comp, w);
521532 },
......@@ -524,6 +535,22 @@ fn formatResult(p: *Parser, w: *std.Io.Writer, fmt: []const u8, res: Result) !us
524535 return i;
525536}
526537
538fn formatAttributeName(w: *std.Io.Writer, fmt: []const u8, attr: anytype) !usize {
539 const i = Diagnostics.templateIndex(w, fmt, "{at}");
540
541 try w.writeByte('\'');
542 if (attr.syntax == .standard and attr.name != .standard) {
543 try w.writeAll(@tagName(attr.name));
544 try w.writeAll("::");
545 }
546 switch (attr.name) {
547 .aro => {},
548 inline else => |tag| try w.writeAll(@tagName(tag)),
549 }
550 try w.writeByte('\'');
551 return i;
552}
553
527554const Normalized = struct {
528555 str: []const u8,
529556
......@@ -586,6 +613,66 @@ const Escaped = struct {
586613 }
587614};
588615
616pub fn Choices(comptime E: type) type {
617 return struct {
618 choices: []const E,
619 quote: ?u8,
620
621 pub fn init(choices: []const E, quote: ?u8) @This() {
622 return .{ .choices = choices, .quote = quote };
623 }
624
625 pub fn format(ctx: @This(), w: *std.Io.Writer, fmt: []const u8) !usize {
626 const i = Diagnostics.templateIndex(w, fmt, "{choices}");
627
628 for (ctx.choices, 0..) |choice, choice_i| {
629 if (choice_i != 0) {
630 if (ctx.choices.len > 2) try w.writeByte(',');
631 try w.writeByte(' ');
632 if (choice_i == ctx.choices.len - 1) try w.writeAll("and ");
633 }
634
635 if (ctx.quote) |q| try w.writeByte(q);
636 if (@hasDecl(E, "str")) {
637 try w.writeAll(choice.str());
638 } else {
639 try w.writeAll(@tagName(choice));
640 }
641 if (ctx.quote) |q| try w.writeByte(q);
642 }
643
644 return i;
645 }
646 };
647}
648
649pub const ChoicesStr = struct {
650 choices: []const []const u8,
651 quote: ?u8,
652
653 pub fn init(choices: []const []const u8, quote: ?u8) @This() {
654 return .{ .choices = choices, .quote = quote };
655 }
656
657 pub fn format(ctx: @This(), w: *std.Io.Writer, fmt: []const u8) !usize {
658 const i = Diagnostics.templateIndex(w, fmt, "{choices}");
659
660 for (ctx.choices, 0..) |choice, choice_i| {
661 if (choice_i != 0) {
662 if (ctx.choices.len > 2) try w.writeByte(',');
663 try w.writeByte(' ');
664 if (choice_i == ctx.choices.len - 1) try w.writeAll("and ");
665 }
666
667 if (ctx.quote) |q| try w.writeByte(q);
668 try w.writeAll(choice);
669 if (ctx.quote) |q| try w.writeByte(q);
670 }
671
672 return i;
673 }
674};
675
589676pub fn todo(p: *Parser, msg: []const u8) Error {
590677 try p.err(p.tok_i, .todo, .{msg});
591678 return error.ParsingFailed;
......@@ -616,34 +703,66 @@ pub fn errValueChanged(p: *Parser, tok_i: TokenIndex, diagnostic: Diagnostic, re
616703 try p.err(tok_i, diagnostic, .{ res.qt, int_qt, zero_str, old_res, new_res });
617704}
618705
619fn checkDeprecatedUnavailable(p: *Parser, ty: QualType, usage_tok: TokenIndex, decl_tok: TokenIndex) !void {
620 if (ty.getAttribute(p.comp, .@"error")) |@"error"| {
621 const msg_str = p.comp.interner.get(@"error".msg.ref()).bytes;
622 try p.err(usage_tok, .error_attribute, .{ p.tokSlice(@"error".__name_tok), Escaped.init(msg_str) });
706fn checkDeprecatedUnavailable(p: *Parser, opt_node: anytype, usage_tok: TokenIndex) !void {
707 const node: Node.Index = opt_node.unpack() orelse return;
708 const am = &p.tree.attr_map;
709 if (am.getAttribute(node, .@"error")) |attr| {
710 try p.codegenDiagnostic(usage_tok, .error_attribute, .{ p.tokSlice(node.tok(&p.tree)), Escaped.init(attr.args.@"error") });
623711 }
624 if (ty.getAttribute(p.comp, .warning)) |warning| {
625 const msg_str = p.comp.interner.get(warning.msg.ref()).bytes;
626 try p.err(usage_tok, .warning_attribute, .{ p.tokSlice(warning.__name_tok), Escaped.init(msg_str) });
712 if (am.getAttribute(node, .warning)) |attr| {
713 try p.codegenDiagnostic(usage_tok, .warning_attribute, .{ p.tokSlice(node.tok(&p.tree)), Escaped.init(attr.args.warning) });
627714 }
628 if (ty.getAttribute(p.comp, .unavailable)) |unavailable| {
629 try p.errDeprecated(usage_tok, .unavailable, unavailable.msg);
630 try p.err(unavailable.__name_tok, .unavailable_note, .{p.tokSlice(decl_tok)});
715 if (am.getAttribute(node, .unavailable)) |attr| {
716 try p.errDeprecated(usage_tok, .unavailable, attr.args.unavailable);
717
718 const decl_name_tok = node.tok(&p.tree);
719 try p.err(attr.tok, .unavailable_note, .{p.tokSlice(decl_name_tok)});
631720 return error.ParsingFailed;
632721 }
633 if (ty.getAttribute(p.comp, .deprecated)) |deprecated| {
722 if (am.getAttribute(node, .deprecated)) |attr| {
723 const deprecated = attr.args.deprecated;
634724 try p.errDeprecated(usage_tok, .deprecated_declarations, deprecated.msg);
635 try p.err(deprecated.__name_tok, .deprecated_note, .{p.tokSlice(decl_tok)});
725 if (deprecated.replacement) |replacement| {
726 try p.err(usage_tok, .deprecated_alternative, .{replacement});
727 }
728 const decl_name_tok = node.tok(&p.tree);
729 try p.err(attr.tok, .deprecated_note, .{p.tokSlice(decl_name_tok)});
636730 }
637731}
638732
639fn errDeprecated(p: *Parser, tok_i: TokenIndex, diagnostic: Diagnostic, msg: ?Value) Compilation.Error!void {
733fn codegenDiagnostic(p: *Parser, usage_tok: TokenIndex, diagnostic: Diagnostic, args: anytype) !void {
734 assert(!diagnostic.extension);
735 assert(diagnostic.suppress_unless_version == null);
736 assert(diagnostic.suppress_version == null);
737 if (p.diagnostics.effectiveKind(diagnostic) == .off) return;
738
739 var bfa_buf: [1024]u8 align(4) = undefined;
740 var bfa: std.heap.BufferFirstAllocator = .init(&bfa_buf, p.comp.gpa);
741 var allocating: std.Io.Writer.Allocating = .initAligned(bfa.allocator(), .of(u32));
742 defer allocating.deinit();
743
744 p.formatArgs(&allocating.writer, diagnostic.fmt, args) catch return error.OutOfMemory;
745
746 const remainder = 4 - allocating.written().len % 4;
747 allocating.writer.splatByteAll(0, remainder) catch return error.OutOfMemory;
748
749 const node = try p.tree.addNode(.{
750 .codegen_diagnostic = .{
751 .tok = usage_tok,
752 .kind = diagnostic.kind,
753 .opt = diagnostic.opt,
754 .text = @ptrCast(@alignCast(allocating.written())),
755 },
756 });
757 try p.decl_buf.append(p.comp.gpa, node);
758}
759
760fn errDeprecated(p: *Parser, tok_i: TokenIndex, diagnostic: Diagnostic, msg: ?[]const u8) Compilation.Error!void {
640761 const colon_str: []const u8 = if (msg != null) ": " else "";
641 const msg_str: []const u8 = if (msg) |m| p.comp.interner.get(m.ref()).bytes else "";
642 return p.err(tok_i, diagnostic, .{ p.tokSlice(tok_i), colon_str, Escaped.init(msg_str) });
762 return p.err(tok_i, diagnostic, .{ p.tokSlice(tok_i), colon_str, Escaped.init(msg orelse "") });
643763}
644764
645765fn addNode(p: *Parser, node: Tree.Node) Allocator.Error!Node.Index {
646 if (p.in_macro) return undefined;
647766 return p.tree.addNode(node);
648767}
649768
......@@ -656,14 +775,6 @@ fn errExpectedToken(p: *Parser, expected: Token.Id, actual: Token.Id) Error {
656775 return error.ParsingFailed;
657776}
658777
659fn addList(p: *Parser, nodes: []const Node.Index) Allocator.Error!Tree.Node.Range {
660 if (p.in_macro) return Tree.Node.Range{ .start = 0, .end = 0 };
661 const start: u32 = @intCast(p.data.items.len);
662 try p.data.appendSlice(nodes);
663 const end: u32 = @intCast(p.data.items.len);
664 return Tree.Node.Range{ .start = start, .end = end };
665}
666
667778/// Recursively sets the defintion field of `tentative_decl` to `definition`.
668779pub fn setTentativeDeclDefinition(p: *Parser, tentative_decl: Node.Index, definition: Node.Index) void {
669780 const node_data = &p.tree.nodes.items(.data)[@backingInt(tentative_decl)];
......@@ -673,7 +784,7 @@ pub fn setTentativeDeclDefinition(p: *Parser, tentative_decl: Node.Index, defini
673784 else => return,
674785 }
675786
676 const prev: Node.OptIndex = @fromBackingInt(@intCast(node_data[2]));
787 const prev: Node.OptIndex = @fromBackingInt(node_data[2]);
677788
678789 node_data[2] = @backingInt(definition);
679790 if (prev.unpack()) |some| {
......@@ -681,12 +792,19 @@ pub fn setTentativeDeclDefinition(p: *Parser, tentative_decl: Node.Index, defini
681792 }
682793}
683794
684/// Clears the defintion field of declarations that were not defined so that
685/// the field always contains a _def if present.
686fn clearNonTentativeDefinitions(p: *Parser) void {
795/// Resolves file-scope tentative definitions, then clears definition fields of
796/// declarations that were not defined.
797fn finalizeTentativeDefinitions(p: *Parser) Allocator.Error!void {
798 var finalized: std.AutoHashMapUnmanaged(StringId, void) = .empty;
799 defer finalized.deinit(p.comp.gpa);
800
687801 const tags = p.tree.nodes.items(.tag);
688802 const data = p.tree.nodes.items(.data);
689 for (p.tree.root_decls.items) |root_decl| {
803
804 var i = p.tree.root_decls.items.len;
805 while (i > 0) {
806 i -= 1;
807 const root_decl = p.tree.root_decls.items[i];
690808 switch (tags[@backingInt(root_decl)]) {
691809 .fn_proto => {
692810 const node_data = &data[@backingInt(root_decl)];
......@@ -697,9 +815,19 @@ fn clearNonTentativeDefinitions(p: *Parser) void {
697815 }
698816 },
699817 .variable => {
818 const variable = root_decl.get(&p.tree).variable;
700819 const node_data = &data[@backingInt(root_decl)];
820 if (variable.storage_class != .@"extern") {
821 const name = try p.comp.internString(p.tree.tokSlice(variable.name_tok));
822 const gop = try finalized.getOrPut(p.comp.gpa, name);
823 if (!gop.found_existing and (node_data[2] == @backingInt(Node.OptIndex.null) or tags[node_data[2]] != .variable_def)) {
824 p.setTentativeDeclDefinition(root_decl, root_decl);
825 }
826 }
701827 if (node_data[2] != @backingInt(Node.OptIndex.null)) {
702 if (tags[node_data[2]] != .variable_def) {
828 if (node_data[2] == @backingInt(root_decl) or
829 (tags[node_data[2]] != .variable_def and !p.isTentativeDefinitionNode(@fromBackingInt(node_data[2]))))
830 {
703831 node_data[2] = @backingInt(Node.OptIndex.null);
704832 }
705833 }
......@@ -709,10 +837,34 @@ fn clearNonTentativeDefinitions(p: *Parser) void {
709837 }
710838}
711839
840fn isTentativeDefinitionNode(p: *Parser, node: Node.Index) bool {
841 const var_node = p.getNode(node, .variable) orelse return false;
842 return var_node.storage_class != .@"extern";
843}
844
845fn completesTentativeArray(p: *Parser, name: StringId, qt: QualType) bool {
846 if (!p.tentative_defs.contains(.tentativeArray(name))) return false;
847 const array_ty = qt.get(p.comp, .array) orelse return false;
848 if (array_ty.len != .fixed) return false;
849
850 const prev = p.syms.findSymbol(name) orelse return false;
851 if (prev.kind != .decl) return false;
852 const prev_array_ty = prev.qt.get(p.comp, .array) orelse return false;
853 if (prev_array_ty.len != .incomplete) return false;
854
855 return qt.eqlQualified(prev.qt, p.comp);
856}
857
712858fn findLabel(p: *Parser, name: []const u8) ?TokenIndex {
713859 for (p.labels.items) |item| {
714860 switch (item) {
715 .label => |l| if (mem.eql(u8, p.tokSlice(l), name)) return l,
861 .label => |l| {
862 const prev_label = l.tok(&p.tree);
863 if (mem.eql(u8, p.tokSlice(prev_label), name)) {
864 p.markUsed(l);
865 return prev_label;
866 }
867 },
716868 .unresolved_goto => {},
717869 }
718870 }
......@@ -751,6 +903,7 @@ pub fn isAddressOfStringLiteral(p: *Parser, node: Node.Index) bool {
751903 return p.nodeIs(addr_of.operand, .string_literal_expr);
752904}
753905
906// TODO pragma in any position and shoud be checked in eatToken
754907fn pragma(p: *Parser) Compilation.Error!bool {
755908 var found_pragma = false;
756909 while (p.eatToken(.keyword_pragma)) |_| {
......@@ -759,7 +912,7 @@ fn pragma(p: *Parser) Compilation.Error!bool {
759912 const name_tok = p.tok_i;
760913 const name = p.tokSlice(name_tok);
761914
762 const end_idx = mem.indexOfScalarPos(Token.Id, p.tok_ids, p.tok_i, .nl).?;
915 const end_idx = mem.findScalarPos(Token.Id, p.tok_ids, p.tok_i, .nl).?;
763916 const pragma_len = @as(TokenIndex, @intCast(end_idx)) - p.tok_i;
764917 defer p.tok_i += pragma_len + 1; // skip past .nl as well
765918 if (p.comp.getPragma(name)) |prag| {
......@@ -786,12 +939,149 @@ fn diagnoseIncompleteDefinitions(p: *Parser) !void {
786939 else => unreachable,
787940 };
788941
789 const tentative_def_tok = p.tentative_defs.get(decl_type_name) orelse continue;
942 const tentative_def_tok = p.tentative_defs.get(.incompleteType(decl_type_name)) orelse continue;
790943 try p.err(tentative_def_tok, .tentative_definition_incomplete, .{forward.container_qt});
791944 try p.err(forward.name_or_kind_tok, .forward_declaration_here, .{forward.container_qt});
792945 }
793946}
794947
948fn diagnoseTentativeArrays(p: *Parser) !void {
949 for (p.tentative_defs.keys(), p.tentative_defs.values()) |key, tok| {
950 if (key.kind != .tentative_array) continue;
951 try p.err(tok, .tentative_array, .{});
952 }
953}
954
955fn diagnoseUnusedLocals(p: *Parser) !void {
956 defer p.maybe_unused_decl.clearRetainingCapacity();
957 // Don't warn about unused locals if there were error in the function body.
958 if (p.diagnostics.errors != p.local_unused_err_count) return;
959
960 for (p.maybe_unused_decl.keys(), p.maybe_unused_decl.values()) |unused_decl, used| {
961 if (used) continue;
962 const name_tok = unused_decl.tok(&p.tree);
963 try p.err(name_tok, switch (unused_decl.get(&p.tree)) {
964 .variable => .unused_variable,
965 .param => .unused_param,
966 .typedef => .unused_typedef,
967 .labeled_stmt => .unused_label,
968 .empty_decl => continue,
969 else => unreachable,
970 }, .{p.tokSlice(name_tok)});
971 }
972}
973
974fn addMaybeUnusued(p: *Parser, decl_node: Node.Index) !void {
975 if (p.tree.attr_map.hasAttribute(decl_node, .unused)) {
976 p.markUsed(decl_node); // Might have added an empty_decl.
977 return;
978 }
979
980 switch (decl_node.get(&p.tree)) {
981 .variable => |variable| {
982 if (variable.storage_class == .@"extern") return;
983 if (p.func.qt == null) return;
984 if (p.diagnostics.severity(.@"unused-variable") == .off) return;
985 },
986 .param => {
987 if (p.diagnostics.severity(.@"unused-parameter") == .off) return;
988 },
989 .typedef => {
990 if (p.func.qt == null) return;
991 if (p.diagnostics.severity(.@"unused-local-typedef") == .off) return;
992 },
993 .labeled_stmt => {
994 if (p.diagnostics.severity(.@"unused-label") == .off) return;
995 },
996 .empty_decl => {
997 if (p.diagnostics.severity(.@"unused-variable") == .off) return;
998 },
999 else => return,
1000 }
1001
1002 const got = try p.maybe_unused_decl.getOrPut(p.comp.gpa, decl_node);
1003 if (!got.found_existing) got.value_ptr.* = false;
1004}
1005
1006fn markUsed(p: *Parser, decl_node: Node.Index) void {
1007 if (p.maybe_unused_decl.getPtr(decl_node)) |val| {
1008 val.* = true;
1009 }
1010}
1011
1012fn diagnoseIgnoredAttrs(p: *Parser) !void {
1013 for (p.wip_attrs.attrs.items[p.wip_attrs.top..]) |*attr| {
1014 if (attr.used_as_type_attr) continue;
1015 if (attr.syntax == .standard) {
1016 try p.err(attr.tok, .invalid_on_types, .{attr});
1017 continue;
1018 }
1019 try p.err(attr.tok, .ignored_on_types, .{attr});
1020 }
1021}
1022
1023fn diagnoseUnusedValue(p: *Parser, node: Node.Index, prev_total: usize) Error!void {
1024 const qt = node.qt(&p.tree);
1025 if (qt.is(p.comp, .void)) return;
1026 if (qt.isInvalid()) return;
1027 // Don't warn about unused result if the expression contained errors.
1028 if (p.diagnostics.errors != prev_total) return;
1029
1030 var cur = node;
1031 loop: switch (cur.get(&p.tree)) {
1032 .assign_expr,
1033 .mul_assign_expr,
1034 .div_assign_expr,
1035 .mod_assign_expr,
1036 .add_assign_expr,
1037 .sub_assign_expr,
1038 .shl_assign_expr,
1039 .shr_assign_expr,
1040 .bit_and_assign_expr,
1041 .bit_xor_assign_expr,
1042 .bit_or_assign_expr,
1043 .pre_inc_expr,
1044 .pre_dec_expr,
1045 .post_inc_expr,
1046 .post_dec_expr,
1047 => {},
1048 .equal_expr => try p.err(cur.tok(&p.tree), .unused_comparison, .{"equality"}),
1049 .not_equal_expr => try p.err(cur.tok(&p.tree), .unused_comparison, .{"inequality"}),
1050 .less_than_expr,
1051 .less_than_equal_expr,
1052 .greater_than_expr,
1053 .greater_than_equal_expr,
1054 => try p.err(cur.tok(&p.tree), .unused_comparison, .{"relational"}),
1055 .call_expr => |call| {
1056 const call_info = p.tree.calledFunctionAttr(call.callee, .warn_unused_result) orelse return;
1057 if (call_info.attr) |attr| {
1058 const msg = attr.args.warn_unused_result;
1059 const colon_str: []const u8 = if (msg != null) ": " else "";
1060 try p.err(call.callee.tok(&p.tree), .warn_unused_result, .{ p.tokSlice(call_info.tok), attr, colon_str, Escaped.init(msg orelse "") });
1061 }
1062 },
1063 .builtin_call_expr => |call| {
1064 const expanded = p.comp.builtins.lookup(p.tokSlice(call.builtin_tok));
1065 if (expanded.attributes.pure) try p.err(call.builtin_tok, .builtin_unused, .{"pure"});
1066 if (expanded.attributes.@"const") try p.err(call.builtin_tok, .builtin_unused, .{"const"});
1067 },
1068 .stmt_expr => |stmt_expr| {
1069 const compound = stmt_expr.operand.get(&p.tree).compound_stmt;
1070 cur = compound.body[compound.body.len - 1];
1071 continue :loop cur.get(&p.tree);
1072 },
1073 .comma_expr => |comma| {
1074 cur = comma.rhs;
1075 continue :loop cur.get(&p.tree);
1076 },
1077 .paren_expr => |grouped| {
1078 cur = grouped.operand;
1079 continue :loop cur.get(&p.tree);
1080 },
1081 else => try p.err(cur.tok(&p.tree), .unused_value, .{}),
1082 }
1083}
1084
7951085/// root : (decl | assembly ';' | staticAssert)*
7961086pub fn parse(pp: *Preprocessor) Compilation.Error!Tree {
7971087 const gpa = pp.comp.gpa;
......@@ -830,9 +1120,9 @@ pub fn parse(pp: *Preprocessor) Compilation.Error!Tree {
8301120 p.enum_buf.deinit(gpa);
8311121 p.record_buf.deinit(gpa);
8321122 p.record_members.deinit(gpa);
833 p.attr_buf.deinit(gpa);
834 p.attr_application_buf.deinit(gpa);
1123 p.wip_attrs.deinit(gpa);
8351124 p.tentative_defs.deinit(gpa);
1125 p.maybe_unused_decl.deinit(gpa);
8361126 }
8371127
8381128 try p.syms.pushScope(&p);
......@@ -844,6 +1134,10 @@ pub fn parse(pp: *Preprocessor) Compilation.Error!Tree {
8441134 }
8451135 try p.addImplicitTypedef("__int128_t", .int128);
8461136 try p.addImplicitTypedef("__uint128_t", .uint128);
1137 if (p.comp.langopts.has_int24) {
1138 try p.addImplicitTypedef("__int24__", .int24);
1139 try p.addImplicitTypedef("__uint24", .uint24);
1140 }
8471141
8481142 try p.addImplicitTypedef("__builtin_ms_va_list", .char_pointer);
8491143
......@@ -856,6 +1150,9 @@ pub fn parse(pp: *Preprocessor) Compilation.Error!Tree {
8561150 if (p.comp.float80Type()) |float80_ty| {
8571151 try p.addImplicitTypedef("__float80", float80_ty);
8581152 }
1153 if (p.comp.target.hasAArch64ACLETypes()) {
1154 try p.addImplicitTypedef("__mfp8", .mfp8);
1155 }
8591156
8601157 // Set here so that the newly generated tokens are included.
8611158 p.tree.tokens = p.pp.tokens.slice();
......@@ -865,6 +1162,17 @@ pub fn parse(pp: *Preprocessor) Compilation.Error!Tree {
8651162
8661163 while (p.eatToken(.eof) == null) {
8671164 if (try p.pragma()) continue;
1165
1166 const attr_state = p.wip_attrs.state(true);
1167 defer p.wip_attrs.restore(attr_state);
1168 p.attributeSpecifier() catch |er| switch (er) {
1169 error.ParsingFailed => {
1170 p.nextExternDecl();
1171 continue;
1172 },
1173 else => |e| return e,
1174 };
1175
8681176 if (try p.parseOrNextDecl(staticAssert)) continue;
8691177 if (try p.parseOrNextDecl(decl)) continue;
8701178 if (p.eatToken(.keyword_extension)) |_| {
......@@ -910,6 +1218,7 @@ pub fn parse(pp: *Preprocessor) Compilation.Error!Tree {
9101218 }
9111219 if (p.tentative_defs.count() > 0) {
9121220 try p.diagnoseIncompleteDefinitions();
1221 try p.diagnoseTentativeArrays();
9131222 }
9141223
9151224 p.tree.root_decls = p.decl_buf;
......@@ -920,7 +1229,7 @@ pub fn parse(pp: *Preprocessor) Compilation.Error!Tree {
9201229 }
9211230 pp.comp.pragmaEvent(.after_parse);
9221231
923 p.clearNonTentativeDefinitions();
1232 try p.finalizeTentativeDefinitions();
9241233
9251234 return p.tree;
9261235}
......@@ -954,7 +1263,7 @@ fn addImplicitTypedef(p: *Parser, name: []const u8, qt: QualType) !void {
9541263 .name = interned_name,
9551264 .decl_node = node,
9561265 } })).withQualifiers(qt);
957 try p.syms.defineTypedef(p, interned_name, typedef_qt, name_tok, node);
1266 assert(try p.syms.defineTypedef(p, interned_name, typedef_qt, name_tok, node) == null);
9581267 try p.decl_buf.append(gpa, node);
9591268}
9601269
......@@ -991,6 +1300,7 @@ fn nextExternDecl(p: *Parser) void {
9911300 .keyword_register,
9921301 .keyword_thread_local,
9931302 .keyword_c23_thread_local,
1303 .keyword_thread,
9941304 .keyword_inline,
9951305 .keyword_inline1,
9961306 .keyword_inline2,
......@@ -1076,8 +1386,6 @@ fn decl(p: *Parser) Error!bool {
10761386 const gpa = p.comp.gpa;
10771387 _ = try p.pragma();
10781388 const first_tok = p.tok_i;
1079 const attr_buf_top = p.attr_buf.len;
1080 defer p.attr_buf.len = attr_buf_top;
10811389
10821390 try p.attributeSpecifier();
10831391
......@@ -1108,14 +1416,15 @@ fn decl(p: *Parser) Error!bool {
11081416 break :blk DeclSpec{ .qt = try builder.finish() };
11091417 };
11101418 if (decl_spec.noreturn) |tok| {
1111 const attr = Attribute{ .tag = .noreturn, .args = .{ .noreturn = .{} }, .syntax = .keyword };
1112 try p.attr_buf.append(gpa, .{ .attr = attr, .tok = tok });
1419 try p.wip_attrs.addKeyword(p, tok, &.{});
11131420 }
11141421
1422 const declarator_attr_state = p.wip_attrs.state(false);
1423
11151424 var decl_node = try p.tree.addNode(.{ .empty_decl = .{
11161425 .semicolon = first_tok,
11171426 } });
1118 var init_d = (try p.initDeclarator(&decl_spec, attr_buf_top, decl_node)) orelse {
1427 var init_d = (try p.initDeclarator(&decl_spec, decl_node)) orelse {
11191428 _ = try p.expectToken(.semicolon);
11201429
11211430 missing_decl: {
......@@ -1134,13 +1443,11 @@ fn decl(p: *Parser) Error!bool {
11341443 return true;
11351444 }
11361445
1137 const attrs = p.attr_buf.items(.attr)[attr_buf_top..];
1138 const toks = p.attr_buf.items(.tok)[attr_buf_top..];
1139 for (attrs, toks) |attr, tok| {
1140 try p.err(tok, .ignored_record_attr, .{
1141 @tagName(attr.tag), @tagName(decl_spec.qt.base(p.comp).type),
1142 });
1446 const base_tag_name = @tagName(decl_spec.qt.base(p.comp).type);
1447 for (p.wip_attrs.attrs.items[p.wip_attrs.top..]) |wip_attr| {
1448 try p.err(wip_attr.tok, .ignored_record_attr, .{ &wip_attr, base_tag_name });
11431449 }
1450
11441451 return true;
11451452 };
11461453
......@@ -1157,11 +1464,12 @@ fn decl(p: *Parser) Error!bool {
11571464 if (p.func.qt != null) try p.err(p.tok_i, .func_not_in_root, .{});
11581465
11591466 const interned_declarator_name = try p.comp.internString(p.tokSlice(init_d.d.name));
1160 try p.syms.defineSymbol(p, interned_declarator_name, init_d.d.qt, init_d.d.name, decl_node, .{}, false);
1467 const previous_decl = try p.syms.defineSymbol(p, interned_declarator_name, init_d.d.qt, init_d.d.name, decl_node, .{}, false);
11611468 const func = p.func;
11621469 p.func = .{
11631470 .qt = init_d.d.qt,
11641471 .name = init_d.d.name,
1472 .decl = .pack(decl_node),
11651473 };
11661474 defer p.func = func;
11671475
......@@ -1201,8 +1509,8 @@ fn decl(p: *Parser) Error!bool {
12011509 }
12021510
12031511 while (true) {
1204 const attr_buf_top_declarator = p.attr_buf.len;
1205 defer p.attr_buf.len = attr_buf_top_declarator;
1512 const param_attr_state = p.wip_attrs.state(true);
1513 defer p.wip_attrs.restore(param_attr_state);
12061514
12071515 var param_d = (try p.declarator(param_decl_spec.qt, .param)) orelse {
12081516 try p.err(first_tok, .missing_declaration, .{});
......@@ -1220,15 +1528,15 @@ fn decl(p: *Parser) Error!bool {
12201528 } else {
12211529 // Decay params declared as functions or arrays to pointer.
12221530 param_d.qt = try param_d.qt.decay(p.comp);
1531 // Apply potential nullability attributes.
1532 param_d.qt = try p.wip_attrs.applyTypeAttrs(p, param_d.qt);
12231533 }
12241534
1225 const attributed_qt = try Attribute.applyParameterAttributes(p, param_d.qt, attr_buf_top_declarator, .alignas_on_param);
1226
12271535 try param_decl_spec.validateParam(p);
12281536 const param_node = try p.addNode(.{
12291537 .param = .{
12301538 .name_tok = param_d.name,
1231 .qt = attributed_qt,
1539 .qt = param_d.qt,
12321540 .storage_class = switch (param_decl_spec.storage_class) {
12331541 .none => .auto,
12341542 .register => .register,
......@@ -1236,20 +1544,23 @@ fn decl(p: *Parser) Error!bool {
12361544 },
12371545 },
12381546 });
1547 try p.wip_attrs.applyDeclAttrs(p, param_node, null);
12391548
12401549 const name_str = p.tokSlice(param_d.name);
12411550 const interned_name = try p.comp.internString(name_str);
1242 try p.syms.defineParam(p, interned_name, attributed_qt, param_d.name, param_node);
1551 try p.syms.defineParam(p, interned_name, param_d.qt, param_d.name, param_node);
12431552
12441553 // find and correct parameter types
12451554 for (func_qt.get(p.comp, .func).?.params, new_params) |param, *new_param| {
12461555 if (param.name == interned_name) {
1556 if (new_param.name == .empty) try p.addMaybeUnusued(param_node);
12471557 new_param.* = .{
1248 .qt = attributed_qt,
1558 .qt = param_d.qt,
12491559 .name = param.name,
12501560 .node = .pack(param_node),
12511561 .name_tok = param.name_tok,
12521562 };
1563 p.markUsed(param.node.unpack().?);
12531564 break;
12541565 }
12551566 } else {
......@@ -1265,12 +1576,8 @@ fn decl(p: *Parser) Error!bool {
12651576 for (func_ty.params, new_params) |param, *new_param| {
12661577 if (new_param.name == .empty) {
12671578 try p.err(param.name_tok, .param_not_declared, .{param.name.lookup(p.comp)});
1268 new_param.* = .{
1269 .name = param.name,
1270 .name_tok = param.name_tok,
1271 .node = param.node,
1272 .qt = .int,
1273 };
1579 new_param.* = param;
1580 try p.syms.defineParam(p, param.name, .int, param.name_tok, param.node.unpack().?);
12741581 }
12751582 }
12761583 // Update the functio type to contain the declared parameters.
......@@ -1293,7 +1600,7 @@ fn decl(p: *Parser) Error!bool {
12931600 .tok = param.name_tok,
12941601 .qt = param.qt,
12951602 .val = .{},
1296 .node = param.node,
1603 .node = param.node.unpack().?,
12971604 });
12981605 if (param.qt.isInvalid()) continue;
12991606
......@@ -1312,21 +1619,26 @@ fn decl(p: *Parser) Error!bool {
13121619 }
13131620 }
13141621
1315 const body = (try p.compoundStmt(true, null)) orelse {
1316 assert(init_d.d.old_style_func != null);
1317 try p.err(p.tok_i, .expected_fn_body, .{});
1318 return true;
1319 };
1320
1321 try decl_spec.validateFnDef(p);
1322 try p.tree.setNode(.{ .function = .{
1622 var function: Tree.Node.Function = .{
13231623 .name_tok = init_d.d.name,
13241624 .@"inline" = decl_spec.@"inline" != null,
13251625 .static = decl_spec.storage_class == .static,
13261626 .qt = p.func.qt.?,
1327 .body = body,
1627 .body = null,
13281628 .definition = null,
1329 } }, @backingInt(decl_node));
1629 };
1630
1631 try decl_spec.validateFnDef(p);
1632 try p.tree.setNode(.{ .function = function }, @backingInt(decl_node));
1633 try p.wip_attrs.applyDeclAttrs(p, decl_node, previous_decl);
1634
1635 p.local_unused_err_count = p.diagnostics.errors;
1636 function.body = (try p.compoundStmt(true, null)) orelse {
1637 assert(init_d.d.old_style_func != null);
1638 try p.err(p.tok_i, .expected_fn_body, .{});
1639 return true;
1640 };
1641 try p.tree.setNode(.{ .function = function }, @backingInt(decl_node));
13301642
13311643 try p.decl_buf.append(gpa, decl_node);
13321644
......@@ -1344,6 +1656,7 @@ fn decl(p: *Parser) Error!bool {
13441656 p.contains_address_of_label = false;
13451657 p.computed_goto_tok = null;
13461658 }
1659 try p.diagnoseUnusedLocals();
13471660 return true;
13481661 }
13491662
......@@ -1405,6 +1718,7 @@ fn decl(p: *Parser) Error!bool {
14051718 try p.decl_buf.append(gpa, decl_node);
14061719
14071720 const interned_name = try p.comp.internString(p.tokSlice(init_d.d.name));
1721 const completes_tentative_array = p.completesTentativeArray(interned_name, init_d.d.qt);
14081722 if (decl_spec.storage_class == .typedef) {
14091723 const typedef_qt = if (init_d.d.qt.isInvalid())
14101724 init_d.d.qt
......@@ -1414,11 +1728,12 @@ fn decl(p: *Parser) Error!bool {
14141728 .name = interned_name,
14151729 .decl_node = decl_node,
14161730 } })).withQualifiers(init_d.d.qt);
1417 try p.syms.defineTypedef(p, interned_name, typedef_qt, init_d.d.name, decl_node);
1731 const previous_decl = try p.syms.defineTypedef(p, interned_name, typedef_qt, init_d.d.name, decl_node);
14181732 p.typedefDefined(interned_name, typedef_qt);
1733 try p.wip_attrs.applyDeclAttrsExtra(p, decl_node, typedef_qt, previous_decl);
14191734 } else if (init_d.initializer) |init| {
14201735 // TODO validate global variable/constexpr initializer comptime known
1421 try p.syms.defineSymbol(
1736 const previous_decl = try p.syms.defineSymbol(
14221737 p,
14231738 interned_name,
14241739 init_d.d.qt,
......@@ -1427,19 +1742,23 @@ fn decl(p: *Parser) Error!bool {
14271742 if (init_d.d.qt.@"const" or decl_spec.constexpr != null) init.val else .{},
14281743 decl_spec.constexpr != null,
14291744 );
1745 try p.wip_attrs.applyDeclAttrs(p, decl_node, previous_decl);
14301746 } else if (init_d.d.qt.is(p.comp, .func)) {
1431 try p.syms.declareSymbol(p, interned_name, init_d.d.qt, init_d.d.name, decl_node);
1747 const previous_decl = try p.syms.declareSymbol(p, interned_name, init_d.d.qt, init_d.d.name, decl_node);
1748 try p.wip_attrs.applyDeclAttrs(p, decl_node, previous_decl);
14321749 } else if (p.func.qt != null and decl_spec.storage_class != .@"extern") {
1433 try p.syms.defineSymbol(p, interned_name, init_d.d.qt, init_d.d.name, decl_node, .{}, false);
1750 const previous_decl = try p.syms.defineSymbol(p, interned_name, init_d.d.qt, init_d.d.name, decl_node, .{}, false);
1751 try p.wip_attrs.applyDeclAttrs(p, decl_node, previous_decl);
14341752 } else {
1435 try p.syms.declareSymbol(p, interned_name, init_d.d.qt, init_d.d.name, decl_node);
1753 const previous_decl = try p.syms.declareSymbol(p, interned_name, init_d.d.qt, init_d.d.name, decl_node);
1754 try p.wip_attrs.applyDeclAttrs(p, decl_node, previous_decl);
14361755 }
1756 if (completes_tentative_array) _ = p.tentative_defs.orderedRemove(.tentativeArray(interned_name));
1757 try p.addMaybeUnusued(decl_node);
14371758
14381759 if (p.eatToken(.comma) == null) break;
14391760
1440 const attr_buf_top_declarator = p.attr_buf.len;
1441 defer p.attr_buf.len = attr_buf_top_declarator;
1442
1761 p.wip_attrs.restore(declarator_attr_state);
14431762 try p.attributeSpecifierGnu();
14441763
14451764 if (!warned_auto) {
......@@ -1457,7 +1776,7 @@ fn decl(p: *Parser) Error!bool {
14571776 decl_node = try p.tree.addNode(.{ .empty_decl = .{
14581777 .semicolon = p.tok_i - 1,
14591778 } });
1460 init_d = (try p.initDeclarator(&decl_spec, attr_buf_top, decl_node)) orelse {
1779 init_d = (try p.initDeclarator(&decl_spec, decl_node)) orelse {
14611780 try p.err(p.tok_i, .expected_ident_or_l_paren, .{});
14621781 continue;
14631782 };
......@@ -1467,32 +1786,68 @@ fn decl(p: *Parser) Error!bool {
14671786 return true;
14681787}
14691788
1470fn staticAssertMessage(p: *Parser, cond_node: Node.Index, maybe_message: ?Result, allocating: *std.Io.Writer.Allocating) !?[]const u8 {
1471 const w = &allocating.writer;
1472
1473 const cond = cond_node.get(&p.tree);
1474 if (cond == .builtin_types_compatible_p) {
1475 try w.writeAll("'__builtin_types_compatible_p(");
1476
1477 const lhs_ty = cond.builtin_types_compatible_p.lhs;
1478 try lhs_ty.print(p.comp, w);
1479 try w.writeAll(", ");
1789const StaticAsssertMessage = struct {
1790 full: []const u8,
1791 req_start: u32,
1792 req_end: u32,
1793};
14801794
1481 const rhs_ty = cond.builtin_types_compatible_p.rhs;
1482 try rhs_ty.print(p.comp, w);
1795fn staticAssertMessage(p: *Parser, cond: Node.Index, maybe_message: ?Result, allocating: *std.Io.Writer.Allocating) !StaticAsssertMessage {
1796 const w = &allocating.writer;
14831797
1484 try w.writeAll(")'");
1485 } else if (maybe_message == null) return null;
1798 try w.writeAll(" due to requirement '");
1799 const start = allocating.written().len;
1800 try p.tree.write(cond, w);
1801 const end = allocating.written().len;
1802 try w.writeByte('\'');
14861803
14871804 if (maybe_message) |message| {
1488 assert(message.node.get(&p.tree) == .string_literal_expr);
1489 if (allocating.written().len > 0) {
1490 try w.writeByte(' ');
1491 }
14921805 const bytes = p.comp.interner.get(message.val.ref()).bytes;
1493 try Value.printString(bytes, message.qt, p.comp, w);
1806 const size: Compilation.CharUnitSize = @fromBackingInt(@intCast(message.qt.childType(p.comp).sizeof(p.comp)));
1807 if (bytes.len > @backingInt(size)) {
1808 try w.writeAll(": ");
1809 try Value.printString(bytes, message.qt, p.comp, w, .bare);
1810 }
14941811 }
1495 return allocating.written();
1812 const written = allocating.written();
1813 return .{
1814 .full = written,
1815 .req_start = @intCast(start),
1816 .req_end = @intCast(end),
1817 };
1818}
1819
1820fn staticAssertEvaluationNote(p: *Parser, node: Node.Index, requirement: []const u8) Error!void {
1821 const bin = loop: switch (node.get(&p.tree)) {
1822 .cast => |cast_expr| continue :loop cast_expr.operand.get(&p.tree),
1823 .paren_expr => |paren_expr| continue :loop paren_expr.operand.get(&p.tree),
1824 .equal_expr,
1825 .not_equal_expr,
1826 .less_than_expr,
1827 .less_than_equal_expr,
1828 .greater_than_expr,
1829 .greater_than_equal_expr,
1830 => |bin| bin,
1831 else => return,
1832 };
1833 var note_bfa_buf: [1024]u8 = undefined;
1834 var note_bfa: std.heap.BufferFirstAllocator = .init(&note_bfa_buf, p.comp.gpa);
1835 var note_allocating: std.Io.Writer.Allocating = .init(note_bfa.allocator());
1836 defer note_allocating.deinit();
1837
1838 const lhs_val = p.tree.value_map.get(bin.lhs) orelse return;
1839 const rhs_val = p.tree.value_map.get(bin.rhs) orelse return;
1840
1841 const w = &note_allocating.writer;
1842 if (lhs_val.print(bin.lhs.qt(&p.tree), p.comp, w) catch return) |_| return;
1843 w.print(" {s} ", .{p.tokSlice(bin.op_tok)}) catch return;
1844 if (rhs_val.print(bin.rhs.qt(&p.tree), p.comp, w) catch return) |_| return;
1845
1846 const eval_text = note_allocating.written();
1847
1848 if (std.mem.eql(u8, eval_text, requirement)) return;
1849
1850 try p.err(bin.op_tok, .static_assert_expression_evaluates_to, .{eval_text});
14961851}
14971852
14981853/// staticAssert
......@@ -1503,8 +1858,11 @@ fn staticAssert(p: *Parser) Error!bool {
15031858 const static_assert = p.eatToken(.keyword_static_assert) orelse p.eatToken(.keyword_c23_static_assert) orelse return false;
15041859 const l_paren = try p.expectToken(.l_paren);
15051860 const res_token = p.tok_i;
1861 const old_record_static_assert_eval_note = p.record_static_assert_eval_note;
1862 p.record_static_assert_eval_note = true;
1863 defer p.record_static_assert_eval_note = old_record_static_assert_eval_note;
1864
15061865 var res = try p.constExpr(.gnu_folding_extension);
1507 const res_node = res.node;
15081866 const str = if (p.eatToken(.comma) != null)
15091867 switch (p.tok_ids[p.tok_i]) {
15101868 .string_literal,
......@@ -1544,11 +1902,9 @@ fn staticAssert(p: *Parser) Error!bool {
15441902 var allocating: std.Io.Writer.Allocating = .init(bfa.allocator());
15451903 defer allocating.deinit();
15461904
1547 if (p.staticAssertMessage(res_node, str, &allocating) catch return error.OutOfMemory) |message| {
1548 try p.err(static_assert, .static_assert_failure_message, .{message});
1549 } else {
1550 try p.err(static_assert, .static_assert_failure, .{});
1551 }
1905 const message = p.staticAssertMessage(res.node, str, &allocating) catch return error.OutOfMemory;
1906 try p.err(res_token, .static_assert_failure_message, .{message.full});
1907 try p.staticAssertEvaluationNote(res.node, message.full[message.req_start..message.req_end]);
15521908 }
15531909 }
15541910
......@@ -1613,7 +1969,6 @@ pub const DeclSpec = struct {
16131969
16141970 fn validateDecl(d: DeclSpec, p: *Parser, asm_label: ?Node.Index) Error!void {
16151971 if (d.@"inline") |tok_i| try p.err(tok_i, .func_spec_non_func, .{"inline"});
1616 // TODO move to attribute validation
16171972 if (d.noreturn) |tok_i| try p.err(tok_i, .func_spec_non_func, .{"_Noreturn"});
16181973 switch (d.storage_class) {
16191974 .auto => {
......@@ -1656,7 +2011,7 @@ fn typeof(p: *Parser) Error!?QualType {
16562011 .expr = null,
16572012 } })).withQualifiers(qt);
16582013 }
1659 const typeof_expr = try p.parseNoEval(expr);
2014 const typeof_expr = try p.expectResult(try p.binaryExpr(.any, false));
16602015 try p.expectClosing(l_paren, .r_paren);
16612016 if (typeof_expr.qt.isInvalid()) return null;
16622017
......@@ -1709,10 +2064,7 @@ fn declSpec(p: *Parser) Error!?DeclSpec {
17092064 continue;
17102065 },
17112066 .keyword_forceinline, .keyword_forceinline2 => {
1712 try p.attr_buf.append(p.comp.gpa, .{
1713 .attr = .{ .tag = .always_inline, .args = .{ .always_inline = .{} }, .syntax = .keyword },
1714 .tok = p.tok_i,
1715 });
2067 try p.wip_attrs.addKeyword(p, p.tok_i, &.{});
17162068 p.tok_i += 1;
17172069 continue;
17182070 },
......@@ -1750,9 +2102,13 @@ fn storageClassSpec(p: *Parser, d: *DeclSpec) Error!bool {
17502102 try p.err(p.tok_i, .multiple_storage_class, .{@tagName(d.storage_class)});
17512103 return error.ParsingFailed;
17522104 }
1753 if (d.thread_local != null) {
2105 if (d.thread_local) |thread_tok| {
17542106 switch (id) {
1755 .keyword_extern, .keyword_static => {},
2107 .keyword_extern, .keyword_static => {
2108 if (p.tok_ids[thread_tok] == .keyword_thread) {
2109 try p.err(thread_tok, .thread_before_storage, .{id.lexeme().?});
2110 }
2111 },
17562112 else => try p.err(p.tok_i, .cannot_combine_spec, .{id.lexeme().?}),
17572113 }
17582114 if (d.constexpr) |tok| try p.err(p.tok_i, .cannot_combine_spec, .{p.tok_ids[tok].lexeme().?});
......@@ -1775,6 +2131,7 @@ fn storageClassSpec(p: *Parser, d: *DeclSpec) Error!bool {
17752131 },
17762132 .keyword_thread_local,
17772133 .keyword_c23_thread_local,
2134 .keyword_thread,
17782135 => {
17792136 if (d.thread_local != null) {
17802137 try p.err(p.tok_i, .duplicate_decl_spec, .{id.lexeme().?});
......@@ -1812,141 +2169,130 @@ const InitDeclarator = struct {
18122169
18132170/// attribute
18142171/// : attrIdentifier
1815/// | attrIdentifier '(' identifier ')'
1816/// | attrIdentifier '(' identifier (',' expr)+ ')'
18172172/// | attrIdentifier '(' (expr (',' expr)*)? ')'
1818fn attribute(p: *Parser, kind: Attribute.Kind, namespace: ?[]const u8) Error!?TentativeAttribute {
1819 const name_tok = p.tok_i;
1820 if (!p.tok_ids[p.tok_i].isMacroIdentifier()) {
1821 return p.errExpectedToken(.identifier, p.tok_ids[p.tok_i]);
1822 }
1823 _ = (try p.eatIdentifier()) orelse {
1824 p.tok_i += 1;
1825 };
1826 const name = p.tokSlice(name_tok);
2173/// c23Attribute : (attrIdentifier '::')? attribute
2174fn attribute(p: *Parser, syntax: Attribute.Syntax) Error!void {
2175 const first_tok = p.tok_i;
2176 const namespaced = blk: {
2177 var opt_namespace: ?[]const u8 = null;
2178 var name: []const u8 = undefined;
2179
2180 const namespace_or_name = try p.attrIdentifier();
2181 if (syntax == .standard and p.eatToken(.colon_colon) != null) {
2182 opt_namespace = p.tokSlice(namespace_or_name);
2183 name = p.tokSlice(try p.attrIdentifier());
2184 } else {
2185 name = p.tokSlice(namespace_or_name);
2186 }
18272187
1828 const attr = Attribute.fromString(kind, namespace, name) orelse {
1829 try p.err(name_tok, if (kind == .declspec) .declspec_attr_not_supported else .unknown_attribute, .{name});
2188 if (Attribute.Namespaced.fromString(syntax, opt_namespace, name)) |some| break :blk some;
2189 if (syntax == .declspec) {
2190 try p.err(first_tok, .declspec_attr_not_supported, .{name});
2191 } else if (opt_namespace) |namespace| {
2192 try p.err(first_tok, .unknown_namespaced_attribute, .{ namespace, name });
2193 } else {
2194 try p.err(first_tok, .unknown_attribute, .{name});
2195 }
18302196 if (p.eatToken(.l_paren)) |_| p.skipTo(.r_paren);
1831 return null;
2197 return;
18322198 };
1833 if (attr == .availability) {
1834 // TODO parse introduced=10.4 etc
1835 if (p.eatToken(.l_paren)) |_| p.skipTo(.r_paren);
1836 return null;
2199 if (namespaced == .clang and namespaced.clang == .availability) {
2200 return p.parseAvailabilityArgs();
18372201 }
18382202
1839 const required_count = Attribute.requiredArgCount(attr);
1840 var arguments = Attribute.initArguments(attr, name_tok);
1841 var arg_idx: u32 = 0;
2203 const list_buf_top = p.list_buf.items.len;
2204 defer p.list_buf.items.len = list_buf_top;
2205 const gpa = p.comp.gpa;
2206 const arg_top = p.wip_attrs.args.items.len;
18422207
1843 switch (p.tok_ids[p.tok_i]) {
1844 .comma, .r_paren => {}, // will be consumed in attributeList
1845 .l_paren => blk: {
1846 p.tok_i += 1;
1847 if (p.eatToken(.r_paren)) |_| break :blk;
2208 if (p.eatToken(.l_paren)) |l_paren| args: {
2209 if (p.eatToken(.r_paren)) |_| {
2210 if (syntax == .declspec) try p.err(l_paren, .declspec_empty_args, .{@tagName(namespaced.declspec)});
2211 break :args;
2212 }
18482213
1849 if (Attribute.wantsIdentEnum(attr)) {
1850 if (try p.eatIdentifier()) |ident| {
1851 if (try Attribute.diagnoseIdent(attr, &arguments, ident, p)) {
1852 p.skipTo(.r_paren);
1853 return null;
2214 while (true) {
2215 switch (p.tok_ids[p.tok_i]) {
2216 .identifier, .extended_identifier => {
2217 if (p.list_buf.items.len == list_buf_top and namespaced.hasIdentifierArg()) {
2218 try p.wip_attrs.args.append(gpa, .{
2219 .node = try p.addNode(.{
2220 .identifier_arg = .{ .identifier_tok = p.tok_i },
2221 }),
2222 });
2223 p.tok_i += 1;
2224
2225 if (p.eatToken(.r_paren)) |_| break;
2226 _ = try p.expectToken(.comma);
18542227 }
1855 } else {
1856 try p.err(name_tok, .attribute_requires_identifier, .{name});
1857 return null;
1858 }
1859 } else {
1860 const arg_start = p.tok_i;
1861 const first_expr = try p.expect(assignExpr);
1862 if (try p.diagnose(attr, &arguments, arg_idx, first_expr, arg_start)) {
1863 p.skipTo(.r_paren);
1864 return null;
1865 }
2228 },
2229 else => {},
18662230 }
1867 arg_idx += 1;
1868 while (p.eatToken(.r_paren) == null) : (arg_idx += 1) {
1869 _ = try p.expectToken(.comma);
18702231
1871 const arg_start = p.tok_i;
1872 const arg_expr = try p.expect(assignExpr);
1873 if (try p.diagnose(attr, &arguments, arg_idx, arg_expr, arg_start)) {
1874 p.skipTo(.r_paren);
1875 return null;
1876 }
1877 }
1878 },
1879 else => {},
1880 }
1881 if (arg_idx < required_count) {
1882 try p.err(name_tok, .attribute_not_enough_args, .{
1883 @tagName(attr), required_count,
1884 });
1885 return null;
1886 }
1887 return .{ .attr = .{ .tag = attr, .args = arguments, .syntax = kind.toSyntax() }, .tok = name_tok };
1888}
2232 const arg = try p.expectWithClosing(assignExpr, .r_paren);
2233 try p.wip_attrs.args.append(gpa, arg);
18892234
1890fn diagnose(p: *Parser, attr: Attribute.Tag, arguments: *Attribute.Arguments, arg_idx: u32, res: Result, arg_start: TokenIndex) !bool {
1891 if (Attribute.wantsAlignment(attr, arg_idx)) {
1892 return Attribute.diagnoseAlignment(attr, arguments, arg_idx, res, arg_start, p);
2235 if (p.eatToken(.r_paren)) |_| break;
2236 _ = try p.expectToken(.comma);
2237 }
18932238 }
1894 return Attribute.diagnose(attr, arguments, arg_idx, res, arg_start, res.node.get(&p.tree), p);
1895}
1896
1897/// attributeList : (attribute (',' attribute)*)?
1898fn gnuAttributeList(p: *Parser) Error!void {
1899 if (p.tok_ids[p.tok_i] == .r_paren) return;
1900 const gpa = p.comp.gpa;
19012239
1902 if (try p.attribute(.gnu, null)) |attr| try p.attr_buf.append(gpa, attr);
1903 while (p.tok_ids[p.tok_i] != .r_paren) {
1904 _ = try p.expectToken(.comma);
1905 if (try p.attribute(.gnu, null)) |attr| try p.attr_buf.append(gpa, attr);
1906 }
2240 try p.wip_attrs.attrs.append(gpa, .{
2241 .name = namespaced,
2242 .syntax = syntax,
2243 .args_len = @intCast(p.wip_attrs.args.items.len - arg_top),
2244 .args_index = @intCast(arg_top),
2245 .tok = first_tok,
2246 });
19072247}
19082248
1909fn c23AttributeList(p: *Parser) Error!void {
1910 while (p.tok_ids[p.tok_i] != .r_bracket) {
1911 const namespace_tok = try p.expectIdentifier();
1912 var namespace: ?[]const u8 = null;
1913 if (p.eatToken(.colon_colon)) |_| {
1914 namespace = p.tokSlice(namespace_tok);
1915 } else {
1916 p.tok_i -= 1;
1917 }
1918 if (try p.attribute(.c23, namespace)) |attr| try p.attr_buf.append(p.comp.gpa, attr);
1919 _ = p.eatToken(.comma);
2249/// attrIdentifier : identifier | keyword
2250fn attrIdentifier(p: *Parser) !TokenIndex {
2251 const res = p.tok_i;
2252 if (!p.tok_ids[p.tok_i].isMacroIdentifier()) {
2253 return p.errExpectedToken(.identifier, p.tok_ids[p.tok_i]);
19202254 }
2255 _ = (try p.eatIdentifier()) orelse {
2256 p.tok_i += 1;
2257 };
2258 return res;
19212259}
19222260
1923fn msvcAttributeList(p: *Parser) Error!void {
1924 while (p.tok_ids[p.tok_i] != .r_paren) {
1925 if (try p.attribute(.declspec, null)) |attr| try p.attr_buf.append(p.comp.gpa, attr);
1926 _ = p.eatToken(.comma);
1927 }
2261fn parseAvailabilityArgs(p: *Parser) Error!void {
2262 // TODO
2263 if (p.eatToken(.l_paren)) |_| p.skipTo(.r_paren);
19282264}
19292265
2266/// c23Attribute : '[' '[' c23AttributeList ']' ']'
2267/// c23AttributeList : ','* (c23Attribute ','+)*
19302268fn c23Attribute(p: *Parser) !bool {
1931 if (!p.comp.langopts.standard.atLeast(.c23)) return false;
19322269 const bracket1 = p.eatToken(.l_bracket) orelse return false;
19332270 const bracket2 = p.eatToken(.l_bracket) orelse {
19342271 p.tok_i -= 1;
19352272 return false;
19362273 };
2274 try p.err(bracket1, .c23_attribute, .{});
2275
2276 while (p.tok_ids[p.tok_i] != .r_bracket) {
2277 if (p.eatToken(.comma)) |_| continue;
2278 try p.attribute(.standard);
2279 }
19372280
1938 try p.c23AttributeList();
1939
19402281 _ = try p.expectClosing(bracket2, .r_bracket);
19412282 _ = try p.expectClosing(bracket1, .r_bracket);
19422283
19432284 return true;
19442285}
19452286
1946fn msvcAttribute(p: *Parser) !bool {
2287fn declspecAttribute(p: *Parser) !bool {
19472288 _ = p.eatToken(.keyword_declspec) orelse return false;
19482289 const l_paren = try p.expectToken(.l_paren);
1949 try p.msvcAttributeList();
2290
2291 while (p.tok_ids[p.tok_i] != .r_paren) {
2292 if (p.eatToken(.comma)) |_| continue;
2293 try p.attribute(.declspec);
2294 }
2295
19502296 _ = try p.expectClosing(l_paren, .r_paren);
19512297
19522298 return true;
......@@ -1960,7 +2306,10 @@ fn gnuAttribute(p: *Parser) !bool {
19602306 const paren1 = try p.expectToken(.l_paren);
19612307 const paren2 = try p.expectToken(.l_paren);
19622308
1963 try p.gnuAttributeList();
2309 while (p.tok_ids[p.tok_i] != .r_paren) {
2310 if (p.eatToken(.comma)) |_| continue;
2311 try p.attribute(.gnu);
2312 }
19642313
19652314 _ = try p.expectClosing(paren2, .r_paren);
19662315 _ = try p.expectClosing(paren1, .r_paren);
......@@ -1972,14 +2321,14 @@ fn attributeSpecifierGnu(p: *Parser) Error!void {
19722321 if (try p.gnuAttribute()) continue;
19732322
19742323 const tok = p.tok_i;
1975 const attr_buf_top_declarator = p.attr_buf.len;
1976 defer p.attr_buf.len = attr_buf_top_declarator;
2324 const discarded_attr_state = p.wip_attrs.state(true);
2325 defer p.wip_attrs.restore(discarded_attr_state);
19772326
19782327 if (try p.c23Attribute()) {
19792328 try p.err(tok, .invalid_attribute_location, .{"an attribute list"});
19802329 continue;
19812330 }
1982 if (try p.msvcAttribute()) {
2331 if (try p.declspecAttribute()) {
19832332 try p.err(tok, .invalid_attribute_location, .{"a declspec attribute"});
19842333 continue;
19852334 }
......@@ -1987,22 +2336,30 @@ fn attributeSpecifierGnu(p: *Parser) Error!void {
19872336 }
19882337}
19892338
2339/// attributeSpecifier
2340/// : gnuAttribute
2341/// | c23Attribute
2342/// | declspecAttribute
2343/// gnuAttribute : keyword_attribute '( '(' attributeList ')' ')'
2344/// declspecAttribute : keyword_declspec '( attributeList ')'
2345/// attributeList : ','* (attribute ','+)*
19902346fn attributeSpecifier(p: *Parser) Error!void {
19912347 return attributeSpecifierExtra(p, null);
19922348}
19932349
1994/// attributeSpecifier : (keyword_attribute '( '(' attributeList ')' ')')*
19952350fn attributeSpecifierExtra(p: *Parser, declarator_name: ?TokenIndex) Error!void {
19962351 while (true) {
19972352 if (try p.gnuAttribute()) continue;
19982353 if (try p.c23Attribute()) continue;
2354
2355 const discarded_attr_state = p.wip_attrs.state(false);
2356
19992357 const maybe_declspec_tok = p.tok_i;
2000 const attr_buf_top = p.attr_buf.len;
2001 if (try p.msvcAttribute()) {
2358 if (try p.declspecAttribute()) {
20022359 if (declarator_name) |name_tok| {
2360 defer p.wip_attrs.restore(discarded_attr_state);
20032361 try p.err(maybe_declspec_tok, .declspec_not_allowed_after_declarator, .{});
20042362 try p.err(name_tok, .declarator_name_tok, .{});
2005 p.attr_buf.len = attr_buf_top;
20062363 }
20072364 continue;
20082365 }
......@@ -2011,9 +2368,7 @@ fn attributeSpecifierExtra(p: *Parser, declarator_name: ?TokenIndex) Error!void
20112368}
20122369
20132370/// initDeclarator : declarator assembly? attributeSpecifier? ('=' initializer)?
2014fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, attr_buf_top: usize, decl_node: Node.Index) Error!?InitDeclarator {
2015 const this_attr_buf_top = p.attr_buf.len;
2016 defer p.attr_buf.len = this_attr_buf_top;
2371fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, decl_node: Node.Index) Error!?InitDeclarator {
20172372 const gpa = p.comp.gpa;
20182373
20192374 var init_d: InitDeclarator = .{
......@@ -2024,13 +2379,20 @@ fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, attr_buf_top: usize, decl_no
20242379 init_d.asm_label = try p.assembly(.decl_label);
20252380 try p.attributeSpecifierExtra(init_d.d.name);
20262381
2382 init_d.d.qt = try p.wip_attrs.applyTypeAttrs(p, init_d.d.qt);
2383
20272384 switch (init_d.d.declarator_type) {
2028 .func => {
2385 inline .func, .block => |tag| {
2386 const kind = switch (tag) {
2387 .func => "function",
2388 .block => "block",
2389 else => comptime unreachable,
2390 };
20292391 if (decl_spec.auto_type) |tok_i| {
2030 try p.err(tok_i, .auto_type_not_allowed, .{"function return type"});
2392 try p.err(tok_i, .auto_type_not_allowed, .{kind ++ " return type"});
20312393 init_d.d.qt = .invalid;
20322394 } else if (decl_spec.c23_auto) |tok_i| {
2033 try p.err(tok_i, .c23_auto_not_allowed, .{"function return type"});
2395 try p.err(tok_i, .c23_auto_not_allowed, .{kind ++ " return type"});
20342396 init_d.d.qt = .invalid;
20352397 }
20362398 },
......@@ -2061,15 +2423,6 @@ fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, attr_buf_top: usize, decl_no
20612423 },
20622424 }
20632425
2064 var apply_var_attributes = false;
2065 if (decl_spec.storage_class == .typedef) {
2066 init_d.d.qt = try Attribute.applyTypeAttributes(p, init_d.d.qt, attr_buf_top, null);
2067 } else if (init_d.d.declarator_type == .func or init_d.d.qt.is(p.comp, .func)) {
2068 init_d.d.qt = try Attribute.applyFunctionAttributes(p, init_d.d.qt, attr_buf_top);
2069 } else {
2070 apply_var_attributes = true;
2071 }
2072
20732426 if (p.eatToken(.equal)) |eq| {
20742427 if (decl_spec.storage_class == .typedef or
20752428 (init_d.d.declarator_type == .func and init_d.d.qt.is(p.comp, .func)))
......@@ -2084,8 +2437,7 @@ fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, attr_buf_top: usize, decl_no
20842437
20852438 incomplete: {
20862439 if (init_d.d.qt.isInvalid()) break :incomplete;
2087 if (init_d.d.qt.isC23Auto()) break :incomplete;
2088 if (init_d.d.qt.isAutoType()) break :incomplete;
2440 if (init_d.d.qt.isAuto()) break :incomplete;
20892441 if (!init_d.d.qt.hasIncompleteSize(p.comp)) break :incomplete;
20902442 if (init_d.d.qt.get(p.comp, .array)) |array_ty| {
20912443 if (array_ty.len == .incomplete) break :incomplete;
......@@ -2098,10 +2450,11 @@ fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, attr_buf_top: usize, decl_no
20982450 defer p.syms.popScope();
20992451
21002452 const interned_name = try p.comp.internString(p.tokSlice(init_d.d.name));
2101 try p.syms.declareSymbol(p, interned_name, init_d.d.qt, init_d.d.name, decl_node);
2453 _ = try p.syms.declareSymbol(p, interned_name, init_d.d.qt, init_d.d.name, decl_node);
2454 try p.addMaybeUnusued(decl_node);
21022455
21032456 // TODO this should be a stack of auto type names because of statement expressions.
2104 if (init_d.d.qt.isAutoType() or init_d.d.qt.isC23Auto()) {
2457 if (init_d.d.qt.isAuto()) {
21052458 p.auto_type_decl_name = interned_name;
21062459 }
21072460 defer p.auto_type_decl_name = .empty;
......@@ -2129,7 +2482,7 @@ fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, attr_buf_top: usize, decl_no
21292482 }
21302483
21312484 const name = init_d.d.name;
2132 if (init_d.d.qt.isAutoType() or init_d.d.qt.isC23Auto()) {
2485 if (init_d.d.qt.isAuto()) {
21332486 if (init_d.initializer) |some| {
21342487 init_d.d.qt = some.qt.withQualifiers(init_d.d.qt);
21352488 } else {
......@@ -2142,9 +2495,6 @@ fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, attr_buf_top: usize, decl_no
21422495 return init_d;
21432496 }
21442497 }
2145 if (apply_var_attributes) {
2146 init_d.d.qt = try Attribute.applyVariableAttributes(p, init_d.d.qt, attr_buf_top, null);
2147 }
21482498
21492499 incomplete: {
21502500 if (decl_spec.storage_class == .typedef) break :incomplete;
......@@ -2163,16 +2513,16 @@ fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, attr_buf_top: usize, decl_no
21632513 if (p.func.qt == null) {
21642514 switch (init_type) {
21652515 .array => |array_ty| if (array_ty.len == .incomplete) {
2166 // TODO properly check this after finishing parsing
2167 try p.err(name, .tentative_array, .{});
2516 const interned_name = try p.comp.internString(p.tokSlice(name));
2517 _ = try p.tentative_defs.getOrPutValue(gpa, .tentativeArray(interned_name), name);
21682518 break :incomplete;
21692519 },
21702520 .@"struct", .@"union" => |record_ty| {
2171 _ = try p.tentative_defs.getOrPutValue(gpa, record_ty.name, init_d.d.name);
2521 _ = try p.tentative_defs.getOrPutValue(gpa, .incompleteType(record_ty.name), init_d.d.name);
21722522 break :incomplete;
21732523 },
21742524 .@"enum" => |enum_ty| {
2175 _ = try p.tentative_defs.getOrPutValue(gpa, enum_ty.name, init_d.d.name);
2525 _ = try p.tentative_defs.getOrPutValue(gpa, .incompleteType(enum_ty.name), init_d.d.name);
21762526 break :incomplete;
21772527 },
21782528 else => {},
......@@ -2184,6 +2534,25 @@ fn initDeclarator(p: *Parser, decl_spec: *DeclSpec, attr_buf_top: usize, decl_no
21842534 return init_d;
21852535}
21862536
2537fn exactTypeKeywordToSpecMSVC(id: Tokenizer.Token.Id) TypeStore.Builder.Specifier {
2538 return switch (id) {
2539 .keyword_int8, .keyword_int8_2 => .char,
2540 .keyword_int16, .keyword_int16_2 => .short,
2541 .keyword_int32, .keyword_int32_2 => .int,
2542 .keyword_int64, .keyword_int64_2 => .long_long,
2543 else => unreachable,
2544 };
2545}
2546
2547fn getMSVCIntSuffixType(p: *Parser, bits: enum { @"8", @"16", @"32", @"64" }, signedness: std.builtin.Signedness) QualType {
2548 return switch (bits) {
2549 .@"8" => if (signedness == .signed) .char else .uchar,
2550 .@"16" => p.comp.intLeastN(16, signedness),
2551 .@"32" => p.comp.intLeastN(32, signedness),
2552 .@"64" => if (p.comp.langopts.emulate != .msvc) p.comp.smallestNBitIntTargetIndependent(64, signedness) else if (signedness == .signed) .long_long else .ulong_long,
2553 };
2554}
2555
21872556/// typeSpec
21882557/// : keyword_void
21892558/// | keyword_char
......@@ -2223,12 +2592,23 @@ fn typeSpec(p: *Parser, builder: *TypeStore.Builder) Error!bool {
22232592 switch (p.tok_ids[p.tok_i]) {
22242593 .keyword_void => try builder.combine(.void, p.tok_i),
22252594 .keyword_bool, .keyword_c23_bool => try builder.combine(.bool, p.tok_i),
2226 .keyword_int8, .keyword_int8_2, .keyword_char => try builder.combine(.char, p.tok_i),
2227 .keyword_int16, .keyword_int16_2, .keyword_short => try builder.combine(.short, p.tok_i),
2228 .keyword_int32, .keyword_int32_2, .keyword_int => try builder.combine(.int, p.tok_i),
2595 .keyword_char => try builder.combine(.char, p.tok_i),
2596 .keyword_short => try builder.combine(.short, p.tok_i),
2597 .keyword_int => try builder.combine(.int, p.tok_i),
22292598 .keyword_long => try builder.combine(.long, p.tok_i),
2230 .keyword_int64, .keyword_int64_2 => try builder.combine(.long_long, p.tok_i),
2599
2600 .keyword_int8,
2601 .keyword_int8_2,
2602 .keyword_int16,
2603 .keyword_int16_2,
2604 .keyword_int32,
2605 .keyword_int32_2,
2606 .keyword_int64,
2607 .keyword_int64_2,
2608 => |tok_id| try builder.combine(exactTypeKeywordToSpecMSVC(tok_id), p.tok_i),
2609
22312610 .keyword_int128 => try builder.combine(.int128, p.tok_i),
2611 .keyword_int24 => try builder.combine(.int24, p.tok_i),
22322612 .keyword_signed, .keyword_signed1, .keyword_signed2 => try builder.combine(.signed, p.tok_i),
22332613 .keyword_unsigned => try builder.combine(.unsigned, p.tok_i),
22342614 .keyword_fp16 => try builder.combine(.fp16, p.tok_i),
......@@ -2263,10 +2643,7 @@ fn typeSpec(p: *Parser, builder: *TypeStore.Builder) Error!bool {
22632643 p.tok_i = atomic_tok;
22642644 break;
22652645 };
2266 const base_qt = (try p.typeName()) orelse {
2267 try p.err(p.tok_i, .expected_type, .{});
2268 return error.ParsingFailed;
2269 };
2646 const base_qt = try p.expectTypeName(.r_paren);
22702647 try p.expectClosing(l_paren, .r_paren);
22712648
22722649 if (base_qt.isQualified() and !base_qt.isInvalid()) {
......@@ -2283,34 +2660,22 @@ fn typeSpec(p: *Parser, builder: *TypeStore.Builder) Error!bool {
22832660 => {
22842661 const align_tok = p.tok_i;
22852662 p.tok_i += 1;
2286 const gpa = p.comp.gpa;
22872663 const l_paren = try p.expectToken(.l_paren);
22882664 const typename_start = p.tok_i;
22892665 if (try p.typeName()) |inner_qt| {
22902666 if (!inner_qt.alignable(p.comp)) {
22912667 try p.err(typename_start, .invalid_alignof, .{inner_qt});
22922668 }
2293 const alignment = Attribute.Alignment{ .requested = inner_qt.alignof(p.comp) };
2294 try p.attr_buf.append(gpa, .{
2295 .attr = .{ .tag = .aligned, .args = .{
2296 .aligned = .{ .alignment = alignment, .__name_tok = align_tok },
2297 }, .syntax = .keyword },
2298 .tok = align_tok,
2299 });
2300 } else check: {
2301 const arg_start = p.tok_i;
2669 try p.wip_attrs.addKeyword(p, align_tok, &.{.{
2670 .node = try p.addNode(.{ .alignas_type = .{
2671 .alignas_tok = align_tok,
2672 .qt = inner_qt,
2673 } }),
2674 .qt = inner_qt,
2675 }});
2676 } else {
23022677 const res = try p.integerConstExpr(.no_const_decl_folding);
2303 if (!res.val.isZero(p.comp)) {
2304 var args = Attribute.initArguments(.aligned, align_tok);
2305 if (try p.diagnose(.aligned, &args, 0, res, arg_start)) {
2306 break :check;
2307 }
2308 args.aligned.alignment.?.node = .pack(res.node);
2309 try p.attr_buf.append(gpa, .{
2310 .attr = .{ .tag = .aligned, .args = args, .syntax = .keyword },
2311 .tok = align_tok,
2312 });
2313 }
2678 try p.wip_attrs.addKeyword(p, align_tok, &.{res});
23142679 }
23152680 try p.expectClosing(l_paren, .r_paren);
23162681 continue;
......@@ -2344,6 +2709,7 @@ fn typeSpec(p: *Parser, builder: *TypeStore.Builder) Error!bool {
23442709 interned_name = try p.comp.internString(p.tokSlice(p.tok_i));
23452710 }
23462711 const typedef = (try p.syms.findTypedef(p, interned_name, p.tok_i, builder.type != .none)) orelse break;
2712 p.markUsed(typedef.node);
23472713 if (!builder.combineTypedef(typedef.qt)) break;
23482714 },
23492715 .keyword_bit_int => {
......@@ -2356,8 +2722,9 @@ fn typeSpec(p: *Parser, builder: *TypeStore.Builder) Error!bool {
23562722
23572723 var bits: u64 = undefined;
23582724 if (res.val.opt_ref == .none) {
2359 try p.err(bit_int_tok, .expected_integer_constant_expr, .{});
2360 return error.ParsingFailed;
2725 if (builder.type == .none) try p.err(res.node.tok(&p.tree), .expected_integer_constant_expr, .{});
2726 try builder.combine(.{ .other = .invalid }, bit_int_tok);
2727 continue;
23612728 } else if (res.val.compare(.lte, .zero, p.comp)) {
23622729 bits = 0;
23632730 } else {
......@@ -2387,8 +2754,7 @@ fn getAnonymousName(p: *Parser, kind_tok: TokenIndex) !StringId {
23872754
23882755 var arena = p.comp.type_store.anon_name_arena.promote(p.comp.gpa);
23892756 defer p.comp.type_store.anon_name_arena = arena.state;
2390 const str = try std.fmt.allocPrint(
2391 arena.allocator(),
2757 const str = try arena.allocator().print(
23922758 "(anonymous {s} at {s}:{d}:{d})",
23932759 .{ kind_str, source.path, line_col.line_no, line_col.col },
23942760 );
......@@ -2404,13 +2770,17 @@ fn recordSpec(p: *Parser) Error!QualType {
24042770 const kind_tok = p.tok_i;
24052771 const is_struct = p.tok_ids[kind_tok] == .keyword_struct;
24062772 p.tok_i += 1;
2407 const attr_buf_top = p.attr_buf.len;
2408 defer p.attr_buf.len = attr_buf_top;
2773
2774 const attr_state = p.wip_attrs.state(true);
2775 defer p.wip_attrs.restore(attr_state);
24092776 try p.attributeSpecifier();
24102777
24112778 const reserved_index = try p.tree.nodes.addOne(gpa);
2779 const record_decl: Tree.Node.Index = @fromBackingInt(@intCast(reserved_index));
24122780
24132781 const maybe_ident = try p.eatIdentifier();
2782 try p.attributeSpecifier();
2783
24142784 const l_brace = p.eatToken(.l_brace) orelse {
24152785 const ident = maybe_ident orelse {
24162786 try p.err(p.tok_i, .ident_or_l_brace, .{});
......@@ -2425,7 +2795,7 @@ fn recordSpec(p: *Parser) Error!QualType {
24252795 const record_ty: Type.Record = .{
24262796 .name = interned_name,
24272797 .layout = null,
2428 .decl_node = @fromBackingInt(@intCast(reserved_index)),
2798 .decl_node = .pack(record_decl),
24292799 .fields = &.{},
24302800 };
24312801 const record_qt = try p.comp.type_store.put(gpa, if (is_struct)
......@@ -2433,26 +2803,28 @@ fn recordSpec(p: *Parser) Error!QualType {
24332803 else
24342804 .{ .@"union" = record_ty });
24352805
2436 const attributed_qt = try Attribute.applyTypeAttributes(p, record_qt, attr_buf_top, null);
24372806 try p.syms.define(gpa, .{
24382807 .kind = if (is_struct) .@"struct" else .@"union",
24392808 .name = interned_name,
24402809 .tok = ident,
2441 .qt = attributed_qt,
2810 .qt = record_qt,
24422811 .val = .{},
2812 .node = record_decl,
24432813 });
24442814
24452815 const fw: Node.ContainerForwardDecl = .{
24462816 .name_or_kind_tok = ident,
2447 .container_qt = attributed_qt,
2817 .container_qt = record_qt,
24482818 .definition = null,
24492819 };
24502820 try p.tree.setNode(if (is_struct)
24512821 .{ .struct_forward_decl = fw }
24522822 else
24532823 .{ .union_forward_decl = fw }, reserved_index);
2454 try p.decl_buf.append(gpa, @fromBackingInt(@intCast(reserved_index)));
2455 return attributed_qt;
2824 try p.decl_buf.append(gpa, record_decl);
2825 assert(try p.wip_attrs.applyTypeAttrs(p, record_qt) == record_qt);
2826 try p.wip_attrs.applyDeclAttrs(p, record_decl, null);
2827 return record_qt;
24562828 }
24572829 };
24582830
......@@ -2460,7 +2832,7 @@ fn recordSpec(p: *Parser) Error!QualType {
24602832 errdefer if (!done) p.skipTo(.r_brace);
24612833
24622834 // Get forward declared type or create a new one
2463 var record_ty: Type.Record, const qt: QualType = blk: {
2835 var record_ty: Type.Record, const qt: QualType, const prev_decl: ?Node.Index = blk: {
24642836 const interned_name = if (maybe_ident) |ident| interned: {
24652837 const ident_str = p.tokSlice(ident);
24662838 const interned_name = try p.comp.internString(ident_str);
......@@ -2471,7 +2843,7 @@ fn recordSpec(p: *Parser) Error!QualType {
24712843 try p.err(ident, .redefinition, .{ident_str});
24722844 try p.err(prev.tok, .previous_definition, .{});
24732845 } else {
2474 break :blk .{ record_ty, prev.qt };
2846 break :blk .{ record_ty, prev.qt, record_ty.decl_node.unpack() orelse null };
24752847 }
24762848 }
24772849 break :interned interned_name;
......@@ -2481,7 +2853,7 @@ fn recordSpec(p: *Parser) Error!QualType {
24812853 // can be specified after the closing rbrace, which we haven't encountered yet.
24822854 const record_ty: Type.Record = .{
24832855 .name = interned_name,
2484 .decl_node = @fromBackingInt(@intCast(reserved_index)),
2856 .decl_node = .pack(record_decl),
24852857 .layout = null,
24862858 .fields = &.{},
24872859 };
......@@ -2499,13 +2871,14 @@ fn recordSpec(p: *Parser) Error!QualType {
24992871 .tok = maybe_ident.?,
25002872 .qt = record_qt,
25012873 .val = .{},
2874 .node = record_decl,
25022875 });
25032876 }
25042877
2505 break :blk .{ record_ty, record_qt };
2878 break :blk .{ record_ty, record_qt, null };
25062879 };
25072880
2508 try p.decl_buf.append(gpa, @fromBackingInt(@intCast(reserved_index)));
2881 try p.decl_buf.append(gpa, record_decl);
25092882 const decl_buf_top = p.decl_buf.items.len;
25102883 const record_buf_top = p.record_buf.items.len;
25112884 errdefer p.decl_buf.items.len = decl_buf_top - 1;
......@@ -2545,95 +2918,54 @@ fn recordSpec(p: *Parser) Error!QualType {
25452918 done = true;
25462919 try p.attributeSpecifier();
25472920
2548 const any_incomplete = blk: {
2549 for (fields) |field| {
2550 if (field.qt.hasIncompleteSize(p.comp) and !field.qt.is(p.comp, .array)) break :blk true;
2551 }
2552 // Set fields and a dummy layout before addign attributes.
2553 record_ty.fields = fields;
2554 record_ty.layout = .{
2555 .size_bits = 8,
2556 .field_alignment_bits = 8,
2557 .pointer_alignment_bits = 8,
2558 .required_alignment_bits = 8,
2559 };
2560 record_ty.decl_node = @fromBackingInt(@intCast(reserved_index));
2561
2562 const base_type = qt.base(p.comp);
2563 if (is_struct) {
2564 std.debug.assert(base_type.type.@"struct".name == record_ty.name);
2565 try p.comp.type_store.set(gpa, .{ .@"struct" = record_ty }, @backingInt(base_type.qt._index));
2566 } else {
2567 std.debug.assert(base_type.type.@"union".name == record_ty.name);
2568 try p.comp.type_store.set(gpa, .{ .@"union" = record_ty }, @backingInt(base_type.qt._index));
2569 }
2570 break :blk false;
2571 };
2572
2573 const attributed_qt = try Attribute.applyTypeAttributes(p, qt, attr_buf_top, null);
2574
2575 // Make sure the symbol for this record points to the attributed type.
2576 if (attributed_qt != qt and maybe_ident != null) {
2577 const ident_str = p.tokSlice(maybe_ident.?);
2578 const interned_name = try p.comp.internString(ident_str);
2579 const ptr = p.syms.getPtr(interned_name, .tags);
2580 ptr.qt = attributed_qt;
2581 }
2582
2583 if (!any_incomplete) {
2584 const pragma_pack_value = switch (p.comp.langopts.emulate) {
2585 .clang, .no => starting_pragma_pack,
2586 .gcc => p.pragma_pack,
2587 // TODO: msvc considers `#pragma pack` on a per-field basis
2588 .msvc => p.pragma_pack,
2589 };
2590 if (record_layout.compute(fields, attributed_qt, p.comp, pragma_pack_value)) |layout| {
2591 record_ty.fields = fields;
2592 record_ty.layout = layout;
2593 } else |er| switch (er) {
2594 error.Overflow => try p.err(maybe_ident orelse kind_tok, .record_too_large, .{qt}),
2595 }
2596
2597 // Override previous incomplete layout and fields.
2598 const base_qt = qt.base(p.comp).qt;
2599 const ts = &p.comp.type_store;
2600 var extra_index = ts.types.items(.data)[@backingInt(base_qt._index)][1];
2601
2602 const layout_size = 5;
2603 comptime std.debug.assert(@sizeOf(Type.Record.Layout) == @sizeOf(u32) * layout_size);
2604 const field_size = 10;
2605 comptime std.debug.assert(@sizeOf(Type.Record.Field) == @sizeOf(u32) * field_size);
2606
2607 extra_index += 1; // For decl_node
2608 const casted_layout: *const [layout_size]u32 = @ptrCast(&record_ty.layout);
2609 ts.extra.items[extra_index..][0..layout_size].* = casted_layout.*;
2610 extra_index += layout_size;
2611 extra_index += 1; // For field length
2612
2613 for (record_ty.fields) |*field| {
2614 const casted: *const [field_size]u32 = @ptrCast(field);
2615 ts.extra.items[extra_index..][0..field_size].* = casted.*;
2616 extra_index += field_size;
2617 }
2618 }
2619
2620 // finish by creating a node
2921 // Set the node and apply attributes to it.
26212922 const cd: Node.ContainerDecl = .{
26222923 .name_or_kind_tok = maybe_ident orelse kind_tok,
2623 .container_qt = attributed_qt,
2924 .container_qt = qt,
26242925 .fields = p.decl_buf.items[decl_buf_top..],
26252926 };
26262927 try p.tree.setNode(if (is_struct) .{ .struct_decl = cd } else .{ .union_decl = cd }, reserved_index);
26272928 if (p.func.qt == null) {
2628 _ = p.tentative_defs.remove(record_ty.name);
2929 _ = p.tentative_defs.orderedRemove(.incompleteType(record_ty.name));
2930 }
2931 assert(try p.wip_attrs.applyTypeAttrs(p, qt) == qt);
2932 try p.wip_attrs.applyDeclAttrs(p, record_decl, prev_decl);
2933
2934 for (fields) |field| {
2935 if (field.qt.hasIncompleteSize(p.comp) and !field.qt.is(p.comp, .array)) return qt;
26292936 }
2630 return attributed_qt;
2937
2938 // Calculate record layout.
2939 const pragma_pack_value = switch (p.comp.langopts.emulate) {
2940 .clang, .no => starting_pragma_pack,
2941 .gcc => p.pragma_pack,
2942 // TODO: msvc considers `#pragma pack` on a per-field basis
2943 .msvc => p.pragma_pack,
2944 };
2945 if (record_layout.compute(fields, .pack(record_decl), !is_struct, p.comp, &p.tree.attr_map, pragma_pack_value)) |layout| {
2946 record_ty.fields = fields;
2947 record_ty.layout = layout;
2948 } else |er| switch (er) {
2949 error.Overflow => try p.err(maybe_ident orelse kind_tok, .record_too_large, .{qt}),
2950 }
2951
2952 if (is_struct) {
2953 try p.comp.type_store.set(gpa, .{ .@"struct" = record_ty }, @backingInt(qt._index));
2954 } else {
2955 try p.comp.type_store.set(gpa, .{ .@"union" = record_ty }, @backingInt(qt._index));
2956 }
2957 return qt;
26312958}
26322959
26332960/// recordDecls : (keyword_extension? recordDecl | staticAssert)*
26342961fn recordDecls(p: *Parser) Error!void {
26352962 while (true) {
26362963 if (try p.pragma()) continue;
2964
2965 const attr_state = p.wip_attrs.state(true);
2966 defer p.wip_attrs.restore(attr_state);
2967 try p.attributeSpecifier();
2968
26372969 if (try p.parseOrNextDecl(staticAssert)) continue;
26382970 if (p.eatToken(.keyword_extension)) |_| {
26392971 const saved_extension = p.extension_suppressed;
......@@ -2654,8 +2986,6 @@ fn recordDecls(p: *Parser) Error!void {
26542986/// recordDeclarator : declarator (':' integerConstExpr)?
26552987fn recordDecl(p: *Parser) Error!bool {
26562988 const gpa = p.comp.gpa;
2657 const attr_buf_top = p.attr_buf.len;
2658 defer p.attr_buf.len = attr_buf_top;
26592989
26602990 const base_qt: QualType = blk: {
26612991 const start = p.tok_i;
......@@ -2692,11 +3022,12 @@ fn recordDecl(p: *Parser) Error!bool {
26923022 };
26933023 };
26943024
2695 try p.attributeSpecifier(); // .record
3025 try p.attributeSpecifier();
3026
26963027 var error_on_unnamed = false;
26973028 while (true) {
2698 const this_decl_top = p.attr_buf.len;
2699 defer p.attr_buf.len = this_decl_top;
3029 const declarator_attr_state = p.wip_attrs.state(false);
3030 defer p.wip_attrs.restore(declarator_attr_state);
27003031
27013032 try p.attributeSpecifier();
27023033
......@@ -2728,7 +3059,7 @@ fn recordDecl(p: *Parser) Error!bool {
27283059 break :bits;
27293060 }
27303061
2731 // incomplete size error is reported later
3062 // Enums are allowed as bitfield types but may have incomplete size.
27323063 const bit_size = qt.bitSizeofOrNull(p.comp) orelse break :bits;
27333064 const bits_unchecked = res.val.toInt(u32, p.comp) orelse std.math.maxInt(u32);
27343065 if (bits_unchecked > bit_size) {
......@@ -2743,21 +3074,11 @@ fn recordDecl(p: *Parser) Error!bool {
27433074 bits_node = res.node;
27443075 }
27453076
2746 try p.attributeSpecifier(); // .record
2747
2748 const to_append = try Attribute.applyFieldAttributes(p, &qt, attr_buf_top);
2749
2750 const attr_index: u32 = @intCast(p.comp.type_store.attributes.items.len);
2751 const attr_len: u32 = @intCast(to_append.len);
2752 try p.comp.type_store.attributes.appendSlice(gpa, to_append);
2753
2754 qt = try Attribute.applyTypeAttributes(p, qt, attr_buf_top, null);
2755 @memset(p.attr_buf.items(.seen)[attr_buf_top..], false);
3077 try p.attributeSpecifier();
27563078
27573079 if (name_tok == 0 and bits == null) unnamed: {
27583080 var is_typedef = false;
27593081 if (!qt.isInvalid()) loop: switch (qt.type(p.comp)) {
2760 .attributed => |attributed_ty| continue :loop attributed_ty.base.type(p.comp),
27613082 .typedef => |typedef_ty| {
27623083 is_typedef = true;
27633084 continue :loop typedef_ty.base.type(p.comp);
......@@ -2770,13 +3091,6 @@ fn recordDecl(p: *Parser) Error!bool {
27703091 if (!(record_ty.isAnonymous(p.comp) and !is_typedef)) {
27713092 try p.err(first_tok, .anonymous_struct, .{});
27723093 }
2773 // An anonymous record appears as indirect fields on the parent
2774 try p.record_buf.append(gpa, .{
2775 .name = try p.getAnonymousName(first_tok),
2776 .qt = qt,
2777 ._attr_index = attr_index,
2778 ._attr_len = attr_len,
2779 });
27803094
27813095 const node = try p.addNode(.{
27823096 .record_field = .{
......@@ -2785,8 +3099,17 @@ fn recordDecl(p: *Parser) Error!bool {
27853099 .bit_width = null,
27863100 },
27873101 });
3102
3103 // An anonymous record appears as indirect fields on the parent
3104 try p.record_buf.append(gpa, .{
3105 .name = try p.getAnonymousName(first_tok),
3106 .qt = qt,
3107 .field_decl = .pack(node),
3108 });
3109
27883110 try p.decl_buf.append(gpa, node);
27893111 try p.record.addFieldsFromAnonymous(p, record_ty);
3112 try p.wip_attrs.applyDeclAttrs(p, node, null);
27903113 break; // must be followed by a semicolon
27913114 },
27923115 else => {},
......@@ -2799,16 +3122,6 @@ fn recordDecl(p: *Parser) Error!bool {
27993122 if (p.eatToken(.comma) == null) break;
28003123 continue;
28013124 } else {
2802 const interned_name = if (name_tok != 0) try p.comp.internString(p.tokSlice(name_tok)) else try p.getAnonymousName(first_tok);
2803 try p.record_buf.append(gpa, .{
2804 .name = interned_name,
2805 .qt = qt,
2806 .name_tok = name_tok,
2807 .bit_width = if (bits) |some| @fromBackingInt(@intCast(some)) else .null,
2808 ._attr_index = attr_index,
2809 ._attr_len = attr_len,
2810 });
2811 if (name_tok != 0) try p.record.addField(p, interned_name, name_tok);
28123125 const node = try p.addNode(.{
28133126 .record_field = .{
28143127 .name_or_first_tok = name_tok,
......@@ -2816,7 +3129,18 @@ fn recordDecl(p: *Parser) Error!bool {
28163129 .bit_width = bits_node,
28173130 },
28183131 });
3132
3133 const interned_name = if (name_tok != 0) try p.comp.internString(p.tokSlice(name_tok)) else try p.getAnonymousName(first_tok);
3134 try p.record_buf.append(gpa, .{
3135 .name = interned_name,
3136 .qt = qt,
3137 .name_tok = name_tok,
3138 .bit_width = if (bits) |some| @fromBackingInt(some) else .null,
3139 .field_decl = .pack(node),
3140 });
3141 if (name_tok != 0) try p.record.addField(p, interned_name, name_tok);
28193142 try p.decl_buf.append(gpa, node);
3143 try p.wip_attrs.applyDeclAttrs(p, node, null);
28203144 }
28213145
28223146 if (!qt.isInvalid()) {
......@@ -2876,12 +3200,72 @@ fn recordDecl(p: *Parser) Error!bool {
28763200}
28773201
28783202/// specQual : typeSpec+
2879fn specQual(p: *Parser) Error!?QualType {
3203fn specQual(p: *Parser, start_with_type_spec: bool) Error!?QualType {
28803204 var builder: TypeStore.Builder = .{ .parser = p };
2881 if (try p.typeSpec(&builder)) {
2882 return try builder.finish();
3205 var any = false;
3206
3207 // If a typename can appear in the same place as an expression
3208 // a non-type specifier should cause an expected expression error.
3209 if (start_with_type_spec) {
3210 if (!try p.typeSpec(&builder)) return null;
3211 any = true;
28833212 }
2884 return null;
3213
3214 while (true) {
3215 switch (p.tok_ids[p.tok_i]) {
3216 .keyword_auto_type => {
3217 try builder.combine(.auto_type, p.tok_i); // always invalid
3218 p.tok_i += 1;
3219 continue;
3220 },
3221 .keyword_auto => if (p.comp.langopts.standard.atLeast(.c23)) {
3222 try builder.combine(.c23_auto, p.tok_i); // always invalid
3223 p.tok_i += 1;
3224 continue;
3225 },
3226 else => {},
3227 }
3228 switch (p.tok_ids[p.tok_i]) {
3229 .keyword_inline,
3230 .keyword_inline1,
3231 .keyword_inline2,
3232 .keyword_noreturn,
3233 .keyword_forceinline,
3234 .keyword_forceinline2,
3235 => {
3236 try p.err(p.tok_i, .typename_invalid_specifier, .{"function"});
3237 p.tok_i += 1;
3238 continue;
3239 },
3240 .keyword_typedef,
3241 .keyword_extern,
3242 .keyword_static,
3243 .keyword_auto,
3244 .keyword_register,
3245 .keyword_thread_local,
3246 .keyword_c23_thread_local,
3247 .keyword_thread,
3248 => {
3249 try p.err(p.tok_i, .typename_invalid_specifier, .{"storage class"});
3250 p.tok_i += 1;
3251 continue;
3252 },
3253 .keyword_constexpr => {
3254 try p.err(p.tok_i, .typename_invalid_specifier, .{"constexpr"});
3255 p.tok_i += 1;
3256 continue;
3257 },
3258 else => {},
3259 }
3260 if (try p.typeSpec(&builder)) {
3261 any = true;
3262 continue;
3263 }
3264 break;
3265 }
3266
3267 if (!any) return null;
3268 return try builder.finish();
28853269}
28863270
28873271/// enumSpec
......@@ -2891,14 +3275,19 @@ fn enumSpec(p: *Parser) Error!QualType {
28913275 const gpa = p.comp.gpa;
28923276 const enum_tok = p.tok_i;
28933277 p.tok_i += 1;
2894 const attr_buf_top = p.attr_buf.len;
2895 defer p.attr_buf.len = attr_buf_top;
3278 const attr_state = p.wip_attrs.state(true);
3279 defer p.wip_attrs.restore(attr_state);
28963280 try p.attributeSpecifier();
28973281
28983282 const maybe_ident = try p.eatIdentifier();
3283 try p.attributeSpecifier();
3284
28993285 const fixed_qt: ?QualType = if (p.eatToken(.colon)) |colon| fixed: {
29003286 const ty_start = p.tok_i;
2901 const fixed = (try p.specQual()) orelse {
3287
3288 const fixed_attr_state = p.wip_attrs.state(true);
3289 defer p.wip_attrs.restore(fixed_attr_state);
3290 const fixed = (try p.specQual(false)) orelse {
29023291 if (p.record.kind != .invalid) {
29033292 // This is a bit field.
29043293 p.tok_i -= 1;
......@@ -2909,7 +3298,8 @@ fn enumSpec(p: *Parser) Error!QualType {
29093298 break :fixed .int;
29103299 };
29113300
2912 var final = fixed;
3301 var final = try p.wip_attrs.applyTypeAttrs(p, fixed);
3302 try p.diagnoseIgnoredAttrs();
29133303 while (true) {
29143304 switch (final.base(p.comp).type) {
29153305 .int => {
......@@ -2930,6 +3320,7 @@ fn enumSpec(p: *Parser) Error!QualType {
29303320 } else null;
29313321
29323322 const reserved_index = try p.tree.nodes.addOne(gpa);
3323 const enum_decl: Tree.Node.Index = @fromBackingInt(@intCast(reserved_index));
29333324
29343325 const l_brace = p.eatToken(.l_brace) orelse {
29353326 const ident = maybe_ident orelse {
......@@ -2951,25 +3342,29 @@ fn enumSpec(p: *Parser) Error!QualType {
29513342 .tag = fixed_qt,
29523343 .fixed = fixed_qt != null,
29533344 .incomplete = true,
2954 .decl_node = @fromBackingInt(@intCast(reserved_index)),
3345 .decl_node = enum_decl,
29553346 .fields = &.{},
29563347 } });
29573348
2958 const attributed_qt = try Attribute.applyTypeAttributes(p, enum_qt, attr_buf_top, null);
29593349 try p.syms.define(gpa, .{
29603350 .kind = .@"enum",
29613351 .name = interned_name,
29623352 .tok = ident,
2963 .qt = attributed_qt,
3353 .qt = enum_qt,
29643354 .val = .{},
3355 .node = enum_decl,
29653356 });
29663357
2967 try p.decl_buf.append(gpa, try p.addNode(.{ .enum_forward_decl = .{
3358 const decl_node = try p.addNode(.{ .enum_forward_decl = .{
29683359 .name_or_kind_tok = ident,
2969 .container_qt = attributed_qt,
3360 .container_qt = enum_qt,
29703361 .definition = null,
2971 } }));
2972 return attributed_qt;
3362 } });
3363 try p.decl_buf.append(gpa, decl_node);
3364 assert(try p.wip_attrs.applyTypeAttrs(p, enum_qt) == enum_qt);
3365 try p.wip_attrs.applyDeclAttrs(p, decl_node, null);
3366
3367 return enum_qt;
29733368 }
29743369 };
29753370
......@@ -2978,7 +3373,7 @@ fn enumSpec(p: *Parser) Error!QualType {
29783373
29793374 // Get forward declared type or create a new one
29803375 var defined = false;
2981 var enum_ty: Type.Enum, const qt: QualType = blk: {
3376 var enum_ty: Type.Enum, const qt: QualType, const prev_decl: ?Node.Index = blk: {
29823377 const interned_name = if (maybe_ident) |ident| interned: {
29833378 const ident_str = p.tokSlice(ident);
29843379 const interned_name = try p.comp.internString(ident_str);
......@@ -2991,7 +3386,7 @@ fn enumSpec(p: *Parser) Error!QualType {
29913386 } else {
29923387 try p.checkEnumFixedTy(fixed_qt, ident, prev);
29933388 defined = true;
2994 break :blk .{ enum_ty, prev.qt };
3389 break :blk .{ enum_ty, prev.qt, enum_ty.decl_node };
29953390 }
29963391 }
29973392 break :interned interned_name;
......@@ -3001,18 +3396,18 @@ fn enumSpec(p: *Parser) Error!QualType {
30013396 // can be specified after the closing rbrace, which we haven't encountered yet.
30023397 const enum_ty: Type.Enum = .{
30033398 .name = interned_name,
3004 .decl_node = @fromBackingInt(@intCast(reserved_index)),
3399 .decl_node = enum_decl,
30053400 .tag = fixed_qt,
30063401 .incomplete = true,
30073402 .fixed = fixed_qt != null,
30083403 .fields = &.{},
30093404 };
30103405 const enum_qt = try p.comp.type_store.put(gpa, .{ .@"enum" = enum_ty });
3011 break :blk .{ enum_ty, enum_qt };
3406 break :blk .{ enum_ty, enum_qt, null };
30123407 };
30133408
30143409 // reserve space for this enum
3015 try p.decl_buf.append(gpa, @fromBackingInt(@intCast(reserved_index)));
3410 try p.decl_buf.append(gpa, enum_decl);
30163411 const decl_buf_top = p.decl_buf.items.len;
30173412 const list_buf_top = p.list_buf.items.len;
30183413 const enum_buf_top = p.enum_buf.items.len;
......@@ -3033,19 +3428,28 @@ fn enumSpec(p: *Parser) Error!QualType {
30333428 if (p.enum_buf.items.len == enum_buf_top) try p.err(p.tok_i, .empty_enum, .{});
30343429 try p.expectClosing(l_brace, .r_brace);
30353430 done = true;
3431
30363432 try p.attributeSpecifier();
30373433
3038 const attributed_qt = try Attribute.applyTypeAttributes(p, qt, attr_buf_top, null);
3039 if (!enum_ty.fixed) {
3040 enum_ty.tag = try e.getTypeSpecifier(p, attributed_qt.enumIsPacked(p.comp), maybe_ident orelse enum_tok);
3041 }
3434 // Set temporary node to apply attributes to.
3435 try p.tree.setNode(.{ .enum_decl = .{
3436 .name_or_kind_tok = maybe_ident orelse enum_tok,
3437 .container_qt = qt,
3438 .fields = &.{},
3439 } }, reserved_index);
3440 assert(try p.wip_attrs.applyTypeAttrs(p, qt) == qt);
3441 try p.wip_attrs.applyDeclAttrs(p, enum_decl, prev_decl);
30423442
30433443 const enum_fields = p.enum_buf.items[enum_buf_top..];
30443444 const field_nodes = p.list_buf.items[list_buf_top..];
30453445
30463446 if (fixed_qt == null) {
3447 // Set tag type.
3448 const enum_is_packed = p.comp.langopts.short_enums or p.comp.target.packAllEnums() or qt.hasAttribute(&p.tree, .@"packed");
3449 const tag_qt = try e.getTypeSpecifier(p, enum_is_packed, maybe_ident orelse enum_tok);
3450 enum_ty.tag = tag_qt;
3451
30473452 // Coerce all fields to final type.
3048 const tag_qt = enum_ty.tag.?;
30493453 const keep_int = e.num_positive_bits < Type.Int.int.bits(p.comp);
30503454 for (enum_fields, field_nodes) |*field, field_node| {
30513455 const sym = p.syms.get(field.name, .vars) orelse continue;
......@@ -3072,7 +3476,7 @@ fn enumSpec(p: *Parser) Error!QualType {
30723476
30733477 if (new_field_node.enum_field.init) |some| {
30743478 res.node = some;
3075 try res.implicitCast(p, .int_cast, some.tok(&p.tree));
3479 try res.implicitCast(p, .int_cast);
30763480 new_field_node.enum_field.init = res.node;
30773481 }
30783482
......@@ -3083,8 +3487,8 @@ fn enumSpec(p: *Parser) Error!QualType {
30833487 { // Override previous incomplete type
30843488 enum_ty.fields = enum_fields;
30853489 enum_ty.incomplete = false;
3086 enum_ty.decl_node = @fromBackingInt(@intCast(reserved_index));
3087 const base_type = attributed_qt.base(p.comp);
3490 enum_ty.decl_node = enum_decl;
3491 const base_type = qt.base(p.comp);
30883492 std.debug.assert(base_type.type.@"enum".name == enum_ty.name);
30893493 try p.comp.type_store.set(gpa, .{ .@"enum" = enum_ty }, @backingInt(base_type.qt._index));
30903494 }
......@@ -3094,23 +3498,24 @@ fn enumSpec(p: *Parser) Error!QualType {
30943498 try p.syms.define(gpa, .{
30953499 .kind = .@"enum",
30963500 .name = enum_ty.name,
3097 .qt = attributed_qt,
3501 .qt = qt,
30983502 .tok = maybe_ident.?,
30993503 .val = .{},
3504 .node = enum_decl,
31003505 });
31013506 }
31023507
31033508 // finish by creating a node
31043509 try p.tree.setNode(.{ .enum_decl = .{
31053510 .name_or_kind_tok = maybe_ident orelse enum_tok,
3106 .container_qt = attributed_qt,
3511 .container_qt = qt,
31073512 .fields = field_nodes,
31083513 } }, reserved_index);
31093514
31103515 if (p.func.qt == null) {
3111 _ = p.tentative_defs.remove(enum_ty.name);
3516 _ = p.tentative_defs.orderedRemove(.incompleteType(enum_ty.name));
31123517 }
3113 return attributed_qt;
3518 return qt;
31143519}
31153520
31163521fn checkEnumFixedTy(p: *Parser, fixed_qt: ?QualType, ident_tok: TokenIndex, prev: Symbol) !void {
......@@ -3189,7 +3594,7 @@ const Enumerator = struct {
31893594 return error.ParsingFailed;
31903595 }
31913596 res.qt = e.qt;
3192 try res.implicitCast(p, .int_cast, tok);
3597 try res.implicitCast(p, .int_cast);
31933598 e.val = res.val;
31943599 } else {
31953600 try res.castToInt(p, res.qt.promoteInt(p.comp), tok);
......@@ -3213,6 +3618,9 @@ const Enumerator = struct {
32133618 return .int;
32143619 }
32153620 const long_width = Type.Int.long.bits(p.comp);
3621 if (e.num_negative_bits == 24 and e.num_positive_bits < 24 and p.comp.langopts.has_int24) {
3622 return .int24;
3623 }
32163624 if (e.num_negative_bits <= long_width and e.num_positive_bits < long_width) {
32173625 return .long;
32183626 }
......@@ -3228,6 +3636,8 @@ const Enumerator = struct {
32283636 return .ushort;
32293637 } else if (e.num_positive_bits <= int_width) {
32303638 return .uint;
3639 } else if (e.num_positive_bits == 24 and p.comp.langopts.has_int24) {
3640 return .uint24;
32313641 } else if (e.num_positive_bits <= Type.Int.long.bits(p.comp)) {
32323642 return .ulong;
32333643 }
......@@ -3246,8 +3656,10 @@ fn enumerator(p: *Parser, e: *Enumerator) Error!?EnumFieldAndNode {
32463656 p.skipTo(.r_brace);
32473657 return error.ParsingFailed;
32483658 };
3249 const attr_buf_top = p.attr_buf.len;
3250 defer p.attr_buf.len = attr_buf_top;
3659
3660 const attr_state = p.wip_attrs.state(true);
3661 defer p.wip_attrs.restore(attr_state);
3662 // TODO __declspec not allowed here
32513663 try p.attributeSpecifier();
32523664
32533665 const prev_total = p.diagnostics.total;
......@@ -3287,22 +3699,22 @@ fn enumerator(p: *Parser, e: *Enumerator) Error!?EnumFieldAndNode {
32873699 }
32883700 }
32893701
3290 const attributed_qt = try Attribute.applyEnumeratorAttributes(p, e.qt, attr_buf_top);
32913702 const node = try p.addNode(.{
32923703 .enum_field = .{
32933704 .name_tok = name_tok,
3294 .qt = attributed_qt,
3705 .qt = e.qt,
32953706 .init = field_init,
32963707 },
32973708 });
3709 try p.wip_attrs.applyDeclAttrs(p, node, null);
32983710 try p.tree.value_map.put(p.comp.gpa, node, e.val);
32993711
33003712 const interned_name = try p.comp.internString(p.tokSlice(name_tok));
3301 try p.syms.defineEnumeration(p, interned_name, attributed_qt, name_tok, e.val, node);
3713 try p.syms.defineEnumeration(p, interned_name, e.qt, name_tok, e.val, node);
33023714
33033715 return .{ .field = .{
33043716 .name = interned_name,
3305 .qt = attributed_qt,
3717 .qt = e.qt,
33063718 .name_tok = name_tok,
33073719 }, .node = node };
33083720}
......@@ -3361,18 +3773,7 @@ fn typeQual(p: *Parser, b: *TypeStore.Builder, allow_attr: bool) Error!bool {
33613773 } else switch (b.nullability) {
33623774 .none => {
33633775 b.nullability = new;
3364 try p.attr_buf.append(p.comp.gpa, .{
3365 .attr = .{ .tag = .nullability, .args = .{
3366 .nullability = .{ .kind = switch (tok_id) {
3367 .keyword_nonnull => .nonnull,
3368 .keyword_nullable => .nullable,
3369 .keyword_nullable_result => .nullable_result,
3370 .keyword_null_unspecified => .unspecified,
3371 else => unreachable,
3372 } },
3373 }, .syntax = .keyword },
3374 .tok = p.tok_i,
3375 });
3776 try p.wip_attrs.addKeyword(p, p.tok_i, &.{});
33763777 },
33773778 .nonnull,
33783779 .nullable,
......@@ -3405,31 +3806,17 @@ fn msTypeAttribute(p: *Parser) !bool {
34053806 .keyword_cdecl,
34063807 .keyword_cdecl2,
34073808 => {
3408 try p.attr_buf.append(p.comp.gpa, .{
3409 .attr = .{ .tag = .calling_convention, .args = .{
3410 .calling_convention = .{ .cc = switch (p.tok_ids[p.tok_i]) {
3411 .keyword_stdcall,
3412 .keyword_stdcall2,
3413 => .stdcall,
3414 .keyword_thiscall,
3415 .keyword_thiscall2,
3416 => .thiscall,
3417 .keyword_vectorcall,
3418 .keyword_vectorcall2,
3419 => .vectorcall,
3420 .keyword_fastcall,
3421 .keyword_fastcall2,
3422 => .fastcall,
3423 .keyword_regcall,
3424 => .regcall,
3425 .keyword_cdecl,
3426 .keyword_cdecl2,
3427 => .c,
3428 else => unreachable,
3429 } },
3430 }, .syntax = .keyword },
3431 .tok = p.tok_i,
3432 });
3809 try p.wip_attrs.addKeyword(p, p.tok_i, &.{});
3810 any = true;
3811 p.tok_i += 1;
3812 },
3813 .keyword_ptr64,
3814 .keyword_ptr32,
3815 .keyword_sptr,
3816 .keyword_uptr,
3817 => {
3818 try p.err(p.tok_i, .extension_token_used, .{});
3819 try p.wip_attrs.addKeyword(p, p.tok_i, &.{});
34333820 any = true;
34343821 p.tok_i += 1;
34353822 },
......@@ -3446,7 +3833,7 @@ const Declarator = struct {
34463833
34473834 /// What kind of a type did this declarator declare?
34483835 /// Used redundantly with `qt` in case it was set to `.invalid` by `validate`.
3449 declarator_type: enum { other, func, array, pointer } = .other,
3836 declarator_type: enum { other, func, array, pointer, block } = .other,
34503837
34513838 const Kind = enum { normal, abstract, param, record };
34523839
......@@ -3456,7 +3843,7 @@ const Declarator = struct {
34563843 .nested_invalid => if (d.declarator_type == .func) return,
34573844 .nested_auto => {
34583845 if (d.declarator_type == .func) return;
3459 if (d.qt.isAutoType() or d.qt.isC23Auto()) return;
3846 if (d.qt.isAuto()) return;
34603847 },
34613848 .declarator_combine => return,
34623849 }
......@@ -3472,8 +3859,7 @@ const Declarator = struct {
34723859
34733860 fn validateExtra(p: *Parser, cur: QualType, source_tok: TokenIndex) Parser.Error!ValidationResult {
34743861 if (cur.isInvalid()) return .nested_invalid;
3475 if (cur.isAutoType()) return .nested_auto;
3476 if (cur.isC23Auto()) return .nested_auto;
3862 if (cur.isAuto()) return .nested_auto;
34773863 if (cur._index == .declarator_combine) return .declarator_combine;
34783864
34793865 switch (cur.type(p.comp)) {
......@@ -3512,9 +3898,17 @@ const Declarator = struct {
35123898 if (elem_array_ty.len == .static) {
35133899 try p.err(source_tok, .static_non_outermost_array, .{});
35143900 }
3515 if (elem_qt.isQualified()) {
3901 if (elem_qt.isQualified() and elem_qt.type(p.comp) != .typedef) {
35163902 try p.err(source_tok, .qualifier_non_outermost_array, .{});
35173903 }
3904 } else if (p.comp.langopts.emulate != .msvc) {
3905 if (elem_qt.sizeofOrNull(p.comp)) |elem_size| {
3906 const elem_align = elem_qt.alignof(p.comp);
3907 if (elem_size % elem_align != 0) {
3908 try p.err(source_tok, .array_elem_size_not_multiple, .{ elem_qt, elem_size, elem_align });
3909 return .nested_invalid;
3910 }
3911 }
35183912 }
35193913 return .normal;
35203914 },
......@@ -3538,14 +3932,23 @@ const Declarator = struct {
35383932 }
35393933 return .normal;
35403934 },
3935 .block => |block_ty| {
3936 const func_qt = block_ty.func;
3937 const child_res = try validateExtra(p, func_qt, source_tok);
3938 if (child_res != .normal) return child_res;
3939 if (!func_qt.is(p.comp, .func)) {
3940 try p.err(source_tok, .block_to_non_function, .{});
3941 return .nested_invalid;
3942 }
3943 return .normal;
3944 },
35413945 else => return .normal,
35423946 }
35433947 }
35443948};
35453949
3546/// declarator : pointer? (IDENTIFIER | '(' declarator ')') directDeclarator*
3547/// abstractDeclarator
3548/// : pointer? ('(' abstractDeclarator ')')? directAbstractDeclarator*
3950/// declarator : '^'? pointer? (IDENTIFIER | '(' declarator ')') directDeclarator*
3951/// abstractDeclarator : '^'? pointer? ('(' abstractDeclarator ')')? directAbstractDeclarator*
35493952/// pointer : '*' typeQual* pointer?
35503953fn declarator(
35513954 p: *Parser,
......@@ -3555,21 +3958,43 @@ fn declarator(
35553958 var d = Declarator{ .name = 0, .qt = base_qt };
35563959
35573960 // Parse potential pointer declarators first.
3558 while (p.eatToken(.asterisk)) |_| {
3559 d.declarator_type = .pointer;
3560 var builder: TypeStore.Builder = .{ .parser = p };
3561 _ = try p.typeQual(&builder, true);
3961 while (true) switch (p.tok_ids[p.tok_i]) {
3962 .caret => {
3963 const caret = p.tok_i;
3964 p.tok_i += 1;
3965 d.qt = try p.wip_attrs.applyTypeAttrs(p, d.qt);
3966 if (!p.comp.langopts.blocks) try p.err(caret, .blocks_not_enabled, .{});
3967 try p.err(caret, .blocks_are_clang_extension, .{});
35623968
3563 const pointer_qt = try p.comp.type_store.put(p.comp.gpa, .{ .pointer = .{
3564 .child = d.qt,
3565 } });
3566 d.qt = try builder.finishQuals(pointer_qt);
3567 }
3969 d.declarator_type = .block;
3970 var builder: TypeStore.Builder = .{ .parser = p };
3971 _ = try p.typeQual(&builder, true);
3972
3973 const block_qt = try p.comp.type_store.put(p.comp.gpa, .{ .block = .{
3974 .func = d.qt,
3975 } });
3976 d.qt = try builder.finishQuals(block_qt);
3977 },
3978 .asterisk => {
3979 p.tok_i += 1;
3980 d.qt = try p.wip_attrs.applyTypeAttrs(p, d.qt);
3981 d.declarator_type = .pointer;
3982 var builder: TypeStore.Builder = .{ .parser = p };
3983 _ = try p.typeQual(&builder, true);
3984
3985 const pointer_qt = try p.comp.type_store.put(p.comp.gpa, .{ .pointer = .{
3986 .child = d.qt,
3987 } });
3988 d.qt = try builder.finishQuals(pointer_qt);
3989 },
3990 else => break,
3991 };
35683992
35693993 const maybe_ident = p.tok_i;
35703994 if (kind != .abstract and (try p.eatIdentifier()) != null) {
35713995 d.name = maybe_ident;
35723996 const combine_tok = p.tok_i;
3997 d.qt = try p.wip_attrs.applyTypeAttrs(p, d.qt);
35733998 d.qt = try p.directDeclarator(&d, kind);
35743999 try d.validate(p, combine_tok);
35754000 return d;
......@@ -3580,6 +4005,7 @@ fn declarator(
35804005 // Parse Microsoft keyword type attributes.
35814006 _ = try p.msTypeAttribute();
35824007
4008 d.qt = try p.wip_attrs.applyTypeAttrs(p, d.qt);
35834009 const special_marker: QualType = .{ ._index = .declarator_combine };
35844010 var res = (try p.declarator(special_marker, kind)) orelse {
35854011 p.tok_i = l_paren;
......@@ -3616,6 +4042,10 @@ fn declarator(
36164042 cur = func_ty.return_type;
36174043 continue;
36184044 },
4045 .block => |block_ty| if (block_ty.func._index != .declarator_combine) {
4046 cur = block_ty.func;
4047 continue;
4048 },
36194049 else => unreachable,
36204050 }
36214051 // Child type is always stored in repr.data[0]
......@@ -3640,7 +4070,6 @@ fn declarator(
36404070 switch (cur.type(p.comp)) {
36414071 .typeof => |typeof_ty| cur = typeof_ty.base,
36424072 .typedef => |typedef_ty| cur = typedef_ty.base,
3643 .attributed => |attributed_ty| cur = attributed_ty.base,
36444073 else => |ty| switch (ty) {
36454074 .@"enum", .@"struct", .@"union" => break,
36464075 else => {
......@@ -3678,15 +4107,8 @@ fn directDeclarator(
36784107 if (p.eatToken(.l_bracket)) |l_bracket| {
36794108 // Check for C23 attribute
36804109 if (p.tok_ids[p.tok_i] == .l_bracket) {
3681 switch (kind) {
3682 .normal, .record => if (p.comp.langopts.standard.atLeast(.c23)) {
3683 p.tok_i -= 1;
3684 return base_declarator.qt;
3685 },
3686 .param, .abstract => {},
3687 }
3688 try p.err(p.tok_i, .expected_expr, .{});
3689 return error.ParsingFailed;
4110 p.tok_i -= 1;
4111 return base_declarator.qt;
36904112 }
36914113
36924114 var builder: TypeStore.Builder = .{ .parser = p };
......@@ -3819,12 +4241,18 @@ fn directDeclarator(
38194241 while (true) {
38204242 const name_tok = try p.expectIdentifier();
38214243 const interned_name = try p.comp.internString(p.tokSlice(name_tok));
3822 try p.syms.defineParam(p, interned_name, undefined, name_tok, null);
4244 const param_node = try p.addNode(.{ .param = .{
4245 .name_tok = name_tok,
4246 .qt = .int,
4247 .storage_class = .auto,
4248 } });
4249 try p.syms.defineParam(p, interned_name, undefined, name_tok, param_node);
4250 try p.addMaybeUnusued(param_node);
38234251 try p.param_buf.append(gpa, .{
38244252 .name = interned_name,
38254253 .name_tok = name_tok,
38264254 .qt = .int,
3827 .node = .null,
4255 .node = .pack(param_node),
38284256 });
38294257 if (p.eatToken(.comma) == null) break;
38304258 }
......@@ -3856,8 +4284,10 @@ fn paramDecls(p: *Parser) Error!?[]Type.Func.Param {
38564284 const gpa = p.comp.gpa;
38574285
38584286 while (true) {
3859 const attr_buf_top = p.attr_buf.len;
3860 defer p.attr_buf.len = attr_buf_top;
4287 const first_tok = p.tok_i;
4288 const param_attr_state = p.wip_attrs.state(true);
4289 defer p.wip_attrs.restore(param_attr_state);
4290
38614291 const param_decl_spec = if (try p.declSpec()) |some|
38624292 some
38634293 else if (p.comp.langopts.standard.atLeast(.c23) and
......@@ -3886,7 +4316,6 @@ fn paramDecls(p: *Parser) Error!?[]Type.Func.Param {
38864316
38874317 var name_tok: TokenIndex = 0;
38884318 var interned_name: StringId = .empty;
3889 const first_tok = p.tok_i;
38904319 var param_qt = param_decl_spec.qt;
38914320 if (param_decl_spec.auto_type) |tok_i| {
38924321 try p.err(tok_i, .auto_type_not_allowed, .{"function prototype"});
......@@ -3901,8 +4330,9 @@ fn paramDecls(p: *Parser) Error!?[]Type.Func.Param {
39014330 if (some.old_style_func) |tok_i| try p.err(tok_i, .invalid_old_style_params, .{});
39024331 try p.attributeSpecifier();
39034332 name_tok = some.name;
3904 param_qt = some.qt;
4333 param_qt = try p.wip_attrs.applyTypeAttrs(p, some.qt);
39054334 }
4335 const param_tok = if (name_tok != 0) name_tok else first_tok;
39064336
39074337 if (param_qt.is(p.comp, .void)) {
39084338 // validate void parameters
......@@ -3919,39 +4349,41 @@ fn paramDecls(p: *Parser) Error!?[]Type.Func.Param {
39194349 } else {
39204350 // Decay params declared as functions or arrays to pointer.
39214351 param_qt = try param_qt.decay(p.comp);
4352 // Apply potential nullability attributes.
4353 param_qt = try p.wip_attrs.applyTypeAttrs(p, param_qt);
39224354 }
39234355 try param_decl_spec.validateParam(p);
3924 param_qt = try Attribute.applyParameterAttributes(p, param_qt, attr_buf_top, .alignas_on_param);
39254356
39264357 if (param_qt.get(p.comp, .float)) |float| {
39274358 if (float == .fp16 and !p.comp.hasHalfPrecisionFloatABI()) {
3928 try p.err(first_tok, .suggest_pointer_for_invalid_fp16, .{"parameters"});
4359 try p.err(param_tok, .suggest_pointer_for_invalid_fp16, .{"parameters"});
39294360 }
39304361 }
39314362
3932 var param_node: Node.OptIndex = .null;
3933 if (name_tok != 0) {
3934 const node = try p.addNode(.{
3935 .param = .{
3936 .name_tok = name_tok,
3937 .qt = param_qt,
3938 .storage_class = switch (param_decl_spec.storage_class) {
3939 .none => .auto,
3940 .register => .register,
3941 else => .auto, // Error reported in `validateParam`
3942 },
4363 const param_node = try p.addNode(.{
4364 .param = .{
4365 .name_tok = param_tok,
4366 .qt = param_qt,
4367 .storage_class = switch (param_decl_spec.storage_class) {
4368 .none => .auto,
4369 .register => .register,
4370 else => .auto, // Error reported in `validateParam`
39434371 },
3944 });
3945 param_node = .pack(node);
4372 },
4373 });
4374 try p.wip_attrs.applyDeclAttrs(p, param_node, null);
4375 try p.addMaybeUnusued(param_node);
4376
4377 if (name_tok != 0) {
39464378 interned_name = try p.comp.internString(p.tokSlice(name_tok));
3947 try p.syms.defineParam(p, interned_name, param_qt, name_tok, node);
4379 try p.syms.defineParam(p, interned_name, param_qt, name_tok, param_node);
39484380 }
39494381
39504382 try p.param_buf.append(gpa, .{
39514383 .name = interned_name,
3952 .name_tok = if (name_tok == 0) first_tok else name_tok,
4384 .name_tok = param_tok,
39534385 .qt = param_qt,
3954 .node = param_node,
4386 .node = .pack(param_node),
39554387 });
39564388
39574389 if (p.eatToken(.comma) == null) break;
......@@ -3962,14 +4394,30 @@ fn paramDecls(p: *Parser) Error!?[]Type.Func.Param {
39624394
39634395/// typeName : specQual abstractDeclarator
39644396fn typeName(p: *Parser) Error!?QualType {
3965 const attr_buf_top = p.attr_buf.len;
3966 defer p.attr_buf.len = attr_buf_top;
3967 const ty = (try p.specQual()) orelse return null;
3968 if (try p.declarator(ty, .abstract)) |some| {
3969 if (some.old_style_func) |tok_i| try p.err(tok_i, .invalid_old_style_params, .{});
3970 return try Attribute.applyTypeAttributes(p, some.qt, attr_buf_top, .align_ignored);
4397 return p.typeNameExtra(true);
4398}
4399
4400fn expectTypeName(p: *Parser, closing: Token.Id) Error!QualType {
4401 return (try p.typeNameExtra(false)) orelse {
4402 try p.err(p.tok_i, .expected_type, .{});
4403 p.skipTo(closing);
4404 p.tok_i -= 1;
4405 return .invalid;
4406 };
4407}
4408
4409fn typeNameExtra(p: *Parser, start_with_type_spec: bool) Error!?QualType {
4410 const attr_state = p.wip_attrs.state(true);
4411 defer p.wip_attrs.restore(attr_state);
4412
4413 var qt = (try p.specQual(start_with_type_spec)) orelse return null;
4414 qt = try p.wip_attrs.applyTypeAttrs(p, qt);
4415 if (try p.declarator(qt, .abstract)) |abstract_d| {
4416 if (abstract_d.old_style_func) |tok_i| try p.err(tok_i, .invalid_old_style_params, .{});
4417 qt = try p.wip_attrs.applyTypeAttrs(p, abstract_d.qt);
39714418 }
3972 return try Attribute.applyTypeAttributes(p, ty, attr_buf_top, .align_ignored);
4419 try p.diagnoseIgnoredAttrs();
4420 return qt;
39734421}
39744422
39754423/// initializer
......@@ -4036,7 +4484,7 @@ fn initializerItem(p: *Parser, il: *InitList, init_qt: QualType, l_brace: TokenI
40364484 errdefer p.skipTo(.r_brace);
40374485
40384486 const designated = try p.designation(il, init_qt, &index_list);
4039 if (!designated and init_qt.hasAttribute(p.comp, .designated_init)) {
4487 if (!designated and init_qt.hasAttribute(&p.tree, .designated_init)) {
40404488 try p.err(p.tok_i, .designated_init_needed, .{});
40414489 }
40424490
......@@ -4213,7 +4661,12 @@ fn findScalarInitializer(
42134661 warned_excess.* = true;
42144662 return true;
42154663 }
4216 if (res.qt.eql(qt, p.comp) and il.list.items.len == 0) {
4664 const is_direct_complex_init = index_list_top == 0;
4665 const is_last_init_item = p.tok_ids[p.tok_i] == .r_brace or
4666 (p.tok_ids[p.tok_i] == .comma and p.tok_ids[p.tok_i + 1] == .r_brace);
4667 const last_is_complex = is_last_init_item and res.qt.is(p.comp, .complex);
4668 const can_init_whole_complex = il.list.items.len == 0 and (!is_direct_complex_init or last_is_complex);
4669 if (can_init_whole_complex) {
42174670 try p.setInitializer(il, qt, first_tok, res);
42184671 return true;
42194672 }
......@@ -4526,11 +4979,11 @@ fn coerceInit(p: *Parser, item: *Result, tok: TokenIndex, target: QualType) !voi
45264979 if (target.isInvalid()) return;
45274980
45284981 const node = item.node;
4529 if (target.isAutoType() or target.isC23Auto()) {
4982 if (target.isAuto()) {
45304983 if (p.getNode(node, .member_access_expr) orelse p.getNode(node, .member_access_ptr_expr)) |access| {
45314984 if (access.isBitFieldWidth(&p.tree) != null) try p.err(tok, .auto_type_from_bitfield, .{});
45324985 }
4533 try item.lvalConversion(p, tok);
4986 try item.lvalConversion(p);
45344987 return;
45354988 }
45364989
......@@ -4795,13 +5248,12 @@ fn asmOperand(p: *Parser, kind: enum { output, input }) Error!Tree.Node.AsmStmt.
47955248 try p.err(p.tok_i, .expected_token, .{ p.tok_ids[p.tok_i], Token.Id.l_paren });
47965249 return error.ParsingFailed;
47975250 };
4798 const maybe_res = try p.expr();
5251 var res = try p.expectWithClosing(expr, .r_paren);
47995252 try p.expectClosing(l_paren, .r_paren);
4800 var res = try p.expectResult(maybe_res);
48015253 if (kind == .output and !p.tree.isLval(res.node)) {
48025254 try p.err(l_paren + 1, .invalid_asm_output, .{});
48035255 } else if (kind == .input) {
4804 try res.lvalConversion(p, l_paren + 1);
5256 try res.lvalConversion(p);
48055257 }
48065258 return .{
48075259 .name = name,
......@@ -4922,14 +5374,12 @@ fn gnuAsmStmt(p: *Parser, quals: Tree.GNUAssemblyQualifiers, asm_tok: TokenIndex
49225374 return error.ParsingFailed;
49235375 };
49245376 const ident_str = p.tokSlice(ident);
4925 const label = p.findLabel(ident_str) orelse blk: {
5377 _ = p.findLabel(ident_str) orelse
49265378 try p.labels.append(gpa, .{ .unresolved_goto = ident });
4927 break :blk ident;
4928 };
49295379
49305380 const label_addr_node = try p.addNode(.{
49315381 .addr_of_label = .{
4932 .label_tok = label,
5382 .label_tok = ident,
49335383 .qt = .void_pointer,
49345384 },
49355385 });
......@@ -5009,10 +5459,9 @@ fn assembly(p: *Parser, kind: enum { global, decl_label, stmt }) Error!?Node.Ind
50095459 const res = switch (kind) {
50105460 .decl_label => blk: {
50115461 const asm_str = try p.asmStr();
5012 const str = try p.removeNull(asm_str.val);
5462 // const str = try p.removeNull(asm_str.val);
50135463
5014 const attr = Attribute{ .tag = .asm_label, .args = .{ .asm_label = .{ .name = str } }, .syntax = .keyword };
5015 try p.attr_buf.append(p.comp.gpa, .{ .attr = attr, .tok = asm_tok });
5464 try p.wip_attrs.addKeyword(p, asm_tok, &.{asm_str});
50165465 break :blk asm_str.node;
50175466 },
50185467 .global => blk: {
......@@ -5073,7 +5522,20 @@ fn asmStr(p: *Parser) Error!Result {
50735522/// | keyword_return expr? ';'
50745523/// | assembly ';'
50755524/// | expr? ';'
5076fn stmt(p: *Parser) Error!Node.Index {
5525fn stmt(p: *Parser, check_unused: bool) Error!Node.Index {
5526 const bare_stmt = blk: {
5527 const attr_state = p.wip_attrs.state(true);
5528 defer p.wip_attrs.restore(attr_state);
5529
5530 try p.attributeSpecifier();
5531
5532 break :blk try p.attributedStmt(check_unused);
5533 };
5534 try p.wip_attrs.applyStmtAttrs(p, bare_stmt);
5535 return bare_stmt;
5536}
5537
5538fn attributedStmt(p: *Parser, check_unused: bool) Error!Node.Index {
50775539 if (try p.labeledStmt()) |some| return some;
50785540 if (try p.compoundStmt(false, null)) |some| return some;
50795541 const gpa = p.comp.gpa;
......@@ -5082,7 +5544,7 @@ fn stmt(p: *Parser) Error!Node.Index {
50825544
50835545 const cond_tok = p.tok_i;
50845546 var cond = try p.expect(expr);
5085 try cond.lvalConversion(p, cond_tok);
5547 try cond.lvalConversion(p);
50865548 try cond.usualUnaryConversion(p, cond_tok);
50875549 if (!cond.qt.isInvalid() and cond.qt.scalarKind(p.comp) == .none)
50885550 try p.err(l_paren + 1, .statement_scalar, .{cond.qt});
......@@ -5090,8 +5552,8 @@ fn stmt(p: *Parser) Error!Node.Index {
50905552
50915553 try p.expectClosing(l_paren, .r_paren);
50925554
5093 const then_body = try p.stmt();
5094 const else_body = if (p.eatToken(.keyword_else)) |_| try p.stmt() else null;
5555 const then_body = try p.stmt(true);
5556 const else_body = if (p.eatToken(.keyword_else)) |_| try p.stmt(true) else null;
50955557
50965558 if (p.nodeIs(then_body, .null_stmt) and else_body == null) {
50975559 const semicolon_tok = then_body.get(&p.tree).null_stmt.semicolon_or_r_brace_tok;
......@@ -5115,7 +5577,7 @@ fn stmt(p: *Parser) Error!Node.Index {
51155577 const l_paren = try p.expectToken(.l_paren);
51165578 const cond_tok = p.tok_i;
51175579 var cond = try p.expect(expr);
5118 try cond.lvalConversion(p, cond_tok);
5580 try cond.lvalConversion(p);
51195581 try cond.usualUnaryConversion(p, cond_tok);
51205582
51215583 // Switch condition can't be complex.
......@@ -5137,7 +5599,7 @@ fn stmt(p: *Parser) Error!Node.Index {
51375599 p.@"switch" = old_switch;
51385600 }
51395601
5140 const body = try p.stmt();
5602 const body = try p.stmt(true);
51415603
51425604 return p.addNode(.{ .switch_stmt = .{
51435605 .switch_tok = kw_switch,
......@@ -5150,7 +5612,7 @@ fn stmt(p: *Parser) Error!Node.Index {
51505612
51515613 const cond_tok = p.tok_i;
51525614 var cond = try p.expect(expr);
5153 try cond.lvalConversion(p, cond_tok);
5615 try cond.lvalConversion(p);
51545616 try cond.usualUnaryConversion(p, cond_tok);
51555617 if (!cond.qt.isInvalid() and cond.qt.scalarKind(p.comp) == .none)
51565618 try p.err(l_paren + 1, .statement_scalar, .{cond.qt});
......@@ -5162,7 +5624,7 @@ fn stmt(p: *Parser) Error!Node.Index {
51625624 const old_loop = p.in_loop;
51635625 p.in_loop = true;
51645626 defer p.in_loop = old_loop;
5165 break :body try p.stmt();
5627 break :body try p.stmt(true);
51665628 };
51675629
51685630 return p.addNode(.{ .while_stmt = .{
......@@ -5176,7 +5638,7 @@ fn stmt(p: *Parser) Error!Node.Index {
51765638 const old_loop = p.in_loop;
51775639 p.in_loop = true;
51785640 defer p.in_loop = old_loop;
5179 break :body try p.stmt();
5641 break :body try p.stmt(true);
51805642 };
51815643
51825644 _ = try p.expectToken(.keyword_while);
......@@ -5184,7 +5646,7 @@ fn stmt(p: *Parser) Error!Node.Index {
51845646
51855647 const cond_tok = p.tok_i;
51865648 var cond = try p.expect(expr);
5187 try cond.lvalConversion(p, cond_tok);
5649 try cond.lvalConversion(p);
51885650 try cond.usualUnaryConversion(p, cond_tok);
51895651
51905652 if (!cond.qt.isInvalid() and cond.qt.scalarKind(p.comp) == .none)
......@@ -5207,27 +5669,26 @@ fn stmt(p: *Parser) Error!Node.Index {
52075669 defer p.decl_buf.items.len = decl_buf_top;
52085670
52095671 const l_paren = try p.expectToken(.l_paren);
5210 const got_decl = try p.decl();
52115672
52125673 // for (init
5213 const init_start = p.tok_i;
5214 var prev_total = p.diagnostics.total;
5674 var prev_errors = p.diagnostics.errors;
52155675 const init = init: {
5216 if (got_decl) break :init null;
5217 var init = (try p.expr()) orelse break :init null;
5676 if (try p.declStmt()) |decl_stmt| break :init decl_stmt;
5677 const opt_init = try p.expr();
5678 _ = try p.expectToken(.semicolon);
5679 var init = opt_init orelse break :init null;
52185680
52195681 try init.saveValue(p);
5220 try init.maybeWarnUnused(p, init_start, prev_total);
5682 try p.diagnoseUnusedValue(init.node, prev_errors);
52215683 break :init init.node;
52225684 };
5223 if (!got_decl) _ = try p.expectToken(.semicolon);
52245685
52255686 // for (init; cond
52265687 const cond = cond: {
52275688 const cond_tok = p.tok_i;
52285689 var cond = (try p.expr()) orelse break :cond null;
52295690
5230 try cond.lvalConversion(p, cond_tok);
5691 try cond.lvalConversion(p);
52315692 try cond.usualUnaryConversion(p, cond_tok);
52325693 if (!cond.qt.isInvalid() and cond.qt.scalarKind(p.comp) == .none)
52335694 try p.err(l_paren + 1, .statement_scalar, .{cond.qt});
......@@ -5237,12 +5698,11 @@ fn stmt(p: *Parser) Error!Node.Index {
52375698 _ = try p.expectToken(.semicolon);
52385699
52395700 // for (init; cond; incr
5240 const incr_start = p.tok_i;
5241 prev_total = p.diagnostics.total;
5701 prev_errors = p.diagnostics.errors;
52425702 const incr = incr: {
52435703 var incr = (try p.expr()) orelse break :incr null;
52445704
5245 try incr.maybeWarnUnused(p, incr_start, prev_total);
5705 try p.diagnoseUnusedValue(incr.node, prev_errors);
52465706 try incr.saveValue(p);
52475707 break :incr incr.node;
52485708 };
......@@ -5252,15 +5712,12 @@ fn stmt(p: *Parser) Error!Node.Index {
52525712 const old_loop = p.in_loop;
52535713 p.in_loop = true;
52545714 defer p.in_loop = old_loop;
5255 break :body try p.stmt();
5715 break :body try p.stmt(true);
52565716 };
52575717
52585718 return p.addNode(.{ .for_stmt = .{
52595719 .for_tok = kw_for,
5260 .init = if (decl_buf_top == p.decl_buf.items.len)
5261 .{ .expr = init }
5262 else
5263 .{ .decls = p.decl_buf.items[decl_buf_top..] },
5720 .init = init,
52645721 .cond = cond,
52655722 .incr = incr,
52665723 .body = body,
......@@ -5270,7 +5727,7 @@ fn stmt(p: *Parser) Error!Node.Index {
52705727 if (p.eatToken(.asterisk)) |_| {
52715728 const expr_tok = p.tok_i;
52725729 var goto_expr = try p.expect(expr);
5273 try goto_expr.lvalConversion(p, expr_tok);
5730 try goto_expr.lvalConversion(p);
52745731 p.computed_goto_tok = p.computed_goto_tok orelse goto_tok;
52755732
52765733 if (!goto_expr.qt.isInvalid() and !goto_expr.qt.isPointer(p.comp)) {
......@@ -5282,10 +5739,10 @@ fn stmt(p: *Parser) Error!Node.Index {
52825739 return error.ParsingFailed;
52835740 }
52845741 if (goto_expr.val.isZero(p.comp)) {
5285 try goto_expr.nullToPointer(p, result_qt, expr_tok);
5742 try goto_expr.nullToPointer(p, result_qt);
52865743 } else {
52875744 try p.err(expr_tok, .implicit_int_to_ptr, .{ goto_expr.qt, result_qt });
5288 try goto_expr.castToPointer(p, result_qt, expr_tok);
5745 try goto_expr.castToPointer(p, result_qt);
52895746 }
52905747 }
52915748
......@@ -5312,23 +5769,17 @@ fn stmt(p: *Parser) Error!Node.Index {
53125769 if (try p.returnStmt()) |some| return some;
53135770 if (try p.assembly(.stmt)) |some| return some;
53145771
5315 const expr_start = p.tok_i;
5316 const prev_total = p.diagnostics.total;
5317
5772 const prev_errors = p.diagnostics.errors;
53185773 if (try p.expr()) |some| {
53195774 _ = try p.expectToken(.semicolon);
5320 try some.maybeWarnUnused(p, expr_start, prev_total);
5775 if (check_unused) try p.diagnoseUnusedValue(some.node, prev_errors);
5776 try some.putValue(p);
53215777 return some.node;
53225778 }
53235779
5324 const attr_buf_top = p.attr_buf.len;
5325 defer p.attr_buf.len = attr_buf_top;
5326 try p.attributeSpecifier();
5327
53285780 if (p.eatToken(.semicolon)) |semicolon| {
53295781 return p.addNode(.{ .null_stmt = .{
53305782 .semicolon_or_r_brace_tok = semicolon,
5331 .qt = try Attribute.applyStatementAttributes(p, expr_start, attr_buf_top),
53325783 } });
53335784 }
53345785
......@@ -5336,6 +5787,19 @@ fn stmt(p: *Parser) Error!Node.Index {
53365787 return error.ParsingFailed;
53375788}
53385789
5790fn declStmt(p: *Parser) Error!?Node.Index {
5791 const decl_buf_top = p.decl_buf.items.len;
5792 defer p.decl_buf.items.len = decl_buf_top;
5793 const first = p.tok_i;
5794 if (try p.decl()) {
5795 return try p.addNode(.{ .decl_stmt = .{
5796 .decls = p.decl_buf.items[decl_buf_top..],
5797 .first_tok = first,
5798 } });
5799 }
5800 return null;
5801}
5802
53395803/// labeledStmt
53405804/// : IDENTIFIER ':' stmt
53415805/// | keyword_case integerConstExpr ':' stmt
......@@ -5344,32 +5808,53 @@ fn labeledStmt(p: *Parser) Error!?Node.Index {
53445808 if ((p.tok_ids[p.tok_i] == .identifier or p.tok_ids[p.tok_i] == .extended_identifier) and p.tok_ids[p.tok_i + 1] == .colon) {
53455809 const name_tok = try p.expectIdentifier();
53465810 const str = p.tokSlice(name_tok);
5811 p.tok_i += 1; // colon
5812
5813 var node: Tree.Node = .{ .labeled_stmt = .{
5814 .body = undefined,
5815 .label_tok = name_tok,
5816 } };
5817 const labeled_stmt = try p.addNode(node);
5818
5819 // Any gnu attributes between the label and the body statement apply to
5820 // this labeled statement rather than that body statement.
5821 const attr_tok = p.tok_i;
5822 {
5823 const attr_state = p.wip_attrs.state(true);
5824 defer p.wip_attrs.restore(attr_state);
5825
5826 while (try p.gnuAttribute()) {}
5827 try p.wip_attrs.applyStmtAttrs(p, labeled_stmt);
5828 }
5829 const applied_any = p.wip_attrs.applied.items.len != 0;
5830
53475831 if (p.findLabel(str)) |some| {
53485832 try p.err(name_tok, .duplicate_label, .{str});
53495833 try p.err(some, .previous_label, .{str});
53505834 } else {
53515835 p.label_count += 1;
5352 try p.labels.append(p.comp.gpa, .{ .label = name_tok });
5836 try p.labels.append(p.comp.gpa, .{ .label = labeled_stmt });
53535837 var i: usize = 0;
5838 var any_unresolved = false;
53545839 while (i < p.labels.items.len) {
53555840 if (p.labels.items[i] == .unresolved_goto and
53565841 mem.eql(u8, p.tokSlice(p.labels.items[i].unresolved_goto), str))
53575842 {
5843 any_unresolved = true;
53585844 _ = p.labels.swapRemove(i);
53595845 } else i += 1;
53605846 }
5847 if (!any_unresolved) try p.addMaybeUnusued(labeled_stmt);
53615848 }
53625849
5363 p.tok_i += 1;
5364 const attr_buf_top = p.attr_buf.len;
5365 defer p.attr_buf.len = attr_buf_top;
5366 try p.attributeSpecifier();
5850 node.labeled_stmt.body = try p.labelableStmt();
5851 try p.tree.setNode(node, @backingInt(labeled_stmt));
53675852
5368 return try p.addNode(.{ .labeled_stmt = .{
5369 .qt = try Attribute.applyLabelAttributes(p, attr_buf_top),
5370 .body = try p.labelableStmt(),
5371 .label_tok = name_tok,
5372 } });
5853 if (applied_any and node.labeled_stmt.body.get(&p.tree) == .decl_stmt) {
5854 try p.err(attr_tok, .gnu_label_attr, .{});
5855 }
5856
5857 return labeled_stmt;
53735858 } else if (p.eatToken(.keyword_case)) |case| {
53745859 var first_item = try p.integerConstExpr(.gnu_folding_extension);
53755860 const ellipsis = p.tok_i;
......@@ -5445,19 +5930,18 @@ fn labelableStmt(p: *Parser) Error!Node.Index {
54455930 try p.err(p.tok_i, .label_compound_end, .{});
54465931 return p.addNode(.{ .null_stmt = .{
54475932 .semicolon_or_r_brace_tok = p.tok_i,
5448 .qt = .void,
54495933 } });
54505934 }
5451 return p.stmt();
5935 const start = p.tok_i;
5936 if (try p.declStmt()) |decl_stmt| {
5937 try p.err(start, .label_decl, .{});
5938 return decl_stmt;
5939 }
5940 return p.stmt(true);
54525941}
54535942
5454const StmtExprState = struct {
5455 last_expr_tok: TokenIndex = 0,
5456 last_expr_qt: QualType = .void,
5457};
5458
54595943/// compoundStmt : '{' ( decl | keyword_extension decl | staticAssert | stmt)* '}'
5460fn compoundStmt(p: *Parser, is_fn_body: bool, stmt_expr_state: ?*StmtExprState) Error!?Node.Index {
5944fn compoundStmt(p: *Parser, is_fn_body: bool, stmt_expr_state: ?*?Node.Index) Error!?Node.Index {
54615945 const l_brace = p.eatToken(.l_brace) orelse return null;
54625946
54635947 const gpa = p.comp.gpa;
......@@ -5470,10 +5954,20 @@ fn compoundStmt(p: *Parser, is_fn_body: bool, stmt_expr_state: ?*StmtExprState)
54705954
54715955 var noreturn_index: ?TokenIndex = null;
54725956 var noreturn_label_count: u32 = 0;
5957 var prev_errors = p.diagnostics.errors;
54735958
54745959 while (p.eatToken(.r_brace) == null) : (_ = try p.pragma()) {
5475 if (stmt_expr_state) |state| state.* = .{};
5960 const attr_state = p.wip_attrs.state(true);
5961 defer p.wip_attrs.restore(attr_state);
5962 try p.attributeSpecifier();
5963
5964 if (stmt_expr_state) |opt_node| {
5965 if (opt_node.*) |node| try p.diagnoseUnusedValue(node, prev_errors);
5966 opt_node.* = null;
5967 }
5968 prev_errors = p.diagnostics.errors;
54765969 if (try p.parseOrNextStmt(staticAssert, l_brace)) continue;
5970 // TODO use declStmt?
54775971 if (try p.parseOrNextStmt(decl, l_brace)) continue;
54785972 if (p.eatToken(.keyword_extension)) |ext| {
54795973 const saved_extension = p.extension_suppressed;
......@@ -5483,19 +5977,15 @@ fn compoundStmt(p: *Parser, is_fn_body: bool, stmt_expr_state: ?*StmtExprState)
54835977 if (try p.parseOrNextStmt(decl, l_brace)) continue;
54845978 p.tok_i = ext;
54855979 }
5486 const stmt_tok = p.tok_i;
5487 const s = p.stmt() catch |er| switch (er) {
5980 const s = p.stmt(stmt_expr_state == null) catch |er| switch (er) {
54885981 error.ParsingFailed => {
54895982 try p.nextStmt(l_brace);
54905983 continue;
54915984 },
54925985 else => |e| return e,
54935986 };
5494 if (stmt_expr_state) |state| {
5495 state.* = .{
5496 .last_expr_tok = stmt_tok,
5497 .last_expr_qt = s.qt(&p.tree),
5498 };
5987 if (stmt_expr_state) |opt_node| {
5988 opt_node.* = s;
54995989 }
55005990 try p.decl_buf.append(gpa, s);
55015991
......@@ -5564,8 +6054,7 @@ fn pointerValue(p: *Parser, node: Node.Index, offset: Value) !Value {
55646054 .decl_ref_expr => |decl_ref| {
55656055 const var_name = try p.comp.internString(p.tokSlice(decl_ref.name_tok));
55666056 const sym = p.syms.findSymbol(var_name) orelse return .{};
5567 const sym_node = sym.node.unpack() orelse return .{};
5568 return Value.pointer(.{ .node = @backingInt(sym_node), .offset = offset.ref() }, p.comp);
6057 return Value.pointer(.{ .node = @backingInt(sym.node), .offset = offset.ref() }, p.comp);
55696058 },
55706059 .string_literal_expr => return p.tree.value_map.get(node).?,
55716060 else => return .{},
......@@ -5598,6 +6087,7 @@ fn nodeIsNoreturn(p: *Parser, node: Node.Index) NoreturnKind {
55986087 return p.nodeIsNoreturn(default.body);
55996088 },
56006089 .while_stmt, .do_while_stmt, .for_stmt, .switch_stmt => return .complex,
6090 .goto_stmt, .computed_goto_stmt => return .complex,
56016091 else => return .no,
56026092 }
56036093}
......@@ -5647,6 +6137,7 @@ fn nextStmt(p: *Parser, l_brace: TokenIndex) !void {
56476137 .keyword_register,
56486138 .keyword_thread_local,
56496139 .keyword_c23_thread_local,
6140 .keyword_thread,
56506141 .keyword_inline,
56516142 .keyword_inline1,
56526143 .keyword_inline2,
......@@ -5697,7 +6188,7 @@ fn returnStmt(p: *Parser) Error!?Node.Index {
56976188 const ret_qt: QualType = if (func_qt.get(p.comp, .func)) |func_ty| func_ty.return_type else .invalid;
56986189 const ret_void = !ret_qt.isInvalid() and ret_qt.is(p.comp, .void);
56996190
5700 if (func_qt.hasAttribute(p.comp, .noreturn)) {
6191 if (p.tree.attr_map.hasAttribute(p.func.decl, .noreturn)) {
57016192 try p.err(e_tok, .invalid_noreturn, .{p.tokSlice(p.func.name)});
57026193 }
57036194
......@@ -5724,14 +6215,6 @@ fn returnStmt(p: *Parser) Error!?Node.Index {
57246215
57256216// ====== expressions ======
57266217
5727pub fn macroExpr(p: *Parser) Compilation.Error!bool {
5728 const res = p.expect(condExpr) catch |er| switch (er) {
5729 error.OutOfMemory, error.FatalError => |e| return e,
5730 error.ParsingFailed => return false,
5731 };
5732 return res.val.toBool(p.comp);
5733}
5734
57356218const CallExpr = union(enum) {
57366219 standard: Node.Index,
57376220 builtin: struct {
......@@ -5816,6 +6299,10 @@ const CallExpr = union(enum) {
58166299 .__builtin_elementwise_add_sat,
58176300 .__builtin_elementwise_sub_sat,
58186301 .__builtin_elementwise_popcount,
6302 .__builtin_elementwise_fshl,
6303 .__builtin_elementwise_fshr,
6304 .__builtin_elementwise_clzg,
6305 .__builtin_elementwise_ctzg,
58196306 => return p.checkElementwiseArg(param_tok, arg, arg_idx, .int),
58206307 .__builtin_elementwise_canonicalize,
58216308 .__builtin_elementwise_ceil,
......@@ -5836,10 +6323,18 @@ const CallExpr = union(enum) {
58366323 .__builtin_elementwise_copysign,
58376324 .__builtin_elementwise_pow,
58386325 .__builtin_elementwise_fma,
6326 .__builtin_elementwise_maximumnum,
6327 .__builtin_elementwise_minimumnum,
58396328 => return p.checkElementwiseArg(param_tok, arg, arg_idx, .float),
58406329 .__builtin_elementwise_max,
58416330 .__builtin_elementwise_min,
58426331 => return p.checkElementwiseArg(param_tok, arg, arg_idx, .both),
6332 .__builtin_elementwise_ldexp,
6333 => if (arg_idx == 0) {
6334 return p.checkElementwiseArg(param_tok, arg, 0, .float);
6335 } else {
6336 return p.checkElementwiseArg(param_tok, arg, 0, .int);
6337 },
58436338
58446339 .__builtin_reduce_add,
58456340 .__builtin_reduce_mul,
......@@ -5876,6 +6371,24 @@ const CallExpr = union(enum) {
58766371 => return p.checkSyncArg(param_tok, arg, arg_idx, 3),
58776372 else => {},
58786373 },
6374 .aarch64 => |tag| switch (tag) {
6375 .__builtin_arm_ldrex,
6376 .__builtin_arm_ldaex,
6377 .__builtin_arm_strex,
6378 .__builtin_arm_stlex,
6379 => return p.checkARMExclusive(self.builtin.expanded.tag, builtin_tok, param_tok, arg, arg_idx),
6380 else => {},
6381 },
6382 .arm => |tag| switch (tag) {
6383 .__builtin_arm_ldrex,
6384 .__builtin_arm_ldrexd,
6385 .__builtin_arm_ldaex,
6386 .__builtin_arm_strex,
6387 .__builtin_arm_strexd,
6388 .__builtin_arm_stlex,
6389 => return p.checkARMExclusive(self.builtin.expanded.tag, builtin_tok, param_tok, arg, arg_idx),
6390 else => {},
6391 },
58796392 else => {},
58806393 }
58816394 }
......@@ -5940,6 +6453,9 @@ const CallExpr = union(enum) {
59406453 .__builtin_elementwise_pow,
59416454 .__builtin_elementwise_sub_sat,
59426455 .__builtin_nontemporal_store,
6456 .__builtin_elementwise_ldexp,
6457 .__builtin_elementwise_maximumnum,
6458 .__builtin_elementwise_minimumnum,
59436459 => 2,
59446460
59456461 .__c11_atomic_store,
......@@ -5970,6 +6486,8 @@ const CallExpr = union(enum) {
59706486 .__builtin_mul_overflow,
59716487 .__builtin_elementwise_fma,
59726488 .__atomic_exchange_n,
6489 .__builtin_elementwise_fshl,
6490 .__builtin_elementwise_fshr,
59736491 => 3,
59746492
59756493 .__atomic_exchange,
......@@ -5982,6 +6500,33 @@ const CallExpr = union(enum) {
59826500 .__atomic_compare_exchange,
59836501 .__atomic_compare_exchange_n,
59846502 => 6,
6503
6504 // TODO handle optional second argument
6505 .__builtin_elementwise_clzg,
6506 .__builtin_elementwise_ctzg,
6507 => null,
6508 else => null,
6509 },
6510 .aarch64 => |tag| switch (tag) {
6511 .__builtin_arm_ldrex,
6512 .__builtin_arm_ldaex,
6513 => 1,
6514
6515 .__builtin_arm_strex,
6516 .__builtin_arm_stlex,
6517 => 2,
6518 else => null,
6519 },
6520 .arm => |tag| switch (tag) {
6521 .__builtin_arm_ldrex,
6522 .__builtin_arm_ldrexd,
6523 .__builtin_arm_ldaex,
6524 => 1,
6525
6526 .__builtin_arm_strex,
6527 .__builtin_arm_strexd,
6528 .__builtin_arm_stlex,
6529 => 2,
59856530 else => null,
59866531 },
59876532 else => null,
......@@ -6095,12 +6640,27 @@ const CallExpr = union(enum) {
60956640 .__builtin_elementwise_sub_sat,
60966641 .__builtin_elementwise_fma,
60976642 .__builtin_elementwise_popcount,
6643 .__builtin_elementwise_fshl,
6644 .__builtin_elementwise_fshr,
6645 .__builtin_elementwise_ldexp,
6646 .__builtin_elementwise_maximumnum,
6647 .__builtin_elementwise_minimumnum,
60986648
60996649 .__builtin_nondeterministic_value,
61006650 => {
61016651 const first_param = args[0].qt(&p.tree);
61026652 return first_param;
61036653 },
6654
6655 // TODO handle optional second argument
6656 .__builtin_elementwise_clzg,
6657 .__builtin_elementwise_ctzg,
6658 => {
6659 if (args.len < 1) return .invalid;
6660 const first_param = args[0].qt(&p.tree);
6661 return first_param;
6662 },
6663
61046664 .__builtin_reduce_add,
61056665 .__builtin_reduce_mul,
61066666 .__builtin_reduce_and,
......@@ -6125,6 +6685,34 @@ const CallExpr = union(enum) {
61256685 },
61266686 else => func_ty.return_type,
61276687 },
6688 .aarch64 => |tag| switch (tag) {
6689 .__builtin_arm_ldrex,
6690 .__builtin_arm_ldaex,
6691 => {
6692 const first_param = args[0].qt(&p.tree);
6693 if (!first_param.isPointer(p.comp)) return .invalid;
6694 return first_param.childType(p.comp);
6695 },
6696 .__builtin_arm_strex,
6697 .__builtin_arm_stlex,
6698 => .int, // STREX/STREXD returns int
6699 else => func_ty.return_type,
6700 },
6701 .arm => |tag| switch (tag) {
6702 .__builtin_arm_ldrex,
6703 .__builtin_arm_ldrexd,
6704 .__builtin_arm_ldaex,
6705 => {
6706 const first_param = args[0].qt(&p.tree);
6707 if (!first_param.isPointer(p.comp)) return .invalid;
6708 return first_param.childType(p.comp);
6709 },
6710 .__builtin_arm_strex,
6711 .__builtin_arm_strexd,
6712 .__builtin_arm_stlex,
6713 => .int, // STREX/STREXD returns int
6714 else => func_ty.return_type,
6715 },
61286716 else => func_ty.return_type,
61296717 };
61306718 }
......@@ -6167,61 +6755,19 @@ pub const Result = struct {
61676755 qt: QualType = .int,
61686756 val: Value = .{},
61696757
6170 fn maybeWarnUnused(res: Result, p: *Parser, expr_start: TokenIndex, prev_total: usize) Error!void {
6171 if (res.qt.is(p.comp, .void)) return;
6172 if (res.qt.isInvalid()) return;
6173 // // don't warn about unused result if the expression contained errors besides other unused results
6174 if (p.diagnostics.total != prev_total) return; // TODO improve
6175 // for (p.diagnostics.list.items[err_start..]) |err_item| {
6176 // if (err_item.tag != .unused_value) return;
6177 // }
6178 loop: switch (res.node.get(&p.tree)) {
6179 .assign_expr,
6180 .mul_assign_expr,
6181 .div_assign_expr,
6182 .mod_assign_expr,
6183 .add_assign_expr,
6184 .sub_assign_expr,
6185 .shl_assign_expr,
6186 .shr_assign_expr,
6187 .bit_and_assign_expr,
6188 .bit_xor_assign_expr,
6189 .bit_or_assign_expr,
6190 .pre_inc_expr,
6191 .pre_dec_expr,
6192 .post_inc_expr,
6193 .post_dec_expr,
6194 => {},
6195 .call_expr => |call| {
6196 const call_info = p.tree.callableResultUsage(call.callee) orelse return;
6197 if (call_info.nodiscard) try p.err(expr_start, .nodiscard_unused, .{p.tokSlice(call_info.tok)});
6198 if (call_info.warn_unused_result) try p.err(expr_start, .warn_unused_result, .{p.tokSlice(call_info.tok)});
6199 },
6200 .builtin_call_expr => |call| {
6201 const expanded = p.comp.builtins.lookup(p.tokSlice(call.builtin_tok));
6202 const attributes = expanded.attributes;
6203 if (attributes.pure) try p.err(call.builtin_tok, .builtin_unused, .{"pure"});
6204 if (attributes.@"const") try p.err(call.builtin_tok, .builtin_unused, .{"const"});
6205 },
6206 .stmt_expr => |stmt_expr| {
6207 const compound = stmt_expr.operand.get(&p.tree).compound_stmt;
6208 continue :loop compound.body[compound.body.len - 1].get(&p.tree);
6209 },
6210 .comma_expr => |comma| continue :loop comma.rhs.get(&p.tree),
6211 .paren_expr => |grouped| continue :loop grouped.operand.get(&p.tree),
6212 else => try p.err(expr_start, .unused_value, .{}),
6213 }
6214 }
6215
62166758 fn boolRes(lhs: *Result, p: *Parser, tag: std.meta.Tag(Node), rhs: Result, tok_i: TokenIndex) !void {
62176759 if (lhs.val.opt_ref == .null) {
62186760 lhs.val = .zero;
62196761 }
62206762 if (!lhs.qt.isInvalid()) {
62216763 if (lhs.qt.get(p.comp, .vector)) |vec| {
6222 if (!vec.elem.isInt(p.comp)) {
6764 if (!vec.elem.isInt(p.comp) or vec.kind != .generic) {
62236765 lhs.qt = try p.comp.type_store.put(p.comp.gpa, .{
6224 .vector = .{ .elem = .int, .len = vec.len },
6766 .vector = .{
6767 .elem = p.comp.smallestNBitIntTargetIndependent(@intCast(vec.elem.bitSizeof(p.comp)), .signed),
6768 .len = vec.len,
6769 .kind = .generic,
6770 },
62256771 });
62266772 }
62276773 } else {
......@@ -6272,10 +6818,10 @@ pub const Result = struct {
62726818 }
62736819 }
62746820
6275 fn implicitCast(operand: *Result, p: *Parser, kind: Node.Cast.Kind, tok: TokenIndex) Error!void {
6821 fn implicitCast(operand: *Result, p: *Parser, kind: Node.Cast.Kind) Error!void {
62766822 operand.node = try p.addNode(.{
62776823 .cast = .{
6278 .l_paren = tok,
6824 .l_paren = operand.node.tok(&p.tree),
62796825 .kind = kind,
62806826 .operand = operand.node,
62816827 .qt = operand.qt,
......@@ -6284,13 +6830,13 @@ pub const Result = struct {
62846830 });
62856831 }
62866832
6287 fn adjustCondExprPtrs(a: *Result, tok: TokenIndex, b: *Result, p: *Parser) !bool {
6833 fn adjustCondExprPtrs(a: *Result, tok: TokenIndex, b: *Result, p: *Parser) !void {
62886834 assert(a.qt.isPointer(p.comp) and b.qt.isPointer(p.comp));
62896835 const gpa = p.comp.gpa;
62906836
62916837 const a_elem = a.qt.childType(p.comp);
62926838 const b_elem = b.qt.childType(p.comp);
6293 if (a_elem.eqlQualified(b_elem, p.comp)) return true;
6839 if (a_elem.eqlQualified(b_elem, p.comp)) return;
62946840
62956841 const has_void_pointer_branch = a.qt.scalarKind(p.comp) == .void_pointer or
62966842 b.qt.scalarKind(p.comp) == .void_pointer;
......@@ -6316,16 +6862,14 @@ pub const Result = struct {
63166862 a.qt = try p.comp.type_store.put(gpa, .{ .pointer = .{
63176863 .child = adjusted_elem_qt,
63186864 } });
6319 try a.implicitCast(p, .bitcast, tok);
6865 try a.implicitCast(p, .bitcast);
63206866 }
63216867 if (!adjusted_elem_qt.eqlQualified(b_elem, p.comp)) {
63226868 b.qt = try p.comp.type_store.put(gpa, .{ .pointer = .{
63236869 .child = adjusted_elem_qt,
63246870 } });
6325 try b.implicitCast(p, .bitcast, tok);
6871 try b.implicitCast(p, .bitcast);
63266872 }
6327
6328 return true;
63296873 }
63306874
63316875 /// Adjust types for binary operation, returns true if the result can and should be evaluated.
......@@ -6338,52 +6882,54 @@ pub const Result = struct {
63386882 conditional,
63396883 add,
63406884 sub,
6341 }) !bool {
6885 }) !void {
63426886 if (b.qt.isInvalid()) {
63436887 try a.saveValue(p);
63446888 a.qt = .invalid;
63456889 }
63466890 if (a.qt.isInvalid()) {
6347 return false;
6891 return;
63486892 }
6349 try a.lvalConversion(p, tok);
6350 try b.lvalConversion(p, tok);
6893 try a.lvalConversion(p);
6894 try b.lvalConversion(p);
63516895
6352 const a_vec = a.qt.is(p.comp, .vector);
6353 const b_vec = b.qt.is(p.comp, .vector);
6354 if (a_vec and b_vec) {
6896 const opt_a_vec = a.qt.get(p.comp, .vector);
6897 const opt_b_vec = b.qt.get(p.comp, .vector);
6898 if (opt_a_vec != null and opt_b_vec != null) {
6899 const a_vec = opt_a_vec.?;
6900 const b_vec = opt_b_vec.?;
63556901 if (kind == .boolean_logic) {
63566902 return a.invalidBinTy(tok, b, p);
63576903 }
6358 if (a.qt.eql(b.qt, p.comp)) {
6359 return a.shouldEval(b, p);
6904 if (a_vec.eql(b_vec, p.comp, true) and a_vec.kind == .generic) {
6905 return;
63606906 }
63616907 if (a.qt.sizeCompare(b.qt, p.comp) == .eq) {
63626908 b.qt = a.qt;
6363 try b.implicitCast(p, .bitcast, tok);
6364 return a.shouldEval(b, p);
6909 try b.implicitCast(p, .bitcast);
6910 return;
63656911 }
63666912 try p.err(tok, .incompatible_vec_types, .{ a.qt, b.qt });
63676913 a.val = .{};
63686914 b.val = .{};
63696915 a.qt = .invalid;
6370 return false;
6371 } else if (a_vec) {
6372 if (b.coerceExtra(p, a.qt.childType(p.comp), tok, .test_coerce)) {
6916 return;
6917 } else if (opt_a_vec) |a_vec| {
6918 if (b.coerceExtra(p, a_vec.elem, tok, .test_coerce)) {
63736919 try b.saveValue(p);
63746920 b.qt = a.qt;
6375 try b.implicitCast(p, .vector_splat, tok);
6376 return a.shouldEval(b, p);
6921 try b.implicitCast(p, .vector_splat);
6922 return;
63776923 } else |er| switch (er) {
63786924 error.CoercionFailed => return a.invalidBinTy(tok, b, p),
63796925 else => |e| return e,
63806926 }
6381 } else if (b_vec) {
6382 if (a.coerceExtra(p, b.qt.childType(p.comp), tok, .test_coerce)) {
6927 } else if (opt_b_vec) |b_vec| {
6928 if (a.coerceExtra(p, b_vec.elem, tok, .test_coerce)) {
63836929 try a.saveValue(p);
63846930 a.qt = b.qt;
6385 try a.implicitCast(p, .vector_splat, tok);
6386 return a.shouldEval(b, p);
6931 try a.implicitCast(p, .vector_splat);
6932 return;
63876933 } else |er| switch (er) {
63886934 error.CoercionFailed => return a.invalidBinTy(tok, b, p),
63896935 else => |e| return e,
......@@ -6395,7 +6941,7 @@ pub const Result = struct {
63956941
63966942 if (a_sk.isInt() and b_sk.isInt()) {
63976943 try a.usualArithmeticConversion(b, p, tok);
6398 return a.shouldEval(b, p);
6944 return;
63996945 }
64006946 if (kind == .integer) return a.invalidBinTy(tok, b, p);
64016947
......@@ -6405,7 +6951,7 @@ pub const Result = struct {
64056951 return a.invalidBinTy(tok, b, p);
64066952
64076953 try a.usualArithmeticConversion(b, p, tok);
6408 return a.shouldEval(b, p);
6954 return;
64096955 }
64106956 if (kind == .arithmetic) return a.invalidBinTy(tok, b, p);
64116957
......@@ -6420,22 +6966,21 @@ pub const Result = struct {
64206966 // Do integer promotions but nothing else
64216967 if (a_sk.isInt()) try a.castToInt(p, a.qt.promoteInt(p.comp), tok);
64226968 if (b_sk.isInt()) try b.castToInt(p, b.qt.promoteInt(p.comp), tok);
6423 return a.shouldEval(b, p);
64246969 },
64256970 .relational, .equality => {
64266971 if (kind == .equality and (a_sk == .nullptr_t or b_sk == .nullptr_t)) {
6427 if (a_sk == .nullptr_t and b_sk == .nullptr_t) return a.shouldEval(b, p);
6972 if (a_sk == .nullptr_t and b_sk == .nullptr_t) return;
64286973
64296974 const nullptr_res = if (a_sk == .nullptr_t) a else b;
64306975 const other_res = if (a_sk == .nullptr_t) b else a;
64316976
64326977 if (other_res.qt.isPointer(p.comp)) {
6433 try nullptr_res.nullToPointer(p, other_res.qt, tok);
6434 return other_res.shouldEval(nullptr_res, p);
6978 try nullptr_res.nullToPointer(p, other_res.qt);
6979 return;
64356980 } else if (other_res.val.isZero(p.comp)) {
64366981 other_res.val = .null;
6437 try other_res.nullToPointer(p, nullptr_res.qt, tok);
6438 return other_res.shouldEval(nullptr_res, p);
6982 try other_res.nullToPointer(p, nullptr_res.qt);
6983 return;
64396984 }
64406985 return a.invalidBinTy(tok, b, p);
64416986 }
......@@ -6453,55 +6998,55 @@ pub const Result = struct {
64536998 const b_elem = b.qt.childType(p.comp);
64546999 if (!a_elem.eql(b_elem, p.comp)) {
64557000 try p.err(tok, .comparison_distinct_ptr, .{ a.qt, b.qt });
6456 try b.castToPointer(p, a.qt, tok);
7001 try b.castToPointer(p, a.qt);
64577002 }
64587003 } else if (a_sk == .void_pointer) {
6459 try b.castToPointer(p, a.qt, tok);
7004 try b.castToPointer(p, a.qt);
64607005 } else if (b_sk == .void_pointer) {
6461 try a.castToPointer(p, b.qt, tok);
7006 try a.castToPointer(p, b.qt);
64627007 }
64637008 } else if (a_sk.isPointer()) {
6464 try b.castToPointer(p, a.qt, tok);
7009 try b.castToPointer(p, a.qt);
64657010 } else {
64667011 assert(b_sk.isPointer());
6467 try a.castToPointer(p, b.qt, tok);
7012 try a.castToPointer(p, b.qt);
64687013 }
6469
6470 return a.shouldEval(b, p);
64717014 },
64727015 .conditional => {
64737016 // doesn't matter what we return here, as the result is ignored
64747017 if (a.qt.is(p.comp, .void) or b.qt.is(p.comp, .void)) {
6475 try a.castToVoid(p, tok);
6476 try b.castToVoid(p, tok);
6477 return true;
7018 try a.castToVoid(p);
7019 try b.castToVoid(p);
7020 return;
64787021 }
64797022
6480 if (a_sk == .nullptr_t and b_sk == .nullptr_t) return true;
7023 if (a_sk == .nullptr_t and b_sk == .nullptr_t) return;
64817024
64827025 if ((a_sk.isPointer() and b_sk.isInt()) or (a_sk.isInt() and b_sk.isPointer())) {
64837026 if (a.val.isZero(p.comp) or b.val.isZero(p.comp)) {
6484 try a.nullToPointer(p, b.qt, tok);
6485 try b.nullToPointer(p, a.qt, tok);
6486 return true;
7027 try a.nullToPointer(p, b.qt);
7028 try b.nullToPointer(p, a.qt);
7029 return;
64877030 }
64887031 const int_ty = if (a_sk.isInt()) a else b;
64897032 const ptr_ty = if (a_sk.isPointer()) a else b;
64907033 try p.err(tok, .implicit_int_to_ptr, .{ int_ty.qt, ptr_ty.qt });
6491 try int_ty.castToPointer(p, ptr_ty.qt, tok);
7034 try int_ty.castToPointer(p, ptr_ty.qt);
64927035
6493 return true;
7036 return;
64947037 }
64957038 if ((a_sk.isPointer() and b_sk == .nullptr_t) or (a_sk == .nullptr_t and b_sk.isPointer())) {
64967039 const nullptr_res = if (a_sk == .nullptr_t) a else b;
64977040 const ptr_res = if (a_sk == .nullptr_t) b else a;
6498 try nullptr_res.nullToPointer(p, ptr_res.qt, tok);
6499 return true;
7041 try nullptr_res.nullToPointer(p, ptr_res.qt);
7042 return;
65007043 }
65017044 if (a_sk.isPointer() and b_sk.isPointer()) return a.adjustCondExprPtrs(tok, b, p);
65027045
7046 if (a.qt.is(p.comp, .storage_float) and a.qt.eql(b.qt, p.comp)) return;
7047
65037048 if (a.qt.getRecord(p.comp) != null and b.qt.getRecord(p.comp) != null and a.qt.eql(b.qt, p.comp)) {
6504 return true;
7049 return;
65057050 }
65067051 return a.invalidBinTy(tok, b, p);
65077052 },
......@@ -6513,8 +7058,8 @@ pub const Result = struct {
65137058 if (a_sk == .void_pointer or b_sk == .void_pointer)
65147059 try p.err(tok, .gnu_pointer_arith, .{});
65157060
6516 if (a_sk == .nullptr_t) try a.nullToPointer(p, .void_pointer, tok);
6517 if (b_sk == .nullptr_t) try b.nullToPointer(p, .void_pointer, tok);
7061 if (a_sk == .nullptr_t) try a.nullToPointer(p, .void_pointer);
7062 if (b_sk == .nullptr_t) try b.nullToPointer(p, .void_pointer);
65187063
65197064 // Do integer promotions but nothing else
65207065 if (a_sk.isInt()) try a.castToInt(p, a.qt.promoteInt(p.comp), tok);
......@@ -6522,7 +7067,6 @@ pub const Result = struct {
65227067
65237068 // The result type is the type of the pointer operand
65247069 if (a_sk.isInt()) a.qt = b.qt else b.qt = a.qt;
6525 return a.shouldEval(b, p);
65267070 },
65277071 .sub => {
65287072 // if both aren't arithmetic then either both should be pointers or just the left one.
......@@ -6532,8 +7076,8 @@ pub const Result = struct {
65327076 if (a_sk == .void_pointer)
65337077 try p.err(tok, .gnu_pointer_arith, .{});
65347078
6535 if (a_sk == .nullptr_t) try a.nullToPointer(p, .void_pointer, tok);
6536 if (b_sk == .nullptr_t) try b.nullToPointer(p, .void_pointer, tok);
7079 if (a_sk == .nullptr_t) try a.nullToPointer(p, .void_pointer);
7080 if (b_sk == .nullptr_t) try b.nullToPointer(p, .void_pointer);
65377081
65387082 if (a_sk.isPointer() and b_sk.isPointer()) {
65397083 const a_child_qt = a.qt.get(p.comp, .pointer).?.child;
......@@ -6546,26 +7090,25 @@ pub const Result = struct {
65467090
65477091 // Do integer promotion on b if needed
65487092 if (b_sk.isInt()) try b.castToInt(p, b.qt.promoteInt(p.comp), tok);
6549 return a.shouldEval(b, p);
65507093 },
65517094 else => return a.invalidBinTy(tok, b, p),
65527095 }
65537096 }
65547097
6555 fn lvalConversion(res: *Result, p: *Parser, tok: TokenIndex) Error!void {
7098 fn lvalConversion(res: *Result, p: *Parser) Error!void {
65567099 if (res.qt.is(p.comp, .func)) {
65577100 res.val = try p.pointerValue(res.node, .zero);
65587101
65597102 res.qt = try res.qt.decay(p.comp);
6560 try res.implicitCast(p, .function_to_pointer, tok);
7103 try res.implicitCast(p, .function_to_pointer);
65617104 } else if (res.qt.is(p.comp, .array)) {
65627105 res.val = try p.pointerValue(res.node, .zero);
65637106
65647107 res.qt = try res.qt.decay(p.comp);
6565 try res.implicitCast(p, .array_to_pointer, tok);
6566 } else if (!p.in_macro and p.tree.isLval(res.node)) {
7108 try res.implicitCast(p, .array_to_pointer);
7109 } else if (p.tree.isLval(res.node)) {
65677110 res.qt = res.qt.unqualified();
6568 try res.implicitCast(p, .lval_to_rval, tok);
7111 try res.implicitCast(p, .lval_to_rval);
65697112 }
65707113 }
65717114
......@@ -6580,32 +7123,32 @@ pub const Result = struct {
65807123 } else {
65817124 try p.err(tok, .array_address_to_bool, .{p.tokSlice(tok)});
65827125 }
6583 try res.lvalConversion(p, tok);
7126 try res.lvalConversion(p);
65847127 res.val = .one;
65857128 res.qt = bool_qt;
6586 try res.implicitCast(p, .pointer_to_bool, tok);
7129 try res.implicitCast(p, .pointer_to_bool);
65877130 } else if (src_sk.isPointer()) {
65887131 res.val.boolCast(p.comp);
65897132 res.qt = bool_qt;
6590 try res.implicitCast(p, .pointer_to_bool, tok);
7133 try res.implicitCast(p, .pointer_to_bool);
65917134 } else if (src_sk.isInt() and src_sk != .bool) {
65927135 res.val.boolCast(p.comp);
65937136 if (!src_sk.isReal()) {
65947137 res.qt = res.qt.toReal(p.comp);
6595 try res.implicitCast(p, .complex_int_to_real, tok);
7138 try res.implicitCast(p, .complex_int_to_real);
65967139 }
65977140 res.qt = bool_qt;
6598 try res.implicitCast(p, .int_to_bool, tok);
7141 try res.implicitCast(p, .int_to_bool);
65997142 } else if (src_sk.isFloat()) {
66007143 const old_val = res.val;
66017144 const value_change_kind = try res.val.floatToInt(bool_qt, p.comp);
66027145 try res.floatToIntWarning(p, bool_qt, old_val, value_change_kind, tok);
66037146 if (!src_sk.isReal()) {
66047147 res.qt = res.qt.toReal(p.comp);
6605 try res.implicitCast(p, .complex_float_to_real, tok);
7148 try res.implicitCast(p, .complex_float_to_real);
66067149 }
66077150 res.qt = bool_qt;
6608 try res.implicitCast(p, .float_to_bool, tok);
7151 try res.implicitCast(p, .float_to_bool);
66097152 }
66107153 }
66117154
......@@ -6621,18 +7164,18 @@ pub const Result = struct {
66217164
66227165 if (src_sk == .bool) {
66237166 res.qt = int_qt.toReal(p.comp);
6624 try res.implicitCast(p, .bool_to_int, tok);
7167 try res.implicitCast(p, .bool_to_int);
66257168 if (!dest_sk.isReal()) {
66267169 res.qt = int_qt;
6627 try res.implicitCast(p, .real_to_complex_int, tok);
7170 try res.implicitCast(p, .real_to_complex_int);
66287171 }
66297172 } else if (src_sk.isPointer()) {
66307173 res.val = .{};
66317174 res.qt = int_qt.toReal(p.comp);
6632 try res.implicitCast(p, .pointer_to_int, tok);
7175 try res.implicitCast(p, .pointer_to_int);
66337176 if (!dest_sk.isReal()) {
66347177 res.qt = int_qt;
6635 try res.implicitCast(p, .real_to_complex_int, tok);
7178 try res.implicitCast(p, .real_to_complex_int);
66367179 }
66377180 } else if (res.qt.isFloat(p.comp)) {
66387181 const old_val = res.val;
......@@ -6640,20 +7183,20 @@ pub const Result = struct {
66407183 try res.floatToIntWarning(p, int_qt, old_val, value_change_kind, tok);
66417184 if (src_sk.isReal() and dest_sk.isReal()) {
66427185 res.qt = int_qt;
6643 try res.implicitCast(p, .float_to_int, tok);
7186 try res.implicitCast(p, .float_to_int);
66447187 } else if (src_sk.isReal()) {
66457188 res.qt = int_qt.toReal(p.comp);
6646 try res.implicitCast(p, .float_to_int, tok);
7189 try res.implicitCast(p, .float_to_int);
66477190 res.qt = int_qt;
6648 try res.implicitCast(p, .real_to_complex_int, tok);
7191 try res.implicitCast(p, .real_to_complex_int);
66497192 } else if (dest_sk.isReal()) {
66507193 res.qt = res.qt.toReal(p.comp);
6651 try res.implicitCast(p, .complex_float_to_real, tok);
7194 try res.implicitCast(p, .complex_float_to_real);
66527195 res.qt = int_qt;
6653 try res.implicitCast(p, .float_to_int, tok);
7196 try res.implicitCast(p, .float_to_int);
66547197 } else {
66557198 res.qt = int_qt;
6656 try res.implicitCast(p, .complex_float_to_complex_int, tok);
7199 try res.implicitCast(p, .complex_float_to_complex_int);
66577200 }
66587201 } else if (!res.qt.eql(int_qt, p.comp)) {
66597202 const old_val = res.val;
......@@ -6666,23 +7209,23 @@ pub const Result = struct {
66667209
66677210 if (src_sk.isReal() and dest_sk.isReal()) {
66687211 res.qt = int_qt;
6669 try res.implicitCast(p, .int_cast, tok);
7212 try res.implicitCast(p, .int_cast);
66707213 } else if (src_sk.isReal()) {
66717214 const real_int_qt = int_qt.toReal(p.comp);
66727215 if (!res.qt.eql(real_int_qt, p.comp)) {
66737216 res.qt = real_int_qt;
6674 try res.implicitCast(p, .int_cast, tok);
7217 try res.implicitCast(p, .int_cast);
66757218 }
66767219 res.qt = int_qt;
6677 try res.implicitCast(p, .real_to_complex_int, tok);
7220 try res.implicitCast(p, .real_to_complex_int);
66787221 } else if (dest_sk.isReal()) {
66797222 res.qt = res.qt.toReal(p.comp);
6680 try res.implicitCast(p, .complex_int_to_real, tok);
7223 try res.implicitCast(p, .complex_int_to_real);
66817224 res.qt = int_qt;
6682 try res.implicitCast(p, .int_cast, tok);
7225 try res.implicitCast(p, .int_cast);
66837226 } else {
66847227 res.qt = int_qt;
6685 try res.implicitCast(p, .complex_int_cast, tok);
7228 try res.implicitCast(p, .complex_int_cast);
66867229 }
66877230 }
66887231 }
......@@ -6704,75 +7247,75 @@ pub const Result = struct {
67047247 }
67057248 }
67067249
6707 fn castToFloat(res: *Result, p: *Parser, float_qt: QualType, tok: TokenIndex) Error!void {
7250 fn castToFloat(res: *Result, p: *Parser, float_qt: QualType) Error!void {
67087251 const src_sk = res.qt.scalarKind(p.comp);
67097252 const dest_sk = float_qt.scalarKind(p.comp);
67107253
67117254 if (src_sk == .bool) {
67127255 try res.val.intToFloat(float_qt, p.comp);
67137256 res.qt = float_qt.toReal(p.comp);
6714 try res.implicitCast(p, .bool_to_float, tok);
7257 try res.implicitCast(p, .bool_to_float);
67157258 if (!dest_sk.isReal()) {
67167259 res.qt = float_qt;
6717 try res.implicitCast(p, .real_to_complex_float, tok);
7260 try res.implicitCast(p, .real_to_complex_float);
67187261 }
67197262 } else if (src_sk.isInt()) {
67207263 try res.val.intToFloat(float_qt, p.comp);
67217264 if (src_sk.isReal() and dest_sk.isReal()) {
67227265 res.qt = float_qt;
6723 try res.implicitCast(p, .int_to_float, tok);
7266 try res.implicitCast(p, .int_to_float);
67247267 } else if (src_sk.isReal()) {
67257268 res.qt = float_qt.toReal(p.comp);
6726 try res.implicitCast(p, .int_to_float, tok);
7269 try res.implicitCast(p, .int_to_float);
67277270 res.qt = float_qt;
6728 try res.implicitCast(p, .real_to_complex_float, tok);
7271 try res.implicitCast(p, .real_to_complex_float);
67297272 } else if (dest_sk.isReal()) {
67307273 res.qt = res.qt.toReal(p.comp);
6731 try res.implicitCast(p, .complex_int_to_real, tok);
7274 try res.implicitCast(p, .complex_int_to_real);
67327275 res.qt = float_qt;
6733 try res.implicitCast(p, .int_to_float, tok);
7276 try res.implicitCast(p, .int_to_float);
67347277 } else {
67357278 res.qt = float_qt;
6736 try res.implicitCast(p, .complex_int_to_complex_float, tok);
7279 try res.implicitCast(p, .complex_int_to_complex_float);
67377280 }
67387281 } else if (!res.qt.eql(float_qt, p.comp)) {
67397282 try res.val.floatCast(float_qt, p.comp);
67407283 if (src_sk.isReal() and dest_sk.isReal()) {
67417284 res.qt = float_qt;
6742 try res.implicitCast(p, .float_cast, tok);
7285 try res.implicitCast(p, .float_cast);
67437286 } else if (src_sk.isReal()) {
67447287 if (res.qt.floatRank(p.comp) != float_qt.floatRank(p.comp)) {
67457288 res.qt = float_qt.toReal(p.comp);
6746 try res.implicitCast(p, .float_cast, tok);
7289 try res.implicitCast(p, .float_cast);
67477290 }
67487291 res.qt = float_qt;
6749 try res.implicitCast(p, .real_to_complex_float, tok);
7292 try res.implicitCast(p, .real_to_complex_float);
67507293 } else if (dest_sk.isReal()) {
67517294 res.qt = res.qt.toReal(p.comp);
6752 try res.implicitCast(p, .complex_float_to_real, tok);
7295 try res.implicitCast(p, .complex_float_to_real);
67537296 if (res.qt.floatRank(p.comp) != float_qt.floatRank(p.comp)) {
67547297 res.qt = float_qt;
6755 try res.implicitCast(p, .float_cast, tok);
7298 try res.implicitCast(p, .float_cast);
67567299 }
67577300 } else {
67587301 res.qt = float_qt;
6759 try res.implicitCast(p, .complex_float_cast, tok);
7302 try res.implicitCast(p, .complex_float_cast);
67607303 }
67617304 }
67627305 }
67637306
67647307 /// Converts a bool or integer to a pointer
6765 fn castToPointer(res: *Result, p: *Parser, ptr_qt: QualType, tok: TokenIndex) Error!void {
7308 fn castToPointer(res: *Result, p: *Parser, ptr_qt: QualType) Error!void {
67667309 const src_sk = res.qt.scalarKind(p.comp);
67677310 if (src_sk == .bool) {
67687311 res.qt = ptr_qt;
6769 try res.implicitCast(p, .bool_to_pointer, tok);
7312 try res.implicitCast(p, .bool_to_pointer);
67707313 } else if (src_sk.isInt()) {
67717314 _ = try res.val.intCast(ptr_qt, p.comp);
67727315 res.qt = ptr_qt;
6773 try res.implicitCast(p, .int_to_pointer, tok);
7316 try res.implicitCast(p, .int_to_pointer);
67747317 } else if (src_sk == .nullptr_t) {
6775 try res.nullToPointer(p, ptr_qt, tok);
7318 try res.nullToPointer(p, ptr_qt);
67767319 } else if (src_sk.isPointer() and !res.qt.eql(ptr_qt, p.comp)) {
67777320 if (ptr_qt.is(p.comp, .nullptr_t)) {
67787321 res.qt = .invalid;
......@@ -6788,25 +7331,25 @@ pub const Result = struct {
67887331 (dest_elem.@"volatile" == src_elem.@"volatile" or dest_elem.@"volatile"))
67897332 {
67907333 // Gaining qualifiers is a no-op.
6791 try res.implicitCast(p, .no_op, tok);
7334 try res.implicitCast(p, .no_op);
67927335 } else {
6793 try res.implicitCast(p, .bitcast, tok);
7336 try res.implicitCast(p, .bitcast);
67947337 }
67957338 }
67967339 }
67977340
6798 fn castToVoid(res: *Result, p: *Parser, tok: TokenIndex) Error!void {
7341 fn castToVoid(res: *Result, p: *Parser) Error!void {
67997342 if (!res.qt.is(p.comp, .void)) {
68007343 res.qt = .void;
6801 try res.implicitCast(p, .to_void, tok);
7344 try res.implicitCast(p, .to_void);
68027345 }
68037346 }
68047347
6805 fn nullToPointer(res: *Result, p: *Parser, ptr_ty: QualType, tok: TokenIndex) Error!void {
7348 fn nullToPointer(res: *Result, p: *Parser, ptr_ty: QualType) Error!void {
68067349 if (!res.qt.is(p.comp, .nullptr_t) and !res.val.isZero(p.comp)) return;
68077350 res.val = .null;
68087351 res.qt = ptr_ty;
6809 try res.implicitCast(p, .null_to_pointer, tok);
7352 try res.implicitCast(p, .null_to_pointer);
68107353 }
68117354
68127355 fn usualUnaryConversion(res: *Result, p: *Parser, tok: TokenIndex) Error!void {
......@@ -6820,14 +7363,14 @@ pub const Result = struct {
68207363 if (res.qt.floatRank(p.comp) < QualType.double.floatRank(p.comp)) {
68217364 var res_qt: QualType = .double;
68227365 if (res.qt.is(p.comp, .complex)) res_qt = try res_qt.toComplex(p.comp);
6823 return res.castToFloat(p, res_qt, tok);
7366 return res.castToFloat(p, res_qt);
68247367 }
68257368 },
68267369 .extended => {
68277370 if (res.qt.floatRank(p.comp) < QualType.long_double.floatRank(p.comp)) {
68287371 var res_qt: QualType = .long_double;
68297372 if (res.qt.is(p.comp, .complex)) res_qt = try res_qt.toComplex(p.comp);
6830 return res.castToFloat(p, res_qt, tok);
7373 return res.castToFloat(p, res_qt);
68317374 }
68327375 },
68337376 }
......@@ -6836,12 +7379,12 @@ pub const Result = struct {
68367379 if (!p.comp.langopts.use_native_half_type) {
68377380 if (res.qt.get(p.comp, .float)) |float_ty| {
68387381 if (float_ty == .fp16) {
6839 return res.castToFloat(p, .float, tok);
7382 return res.castToFloat(p, .float);
68407383 }
68417384 }
68427385 }
68437386
6844 if (res.qt.isInt(p.comp) and !p.in_macro) {
7387 if (res.qt.isInt(p.comp)) {
68457388 if (p.tree.bitfieldWidth(res.node, true)) |width| {
68467389 if (res.qt.promoteBitfield(p.comp, width)) |promotion_ty| {
68477390 return res.castToInt(p, promotion_ty, tok);
......@@ -6879,14 +7422,14 @@ pub const Result = struct {
68797422 else
68807423 b.qt);
68817424
6882 try a.castToFloat(p, res_qt, tok);
6883 try b.castToFloat(p, res_qt, tok);
7425 try a.castToFloat(p, res_qt);
7426 try b.castToFloat(p, res_qt);
68847427 return;
68857428 } else if (a_float) {
6886 try b.castToFloat(p, a.qt, tok);
7429 try b.castToFloat(p, a.qt);
68877430 return;
68887431 } else if (b_float) {
6889 try a.castToFloat(p, b.qt, tok);
7432 try a.castToFloat(p, b.qt);
68907433 return;
68917434 }
68927435
......@@ -6939,27 +7482,25 @@ pub const Result = struct {
69397482 try b.castToInt(p, target_qt, tok);
69407483 }
69417484
6942 fn invalidBinTy(a: *Result, tok: TokenIndex, b: *Result, p: *Parser) Error!bool {
7485 fn invalidBinTy(a: *Result, tok: TokenIndex, b: *Result, p: *Parser) Error!void {
69437486 try p.err(tok, .invalid_bin_types, .{ a.qt, b.qt });
69447487 a.val = .{};
69457488 b.val = .{};
69467489 a.qt = .invalid;
6947 return false;
69487490 }
69497491
6950 fn shouldEval(a: *Result, b: *Result, p: *Parser) Error!bool {
6951 if (p.no_eval) return false;
7492 fn shouldEval(a: *Result, b: *Result, p: *Parser, eval: bool) Error!bool {
7493 if (!eval) return false;
69527494 if (a.val.opt_ref != .none and b.val.opt_ref != .none)
69537495 return true;
69547496
69557497 try a.saveValue(p);
69567498 try b.saveValue(p);
6957 return p.no_eval;
7499 return false;
69587500 }
69597501
69607502 /// Saves value and replaces it with `.unavailable`.
69617503 fn saveValue(res: *Result, p: *Parser) !void {
6962 assert(!p.in_macro);
69637504 try res.putValue(p);
69647505 res.val = .{};
69657506 }
......@@ -6967,7 +7508,7 @@ pub const Result = struct {
69677508 /// Saves value without altering the result.
69687509 fn putValue(res: *const Result, p: *Parser) !void {
69697510 if (res.val.opt_ref == .none or res.val.opt_ref == .null) return;
6970 if (!p.in_macro) try p.tree.value_map.put(p.comp.gpa, res.node, res.val);
7511 try p.tree.value_map.put(p.comp.gpa, res.node, res.val);
69717512 }
69727513
69737514 fn castType(res: *Result, p: *Parser, dest_qt: QualType, operand_tok: TokenIndex, l_paren: TokenIndex) !void {
......@@ -6994,6 +7535,16 @@ pub const Result = struct {
69947535 } else if (res.qt.is(p.comp, .void)) {
69957536 try p.err(operand_tok, .invalid_cast_operand_type, .{res.qt});
69967537 return error.ParsingFailed;
7538 } else if (dest_qt.is(p.comp, .storage_float) or res.qt.is(p.comp, .storage_float)) {
7539 if (dest_qt.is(p.comp, .storage_float) and dest_qt.eql(res.qt, p.comp)) {
7540 cast_kind = .no_op;
7541 } else if (dest_qt.is(p.comp, .storage_float)) {
7542 try p.err(l_paren, .invalid_cast_type, .{dest_qt});
7543 return error.ParsingFailed;
7544 } else {
7545 try p.err(operand_tok, .invalid_cast_operand_type, .{res.qt});
7546 return error.ParsingFailed;
7547 }
69977548 } else if (dest_vec and src_vec) {
69987549 if (dest_qt.eql(res.qt, p.comp)) {
69997550 cast_kind = .no_op;
......@@ -7030,13 +7581,13 @@ pub const Result = struct {
70307581 }
70317582 } else if (src_sk == .nullptr_t) {
70327583 if (dest_sk == .bool) {
7033 try res.nullToPointer(p, res.qt, l_paren);
7584 try res.nullToPointer(p, res.qt);
70347585 res.val.boolCast(p.comp);
70357586 res.qt = .bool;
7036 try res.implicitCast(p, .pointer_to_bool, l_paren);
7587 try res.implicitCast(p, .pointer_to_bool);
70377588 try res.saveValue(p);
70387589 } else if (dest_sk.isPointer()) {
7039 try res.nullToPointer(p, dest_qt, l_paren);
7590 try res.nullToPointer(p, dest_qt);
70407591 } else {
70417592 try p.err(l_paren, .invalid_object_cast, .{ res.qt, dest_qt });
70427593 return error.ParsingFailed;
......@@ -7061,13 +7612,13 @@ pub const Result = struct {
70617612 } else if (src_sk.isInt()) {
70627613 if (!src_sk.isReal()) {
70637614 res.qt = res.qt.toReal(p.comp);
7064 try res.implicitCast(p, .complex_int_to_real, l_paren);
7615 try res.implicitCast(p, .complex_int_to_real);
70657616 }
70667617 cast_kind = .int_to_bool;
70677618 } else if (src_sk.isFloat()) {
70687619 if (!src_sk.isReal()) {
70697620 res.qt = res.qt.toReal(p.comp);
7070 try res.implicitCast(p, .complex_float_to_real, l_paren);
7621 try res.implicitCast(p, .complex_float_to_real);
70717622 }
70727623 cast_kind = .float_to_bool;
70737624 }
......@@ -7075,7 +7626,7 @@ pub const Result = struct {
70757626 if (src_sk == .bool) {
70767627 if (!dest_sk.isReal()) {
70777628 res.qt = dest_qt.toReal(p.comp);
7078 try res.implicitCast(p, .bool_to_int, l_paren);
7629 try res.implicitCast(p, .bool_to_int);
70797630 cast_kind = .real_to_complex_int;
70807631 } else {
70817632 cast_kind = .bool_to_int;
......@@ -7085,11 +7636,11 @@ pub const Result = struct {
70857636 cast_kind = .int_cast;
70867637 } else if (src_sk.isReal()) {
70877638 res.qt = dest_qt.toReal(p.comp);
7088 try res.implicitCast(p, .int_cast, l_paren);
7639 try res.implicitCast(p, .int_cast);
70897640 cast_kind = .real_to_complex_int;
70907641 } else if (dest_sk.isReal()) {
70917642 res.qt = res.qt.toReal(p.comp);
7092 try res.implicitCast(p, .complex_int_to_real, l_paren);
7643 try res.implicitCast(p, .complex_int_to_real);
70937644 cast_kind = .int_cast;
70947645 } else {
70957646 cast_kind = .complex_int_cast;
......@@ -7098,7 +7649,7 @@ pub const Result = struct {
70987649 res.val = .{};
70997650 if (!dest_sk.isReal()) {
71007651 res.qt = dest_qt.toReal(p.comp);
7101 try res.implicitCast(p, .pointer_to_int, l_paren);
7652 try res.implicitCast(p, .pointer_to_int);
71027653 cast_kind = .real_to_complex_int;
71037654 } else {
71047655 cast_kind = .pointer_to_int;
......@@ -7107,11 +7658,11 @@ pub const Result = struct {
71077658 cast_kind = .float_to_int;
71087659 } else if (src_sk.isReal()) {
71097660 res.qt = dest_qt.toReal(p.comp);
7110 try res.implicitCast(p, .float_to_int, l_paren);
7661 try res.implicitCast(p, .float_to_int);
71117662 cast_kind = .real_to_complex_int;
71127663 } else if (dest_sk.isReal()) {
71137664 res.qt = res.qt.toReal(p.comp);
7114 try res.implicitCast(p, .complex_float_to_real, l_paren);
7665 try res.implicitCast(p, .complex_float_to_real);
71157666 cast_kind = .float_to_int;
71167667 } else {
71177668 cast_kind = .complex_float_to_complex_int;
......@@ -7124,7 +7675,7 @@ pub const Result = struct {
71247675 } else if (src_sk.isInt()) {
71257676 if (!src_sk.isReal()) {
71267677 res.qt = res.qt.toReal(p.comp);
7127 try res.implicitCast(p, .complex_int_to_real, l_paren);
7678 try res.implicitCast(p, .complex_int_to_real);
71287679 }
71297680 cast_kind = .int_to_pointer;
71307681 } else if (res.qt.is(p.comp, .array)) {
......@@ -7139,7 +7690,7 @@ pub const Result = struct {
71397690 if (src_sk == .bool) {
71407691 if (!dest_sk.isReal()) {
71417692 res.qt = dest_qt.toReal(p.comp);
7142 try res.implicitCast(p, .bool_to_float, l_paren);
7693 try res.implicitCast(p, .bool_to_float);
71437694 cast_kind = .real_to_complex_float;
71447695 } else {
71457696 cast_kind = .bool_to_float;
......@@ -7149,11 +7700,11 @@ pub const Result = struct {
71497700 cast_kind = .int_to_float;
71507701 } else if (src_sk.isReal()) {
71517702 res.qt = dest_qt.toReal(p.comp);
7152 try res.implicitCast(p, .int_to_float, l_paren);
7703 try res.implicitCast(p, .int_to_float);
71537704 cast_kind = .real_to_complex_float;
71547705 } else if (dest_sk.isReal()) {
71557706 res.qt = res.qt.toReal(p.comp);
7156 try res.implicitCast(p, .complex_int_to_real, l_paren);
7707 try res.implicitCast(p, .complex_int_to_real);
71577708 cast_kind = .int_to_float;
71587709 } else {
71597710 cast_kind = .complex_int_to_complex_float;
......@@ -7162,11 +7713,11 @@ pub const Result = struct {
71627713 cast_kind = .float_cast;
71637714 } else if (src_sk.isReal()) {
71647715 res.qt = dest_qt.toReal(p.comp);
7165 try res.implicitCast(p, .float_cast, l_paren);
7716 try res.implicitCast(p, .float_cast);
71667717 cast_kind = .real_to_complex_float;
71677718 } else if (dest_sk.isReal()) {
71687719 res.qt = res.qt.toReal(p.comp);
7169 try res.implicitCast(p, .complex_float_to_real, l_paren);
7720 try res.implicitCast(p, .complex_float_to_real);
71707721 cast_kind = .float_cast;
71717722 } else {
71727723 cast_kind = .complex_float_cast;
......@@ -7282,7 +7833,7 @@ pub const Result = struct {
72827833 // Subject of the coercion does not need to be qualified.
72837834 const src_original_qt = res.qt;
72847835 switch (c) {
7285 .init, .ret, .assign => try res.lvalConversion(p, tok),
7836 .init, .ret, .assign => try res.lvalConversion(p),
72867837 else => {},
72877838 }
72887839 if (res.qt.isInvalid()) return;
......@@ -7290,11 +7841,31 @@ pub const Result = struct {
72907841 const dest_sk = dest_unqual.scalarKind(p.comp);
72917842 const src_sk = res.qt.scalarKind(p.comp);
72927843
7293 if (dest_qt.is(p.comp, .vector) and res.qt.is(p.comp, .vector)) {
7294 if (dest_unqual.eql(res.qt, p.comp)) return;
7844 if (dest_unqual.is(p.comp, .storage_float) and dest_unqual.eql(res.qt, p.comp)) {
7845 return;
7846 }
7847 if (c == .assign) {
7848 const base_type = dest_unqual.base(p.comp);
7849 switch (base_type.type) {
7850 .array => return p.err(tok, .array_not_assignable, .{dest_qt}),
7851 .func => return p.err(tok, .non_object_not_assignable, .{dest_qt}),
7852 else => if (base_type.qt.hasIncompleteSize(p.comp)) {
7853 return p.err(tok, .incomplete_type_not_assignable, .{dest_qt});
7854 },
7855 }
7856 }
7857
7858 const dest_opt_vec = dest_qt.get(p.comp, .vector);
7859 const res_opt_vec = res.qt.get(p.comp, .vector);
7860
7861 if (dest_opt_vec != null and res_opt_vec != null) {
7862 const dest_vector = dest_opt_vec.?;
7863 const res_vector = res_opt_vec.?;
7864
7865 if (dest_vector.eql(res_vector, p.comp, true)) return;
72957866 if (dest_unqual.sizeCompare(res.qt, p.comp) == .eq) {
72967867 res.qt = dest_unqual;
7297 return res.implicitCast(p, .bitcast, tok);
7868 return res.implicitCast(p, .bitcast);
72987869 }
72997870 } else if (dest_sk == .nullptr_t) {
73007871 if (src_sk == .nullptr_t) return;
......@@ -7308,7 +7879,7 @@ pub const Result = struct {
73087879 if (src_sk.isInt() or src_sk.isFloat()) {
73097880 try res.castToInt(p, dest_unqual, tok);
73107881 return;
7311 } else if (src_sk.isPointer()) {
7882 } else if (src_sk.isPointer() and src_sk != .block_pointer) {
73127883 if (c == .test_coerce) return error.CoercionFailed;
73137884 try p.err(tok, .implicit_ptr_to_int, .{ src_original_qt, dest_unqual });
73147885 try c.note(p);
......@@ -7317,24 +7888,28 @@ pub const Result = struct {
73177888 }
73187889 } else if (dest_sk.isFloat()) {
73197890 if (src_sk.isInt() or src_sk.isFloat()) {
7320 try res.castToFloat(p, dest_unqual, tok);
7891 try res.castToFloat(p, dest_unqual);
73217892 return;
73227893 }
7323 } else if (dest_sk.isPointer()) {
7894 } else if (dest_unqual.is(p.comp, .storage_float)) {
7895 // Storage floats are copy-only; conversions from other scalar types
7896 // are diagnosed by the common switch statement below this
7897 // large if/else block
7898 } else if (dest_sk.isPointer() and dest_sk != .block_pointer) {
73247899 if (src_sk == .nullptr_t or res.val.isZero(p.comp)) {
7325 try res.nullToPointer(p, dest_unqual, tok);
7900 try res.nullToPointer(p, dest_unqual);
73267901 return;
73277902 } else if (src_sk.isInt() and src_sk.isReal()) {
73287903 if (c == .test_coerce) return error.CoercionFailed;
73297904 try p.err(tok, .implicit_int_to_ptr, .{ src_original_qt, dest_unqual });
73307905 try c.note(p);
7331 try res.castToPointer(p, dest_unqual, tok);
7906 try res.castToPointer(p, dest_unqual);
73327907 return;
73337908 } else if (src_sk == .void_pointer or dest_unqual.eql(res.qt, p.comp)) {
7334 return res.castToPointer(p, dest_unqual, tok);
7909 return res.castToPointer(p, dest_unqual);
73357910 } else if (dest_sk == .void_pointer and src_sk.isPointer()) {
7336 return res.castToPointer(p, dest_unqual, tok);
7337 } else if (src_sk.isPointer()) {
7911 return res.castToPointer(p, dest_unqual);
7912 } else if (src_sk.isPointer() and src_sk != .block_pointer) {
73387913 const src_child = res.qt.childType(p.comp);
73397914 const dest_child = dest_unqual.childType(p.comp);
73407915 if (src_child.eql(dest_child, p.comp)) {
......@@ -7342,15 +7917,16 @@ pub const Result = struct {
73427917 (src_child.@"volatile" and !dest_child.@"volatile") or
73437918 (src_child.restrict and !dest_child.restrict))
73447919 {
7345 try p.err(tok, switch (c) {
7346 .assign => .ptr_assign_discards_quals,
7347 .init => .ptr_init_discards_quals,
7348 .ret => .ptr_ret_discards_quals,
7349 .arg => .ptr_arg_discards_quals,
7920 const data: struct { diag: Diagnostic, qts: [2]QualType } = switch (c) {
7921 .assign => .{ .diag = .ptr_assign_discards_quals, .qts = .{ dest_qt, src_original_qt } },
7922 .init => .{ .diag = .ptr_init_discards_quals, .qts = .{ dest_qt, src_original_qt } },
7923 .ret => .{ .diag = .ptr_ret_discards_quals, .qts = .{ src_original_qt, dest_qt } },
7924 .arg => .{ .diag = .ptr_arg_discards_quals, .qts = .{ src_original_qt, dest_qt } },
73507925 .test_coerce => return error.CoercionFailed,
7351 }, .{ dest_qt, src_original_qt });
7926 };
7927 try p.err(tok, data.diag, .{ data.qts[0], data.qts[1] });
73527928 }
7353 try res.castToPointer(p, dest_unqual, tok);
7929 try res.castToPointer(p, dest_unqual);
73547930 return;
73557931 }
73567932
......@@ -7365,7 +7941,11 @@ pub const Result = struct {
73657941 try c.note(p);
73667942
73677943 res.qt = dest_unqual;
7368 return res.implicitCast(p, .bitcast, tok);
7944 return res.implicitCast(p, .bitcast);
7945 } else if (src_sk == .block_pointer) {
7946 try p.err(tok, .incompatible_assign, .{ dest_qt, src_original_qt });
7947 try c.note(p);
7948 return;
73697949 }
73707950 } else if (dest_unqual.getRecord(p.comp) != null) {
73717951 if (dest_unqual.eql(res.qt, p.comp)) {
......@@ -7373,7 +7953,7 @@ pub const Result = struct {
73737953 }
73747954
73757955 if (c == .arg) if (dest_unqual.get(p.comp, .@"union")) |union_ty| {
7376 if (dest_unqual.hasAttribute(p.comp, .transparent_union)) transparent_union: {
7956 if (dest_unqual.hasAttribute(&p.tree, .transparent_union)) transparent_union: {
73777957 res.coerceExtra(p, union_ty.fields[0].qt, tok, .test_coerce) catch |er| switch (er) {
73787958 error.CoercionFailed => break :transparent_union,
73797959 else => |e| return e,
......@@ -7392,15 +7972,18 @@ pub const Result = struct {
73927972 if (dest_unqual.eql(res.qt, p.comp)) {
73937973 return; // ok
73947974 }
7975 } else if (dest_sk == .block_pointer) {
7976 if (src_sk == .nullptr_t or res.val.isZero(p.comp)) {
7977 try res.nullToPointer(p, dest_unqual);
7978 return; // ok
7979 } else if (src_sk == .void_pointer) {
7980 try res.implicitCast(p, .bitcast);
7981 return; // ok
7982 } else if (dest_unqual.eql(res.qt, p.comp)) {
7983 return; // ok
7984 }
73957985 } else {
7396 if (c == .assign) {
7397 const base_type = dest_unqual.base(p.comp);
7398 switch (base_type.type) {
7399 .array => return p.err(tok, .array_not_assignable, .{base_type.qt}),
7400 .func => return p.err(tok, .non_object_not_assignable, .{base_type.qt}),
7401 else => {},
7402 }
7403 } else if (c == .test_coerce) {
7986 if (c == .test_coerce) {
74047987 return error.CoercionFailed;
74057988 }
74067989 // This case should not be possible and an error should have already been emitted but we
......@@ -7423,6 +8006,18 @@ fn expect(p: *Parser, comptime func: fn (*Parser) Error!?Result) Error!Result {
74238006 return p.expectResult(try func(p));
74248007}
74258008
8009fn expectWithClosing(p: *Parser, comptime func: fn (*Parser) Error!?Result, closing: Token.Id) Error!Result {
8010 const opt_res = func(p) catch |er| {
8011 if (er == error.ParsingFailed) p.skipTo(closing);
8012 return er;
8013 };
8014 return opt_res orelse {
8015 try p.err(p.tok_i, .expected_expr, .{});
8016 p.skipTo(closing);
8017 return error.ParsingFailed;
8018 };
8019}
8020
74268021fn expectResult(p: *Parser, res: ?Result) Error!Result {
74278022 return res orelse {
74288023 try p.err(p.tok_i, .expected_expr, .{});
......@@ -7430,72 +8025,39 @@ fn expectResult(p: *Parser, res: ?Result) Error!Result {
74308025 };
74318026}
74328027
7433/// expr : assignExpr (',' assignExpr)*
74348028fn expr(p: *Parser) Error!?Result {
7435 var expr_start = p.tok_i;
7436 var prev_total = p.diagnostics.total;
7437 var lhs = (try p.assignExpr()) orelse {
7438 if (p.tok_ids[p.tok_i] == .comma) _ = try p.expectResult(null);
7439 return null;
7440 };
7441 while (p.eatToken(.comma)) |comma| {
7442 try lhs.maybeWarnUnused(p, expr_start, prev_total);
7443 expr_start = p.tok_i;
7444 prev_total = p.diagnostics.total;
7445
7446 var rhs = try p.expect(assignExpr);
7447 try rhs.lvalConversion(p, expr_start);
7448 lhs.val = rhs.val;
7449 lhs.qt = rhs.qt;
7450 try lhs.bin(p, .comma_expr, rhs, comma);
7451 }
7452 return lhs;
7453}
7454
7455fn eatTag(p: *Parser, id: Token.Id) ?std.meta.Tag(Node) {
7456 if (p.eatToken(id)) |_| return switch (id) {
7457 .equal => .assign_expr,
7458 .asterisk_equal => .mul_assign_expr,
7459 .slash_equal => .div_assign_expr,
7460 .percent_equal => .mod_assign_expr,
7461 .plus_equal => .add_assign_expr,
7462 .minus_equal => .sub_assign_expr,
7463 .angle_bracket_angle_bracket_left_equal => .shl_assign_expr,
7464 .angle_bracket_angle_bracket_right_equal => .shr_assign_expr,
7465 .ampersand_equal => .bit_and_assign_expr,
7466 .caret_equal => .bit_xor_assign_expr,
7467 .pipe_equal => .bit_or_assign_expr,
7468 .equal_equal => .equal_expr,
7469 .bang_equal => .not_equal_expr,
7470 .angle_bracket_left => .less_than_expr,
7471 .angle_bracket_left_equal => .less_than_equal_expr,
7472 .angle_bracket_right => .greater_than_expr,
7473 .angle_bracket_right_equal => .greater_than_equal_expr,
7474 .angle_bracket_angle_bracket_left => .shl_expr,
7475 .angle_bracket_angle_bracket_right => .shr_expr,
7476 .plus => .add_expr,
7477 .minus => .sub_expr,
7478 .asterisk => .mul_expr,
7479 .slash => .div_expr,
7480 .percent => .mod_expr,
7481 else => unreachable,
7482 } else return null;
8029 return p.binaryExpr(.any, true);
74838030}
74848031
7485fn nonAssignExpr(assign_node: std.meta.Tag(Node)) std.meta.Tag(Node) {
7486 return switch (assign_node) {
7487 .mul_assign_expr => .mul_expr,
7488 .div_assign_expr => .div_expr,
7489 .mod_assign_expr => .mod_expr,
7490 .add_assign_expr => .add_expr,
7491 .sub_assign_expr => .sub_expr,
7492 .shl_assign_expr => .shl_expr,
7493 .shr_assign_expr => .shr_expr,
7494 .bit_and_assign_expr => .bit_and_expr,
7495 .bit_xor_assign_expr => .bit_xor_expr,
7496 .bit_or_assign_expr => .bit_or_expr,
7497 else => unreachable,
7498 };
8032fn assignExpr(p: *Parser) Error!?Result {
8033 return p.binaryExpr(.assign, true);
8034}
8035
8036/// Returns a parse error if the expression is not an integer constant
8037/// integerConstExpr : constExpr
8038fn integerConstExpr(p: *Parser, decl_folding: ConstDeclFoldingMode) Error!Result {
8039 const start = p.tok_i;
8040 const res = try p.constExpr(decl_folding);
8041 if (!res.qt.isInvalid() and !res.qt.isRealInt(p.comp)) {
8042 try p.err(start, .expected_integer_constant_expr, .{});
8043 return error.ParsingFailed;
8044 }
8045 return res;
8046}
8047
8048/// Caller is responsible for issuing a diagnostic if result is invalid/unavailable
8049/// constExpr : condExpr
8050fn constExpr(p: *Parser, decl_folding: ConstDeclFoldingMode) Error!Result {
8051 const const_decl_folding = p.const_decl_folding;
8052 defer p.const_decl_folding = const_decl_folding;
8053 p.const_decl_folding = decl_folding;
8054
8055 const res = try p.expect(assignExpr);
8056
8057 if (res.qt.isInvalid() or res.val.opt_ref == .none) return res;
8058
8059 try res.putValue(p);
8060 return res;
74998061}
75008062
75018063fn unwrapNestedOperation(p: *Parser, node_idx: Node.Index) ?Node.DeclRef {
......@@ -7504,13 +8066,16 @@ fn unwrapNestedOperation(p: *Parser, node_idx: Node.Index) ?Node.DeclRef {
75048066 .member_access_ptr_expr,
75058067 .member_access_expr,
75068068 => |memb_or_arr_access| continue :loop memb_or_arr_access.base.get(&p.tree),
7507 inline .cast,
8069 .cast => |cast| {
8070 if (!cast.implicit) return null;
8071 continue :loop cast.operand.get(&p.tree);
8072 },
75088073 .paren_expr,
75098074 .pre_inc_expr,
75108075 .post_inc_expr,
75118076 .pre_dec_expr,
75128077 .post_dec_expr,
7513 => |cast_or_unary| continue :loop cast_or_unary.operand.get(&p.tree),
8078 => |unary| continue :loop unary.operand.get(&p.tree),
75148079 .sub_expr,
75158080 .add_expr,
75168081 => |bin| continue :loop bin.lhs.get(&p.tree),
......@@ -7543,522 +8108,431 @@ fn issueConstAssignmentDiagnostics(p: *Parser, node_idx: Node.Index, tok: TokenI
75438108 const name = p.tokSlice(unwrapped.name_tok);
75448109 try p.err(tok, .const_var_assignment, .{ name, unwrapped.qt });
75458110 try p.issueDeclaredConstHereNote(unwrapped, name);
8111 } else if (node_idx.get(&p.tree) == .cast) {
8112 try p.err(tok, .cast_not_assignable, .{});
75468113 } else {
75478114 try p.err(tok, .not_assignable, .{});
75488115 }
75498116}
75508117
8118/// expr : assignExpr (',' assignExpr)*
75518119/// assignExpr
75528120/// : condExpr
75538121/// | unExpr ('=' | '*=' | '/=' | '%=' | '+=' | '-=' | '<<=' | '>>=' | '&=' | '^=' | '|=') assignExpr
7554fn assignExpr(p: *Parser) Error!?Result {
7555 var lhs = (try p.condExpr()) orelse return null;
8122/// condExpr : lorExpr ('?' expression? ':' condExpr)?
8123/// lorExpr : landExpr ('||' landExpr)*
8124/// landExpr : orExpr ('&&' orExpr)*
8125/// orExpr : xorExpr ('|' xorExpr)*
8126/// xorExpr : andExpr ('^' andExpr)*
8127/// andExpr : eqExpr ('&' eqExpr)*
8128/// eqExpr : compExpr (('==' | '!=') compExpr)*
8129/// compExpr : shiftExpr (('<' | '<=' | '>' | '>=') shiftExpr)*
8130/// shiftExpr : addExpr (('<<' | '>>') addExpr)*
8131/// addExpr : mulExpr (('+' | '-') mulExpr)*
8132/// mulExpr : unExpr (('*' | '/' | '%') unExpr)*´
8133fn binaryExpr(p: *Parser, min_prec: Token.Precedence, eval: bool) Error!?Result {
8134 var prev_errors = p.diagnostics.errors;
75568135
7557 const tok = p.tok_i;
7558 const tag = p.eatTag(.equal) orelse
7559 p.eatTag(.asterisk_equal) orelse
7560 p.eatTag(.slash_equal) orelse
7561 p.eatTag(.percent_equal) orelse
7562 p.eatTag(.plus_equal) orelse
7563 p.eatTag(.minus_equal) orelse
7564 p.eatTag(.angle_bracket_angle_bracket_left_equal) orelse
7565 p.eatTag(.angle_bracket_angle_bracket_right_equal) orelse
7566 p.eatTag(.ampersand_equal) orelse
7567 p.eatTag(.caret_equal) orelse
7568 p.eatTag(.pipe_equal) orelse return lhs;
7569
7570 var rhs = try p.expect(assignExpr);
7571
7572 var is_const: bool = undefined;
7573 if (!p.tree.isLvalExtra(lhs.node, &is_const) or is_const) {
7574 try p.issueConstAssignmentDiagnostics(lhs.node, tok);
7575 lhs.qt = .invalid;
7576 }
7577
7578 if (tag == .assign_expr) {
7579 try rhs.coerce(p, lhs.qt, tok, .assign);
7580
7581 try lhs.bin(p, tag, rhs, tok);
7582 return lhs;
7583 }
7584
7585 var lhs_dummy = blk: {
7586 var lhs_copy = lhs;
7587 try lhs_copy.un(p, .compound_assign_dummy_expr, tok);
7588 try lhs_copy.lvalConversion(p, tok);
7589 break :blk lhs_copy;
8136 var lhs = try p.unExpr(eval) orelse {
8137 if (min_prec.lt(.comma) and p.tok_ids[p.tok_i] == .comma) {
8138 try p.err(p.tok_i, .expected_expr, .{});
8139 return error.ParsingFailed;
8140 }
8141 return null;
75908142 };
7591 switch (tag) {
7592 .mul_assign_expr,
7593 .div_assign_expr,
7594 .mod_assign_expr,
7595 => {
7596 if (!lhs.qt.isInvalid() and rhs.val.isZero(p.comp) and lhs.qt.isInt(p.comp) and rhs.qt.isInt(p.comp)) {
7597 switch (tag) {
7598 .div_assign_expr => try p.err(tok, .division_by_zero, .{"division"}),
7599 .mod_assign_expr => try p.err(tok, .division_by_zero, .{"remainder"}),
7600 else => {},
7601 }
7602 }
7603 _ = try lhs_dummy.adjustTypes(tok, &rhs, p, if (tag == .mod_assign_expr) .integer else .arithmetic);
7604 },
7605 .sub_assign_expr => {
7606 _ = try lhs_dummy.adjustTypes(tok, &rhs, p, .sub);
7607 },
7608 .add_assign_expr => {
7609 _ = try lhs_dummy.adjustTypes(tok, &rhs, p, .add);
7610 },
7611 .shl_assign_expr,
7612 .shr_assign_expr,
7613 .bit_and_assign_expr,
7614 .bit_xor_assign_expr,
7615 .bit_or_assign_expr,
7616 => {
7617 _ = try lhs_dummy.adjustTypes(tok, &rhs, p, .integer);
7618 },
7619 else => unreachable,
7620 }
76218143
7622 _ = try lhs_dummy.bin(p, nonAssignExpr(tag), rhs, tok);
7623 try lhs_dummy.coerce(p, lhs.qt, tok, .assign);
7624 try lhs.bin(p, tag, lhs_dummy, tok);
7625 return lhs;
7626}
8144 while (true) {
8145 var op_prec = Token.precedence[@backingInt(p.tok_ids[p.tok_i])];
8146 if (op_prec.lt(min_prec)) {
8147 return lhs;
8148 }
76278149
7628/// Returns a parse error if the expression is not an integer constant
7629/// integerConstExpr : constExpr
7630fn integerConstExpr(p: *Parser, decl_folding: ConstDeclFoldingMode) Error!Result {
7631 const start = p.tok_i;
7632 const res = try p.constExpr(decl_folding);
7633 if (!res.qt.isInvalid() and !res.qt.isRealInt(p.comp)) {
7634 try p.err(start, .expected_integer_constant_expr, .{});
7635 return error.ParsingFailed;
7636 }
7637 return res;
7638}
8150 const operator = p.tok_i;
8151 p.tok_i += 1;
76398152
7640/// Caller is responsible for issuing a diagnostic if result is invalid/unavailable
7641/// constExpr : condExpr
7642fn constExpr(p: *Parser, decl_folding: ConstDeclFoldingMode) Error!Result {
7643 const const_decl_folding = p.const_decl_folding;
7644 defer p.const_decl_folding = const_decl_folding;
7645 p.const_decl_folding = decl_folding;
8153 // Special handling for binary conditionals.
8154 if (op_prec == .conditional and p.eatToken(.colon) != null) op_prec = .binary_conditional;
76468155
7647 const res = try p.expect(condExpr);
8156 const eval_rhs = switch (op_prec) {
8157 .bool_and, .conditional => if (lhs.val.opt_ref != .none) eval and lhs.val.toBool(p.comp) else eval,
8158 .bool_or, .binary_conditional => if (lhs.val.opt_ref != .none) eval and !lhs.val.toBool(p.comp) else eval,
8159 else => eval,
8160 };
8161 var rhs = try p.expectResult(try p.binaryExpr(op_prec.next(min_prec), eval_rhs));
8162
8163 switch (op_prec) {
8164 _ => unreachable,
8165 .comma => {
8166 try p.diagnoseUnusedValue(lhs.node, prev_errors);
8167 prev_errors = p.diagnostics.total;
8168
8169 try lhs.lvalConversion(p);
8170 try rhs.lvalConversion(p);
8171 lhs.val = rhs.val;
8172 lhs.qt = rhs.qt;
8173 try lhs.bin(p, .comma_expr, rhs, operator);
8174 },
8175 .assign => {
8176 const tag: std.meta.Tag(Node) = switch (p.tok_ids[operator]) {
8177 .equal => .assign_expr,
8178 .asterisk_equal => .mul_assign_expr,
8179 .slash_equal => .div_assign_expr,
8180 .percent_equal => .mod_assign_expr,
8181 .plus_equal => .add_assign_expr,
8182 .minus_equal => .sub_assign_expr,
8183 .angle_bracket_angle_bracket_left_equal => .shl_assign_expr,
8184 .angle_bracket_angle_bracket_right_equal => .shr_assign_expr,
8185 .ampersand_equal => .bit_and_assign_expr,
8186 .caret_equal => .bit_xor_assign_expr,
8187 .pipe_equal => .bit_or_assign_expr,
8188 else => unreachable,
8189 };
76488190
7649 if (res.qt.isInvalid() or res.val.opt_ref == .none) return res;
8191 var is_const: bool = undefined;
8192 if (!p.tree.isLvalExtra(lhs.node, &is_const) or is_const) {
8193 try p.issueConstAssignmentDiagnostics(lhs.node, operator);
8194 lhs.qt = .invalid;
8195 }
8196 lhs.val = .{};
76508197
7651 try res.putValue(p);
7652 return res;
7653}
8198 if (tag == .assign_expr) {
8199 try rhs.coerce(p, lhs.qt, operator, .assign);
76548200
7655/// condExpr : lorExpr ('?' expression? ':' condExpr)?
7656fn condExpr(p: *Parser) Error!?Result {
7657 const cond_tok = p.tok_i;
7658 var cond = (try p.lorExpr()) orelse return null;
7659 if (p.eatToken(.question_mark) == null) return cond;
7660 try cond.lvalConversion(p, cond_tok);
7661 const saved_eval = p.no_eval;
8201 try lhs.bin(p, tag, rhs, operator);
8202 continue;
8203 }
76628204
7663 if (cond.qt.scalarKind(p.comp) == .none) {
7664 try p.err(cond_tok, .cond_expr_type, .{cond.qt});
7665 return error.ParsingFailed;
7666 }
8205 var lhs_dummy = lhs;
8206 try lhs_dummy.un(p, .compound_assign_dummy_expr, operator);
8207 try lhs_dummy.lvalConversion(p);
76678208
7668 // Prepare for possible binary conditional expression.
7669 const maybe_colon = p.eatToken(.colon);
8209 switch (tag) {
8210 .mul_assign_expr,
8211 .div_assign_expr,
8212 .mod_assign_expr,
8213 => {
8214 try lhs_dummy.adjustTypes(operator, &rhs, p, if (tag == .mod_assign_expr) .integer else .arithmetic);
8215 if (eval and !lhs.qt.isInvalid() and rhs.val.isZero(p.comp) and lhs_dummy.qt.isInt(p.comp)) {
8216 switch (tag) {
8217 .div_assign_expr => try p.err(operator, .division_by_zero, .{"division"}),
8218 .mod_assign_expr => try p.err(operator, .division_by_zero, .{"remainder"}),
8219 else => {},
8220 }
8221 }
8222 },
8223 .sub_assign_expr => try lhs_dummy.adjustTypes(operator, &rhs, p, .sub),
8224 .add_assign_expr => try lhs_dummy.adjustTypes(operator, &rhs, p, .add),
8225 .shl_assign_expr,
8226 .shr_assign_expr,
8227 .bit_and_assign_expr,
8228 .bit_xor_assign_expr,
8229 .bit_or_assign_expr,
8230 => try lhs_dummy.adjustTypes(operator, &rhs, p, .integer),
8231 else => unreachable,
8232 }
76708233
7671 // Depending on the value of the condition, avoid evaluating unreachable branches.
7672 var then_expr = blk: {
7673 defer p.no_eval = saved_eval;
7674 if (cond.val.opt_ref != .none and !cond.val.toBool(p.comp)) p.no_eval = true;
7675 break :blk try p.expect(expr);
7676 };
8234 const non_assign_tag: std.meta.Tag(Node) = switch (tag) {
8235 .mul_assign_expr => .mul_expr,
8236 .div_assign_expr => .div_expr,
8237 .mod_assign_expr => .mod_expr,
8238 .add_assign_expr => .add_expr,
8239 .sub_assign_expr => .sub_expr,
8240 .shl_assign_expr => .shl_expr,
8241 .shr_assign_expr => .shr_expr,
8242 .bit_and_assign_expr => .bit_and_expr,
8243 .bit_xor_assign_expr => .bit_xor_expr,
8244 .bit_or_assign_expr => .bit_or_expr,
8245 else => unreachable,
8246 };
76778247
7678 // If we saw a colon then this is a binary conditional expression.
7679 if (maybe_colon) |colon| {
7680 var cond_then = cond;
7681 cond_then.node = try p.addNode(.{
7682 .cond_dummy_expr = .{
7683 .op_tok = colon,
7684 .operand = cond.node,
7685 .qt = cond.qt,
8248 _ = try lhs_dummy.bin(p, non_assign_tag, rhs, operator);
8249 try lhs_dummy.coerce(p, lhs.qt, operator, .assign);
8250 try lhs.bin(p, tag, lhs_dummy, operator);
76868251 },
7687 });
7688 _ = try cond_then.adjustTypes(colon, &then_expr, p, .conditional);
7689 cond.qt = then_expr.qt;
7690 cond.node = try p.addNode(.{
7691 .binary_cond_expr = .{
7692 .cond_tok = cond_tok,
7693 .cond = cond.node,
7694 .then_expr = cond_then.node,
7695 .else_expr = then_expr.node,
7696 .qt = cond.qt,
8252 .binary_conditional => {
8253 try lhs.lvalConversion(p);
8254 const cond_known = lhs.val.opt_ref != .none;
8255 const cond_true = cond_known and lhs.val.toBool(p.comp);
8256
8257 if (!lhs.qt.isInvalid() and lhs.qt.scalarKind(p.comp) == .none) {
8258 try p.err(operator, .cond_expr_type, .{lhs.qt});
8259 lhs.qt = .invalid;
8260 }
8261
8262 const cond_node = lhs.node;
8263 lhs.node = try p.addNode(.{
8264 .cond_dummy_expr = .{
8265 .op_tok = operator,
8266 .operand = lhs.node,
8267 .qt = lhs.qt,
8268 },
8269 });
8270 try lhs.adjustTypes(operator, &rhs, p, .conditional);
8271 if (cond_known) {
8272 lhs.val = if (cond_true) lhs.val else rhs.val;
8273 try lhs.putValue(p);
8274 }
8275 lhs.qt = rhs.qt;
8276 lhs.node = try p.addNode(.{
8277 .binary_cond_expr = .{
8278 .cond_tok = operator,
8279 .cond = cond_node,
8280 .then_expr = lhs.node,
8281 .else_expr = rhs.node,
8282 .qt = lhs.qt,
8283 },
8284 });
76978285 },
7698 });
7699 return cond;
7700 }
8286 .conditional => {
8287 try lhs.lvalConversion(p);
8288 const cond_known = lhs.val.opt_ref != .none;
8289 const cond_true = cond_known and lhs.val.toBool(p.comp);
77018290
7702 const colon = try p.expectToken(.colon);
7703 var else_expr = blk: {
7704 defer p.no_eval = saved_eval;
7705 if (cond.val.opt_ref != .none and cond.val.toBool(p.comp)) p.no_eval = true;
7706 break :blk try p.expect(condExpr);
7707 };
8291 if (!lhs.qt.isInvalid() and lhs.qt.scalarKind(p.comp) == .none) {
8292 try p.err(operator, .cond_expr_type, .{lhs.qt});
8293 }
77088294
7709 _ = try then_expr.adjustTypes(colon, &else_expr, p, .conditional);
8295 const colon = try p.expectToken(.colon);
77108296
7711 if (cond.val.opt_ref != .none) {
7712 cond.val = if (cond.val.toBool(p.comp)) then_expr.val else else_expr.val;
7713 } else {
7714 try then_expr.saveValue(p);
7715 try else_expr.saveValue(p);
7716 }
7717 cond.qt = then_expr.qt;
7718 cond.node = try p.addNode(.{
7719 .cond_expr = .{
7720 .cond_tok = cond_tok,
7721 .qt = cond.qt,
7722 .cond = cond.node,
7723 .then_expr = then_expr.node,
7724 .else_expr = else_expr.node,
7725 },
7726 });
7727 return cond;
7728}
8297 var else_expr = try p.expectResult(try p.binaryExpr(op_prec, eval and !cond_true));
77298298
7730/// lorExpr : landExpr ('||' landExpr)*
7731fn lorExpr(p: *Parser) Error!?Result {
7732 var lhs = (try p.landExpr()) orelse return null;
7733 const saved_eval = p.no_eval;
7734 defer p.no_eval = saved_eval;
7735
7736 while (p.eatToken(.pipe_pipe)) |tok| {
7737 if (lhs.val.opt_ref != .none and lhs.val.toBool(p.comp)) p.no_eval = true;
7738 var rhs = try p.expect(landExpr);
7739
7740 if (try lhs.adjustTypes(tok, &rhs, p, .boolean_logic)) {
7741 const res = lhs.val.toBool(p.comp) or rhs.val.toBool(p.comp);
7742 lhs.val = Value.fromBool(res);
7743 } else {
7744 lhs.val.boolCast(p.comp);
7745 }
7746 try lhs.boolRes(p, .bool_or_expr, rhs, tok);
7747 }
7748 return lhs;
7749}
7750
7751/// landExpr : orExpr ('&&' orExpr)*
7752fn landExpr(p: *Parser) Error!?Result {
7753 var lhs = (try p.orExpr()) orelse return null;
7754 const saved_eval = p.no_eval;
7755 defer p.no_eval = saved_eval;
7756
7757 while (p.eatToken(.ampersand_ampersand)) |tok| {
7758 if (lhs.val.opt_ref != .none and !lhs.val.toBool(p.comp)) p.no_eval = true;
7759 var rhs = try p.expect(orExpr);
7760
7761 if (try lhs.adjustTypes(tok, &rhs, p, .boolean_logic)) {
7762 const res = lhs.val.toBool(p.comp) and rhs.val.toBool(p.comp);
7763 lhs.val = Value.fromBool(res);
7764 } else {
7765 lhs.val.boolCast(p.comp);
7766 }
7767 try lhs.boolRes(p, .bool_and_expr, rhs, tok);
7768 }
7769 return lhs;
7770}
7771
7772/// orExpr : xorExpr ('|' xorExpr)*
7773fn orExpr(p: *Parser) Error!?Result {
7774 var lhs = (try p.xorExpr()) orelse return null;
7775 while (p.eatToken(.pipe)) |tok| {
7776 var rhs = try p.expect(xorExpr);
7777
7778 if (try lhs.adjustTypes(tok, &rhs, p, .integer)) {
7779 lhs.val = try lhs.val.bitOr(rhs.val, p.comp);
7780 }
7781 try lhs.bin(p, .bit_or_expr, rhs, tok);
7782 }
7783 return lhs;
7784}
7785
7786/// xorExpr : andExpr ('^' andExpr)*
7787fn xorExpr(p: *Parser) Error!?Result {
7788 var lhs = (try p.andExpr()) orelse return null;
7789 while (p.eatToken(.caret)) |tok| {
7790 var rhs = try p.expect(andExpr);
7791
7792 if (try lhs.adjustTypes(tok, &rhs, p, .integer)) {
7793 lhs.val = try lhs.val.bitXor(rhs.val, p.comp);
7794 }
7795 try lhs.bin(p, .bit_xor_expr, rhs, tok);
7796 }
7797 return lhs;
7798}
7799
7800/// andExpr : eqExpr ('&' eqExpr)*
7801fn andExpr(p: *Parser) Error!?Result {
7802 var lhs = (try p.eqExpr()) orelse return null;
7803 while (p.eatToken(.ampersand)) |tok| {
7804 var rhs = try p.expect(eqExpr);
7805
7806 if (try lhs.adjustTypes(tok, &rhs, p, .integer)) {
7807 lhs.val = try lhs.val.bitAnd(rhs.val, p.comp);
7808 }
7809 try lhs.bin(p, .bit_and_expr, rhs, tok);
7810 }
7811 return lhs;
7812}
8299 try rhs.adjustTypes(colon, &else_expr, p, .conditional);
78138300
7814/// eqExpr : compExpr (('==' | '!=') compExpr)*
7815fn eqExpr(p: *Parser) Error!?Result {
7816 var lhs = (try p.compExpr()) orelse return null;
7817 while (true) {
7818 const tok = p.tok_i;
7819 const tag = p.eatTag(.equal_equal) orelse
7820 p.eatTag(.bang_equal) orelse break;
7821 var rhs = try p.expect(compExpr);
7822
7823 if (try lhs.adjustTypes(tok, &rhs, p, .equality)) {
7824 const op: std.math.CompareOperator = if (tag == .equal_expr) .eq else .neq;
8301 lhs.qt = rhs.qt;
8302 lhs.node = try p.addNode(.{
8303 .cond_expr = .{
8304 .cond_tok = operator,
8305 .qt = lhs.qt,
8306 .cond = lhs.node,
8307 .then_expr = rhs.node,
8308 .else_expr = else_expr.node,
8309 },
8310 });
78258311
7826 const res: ?bool = if (lhs.qt.isPointer(p.comp) or rhs.qt.isPointer(p.comp))
7827 lhs.val.comparePointers(op, rhs.val, p.comp)
7828 else
7829 lhs.val.compare(op, rhs.val, p.comp);
8312 if (cond_known) {
8313 lhs.val = if (cond_true) rhs.val else else_expr.val;
8314 try lhs.putValue(p);
8315 } else {
8316 try rhs.saveValue(p);
8317 try else_expr.saveValue(p);
8318 }
8319 },
8320 .bool_or => {
8321 try lhs.adjustTypes(operator, &rhs, p, .boolean_logic);
8322 if (try lhs.shouldEval(&rhs, p, eval)) {
8323 lhs.val = .fromBool(lhs.val.toBool(p.comp) or rhs.val.toBool(p.comp));
8324 } else {
8325 lhs.val.boolCast(p.comp);
8326 }
8327 try lhs.boolRes(p, .bool_or_expr, rhs, operator);
8328 },
8329 .bool_and => {
8330 try lhs.adjustTypes(operator, &rhs, p, .boolean_logic);
8331 if (try lhs.shouldEval(&rhs, p, eval)) {
8332 lhs.val = .fromBool(lhs.val.toBool(p.comp) and rhs.val.toBool(p.comp));
8333 } else {
8334 lhs.val.boolCast(p.comp);
8335 }
8336 try lhs.boolRes(p, .bool_and_expr, rhs, operator);
8337 },
8338 .bit_or => {
8339 try lhs.adjustTypes(operator, &rhs, p, .integer);
8340 if (try lhs.shouldEval(&rhs, p, eval)) {
8341 lhs.val = try lhs.val.bitOr(rhs.val, p.comp);
8342 }
8343 try lhs.bin(p, .bit_or_expr, rhs, operator);
8344 },
8345 .bit_xor => {
8346 try lhs.adjustTypes(operator, &rhs, p, .integer);
8347 if (try lhs.shouldEval(&rhs, p, eval)) {
8348 lhs.val = try lhs.val.bitXor(rhs.val, p.comp);
8349 }
8350 try lhs.bin(p, .bit_xor_expr, rhs, operator);
8351 },
8352 .bit_and => {
8353 try lhs.adjustTypes(operator, &rhs, p, .integer);
8354 if (try lhs.shouldEval(&rhs, p, eval)) {
8355 lhs.val = try lhs.val.bitAnd(rhs.val, p.comp);
8356 }
8357 try lhs.bin(p, .bit_and_expr, rhs, operator);
8358 },
8359 .equality => {
8360 const tag: std.meta.Tag(Node) = switch (p.tok_ids[operator]) {
8361 .equal_equal => .equal_expr,
8362 .bang_equal => .not_equal_expr,
8363 else => unreachable,
8364 };
78308365
7831 lhs.val = if (res) |val| Value.fromBool(val) else .{};
7832 } else {
7833 lhs.val.boolCast(p.comp);
7834 }
7835 try lhs.boolRes(p, tag, rhs, tok);
7836 }
7837 return lhs;
7838}
8366 try lhs.adjustTypes(operator, &rhs, p, .equality);
8367 if (try lhs.shouldEval(&rhs, p, eval)) {
8368 const op: std.math.CompareOperator = if (tag == .equal_expr) .eq else .neq;
78398369
7840/// compExpr : shiftExpr (('<' | '<=' | '>' | '>=') shiftExpr)*
7841fn compExpr(p: *Parser) Error!?Result {
7842 var lhs = (try p.shiftExpr()) orelse return null;
7843 while (true) {
7844 const tok = p.tok_i;
7845 const tag = p.eatTag(.angle_bracket_left) orelse
7846 p.eatTag(.angle_bracket_left_equal) orelse
7847 p.eatTag(.angle_bracket_right) orelse
7848 p.eatTag(.angle_bracket_right_equal) orelse break;
7849 var rhs = try p.expect(shiftExpr);
7850
7851 if (try lhs.adjustTypes(tok, &rhs, p, .relational)) {
7852 const op: std.math.CompareOperator = switch (tag) {
7853 .less_than_expr => .lt,
7854 .less_than_equal_expr => .lte,
7855 .greater_than_expr => .gt,
7856 .greater_than_equal_expr => .gte,
7857 else => unreachable,
7858 };
7859
7860 const res: ?bool = if (lhs.qt.isPointer(p.comp) or rhs.qt.isPointer(p.comp))
7861 lhs.val.comparePointers(op, rhs.val, p.comp)
7862 else
7863 lhs.val.compare(op, rhs.val, p.comp);
7864 lhs.val = if (res) |val| Value.fromBool(val) else .{};
7865 } else {
7866 lhs.val.boolCast(p.comp);
7867 }
7868 try lhs.boolRes(p, tag, rhs, tok);
7869 }
7870 return lhs;
7871}
8370 const res: ?bool = if (lhs.qt.isPointer(p.comp) or rhs.qt.isPointer(p.comp))
8371 lhs.val.comparePointers(op, rhs.val, p.comp)
8372 else
8373 lhs.val.compare(op, rhs.val, p.comp);
78728374
7873/// shiftExpr : addExpr (('<<' | '>>') addExpr)*
7874fn shiftExpr(p: *Parser) Error!?Result {
7875 var lhs = (try p.addExpr()) orelse return null;
7876 while (true) {
7877 const tok = p.tok_i;
7878 const tag = p.eatTag(.angle_bracket_angle_bracket_left) orelse
7879 p.eatTag(.angle_bracket_angle_bracket_right) orelse break;
7880 var rhs = try p.expect(addExpr);
8375 if (p.record_static_assert_eval_note and res == false) {
8376 try lhs.putValue(p);
8377 try rhs.putValue(p);
8378 }
8379 lhs.val = if (res) |val| .fromBool(val) else .{};
8380 } else {
8381 lhs.val.boolCast(p.comp);
8382 }
8383 try lhs.boolRes(p, tag, rhs, operator);
8384 },
8385 .comparison => {
8386 const tag: std.meta.Tag(Node) = switch (p.tok_ids[operator]) {
8387 .angle_bracket_left => .less_than_expr,
8388 .angle_bracket_left_equal => .less_than_equal_expr,
8389 .angle_bracket_right => .greater_than_expr,
8390 .angle_bracket_right_equal => .greater_than_equal_expr,
8391 else => unreachable,
8392 };
78818393
7882 if (try lhs.adjustTypes(tok, &rhs, p, .integer)) {
7883 if (rhs.val.compare(.lt, .zero, p.comp)) {
7884 try p.err(tok, .negative_shift_count, .{});
7885 }
7886 if (rhs.val.compare(.gte, try Value.int(lhs.qt.bitSizeof(p.comp), p.comp), p.comp)) {
7887 try p.err(tok, .too_big_shift_count, .{});
7888 }
7889 if (tag == .shl_expr) {
7890 if (try lhs.val.shl(lhs.val, rhs.val, lhs.qt, p.comp) and
7891 lhs.qt.signedness(p.comp) != .unsigned) try p.err(tok, .overflow, .{lhs});
7892 } else {
7893 lhs.val = try lhs.val.shr(rhs.val, lhs.qt, p.comp);
7894 }
7895 }
7896 try lhs.bin(p, tag, rhs, tok);
7897 }
7898 return lhs;
7899}
8394 try lhs.adjustTypes(operator, &rhs, p, .relational);
8395 if (try lhs.shouldEval(&rhs, p, eval)) {
8396 const op: std.math.CompareOperator = switch (tag) {
8397 .less_than_expr => .lt,
8398 .less_than_equal_expr => .lte,
8399 .greater_than_expr => .gt,
8400 .greater_than_equal_expr => .gte,
8401 else => unreachable,
8402 };
79008403
7901/// addExpr : mulExpr (('+' | '-') mulExpr)*
7902fn addExpr(p: *Parser) Error!?Result {
7903 var lhs = (try p.mulExpr()) orelse return null;
7904 while (true) {
7905 const tok = p.tok_i;
7906 const tag = p.eatTag(.plus) orelse
7907 p.eatTag(.minus) orelse break;
7908 var rhs = try p.expect(mulExpr);
7909
7910 // We'll want to check this for invalid pointer arithmetic.
7911 const original_lhs_qt = lhs.qt;
7912
7913 if (try lhs.adjustTypes(tok, &rhs, p, if (tag == .add_expr) .add else .sub)) {
7914 const lhs_sk = lhs.qt.scalarKind(p.comp);
7915 if (tag == .add_expr) {
7916 if (try lhs.val.add(lhs.val, rhs.val, lhs.qt, p.comp)) {
7917 if (lhs_sk.isPointer()) {
7918 const increment = lhs;
7919 const ptr_bits = p.comp.type_store.intptr.bitSizeof(p.comp);
7920 const element_size = increment.qt.childType(p.comp).sizeofOrNull(p.comp) orelse 1;
7921 const max_elems = p.comp.maxArrayBytes() / element_size;
7922
7923 try p.err(tok, .array_overflow, .{ increment, ptr_bits, element_size * 8, element_size, max_elems });
7924 } else if (lhs.qt.signedness(p.comp) != .unsigned) {
7925 try p.err(tok, .overflow, .{lhs});
8404 const res: ?bool = if (lhs.qt.isPointer(p.comp) or rhs.qt.isPointer(p.comp))
8405 lhs.val.comparePointers(op, rhs.val, p.comp)
8406 else
8407 lhs.val.compare(op, rhs.val, p.comp);
8408 if (p.record_static_assert_eval_note and res == false) {
8409 try lhs.putValue(p);
8410 try rhs.putValue(p);
79268411 }
7927 }
7928 } else {
7929 const elem_size = if (original_lhs_qt.isPointer(p.comp)) original_lhs_qt.childType(p.comp).sizeofOrNull(p.comp) orelse 1 else 1;
7930 if (elem_size == 0 and rhs.qt.isPointer(p.comp)) {
7931 lhs.val = .{};
8412 lhs.val = if (res) |val| .fromBool(val) else .{};
79328413 } else {
7933 if (try lhs.val.sub(lhs.val, rhs.val, lhs.qt, elem_size, p.comp) and
7934 lhs.qt.signedness(p.comp) != .unsigned)
7935 {
7936 try p.err(tok, .overflow, .{lhs});
7937 }
8414 lhs.val.boolCast(p.comp);
79388415 }
7939 }
7940 }
7941 if (!lhs.qt.isInvalid()) {
7942 const lhs_sk = original_lhs_qt.scalarKind(p.comp);
7943 if (lhs_sk == .pointer and original_lhs_qt.childType(p.comp).hasIncompleteSize(p.comp)) {
7944 try p.err(tok, .ptr_arithmetic_incomplete, .{original_lhs_qt.childType(p.comp)});
7945 lhs.qt = .invalid;
7946 }
7947 }
7948 try lhs.bin(p, tag, rhs, tok);
7949 }
7950 return lhs;
7951}
8416 try lhs.boolRes(p, tag, rhs, operator);
8417 },
8418 .shift => {
8419 const tag: std.meta.Tag(Node) = switch (p.tok_ids[operator]) {
8420 .angle_bracket_angle_bracket_left => .shl_expr,
8421 .angle_bracket_angle_bracket_right => .shr_expr,
8422 else => unreachable,
8423 };
79528424
7953/// mulExpr : castExpr (('*' | '/' | '%') castExpr)*´
7954fn mulExpr(p: *Parser) Error!?Result {
7955 var lhs = (try p.castExpr()) orelse return null;
7956 while (true) {
7957 const tok = p.tok_i;
7958 const tag = p.eatTag(.asterisk) orelse
7959 p.eatTag(.slash) orelse
7960 p.eatTag(.percent) orelse break;
7961 var rhs = try p.expect(castExpr);
7962
7963 if (rhs.val.isZero(p.comp) and tag != .mul_expr and !p.no_eval and lhs.qt.isInt(p.comp) and rhs.qt.isInt(p.comp)) {
7964 lhs.val = .{};
7965 try p.err(tok, if (p.in_macro) .division_by_zero_macro else .division_by_zero, if (tag == .div_expr) .{"division"} else .{"remainder"});
7966 if (p.in_macro) return error.ParsingFailed;
7967 }
7968
7969 if (try lhs.adjustTypes(tok, &rhs, p, if (tag == .mod_expr) .integer else .arithmetic)) {
7970 switch (tag) {
7971 .mul_expr => if (try lhs.val.mul(lhs.val, rhs.val, lhs.qt, p.comp) and
7972 lhs.qt.signedness(p.comp) != .unsigned) try p.err(tok, .overflow, .{lhs}),
7973 .div_expr => if (try lhs.val.div(lhs.val, rhs.val, lhs.qt, p.comp) and
7974 lhs.qt.signedness(p.comp) != .unsigned) try p.err(tok, .overflow, .{lhs}),
7975 .mod_expr => {
7976 var res = try Value.rem(lhs.val, rhs.val, lhs.qt, p.comp);
7977 if (res.opt_ref == .none) {
7978 if (p.in_macro) {
7979 // match clang behavior by defining invalid remainder to be zero in macros
7980 res = .zero;
8425 try lhs.adjustTypes(operator, &rhs, p, .integer);
8426 if (try lhs.shouldEval(&rhs, p, eval)) {
8427 if (rhs.val.compare(.lt, .zero, p.comp)) {
8428 try p.err(operator, .negative_shift_count, .{});
8429 }
8430 if (rhs.val.compare(.gte, try .int(lhs.qt.bitSizeof(p.comp), p.comp), p.comp)) {
8431 try p.err(operator, .too_big_shift_count, .{});
8432 }
8433 if (tag == .shl_expr) {
8434 if (try lhs.val.shl(lhs.val, rhs.val, lhs.qt, p.comp) and
8435 lhs.qt.signedness(p.comp) != .unsigned) try p.err(operator, .overflow, .{lhs});
8436 } else {
8437 lhs.val = try lhs.val.shr(rhs.val, lhs.qt, p.comp);
8438 }
8439 }
8440 try lhs.bin(p, tag, rhs, operator);
8441 },
8442 .additive => {
8443 const tag: std.meta.Tag(Node) = switch (p.tok_ids[operator]) {
8444 .plus => .add_expr,
8445 .minus => .sub_expr,
8446 else => unreachable,
8447 };
8448 // We'll want to check this for invalid pointer arithmetic.
8449 const original_lhs_qt = lhs.qt;
8450
8451 try lhs.adjustTypes(operator, &rhs, p, if (tag == .add_expr) .add else .sub);
8452 if (try lhs.shouldEval(&rhs, p, eval)) {
8453 const lhs_sk = lhs.qt.scalarKind(p.comp);
8454 if (tag == .add_expr) {
8455 if (try lhs.val.add(lhs.val, rhs.val, lhs.qt, p.comp)) {
8456 if (lhs_sk.isPointer()) {
8457 const increment = lhs;
8458 const ptr_bits = p.comp.type_store.intptr.bitSizeof(p.comp);
8459 const element_size = increment.qt.childType(p.comp).sizeofOrNull(p.comp) orelse 1;
8460 const max_elems = p.comp.maxArrayBytes() / element_size;
8461
8462 try p.err(operator, .array_overflow, .{ increment, ptr_bits, element_size * 8, element_size, max_elems });
8463 } else if (lhs.qt.signedness(p.comp) != .unsigned) {
8464 try p.err(operator, .overflow, .{lhs});
8465 }
8466 }
8467 } else {
8468 const elem_size = if (original_lhs_qt.isPointer(p.comp)) original_lhs_qt.childType(p.comp).sizeofOrNull(p.comp) orelse 1 else 1;
8469 if (elem_size == 0 and rhs.qt.isPointer(p.comp)) {
8470 lhs.val = .{};
79818471 } else {
7982 try lhs.saveValue(p);
7983 try rhs.saveValue(p);
8472 if (try lhs.val.sub(lhs.val, rhs.val, lhs.qt, elem_size, p.comp) and
8473 lhs.qt.signedness(p.comp) != .unsigned)
8474 {
8475 try p.err(operator, .overflow, .{lhs});
8476 }
79848477 }
79858478 }
7986 lhs.val = res;
7987 },
7988 else => unreachable,
7989 }
7990 }
7991
7992 try lhs.bin(p, tag, rhs, tok);
7993 }
7994 return lhs;
7995}
8479 }
8480 if (!lhs.qt.isInvalid()) {
8481 const lhs_sk = original_lhs_qt.scalarKind(p.comp);
8482 if (lhs_sk == .pointer and original_lhs_qt.childType(p.comp).hasIncompleteSize(p.comp)) {
8483 try p.err(operator, .ptr_arithmetic_incomplete, .{original_lhs_qt.childType(p.comp)});
8484 lhs.qt = .invalid;
8485 }
8486 }
8487 try lhs.bin(p, tag, rhs, operator);
8488 },
8489 .multiplicative => {
8490 const tag: std.meta.Tag(Node) = switch (p.tok_ids[operator]) {
8491 .asterisk => .mul_expr,
8492 .slash => .div_expr,
8493 .percent => .mod_expr,
8494 else => unreachable,
8495 };
79968496
7997/// castExpr
7998/// : '(' compoundStmt ')' suffixExpr*
7999/// | '(' typeName ')' castExpr
8000/// | '(' typeName ')' '{' initializerItems '}'
8001/// | unExpr
8002fn castExpr(p: *Parser) Error!?Result {
8003 if (p.eatToken(.l_paren)) |l_paren| cast_expr: {
8004 if (p.tok_ids[p.tok_i] == .l_brace) {
8005 const tok = p.tok_i;
8006 try p.err(p.tok_i, .gnu_statement_expression, .{});
8007 if (p.func.qt == null) {
8008 try p.err(p.tok_i, .stmt_expr_not_allowed_file_scope, .{});
8009 return error.ParsingFailed;
8010 }
8011 var stmt_expr_state: StmtExprState = .{};
8012 const body_node = (try p.compoundStmt(false, &stmt_expr_state)).?; // compoundStmt only returns null if .l_brace isn't the first token
8497 try lhs.adjustTypes(operator, &rhs, p, if (tag == .mod_expr) .integer else .arithmetic);
8498 if (eval and tag != .mul_expr and !lhs.qt.isInvalid() and lhs.qt.isInt(p.comp) and rhs.val.isZero(p.comp)) {
8499 lhs.val = .{};
8500 try p.err(operator, .division_by_zero, if (tag == .div_expr) .{"division"} else .{"remainder"});
8501 }
80138502
8014 var res: Result = .{
8015 .node = body_node,
8016 .qt = stmt_expr_state.last_expr_qt,
8017 };
8018 try p.expectClosing(l_paren, .r_paren);
8019 try res.un(p, .stmt_expr, tok);
8020 while (try p.suffixExpr(res)) |suffix| {
8021 res = suffix;
8022 }
8023 return res;
8024 }
8025 const ty = (try p.typeName()) orelse {
8026 p.tok_i -= 1;
8027 break :cast_expr;
8028 };
8029 try p.expectClosing(l_paren, .r_paren);
8503 if (try lhs.shouldEval(&rhs, p, eval)) {
8504 switch (tag) {
8505 .mul_expr => if (try lhs.val.mul(lhs.val, rhs.val, lhs.qt, p.comp) and
8506 lhs.qt.signedness(p.comp) != .unsigned) try p.err(operator, .overflow, .{lhs}),
8507 .div_expr => if (try lhs.val.div(lhs.val, rhs.val, lhs.qt, p.comp) and
8508 lhs.qt.signedness(p.comp) != .unsigned) try p.err(operator, .overflow, .{lhs}),
8509 .mod_expr => {
8510 const res = try Value.rem(lhs.val, rhs.val, lhs.qt, p.comp);
8511 if (res.opt_ref == .none) {
8512 try lhs.saveValue(p);
8513 try rhs.saveValue(p);
8514 }
8515 lhs.val = res;
8516 },
8517 else => unreachable,
8518 }
8519 }
80308520
8031 if (p.tok_ids[p.tok_i] == .l_brace) {
8032 var lhs = (try p.compoundLiteral(ty, l_paren)).?;
8033 while (try p.suffixExpr(lhs)) |suffix| {
8034 lhs = suffix;
8035 }
8036 return lhs;
8521 try lhs.bin(p, tag, rhs, operator);
8522 },
80378523 }
8038
8039 const operand_tok = p.tok_i;
8040 var operand = try p.expect(castExpr);
8041 try operand.lvalConversion(p, operand_tok);
8042 try operand.castType(p, ty, operand_tok, l_paren);
8043 return operand;
80448524 }
8045 return p.unExpr();
80468525}
80478526
80488527/// builtinBitCast : __builtin_bit_cast '(' typeName ',' assignExpr ')'
80498528fn builtinBitCast(p: *Parser, builtin_tok: TokenIndex) Error!Result {
80508529 const l_paren = try p.expectToken(.l_paren);
80518530
8052 const res_qt = (try p.typeName()) orelse {
8053 try p.err(p.tok_i, .expected_type, .{});
8054 return error.ParsingFailed;
8055 };
8056
8531 const res_qt = try p.expectTypeName(.comma);
80578532 _ = try p.expectToken(.comma);
80588533
8059 const operand_tok = p.tok_i;
8060 var operand = try p.expect(assignExpr);
8061 try operand.lvalConversion(p, operand_tok);
8534 var operand = try p.expectWithClosing(assignExpr, .r_paren);
8535 try operand.lvalConversion(p);
80628536
80638537 try p.expectClosing(l_paren, .r_paren);
80648538
......@@ -8148,15 +8622,10 @@ fn convertvector(p: *Parser, builtin_tok: TokenIndex) Error!Result {
81488622 const operand = try p.expect(assignExpr);
81498623 _ = try p.expectToken(.comma);
81508624
8151 var dest_qt = (try p.typeName()) orelse {
8152 try p.err(p.tok_i, .expected_type, .{});
8153 p.skipTo(.r_paren);
8154 return error.ParsingFailed;
8155 };
8156
8625 var dest_qt = try p.expectTypeName(.r_paren);
81578626 try p.expectClosing(l_paren, .r_paren);
81588627
8159 if (operand.qt.isInvalid() or operand.qt.isInvalid()) {
8628 if (operand.qt.isInvalid() or dest_qt.isInvalid()) {
81608629 dest_qt = .invalid;
81618630 } else check: {
81628631 const operand_vec = operand.qt.get(p.comp, .vector) orelse {
......@@ -8191,25 +8660,16 @@ fn convertvector(p: *Parser, builtin_tok: TokenIndex) Error!Result {
81918660fn typesCompatible(p: *Parser, builtin_tok: TokenIndex) Error!Result {
81928661 const l_paren = try p.expectToken(.l_paren);
81938662
8194 const lhs = (try p.typeName()) orelse {
8195 try p.err(p.tok_i, .expected_type, .{});
8196 p.skipTo(.r_paren);
8197 return error.ParsingFailed;
8198 };
8663 const lhs = try p.expectTypeName(.comma);
81998664 _ = try p.expectToken(.comma);
82008665
8201 const rhs = (try p.typeName()) orelse {
8202 try p.err(p.tok_i, .expected_type, .{});
8203 p.skipTo(.r_paren);
8204 return error.ParsingFailed;
8205 };
8206
8666 const rhs = try p.expectTypeName(.r_paren);
82078667 try p.expectClosing(l_paren, .r_paren);
82088668
8209 const compatible = lhs.eql(rhs, p.comp);
8669 const any_invalid = lhs.isInvalid() or rhs.isInvalid();
82108670 const res: Result = .{
8211 .val = Value.fromBool(compatible),
8212 .qt = .int,
8671 .val = if (any_invalid) .{} else Value.fromBool(lhs.eql(rhs, p.comp)),
8672 .qt = if (any_invalid) .invalid else .int,
82138673 .node = try p.addNode(.{
82148674 .builtin_types_compatible_p = .{
82158675 .builtin_tok = builtin_tok,
......@@ -8234,17 +8694,9 @@ fn builtinChooseExpr(p: *Parser) Error!Result {
82348694
82358695 _ = try p.expectToken(.comma);
82368696
8237 const then_expr = if (cond.val.toBool(p.comp))
8238 try p.expect(assignExpr)
8239 else
8240 try p.parseNoEval(assignExpr);
8241
8697 const then_expr = try p.expectResult(try p.binaryExpr(.conditional, cond.val.toBool(p.comp)));
82428698 _ = try p.expectToken(.comma);
8243
8244 const else_expr = if (!cond.val.toBool(p.comp))
8245 try p.expect(assignExpr)
8246 else
8247 try p.parseNoEval(assignExpr);
8699 const else_expr = try p.expectResult(try p.binaryExpr(.conditional, !cond.val.toBool(p.comp)));
82488700
82498701 try p.expectClosing(l_paren, .r_paren);
82508702
......@@ -8272,14 +8724,11 @@ fn builtinVaArg(p: *Parser, builtin_tok: TokenIndex) Error!Result {
82728724 const l_paren = try p.expectToken(.l_paren);
82738725 const va_list_tok = p.tok_i;
82748726 var va_list = try p.expect(assignExpr);
8275 try va_list.lvalConversion(p, va_list_tok);
8727 try va_list.lvalConversion(p);
82768728
82778729 _ = try p.expectToken(.comma);
82788730
8279 const ty = (try p.typeName()) orelse {
8280 try p.err(p.tok_i, .expected_type, .{});
8281 return error.ParsingFailed;
8282 };
8731 const ty = try p.expectTypeName(.r_paren);
82838732 try p.expectClosing(l_paren, .r_paren);
82848733
82858734 if (!va_list.qt.eql(p.comp.type_store.va_list, p.comp)) {
......@@ -8342,12 +8791,15 @@ fn builtinVaArgPackLen(p: *Parser, builtin_tok: TokenIndex) Error!Result {
83428791}
83438792
83448793fn checkVaPackFunc(p: *Parser, builtin_tok: TokenIndex, va_func_name: []const u8) !bool {
8345 const func_qt, _ = (try p.checkVaFunc(builtin_tok, va_func_name)) orelse return false;
8794 _ = (try p.checkVaFunc(builtin_tok, va_func_name)) orelse return false;
83468795
8347 var it = Attribute.Iterator.initType(func_qt, p.comp);
8348 while (it.next()) |item| switch (item[0].tag) {
8349 .always_inline, .gnu_inline => break,
8350 else => {},
8796 const am = &p.tree.attr_map;
8797 for (am.attrs(p.func.decl)) |ref| {
8798 const attr = am.get(ref);
8799 switch (attr.args) {
8800 .always_inline, .gnu_inline => break,
8801 else => {},
8802 }
83518803 } else {
83528804 try p.err(builtin_tok, .va_func_not_always_inline, .{va_func_name});
83538805 return false;
......@@ -8364,11 +8816,8 @@ fn builtinOffsetof(p: *Parser, builtin_tok: TokenIndex, offset_kind: OffsetKind)
83648816 const l_paren = try p.expectToken(.l_paren);
83658817 const ty_tok = p.tok_i;
83668818
8367 const operand_qt = (try p.typeName()) orelse {
8368 try p.err(p.tok_i, .expected_type, .{});
8369 p.skipTo(.r_paren);
8370 return error.ParsingFailed;
8371 };
8819 const operand_qt = try p.expectTypeName(.r_paren);
8820 if (operand_qt.isInvalid()) return error.ParsingFailed;
83728821
83738822 const record_ty = operand_qt.getRecord(p.comp) orelse {
83748823 try p.err(ty_tok, .offsetof_ty, .{operand_qt});
......@@ -8461,8 +8910,8 @@ fn offsetofMemberDesignator(
84618910 return error.ParsingFailed;
84628911 };
84638912 var ptr = lhs;
8464 try ptr.lvalConversion(p, l_bracket_tok);
8465 try index.lvalConversion(p, l_bracket_tok);
8913 try ptr.lvalConversion(p);
8914 try index.lvalConversion(p);
84668915
84678916 if (!index.qt.isInvalid() and index.qt.isRealInt(p.comp)) {
84688917 try p.checkArrayBounds(index, lhs, l_bracket_tok);
......@@ -8537,14 +8986,14 @@ fn computeOffset(p: *Parser, res: Result) !Value {
85378986}
85388987
85398988/// unExpr
8540/// : (compoundLiteral | primaryExpr) suffixExpr*
8989/// : primaryExpr suffixExpr*
8990/// | ('&' | '*' | '+' | '-' | '~' | '!' | '++' | '--' | keyword_extension | keyword_imag | keyword_real) unExpr
85418991/// | '&&' IDENTIFIER
8542/// | ('&' | '*' | '+' | '-' | '~' | '!' | '++' | '--' | keyword_extension | keyword_imag | keyword_real) castExpr
85438992/// | keyword_sizeof unExpr
85448993/// | keyword_sizeof '(' typeName ')'
85458994/// | keyword_alignof '(' typeName ')'
85468995/// | keyword_c23_alignof '(' typeName ')'
8547fn unExpr(p: *Parser) Error!?Result {
8996fn unExpr(p: *Parser, eval: bool) Error!?Result {
85488997 const gpa = p.comp.gpa;
85498998 const tok = p.tok_i;
85508999 switch (p.tok_ids[tok]) {
......@@ -8571,13 +9020,9 @@ fn unExpr(p: *Parser) Error!?Result {
85719020 };
85729021 },
85739022 .ampersand => {
8574 if (p.in_macro) {
8575 try p.err(p.tok_i, .invalid_preproc_operator, .{});
8576 return error.ParsingFailed;
8577 }
85789023 const orig_tok_i = p.tok_i;
85799024 p.tok_i += 1;
8580 var operand = try p.expect(castExpr);
9025 var operand = try p.expectResult(try p.unExpr(eval));
85819026 var addr_val: Value = .{};
85829027
85839028 if (p.getNode(operand.node, .member_access_expr) orelse
......@@ -8585,7 +9030,7 @@ fn unExpr(p: *Parser) Error!?Result {
85859030 {
85869031 if (access.isBitFieldWidth(&p.tree) != null) try p.err(tok, .addr_of_bitfield, .{});
85879032 const lhs_qt = access.base.qt(&p.tree);
8588 if (lhs_qt.hasAttribute(p.comp, .@"packed")) {
9033 if (lhs_qt.hasAttribute(&p.tree, .@"packed")) {
85899034 const record_ty = lhs_qt.getRecord(p.comp).?;
85909035 try p.err(orig_tok_i, .packed_member_address, .{
85919036 record_ty.fields[access.member_index].name.lookup(p.comp),
......@@ -8624,11 +9069,11 @@ fn unExpr(p: *Parser) Error!?Result {
86249069 },
86259070 .asterisk => {
86269071 p.tok_i += 1;
8627 var operand = try p.expect(castExpr);
9072 var operand = try p.expectResult(try p.unExpr(eval));
86289073
86299074 switch (operand.qt.base(p.comp).type) {
86309075 .array, .func, .pointer => {
8631 try operand.lvalConversion(p, tok);
9076 try operand.lvalConversion(p);
86329077 operand.qt = operand.qt.childType(p.comp);
86339078 operand.val = .{};
86349079 },
......@@ -8648,8 +9093,8 @@ fn unExpr(p: *Parser) Error!?Result {
86489093 .plus => {
86499094 p.tok_i += 1;
86509095
8651 var operand = try p.expect(castExpr);
8652 try operand.lvalConversion(p, tok);
9096 var operand = try p.expectResult(try p.unExpr(eval));
9097 try operand.lvalConversion(p);
86539098 const scalar_qt = if (operand.qt.get(p.comp, .vector)) |vec| vec.elem else operand.qt;
86549099 if (!scalar_qt.isInt(p.comp) and !scalar_qt.isFloat(p.comp))
86559100 try p.err(tok, .invalid_argument_un, .{operand.qt});
......@@ -8661,8 +9106,8 @@ fn unExpr(p: *Parser) Error!?Result {
86619106 .minus => {
86629107 p.tok_i += 1;
86639108
8664 var operand = try p.expect(castExpr);
8665 try operand.lvalConversion(p, tok);
9109 var operand = try p.expectResult(try p.unExpr(eval));
9110 try operand.lvalConversion(p);
86669111 const scalar_qt = if (operand.qt.get(p.comp, .vector)) |vec| vec.elem else operand.qt;
86679112 if (!scalar_qt.isInt(p.comp) and !scalar_qt.isFloat(p.comp))
86689113 try p.err(tok, .invalid_argument_un, .{operand.qt});
......@@ -8679,7 +9124,7 @@ fn unExpr(p: *Parser) Error!?Result {
86799124 .plus_plus => {
86809125 p.tok_i += 1;
86819126
8682 var operand = try p.expect(castExpr);
9127 var operand = try p.expectResult(try p.unExpr(eval));
86839128 const scalar_kind = operand.qt.scalarKind(p.comp);
86849129 if (scalar_kind == .void_pointer)
86859130 try p.err(tok, .gnu_pointer_arith, .{});
......@@ -8695,7 +9140,6 @@ fn unExpr(p: *Parser) Error!?Result {
86959140 if (operand.qt.get(p.comp, .pointer)) |pointer| {
86969141 try p.checkPtrArithmeticAllowed(pointer, p.tok_i, operand.node);
86979142 }
8698 try operand.usualUnaryConversion(p, tok);
86999143
87009144 if (operand.val.is(.int, p.comp) or operand.val.is(.int, p.comp)) {
87019145 if (try operand.val.add(operand.val, .one, operand.qt, p.comp))
......@@ -8710,7 +9154,7 @@ fn unExpr(p: *Parser) Error!?Result {
87109154 .minus_minus => {
87119155 p.tok_i += 1;
87129156
8713 var operand = try p.expect(castExpr);
9157 var operand = try p.expectResult(try p.unExpr(eval));
87149158 const scalar_kind = operand.qt.scalarKind(p.comp);
87159159 if (scalar_kind == .void_pointer)
87169160 try p.err(tok, .gnu_pointer_arith, .{});
......@@ -8726,7 +9170,6 @@ fn unExpr(p: *Parser) Error!?Result {
87269170 if (operand.qt.get(p.comp, .pointer)) |pointer| {
87279171 try p.checkPtrArithmeticAllowed(pointer, p.tok_i, operand.node);
87289172 }
8729 try operand.usualUnaryConversion(p, tok);
87309173
87319174 if (operand.val.is(.int, p.comp) or operand.val.is(.int, p.comp)) {
87329175 if (try operand.val.decrement(operand.val, operand.qt, p.comp))
......@@ -8741,8 +9184,8 @@ fn unExpr(p: *Parser) Error!?Result {
87419184 .tilde => {
87429185 p.tok_i += 1;
87439186
8744 var operand = try p.expect(castExpr);
8745 try operand.lvalConversion(p, tok);
9187 var operand = try p.expectResult(try p.unExpr(eval));
9188 try operand.lvalConversion(p);
87469189 try operand.usualUnaryConversion(p, tok);
87479190
87489191 const scalar_qt = if (operand.qt.get(p.comp, .vector)) |vec| vec.elem else operand.qt;
......@@ -8766,8 +9209,8 @@ fn unExpr(p: *Parser) Error!?Result {
87669209 .bang => {
87679210 p.tok_i += 1;
87689211
8769 var operand = try p.expect(castExpr);
8770 try operand.lvalConversion(p, tok);
9212 var operand = try p.expectResult(try p.unExpr(eval));
9213 try operand.lvalConversion(p);
87719214 if (operand.qt.scalarKind(p.comp) == .none)
87729215 try p.err(tok, .invalid_argument_un, .{operand.qt});
87739216
......@@ -8788,120 +9231,88 @@ fn unExpr(p: *Parser) Error!?Result {
87889231 },
87899232 .keyword_sizeof => {
87909233 p.tok_i += 1;
8791 const expected_paren = p.tok_i;
9234 const operand_tok = p.tok_i;
87929235
8793 var has_expr = false;
8794 var res: Result = .{
8795 .node = undefined, // check has_expr
8796 };
8797 if (try p.typeName()) |qt| {
8798 res.qt = qt;
8799 try p.err(expected_paren, .expected_parens_around_typename, .{});
8800 } else if (p.eatToken(.l_paren)) |l_paren| {
8801 if (try p.typeName()) |ty| {
8802 res.qt = ty;
8803 try p.expectClosing(l_paren, .r_paren);
8804 } else {
8805 p.tok_i = expected_paren;
8806 res = try p.parseNoEval(unExpr);
8807 has_expr = true;
8808 }
8809 } else {
8810 res = try p.parseNoEval(unExpr);
8811 has_expr = true;
8812 }
8813 const operand_qt = res.qt;
9236 const operand_qt, const opt_node = try p.nonCastUnExpr();
9237 var qt: QualType = .invalid;
9238 var val: Value = .{};
88149239
8815 if (res.qt.isInvalid()) {
8816 res.val = .{};
8817 } else {
8818 const base_type = res.qt.base(p.comp);
9240 if (!operand_qt.isInvalid()) {
9241 const base_type = operand_qt.base(p.comp);
88199242 switch (base_type.type) {
88209243 .void => try p.err(tok, .pointer_arith_void, .{"sizeof"}),
88219244 .pointer => |pointer_ty| if (pointer_ty.decayed) |decayed_qt| {
8822 try p.err(tok, .sizeof_array_arg, .{ res.qt, decayed_qt });
9245 try p.err(operand_tok, .sizeof_array_arg, .{ operand_qt, decayed_qt });
88239246 },
88249247 else => {},
88259248 }
88269249
8827 if (base_type.qt.sizeofOrNull(p.comp)) |size| {
9250 if (operand_qt.sizeofOrNull(p.comp)) |size| {
88289251 if (size == 0 and p.comp.langopts.emulate == .msvc) {
88299252 try p.err(tok, .sizeof_returns_zero, .{});
88309253 }
8831 res.val = try Value.int(size, p.comp);
8832 res.qt = p.comp.type_store.size;
9254 val = try Value.int(size, p.comp);
9255 qt = p.comp.type_store.size;
9256 } else if (!operand_qt.hasIncompleteSize(p.comp)) {
9257 // sizeof variable lenght array
9258 qt = p.comp.type_store.size;
88339259 } else {
8834 res.val = .{};
8835 if (res.qt.hasIncompleteSize(p.comp)) {
8836 try p.err(expected_paren - 1, .invalid_sizeof, .{res.qt});
8837 res.qt = .invalid;
8838 } else {
8839 res.qt = p.comp.type_store.size;
8840 }
9260 try p.err(tok, .invalid_sizeof, .{operand_qt});
88419261 }
88429262 }
88439263
8844 res.node = try p.addNode(.{ .sizeof_expr = .{
8845 .op_tok = tok,
8846 .qt = res.qt,
8847 .expr = if (has_expr) res.node else null,
8848 .operand_qt = operand_qt,
8849 } });
8850 return res;
9264 return .{
9265 .qt = qt,
9266 .node = try p.addNode(.{ .sizeof_expr = .{
9267 .op_tok = tok,
9268 .qt = qt,
9269 .expr = opt_node,
9270 .operand_qt = operand_qt,
9271 } }),
9272 .val = val,
9273 };
88519274 },
88529275 .keyword_alignof,
88539276 .keyword_alignof1,
88549277 .keyword_alignof2,
88559278 .keyword_c23_alignof,
8856 => {
8857 p.tok_i += 1;
8858 const expected_paren = p.tok_i;
8859
8860 var has_expr = false;
8861 var res: Result = .{
8862 .node = undefined, // check has_expr
9279 => |id| {
9280 const gnu_keyword = switch (id) {
9281 .keyword_alignof1, .keyword_alignof2 => true,
9282 else => false,
88639283 };
8864 if (try p.typeName()) |qt| {
8865 res.qt = qt;
8866 try p.err(expected_paren, .expected_parens_around_typename, .{});
8867 } else if (p.eatToken(.l_paren)) |l_paren| {
8868 if (try p.typeName()) |qt| {
8869 res.qt = qt;
8870 try p.expectClosing(l_paren, .r_paren);
8871 } else {
8872 p.tok_i = expected_paren;
8873 res = try p.parseNoEval(unExpr);
8874 has_expr = true;
8875
8876 try p.err(expected_paren, .alignof_expr, .{});
8877 }
8878 } else {
8879 res = try p.parseNoEval(unExpr);
8880 has_expr = true;
9284 p.tok_i += 1;
88819285
8882 try p.err(expected_paren, .alignof_expr, .{});
8883 }
8884 const operand_qt = res.qt;
9286 const operand_qt, const opt_node = try p.nonCastUnExpr();
9287 if (opt_node != null and !gnu_keyword) try p.err(tok, .gnu_alignof_expr, .{p.tokSlice(tok)});
9288 var qt: QualType = .invalid;
9289 var val: Value = .{};
88859290
8886 if (res.qt.is(p.comp, .void)) {
8887 try p.err(tok, .pointer_arith_void, .{"alignof"});
9291 if (operand_qt.is(p.comp, .void)) {
9292 try p.err(tok, .pointer_arith_void, .{p.tokSlice(tok)});
88889293 }
88899294
8890 if (res.qt.sizeofOrNull(p.comp) != null) {
8891 res.val = try Value.int(res.qt.alignof(p.comp), p.comp);
8892 res.qt = p.comp.type_store.size;
8893 } else if (!res.qt.isInvalid()) {
8894 try p.err(expected_paren, .invalid_alignof, .{res.qt});
8895 res.qt = .invalid;
9295 if (operand_qt.sizeofOrNull(p.comp) != null) {
9296 var requested_align: ?u32 = null;
9297 if (opt_node) |node| if (p.getNode(node, .decl_ref_expr)) |decl_ref| {
9298 requested_align = p.tree.attr_map.requestedAlignment(decl_ref.decl, p.comp);
9299 };
9300 val = try Value.int(requested_align orelse operand_qt.alignof(p.comp), p.comp);
9301 qt = p.comp.type_store.size;
9302 } else if (!operand_qt.isInvalid()) {
9303 try p.err(tok, .invalid_alignof, .{operand_qt});
88969304 }
88979305
8898 res.node = try p.addNode(.{ .alignof_expr = .{
8899 .op_tok = tok,
8900 .qt = res.qt,
8901 .expr = if (has_expr) res.node else null,
8902 .operand_qt = operand_qt,
8903 } });
8904 return res;
9306 return .{
9307 .qt = qt,
9308 .node = try p.addNode(.{ .alignof_expr = .{
9309 .op_tok = tok,
9310 .qt = qt,
9311 .expr = opt_node,
9312 .operand_qt = operand_qt,
9313 } }),
9314 .val = val,
9315 };
89059316 },
89069317 .keyword_extension => {
89079318 p.tok_i += 1;
......@@ -8909,14 +9320,14 @@ fn unExpr(p: *Parser) Error!?Result {
89099320 defer p.extension_suppressed = saved_extension;
89109321 p.extension_suppressed = true;
89119322
8912 return try p.expect(castExpr);
9323 return try p.expectResult(try p.unExpr(eval));
89139324 },
89149325 .keyword_imag1, .keyword_imag2 => {
89159326 const imag_tok = p.tok_i;
89169327 p.tok_i += 1;
89179328
8918 var operand = try p.expect(castExpr);
8919 try operand.lvalConversion(p, tok);
9329 var operand = try p.expectResult(try p.unExpr(eval));
9330 try operand.lvalConversion(p);
89209331 if (operand.qt.isInvalid()) return operand;
89219332
89229333 const scalar_kind = operand.qt.scalarKind(p.comp);
......@@ -8945,8 +9356,8 @@ fn unExpr(p: *Parser) Error!?Result {
89459356 const real_tok = p.tok_i;
89469357 p.tok_i += 1;
89479358
8948 var operand = try p.expect(castExpr);
8949 try operand.lvalConversion(p, tok);
9359 var operand = try p.expectResult(try p.unExpr(eval));
9360 try operand.lvalConversion(p);
89509361 if (operand.qt.isInvalid()) return operand;
89519362 if (!operand.qt.isInt(p.comp) and !operand.qt.isFloat(p.comp)) {
89529363 try p.err(real_tok, .invalid_real, .{operand.qt});
......@@ -8958,10 +9369,7 @@ fn unExpr(p: *Parser) Error!?Result {
89589369 return operand;
89599370 },
89609371 else => {
8961 var lhs = (try p.compoundLiteral(null, null)) orelse
8962 (try p.primaryExpr()) orelse
8963 return null;
8964
9372 var lhs = (try p.primaryExpr(eval)) orelse return null;
89659373 while (try p.suffixExpr(lhs)) |suffix| {
89669374 lhs = suffix;
89679375 }
......@@ -8970,40 +9378,46 @@ fn unExpr(p: *Parser) Error!?Result {
89709378 }
89719379}
89729380
8973/// compoundLiteral
8974/// : '(' storageClassSpec* type_name ')' '{' initializer_list '}'
8975/// | '(' storageClassSpec* type_name ')' '{' initializer_list ',' '}'
8976fn compoundLiteral(p: *Parser, qt_opt: ?QualType, opt_l_paren: ?TokenIndex) Error!?Result {
8977 const l_paren, const d = if (qt_opt) |some| .{ opt_l_paren.?, DeclSpec{ .qt = some } } else blk: {
8978 const l_paren = p.eatToken(.l_paren) orelse return null;
9381/// The operand of a sizeof/alignof expression is any non-cast unary expression.
9382fn nonCastUnExpr(p: *Parser) !struct { QualType, ?Node.Index } {
9383 const expected_paren = p.tok_i;
89799384
8980 var d: DeclSpec = .{ .qt = .invalid };
8981 const any = if (p.comp.langopts.standard.atLeast(.c23))
8982 try p.storageClassSpec(&d)
8983 else
8984 false;
9385 if (try p.typeName()) |qt| {
9386 try p.err(expected_paren, .expected_parens_around_typename, .{});
9387 return .{ qt, null };
9388 }
89859389
8986 switch (d.storage_class) {
8987 .auto, .@"extern", .typedef => |tok| {
8988 try p.err(tok, .invalid_compound_literal_storage_class, .{@tagName(d.storage_class)});
8989 d.storage_class = .none;
8990 },
8991 .register => if (p.func.qt == null) try p.err(p.tok_i, .register_on_global_compound_literal, .{}),
8992 else => {},
9390 if (p.eatToken(.l_paren)) |l_paren| {
9391 if (try p.typeName()) |qt| {
9392 try p.expectClosing(l_paren, .r_paren);
9393 if (p.tok_ids[p.tok_i] == .l_brace) {
9394 const res = try p.compoundLiteral(l_paren, .{ .qt = qt });
9395 return .{ res.qt, res.node };
9396 }
9397 return .{ qt, null };
89939398 }
89949399
8995 d.qt = (try p.typeName()) orelse {
8996 p.tok_i = l_paren;
8997 if (any) {
8998 try p.err(p.tok_i, .expected_type, .{});
8999 return error.ParsingFailed;
9000 }
9001 return null;
9002 };
9003 try p.expectClosing(l_paren, .r_paren);
9004 break :blk .{ l_paren, d };
9005 };
9006 var qt = d.qt;
9400 p.tok_i = expected_paren;
9401 }
9402
9403 const res = try p.expectResult(try p.unExpr(false));
9404 return .{ res.qt, res.node };
9405}
9406
9407/// compoundLiteral
9408/// : '(' storageClassSpec* type_name ')' '{' initializer_list '}'
9409/// | '(' storageClassSpec* type_name ')' '{' initializer_list ',' '}'
9410fn compoundLiteral(p: *Parser, l_paren: TokenIndex, decl_spec: DeclSpec) Error!Result {
9411 var d = decl_spec;
9412 switch (d.storage_class) {
9413 .auto, .@"extern", .typedef => |tok| {
9414 try p.err(tok, .invalid_compound_literal_storage_class, .{@tagName(d.storage_class)});
9415 d.storage_class = .none;
9416 },
9417 .register => if (p.func.qt == null) try p.err(p.tok_i, .register_on_global_compound_literal, .{}),
9418 .static, .none => {},
9419 }
9420 const qt = d.qt;
90079421
90089422 var incomplete_array_ty = false;
90099423 switch (qt.base(p.comp).type) {
......@@ -9073,7 +9487,6 @@ fn suffixExpr(p: *Parser, lhs: Result) Error!?Result {
90739487 if (operand.qt.get(p.comp, .pointer)) |pointer| {
90749488 try p.checkPtrArithmeticAllowed(pointer, p.tok_i, operand.node);
90759489 }
9076 try operand.usualUnaryConversion(p, p.tok_i);
90779490
90789491 try operand.un(p, .post_inc_expr, p.tok_i);
90799492 return operand;
......@@ -9097,7 +9510,6 @@ fn suffixExpr(p: *Parser, lhs: Result) Error!?Result {
90979510 if (operand.qt.get(p.comp, .pointer)) |pointer| {
90989511 try p.checkPtrArithmeticAllowed(pointer, p.tok_i, operand.node);
90999512 }
9100 try operand.usualUnaryConversion(p, p.tok_i);
91019513
91029514 try operand.un(p, .post_dec_expr, p.tok_i);
91039515 return operand;
......@@ -9112,8 +9524,8 @@ fn suffixExpr(p: *Parser, lhs: Result) Error!?Result {
91129524 const index_before_conversion = index;
91139525 var ptr = lhs;
91149526
9115 try ptr.lvalConversion(p, l_bracket);
9116 try index.lvalConversion(p, l_bracket);
9527 try ptr.lvalConversion(p);
9528 try index.lvalConversion(p);
91179529 if (ptr.qt.get(p.comp, .pointer)) |pointer_ty| {
91189530 ptr.qt = pointer_ty.child;
91199531 if (index.qt.isRealInt(p.comp)) {
......@@ -9139,6 +9551,8 @@ fn suffixExpr(p: *Parser, lhs: Result) Error!?Result {
91399551 try p.err(l_bracket, .invalid_subscript, .{});
91409552 }
91419553
9554 const item = try ptr.val.elem(index.val, p.comp);
9555
91429556 try ptr.saveValue(p);
91439557 try index.saveValue(p);
91449558 ptr.node = try p.addNode(.{ .array_access_expr = .{
......@@ -9147,6 +9561,7 @@ fn suffixExpr(p: *Parser, lhs: Result) Error!?Result {
91479561 .index = index.node,
91489562 .qt = ptr.qt,
91499563 } });
9564 ptr.val = item;
91509565 return ptr;
91519566 },
91529567 .period => {
......@@ -9162,7 +9577,7 @@ fn suffixExpr(p: *Parser, lhs: Result) Error!?Result {
91629577 if (lhs.qt.is(p.comp, .array)) {
91639578 var copy = lhs;
91649579 copy.qt = try copy.qt.decay(p.comp);
9165 try copy.implicitCast(p, .array_to_pointer, arrow);
9580 try copy.implicitCast(p, .array_to_pointer);
91669581 return try p.fieldAccess(copy, name, true, arrow);
91679582 }
91689583 return try p.fieldAccess(lhs, name, true, arrow);
......@@ -9259,7 +9674,7 @@ fn fieldAccessExtra(
92599674 return .{ ret, offset_bits + field.layout.offset_bits };
92609675 };
92619676 if (ctx.target_name == field.name) {
9262 if (ctx.check_deprecated) try p.checkDeprecatedUnavailable(field.qt, ctx.name_tok, field.name_tok);
9677 if (ctx.check_deprecated) try p.checkDeprecatedUnavailable(field.field_decl, ctx.name_tok);
92639678
92649679 const access: Node.MemberAccess = .{
92659680 .access_tok = ctx.access_tok,
......@@ -9334,6 +9749,146 @@ fn checkComplexArg(p: *Parser, builtin_tok: TokenIndex, first_after: TokenIndex,
93349749 }
93359750}
93369751
9752fn checkARMExclusive(
9753 p: *Parser,
9754 tag: Builtins.Tag,
9755 builtin_tok: TokenIndex,
9756 param_tok: TokenIndex,
9757 arg: *Result,
9758 idx: u32,
9759) !void {
9760 const name = p.tokSlice(builtin_tok);
9761 const is_ldrex = switch (tag) {
9762 .aarch64 => |t| switch (t) {
9763 .__builtin_arm_ldrex, .__builtin_arm_ldaex => true,
9764 else => false,
9765 },
9766 .arm => |t| switch (t) {
9767 .__builtin_arm_ldrex, .__builtin_arm_ldrexd, .__builtin_arm_ldaex => true,
9768 else => false,
9769 },
9770 else => false,
9771 };
9772 const is_dword = switch (tag) {
9773 .arm => |t| switch (t) {
9774 .__builtin_arm_ldrexd, .__builtin_arm_strexd => true,
9775 else => false,
9776 },
9777 else => false,
9778 };
9779
9780 // Fast-path return based on arg index
9781 switch (is_ldrex) {
9782 true => switch (idx) {
9783 0 => {},
9784 else => return, // Too many arguments
9785 },
9786 false => switch (idx) {
9787 0 => return, // We check source args for strex after checking the destination
9788 1 => {},
9789 else => return, // Too many arguments
9790 },
9791 }
9792
9793 // Arg should be a pointer
9794 const orig_ptr_arg = arg.qt; // For errors
9795 const ptr_arg = orig_ptr_arg.get(p.comp, .pointer) orelse
9796 return p.err(param_tok, .builtin_arm_ldrex_strex_invalid_ptr_type, .{ name, orig_ptr_arg });
9797
9798 const ptr_arg_child = ptr_arg.child;
9799 {
9800 // Insert implicit cast to "const volatile" (ldrex) or "volatile"
9801 // (strex).
9802 var ptr_arg_child_coerced = ptr_arg_child.unqualified();
9803 switch (is_ldrex) {
9804 true => {
9805 ptr_arg_child_coerced.@"const" = true;
9806 ptr_arg_child_coerced.@"volatile" = true;
9807 },
9808 false => {
9809 ptr_arg_child_coerced.@"volatile" = true;
9810 },
9811 }
9812 const qt = try p.comp.type_store.put(p.comp.gpa, .{ .pointer = .{
9813 .child = ptr_arg_child_coerced,
9814 } });
9815 try arg.coerce(p, qt, param_tok, .{ .arg = null });
9816 }
9817
9818 // Child should be a int, float, or pointer
9819 const ptr_arg_child_scalar = ptr_arg_child.scalarKind(p.comp);
9820 const is_valid_number = (ptr_arg_child_scalar.isInt() or
9821 ptr_arg_child_scalar.isFloat()) and
9822 ptr_arg_child_scalar.isReal();
9823 if (!is_valid_number and !ptr_arg_child_scalar.isPointer()) {
9824 // Cannot continue without a valid child type
9825 return p.err(param_tok, .builtin_arm_ldrex_strex_invalid_ptr_type, .{ name, orig_ptr_arg });
9826 }
9827
9828 {
9829 // Check child type size
9830 const ptr_arg_bit_size = ptr_arg_child.bitSizeof(p.comp);
9831 var mask: u4 = @bitCast(p.comp.langopts.arm_ldrex orelse ArmLdrex.none);
9832
9833 if (is_dword) {
9834 // ldrexd has been used explicitly
9835 mask &= ArmLdrex.d_int;
9836 }
9837
9838 if (mask == 0) {
9839 // Unsupported on this CPU, no point in continuing
9840 return p.err(builtin_tok, .builtin_arm_ldrex_strex_unsupported, .{name});
9841 }
9842
9843 const supported = std.math.isPowerOfTwo(ptr_arg_bit_size) and
9844 ptr_arg_bit_size <= 64 and
9845 ptr_arg_bit_size >= 8 and
9846 (mask & (ptr_arg_bit_size / 8) != 0);
9847 if (!supported) {
9848 // "1, 2, 4 or 8" is max 12 bytes
9849 var buf: [12]u8 = undefined;
9850 var writer: std.Io.Writer = .fixed(&buf);
9851 const sizes: [4]u4 = .{ ArmLdrex.b_int, ArmLdrex.h_int, ArmLdrex.w_int, ArmLdrex.d_int };
9852 for (sizes) |size| {
9853 if (mask & size != 0) {
9854 mask &= ~size;
9855 if (writer.end == 0) {
9856 // First element
9857 writer.print("{d}", .{size}) catch break;
9858 } else if (mask != 0) {
9859 // Middle item(s) w/separator
9860 writer.print(", {d}", .{size}) catch break;
9861 } else {
9862 // Last size with multiple sizes
9863 writer.print(" or {d}", .{size}) catch break;
9864 }
9865 }
9866 }
9867
9868 try p.err(param_tok, .builtin_arm_ldrex_strex_unsupported_size, .{
9869 name,
9870 writer.buffered(),
9871 orig_ptr_arg,
9872 });
9873 }
9874 }
9875
9876 if (is_ldrex) {
9877 return; // Done for ldrex
9878 }
9879
9880 assert(idx == 1); // strex only has 2 args and we skip idx 0 at the start
9881
9882 // Set up the coercion for the value arg for strex
9883 const value_idx = p.list_buf.items[p.list_buf.items.len - 1]; // Always previous arg to ptr arg
9884 var value_arg: Result = .{
9885 .node = value_idx,
9886 .qt = value_idx.qt(&p.tree),
9887 };
9888 try value_arg.coerce(p, ptr_arg_child, value_idx.tok(&p.tree), .{ .arg = null });
9889 p.list_buf.items[p.list_buf.items.len - 1] = value_arg.node;
9890}
9891
93379892fn checkElementwiseArg(
93389893 p: *Parser,
93399894 param_tok: TokenIndex,
......@@ -9435,21 +9990,26 @@ fn callExpr(p: *Parser, lhs: Result) Error!Result {
94359990
94369991 // We cannot refer to the function type here because the pointer to
94379992 // type_store.extra might get invalidated while parsing args.
9438 const func_qt, const typed_params_len, const func_kind_base = blk: {
9993 const func_qt, const typed_params_len, const func_kind_base, const maybe_nonnull: ?Attribute = blk: {
94399994 var base_qt = lhs.qt;
9440 if (base_qt.get(p.comp, .pointer)) |pointer_ty| base_qt = pointer_ty.child;
9441 if (base_qt.isInvalid()) break :blk .{ base_qt, std.math.maxInt(usize), undefined };
9995 if (base_qt.get(p.comp, .pointer)) |pointer_ty| base_qt = pointer_ty.child else if (base_qt.get(p.comp, .block)) |block_ty| base_qt = block_ty.func;
9996 if (base_qt.isInvalid()) break :blk .{ base_qt, std.math.maxInt(usize), undefined, null };
94429997
94439998 const func_type_qt = base_qt.base(p.comp);
94449999 if (func_type_qt.type != .func) {
944510000 try p.err(l_paren, .not_callable, .{lhs.qt});
944610001 return error.ParsingFailed;
944710002 }
9448 break :blk .{ func_type_qt.qt, func_type_qt.type.func.params.len, func_type_qt.type.func.kind };
10003 break :blk .{
10004 func_type_qt.qt,
10005 func_type_qt.type.func.params.len,
10006 func_type_qt.type.func.kind,
10007 if (p.tree.calledFunctionAttr(lhs.node, .nonnull)) |info| info.attr else null,
10008 };
944910009 };
945010010
945110011 var func = lhs;
9452 try func.lvalConversion(p, l_paren);
10012 try func.lvalConversion(p);
945310013
945410014 const list_buf_top = p.list_buf.items.len;
945510015 defer p.list_buf.items.len = list_buf_top;
......@@ -9499,14 +10059,14 @@ fn callExpr(p: *Parser, lhs: Result) Error!Result {
949910059 var arg = try p.expect(assignExpr);
950010060
950110061 if (call_expr.shouldPerformLvalConversion(arg_count)) {
9502 try arg.lvalConversion(p, param_tok);
10062 try arg.lvalConversion(p);
950310063 }
950410064 if ((arg.qt.hasIncompleteSize(p.comp) and !arg.qt.is(p.comp, .void)) or arg.qt.isInvalid()) return error.ParsingFailed;
950510065
950610066 if (arg_count >= typed_params_len) {
950710067 if (call_expr.shouldPromoteVarArg(arg_count)) switch (arg.qt.base(p.comp).type) {
950810068 .int => |int_ty| if (int_ty == .int) try arg.castToInt(p, arg.qt.promoteInt(p.comp), param_tok),
9509 .float => |float_ty| if (float_ty == .double) try arg.castToFloat(p, .double, param_tok),
10069 .float => |float_ty| if (float_ty == .double) try arg.castToFloat(p, .double),
951010070 else => {},
951110071 };
951210072
......@@ -9523,7 +10083,7 @@ fn callExpr(p: *Parser, lhs: Result) Error!Result {
952310083 }
952410084
952510085 if (func_qt.get(p.comp, .func)) |func_ty| {
9526 const param = func_ty.params[arg_count];
10086 const param: Type.Func.Param = func_ty.params[arg_count];
952710087
952810088 if (param.qt.get(p.comp, .pointer)) |pointer_ty| static_check: {
952910089 const decayed_child_qt = pointer_ty.decayed orelse break :static_check;
......@@ -9542,6 +10102,19 @@ fn callExpr(p: *Parser, lhs: Result) Error!Result {
954210102 }
954310103 }
954410104
10105 const needs_nonnull = if (maybe_nonnull) |attr|
10106 if (attr.args.nonnull.len == 0)
10107 param.qt.isPointer(p.comp)
10108 else
10109 mem.findScalar(u32, attr.args.nonnull, @intCast(arg_count + 1)) != null
10110 else if (param.node.unpack()) |some|
10111 p.tree.attr_map.hasAttribute(some, .nonnull)
10112 else
10113 false;
10114 if (needs_nonnull and arg.val.isZero(p.comp)) {
10115 try p.err(param_tok, .non_null_argument, .{});
10116 }
10117
954510118 if (call_expr.shouldCoerceArg(arg_count)) {
954610119 try arg.coerce(p, param.qt, param_tok, .{ .arg = param.name_tok });
954710120 }
......@@ -9683,6 +10256,8 @@ fn checkArrayBounds(p: *Parser, index: Result, array: Result, tok: TokenIndex) !
968310256/// | CHAR_LITERAL
968410257/// | STRING_LITERAL
968510258/// | '(' expr ')'
10259/// | '(' compoundStmt ')'
10260/// | compoundLiteral
968610261/// | genericSelection
968710262/// | shufflevector
968810263/// | convertvector
......@@ -9690,16 +10265,79 @@ fn checkArrayBounds(p: *Parser, index: Result, array: Result, tok: TokenIndex) !
969010265/// | chooseExpr
969110266/// | vaStart
969210267/// | offsetof
9693fn primaryExpr(p: *Parser) Error!?Result {
9694 if (p.eatToken(.l_paren)) |l_paren| {
9695 var grouped_expr = try p.expect(expr);
9696 try p.expectClosing(l_paren, .r_paren);
9697 try grouped_expr.un(p, .paren_expr, l_paren);
9698 return grouped_expr;
9699 }
9700
10268fn primaryExpr(p: *Parser, eval: bool) Error!?Result {
970110269 const gpa = p.comp.gpa;
970210270 switch (p.tok_ids[p.tok_i]) {
10271 .l_paren => {
10272 const l_paren = p.tok_i;
10273 p.tok_i += 1;
10274
10275 // Statement expression ({ ... })
10276 if (p.tok_ids[p.tok_i] == .l_brace) {
10277 const l_brace = p.tok_i;
10278
10279 try p.err(l_brace, .gnu_statement_expression, .{});
10280 if (p.func.qt == null) {
10281 try p.err(l_brace, .stmt_expr_not_allowed_file_scope, .{});
10282 return error.ParsingFailed;
10283 }
10284 var opt_node: ?Node.Index = null;
10285 const body_node = (try p.compoundStmt(false, &opt_node)).?; // compoundStmt only returns null if .l_brace isn't the first token
10286
10287 var res: Result = .{
10288 .node = body_node,
10289 .qt = if (opt_node) |node| node.qt(&p.tree) else .void,
10290 };
10291 try p.expectClosing(l_paren, .r_paren);
10292 try res.un(p, .stmt_expr, l_brace);
10293 return res;
10294 }
10295
10296 var decl_spec: DeclSpec = .{ .qt = .invalid };
10297 const any = if (p.comp.langopts.standard.atLeast(.c23))
10298 try p.storageClassSpec(&decl_spec)
10299 else
10300 false;
10301
10302 if (try p.typeName()) |ty| {
10303 try p.expectClosing(l_paren, .r_paren);
10304
10305 // Compound literal (type){ ... }
10306 if (p.tok_ids[p.tok_i] == .l_brace) {
10307 decl_spec.qt = ty;
10308 return try p.compoundLiteral(l_paren, decl_spec);
10309 } else if (any) {
10310 try p.err(l_paren + 1, .expected_expr, .{});
10311 return error.ParsingFailed;
10312 }
10313
10314 // Cast (type)unExpr
10315 const operand_tok = p.tok_i;
10316 var operand = try p.expectResult(try p.unExpr(eval));
10317 try operand.lvalConversion(p);
10318 try operand.castType(p, ty, operand_tok, l_paren);
10319 return operand;
10320 } else if (any) {
10321 // If we saw a storage class specifier then this should
10322 // have been a compound literal
10323 try p.err(p.tok_i, .expected_type, .{});
10324 return error.ParsingFailed;
10325 }
10326
10327 // Grouped expression (expr)
10328 var grouped_expr = (p.binaryExpr(.any, eval) catch |er| {
10329 if (er == error.ParsingFailed) p.skipTo(.r_paren);
10330 return er;
10331 }) orelse {
10332 try p.err(p.tok_i, .expected_expr, .{});
10333 p.skipTo(.r_paren);
10334 return error.ParsingFailed;
10335 };
10336
10337 try p.expectClosing(l_paren, .r_paren);
10338 try grouped_expr.un(p, .paren_expr, l_paren);
10339 return grouped_expr;
10340 },
970310341 .identifier, .extended_identifier => {
970410342 const name_tok = try p.expectIdentifier();
970510343 const name = p.tokSlice(name_tok);
......@@ -9718,7 +10356,10 @@ fn primaryExpr(p: *Parser) Error!?Result {
971810356 try p.err(name_tok, .out_of_scope_use, .{name});
971910357 try p.err(sym.tok, .previous_definition, .{});
972010358 }
9721 try p.checkDeprecatedUnavailable(sym.qt, name_tok, sym.tok);
10359
10360 try p.checkDeprecatedUnavailable(sym.node, name_tok);
10361 p.markUsed(sym.node);
10362
972210363 if (sym.kind == .constexpr) {
972310364 return .{
972410365 .val = sym.val,
......@@ -9727,7 +10368,7 @@ fn primaryExpr(p: *Parser) Error!?Result {
972710368 .decl_ref_expr = .{
972810369 .name_tok = name_tok,
972910370 .qt = sym.qt,
9730 .decl = sym.node.unpack().?,
10371 .decl = sym.node,
973110372 },
973210373 }),
973310374 };
......@@ -9744,13 +10385,13 @@ fn primaryExpr(p: *Parser) Error!?Result {
974410385 .{ .enumeration_ref = .{
974510386 .name_tok = name_tok,
974610387 .qt = sym.qt,
9747 .decl = sym.node.unpack().?,
10388 .decl = sym.node,
974810389 } }
974910390 else
975010391 .{ .decl_ref_expr = .{
975110392 .name_tok = name_tok,
975210393 .qt = sym.qt,
9753 .decl = sym.node.unpack().?,
10394 .decl = sym.node,
975410395 } });
975510396
975610397 const res: Result = .{
......@@ -9832,7 +10473,7 @@ fn primaryExpr(p: *Parser) Error!?Result {
983210473 });
983310474
983410475 try p.decl_buf.append(gpa, node);
9835 try p.syms.declareSymbol(p, interned_name, func_qt, name_tok, node);
10476 _ = try p.syms.declareSymbol(p, interned_name, func_qt, name_tok, node);
983610477
983710478 return .{
983810479 .qt = func_qt,
......@@ -9862,7 +10503,6 @@ fn primaryExpr(p: *Parser) Error!?Result {
986210503 },
986310504 }),
986410505 };
9865 std.debug.assert(!p.in_macro); // Should have been replaced with .one / .zero
986610506 try res.putValue(p);
986710507 return res;
986810508 },
......@@ -9969,31 +10609,8 @@ fn primaryExpr(p: *Parser) Error!?Result {
996910609 .empty_char_literal,
997010610 .unterminated_char_literal,
997110611 => return try p.charLiteral(),
9972 .zero => {
9973 defer p.tok_i += 1;
9974 const int_qt: QualType = if (p.in_macro) p.comp.type_store.intmax else .int;
9975 const res: Result = .{
9976 .val = .zero,
9977 .qt = int_qt,
9978 .node = try p.addNode(.{ .int_literal = .{ .qt = int_qt, .literal_tok = p.tok_i } }),
9979 };
9980 try res.putValue(p);
9981 return res;
9982 },
9983 .one => {
9984 defer p.tok_i += 1;
9985 const int_qt: QualType = if (p.in_macro) p.comp.type_store.intmax else .int;
9986 const res: Result = .{
9987 .val = .one,
9988 .qt = int_qt,
9989 .node = try p.addNode(.{ .int_literal = .{ .qt = int_qt, .literal_tok = p.tok_i } }),
9990 };
9991 try res.putValue(p);
9992 return res;
9993 },
999410612 .pp_num => return try p.ppNum(),
999510613 .embed_byte => {
9996 assert(!p.in_macro);
999710614 const loc = p.pp.tokens.items(.loc)[p.tok_i];
999810615 defer p.tok_i += 1;
999910616 const buf = p.comp.getSource(.generated).buf[loc.byte_offset..];
......@@ -10026,7 +10643,7 @@ fn makePredefinedIdentifier(p: *Parser, slice: []const u8) !Result {
1002610643 const val = try Value.intern(p.comp, .{ .bytes = slice });
1002710644
1002810645 const str_lit = try p.addNode(.{ .string_literal_expr = .{ .qt = array_qt, .literal_tok = p.tok_i, .kind = .ascii } });
10029 if (!p.in_macro) try p.tree.value_map.put(gpa, str_lit, val);
10646 try p.tree.value_map.put(gpa, str_lit, val);
1003010647
1003110648 return .{ .qt = array_qt, .node = try p.addNode(.{
1003210649 .variable = .{
......@@ -10180,127 +10797,42 @@ fn stringLiteral(p: *Parser) Error!Result {
1018010797}
1018110798
1018210799fn charLiteral(p: *Parser) Error!?Result {
10183 defer p.tok_i += 1;
10184 const tok_id = p.tok_ids[p.tok_i];
10800 const literal = p.tok_i;
10801 p.tok_i += 1;
10802
10803 const tok_id = p.tok_ids[literal];
1018510804 const char_kind = text_literal.Kind.classify(tok_id, .char_literal) orelse {
1018610805 if (tok_id == .empty_char_literal) {
10187 try p.err(p.tok_i, .empty_char_literal_error, .{});
10806 try p.err(literal, .empty_char_literal_error, .{});
1018810807 } else if (tok_id == .unterminated_char_literal) {
10189 try p.err(p.tok_i, .unterminated_char_literal_error, .{});
10808 try p.err(literal, .unterminated_char_literal_error, .{});
1019010809 } else unreachable;
1019110810 return .{
1019210811 .qt = .int,
1019310812 .val = .zero,
10194 .node = try p.addNode(.{ .char_literal = .{ .qt = .int, .literal_tok = p.tok_i, .kind = .ascii } }),
10813 .node = try p.addNode(.{ .char_literal = .{ .qt = .int, .literal_tok = literal, .kind = .ascii } }),
1019510814 };
1019610815 };
10197 if (char_kind == .utf_8) try p.err(p.tok_i, .u8_char_lit, .{});
10198 var val: u32 = 0;
10199
10200 const gpa = p.comp.gpa;
10201 const slice = char_kind.contentSlice(p.tokSlice(p.tok_i));
1020210816
10203 var is_multichar = false;
10204 if (slice.len == 1 and std.ascii.isAscii(slice[0])) {
10205 // fast path: single unescaped ASCII char
10206 val = slice[0];
10207 } else {
10208 const max_codepoint = char_kind.maxCodepoint(p.comp);
10209 var char_literal_parser: text_literal.Parser = .{
10210 .comp = p.comp,
10211 .literal = slice,
10212 .kind = char_kind,
10213 .max_codepoint = max_codepoint,
10214 .loc = p.pp.tokens.items(.loc)[p.tok_i],
10215 .expansion_locs = p.pp.expansionSlice(p.tok_i),
10216 };
10217
10218 const max_chars_expected = 4;
10219 var bfa_buf: [max_chars_expected]u32 = undefined;
10220 var bfa: std.heap.BufferFirstAllocator = .init(@ptrCast(&bfa_buf), gpa);
10221 const allocator = bfa.allocator();
10222 var chars: std.ArrayList(u32) = .empty;
10223 defer chars.deinit(allocator);
10224
10225 chars.ensureUnusedCapacity(allocator, max_chars_expected) catch unreachable; // stack allocation already succeeded
10226
10227 while (try char_literal_parser.next()) |item| switch (item) {
10228 .value => |v| try chars.append(allocator, v),
10229 .codepoint => |c| try chars.append(allocator, c),
10230 .improperly_encoded => |s| {
10231 try chars.ensureUnusedCapacity(allocator, s.len);
10232 for (s) |c| chars.appendAssumeCapacity(c);
10233 },
10234 .utf8_text => |view| {
10235 var it = view.iterator();
10236 var max_codepoint_seen: u21 = 0;
10237 try chars.ensureUnusedCapacity(allocator, view.bytes.len);
10238 while (it.nextCodepoint()) |c| {
10239 max_codepoint_seen = @max(max_codepoint_seen, c);
10240 chars.appendAssumeCapacity(c);
10241 }
10242 if (max_codepoint_seen > max_codepoint) {
10243 try char_literal_parser.err(.char_too_large, .{});
10244 }
10245 },
10246 };
10247
10248 is_multichar = chars.items.len > 1;
10249 if (is_multichar) {
10250 if (char_kind == .char and chars.items.len == 4) {
10251 try char_literal_parser.warn(.four_char_char_literal, .{});
10252 } else if (char_kind == .char) {
10253 try char_literal_parser.warn(.multichar_literal_warning, .{});
10254 } else {
10255 const kind: []const u8 = switch (char_kind) {
10256 .wide => "wide",
10257 .utf_8, .utf_16, .utf_32 => "Unicode",
10258 else => unreachable,
10259 };
10260 try char_literal_parser.err(.invalid_multichar_literal, .{kind});
10261 }
10262 }
10263
10264 var multichar_overflow = false;
10265 if (char_kind == .char and is_multichar) {
10266 for (chars.items) |item| {
10267 val, const overflowed = @shlWithOverflow(val, 8);
10268 multichar_overflow = multichar_overflow or overflowed != 0;
10269 val += @as(u8, @truncate(item));
10270 }
10271 } else if (chars.items.len > 0) {
10272 val = chars.items[chars.items.len - 1];
10273 }
10274
10275 if (multichar_overflow) {
10276 try char_literal_parser.err(.char_lit_too_wide, .{});
10277 }
10278 }
10817 var char_literal_parser: text_literal.Parser = .{
10818 .comp = p.comp,
10819 .literal = char_kind.contentSlice(p.tokSlice(literal)),
10820 .kind = char_kind,
10821 .max_codepoint = char_kind.maxCodepoint(p.comp),
10822 .loc = p.pp.tokens.items(.loc)[literal],
10823 .expansion_locs = p.pp.expansionSlice(literal),
10824 };
10825 const parsed = try char_literal_parser.parse();
1027910826
1028010827 const char_literal_qt = char_kind.charLiteralType(p.comp);
10281 // This is the type the literal will have if we're in a macro; macros always operate on intmax_t/uintmax_t values
10282 const macro_qt = if (char_literal_qt.signedness(p.comp) == .unsigned or
10283 (char_kind == .char and p.comp.getCharSignedness() == .unsigned))
10284 try p.comp.type_store.intmax.makeIntUnsigned(p.comp)
10285 else
10286 p.comp.type_store.intmax;
10287
10288 var value = try Value.int(val, p.comp);
10289 // C99 6.4.4.4.10
10290 // > If an integer character constant contains a single character or escape sequence,
10291 // > its value is the one that results when an object with type char whose value is
10292 // > that of the single character or escape sequence is converted to type int.
10293 // This conversion only matters if `char` is signed and has a high-order bit of `1`
10294 if (char_kind == .char and !is_multichar and val > 0x7F and p.comp.getCharSignedness() == .signed) {
10295 _ = try value.intCast(.char, p.comp);
10296 }
10297
1029810828 const res: Result = .{
10299 .qt = if (p.in_macro) macro_qt else char_literal_qt,
10300 .val = value,
10829 .qt = char_literal_qt,
10830 .val = switch (parsed) {
10831 inline else => |v| try Value.int(v, p.comp),
10832 },
1030110833 .node = try p.addNode(.{ .char_literal = .{
1030210834 .qt = char_literal_qt,
10303 .literal_tok = p.tok_i,
10835 .literal_tok = literal,
1030410836 .kind = switch (char_kind) {
1030510837 .char, .unterminated => .ascii,
1030610838 .wide => .wide,
......@@ -10310,11 +10842,11 @@ fn charLiteral(p: *Parser) Error!?Result {
1031010842 },
1031110843 } }),
1031210844 };
10313 if (!p.in_macro) try p.tree.value_map.put(gpa, res.node, res.val);
10845 try p.tree.value_map.put(p.comp.gpa, res.node, res.val);
1031410846 return res;
1031510847}
1031610848
10317fn parseFloat(p: *Parser, buf: []const u8, suffix: NumberSuffix, tok_i: TokenIndex) !Result {
10849fn parseFloat(p: *Parser, buf: []const u8, suffix: number_literal.Suffix, tok_i: TokenIndex) !Result {
1031810850 const qt: QualType = switch (suffix) {
1031910851 .None, .I => .double,
1032010852 .F, .IF => .float,
......@@ -10352,21 +10884,21 @@ fn parseFloat(p: *Parser, buf: []const u8, suffix: NumberSuffix, tok_i: TokenInd
1035210884 else => unreachable,
1035310885 };
1035410886 });
10355 var res = Result{
10887 var res: Result = .{
1035610888 .qt = qt,
1035710889 .node = try p.addNode(.{ .float_literal = .{ .qt = qt, .literal_tok = tok_i } }),
1035810890 .val = val,
1035910891 };
1036010892 if (suffix.isImaginary()) {
10361 try p.err(p.tok_i, .gnu_imaginary_constant, .{});
10893 try p.err(tok_i, .gnu_imaginary_constant, .{});
1036210894 res.qt = try qt.toComplex(p.comp);
1036310895
10364 res.val = try Value.intern(p.comp, switch (res.qt.bitSizeof(p.comp)) {
10365 32 => .{ .complex = .{ .cf16 = .{ 0.0, val.toFloat(f16, p.comp) } } },
10366 64 => .{ .complex = .{ .cf32 = .{ 0.0, val.toFloat(f32, p.comp) } } },
10367 128 => .{ .complex = .{ .cf64 = .{ 0.0, val.toFloat(f64, p.comp) } } },
10368 160 => .{ .complex = .{ .cf80 = .{ 0.0, val.toFloat(f80, p.comp) } } },
10369 256 => .{ .complex = .{ .cf128 = .{ 0.0, val.toFloat(f128, p.comp) } } },
10896 res.val = try Value.intern(p.comp, switch (qt.bitSizeof(p.comp)) {
10897 16 => .{ .complex = .{ .cf16 = .{ 0.0, val.toFloat(f16, p.comp) } } },
10898 32 => .{ .complex = .{ .cf32 = .{ 0.0, val.toFloat(f32, p.comp) } } },
10899 64 => .{ .complex = .{ .cf64 = .{ 0.0, val.toFloat(f64, p.comp) } } },
10900 80 => .{ .complex = .{ .cf80 = .{ 0.0, val.toFloat(f80, p.comp) } } },
10901 128 => .{ .complex = .{ .cf128 = .{ 0.0, val.toFloat(f128, p.comp) } } },
1037010902 else => unreachable,
1037110903 });
1037210904 try res.un(p, .imaginary_literal, tok_i);
......@@ -10374,54 +10906,7 @@ fn parseFloat(p: *Parser, buf: []const u8, suffix: NumberSuffix, tok_i: TokenInd
1037410906 return res;
1037510907}
1037610908
10377fn getIntegerPart(p: *Parser, buf: []const u8, prefix: NumberPrefix, tok_i: TokenIndex) ![]const u8 {
10378 if (buf[0] == '.') return "";
10379
10380 if (!prefix.digitAllowed(buf[0])) {
10381 switch (prefix) {
10382 .binary => try p.err(tok_i, .invalid_binary_digit, .{text_literal.Ascii.init(buf[0])}),
10383 .octal => try p.err(tok_i, .invalid_octal_digit, .{text_literal.Ascii.init(buf[0])}),
10384 .hex => try p.err(tok_i, .invalid_int_suffix, .{buf}),
10385 .decimal => unreachable,
10386 }
10387 return error.ParsingFailed;
10388 }
10389
10390 for (buf, 0..) |c, idx| {
10391 if (idx == 0) continue;
10392 switch (c) {
10393 '.' => return buf[0..idx],
10394 'p', 'P' => return if (prefix == .hex) buf[0..idx] else {
10395 try p.err(tok_i, .invalid_int_suffix, .{buf[idx..]});
10396 return error.ParsingFailed;
10397 },
10398 'e', 'E' => {
10399 switch (prefix) {
10400 .hex => continue,
10401 .decimal => return buf[0..idx],
10402 .binary => try p.err(tok_i, .invalid_binary_digit, .{text_literal.Ascii.init(c)}),
10403 .octal => try p.err(tok_i, .invalid_octal_digit, .{text_literal.Ascii.init(c)}),
10404 }
10405 return error.ParsingFailed;
10406 },
10407 '0'...'9', 'a'...'d', 'A'...'D', 'f', 'F' => {
10408 if (!prefix.digitAllowed(c)) {
10409 switch (prefix) {
10410 .binary => try p.err(tok_i, .invalid_binary_digit, .{text_literal.Ascii.init(c)}),
10411 .octal => try p.err(tok_i, .invalid_octal_digit, .{text_literal.Ascii.init(c)}),
10412 .decimal, .hex => try p.err(tok_i, .invalid_int_suffix, .{buf[idx..]}),
10413 }
10414 return error.ParsingFailed;
10415 }
10416 },
10417 '\'' => {},
10418 else => return buf[0..idx],
10419 }
10420 }
10421 return buf;
10422}
10423
10424fn fixedSizeInt(p: *Parser, base: u8, buf: []const u8, suffix: NumberSuffix, tok_i: TokenIndex) !Result {
10909fn fixedSizeInt(p: *Parser, base: u8, buf: []const u8, suffix: number_literal.Suffix, tok_i: TokenIndex) !Result {
1042510910 var val: u64 = 0;
1042610911 var overflow = false;
1042710912 for (buf) |c| {
......@@ -10477,21 +10962,34 @@ fn fixedSizeInt(p: *Parser, base: u8, buf: []const u8, suffix: NumberSuffix, tok
1047710962 .ULL, .IULL => .ulong_long,
1047810963 .L, .IL => .long,
1047910964 .LL, .ILL => .long_long,
10965 .I8 => p.getMSVCIntSuffixType(.@"8", .signed),
10966 .UI8 => p.getMSVCIntSuffixType(.@"8", .unsigned),
10967 .I16 => p.getMSVCIntSuffixType(.@"16", .signed),
10968 .UI16 => p.getMSVCIntSuffixType(.@"16", .unsigned),
10969 .I32 => p.getMSVCIntSuffixType(.@"32", .signed),
10970 .UI32 => p.getMSVCIntSuffixType(.@"32", .unsigned),
10971 .I64 => p.getMSVCIntSuffixType(.@"64", .signed),
10972 .UI64 => p.getMSVCIntSuffixType(.@"64", .unsigned),
1048010973 else => unreachable,
1048110974 };
1048210975
10483 for (qts) |qt| {
10484 res.qt = qt;
10485 if (res.qt.intRankOrder(suffix_qt, p.comp).compare(.lt)) continue;
10486 const max_int = try Value.maxInt(res.qt, p.comp);
10487 if (interned_val.compare(.lte, max_int, p.comp)) break;
10488 } else switch (p.comp.langopts.emulate) {
10489 .no, .gcc => if (p.comp.target.hasInt128()) {
10490 res.qt = .int128;
10491 } else {
10492 res.qt = .long_long;
10493 },
10494 .msvc, .clang => res.qt = .ulong_long,
10976 if (suffix.isMSVCExtension()) {
10977 res.qt = suffix_qt; // No type promotion for MSVC suffixes
10978 _ = try res.val.intCast(suffix_qt, p.comp); // No diagnostic for truncation or sign change for MSVC exact-width types
10979 } else {
10980 for (qts) |qt| {
10981 res.qt = qt;
10982 if (res.qt.intRankOrder(suffix_qt, p.comp).compare(.lt)) continue;
10983 const max_int = try Value.maxInt(res.qt, p.comp);
10984 if (interned_val.compare(.lte, max_int, p.comp)) break;
10985 } else switch (p.comp.langopts.emulate) {
10986 .no, .gcc => if (p.comp.target.hasInt128()) {
10987 res.qt = .int128;
10988 } else {
10989 res.qt = .long_long;
10990 },
10991 .msvc, .clang => res.qt = .ulong_long,
10992 }
1049510993 }
1049610994
1049710995 res.node = try p.addNode(.{ .int_literal = .{ .qt = res.qt, .literal_tok = tok_i } });
......@@ -10499,10 +10997,7 @@ fn fixedSizeInt(p: *Parser, base: u8, buf: []const u8, suffix: NumberSuffix, tok
1049910997 return res;
1050010998}
1050110999
10502fn parseInt(p: *Parser, prefix: NumberPrefix, buf: []const u8, suffix: NumberSuffix, tok_i: TokenIndex) !Result {
10503 if (prefix == .binary) {
10504 try p.err(tok_i, .binary_integer_literal, .{});
10505 }
11000fn parseInt(p: *Parser, prefix: number_literal.Prefix, buf: []const u8, suffix: number_literal.Suffix, tok_i: TokenIndex) !Result {
1050611001 const base = @backingInt(prefix);
1050711002 var res = if (suffix.isBitInt())
1050811003 try p.bitInt(base, buf, suffix, tok_i)
......@@ -10518,10 +11013,8 @@ fn parseInt(p: *Parser, prefix: NumberPrefix, buf: []const u8, suffix: NumberSuf
1051811013 return res;
1051911014}
1052011015
10521fn bitInt(p: *Parser, base: u8, buf: []const u8, suffix: NumberSuffix, tok_i: TokenIndex) Error!Result {
11016fn bitInt(p: *Parser, base: u8, buf: []const u8, suffix: number_literal.Suffix, tok_i: TokenIndex) Error!Result {
1052211017 const gpa = p.comp.gpa;
10523 try p.err(tok_i, .pre_c23_compat, .{"'_BitInt' suffix for literals"});
10524 try p.err(tok_i, .bitint_suffix, .{});
1052511018
1052611019 var managed = try big.int.Managed.init(gpa);
1052711020 defer managed.deinit();
......@@ -10565,121 +11058,32 @@ fn bitInt(p: *Parser, base: u8, buf: []const u8, suffix: NumberSuffix, tok_i: To
1056511058 return res;
1056611059}
1056711060
10568fn getFracPart(p: *Parser, buf: []const u8, prefix: NumberPrefix, tok_i: TokenIndex) ![]const u8 {
10569 if (buf.len == 0 or buf[0] != '.') return "";
10570 assert(prefix != .octal);
10571 if (prefix == .binary) {
10572 try p.err(tok_i, .invalid_int_suffix, .{buf});
10573 return error.ParsingFailed;
10574 }
10575 for (buf, 0..) |c, idx| {
10576 if (idx == 0) continue;
10577 if (c == '\'') continue;
10578 if (!prefix.digitAllowed(c)) return buf[0..idx];
10579 }
10580 return buf;
10581}
10582
10583fn getExponent(p: *Parser, buf: []const u8, prefix: NumberPrefix, tok_i: TokenIndex) ![]const u8 {
10584 if (buf.len == 0) return "";
10585
10586 switch (buf[0]) {
10587 'e', 'E' => assert(prefix == .decimal),
10588 'p', 'P' => if (prefix != .hex) {
10589 try p.err(tok_i, .invalid_float_suffix, .{buf});
10590 return error.ParsingFailed;
10591 },
10592 else => return "",
10593 }
10594 const end = for (buf, 0..) |c, idx| {
10595 if (idx == 0) continue;
10596 if (idx == 1 and (c == '+' or c == '-')) continue;
10597 switch (c) {
10598 '0'...'9' => {},
10599 '\'' => continue,
10600 else => break idx,
10601 }
10602 } else buf.len;
10603 const exponent = buf[0..end];
10604 if (std.mem.indexOfAny(u8, exponent, "0123456789") == null) {
10605 try p.err(tok_i, .exponent_has_no_digits, .{});
10606 return error.ParsingFailed;
10607 }
10608 return exponent;
10609}
10610
1061111061/// Using an explicit `tok_i` parameter instead of `p.tok_i` makes it easier
1061211062/// to parse numbers in pragma handlers.
10613pub fn parseNumberToken(p: *Parser, tok_i: TokenIndex) !Result {
10614 const buf = p.tokSlice(tok_i);
10615 const prefix = NumberPrefix.fromString(buf);
10616 const after_prefix = buf[prefix.stringLen()..];
10617
10618 const int_part = try p.getIntegerPart(after_prefix, prefix, tok_i);
10619
10620 const after_int = after_prefix[int_part.len..];
10621
10622 const frac = try p.getFracPart(after_int, prefix, tok_i);
10623 const after_frac = after_int[frac.len..];
10624
10625 const exponent = try p.getExponent(after_frac, prefix, tok_i);
10626 const suffix_str = after_frac[exponent.len..];
10627 const is_float = (exponent.len > 0 or frac.len > 0);
10628 const suffix = NumberSuffix.fromString(suffix_str, if (is_float) .float else .int) orelse {
10629 if (is_float) {
10630 try p.err(tok_i, .invalid_float_suffix, .{suffix_str});
10631 } else {
10632 try p.err(tok_i, .invalid_int_suffix, .{suffix_str});
10633 }
10634 return error.ParsingFailed;
11063pub fn parseNumberToken(p: *Parser, num: TokenIndex) !Result {
11064 var number_literal_parser: number_literal.Parser = .{
11065 .comp = p.comp,
11066 .literal = p.tokSlice(num),
11067 .loc = p.pp.tokens.items(.loc)[num],
11068 .expansion_locs = p.pp.expansionSlice(num),
1063511069 };
10636 if (suffix.isFloat80() and p.comp.float80Type() == null) {
10637 try p.err(tok_i, .invalid_float_suffix, .{suffix_str});
10638 return error.ParsingFailed;
10639 }
11070 const parsed = try number_literal_parser.parse();
1064011071
10641 if (is_float) {
10642 assert(prefix == .hex or prefix == .decimal);
10643 if (prefix == .hex and exponent.len == 0) {
10644 try p.err(tok_i, .hex_floating_constant_requires_exponent, .{});
10645 return error.ParsingFailed;
10646 }
10647 const number = buf[0 .. buf.len - suffix_str.len];
10648 return p.parseFloat(number, suffix, tok_i);
11072 if (parsed.is_float) {
11073 return p.parseFloat(parsed.bytes, parsed.suffix, num);
1064911074 } else {
10650 return p.parseInt(prefix, int_part, suffix, tok_i);
11075 return p.parseInt(parsed.prefix, parsed.bytes, parsed.suffix, num);
1065111076 }
1065211077}
1065311078
1065411079fn ppNum(p: *Parser) Error!Result {
10655 defer p.tok_i += 1;
10656 var res = try p.parseNumberToken(p.tok_i);
10657 if (p.in_macro) {
10658 const res_sk = res.qt.scalarKind(p.comp);
10659 if (res_sk.isFloat() or !res_sk.isReal()) {
10660 try p.err(p.tok_i, .float_literal_in_pp_expr, .{});
10661 return error.ParsingFailed;
10662 }
10663 res.qt = if (res.qt.signedness(p.comp) == .unsigned)
10664 try p.comp.type_store.intmax.makeIntUnsigned(p.comp)
10665 else
10666 p.comp.type_store.intmax;
10667 } else if (res.val.opt_ref != .none) {
10668 try res.putValue(p);
10669 }
11080 const num = p.tok_i;
11081 p.tok_i += 1;
11082 var res = try p.parseNumberToken(num);
11083 try res.putValue(p);
1067011084 return res;
1067111085}
1067211086
10673/// Run a parser function but do not evaluate the result
10674fn parseNoEval(p: *Parser, comptime func: fn (*Parser) Error!?Result) Error!Result {
10675 const no_eval = p.no_eval;
10676 defer p.no_eval = no_eval;
10677 p.no_eval = true;
10678
10679 const parsed = try func(p);
10680 return p.expectResult(parsed);
10681}
10682
1068311087/// genericSelection : keyword_generic '(' assignExpr ',' genericAssoc (',' genericAssoc)* ')'
1068411088/// genericAssoc
1068511089/// : typeName ':' assignExpr
......@@ -10691,7 +11095,7 @@ fn genericSelection(p: *Parser) Error!?Result {
1069111095 const l_paren = try p.expectToken(.l_paren);
1069211096 const controlling_tok = p.tok_i;
1069311097
10694 const controlling = try p.parseNoEval(assignExpr);
11098 const controlling = try p.expectResult(try p.binaryExpr(.conditional, false));
1069511099 var controlling_qt = controlling.qt;
1069611100 if (controlling_qt.is(p.comp, .array)) {
1069711101 controlling_qt = try controlling_qt.decay(p.comp);
......@@ -10809,8 +11213,12 @@ fn genericSelection(p: *Parser) Error!?Result {
1080911213}
1081011214
1081111215test "Node locations" {
11216 var diagnostics: Diagnostics = .{
11217 .output = .ignore,
11218 };
1081211219 var comp = try Compilation.init(.testing);
1081311220 defer comp.deinit();
11221 comp.diagnostics = &diagnostics;
1081411222
1081511223 const file = try comp.addSourceFromBuffer("file.c",
1081611224 \\int foo = 5;
lib/compiler/aro/aro/Parser/Diagnostic.zig+135-299
......@@ -43,11 +43,6 @@ pub const to_match_bracket: Diagnostic = .{
4343 .kind = .note,
4444};
4545
46pub const float_literal_in_pp_expr: Diagnostic = .{
47 .fmt = "floating point literal in preprocessor expression",
48 .kind = .@"error",
49};
50
5146pub const expected_invalid: Diagnostic = .{
5247 .fmt = "expected '{tok_id}', found invalid bytes",
5348 .kind = .@"error",
......@@ -82,6 +77,7 @@ pub const missing_type_specifier: Diagnostic = .{
8277 .fmt = "type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int",
8378 .opt = .@"implicit-int",
8479 .kind = .@"error",
80 .suppress_unless_version = .c99,
8581};
8682
8783pub const missing_type_specifier_c23: Diagnostic = .{
......@@ -94,6 +90,7 @@ pub const param_not_declared: Diagnostic = .{
9490 .opt = .@"implicit-int",
9591 .kind = .@"error",
9692 .extension = true,
93 .suppress_unless_version = .c99,
9794};
9895
9996pub const multiple_storage_class: Diagnostic = .{
......@@ -101,14 +98,14 @@ pub const multiple_storage_class: Diagnostic = .{
10198 .kind = .@"error",
10299};
103100
104pub const static_assert_failure: Diagnostic = .{
105 .fmt = "static assertion failed",
101pub const static_assert_failure_message: Diagnostic = .{
102 .fmt = "static assertion failed{s}",
106103 .kind = .@"error",
107104};
108105
109pub const static_assert_failure_message: Diagnostic = .{
110 .fmt = "static assertion failed {s}",
111 .kind = .@"error",
106pub const static_assert_expression_evaluates_to: Diagnostic = .{
107 .fmt = "expression evaluates to '{s}'",
108 .kind = .note,
112109};
113110
114111pub const expected_type: Diagnostic = .{
......@@ -206,6 +203,12 @@ pub const threadlocal_non_var: Diagnostic = .{
206203 .kind = .@"error",
207204};
208205
206pub const thread_before_storage: Diagnostic = .{
207 .fmt = "'__thread' before '{s}'",
208 .kind = .off,
209 .extension = true,
210};
211
209212pub const func_spec_non_func: Diagnostic = .{
210213 .fmt = "'{s}' can only appear on functions",
211214 .kind = .@"error",
......@@ -265,6 +268,7 @@ pub const implicit_func_decl: Diagnostic = .{
265268 .fmt = "call to undeclared function '{s}'; ISO C99 and later do not support implicit function declarations",
266269 .opt = .@"implicit-function-declaration",
267270 .kind = .@"error",
271 .suppress_unless_version = .c99,
268272};
269273
270274pub const unknown_builtin: Diagnostic = .{
......@@ -428,6 +432,11 @@ pub const array_incomplete_elem: Diagnostic = .{
428432 .kind = .@"error",
429433};
430434
435pub const array_elem_size_not_multiple: Diagnostic = .{
436 .fmt = "size of array element of type {qt} ({d} bytes) isn't a multiple of its alignment ({d} bytes)",
437 .kind = .@"error",
438};
439
431440pub const array_func_elem: Diagnostic = .{
432441 .fmt = "arrays cannot have functions as their element type",
433442 .kind = .@"error",
......@@ -480,6 +489,11 @@ pub const not_assignable: Diagnostic = .{
480489 .kind = .@"error",
481490};
482491
492pub const cast_not_assignable: Diagnostic = .{
493 .fmt = "assignment to cast is not allowed",
494 .kind = .@"error",
495};
496
483497pub const ident_or_l_brace: Diagnostic = .{
484498 .fmt = "expected identifier or '{'",
485499 .kind = .@"error",
......@@ -554,8 +568,8 @@ pub const expected_parens_around_typename: Diagnostic = .{
554568 .kind = .@"error",
555569};
556570
557pub const alignof_expr: Diagnostic = .{
558 .fmt = "'_Alignof' applied to an expression is a GNU extension",
571pub const gnu_alignof_expr: Diagnostic = .{
572 .fmt = "'{s}' applied to an expression is a GNU extension",
559573 .opt = .@"gnu-alignof-expression",
560574 .kind = .warning,
561575 .extension = true,
......@@ -855,6 +869,11 @@ pub const atomic_auto: Diagnostic = .{
855869 .kind = .@"error",
856870};
857871
872pub const atomic_bit_int: Diagnostic = .{
873 .fmt = "_Atomic cannot be applied to integer type {qt}",
874 .kind = .@"error",
875};
876
858877// pub const atomic_access: Diagnostic = .{
859878// .fmt = "accessing a member of an atomic structure or union is undefined behavior",
860879// .opt = .@"atomic-access",
......@@ -886,46 +905,6 @@ pub const deref_incomplete_ty_ptr: Diagnostic = .{
886905 .kind = .@"error",
887906};
888907
889pub const alignas_on_func: Diagnostic = .{
890 .fmt = "'_Alignas' attribute only applies to variables and fields",
891 .kind = .@"error",
892};
893
894pub const alignas_on_param: Diagnostic = .{
895 .fmt = "'_Alignas' attribute cannot be applied to a function parameter",
896 .kind = .@"error",
897};
898
899pub const minimum_alignment: Diagnostic = .{
900 .fmt = "requested alignment is less than minimum alignment of {d}",
901 .kind = .@"error",
902};
903
904pub const maximum_alignment: Diagnostic = .{
905 .fmt = "requested alignment of {value} is too large",
906 .kind = .@"error",
907};
908
909pub const negative_alignment: Diagnostic = .{
910 .fmt = "requested negative alignment of {value} is invalid",
911 .kind = .@"error",
912};
913
914pub const align_ignored: Diagnostic = .{
915 .fmt = "'_Alignas' attribute is ignored here",
916 .kind = .warning,
917};
918
919// pub const zero_align_ignored: Diagnostic = .{
920// .fmt = "requested alignment of zero is ignored",
921// .kind = .warning,
922// };
923
924pub const non_pow2_align: Diagnostic = .{
925 .fmt = "requested alignment is not a power of 2",
926 .kind = .@"error",
927};
928
929908pub const pointer_mismatch: Diagnostic = .{
930909 .fmt = "pointer type mismatch ({qt} and {qt})",
931910 .opt = .@"pointer-type-mismatch",
......@@ -1069,11 +1048,6 @@ pub const division_by_zero: Diagnostic = .{
10691048 .opt = .@"division-by-zero",
10701049};
10711050
1072pub const division_by_zero_macro: Diagnostic = .{
1073 .fmt = "{s} by zero in preprocessor expression",
1074 .kind = .@"error",
1075};
1076
10771051pub const builtin_choose_cond: Diagnostic = .{
10781052 .fmt = "'__builtin_choose_expr' requires a constant expression",
10791053 .kind = .@"error",
......@@ -1109,11 +1083,6 @@ pub const shufflevector_index_too_big: Diagnostic = .{
11091083 .kind = .@"error",
11101084};
11111085
1112pub const alignas_unavailable: Diagnostic = .{
1113 .fmt = "'_Alignas' attribute requires integer constant expression",
1114 .kind = .@"error",
1115};
1116
11171086pub const case_val_unavailable: Diagnostic = .{
11181087 .fmt = "case value must be an integer constant expression",
11191088 .kind = .@"error",
......@@ -1205,19 +1174,25 @@ pub const unknown_attribute: Diagnostic = .{
12051174 .opt = .@"unknown-attributes",
12061175};
12071176
1208pub const ignored_attribute: Diagnostic = .{
1209 .fmt = "attribute '{s}' ignored on {s}",
1177pub const unknown_namespaced_attribute: Diagnostic = .{
1178 .fmt = "unknown attribute '{s}::{s}' ignored",
1179 .kind = .warning,
1180 .opt = .@"unknown-attributes",
1181};
1182
1183pub const ignored_on_types: Diagnostic = .{
1184 .fmt = "{at} attribute ignored when parsing type",
12101185 .kind = .warning,
12111186 .opt = .@"ignored-attributes",
12121187};
12131188
1214pub const invalid_fallthrough: Diagnostic = .{
1215 .fmt = "fallthrough annotation does not directly precede switch label",
1189pub const invalid_on_types: Diagnostic = .{
1190 .fmt = "{at} attribute cannot be applied to types",
12161191 .kind = .@"error",
12171192};
12181193
1219pub const cannot_apply_attribute_to_statement: Diagnostic = .{
1220 .fmt = "'{s}' attribute cannot be applied to a statement",
1194pub const declspec_empty_args: Diagnostic = .{
1195 .fmt = "parentheses must be omitted if '{s}' attribute's argument list is empty",
12211196 .kind = .@"error",
12221197};
12231198
......@@ -1305,11 +1280,6 @@ pub const implicitly_unsigned_literal: Diagnostic = .{
13051280 .extension = true,
13061281};
13071282
1308pub const invalid_preproc_operator: Diagnostic = .{
1309 .fmt = "token is not a valid binary operator in a preprocessor subexpression",
1310 .kind = .@"error",
1311};
1312
13131283pub const c99_compat: Diagnostic = .{
13141284 .fmt = "using this character in an identifier is incompatible with C99",
13151285 .kind = .off,
......@@ -1553,37 +1523,6 @@ pub const va_start_not_last_param: Diagnostic = .{
15531523 .kind = .warning,
15541524};
15551525
1556pub const attribute_not_enough_args: Diagnostic = .{
1557 .fmt = "'{s}' attribute takes at least {d} argument(s)",
1558 .kind = .@"error",
1559};
1560
1561pub const attribute_too_many_args: Diagnostic = .{
1562 .fmt = "'{s}' attribute takes at most {d} argument(s)",
1563 .kind = .@"error",
1564};
1565
1566pub const attribute_arg_invalid: Diagnostic = .{
1567 .fmt = "attribute argument is invalid, expected {s} but got {s}",
1568 .kind = .@"error",
1569};
1570
1571pub const unknown_attr_enum: Diagnostic = .{
1572 .fmt = "unknown `{s}` argument. Possible values are: {s}",
1573 .kind = .warning,
1574 .opt = .@"ignored-attributes",
1575};
1576
1577pub const attribute_requires_identifier: Diagnostic = .{
1578 .fmt = "'{s}' attribute requires an identifier",
1579 .kind = .@"error",
1580};
1581
1582pub const attribute_int_out_of_range: Diagnostic = .{
1583 .fmt = "attribute value '{value}' out of range",
1584 .kind = .@"error",
1585};
1586
15871526pub const declspec_not_enabled: Diagnostic = .{
15881527 .fmt = "'__declspec' attributes are not enabled; use '-fdeclspec' or '-fms-extensions' to enable support for __declspec attributes",
15891528 .kind = .@"error",
......@@ -1601,9 +1540,13 @@ pub const deprecated_declarations: Diagnostic = .{
16011540 .kind = .warning,
16021541};
16031542
1543pub const deprecated_alternative: Diagnostic = .{
1544 .fmt = "use '{s}' instead",
1545 .kind = .note,
1546};
1547
16041548pub const deprecated_note: Diagnostic = .{
16051549 .fmt = "'{s}' has been explicitly marked deprecated here",
1606 .opt = .@"deprecated-declarations",
16071550 .kind = .note,
16081551};
16091552
......@@ -1629,7 +1572,7 @@ pub const error_attribute: Diagnostic = .{
16291572};
16301573
16311574pub const ignored_record_attr: Diagnostic = .{
1632 .fmt = "attribute '{s}' is ignored, place it after \"{s}\" to apply attribute to type declaration",
1575 .fmt = "attribute {at} is ignored, place it after \"{s}\" to apply attribute to type declaration",
16331576 .kind = .warning,
16341577 .opt = .@"ignored-attributes",
16351578};
......@@ -1826,102 +1769,20 @@ pub const enum_invalid_underlying_type: Diagnostic = .{
18261769 .kind = .@"error",
18271770};
18281771
1829pub const transparent_union_wrong_type: Diagnostic = .{
1830 .fmt = "'transparent_union' attribute only applies to unions",
1831 .opt = .@"ignored-attributes",
1832 .kind = .warning,
1833};
1834
1835pub const transparent_union_one_field: Diagnostic = .{
1836 .fmt = "transparent union definition must contain at least one field; transparent_union attribute ignored",
1837 .opt = .@"ignored-attributes",
1838 .kind = .warning,
1839};
1840
1841pub const transparent_union_size: Diagnostic = .{
1842 .fmt = "size of field '{s}' ({d} bits) does not match the size of the first field in transparent union; transparent_union attribute ignored",
1843 .kind = .warning,
1844 .opt = .@"ignored-attributes",
1845};
1846
1847pub const transparent_union_size_note: Diagnostic = .{
1848 .fmt = "size of first field is {d}",
1849 .kind = .note,
1850};
1851
1852pub const designated_init_invalid: Diagnostic = .{
1853 .fmt = "'designated_init' attribute is only valid on 'struct' type'",
1854 .kind = .@"error",
1855};
1856
18571772pub const designated_init_needed: Diagnostic = .{
18581773 .fmt = "positional initialization of field in 'struct' declared with 'designated_init' attribute",
18591774 .opt = .@"designated-init",
18601775 .kind = .warning,
18611776};
18621777
1863pub const ignore_common: Diagnostic = .{
1864 .fmt = "ignoring attribute 'common' because it conflicts with attribute 'nocommon'",
1865 .opt = .@"ignored-attributes",
1866 .kind = .warning,
1867};
1868
1869pub const ignore_nocommon: Diagnostic = .{
1870 .fmt = "ignoring attribute 'nocommon' because it conflicts with attribute 'common'",
1871 .opt = .@"ignored-attributes",
1872 .kind = .warning,
1873};
1874
1875pub const non_string_ignored: Diagnostic = .{
1876 .fmt = "'nonstring' attribute ignored on objects of type {qt}",
1877 .opt = .@"ignored-attributes",
1878 .kind = .warning,
1879};
1880
1881pub const local_variable_attribute: Diagnostic = .{
1882 .fmt = "'{s}' attribute only applies to local variables",
1883 .opt = .@"ignored-attributes",
1884 .kind = .warning,
1885};
1886
1887pub const ignore_cold: Diagnostic = .{
1888 .fmt = "ignoring attribute 'cold' because it conflicts with attribute 'hot'",
1889 .opt = .@"ignored-attributes",
1890 .kind = .warning,
1891};
1892
1893pub const ignore_hot: Diagnostic = .{
1894 .fmt = "ignoring attribute 'hot' because it conflicts with attribute 'cold'",
1895 .opt = .@"ignored-attributes",
1896 .kind = .warning,
1897};
1898
1899pub const ignore_noinline: Diagnostic = .{
1900 .fmt = "ignoring attribute 'noinline' because it conflicts with attribute 'always_inline'",
1901 .opt = .@"ignored-attributes",
1902 .kind = .warning,
1903};
1904
1905pub const ignore_always_inline: Diagnostic = .{
1906 .fmt = "ignoring attribute 'always_inline' because it conflicts with attribute 'noinline'",
1907 .opt = .@"ignored-attributes",
1908 .kind = .warning,
1909};
1910
19111778pub const invalid_noreturn: Diagnostic = .{
19121779 .fmt = "function '{s}' declared 'noreturn' should not return",
19131780 .kind = .warning,
19141781 .opt = .@"invalid-noreturn",
19151782};
19161783
1917pub const nodiscard_unused: Diagnostic = .{
1918 .fmt = "ignoring return value of '{s}', declared with 'nodiscard' attribute",
1919 .kind = .warning,
1920 .opt = .@"unused-result",
1921};
1922
19231784pub const warn_unused_result: Diagnostic = .{
1924 .fmt = "ignoring return value of '{s}', declared with 'warn_unused_result' attribute",
1785 .fmt = "ignoring return value of '{s}', declared with {at} attribute{s}{s}",
19251786 .kind = .warning,
19261787 .opt = .@"unused-result",
19271788};
......@@ -1938,24 +1799,34 @@ pub const unused_value: Diagnostic = .{
19381799 .opt = .@"unused-value",
19391800};
19401801
1941pub const invalid_vec_elem_ty: Diagnostic = .{
1942 .fmt = "invalid vector element type {qt}",
1943 .kind = .@"error",
1802pub const unused_variable: Diagnostic = .{
1803 .fmt = "unused variable '{s}'",
1804 .kind = .warning,
1805 .opt = .@"unused-variable",
19441806};
19451807
1946pub const bit_int_vec_too_small: Diagnostic = .{
1947 .fmt = "'_BitInt' vector element width must be at least as wide as 'CHAR_BIT'",
1948 .kind = .@"error",
1808pub const unused_param: Diagnostic = .{
1809 .fmt = "unused parameter '{s}'",
1810 .kind = .warning,
1811 .opt = .@"unused-parameter",
19491812};
19501813
1951pub const bit_int_vec_not_pow2: Diagnostic = .{
1952 .fmt = "'_BitInt' vector element width must be a power of 2",
1953 .kind = .@"error",
1814pub const unused_typedef: Diagnostic = .{
1815 .fmt = "unused typedef '{s}'",
1816 .kind = .warning,
1817 .opt = .@"unused-local-typedef",
19541818};
19551819
1956pub const vec_size_not_multiple: Diagnostic = .{
1957 .fmt = "vector size not an integral multiple of component size",
1958 .kind = .@"error",
1820pub const unused_label: Diagnostic = .{
1821 .fmt = "unused label '{s}'",
1822 .kind = .warning,
1823 .opt = .@"unused-label",
1824};
1825
1826pub const unused_comparison: Diagnostic = .{
1827 .fmt = "{s} comparison result unused",
1828 .kind = .warning,
1829 .opt = .@"unused-comparison",
19591830};
19601831
19611832pub const invalid_imag: Diagnostic = .{
......@@ -1988,36 +1859,6 @@ pub const main_return_type: Diagnostic = .{
19881859 .extension = true,
19891860};
19901861
1991pub const invalid_int_suffix: Diagnostic = .{
1992 .fmt = "invalid suffix '{s}' on integer constant",
1993 .kind = .@"error",
1994};
1995
1996pub const invalid_float_suffix: Diagnostic = .{
1997 .fmt = "invalid suffix '{s}' on floating constant",
1998 .kind = .@"error",
1999};
2000
2001pub const invalid_octal_digit: Diagnostic = .{
2002 .fmt = "invalid digit '{c}' in octal constant",
2003 .kind = .@"error",
2004};
2005
2006pub const invalid_binary_digit: Diagnostic = .{
2007 .fmt = "invalid digit '{c}' in binary constant",
2008 .kind = .@"error",
2009};
2010
2011pub const exponent_has_no_digits: Diagnostic = .{
2012 .fmt = "exponent has no digits",
2013 .kind = .@"error",
2014};
2015
2016pub const hex_floating_constant_requires_exponent: Diagnostic = .{
2017 .fmt = "hexadecimal floating constant requires an exponent",
2018 .kind = .@"error",
2019};
2020
20211862pub const sizeof_returns_zero: Diagnostic = .{
20221863 .fmt = "sizeof returns 0",
20231864 .kind = .warning,
......@@ -2047,12 +1888,12 @@ pub const bit_int: Diagnostic = .{
20471888};
20481889
20491890pub const unsigned_bit_int_too_small: Diagnostic = .{
2050 .fmt = "{s}unsigned _BitInt must have a bit size of at least 1",
1891 .fmt = "unsigned _BitInt must have a bit size of at least 1",
20511892 .kind = .@"error",
20521893};
20531894
20541895pub const signed_bit_int_too_small: Diagnostic = .{
2055 .fmt = "{s}signed _BitInt must have a bit size of at least 2",
1896 .fmt = "signed _BitInt must have a bit size of at least 2",
20561897 .kind = .@"error",
20571898};
20581899
......@@ -2062,25 +1903,18 @@ pub const unsigned_bit_int_too_big: Diagnostic = .{
20621903};
20631904
20641905pub const signed_bit_int_too_big: Diagnostic = .{
2065 .fmt = "{s}signed _BitInt of bit sizes greater than " ++ std.fmt.comptimePrint("{d}", .{Compilation.bit_int_max_bits}) ++ " not supported",
1906 .fmt = "signed _BitInt of bit sizes greater than " ++ std.fmt.comptimePrint("{d}", .{Compilation.bit_int_max_bits}) ++ " not supported",
20661907 .kind = .@"error",
20671908};
20681909
2069pub const ptr_arithmetic_incomplete: Diagnostic = .{
2070 .fmt = "arithmetic on a pointer to an incomplete type {qt}",
1910pub const complex_bit_int: Diagnostic = .{
1911 .fmt = "'_Complex _BitInt' is invalid",
20711912 .kind = .@"error",
20721913};
20731914
2074pub const callconv_not_supported: Diagnostic = .{
2075 .fmt = "'{s}' calling convention is not supported for this target",
2076 .kind = .warning,
2077 .opt = .@"ignored-attributes",
2078};
2079
2080pub const callconv_non_func: Diagnostic = .{
2081 .fmt = "'{s}' only applies to function types; type here is {qt}",
2082 .kind = .warning,
2083 .opt = .@"ignored-attributes",
1915pub const ptr_arithmetic_incomplete: Diagnostic = .{
1916 .fmt = "arithmetic on a pointer to an incomplete type {qt}",
1917 .kind = .@"error",
20841918};
20851919
20861920pub const pointer_arith_void: Diagnostic = .{
......@@ -2123,14 +1957,6 @@ pub const suggest_pointer_for_invalid_fp16: Diagnostic = .{
21231957 .kind = .@"error",
21241958};
21251959
2126pub const bitint_suffix: Diagnostic = .{
2127 .fmt = "'_BitInt' suffix for literals is a C23 extension",
2128 .opt = .@"c23-extensions",
2129 .kind = .warning,
2130 .suppress_version = .c23,
2131 .extension = true,
2132};
2133
21341960pub const auto_type_extension: Diagnostic = .{
21351961 .fmt = "'__auto_type' is a GNU extension",
21361962 .opt = .@"gnu-auto-type",
......@@ -2273,11 +2099,6 @@ pub const argument_types_differ: Diagnostic = .{
22732099 .kind = .@"error",
22742100};
22752101
2276pub const attribute_requires_string: Diagnostic = .{
2277 .fmt = "attribute '{s}' requires an ordinary string",
2278 .kind = .@"error",
2279};
2280
22812102pub const empty_char_literal_error: Diagnostic = .{
22822103 .fmt = "empty character constant",
22832104 .kind = .@"error",
......@@ -2313,14 +2134,21 @@ pub const label_compound_end: Diagnostic = .{
23132134 .extension = true,
23142135};
23152136
2316pub const u8_char_lit: Diagnostic = .{
2317 .fmt = "UTF-8 character literal is a C23 extension",
2137pub const label_decl: Diagnostic = .{
2138 .fmt = "label followed by a declaration is a C23 extension",
23182139 .opt = .@"c23-extensions",
23192140 .kind = .warning,
23202141 .suppress_version = .c23,
23212142 .extension = true,
23222143};
23232144
2145pub const gnu_label_attr: Diagnostic = .{
2146 .fmt = "GNU-style attribute between label and declaration applies to the label",
2147 .opt = .@"label-attribute",
2148 .kind = .warning,
2149 .extension = true,
2150};
2151
23242152pub const invalid_compound_literal_storage_class: Diagnostic = .{
23252153 .fmt = "compound literal cannot have {s} storage class",
23262154 .kind = .@"error",
......@@ -2390,11 +2218,6 @@ pub const overflow_result_requires_ptr: Diagnostic = .{
23902218 .kind = .@"error",
23912219};
23922220
2393pub const attribute_todo: Diagnostic = .{
2394 .fmt = "TODO: implement '{s}' attribute for {s}",
2395 .kind = .warning,
2396};
2397
23982221pub const auto_type_self_initialized: Diagnostic = .{
23992222 .fmt = "variable '{s}' declared with deduced type '__auto_type' cannot appear in its own initializer",
24002223 .kind = .@"error",
......@@ -2422,22 +2245,6 @@ pub const packed_member_address: Diagnostic = .{
24222245 .opt = .@"address-of-packed-member",
24232246};
24242247
2425pub const attribute_param_out_of_bounds: Diagnostic = .{
2426 .fmt = "'{s}' attribute parameter {d} is out of bounds",
2427 .kind = .@"error",
2428};
2429
2430pub const alloc_align_requires_ptr_return: Diagnostic = .{
2431 .fmt = "'alloc_align' attribute only applies to return values that are pointers",
2432 .opt = .@"ignored-attributes",
2433 .kind = .warning,
2434};
2435
2436pub const alloc_align_required_int_param: Diagnostic = .{
2437 .fmt = "'alloc_align' attribute argument may only refer to a function parameter of integer type",
2438 .kind = .@"error",
2439};
2440
24412248pub const gnu_missing_eq_designator: Diagnostic = .{
24422249 .fmt = "use of GNU 'missing =' extension in designator",
24432250 .kind = .warning,
......@@ -2471,12 +2278,7 @@ pub const duplicate_nullability: Diagnostic = .{
24712278};
24722279
24732280pub const conflicting_nullability: Diagnostic = .{
2474 .fmt = "nullaibility specifier '{tok_id}' conflicts with existing specifier '{tok_id}'",
2475 .kind = .@"error",
2476};
2477
2478pub const invalid_nullability: Diagnostic = .{
2479 .fmt = "nullability specifier cannot be applied to non-pointer type {qt}",
2281 .fmt = "nullability specifier '{tok_id}' conflicts with existing specifier '{tok_id}'",
24802282 .kind = .@"error",
24812283};
24822284
......@@ -2490,6 +2292,11 @@ pub const non_object_not_assignable: Diagnostic = .{
24902292 .kind = .@"error",
24912293};
24922294
2295pub const incomplete_type_not_assignable: Diagnostic = .{
2296 .fmt = "incomplete type {qt} is not assignable",
2297 .kind = .@"error",
2298};
2299
24932300pub const const_var_assignment: Diagnostic = .{
24942301 .fmt = "cannot assign to variable '{s}' with const-qualified type {qt}",
24952302 .kind = .@"error",
......@@ -2515,11 +2322,6 @@ pub const invalid_attribute_location: Diagnostic = .{
25152322 .kind = .@"error",
25162323};
25172324
2518pub const attribute_requires_pointer: Diagnostic = .{
2519 .fmt = "'{s}' attribute only applies to pointer arguments",
2520 .kind = .@"error",
2521};
2522
25232325pub const single_requires_zero_index: Diagnostic = .{
25242326 .fmt = "array subscript on single pointer must use a constant index of 0 to be in bounds",
25252327 .kind = .@"error",
......@@ -2530,13 +2332,47 @@ pub const pointer_arith_single: Diagnostic = .{
25302332 .kind = .@"error",
25312333};
25322334
2533pub const redundant_bounds_annotation: Diagnostic = .{
2534 .fmt = "pointer annotated with {s} multiple times. Annotate only once to remove this warning",
2535 .kind = .warning,
2536 .opt = .@"bounds-attributes-redundant",
2335pub const blocks_not_enabled: Diagnostic = .{
2336 .fmt = "blocks are not enabled",
2337 .kind = .@"error",
2338};
2339
2340pub const blocks_are_clang_extension: Diagnostic = .{
2341 .fmt = "blocks are a Clang extension",
2342 .opt = .@"blocks-extension",
2343 .kind = .off,
2344 .extension = true,
2345};
2346
2347pub const block_to_non_function: Diagnostic = .{
2348 .fmt = "block pointer to non-function type is invalid",
2349 .kind = .@"error",
2350};
2351
2352pub const c23_attribute: Diagnostic = .{
2353 .fmt = "[[]] attributes are a C23 extension",
2354 .opt = .@"c23-extensions",
2355 .kind = .off,
2356 .suppress_version = .c23,
2357 .extension = true,
2358};
2359
2360pub const builtin_arm_ldrex_strex_invalid_ptr_type: Diagnostic = .{
2361 .fmt = "address argument to {s} must be a pointer to integer, floating-point, or pointer ({qt} invalid)",
2362 .kind = .@"error",
2363};
2364
2365pub const builtin_arm_ldrex_strex_unsupported: Diagnostic = .{
2366 .fmt = "{s} is not supported on this architecture",
2367 .kind = .@"error",
2368};
2369
2370pub const builtin_arm_ldrex_strex_unsupported_size: Diagnostic = .{
2371 .fmt = "address argument to {s} must be a pointer to {s} byte type ({qt} invalid)",
2372 .kind = .@"error",
25372373};
25382374
2539pub const multiple_bounds_annotations: Diagnostic = .{
2540 .fmt = "pointer cannot have more than one bound attribute",
2375pub const typename_invalid_specifier: Diagnostic = .{
2376 .fmt = "type name does not allow {s} specifier to be specified",
25412377 .kind = .@"error",
25422378};
lib/compiler/aro/aro/Pragma.zig+7
......@@ -4,10 +4,13 @@ const Compilation = @import("Compilation.zig");
44const Diagnostics = @import("Diagnostics.zig");
55const Parser = @import("Parser.zig");
66const Preprocessor = @import("Preprocessor.zig");
7const Source = @import("Source.zig");
78const TokenIndex = @import("Tree.zig").TokenIndex;
89
910pub const Error = Compilation.Error || error{ UnknownPragma, StopPreprocessing };
1011
12pub const BeforeIncludeError = Compilation.Error || error{SkipInclude};
13
1114const Pragma = @This();
1215
1316/// A do-nothing pragma; useful for unwrapping an optional pragma into a pragma that does nothing in the null case.
......@@ -29,6 +32,10 @@ afterParse: ?*const fn (*Pragma, *Compilation) void = null,
2932/// Called during Compilation.deinit
3033deinit: *const fn (*Pragma, *Compilation) void,
3134
35/// Called during Preprocessor.include. Return SkipInclude to skip the include
36/// altogether (see once.zig).
37beforeInclude: ?*const fn (*Pragma, *Preprocessor, Source) BeforeIncludeError!void = null,
38
3239/// Called whenever the preprocessor encounters this pragma. `start_idx` is the index
3340/// within `pp.tokens` of the pragma name token. The pragma end is indicated by a
3441/// .nl token (which may be generated if the source ends with a pragma with no newline)
lib/compiler/aro/aro/Preprocessor.zig+476-465
......@@ -12,18 +12,18 @@ const Diagnostics = @import("Diagnostics.zig");
1212const DepFile = @import("DepFile.zig");
1313const features = @import("features.zig");
1414const Hideset = @import("Hideset.zig");
15const Parser = @import("Parser.zig");
15const Parser = @import("Preprocessor/Parser.zig");
1616const Pragma = @import("Pragma.zig");
1717const Source = @import("Source.zig");
18const text_literal = @import("text_literal.zig");
1918const Tokenizer = @import("Tokenizer.zig");
19const text_literal = Tokenizer.text_literal;
2020const RawToken = Tokenizer.Token;
2121const SourceEpoch = Compilation.Environment.SourceEpoch;
2222const Tree = @import("Tree.zig");
2323const Token = Tree.Token;
2424const TokenWithExpansionLocs = Tree.TokenWithExpansionLocs;
2525
26const DefineMap = std.array_hash_map.String(Macro);
26const DefineMap = std.StringArrayHashMapUnmanaged(Macro);
2727const RawTokenList = std.ArrayList(RawToken);
2828const max_include_depth = 200;
2929
......@@ -41,15 +41,15 @@ const IfContext = struct {
4141 };
4242
4343 const buf_size_bits = @bitSizeOf(Backing) * 256;
44 kind: [buf_size_bits / std.mem.byte_size_in_bits]u8,
44 kind: [buf_size_bits / mem.byte_size_in_bits]u8,
4545 level: u8,
4646
4747 fn get(self: *const IfContext) Nesting {
48 return @fromBackingInt(@intCast(std.mem.readPackedInt(Backing, &self.kind, @as(usize, self.level) * 2, .native)));
48 return @fromBackingInt(mem.readPackedInt(Backing, &self.kind, @as(usize, self.level) * 2, .native));
4949 }
5050
5151 fn set(self: *IfContext, context: Nesting) void {
52 std.mem.writePackedInt(Backing, &self.kind, @as(usize, self.level) * 2, @backingInt(context), .native);
52 mem.writePackedInt(Backing, &self.kind, @as(usize, self.level) * 2, @backingInt(context), .native);
5353 }
5454
5555 fn increment(self: *IfContext) bool {
......@@ -284,7 +284,7 @@ path_replacements: []const struct { []const u8, []const u8 } = &.{},
284284/// File used for __BASE_FILE__ macro.
285285base_file: Source.Id,
286286
287pub const parse = Parser.parse;
287pub const parse = @import("Parser.zig").parse;
288288
289289pub const Linemarkers = enum {
290290 /// No linemarker tokens. Required setting if parser will run
......@@ -604,6 +604,9 @@ fn preprocessExtra(pp: *Preprocessor, source: Source) MacroError!TokenWithExpans
604604 const directive_loc: Source.Location = .{ .id = tok.source, .byte_offset = directive.start, .line = directive.line };
605605 switch (directive.id) {
606606 .keyword_error, .keyword_warning => {
607 if (directive.id == .keyword_warning and !pp.comp.langopts.standard.atLeast(.c23)) {
608 try pp.err(directive_loc, .warning_extension, .{});
609 }
607610 // #error tokens..
608611 pp.top_expansion_buf.items.len = 0;
609612 const char_top = pp.char_buf.items.len;
......@@ -704,6 +707,9 @@ fn preprocessExtra(pp: *Preprocessor, source: Source) MacroError!TokenWithExpans
704707 }
705708 },
706709 .keyword_elifdef => {
710 if (!pp.comp.langopts.standard.atLeast(.c23)) {
711 try pp.err(directive_loc, .c23_extension, .{"#elifdef"});
712 }
707713 if (if_context.level == 0) {
708714 try pp.err(directive, .elifdef_without_if, .{});
709715 _ = if_context.increment();
......@@ -744,6 +750,9 @@ fn preprocessExtra(pp: *Preprocessor, source: Source) MacroError!TokenWithExpans
744750 }
745751 },
746752 .keyword_elifndef => {
753 if (!pp.comp.langopts.standard.atLeast(.c23)) {
754 try pp.err(directive_loc, .c23_extension, .{"#elifndef"});
755 }
747756 if (if_context.level == 0) {
748757 try pp.err(directive, .elifndef_without_if, .{});
749758 _ = if_context.increment();
......@@ -829,6 +838,9 @@ fn preprocessExtra(pp: *Preprocessor, source: Source) MacroError!TokenWithExpans
829838 }
830839
831840 _ = pp.defines.orderedRemove(macro_name);
841 if (pp.verbose) {
842 pp.verboseLog(directive, "macro {s} undefined", .{macro_name});
843 }
832844 try pp.expectNl(&tokenizer);
833845 },
834846 .keyword_include => {
......@@ -845,11 +857,18 @@ fn preprocessExtra(pp: *Preprocessor, source: Source) MacroError!TokenWithExpans
845857 try pp.include(&tokenizer, .next);
846858 }
847859 },
848 .keyword_embed => try pp.embed(&tokenizer),
860 .keyword_embed => {
861 if (!pp.comp.langopts.standard.atLeast(.c23)) {
862 try pp.err(directive_loc, .c23_extension, .{"#embed"});
863 }
864 try pp.embed(&tokenizer);
865 },
849866 .keyword_pragma => {
850867 var expand_buf: ExpandBuf = .empty;
851868 defer expand_buf.deinit(pp.comp.gpa);
852 try pp.pragma(&tokenizer, directive, &expand_buf);
869 var expanded_tok = tokFromRaw(directive);
870 expanded_tok.flags.pragma_directive = true;
871 try pp.pragma(&tokenizer, expanded_tok, &expand_buf);
853872
854873 try pp.addTokensFromExpandBuf(expand_buf.items, .{ .id = .nl, .loc = .{
855874 .id = tokenizer.source,
......@@ -1017,7 +1036,7 @@ fn tokFromRaw(raw: RawToken) TokenWithExpansionLocs {
10171036
10181037pub const Diagnostic = @import("Preprocessor/Diagnostic.zig");
10191038
1020fn err(pp: *Preprocessor, loc: anytype, diagnostic: Diagnostic, args: anytype) Compilation.Error!void {
1039pub fn err(pp: *const Preprocessor, loc: anytype, diagnostic: Diagnostic, args: anytype) Compilation.Error!void {
10211040 if (pp.diagnostics.effectiveKind(diagnostic) == .off) return;
10221041 const old_suppress_system = pp.diagnostics.state.suppress_system_headers;
10231042 defer pp.diagnostics.state.suppress_system_headers = old_suppress_system;
......@@ -1148,11 +1167,7 @@ fn restoreTokenState(pp: *Preprocessor, state: TokenState) void {
11481167/// Consume all tokens until a newline and parse the result into a boolean.
11491168fn expr(pp: *Preprocessor, tokenizer: *Tokenizer) MacroError!bool {
11501169 const gpa = pp.comp.gpa;
1151 const token_state = pp.getTokenState();
1152 defer {
1153 for (pp.top_expansion_buf.items) |tok| TokenWithExpansionLocs.free(tok.expansion_locs, gpa);
1154 pp.restoreTokenState(token_state);
1155 }
1170 defer for (pp.top_expansion_buf.items) |tok| TokenWithExpansionLocs.free(tok.expansion_locs, gpa);
11561171
11571172 pp.top_expansion_buf.items.len = 0;
11581173 const eof = while (true) {
......@@ -1160,158 +1175,36 @@ fn expr(pp: *Preprocessor, tokenizer: *Tokenizer) MacroError!bool {
11601175 switch (tok.id) {
11611176 .nl, .eof => break tok,
11621177 .whitespace => if (pp.top_expansion_buf.items.len == 0) continue,
1163 else => {},
1164 }
1165 try pp.top_expansion_buf.append(gpa, tokFromRaw(tok));
1166 } else unreachable;
1167 if (pp.top_expansion_buf.items.len != 0) {
1168 pp.expansion_source_loc = pp.top_expansion_buf.items[0].loc;
1169 pp.hideset.clearRetainingCapacity();
1170 try pp.expandMacroExhaustive(tokenizer, &pp.top_expansion_buf, 0, pp.top_expansion_buf.items.len, false, .expr);
1171 }
1172 for (pp.top_expansion_buf.items) |tok| {
1173 if (tok.id == .macro_ws) continue;
1174 if (!tok.id.validPreprocessorExprStart()) {
1175 try pp.err(tok, .invalid_preproc_expr_start, .{});
1176 return false;
1177 }
1178 break;
1179 } else {
1180 try pp.err(eof, .expected_value_in_expr, .{});
1181 return false;
1182 }
1183
1184 // validate the tokens in the expression
1185 try pp.ensureUnusedTokenCapacity(pp.top_expansion_buf.items.len);
1186 var i: usize = 0;
1187 const items = pp.top_expansion_buf.items;
1188 while (i < items.len) : (i += 1) {
1189 var tok = items[i];
1190 switch (tok.id) {
1191 .string_literal,
1192 .string_literal_utf_16,
1193 .string_literal_utf_8,
1194 .string_literal_utf_32,
1195 .string_literal_wide,
1196 => {
1197 try pp.err(tok, .string_literal_in_pp_expr, .{});
1198 return false;
1178 .comment => continue,
1179 .unterminated_string_literal, .unterminated_char_literal, .empty_char_literal => |tag| {
1180 try pp.err(tok, invalidTokenDiagnostic(tag), .{});
11991181 },
1200 .plus_plus,
1201 .minus_minus,
1202 .plus_equal,
1203 .minus_equal,
1204 .asterisk_equal,
1205 .slash_equal,
1206 .percent_equal,
1207 .angle_bracket_angle_bracket_left_equal,
1208 .angle_bracket_angle_bracket_right_equal,
1209 .ampersand_equal,
1210 .caret_equal,
1211 .pipe_equal,
1212 .l_bracket,
1213 .r_bracket,
1214 .l_brace,
1215 .r_brace,
1216 .ellipsis,
1217 .semicolon,
1218 .hash,
1219 .hash_hash,
1220 .equal,
1221 .arrow,
1222 .period,
1223 => {
1224 try pp.err(tok, .invalid_preproc_operator, .{});
1225 return false;
1182 .unterminated_comment => {
1183 try pp.err(tok, .unterminated_comment, .{});
1184 continue;
12261185 },
1227 .macro_ws, .whitespace => continue,
1228 .keyword_false => tok.id = .zero,
1229 .keyword_true => tok.id = .one,
1230 else => if (tok.id.isMacroIdentifier()) {
1231 if (tok.id == .keyword_defined) {
1232 const tokens_consumed = try pp.handleKeywordDefined(&tok, items[i + 1 ..], eof);
1233 i += tokens_consumed;
1234 } else {
1235 try pp.err(tok, .undefined_macro, .{pp.expandedSlice(tok)});
1236
1237 if (i + 1 < pp.top_expansion_buf.items.len and
1238 pp.top_expansion_buf.items[i + 1].id == .l_paren)
1239 {
1240 try pp.err(tok, .fn_macro_undefined, .{pp.expandedSlice(tok)});
1241 return false;
1242 }
1243
1244 tok.id = .zero; // undefined macro
1186 else => {
1187 if (tok.id.isMacroIdentifier() and pp.poisoned_identifiers.get(pp.tokSlice(tok)) != null) {
1188 try pp.err(tok, .poisoned_identifier, .{});
12451189 }
12461190 },
12471191 }
1248 pp.addTokenAssumeCapacity(try pp.unescapeUcn(tok));
1192 try pp.top_expansion_buf.append(gpa, tokFromRaw(tok));
1193 };
1194 if (pp.top_expansion_buf.items.len != 0) {
1195 pp.expansion_source_loc = pp.top_expansion_buf.items[0].loc;
1196 pp.hideset.clearRetainingCapacity();
1197 try pp.expandMacroExhaustive(null, &pp.top_expansion_buf, 0, pp.top_expansion_buf.items.len, .expr);
1198 removePlacemarkers(gpa, &pp.top_expansion_buf);
12491199 }
1250 try pp.addToken(.{
1251 .id = .eof,
1252 .loc = tokFromRaw(eof).loc,
1253 });
12541200
1255 // Actually parse it.
12561201 var parser: Parser = .{
12571202 .pp = pp,
1258 .comp = pp.comp,
1259 .diagnostics = pp.diagnostics,
1260 .tok_ids = pp.tokens.items(.id),
1261 .tok_i = @intCast(token_state.tokens_len),
1262 .in_macro = true,
1263
1264 .tree = undefined,
1265 .labels = undefined,
1266 .decl_buf = undefined,
1267 .list_buf = undefined,
1268 .param_buf = undefined,
1269 .enum_buf = undefined,
1270 .record_buf = undefined,
1271 .attr_buf = undefined,
1272 .string_ids = undefined,
1203 .tokens = pp.top_expansion_buf.items,
1204 .eof = tokFromRaw(eof),
12731205 };
1274 defer parser.strings.deinit(gpa);
1275 return parser.macroExpr();
1276}
1277
1278/// Turns macro_tok from .keyword_defined into .zero or .one depending on whether the argument is defined
1279/// Returns the number of tokens consumed
1280fn handleKeywordDefined(pp: *Preprocessor, macro_tok: *TokenWithExpansionLocs, tokens: []const TokenWithExpansionLocs, eof: RawToken) !usize {
1281 std.debug.assert(macro_tok.id == .keyword_defined);
1282 var it = TokenIterator.init(tokens);
1283 const first = it.nextNoWS() orelse {
1284 try pp.err(eof, .macro_name_missing, .{});
1285 return it.i;
1286 };
1287 switch (first.id) {
1288 .l_paren => {},
1289 else => {
1290 if (!first.id.isMacroIdentifier()) {
1291 try pp.err(first, .macro_name_must_be_identifier, .{});
1292 }
1293 macro_tok.id = if (pp.defines.contains(pp.expandedSlice(first))) .one else .zero;
1294 return it.i;
1295 },
1296 }
1297 const second = it.nextNoWS() orelse {
1298 try pp.err(eof, .macro_name_missing, .{});
1299 return it.i;
1300 };
1301 if (!second.id.isMacroIdentifier()) {
1302 try pp.err(second, .macro_name_must_be_identifier, .{});
1303 return it.i;
1304 }
1305 macro_tok.id = if (pp.defines.contains(pp.expandedSlice(second))) .one else .zero;
1306
1307 const last = it.nextNoWS();
1308 if (last == null or last.?.id != .r_paren) {
1309 const tok = last orelse tokFromRaw(eof);
1310 try pp.err(tok, .closing_paren, .{});
1311 try pp.err(first, .to_match_paren, .{});
1312 }
1313
1314 return it.i;
1206 const val = try parser.parse() orelse return false;
1207 return val.toBool();
13151208}
13161209
13171210/// Skip until #else #elif #endif, return last directive token id.
......@@ -1351,6 +1244,9 @@ fn skip(
13511244 return;
13521245 },
13531246 .keyword_elifdef => {
1247 if (!pp.comp.langopts.standard.atLeast(.c23)) {
1248 try pp.err(directive, .c23_extension, .{"#elifdef"});
1249 }
13541250 if (ifs_seen != 0 or cont == .until_endif) continue;
13551251 if (cont == .until_endif_seen_else) {
13561252 try pp.err(directive, .elifdef_after_else, .{});
......@@ -1360,6 +1256,9 @@ fn skip(
13601256 return;
13611257 },
13621258 .keyword_elifndef => {
1259 if (!pp.comp.langopts.standard.atLeast(.c23)) {
1260 try pp.err(directive, .c23_extension, .{"#elifdef"});
1261 }
13631262 if (ifs_seen != 0 or cont == .until_endif) continue;
13641263 if (cont == .until_endif_seen_else) {
13651264 try pp.err(directive, .elifndef_after_else, .{});
......@@ -1376,6 +1275,9 @@ fn skip(
13761275 ifs_seen -= 1;
13771276 },
13781277 .keyword_if, .keyword_ifdef, .keyword_ifndef => ifs_seen += 1,
1278 .nl => {
1279 line_start = true;
1280 },
13791281 else => {},
13801282 }
13811283 } else if (tokenizer.buf[tokenizer.index] == '\n') {
......@@ -1392,9 +1294,6 @@ fn skip(
13921294 line_start = false;
13931295 tokenizer.index += 1;
13941296 }
1395 } else {
1396 const eof = tokenizer.next();
1397 return pp.err(eof, .unterminated_conditional_directive, .{});
13981297 }
13991298}
14001299
......@@ -1633,16 +1532,18 @@ fn pragmaOperator(pp: *Preprocessor, arg_tok: TokenWithExpansionLocs, buf: *Expa
16331532 const gpa = pp.comp.gpa;
16341533
16351534 pp.char_buf.clearRetainingCapacity();
1636 const total_len = directive.len + content.len + 1; // destringify can never grow the string, + 1 for newline
1535 const total_len = directive.len + content.len + 2; // destringify can never grow the string, +2 for newline and null terminator
16371536 try pp.char_buf.ensureUnusedCapacity(gpa, total_len);
16381537 pp.char_buf.appendSliceAssumeCapacity(directive);
16391538 pp.destringify(content);
1640 pp.char_buf.appendAssumeCapacity('\n');
1539 pp.char_buf.appendSliceAssumeCapacity("\n\x00");
16411540
16421541 const start = pp.comp.generated_buf.items.len;
16431542 try pp.comp.generated_buf.appendSlice(gpa, pp.char_buf.items);
1543 defer pp.comp.generated_buf.items.len -= 1; // remove redundant null terminator
1544
16441545 var tmp_tokenizer: Tokenizer = .{
1645 .buf = pp.comp.generated_buf.items,
1546 .buf = pp.comp.generated_buf.items[0 .. pp.comp.generated_buf.items.len - 1 :0],
16461547 .langopts = pp.comp.langopts,
16471548 .index = @intCast(start),
16481549 .source = .generated,
......@@ -1654,7 +1555,9 @@ fn pragmaOperator(pp: *Preprocessor, arg_tok: TokenWithExpansionLocs, buf: *Expa
16541555 assert(hash_tok.id == .hash);
16551556 const pragma_tok = tmp_tokenizer.next();
16561557 assert(pragma_tok.id == .keyword_pragma);
1657 try pp.pragma(&tmp_tokenizer, pragma_tok, buf);
1558 var expanded_pragma_tok = tokFromRaw(pragma_tok);
1559 expanded_pragma_tok.flags.pragma_directive = true;
1560 try pp.pragma(&tmp_tokenizer, expanded_pragma_tok, buf);
16581561}
16591562
16601563/// Handle Microsoft __pragma operator
......@@ -1758,9 +1661,9 @@ fn stringify(pp: *Preprocessor, tokens: []const TokenWithExpansionLocs) !void {
17581661 pp.char_buf.appendSliceAssumeCapacity("\"\n");
17591662 return;
17601663 }
1761 pp.char_buf.appendAssumeCapacity('"');
1664 pp.char_buf.appendSliceAssumeCapacity("\"\x00");
17621665 var tokenizer: Tokenizer = .{
1763 .buf = pp.char_buf.items,
1666 .buf = pp.char_buf.items[0 .. pp.char_buf.items.len - 1 :0],
17641667 .index = 0,
17651668 .source = .generated,
17661669 .langopts = pp.comp.langopts,
......@@ -1771,7 +1674,7 @@ fn stringify(pp: *Preprocessor, tokens: []const TokenWithExpansionLocs) !void {
17711674 if (item.id == .unterminated_string_literal) {
17721675 const tok = tokens[tokens.len - 1];
17731676 try pp.err(tok, .invalid_pp_stringify_escape, .{});
1774 pp.char_buf.items.len -= 2; // erase unpaired backslash and appended end quote
1677 pp.char_buf.items.len -= 3; // erase unpaired backslash and appended end quote
17751678 pp.char_buf.appendAssumeCapacity('"');
17761679 }
17771680 pp.char_buf.appendAssumeCapacity('\n');
......@@ -1828,8 +1731,9 @@ fn reconstructIncludeString(pp: *Preprocessor, param_toks: []const TokenWithExpa
18281731 '<' => {
18291732 if (include_str[include_str.len - 1] != '>') {
18301733 // Ugly hack to find out where the '>' should go, since we don't have the closing ')' location
1831 var closing = params[0];
1832 closing.loc.byte_offset += @as(u32, @intCast(include_str.len)) + 1;
1734 var closing = first;
1735 const buf = pp.comp.getSource(closing.loc.id).buf;
1736 closing.loc.byte_offset = @intCast(mem.findScalarPos(u8, buf, closing.loc.byte_offset, '\n') orelse buf.len);
18331737 try pp.err(closing, .header_str_closing, .{});
18341738
18351739 try pp.err(params[0], .header_str_match, .{});
......@@ -1845,7 +1749,13 @@ fn reconstructIncludeString(pp: *Preprocessor, param_toks: []const TokenWithExpa
18451749 }
18461750}
18471751
1848fn handleBuiltinMacro(pp: *Preprocessor, builtin: Macro.Builtin.Func, param_toks: []const TokenWithExpansionLocs, src_loc: Source.Location) Error!bool {
1752fn handleBuiltinMacro(
1753 pp: *Preprocessor,
1754 builtin: Macro.Builtin.Func,
1755 param_toks: []const TokenWithExpansionLocs,
1756 src_loc: Source.Location,
1757 eval_ctx: EvalContext,
1758) Error!bool {
18491759 switch (builtin) {
18501760 .has_attribute,
18511761 .has_declspec_attribute,
......@@ -1878,19 +1788,15 @@ fn handleBuiltinMacro(pp: *Preprocessor, builtin: Macro.Builtin.Func, param_toks
18781788
18791789 const ident_str = pp.expandedSlice(identifier.?);
18801790 return switch (builtin) {
1881 .has_attribute => Attribute.fromString(.gnu, null, ident_str) != null,
1791 .has_attribute => Attribute.Namespaced.fromString(.gnu, null, ident_str) != null,
18821792 .has_declspec_attribute => {
18831793 return if (pp.comp.langopts.declspec_attrs)
1884 Attribute.fromString(.declspec, null, ident_str) != null
1794 Attribute.Namespaced.fromString(.declspec, null, ident_str) != null
18851795 else
18861796 false;
18871797 },
18881798 .has_feature => features.hasFeature(pp.comp, ident_str),
1889 // If -pedantic-errors is given __has_extension is equivalent to __has_feature
1890 .has_extension => if (pp.comp.diagnostics.state.extensions == .@"error")
1891 features.hasFeature(pp.comp, ident_str)
1892 else
1893 features.hasExtension(pp.comp, ident_str),
1799 .has_extension => features.hasExtension(pp.comp, ident_str),
18941800
18951801 .has_builtin => Builtins.fromName(pp.comp, ident_str) != null or
18961802 ((pp.comp.langopts.emulate == .no or pp.comp.langopts.emulate == .clang) and
......@@ -1940,6 +1846,10 @@ fn handleBuiltinMacro(pp: *Preprocessor, builtin: Macro.Builtin.Func, param_toks
19401846 return id == .identifier or id == .extended_identifier;
19411847 },
19421848 .has_include, .has_include_next => {
1849 if (eval_ctx != .expr) {
1850 try pp.err(src_loc, .preprocessing_directive_only, .{@tagName(builtin)});
1851 }
1852
19431853 const include_str = (try pp.reconstructIncludeString(param_toks, null, param_toks[0])) orelse return false;
19441854 const include_type: Compilation.IncludeType = switch (include_str[0]) {
19451855 '"' => .quotes,
......@@ -1976,11 +1886,10 @@ fn expandFuncMacro(
19761886 func_macro: *const Macro,
19771887 args: *const MacroArguments,
19781888 expanded_args: *const MacroArguments,
1979 hideset_arg: Hideset.Index,
1889 hideset: Hideset.Index,
19801890 eval_ctx: EvalContext,
19811891) MacroError!ExpandBuf {
19821892 const gpa = pp.comp.gpa;
1983 var hideset = hideset_arg;
19841893 var buf: ExpandBuf = .empty;
19851894 errdefer buf.deinit(gpa);
19861895 try buf.ensureTotalCapacity(gpa, func_macro.tokens.len);
......@@ -2038,17 +1947,11 @@ fn expandFuncMacro(
20381947 if (next.len != 0) break;
20391948 },
20401949 .macro_param_no_expand => {
2041 if (tok_i + 1 < func_macro.tokens.len and func_macro.tokens[tok_i + 1].id == .hash_hash) {
2042 hideset = .none;
2043 }
20441950 const slice = getPasteArgs(args.items[raw.end]);
20451951 const raw_loc = Source.Location{ .id = raw.source, .byte_offset = raw.start, .line = raw.line };
20461952 try bufCopyTokens(gpa, &buf, slice, &.{raw_loc});
20471953 },
20481954 .macro_param => {
2049 if (tok_i + 1 < func_macro.tokens.len and func_macro.tokens[tok_i + 1].id == .hash_hash) {
2050 hideset = .none;
2051 }
20521955 const arg = expanded_args.items[raw.end];
20531956 const raw_loc = Source.Location{ .id = raw.source, .byte_offset = raw.start, .line = raw.line };
20541957 try bufCopyTokens(gpa, &buf, arg, &.{raw_loc});
......@@ -2095,7 +1998,7 @@ fn expandFuncMacro(
20951998 const result = if (arg.len == 0) blk: {
20961999 try pp.err(macro_tok, .expected_arguments, .{ 1, 0 });
20972000 break :blk false;
2098 } else try pp.handleBuiltinMacro(kind, arg, macro_tok.loc);
2001 } else try pp.handleBuiltinMacro(kind, arg, macro_tok.loc, eval_ctx);
20992002 const start = pp.comp.generated_buf.items.len;
21002003
21012004 try pp.comp.generated_buf.print(gpa, "{}\n", .{@intFromBool(result)});
......@@ -2147,14 +2050,13 @@ fn expandFuncMacro(
21472050 if (vendor_ident) |some| {
21482051 const vendor_str = pp.expandedSlice(some);
21492052 const attr_str = pp.expandedSlice(attr_ident.?);
2150 const exists = Attribute.fromString(.gnu, vendor_str, attr_str) != null;
2053 const exists = Attribute.Namespaced.fromString(.standard, vendor_str, attr_str) != null;
21512054
21522055 const start = pp.comp.generated_buf.items.len;
21532056 try pp.comp.generated_buf.appendSlice(gpa, if (exists) "1\n" else "0\n");
21542057 try buf.append(gpa, try pp.makeGeneratedToken(start, .pp_num, tokFromRaw(raw)));
21552058 continue;
21562059 }
2157 if (!pp.comp.langopts.standard.atLeast(.c23)) break :res not_found;
21582060
21592061 const attrs = std.StaticStringMap([]const u8).initComptime(.{
21602062 .{ "deprecated", "201904L\n" },
......@@ -2176,6 +2078,10 @@ fn expandFuncMacro(
21762078 },
21772079
21782080 .has_embed => {
2081 if (eval_ctx != .expr) {
2082 try pp.err(macro_tok, .preprocessing_directive_only, .{"has_embed"});
2083 }
2084
21792085 const arg = expanded_args.items[0];
21802086 const not_found = "0\n";
21812087 const result = if (arg.len == 0) blk: {
......@@ -2188,87 +2094,12 @@ fn expandFuncMacro(
21882094
21892095 var prev = tokFromRaw(raw);
21902096 prev.id = .eof;
2191 var it: struct {
2192 i: u32 = 0,
2193 slice: []const TokenWithExpansionLocs,
2194 prev: TokenWithExpansionLocs,
2195 fn next(it: *@This()) TokenWithExpansionLocs {
2196 while (it.i < it.slice.len) switch (it.slice[it.i].id) {
2197 .macro_ws, .whitespace => it.i += 1,
2198 else => break,
2199 } else return it.prev;
2200 defer it.i += 1;
2201 it.prev = it.slice[it.i];
2202 it.prev.id = .eof;
2203 return it.slice[it.i];
2204 }
2205 } = .{ .slice = embed_args, .prev = prev };
2206
2207 while (true) {
2208 const param_first = it.next();
2209 if (param_first.id == .eof) break;
2210 if (param_first.id != .identifier) {
2211 try pp.err(param_first, .malformed_embed_param, .{});
2212 continue;
2213 }
2097 var it: EmbedArgIterator = .{ .toks = embed_args, .eof = prev, .pp = pp };
22142098
2215 const char_top = pp.char_buf.items.len;
2216 defer pp.char_buf.items.len = char_top;
2217
2218 const maybe_colon = it.next();
2219 const param = switch (maybe_colon.id) {
2220 .colon_colon => blk: {
2221 // vendor::param
2222 const param = it.next();
2223 if (param.id != .identifier) {
2224 try pp.err(param, .malformed_embed_param, .{});
2225 continue;
2226 }
2227 const l_paren = it.next();
2228 if (l_paren.id != .l_paren) {
2229 try pp.err(l_paren, .malformed_embed_param, .{});
2230 continue;
2231 }
2232 break :blk "doesn't exist";
2233 },
2234 .l_paren => Attribute.normalize(pp.expandedSlice(param_first)),
2235 else => {
2236 try pp.err(maybe_colon, .malformed_embed_param, .{});
2237 continue;
2238 },
2239 };
2240
2241 var arg_count: u32 = 0;
2242 var first_arg: TokenWithExpansionLocs = undefined;
2243 while (true) {
2244 const next = it.next();
2245 if (next.id == .eof) {
2246 try pp.err(param_first, .malformed_embed_limit, .{});
2247 break;
2248 }
2249 if (next.id == .r_paren) break;
2250 arg_count += 1;
2251 if (arg_count == 1) first_arg = next;
2252 }
2253
2254 if (std.mem.eql(u8, param, "limit")) {
2255 if (arg_count != 1) {
2256 try pp.err(param_first, .malformed_embed_limit, .{});
2257 continue;
2258 }
2259 if (first_arg.id != .pp_num) {
2260 try pp.err(param_first, .malformed_embed_limit, .{});
2261 continue;
2262 }
2263 _ = std.fmt.parseInt(u32, pp.expandedSlice(first_arg), 10) catch {
2264 break :res not_found;
2265 };
2266 } else if (!std.mem.eql(u8, param, "prefix") and !std.mem.eql(u8, param, "suffix") and
2267 !std.mem.eql(u8, param, "if_empty"))
2268 {
2269 break :res not_found;
2270 }
2271 }
2099 while (try it.param()) |param| switch (param) {
2100 .unknown, .invalid => break :res not_found,
2101 else => {},
2102 };
22722103
22732104 const include_type: Compilation.IncludeType = switch (include_str[0]) {
22742105 '"' => .quotes,
......@@ -2441,21 +2272,29 @@ fn bufCopyTokens(gpa: Allocator, buf: *ExpandBuf, tokens: []const TokenWithExpan
24412272
24422273fn nextBufToken(
24432274 pp: *Preprocessor,
2444 tokenizer: *Tokenizer,
2275 /// If non-null will be used to expand `buf` as needed.
2276 opt_tokenizer: ?*Tokenizer,
24452277 buf: *ExpandBuf,
24462278 start_idx: *usize,
24472279 end_idx: *usize,
2448 extend_buf: bool,
24492280) Error!TokenWithExpansionLocs {
24502281 start_idx.* += 1;
24512282 if (start_idx.* == buf.items.len and start_idx.* >= end_idx.*) {
2452 if (extend_buf) {
2283 if (opt_tokenizer) |tokenizer| {
24532284 const raw_tok = tokenizer.next();
2454 if (raw_tok.id.isMacroIdentifier() and
2455 pp.poisoned_identifiers.get(pp.tokSlice(raw_tok)) != null)
2456 try pp.err(raw_tok, .poisoned_identifier, .{});
2457
2458 if (raw_tok.id == .nl) pp.add_expansion_nl += 1;
2285 // FIXME these tokens may be retokenized and the diagnostics duplicated
2286 switch (raw_tok.id) {
2287 .nl => pp.add_expansion_nl += 1,
2288 .unterminated_string_literal, .unterminated_char_literal, .empty_char_literal => |tag| {
2289 try pp.err(raw_tok, invalidTokenDiagnostic(tag), .{});
2290 },
2291 .unterminated_comment => try pp.err(raw_tok, .unterminated_comment, .{}),
2292 else => {
2293 if (raw_tok.id.isMacroIdentifier() and pp.poisoned_identifiers.get(pp.tokSlice(raw_tok)) != null) {
2294 try pp.err(raw_tok, .poisoned_identifier, .{});
2295 }
2296 },
2297 }
24592298
24602299 const new_tok = tokFromRaw(raw_tok);
24612300 end_idx.* += 1;
......@@ -2471,21 +2310,21 @@ fn nextBufToken(
24712310
24722311fn collectMacroFuncArguments(
24732312 pp: *Preprocessor,
2474 tokenizer: *Tokenizer,
2313 /// If non-null will be used to expand `buf` as needed.
2314 opt_tokenizer: ?*Tokenizer,
24752315 buf: *ExpandBuf,
24762316 start_idx: *usize,
24772317 end_idx: *usize,
2478 extend_buf: bool,
24792318 is_builtin: bool,
24802319 r_paren: *TokenWithExpansionLocs,
24812320) !MacroArguments {
24822321 const gpa = pp.comp.gpa;
24832322 const name_tok = buf.items[start_idx.*];
2484 const saved_tokenizer = tokenizer.*;
2323 const saved_tokenizer = if (opt_tokenizer) |tokenizer| tokenizer.* else undefined;
24852324 const old_end = end_idx.*;
24862325
24872326 while (true) {
2488 const tok = try nextBufToken(pp, tokenizer, buf, start_idx, end_idx, extend_buf);
2327 const tok = try nextBufToken(pp, opt_tokenizer, buf, start_idx, end_idx);
24892328 switch (tok.id) {
24902329 .nl, .whitespace, .macro_ws => {},
24912330 .l_paren => break,
......@@ -2494,7 +2333,7 @@ fn collectMacroFuncArguments(
24942333 try pp.err(name_tok, .missing_lparen_after_builtin, .{pp.expandedSlice(name_tok)});
24952334 }
24962335 // Not a macro function call, go over normal identifier, rewind
2497 tokenizer.* = saved_tokenizer;
2336 if (opt_tokenizer) |tokenizer| tokenizer.* = saved_tokenizer;
24982337 end_idx.* = old_end;
24992338 return error.MissingLParen;
25002339 },
......@@ -2508,7 +2347,7 @@ fn collectMacroFuncArguments(
25082347 var cur_argument: std.ArrayList(TokenWithExpansionLocs) = .empty;
25092348 defer cur_argument.deinit(gpa);
25102349 while (true) {
2511 var tok = try nextBufToken(pp, tokenizer, buf, start_idx, end_idx, extend_buf);
2350 var tok = try nextBufToken(pp, opt_tokenizer, buf, start_idx, end_idx);
25122351 tok.flags.is_macro_arg = true;
25132352 switch (tok.id) {
25142353 .comma => {
......@@ -2548,7 +2387,7 @@ fn collectMacroFuncArguments(
25482387 errdefer gpa.free(owned);
25492388 try args.append(gpa, owned);
25502389 }
2551 tokenizer.* = saved_tokenizer;
2390 if (opt_tokenizer) |tokenizer| tokenizer.* = saved_tokenizer;
25522391 try pp.err(name_tok, .unterminated_macro_arg_list, .{});
25532392 return error.Unterminated;
25542393 },
......@@ -2608,11 +2447,11 @@ const TokenIterator = struct {
26082447
26092448fn expandMacroExhaustive(
26102449 pp: *Preprocessor,
2611 tokenizer: *Tokenizer,
2450 /// If non-null will be used to expand `buf` as needed.
2451 opt_tokenizer: ?*Tokenizer,
26122452 buf: *ExpandBuf,
26132453 start_idx: usize,
26142454 end_idx: usize,
2615 extend_buf: bool,
26162455 eval_ctx: EvalContext,
26172456) MacroError!void {
26182457 const gpa = pp.comp.gpa;
......@@ -2663,11 +2502,10 @@ fn expandMacroExhaustive(
26632502 var macro_scan_idx = idx;
26642503 // to be saved in case this doesn't turn out to be a call
26652504 var args = pp.collectMacroFuncArguments(
2666 tokenizer,
2505 opt_tokenizer,
26672506 buf,
26682507 &macro_scan_idx,
26692508 &moving_end_idx,
2670 extend_buf,
26712509 macro.isBuiltin(),
26722510 &r_paren,
26732511 ) catch |er| switch (er) {
......@@ -2692,8 +2530,11 @@ fn expandMacroExhaustive(
26922530 args.deinit(gpa);
26932531 }
26942532 const r_paren_hidelist = pp.hideset.get(r_paren.loc);
2695 var hs = try pp.hideset.intersection(macro_hidelist, r_paren_hidelist);
2696 hs = try pp.hideset.prepend(macro_tok.loc, hs);
2533 var hs: Hideset.Index = if (macro_tok.flags.is_macro_arg)
2534 .none
2535 else
2536 try pp.hideset.intersection(macro_hidelist, r_paren_hidelist);
2537 hs = try pp.hideset.prepend(macro_tok.loc, @intCast(expanded.len), hs);
26972538
26982539 var args_count: u32 = @intCast(args.items.len);
26992540 // if the macro has zero arguments g() args_count is still 1
......@@ -2733,7 +2574,7 @@ fn expandMacroExhaustive(
27332574 }
27342575
27352576 if (should_expand_args) {
2736 try pp.expandMacroExhaustive(tokenizer, &expand_buf, 0, expand_buf.items.len, false, eval_ctx);
2577 try pp.expandMacroExhaustive(null, &expand_buf, 0, expand_buf.items.len, eval_ctx);
27372578 }
27382579 // Even if not expanding the arguments, still append to expanded_args so expansion locations will
27392580 // get cleaned up.
......@@ -2757,7 +2598,7 @@ fn expandMacroExhaustive(
27572598 var res = try pp.expandObjMacro(macro);
27582599 defer res.deinit(gpa);
27592600
2760 const hs = try pp.hideset.prepend(macro_tok.loc, macro_hidelist);
2601 const hs = try pp.hideset.prepend(macro_tok.loc, @intCast(expanded.len), macro_hidelist);
27612602
27622603 const macro_expansion_locs = macro_tok.expansionSlice();
27632604 var increment_idx_by = res.items.len;
......@@ -2815,7 +2656,7 @@ fn unescapeUcn(pp: *Preprocessor, tok: TokenWithExpansionLocs) !TokenWithExpansi
28152656 @branchHint(.cold);
28162657 const identifier = pp.expandedSlice(tok);
28172658 const gpa = pp.comp.gpa;
2818 if (mem.indexOfScalar(u8, identifier, '\\') != null) {
2659 if (mem.findScalar(u8, identifier, '\\') != null) {
28192660 @branchHint(.cold);
28202661 const start = pp.comp.generated_buf.items.len;
28212662 try pp.comp.generated_buf.ensureUnusedCapacity(gpa, identifier.len + 1);
......@@ -2854,12 +2695,16 @@ fn unescapeUcn(pp: *Preprocessor, tok: TokenWithExpansionLocs) !TokenWithExpansi
28542695 return tok;
28552696}
28562697
2857fn addTokensFromExpandBuf(pp: *Preprocessor, tokens: []TokenWithExpansionLocs, tokenizer_nl: TokenWithExpansionLocs) !void {
2698const PragmaLoc = struct { name_tok: TokenWithExpansionLocs, start: Tree.TokenIndex };
2699
2700fn addTokensFromExpandBuf(pp: *Preprocessor, tokens: []const TokenWithExpansionLocs, tokenizer_nl: TokenWithExpansionLocs) !void {
28582701 const gpa = pp.comp.gpa;
2859 const has_pragma = tokens.len > 1 and tokens[0].id == .keyword_pragma;
2860 const start: Tree.TokenIndex = @intCast(pp.tokens.len);
2702 var pragma_locs: std.ArrayListUnmanaged(PragmaLoc) = .empty;
2703 defer pragma_locs.deinit(gpa);
2704
28612705 try pp.ensureUnusedTokenCapacity(tokens.len);
2862 for (tokens, 0..) |*tok, i| {
2706 for (tokens, 0..) |const_tok, i| {
2707 var tok = const_tok;
28632708 if (tok.id == .macro_ws and !pp.preserve_whitespace) {
28642709 TokenWithExpansionLocs.free(tok.expansion_locs, gpa);
28652710 continue;
......@@ -2872,11 +2717,14 @@ fn addTokensFromExpandBuf(pp: *Preprocessor, tokens: []TokenWithExpansionLocs, t
28722717 TokenWithExpansionLocs.free(tok.expansion_locs, gpa);
28732718 continue;
28742719 }
2875 const is_pragma = i == 0 and has_pragma;
2876 if (!is_pragma) {
2877 tok.id.simplifyMacroKeywordExtra(true);
2720 if (tok.flags.pragma_directive) {
2721 const pragma_start: Tree.TokenIndex = @intCast(pp.tokens.len);
2722 pp.addTokenAssumeCapacity(tok);
2723 try pragma_locs.append(gpa, .{ .name_tok = tokens[i + 1], .start = pragma_start });
2724 continue;
28782725 }
2879 pp.addTokenAssumeCapacity(try pp.unescapeUcn(tok.*));
2726 tok.id.simplifyMacroKeywordExtra(true);
2727 pp.addTokenAssumeCapacity(try pp.unescapeUcn(tok));
28802728 }
28812729 if (pp.preserve_whitespace) {
28822730 try pp.ensureUnusedTokenCapacity(pp.add_expansion_nl);
......@@ -2884,8 +2732,8 @@ fn addTokensFromExpandBuf(pp: *Preprocessor, tokens: []TokenWithExpansionLocs, t
28842732 pp.addTokenAssumeCapacity(tokenizer_nl);
28852733 }
28862734 }
2887 if (has_pragma) {
2888 try pp.evalPragma(tokens[1], start);
2735 for (pragma_locs.items) |p| {
2736 try pp.evalPragma(p.name_tok, p.start);
28892737 }
28902738}
28912739
......@@ -2903,7 +2751,7 @@ fn expandMacro(pp: *Preprocessor, tokenizer: *Tokenizer, raw: RawToken) MacroErr
29032751 pp.expansion_source_loc = source_tok.loc;
29042752
29052753 pp.hideset.clearRetainingCapacity();
2906 try pp.expandMacroExhaustive(tokenizer, &pp.top_expansion_buf, 0, 1, true, .non_expr);
2754 try pp.expandMacroExhaustive(tokenizer, &pp.top_expansion_buf, 0, 1, .non_expr);
29072755 try pp.addTokensFromExpandBuf(pp.top_expansion_buf.items, .{ .id = .nl, .loc = .{
29082756 .id = tokenizer.source,
29092757 .line = tokenizer.line,
......@@ -2949,6 +2797,20 @@ fn pasteTokens(pp: *Preprocessor, lhs_toks: *ExpandBuf, rhs_toks: []const TokenW
29492797 return bufCopyTokens(gpa, lhs_toks, rhs_toks, &.{});
29502798 };
29512799
2800 // preserved comments (via -CC) inhibit pasting
2801 if (lhs.id == .comment and lhs.flags.is_macro_arg) {
2802 if (lhs_toks.items.len != 0 and rhs_toks.len != 0) {
2803 switch (lhs_toks.items[lhs_toks.items.len - 1].id) {
2804 .macro_ws, .comment => {},
2805 else => switch (rhs_toks[0].id) {
2806 .macro_ws, .comment => {},
2807 else => try lhs_toks.append(gpa, .{ .id = .macro_ws, .loc = lhs.loc }),
2808 },
2809 }
2810 }
2811 return bufCopyTokens(gpa, lhs_toks, rhs_toks, &.{});
2812 }
2813
29522814 var rhs_rest: u32 = 1;
29532815 const rhs = for (rhs_toks) |rhs| {
29542816 if ((pp.comp.langopts.preserve_comments_in_macros and rhs.id == .comment) or
......@@ -2963,15 +2825,16 @@ fn pasteTokens(pp: *Preprocessor, lhs_toks: *ExpandBuf, rhs_toks: []const TokenW
29632825
29642826 const start = pp.comp.generated_buf.items.len;
29652827 const end = start + pp.expandedSlice(lhs).len + pp.expandedSlice(rhs).len;
2966 try pp.comp.generated_buf.ensureTotalCapacity(gpa, end + 1); // +1 for a newline
2828 try pp.comp.generated_buf.ensureTotalCapacity(gpa, end + 2); // +2 for a newline and null terminator
29672829 // We cannot use the same slices here since they might be invalidated by `ensureCapacity`
29682830 pp.comp.generated_buf.appendSliceAssumeCapacity(pp.expandedSlice(lhs));
29692831 pp.comp.generated_buf.appendSliceAssumeCapacity(pp.expandedSlice(rhs));
2970 pp.comp.generated_buf.appendAssumeCapacity('\n');
2832 pp.comp.generated_buf.appendSliceAssumeCapacity("\n\x00");
2833 defer pp.comp.generated_buf.items.len -= 1; // remove redundant null terminator
29712834
29722835 // Try to tokenize the result.
29732836 var tmp_tokenizer: Tokenizer = .{
2974 .buf = pp.comp.generated_buf.items,
2837 .buf = pp.comp.generated_buf.items[0 .. pp.comp.generated_buf.items.len - 1 :0],
29752838 .langopts = pp.comp.langopts,
29762839 .index = @intCast(start),
29772840 .source = .generated,
......@@ -2985,7 +2848,7 @@ fn pasteTokens(pp: *Preprocessor, lhs_toks: *ExpandBuf, rhs_toks: []const TokenW
29852848 pasted_token.id;
29862849
29872850 const hideset = try pp.hideset.intersection(pp.hideset.get(lhs.loc), pp.hideset.get(rhs.loc));
2988 const generated_token = try pp.makeGeneratedTokenExtra(start, pasted_id, lhs, hideset);
2851 const generated_token = try pp.makeGeneratedTokenExtra(start, pasted_id, lhs, hideset, lhs.flags.is_macro_arg or rhs.flags.is_macro_arg);
29892852 try lhs_toks.append(gpa, generated_token);
29902853
29912854 if (next.id != .nl and next.id != .eof) {
......@@ -2996,13 +2859,13 @@ fn pasteTokens(pp: *Preprocessor, lhs_toks: *ExpandBuf, rhs_toks: []const TokenW
29962859 try bufCopyTokens(gpa, lhs_toks, rhs_toks[rhs_rest..], &.{});
29972860}
29982861
2999fn makeGeneratedTokenExtra(pp: *Preprocessor, start: usize, id: Token.Id, source: TokenWithExpansionLocs, hideset: Hideset.Index) !TokenWithExpansionLocs {
2862fn makeGeneratedTokenExtra(pp: *Preprocessor, start: usize, id: Token.Id, source: TokenWithExpansionLocs, hideset: Hideset.Index, is_macro_arg: bool) !TokenWithExpansionLocs {
30002863 const gpa = pp.comp.gpa;
30012864 var pasted_token = TokenWithExpansionLocs{ .id = id, .loc = .{
30022865 .id = .generated,
30032866 .byte_offset = @intCast(start),
30042867 .line = pp.generated_line,
3005 } };
2868 }, .flags = .{ .is_macro_arg = is_macro_arg } };
30062869 pp.generated_line += 1;
30072870 try pasted_token.addExpansionLocation(gpa, &.{source.loc});
30082871 try pasted_token.addExpansionLocation(gpa, source.expansionSlice());
......@@ -3012,7 +2875,7 @@ fn makeGeneratedTokenExtra(pp: *Preprocessor, start: usize, id: Token.Id, source
30122875}
30132876
30142877fn makeGeneratedToken(pp: *Preprocessor, start: usize, id: Token.Id, source: TokenWithExpansionLocs) !TokenWithExpansionLocs {
3015 return pp.makeGeneratedTokenExtra(start, id, source, pp.hideset.get(source.loc));
2878 return pp.makeGeneratedTokenExtra(start, id, source, pp.hideset.get(source.loc), false);
30162879}
30172880
30182881/// Defines a new macro and warns if it is a duplicate
......@@ -3129,6 +2992,10 @@ fn define(pp: *Preprocessor, tokenizer: *Tokenizer, define_tok: RawToken) Error!
31292992 },
31302993 .unterminated_comment => try pp.err(tok, .unterminated_comment, .{}),
31312994 else => {
2995 if (tok.id.isMacroIdentifier() and pp.poisoned_identifiers.get(pp.tokSlice(tok)) != null) {
2996 try pp.err(tok, .poisoned_identifier, .{});
2997 }
2998
31322999 if (tok.id == .incomplete_ucn) {
31333000 @branchHint(.cold);
31343001 try pp.err(tok, .incomplete_ucn, .{});
......@@ -3276,6 +3143,10 @@ fn defineFn(pp: *Preprocessor, tokenizer: *Tokenizer, define_tok: RawToken, macr
32763143 },
32773144 .unterminated_comment => try pp.err(tok, .unterminated_comment, .{}),
32783145 else => {
3146 if (tok.id.isMacroIdentifier() and pp.poisoned_identifiers.get(pp.tokSlice(tok)) != null) {
3147 try pp.err(tok, .poisoned_identifier, .{});
3148 }
3149
32793150 if (tok.id != .whitespace and need_ws) {
32803151 need_ws = false;
32813152 try pp.token_buf.append(gpa, .{ .id = .macro_ws, .source = .generated });
......@@ -3347,7 +3218,11 @@ fn defineFn(pp: *Preprocessor, tokenizer: *Tokenizer, define_tok: RawToken, macr
33473218fn embed(pp: *Preprocessor, tokenizer: *Tokenizer) MacroError!void {
33483219 const gpa = pp.comp.gpa;
33493220 const first = tokenizer.nextNoWS();
3350 const filename_tok = pp.findIncludeFilenameToken(first, tokenizer, .ignore_trailing_tokens) catch |er| switch (er) {
3221 pp.top_expansion_buf.items.len = 0;
3222 defer for (pp.top_expansion_buf.items) |tok| TokenWithExpansionLocs.free(tok.expansion_locs, gpa);
3223 var embed_args: []const TokenWithExpansionLocs = &.{};
3224
3225 const filename_tok = pp.findIncludeFilenameToken(first, tokenizer, &embed_args) catch |er| switch (er) {
33513226 error.InvalidInclude => return,
33523227 else => |e| return e,
33533228 };
......@@ -3366,132 +3241,86 @@ fn embed(pp: *Preprocessor, tokenizer: *Tokenizer) MacroError!void {
33663241 else => unreachable,
33673242 };
33683243
3369 // Index into `token_buf`
3370 const Range = struct {
3371 start: u32,
3372 end: u32,
3373
3374 fn expand(opt_range: ?@This(), pp_: *Preprocessor, tokenizer_: *Tokenizer) !void {
3375 const range = opt_range orelse return;
3376 const slice = pp_.token_buf.items[range.start..range.end];
3377 for (slice) |tok| {
3378 try pp_.expandMacro(tokenizer_, tok);
3379 }
3380 }
3381 };
3382 pp.token_buf.items.len = 0;
3244 const Range = EmbedArgIterator.Range;
33833245
33843246 var limit: ?std.Io.Limit = null;
33853247 var prefix: ?Range = null;
33863248 var suffix: ?Range = null;
33873249 var if_empty: ?Range = null;
3388 while (true) {
3389 const param_first = tokenizer.nextNoWS();
3390 switch (param_first.id) {
3391 .nl, .eof => break,
3392 .identifier => {},
3393 else => {
3394 try pp.err(param_first, .malformed_embed_param, .{});
3395 continue;
3396 },
3397 }
3398
3399 const char_top = pp.char_buf.items.len;
3400 defer pp.char_buf.items.len = char_top;
34013250
3402 const maybe_colon = tokenizer.colonColon();
3403 const param = switch (maybe_colon.id) {
3404 .colon_colon => blk: {
3405 // vendor::param
3406 const param = tokenizer.nextNoWS();
3407 if (param.id != .identifier) {
3408 try pp.err(param, .malformed_embed_param, .{});
3409 continue;
3410 }
3411 const l_paren = tokenizer.nextNoWS();
3412 if (l_paren.id != .l_paren) {
3413 try pp.err(l_paren, .malformed_embed_param, .{});
3414 continue;
3415 }
3416 const vendor = Attribute.normalize(pp.tokSlice(param_first));
3417 const param_name = Attribute.normalize(pp.tokSlice(param));
3418 try pp.char_buf.ensureUnusedCapacity(gpa, vendor.len + 2 + param_name.len);
3419 pp.char_buf.appendSliceAssumeCapacity(vendor);
3420 pp.char_buf.appendSliceAssumeCapacity("::");
3421 pp.char_buf.appendSliceAssumeCapacity(param_name);
3422 break :blk pp.char_buf.items;
3423 },
3424 .l_paren => Attribute.normalize(pp.tokSlice(param_first)),
3425 else => {
3426 try pp.err(maybe_colon, .malformed_embed_param, .{});
3427 continue;
3428 },
3429 };
3251 const eof = embed_args[embed_args.len - 1];
3252 embed_args.len -= 1;
34303253
3431 const start: u32 = @intCast(pp.token_buf.items.len);
3432 while (true) {
3433 const next = tokenizer.nextNoWS();
3434 if (next.id == .r_paren) break;
3435 if (next.id == .eof) {
3436 try pp.err(maybe_colon, .malformed_embed_param, .{});
3437 break;
3438 }
3439 try pp.token_buf.append(gpa, next);
3440 }
3441 const end: u32 = @intCast(pp.token_buf.items.len);
3442
3443 if (std.mem.eql(u8, param, "limit")) {
3254 var it: EmbedArgIterator = .{
3255 .toks = embed_args,
3256 .eof = eof,
3257 .pp = pp,
3258 };
3259 while (try it.param()) |param| switch (param) {
3260 .limit => |range| {
34443261 if (limit != null) {
3445 try pp.err(tokFromRaw(param_first), .duplicate_embed_param, .{"limit"});
3446 continue;
3447 }
3448 if (start + 1 != end) {
3449 try pp.err(param_first, .malformed_embed_limit, .{});
3450 continue;
3262 try pp.err(range.tok, .duplicate_embed_param, .{"limit"});
34513263 }
3452 const limit_tok = pp.token_buf.items[start];
3453 if (limit_tok.id != .pp_num) {
3454 try pp.err(param_first, .malformed_embed_limit, .{});
3455 continue;
3456 }
3457 limit = .limited(std.fmt.parseInt(u32, pp.tokSlice(limit_tok), 10) catch {
3458 try pp.err(limit_tok, .malformed_embed_limit, .{});
3459 continue;
3460 });
3461 pp.token_buf.items.len = start;
3462 } else if (std.mem.eql(u8, param, "prefix")) {
3264 var parser: Parser = .{
3265 .pp = pp,
3266 .tokens = it.toks[range.start..range.end],
3267 .eof = it.toks[it.i - 1],
3268 };
3269 const val = try parser.parse() orelse return;
3270 const int = val.toInt(usize) orelse {
3271 try pp.err(range.tok, .invalid_embed_limit, .{});
3272 return;
3273 };
3274 limit = .limited(int);
3275 },
3276 .prefix => |range| {
34633277 if (prefix != null) {
3464 try pp.err(tokFromRaw(param_first), .duplicate_embed_param, .{"prefix"});
3465 continue;
3278 try pp.err(range.tok, .duplicate_embed_param, .{"prefix"});
34663279 }
3467 prefix = .{ .start = start, .end = end };
3468 } else if (std.mem.eql(u8, param, "suffix")) {
3280 prefix = range;
3281 },
3282 .if_empty => |range| {
3283 if (if_empty != null) {
3284 try pp.err(range.tok, .duplicate_embed_param, .{"if_empty"});
3285 }
3286 if_empty = range;
3287 },
3288 .suffix => |range| {
34693289 if (suffix != null) {
3470 try pp.err(tokFromRaw(param_first), .duplicate_embed_param, .{"suffix"});
3471 continue;
3290 try pp.err(range.tok, .duplicate_embed_param, .{"suffix"});
34723291 }
3473 suffix = .{ .start = start, .end = end };
3474 } else if (std.mem.eql(u8, param, "if_empty")) {
3475 if (if_empty != null) {
3476 try pp.err(tokFromRaw(param_first), .duplicate_embed_param, .{"if_empty"});
3477 continue;
3292 suffix = range;
3293 },
3294 .unknown => |vendor_and_name| {
3295 const char_top = pp.char_buf.items.len;
3296 defer pp.char_buf.items.len = char_top;
3297
3298 const name_str = pp.expandedSlice(vendor_and_name.name);
3299 if (vendor_and_name.vendor) |vendor| {
3300 const vendor_str = pp.expandedSlice(vendor);
3301 try pp.char_buf.ensureUnusedCapacity(gpa, vendor_str.len + 2 + name_str.len);
3302 pp.char_buf.appendSliceAssumeCapacity(vendor_str);
3303 pp.char_buf.appendSliceAssumeCapacity("::");
3304 pp.char_buf.appendSliceAssumeCapacity(name_str);
3305 try pp.err(vendor_and_name.name, .unknown_embed_param, .{pp.char_buf.items[char_top..]});
3306 return;
34783307 }
3479 if_empty = .{ .start = start, .end = end };
3480 } else {
3481 try pp.err(tokFromRaw(param_first), .unsupported_embed_param, .{param});
3482 pp.token_buf.items.len = start;
3483 }
3484 }
3308
3309 try pp.err(vendor_and_name.name, .unknown_embed_param, .{name_str});
3310 return;
3311 },
3312 .invalid => return,
3313 };
34853314
34863315 const embed_bytes = (try pp.comp.findEmbed(filename, first.source, include_type, limit orelse .unlimited, pp.dep_file)) orelse
34873316 return pp.fatalNotFound(filename_tok, filename);
34883317 defer gpa.free(embed_bytes);
34893318
3490 try Range.expand(prefix, pp, tokenizer);
3319 try it.addTokens(prefix);
34913320
34923321 if (embed_bytes.len == 0) {
3493 try Range.expand(if_empty, pp, tokenizer);
3494 try Range.expand(suffix, pp, tokenizer);
3322 try it.addTokens(if_empty);
3323 try it.addTokens(suffix);
34953324 return;
34963325 }
34973326
......@@ -3515,9 +3344,128 @@ fn embed(pp: *Preprocessor, tokenizer: *Tokenizer) MacroError!void {
35153344 }
35163345 try pp.comp.generated_buf.append(gpa, '\n');
35173346
3518 try Range.expand(suffix, pp, tokenizer);
3347 try it.addTokens(suffix);
35193348}
35203349
3350const EmbedArgIterator = struct {
3351 i: usize = 0,
3352 toks: []const TokenWithExpansionLocs,
3353 eof: TokenWithExpansionLocs,
3354 pp: *Preprocessor,
3355
3356 fn next(it: *EmbedArgIterator) TokenWithExpansionLocs {
3357 while (it.i < it.toks.len) {
3358 defer it.i += 1;
3359 switch (it.toks[it.i].id) {
3360 .whitespace, .comment, .macro_ws => continue,
3361 else => return it.toks[it.i],
3362 }
3363 }
3364 return it.eof;
3365 }
3366
3367 fn peek(it: *EmbedArgIterator) TokenWithExpansionLocs {
3368 while (it.i < it.toks.len) {
3369 switch (it.toks[it.i].id) {
3370 .whitespace, .comment, .macro_ws => it.i += 1,
3371 else => return it.toks[it.i],
3372 }
3373 }
3374 return it.eof;
3375 }
3376
3377 const Range = struct {
3378 tok: TokenWithExpansionLocs,
3379 start: u32,
3380 end: u32,
3381 };
3382
3383 const Param = union(enum) {
3384 prefix: Range,
3385 if_empty: Range,
3386 suffix: Range,
3387 limit: Range,
3388 unknown: struct {
3389 vendor: ?TokenWithExpansionLocs,
3390 name: TokenWithExpansionLocs,
3391 },
3392 invalid,
3393 };
3394
3395 fn param(it: *EmbedArgIterator) !?Param {
3396 while (true) {
3397 const param_first = it.next();
3398 if (param_first.id == .eof) return null;
3399 if (param_first.id != .identifier) {
3400 try it.pp.err(param_first, .embed_param_identifier, .{});
3401 return .invalid;
3402 }
3403
3404 var vendor_tok: ?TokenWithExpansionLocs = null;
3405 var name_tok = param_first;
3406 if (it.peek().id == .colon_colon) {
3407 vendor_tok = param_first;
3408 _ = it.next(); // ::
3409 name_tok = it.next();
3410 if (name_tok.id != .identifier) {
3411 try it.pp.err(name_tok, .embed_param_identifier, .{});
3412 return .invalid;
3413 }
3414 }
3415
3416 const opt_args: ?Range = blk: {
3417 if (it.peek().id != .l_paren) break :blk null;
3418 const l_paren = it.next();
3419
3420 const start: u32 = @intCast(it.i);
3421 var parens: u32 = 0;
3422 while (true) {
3423 const tok = it.next();
3424 if (tok.id == .l_paren) parens += 1;
3425 if (tok.id == .r_paren) {
3426 if (parens == 0) break;
3427 parens -= 1;
3428 }
3429 if (tok.id == .eof) {
3430 try it.pp.err(tok, .closing_paren, .{});
3431 try it.pp.err(l_paren, .to_match_paren, .{});
3432 return .invalid;
3433 }
3434 }
3435 const end: u32 = @intCast(it.i - 1);
3436 break :blk .{ .start = start, .end = end, .tok = name_tok };
3437 };
3438
3439 if (vendor_tok != null) {
3440 return .{ .unknown = .{ .vendor = vendor_tok, .name = name_tok } };
3441 }
3442
3443 const name_str = Attribute.normalize(it.pp.expandedSlice(name_tok));
3444 const args = opt_args orelse {
3445 try it.pp.err(name_tok, .embed_param_args, .{});
3446 return null;
3447 };
3448 if (mem.eql(u8, name_str, "limit")) {
3449 return .{ .limit = args };
3450 } else if (mem.eql(u8, name_str, "prefix")) {
3451 return .{ .prefix = args };
3452 } else if (mem.eql(u8, name_str, "suffix")) {
3453 return .{ .suffix = args };
3454 } else if (mem.eql(u8, name_str, "if_empty")) {
3455 return .{ .if_empty = args };
3456 } else {
3457 return .{ .unknown = .{ .vendor = null, .name = name_tok } };
3458 }
3459 }
3460 }
3461
3462 fn addTokens(it: EmbedArgIterator, opt_range: ?Range) !void {
3463 const range = opt_range orelse return;
3464 const slice = it.toks[range.start..range.end];
3465 try it.pp.addTokensFromExpandBuf(slice, it.eof);
3466 }
3467};
3468
35213469// Handle a #include directive.
35223470fn include(pp: *Preprocessor, tokenizer: *Tokenizer, which: Compilation.WhichInclude) MacroError!void {
35233471 const first = tokenizer.nextNoWS();
......@@ -3540,6 +3488,34 @@ fn include(pp: *Preprocessor, tokenizer: *Tokenizer, which: Compilation.WhichInc
35403488 if (pp.defines.contains(guard)) return;
35413489 }
35423490
3491 // Run any beforeInclude pragma hooks.
3492 //
3493 // NOTE: This is currently the only deep-preprocessor hook other than the
3494 // actual token handler itself. If more are added, an event hook system
3495 // similar to the compilation-scoped one should be considered with a
3496 // payload structure that can handle context-relevant event data (e.g.,
3497 // here, the source file data is needed).
3498 for (pp.comp.pragma_handlers.keys(), pp.comp.pragma_handlers.values()) |handler_pragma_name, handler_pragma| {
3499 if (handler_pragma.beforeInclude) |func| {
3500 func(handler_pragma, pp, new_source) catch |handler_err| {
3501 switch (handler_err) {
3502 error.SkipInclude => {
3503 if (pp.verbose) {
3504 pp.verboseLog(
3505 first,
3506 "skipping include file {s} under direction of \"{s}\" pragma",
3507 .{ new_source.path, handler_pragma_name },
3508 );
3509 }
3510
3511 return;
3512 },
3513 else => |e| return e,
3514 }
3515 };
3516 }
3517 }
3518
35433519 if (pp.dep_file) |dep| try dep.addDependency(gpa, new_source.path);
35443520 if (pp.verbose) {
35453521 pp.verboseLog(first, "include file {s}", .{new_source.path});
......@@ -3602,10 +3578,10 @@ pub fn ensureUnusedTokenCapacity(pp: *Preprocessor, capacity: usize) !void {
36023578}
36033579
36043580/// Handle a pragma directive
3605fn pragma(pp: *Preprocessor, tokenizer: *Tokenizer, pragma_tok: RawToken, expand_buf: *ExpandBuf) !void {
3581fn pragma(pp: *Preprocessor, tokenizer: *Tokenizer, pragma_tok: TokenWithExpansionLocs, expand_buf: *ExpandBuf) !void {
36063582 const name_tok = tokFromRaw(tokenizer.nextNoWS());
36073583 if (name_tok.id == .nl or name_tok.id == .eof) return;
3608 try expand_buf.appendSlice(pp.comp.gpa, &.{ tokFromRaw(pragma_tok), name_tok });
3584 try expand_buf.appendSlice(pp.comp.gpa, &.{ pragma_tok, name_tok });
36093585
36103586 const name = pp.expandedSlice(name_tok);
36113587 const prag: *const Pragma = pp.comp.getPragma(name) orelse &.do_nothing;
......@@ -3624,7 +3600,7 @@ fn pragma(pp: *Preprocessor, tokenizer: *Tokenizer, pragma_tok: RawToken, expand
36243600 const pos = expand_buf.items.len;
36253601 try expand_buf.append(pp.comp.gpa, tokFromRaw(next_tok));
36263602 if (prag.shouldExpandTokenAtIndex(i)) {
3627 try pp.expandMacroExhaustive(tokenizer, expand_buf, pos, pos + 1, true, .no_pragma);
3603 try pp.expandMacroExhaustive(tokenizer, expand_buf, pos, pos + 1, .no_pragma);
36283604 }
36293605 i += 1;
36303606
......@@ -3636,16 +3612,17 @@ fn findIncludeFilenameToken(
36363612 pp: *Preprocessor,
36373613 first_token: RawToken,
36383614 tokenizer: *Tokenizer,
3639 trailing_token_behavior: enum { ignore_trailing_tokens, expect_nl_eof },
3615 embed_args: ?*[]const TokenWithExpansionLocs,
36403616) !TokenWithExpansionLocs {
36413617 var first = first_token;
36423618
36433619 if (first.id == .angle_bracket_left) to_end: {
3620 var index = tokenizer.index;
36443621 // The tokenizer does not handle <foo> include strings so do it here.
3645 while (tokenizer.index < tokenizer.buf.len) : (tokenizer.index += 1) {
3646 switch (tokenizer.buf[tokenizer.index]) {
3622 while (index < tokenizer.buf.len) : (index += 1) {
3623 switch (tokenizer.buf[index]) {
36473624 '>' => {
3648 tokenizer.index += 1;
3625 tokenizer.index = index + 1;
36493626 first.end = tokenizer.index;
36503627 first.id = .macro_string;
36513628 break :to_end;
......@@ -3654,57 +3631,90 @@ fn findIncludeFilenameToken(
36543631 else => {},
36553632 }
36563633 }
3657 const loc: Source.Location = .{ .id = first.source, .byte_offset = tokenizer.index, .line = first.line };
3658 try pp.err(loc, .header_str_closing, .{});
3659 try pp.err(first, .header_str_match, .{});
36603634 }
36613635
3636 const gpa = pp.comp.gpa;
36623637 const source_tok = tokFromRaw(first);
3663 const filename_tok, const expanded_trailing = switch (source_tok.id) {
3664 .string_literal, .macro_string => .{ source_tok, false },
3665 else => expanded: {
3666 const gpa = pp.comp.gpa;
3667 // Try to expand if the argument is a macro.
3668 pp.top_expansion_buf.items.len = 0;
3669 defer for (pp.top_expansion_buf.items) |tok| TokenWithExpansionLocs.free(tok.expansion_locs, gpa);
3670 try pp.top_expansion_buf.append(gpa, source_tok);
3671 pp.expansion_source_loc = source_tok.loc;
3672
3673 try pp.expandMacroExhaustive(tokenizer, &pp.top_expansion_buf, 0, 1, true, .no_pragma);
3674 var trailing_toks: []const TokenWithExpansionLocs = &.{};
3675 const include_str = (try pp.reconstructIncludeString(pp.top_expansion_buf.items, &trailing_toks, tokFromRaw(first))) orelse {
3676 try pp.expectNl(tokenizer);
3677 return error.InvalidInclude;
3678 };
3679 const start = pp.comp.generated_buf.items.len;
3680 try pp.comp.generated_buf.appendSlice(gpa, include_str);
3681
3682 break :expanded .{ try pp.makeGeneratedToken(start, switch (include_str[0]) {
3683 '"' => .string_literal,
3684 '<' => .macro_string,
3685 else => unreachable,
3686 }, pp.top_expansion_buf.items[0]), trailing_toks.len != 0 };
3687 },
3638 const source_str = switch (source_tok.id) {
3639 .string_literal, .macro_string => true,
3640 else => false,
36883641 };
36893642
3690 switch (trailing_token_behavior) {
3691 .expect_nl_eof => {
3643 pp.top_expansion_buf.items.len = 0;
3644 defer if (embed_args == null) for (pp.top_expansion_buf.items) |tok| TokenWithExpansionLocs.free(tok.expansion_locs, gpa);
3645 if (!source_str or embed_args != null) {
3646 if (!source_str) try pp.top_expansion_buf.append(gpa, source_tok);
3647 pp.expansion_source_loc = source_tok.loc;
3648
3649 while (true) {
3650 var tok = tokenizer.next();
3651 switch (tok.id) {
3652 .whitespace => tok.id = .macro_ws,
3653 .nl => tok.id = .eof,
3654 .unterminated_string_literal, .unterminated_char_literal, .empty_char_literal => |tag| {
3655 try pp.err(tok, invalidTokenDiagnostic(tag), .{});
3656 },
3657 .unterminated_comment => {
3658 try pp.err(tok, .unterminated_comment, .{});
3659 },
3660 else => {
3661 if (tok.id.isMacroIdentifier() and pp.poisoned_identifiers.get(pp.tokSlice(tok)) != null) {
3662 try pp.err(tok, .poisoned_identifier, .{});
3663 }
3664 },
3665 }
3666 try pp.top_expansion_buf.append(gpa, tokFromRaw(tok));
3667 if (tok.id == .eof) break;
3668 }
3669 try pp.expandMacroExhaustive(null, &pp.top_expansion_buf, 0, pp.top_expansion_buf.items.len, .no_pragma);
3670 removePlacemarkers(gpa, &pp.top_expansion_buf);
3671 }
3672
3673 if (source_str) {
3674 // Happy path, no macro expansion needed. We just check to ensure
3675 // that there's no trailing tokens, and we're done.
3676 if (embed_args) |toks| {
3677 toks.* = pp.top_expansion_buf.items;
3678 } else {
36923679 // Error on extra tokens.
36933680 const nl = tokenizer.nextNoWS();
3694 if ((nl.id != .nl and nl.id != .eof) or expanded_trailing) {
3681 if (nl.id != .nl and nl.id != .eof) {
36953682 skipToNl(tokenizer);
3696 try pp.err(filename_tok, .extra_tokens_directive_end, .{});
3683 try pp.err(nl, .extra_tokens_directive_end, .{});
36973684 }
3698 },
3699 .ignore_trailing_tokens => if (expanded_trailing) {
3700 try pp.err(filename_tok, .extra_tokens_directive_end, .{});
3701 },
3685 }
3686
3687 return source_tok;
37023688 }
3703 return filename_tok;
3689
3690 // Our include argument is a macro, so we need to try and expand
3691 // it.
3692 var dummy_trailing_toks: []const TokenWithExpansionLocs = &.{};
3693 const include_str = (try pp.reconstructIncludeString(pp.top_expansion_buf.items, embed_args orelse &dummy_trailing_toks, tokFromRaw(first))) orelse {
3694 return error.InvalidInclude;
3695 };
3696 const start = pp.comp.generated_buf.items.len;
3697 try pp.comp.generated_buf.appendSlice(gpa, include_str);
3698
3699 // Check for trailing tokens
3700 for (dummy_trailing_toks) |tok| {
3701 switch (tok.id) {
3702 .macro_ws, .whitespace, .eof => continue,
3703 else => {},
3704 }
3705 try pp.err(tok, .extra_tokens_directive_end, .{});
3706 break;
3707 }
3708
3709 return try pp.makeGeneratedToken(start, switch (include_str[0]) {
3710 '"' => .string_literal,
3711 '<' => .macro_string,
3712 else => unreachable,
3713 }, pp.top_expansion_buf.items[0]);
37043714}
37053715
37063716fn findIncludeSource(pp: *Preprocessor, tokenizer: *Tokenizer, first: RawToken, which: Compilation.WhichInclude) !Source {
3707 const filename_tok = try pp.findIncludeFilenameToken(first, tokenizer, .expect_nl_eof);
3717 const filename_tok = try pp.findIncludeFilenameToken(first, tokenizer, null);
37083718 defer TokenWithExpansionLocs.free(filename_tok.expansion_locs, pp.comp.gpa);
37093719
37103720 // Check for empty filename.
......@@ -3872,7 +3882,7 @@ pub fn prettyPrintTokens(pp: *Preprocessor, w: *std.Io.Writer, macro_dump_mode:
38723882 },
38733883 .keyword_pragma => {
38743884 const pragma_name = pp.expandedSlice(pp.tokens.get(i + 1));
3875 const end_idx = mem.indexOfScalarPos(Token.Id, tok_ids, i, .nl) orelse i + 1;
3885 const end_idx = mem.findScalarPos(Token.Id, tok_ids, i, .nl) orelse i + 1;
38763886 const pragma_len = @as(u32, @intCast(end_idx)) - i;
38773887
38783888 if (pp.comp.getPragma(pragma_name)) |prag| {
......@@ -3899,7 +3909,7 @@ pub fn prettyPrintTokens(pp: *Preprocessor, w: *std.Io.Writer, macro_dump_mode:
38993909 },
39003910 .whitespace => {
39013911 var slice = pp.expandedSlice(cur);
3902 while (mem.indexOfScalar(u8, slice, '\n')) |some| {
3912 while (mem.findScalar(u8, slice, '\n')) |some| {
39033913 if (pp.linemarkers != .none) try w.writeByte('\n');
39043914 slice = slice[some + 1 ..];
39053915 }
......@@ -4110,7 +4120,8 @@ test "Include guards" {
41104120 var pp = try Preprocessor.init(&comp, .testing);
41114121 defer pp.deinit();
41124122
4113 const file_path = try path.join(gpa, &.{ ".", "bar.h" });
4123 // Resolve the path to match what findInclude will resolve it to
4124 const file_path = try std.fs.path.resolve(gpa, &.{ ".", "bar.h" });
41144125 defer gpa.free(file_path);
41154126
41164127 _ = try comp.addSourceFromBuffer(file_path, "int bar = 5;\n");
lib/compiler/aro/aro/Preprocessor/Diagnostic.zig+91-30
......@@ -112,12 +112,8 @@ pub const macro_name_missing: Diagnostic = .{
112112
113113pub const extra_tokens_directive_end: Diagnostic = .{
114114 .fmt = "extra tokens at end of macro directive",
115 .kind = .@"error",
116};
117
118pub const expected_value_in_expr: Diagnostic = .{
119 .fmt = "expected value in expression",
120 .kind = .@"error",
115 .kind = .warning,
116 .opt = .@"extra-tokens",
121117};
122118
123119pub const defined_as_macro_name: Diagnostic = .{
......@@ -197,11 +193,6 @@ pub const header_str_match: Diagnostic = .{
197193 .kind = .note,
198194};
199195
200pub const string_literal_in_pp_expr: Diagnostic = .{
201 .fmt = "string literal in preprocessor expression",
202 .kind = .@"error",
203};
204
205196pub const empty_char_literal_warning: Diagnostic = .{
206197 .fmt = "empty character constant",
207198 .kind = .warning,
......@@ -228,13 +219,32 @@ pub const unterminated_comment: Diagnostic = .{
228219 .kind = .@"error",
229220};
230221
231pub const malformed_embed_param: Diagnostic = .{
232 .fmt = "unexpected token in embed parameter",
222pub const warning_extension: Diagnostic = .{
223 .fmt = "#warning is a C23 extension",
224 .kind = .off,
225 .opt = .@"c23-extensions",
226 .extension = true,
227};
228
229pub const c23_extension: Diagnostic = .{
230 .fmt = "{s} is a C23 extension",
231 .kind = .warning,
232 .opt = .@"c23-extensions",
233 .extension = true,
234};
235
236pub const embed_param_identifier: Diagnostic = .{
237 .fmt = "expected identifier",
233238 .kind = .@"error",
234239};
235240
236pub const malformed_embed_limit: Diagnostic = .{
237 .fmt = "the limit parameter expects one non-negative integer as a parameter",
241pub const embed_param_args: Diagnostic = .{
242 .fmt = "expected '('",
243 .kind = .@"error",
244};
245
246pub const invalid_embed_limit: Diagnostic = .{
247 .fmt = "the limit parameter expects a non-negative integer as a parameter",
238248 .kind = .@"error",
239249};
240250
......@@ -244,10 +254,9 @@ pub const duplicate_embed_param: Diagnostic = .{
244254 .opt = .@"duplicate-embed-param",
245255};
246256
247pub const unsupported_embed_param: Diagnostic = .{
248 .fmt = "unsupported embed parameter '{s}' embed parameter",
249 .kind = .warning,
250 .opt = .@"unsupported-embed-param",
257pub const unknown_embed_param: Diagnostic = .{
258 .fmt = "unknown embed parameter '{s}'",
259 .kind = .@"error",
251260};
252261
253262pub const va_opt_lparen: Diagnostic = .{
......@@ -278,14 +287,13 @@ pub const fn_macro_undefined: Diagnostic = .{
278287 .kind = .@"error",
279288};
280289
281// pub const preprocessing_directive_only: Diagnostic = .{
282// .fmt = "'{s}' must be used within a preprocessing directive",
283// .extra = .tok_id_expected,
284// .kind = .@"error",
285// };
290pub const preprocessing_directive_only: Diagnostic = .{
291 .fmt = "'__{s}' must be used within a preprocessing directive",
292 .kind = .@"error",
293};
286294
287295pub const missing_lparen_after_builtin: Diagnostic = .{
288 .fmt = "Missing '(' after built-in macro '{s}'",
296 .fmt = "missing '(' after built-in macro '{s}'",
289297 .kind = .@"error",
290298};
291299
......@@ -349,6 +357,64 @@ pub const invalid_preproc_expr_start: Diagnostic = .{
349357 .kind = .@"error",
350358};
351359
360pub const expected_value_in_expr: Diagnostic = .{
361 .fmt = "expected value in expression",
362 .kind = .@"error",
363};
364
365pub const invalid_preproc_operator: Diagnostic = .{
366 .fmt = "token is not a valid binary operator in a preprocessor subexpression",
367 .kind = .@"error",
368};
369
370pub const convert_to_positive: Diagnostic = .{
371 .fmt = "{s} side of operator converted from negative value to unsigned: {d} to {d}",
372 .kind = .warning,
373};
374
375pub const division_by_zero: Diagnostic = .{
376 .fmt = "{s} by zero in preprocessor expression",
377 .kind = .@"error",
378};
379
380pub const comma_operator: Diagnostic = .{
381 .fmt = "comma operator in operand of #if",
382 .kind = .warning,
383 .extension = true,
384};
385
386pub const overflow: Diagnostic = .{
387 .fmt = "integer overflow in preprocessor expression",
388 .kind = .warning,
389};
390
391pub const expected_colon: Diagnostic = .{
392 .fmt = "expected ':'",
393 .kind = .@"error",
394};
395
396pub const to_match_question: Diagnostic = .{
397 .fmt = "to match this '?'",
398 .kind = .note,
399};
400
401pub const float_literal_in_expr: Diagnostic = .{
402 .fmt = "floating point literal in preprocessor expression",
403 .kind = .@"error",
404};
405
406pub const int_literal_too_big: Diagnostic = .{
407 .fmt = "integer literal is too large to be represented in any integer type",
408 .kind = .@"error",
409};
410
411pub const implicitly_unsigned_literal: Diagnostic = .{
412 .fmt = "integer literal is too large to be represented in a signed integer type, interpreting as unsigned",
413 .opt = .@"implicitly-unsigned-literal",
414 .kind = .warning,
415 .extension = true,
416};
417
352418pub const newline_eof: Diagnostic = .{
353419 .fmt = "no newline at end of file",
354420 .opt = .@"newline-eof",
......@@ -417,11 +483,6 @@ pub const expected_at_least_arguments: Diagnostic = .{
417483 .kind = .warning,
418484};
419485
420pub const invalid_preproc_operator: Diagnostic = .{
421 .fmt = "token is not a valid binary operator in a preprocessor subexpression",
422 .kind = .@"error",
423};
424
425486pub const expected_str_literal_in: Diagnostic = .{
426487 .fmt = "expected string literal in '{s}'",
427488 .kind = .@"error",
lib/compiler/aro/aro/Preprocessor/Parser.zig created+537
......@@ -0,0 +1,537 @@
1const std = @import("std");
2const assert = std.debug.assert;
3
4const Error = @import("../Compilation.zig").Error;
5const Diagnostics = @import("../Diagnostics.zig");
6const Preprocessor = @import("../Preprocessor.zig");
7const Tokenizer = @import("../Tokenizer.zig");
8const number_literal = Tokenizer.number_literal;
9const text_literal = Tokenizer.text_literal;
10const Tree = @import("../Tree.zig");
11const Token = Tree.Token;
12const TokenWithExpansionLocs = Tree.TokenWithExpansionLocs;
13
14const intmax_width = 64;
15const uintmax = u64;
16const intmax = i64;
17
18const Parser = @This();
19
20pp: *const Preprocessor,
21tokens: []const TokenWithExpansionLocs,
22index: u32 = 0,
23eof: TokenWithExpansionLocs,
24
25pub const Value = union(enum) {
26 signed: intmax,
27 unsigned: uintmax,
28
29 fn init(val: anytype) Value {
30 return switch (@TypeOf(val)) {
31 comptime_int => .{ .signed = val },
32 bool => .{ .signed = @intFromBool(val) },
33 intmax => .{ .signed = val },
34 uintmax => .{ .unsigned = val },
35 else => @compileError("invalid value"),
36 };
37 }
38
39 pub fn toBool(val: Value) bool {
40 return switch (val) {
41 inline else => |v| v != 0,
42 };
43 }
44
45 pub fn toInt(val: Value, comptime I: type) ?I {
46 return switch (val) {
47 inline else => |v| std.math.cast(I, v),
48 };
49 }
50
51 fn isZero(val: Value) bool {
52 return switch (val) {
53 inline else => |v| v == 0,
54 };
55 }
56
57 fn toUnsigned(val: *Value, p: *Parser, op_tok: TokenWithExpansionLocs, side: []const u8) !void {
58 switch (val.*) {
59 .unsigned => {},
60 .signed => |s| {
61 if (s >= 0) {
62 val.* = .{ .unsigned = @intCast(s) };
63 return;
64 }
65
66 val.* = .init(@as(uintmax, @bitCast(s)));
67 try p.pp.err(op_tok, .convert_to_positive, .{ side, s, val.unsigned });
68 },
69 }
70 }
71};
72
73fn next(p: *Parser) TokenWithExpansionLocs {
74 while (p.index < p.tokens.len) {
75 defer p.index += 1;
76 switch (p.tokens[p.index].id) {
77 .whitespace, .comment, .macro_ws => continue,
78 else => return p.tokens[p.index],
79 }
80 }
81 p.eof.id = .eof;
82 return p.eof;
83}
84
85fn peek(p: *Parser) TokenWithExpansionLocs {
86 while (p.index < p.tokens.len) {
87 switch (p.tokens[p.index].id) {
88 .whitespace, .comment, .macro_ws => p.index += 1,
89 else => return p.tokens[p.index],
90 }
91 }
92 p.eof.id = .eof;
93 return p.eof;
94}
95
96pub fn parse(p: *Parser) Error!?Value {
97 assert(p.pp.comp.target.intMaxType().bitSizeof(p.pp.comp) == intmax_width);
98 const val = (try p.binaryExpr(.any, true)) orelse return null;
99
100 const last = p.peek();
101 if (last.id != .eof) {
102 try p.pp.err(last, .invalid_preproc_operator, .{});
103 }
104 return val;
105}
106
107fn binaryExpr(p: *Parser, min_prec: Token.Precedence, eval: bool) Error!?Value {
108 var lhs = try p.primaryExpr(eval) orelse return null;
109
110 while (true) {
111 const tok = p.peek();
112 const op_prec = Token.precedence[@backingInt(tok.id)];
113 if (op_prec.lt(min_prec) or op_prec == .assign) {
114 return lhs;
115 }
116
117 const operator = p.next();
118 const eval_rhs = switch (operator.id) {
119 .ampersand_ampersand => eval and lhs.toBool(),
120 .pipe_pipe => eval and !lhs.toBool(),
121 .question_mark => eval and lhs.toBool(),
122 else => eval,
123 };
124 var rhs = try p.binaryExpr(op_prec.next(min_prec), eval_rhs) orelse return null;
125
126 // Usual arithmetic conversion
127 switch (operator.id) {
128 .question_mark,
129 .angle_bracket_angle_bracket_left,
130 .angle_bracket_angle_bracket_right,
131 .comma,
132 .pipe_pipe,
133 .ampersand_ampersand,
134 => {},
135 else => if (lhs == .unsigned or rhs == .unsigned) {
136 if (eval) {
137 try lhs.toUnsigned(p, operator, "left");
138 try rhs.toUnsigned(p, operator, "right");
139 } else {
140 lhs = .{ .unsigned = 0 };
141 rhs = .{ .unsigned = 0 };
142 }
143 },
144 }
145 var overflow: u1 = 0;
146 switch (operator.id) {
147 .percent => if (!rhs.isZero()) switch (lhs) {
148 .signed => |s| {
149 if (s == std.math.minInt(intmax) and rhs.signed == -1) {
150 lhs = .init(0);
151 } else {
152 lhs = .init(@rem(s, rhs.signed));
153 }
154 },
155 .unsigned => |u| {
156 lhs = .init(u % rhs.unsigned);
157 },
158 } else if (eval) {
159 try p.pp.err(operator, .division_by_zero, .{"remainder"});
160 return null;
161 },
162 .slash => if (!rhs.isZero()) switch (lhs) {
163 .signed => |s| {
164 if (s == std.math.minInt(intmax) and rhs.signed == -1) {
165 overflow = 1;
166 lhs = .init(std.math.minInt(intmax));
167 } else {
168 lhs = .init(@divTrunc(s, rhs.signed));
169 }
170 },
171 .unsigned => |u| {
172 lhs = .init(u / rhs.unsigned);
173 },
174 } else if (eval) {
175 try p.pp.err(operator, .division_by_zero, .{"division"});
176 return null;
177 },
178 .asterisk => switch (lhs) {
179 .signed => |s| {
180 const prod, overflow = @mulWithOverflow(s, rhs.signed);
181 lhs = .init(prod);
182 },
183 .unsigned => |u| {
184 lhs = .init(u *% rhs.unsigned);
185 },
186 },
187 .plus => switch (lhs) {
188 .signed => |s| {
189 const sum, overflow = @addWithOverflow(s, rhs.signed);
190 lhs = .init(sum);
191 },
192 .unsigned => |u| {
193 lhs = .init(u +% rhs.unsigned);
194 },
195 },
196 .minus => switch (lhs) {
197 .signed => |s| {
198 const diff, overflow = @subWithOverflow(s, rhs.signed);
199 lhs = .init(diff);
200 },
201 .unsigned => |u| {
202 lhs = .init(u -% rhs.unsigned);
203 },
204 },
205 .angle_bracket_angle_bracket_left => switch (rhs) {
206 inline else => |amt| if (amt < 0 or amt >= intmax_width) {
207 overflow = 1;
208 switch (lhs) {
209 inline else => |*v| v.* = 0,
210 }
211 } else switch (lhs) {
212 inline else => |v| {
213 const res, overflow = @shlWithOverflow(v, @as(u6, @intCast(amt)));
214 lhs = .init(res);
215 },
216 },
217 },
218 .angle_bracket_angle_bracket_right => switch (rhs) {
219 inline else => |amt| if (amt < 0) {
220 overflow = 1;
221 switch (lhs) {
222 inline else => |*v| v.* = 0,
223 }
224 } else switch (lhs) {
225 inline else => |v| {
226 if (amt >= intmax_width) {
227 overflow = 1;
228 lhs = .init(v >> @as(u6, @intCast(intmax_width - 1)));
229 } else {
230 lhs = .init(v >> @as(u6, @intCast(amt)));
231 }
232 },
233 },
234 },
235 .angle_bracket_left_equal => switch (lhs) {
236 .signed => |s| {
237 lhs = .init(s <= rhs.signed);
238 },
239 .unsigned => |u| {
240 lhs = .init(u <= rhs.unsigned);
241 },
242 },
243 .angle_bracket_left => switch (lhs) {
244 .signed => |s| {
245 lhs = .init(s < rhs.signed);
246 },
247 .unsigned => |u| {
248 lhs = .init(u < rhs.unsigned);
249 },
250 },
251 .angle_bracket_right_equal => switch (lhs) {
252 .signed => |s| {
253 lhs = .init(s >= rhs.signed);
254 },
255 .unsigned => |u| {
256 lhs = .init(u >= rhs.unsigned);
257 },
258 },
259 .angle_bracket_right => switch (lhs) {
260 .signed => |s| {
261 lhs = .init(s > rhs.signed);
262 },
263 .unsigned => |u| {
264 lhs = .init(u > rhs.unsigned);
265 },
266 },
267 .bang_equal => switch (lhs) {
268 .signed => |s| {
269 lhs = .init(s != rhs.signed);
270 },
271 .unsigned => |u| {
272 lhs = .init(u != rhs.unsigned);
273 },
274 },
275 .equal_equal => switch (lhs) {
276 .signed => |s| {
277 lhs = .init(s == rhs.signed);
278 },
279 .unsigned => |u| {
280 lhs = .init(u == rhs.unsigned);
281 },
282 },
283 .ampersand => switch (lhs) {
284 .signed => |s| {
285 lhs = .init(s & rhs.signed);
286 },
287 .unsigned => |u| {
288 lhs = .init(u & rhs.unsigned);
289 },
290 },
291 .caret => switch (lhs) {
292 .signed => |s| {
293 lhs = .init(s ^ rhs.signed);
294 },
295 .unsigned => |u| {
296 lhs = .init(u ^ rhs.unsigned);
297 },
298 },
299 .pipe => switch (lhs) {
300 .signed => |s| {
301 lhs = .init(s | rhs.signed);
302 },
303 .unsigned => |u| {
304 lhs = .init(u | rhs.unsigned);
305 },
306 },
307 .ampersand_ampersand => {
308 lhs = .init(lhs.toBool() and rhs.toBool());
309 },
310 .pipe_pipe => {
311 lhs = .init(lhs.toBool() or rhs.toBool());
312 },
313 .question_mark => {
314 const colon = p.next();
315 if (colon.id != .colon) {
316 try p.pp.err(colon, .expected_colon, .{});
317 try p.pp.err(operator, .to_match_question, .{});
318 return null;
319 }
320
321 const eval_else = eval and lhs.isZero();
322 // Conditional operator is right associative.
323 const else_res = try p.binaryExpr(op_prec, eval_else) orelse return null;
324
325 lhs = if (lhs.toBool()) rhs else else_res;
326 if (eval and rhs == .unsigned or else_res == .unsigned) {
327 try lhs.toUnsigned(p, operator, "right");
328 }
329 },
330 .comma => {
331 // Comma operator allowed in C99 if not being evaluated
332 if (!p.pp.comp.langopts.standard.atLeast(.c99) or eval) {
333 try p.pp.err(operator, .comma_operator, .{});
334 return null;
335 }
336 lhs = rhs;
337 },
338 else => unreachable,
339 }
340
341 if (overflow != 0 and eval) {
342 try p.pp.err(operator, .overflow, .{});
343 }
344 }
345}
346
347fn primaryExpr(p: *Parser, eval: bool) Error!?Value {
348 loop: switch (p.peek().id) {
349 .eof, .r_paren => {
350 const eof = p.next();
351 try p.pp.err(eof, .expected_value_in_expr, .{});
352 return null;
353 },
354 .l_paren => {
355 const l_paren = p.next();
356 const res = try p.binaryExpr(.any, eval) orelse return null;
357 const r_paren = p.next();
358
359 if (r_paren.id != .r_paren) {
360 try p.pp.err(r_paren, .closing_paren, .{});
361 try p.pp.err(l_paren, .to_match_paren, .{});
362 return null;
363 }
364 return res;
365 },
366 .keyword_defined => {
367 _ = p.next();
368
369 const l_paren = p.peek();
370 if (l_paren.id == .l_paren) {
371 _ = p.next();
372 }
373
374 const identifier = p.next();
375 if (identifier.id == .eof) {
376 try p.pp.err(identifier, .macro_name_missing, .{});
377 return null;
378 } else if (!identifier.id.isMacroIdentifier()) {
379 try p.pp.err(identifier, .macro_name_must_be_identifier, .{});
380 return null;
381 }
382
383 if (l_paren.id == .l_paren) {
384 const r_paren = p.next();
385 if (r_paren.id != .r_paren) {
386 try p.pp.err(r_paren, .closing_paren, .{});
387 try p.pp.err(l_paren, .to_match_paren, .{});
388 return null;
389 }
390 }
391
392 const defined = p.pp.defines.contains(p.pp.expandedSlice(identifier));
393 return .{ .signed = @intFromBool(defined) };
394 },
395 .pp_num => {
396 const num = p.next();
397 var number_literal_parser: number_literal.Parser = .{
398 .comp = p.pp.comp,
399 .literal = p.pp.expandedSlice(num),
400 .loc = num.loc,
401 .expansion_locs = num.expansionSlice(),
402 };
403 const parsed = number_literal_parser.parse() catch |err| switch (err) {
404 error.ParsingFailed => return null,
405 else => |e| return e,
406 };
407 if (parsed.is_float or parsed.suffix.isImaginary()) {
408 try p.pp.err(num, .float_literal_in_expr, .{});
409 return null;
410 }
411
412 const base = @backingInt(parsed.prefix);
413 var val: uintmax = 0;
414 var overflow = false;
415 for (parsed.bytes) |c| {
416 const digit: uintmax = switch (c) {
417 '0'...'9' => c - '0',
418 'A'...'Z' => c - 'A' + 10,
419 'a'...'z' => c - 'a' + 10,
420 '\'' => continue,
421 else => unreachable,
422 };
423
424 if (val != 0) {
425 const product, const overflowed = @mulWithOverflow(val, base);
426 if (overflowed != 0) {
427 overflow = true;
428 }
429 val = product;
430 }
431 const sum, const overflowed = @addWithOverflow(val, digit);
432 if (overflowed != 0) overflow = true;
433 val = sum;
434 }
435 if (overflow) {
436 try p.pp.err(num, .int_literal_too_big, .{});
437 }
438 const max_int = std.math.maxInt(intmax);
439 if (val > max_int) {
440 if (parsed.suffix.isSignedInteger() and base == 10) {
441 try p.pp.err(num, .implicitly_unsigned_literal, .{});
442 }
443 return .{ .unsigned = val };
444 }
445 if (parsed.suffix.isSignedInteger()) {
446 return .{ .signed = @intCast(val) };
447 } else {
448 return .{ .unsigned = val };
449 }
450 },
451 .char_literal,
452 .char_literal_utf_8,
453 .char_literal_utf_16,
454 .char_literal_utf_32,
455 .char_literal_wide,
456 => {
457 const literal = p.next();
458 const char_kind = text_literal.Kind.classify(literal.id, .char_literal).?;
459 const comp = p.pp.comp;
460
461 var char_literal_parser: text_literal.Parser = .{
462 .comp = comp,
463 .literal = char_kind.contentSlice(p.pp.expandedSlice(literal)),
464 .kind = char_kind,
465 .max_codepoint = char_kind.maxCodepoint(comp),
466 .loc = literal.loc,
467 .expansion_locs = literal.expansionSlice(),
468 };
469 const parsed = try char_literal_parser.parse();
470 const unsigned = switch (parsed) {
471 .signed => |s| return .{ .signed = s },
472 .unsigned => |u| u,
473 };
474
475 const char_literal_qt = char_kind.charLiteralType(comp);
476 if (char_literal_qt.signedness(comp) == .unsigned or
477 (char_kind == .char and comp.getCharSignedness() == .unsigned))
478 {
479 return .{ .unsigned = unsigned };
480 } else {
481 return .{ .signed = unsigned };
482 }
483 },
484 .plus => {
485 _ = p.next();
486 continue :loop p.peek().id;
487 },
488 .minus => {
489 const minus = p.next();
490 const val = try p.primaryExpr(eval) orelse return null;
491 switch (val) {
492 .signed => |s| {
493 const negated, const overflow = @subWithOverflow(0, s);
494 if (eval and overflow != 0) {
495 try p.pp.err(minus, .overflow, .{});
496 }
497 return .init(negated);
498 },
499 .unsigned => |u| {
500 return .init(-%u);
501 },
502 }
503 },
504 .tilde => {
505 _ = p.next();
506 const val = try p.primaryExpr(eval) orelse return null;
507 switch (val) {
508 inline else => |i| return .init(~i),
509 }
510 },
511 .bang => {
512 _ = p.next();
513 const val = try p.primaryExpr(eval) orelse return null;
514 return .init(!val.toBool());
515 },
516 .keyword_true, .keyword_false => {
517 const literal = p.next();
518 return .init(literal.id == .keyword_true);
519 },
520 else => {
521 const maybe_ident = p.next();
522 if (maybe_ident.id.isMacroIdentifier()) {
523 try p.pp.err(maybe_ident, .undefined_macro, .{p.pp.expandedSlice(maybe_ident)});
524
525 if (p.peek().id == .l_paren) {
526 try p.pp.err(maybe_ident, .fn_macro_undefined, .{p.pp.expandedSlice(maybe_ident)});
527 return null;
528 }
529
530 return .init(0);
531 }
532
533 try p.pp.err(maybe_ident, .invalid_preproc_expr_start, .{});
534 return null;
535 },
536 }
537}
lib/compiler/aro/aro/Source.zig+6-3
......@@ -50,7 +50,7 @@ pub const ExpandedLocation = struct {
5050const Source = @This();
5151
5252path: []const u8,
53buf: []const u8,
53buf: [:0]const u8,
5454id: Id,
5555/// each entry represents a byte position within `buf` where a backslash+newline was deleted
5656/// from the original raw buffer. The same position can appear multiple times if multiple
......@@ -58,10 +58,13 @@ id: Id,
5858splice_locs: []const u32,
5959kind: Kind,
6060
61// Path of the umbrella framework. Slice of `path`.
62umbrella_framework_path: ?[]const u8 = null,
63
6164pub fn lineCol(source: Source, loc: Location) ExpandedLocation {
6265 var start: usize = 0;
6366 // find the start of the line which is either a newline or a splice
64 if (std.mem.lastIndexOfScalar(u8, source.buf[0..loc.byte_offset], '\n')) |some| start = some + 1;
67 if (std.mem.findScalarLast(u8, source.buf[0..loc.byte_offset], '\n')) |some| start = some + 1;
6568 const splice_index: u32 = for (source.splice_locs, 0..) |splice_offset, i| {
6669 if (splice_offset > start) {
6770 if (splice_offset < loc.byte_offset) {
......@@ -101,7 +104,7 @@ pub fn lineCol(source: Source, loc: Location) ExpandedLocation {
101104 // find the end of the line which is either a newline, EOF or a splice
102105 var nl = source.buf.len;
103106 var end_with_splice = false;
104 if (std.mem.indexOfScalar(u8, source.buf[start..], '\n')) |some| nl = some + start;
107 if (std.mem.findScalar(u8, source.buf[start..], '\n')) |some| nl = some + start;
105108 if (source.splice_locs.len > splice_index and nl > source.splice_locs[splice_index] and source.splice_locs[splice_index] > start) {
106109 end_with_splice = true;
107110 nl = source.splice_locs[splice_index];
lib/compiler/aro/aro/StringInterner.zig+1-1
......@@ -19,7 +19,7 @@ pub const StringId = enum(u32) {
1919 }
2020};
2121
22table: std.array_hash_map.String(void) = .empty,
22table: std.StringArrayHashMapUnmanaged(void) = .empty,
2323
2424pub fn deinit(si: *StringInterner, allocator: mem.Allocator) void {
2525 si.table.deinit(allocator);
lib/compiler/aro/aro/SymbolStack.zig+33-21
......@@ -18,7 +18,7 @@ pub const Symbol = struct {
1818 name: StringId,
1919 qt: QualType,
2020 tok: TokenIndex,
21 node: Node.OptIndex = .null,
21 node: Node.Index,
2222 out_of_scope: bool = false,
2323 kind: Kind,
2424 val: Value,
......@@ -176,16 +176,19 @@ pub fn defineTypedef(
176176 qt: QualType,
177177 tok: TokenIndex,
178178 node: Node.Index,
179) !void {
179) !?Node.Index {
180 var old_decl: ?Node.Index = null;
180181 if (s.get(name, .vars)) |prev| {
181182 switch (prev.kind) {
182183 .typedef => {
183184 if (!prev.qt.isInvalid() and !qt.eqlQualified(prev.qt, p.comp)) {
184 if (qt.isInvalid()) return;
185 if (qt.isInvalid()) return null;
185186 const non_typedef_qt = qt.type(p.comp).typedef.base;
186187 const non_typedef_prev_qt = prev.qt.type(p.comp).typedef.base;
187188 try p.err(tok, .redefinition_of_typedef, .{ non_typedef_qt, non_typedef_prev_qt });
188189 if (prev.tok != 0) try p.err(prev.tok, .previous_definition, .{});
190 } else {
191 old_decl = prev.node;
189192 }
190193 },
191194 .enumeration, .decl, .def, .constexpr => {
......@@ -200,9 +203,10 @@ pub fn defineTypedef(
200203 .name = name,
201204 .tok = tok,
202205 .qt = qt,
203 .node = .pack(node),
206 .node = node,
204207 .val = .{},
205208 });
209 return old_decl;
206210}
207211
208212pub fn defineSymbol(
......@@ -214,30 +218,32 @@ pub fn defineSymbol(
214218 node: Node.Index,
215219 val: Value,
216220 constexpr: bool,
217) !void {
221) !?Node.Index {
222 var old_decl: ?Node.Index = null;
218223 if (s.get(name, .vars)) |prev| {
219224 switch (prev.kind) {
220225 .enumeration => {
221 if (qt.isInvalid()) return;
226 if (qt.isInvalid()) return null;
222227 try p.err(tok, .redefinition_different_sym, .{p.tokSlice(tok)});
223228 try p.err(prev.tok, .previous_definition, .{});
224229 },
225230 .decl => {
226231 if (!prev.qt.isInvalid() and !qt.eqlQualified(prev.qt, p.comp)) {
227 if (qt.isInvalid()) return;
232 if (qt.isInvalid()) return null;
228233 try p.err(tok, .redefinition_incompatible, .{p.tokSlice(tok)});
229234 try p.err(prev.tok, .previous_definition, .{});
230235 } else {
231236 if (prev.node.unpack()) |some| p.setTentativeDeclDefinition(some, node);
237 old_decl = prev.node;
232238 }
233239 },
234240 .def, .constexpr => if (!prev.qt.isInvalid()) {
235 if (qt.isInvalid()) return;
241 if (qt.isInvalid()) return null;
236242 try p.err(tok, .redefinition, .{p.tokSlice(tok)});
237243 try p.err(prev.tok, .previous_definition, .{});
238244 },
239245 .typedef => {
240 if (qt.isInvalid()) return;
246 if (qt.isInvalid()) return null;
241247 try p.err(tok, .redefinition_different_sym, .{p.tokSlice(tok)});
242248 try p.err(prev.tok, .previous_definition, .{});
243249 },
......@@ -250,9 +256,10 @@ pub fn defineSymbol(
250256 .name = name,
251257 .tok = tok,
252258 .qt = qt,
253 .node = .pack(node),
259 .node = node,
254260 .val = val,
255261 });
262 return old_decl;
256263}
257264
258265/// Get a pointer to the named symbol in the innermost scope.
......@@ -271,35 +278,38 @@ pub fn declareSymbol(
271278 qt: QualType,
272279 tok: TokenIndex,
273280 node: Node.Index,
274) !void {
281) !?Node.Index {
282 var old_decl: ?Node.Index = null;
275283 if (s.get(name, .vars)) |prev| {
276284 switch (prev.kind) {
277285 .enumeration => {
278 if (qt.isInvalid()) return;
286 if (qt.isInvalid()) return null;
279287 try p.err(tok, .redefinition_different_sym, .{p.tokSlice(tok)});
280288 try p.err(prev.tok, .previous_definition, .{});
281289 },
282290 .decl => {
283291 if (!prev.qt.isInvalid() and !qt.eqlQualified(prev.qt, p.comp)) {
284 if (qt.isInvalid()) return;
292 if (qt.isInvalid()) return null;
285293 try p.err(tok, .redefinition_incompatible, .{p.tokSlice(tok)});
286294 try p.err(prev.tok, .previous_definition, .{});
287295 } else {
288296 if (prev.node.unpack()) |some| p.setTentativeDeclDefinition(node, some);
297 old_decl = prev.node;
289298 }
290299 },
291300 .def, .constexpr => {
292301 if (!prev.qt.isInvalid() and !qt.eqlQualified(prev.qt, p.comp)) {
293 if (qt.isInvalid()) return;
302 if (qt.isInvalid()) return null;
294303 try p.err(tok, .redefinition_incompatible, .{p.tokSlice(tok)});
295304 try p.err(prev.tok, .previous_definition, .{});
296305 } else {
297306 if (prev.node.unpack()) |some| p.setTentativeDeclDefinition(node, some);
298 return;
307 // Attributes from definitions are not merged with new declarations.
308 return null;
299309 }
300310 },
301311 .typedef => {
302 if (qt.isInvalid()) return;
312 if (qt.isInvalid()) return null;
303313 try p.err(tok, .redefinition_different_sym, .{p.tokSlice(tok)});
304314 try p.err(prev.tok, .previous_definition, .{});
305315 },
......@@ -311,7 +321,7 @@ pub fn declareSymbol(
311321 .name = name,
312322 .tok = tok,
313323 .qt = qt,
314 .node = .pack(node),
324 .node = node,
315325 .val = .{},
316326 });
317327
......@@ -322,11 +332,12 @@ pub fn declareSymbol(
322332 .name = name,
323333 .tok = tok,
324334 .qt = qt,
325 .node = .pack(node),
335 .node = node,
326336 .val = .{},
327337 .out_of_scope = true,
328338 });
329339 }
340 return old_decl;
330341}
331342
332343pub fn defineParam(
......@@ -335,7 +346,7 @@ pub fn defineParam(
335346 name: StringId,
336347 qt: QualType,
337348 tok: TokenIndex,
338 node: ?Node.Index,
349 node: Node.Index,
339350) !void {
340351 if (s.get(name, .vars)) |prev| {
341352 switch (prev.kind) {
......@@ -343,6 +354,7 @@ pub fn defineParam(
343354 if (qt.isInvalid()) return;
344355 try p.err(tok, .redefinition_of_parameter, .{p.tokSlice(tok)});
345356 try p.err(prev.tok, .previous_definition, .{});
357 return;
346358 },
347359 .typedef => {
348360 if (qt.isInvalid()) return;
......@@ -357,7 +369,7 @@ pub fn defineParam(
357369 .name = name,
358370 .tok = tok,
359371 .qt = qt,
360 .node = .packOpt(node),
372 .node = node,
361373 .val = .{},
362374 });
363375}
......@@ -430,6 +442,6 @@ pub fn defineEnumeration(
430442 .tok = tok,
431443 .qt = qt,
432444 .val = val,
433 .node = .pack(node),
445 .node = node,
434446 });
435447}
lib/compiler/aro/aro/Target.zig+391-38
......@@ -10,6 +10,8 @@ const builtin = @import("builtin");
1010const LangOpts = @import("LangOpts.zig");
1111const QualType = @import("TypeStore.zig").QualType;
1212
13const assert = std.debug.assert;
14
1315pub const Vendor = enum {
1416 apple,
1517 pc,
......@@ -60,6 +62,8 @@ pub const SubArch = enum {
6062 arm_v6m,
6163 arm_v6t2,
6264 arm_v7,
65 arm_v7a,
66 arm_v7r,
6367 arm_v7em,
6468 arm_v7k,
6569 arm_v7m,
......@@ -135,6 +139,7 @@ pub const SubArch = enum {
135139 .arm_v8_9a => aarch64.v8_9a,
136140 .arm_v8m_baseline => return null,
137141 .arm_v8r => aarch64.v8r,
142 .arm_v9 => aarch64.v9a,
138143 .arm_v9_1a => aarch64.v9_1a,
139144 .arm_v9_2a => aarch64.v9_2a,
140145 .arm_v9_3a => aarch64.v9_3a,
......@@ -158,19 +163,69 @@ pub const SubArch = enum {
158163 .arm_v6m => arm.v6m,
159164 .arm_v6t2 => arm.v6t2,
160165 .arm_v7 => arm.has_v7,
166 .arm_v7a => arm.v7a,
167 .arm_v7r => arm.v7r,
161168 .arm_v7em => arm.v7em,
162169 .arm_v7k => return null,
163170 .arm_v7m => arm.v7m,
164171 .arm_v7s => return null,
165172 .arm_v7ve => arm.v7ve,
166 .arm_v8 => arm.has_v8,
173 .arm_v8 => arm.v8a,
167174 .arm_v8r => arm.v8r,
175 .arm_v8_1a => arm.v8_1a,
176 .arm_v8_1m_mainline => arm.v8_1m_main,
177 .arm_v8_2a => arm.v8_2a,
178 .arm_v8_3a => arm.v8_3a,
179 .arm_v8_4a => arm.v8_4a,
180 .arm_v8_5a => arm.v8_5a,
181 .arm_v8_6a => arm.v8_6a,
182 .arm_v8_7a => arm.v8_7a,
183 .arm_v8_8a => arm.v8_8a,
184 .arm_v8_9a => arm.v8_9a,
185 .arm_v8m_baseline => arm.v8m,
186 .arm_v8m_mainline => arm.v8m_main,
168187 .arm_v9 => arm.v9a,
188 .arm_v9_1a => arm.v9_1a,
189 .arm_v9_2a => arm.v9_2a,
190 .arm_v9_3a => arm.v9_3a,
191 .arm_v9_4a => arm.v9_4a,
192 .arm_v9_5a => arm.v9_5a,
193 .arm_v9_6a => arm.v9_6a,
169194 else => return null,
170195 });
171196 }
172197 return null;
173198 }
199
200 pub fn toCpuModel(sub: SubArch, arch: Cpu.Arch) ?*const Cpu.Model {
201 if (arch.isArm()) {
202 const cpu = std.Target.arm.cpu;
203 return switch (sub) {
204 .arm_v4t => &cpu.arm7tdmi,
205 .arm_v5 => &cpu.arm10tdmi,
206 .arm_v5te => &cpu.arm1022e,
207 .arm_v6 => &cpu.arm1136jf_s,
208 .arm_v6k => &cpu.mpcore,
209 .arm_v6t2 => &cpu.arm1156t2_s,
210 .arm_v6m => &cpu.cortex_m0,
211 .arm_v7r => &cpu.cortex_r4,
212 .arm_v7m => &cpu.cortex_m3,
213 .arm_v7em => &cpu.cortex_m4,
214 else => null,
215 };
216 } else if (arch.isMIPS32()) {
217 return switch (sub) {
218 .mips_r6 => &std.Target.mips.cpu.mips32r6,
219 else => null,
220 };
221 } else if (arch.isMIPS64()) {
222 return switch (sub) {
223 .mips_r6 => &std.Target.mips.cpu.mips64r6,
224 else => null,
225 };
226 }
227 return null;
228 }
174229};
175230
176231const Target = @This();
......@@ -217,7 +272,12 @@ pub fn intMaxType(target: *const Target) QualType {
217272 .aarch64,
218273 .aarch64_be,
219274 .sparc64,
220 => if (target.os.tag != .openbsd) return .long,
275 => {
276 if (target.os.tag == .openbsd) return .long_long;
277 if (target.os.tag == .windows) return .long_long;
278 if (target.os.tag.isDarwin() and target.abi == .ilp32) return .long_long;
279 return .long;
280 },
221281
222282 .bpfel,
223283 .bpfeb,
......@@ -231,11 +291,20 @@ pub fn intMaxType(target: *const Target) QualType {
231291 .x86_64 => switch (target.os.tag) {
232292 .windows, .openbsd, .uefi => {},
233293 else => switch (target.abi) {
234 .gnux32, .muslx32 => {},
294 .gnux32,
295 .muslx32,
296 .x32,
297 .gnuabin32,
298 .muslabin32,
299 .abin32,
300 .ilp32,
301 => {},
235302 else => return .long,
236303 },
237304 },
238305
306 .mips, .mipsel, .sparc => {}, // TODO
307
239308 else => {},
240309 }
241310 return .long_long;
......@@ -422,6 +491,17 @@ pub fn minFunctionAlignment(target: *const Target) u8 {
422491 };
423492}
424493
494pub fn isBlocksSupported(target: *const Target) bool {
495 if (target.os.tag.isDarwin()) {
496 // per https://clang.llvm.org/docs/Block-ABI-Apple.html#id1, usage on macos prior to 10.6 is undefined
497 if (target.os.isAtLeast(.macos, .{ .major = 10, .minor = 6, .patch = 0 })) |sup| return sup;
498 // TODO: do iOS or other OSes have a min version?
499 return target.os.tag != .macos;
500 }
501
502 return false;
503}
504
425505pub fn isTlsSupported(target: *const Target) bool {
426506 if (target.os.tag.isDarwin()) {
427507 var supported = false;
......@@ -523,10 +603,7 @@ pub fn systemCompiler(target: *const Target) LangOpts.Compiler {
523603 // the rest for documentation as fn returns .clang
524604 if (target.os.tag.isDarwin() or
525605 target.abi.isAndroid() or
526 target.os.tag == .dragonfly or
527 target.os.tag == .freebsd or
528 target.os.tag == .netbsd or
529 target.os.tag == .openbsd or
606 target.os.tag.isBSD() or
530607 target.os.tag == .fuchsia or
531608 target.os.tag == .illumos or
532609 target.os.tag == .haiku or
......@@ -568,6 +645,16 @@ pub fn hasHalfPrecisionFloatABI(target: *const Target) bool {
568645 };
569646}
570647
648pub fn hasAArch64ACLETypes(target: *const Target) bool {
649 return target.cpu.arch.isAARCH64();
650}
651
652pub fn hasProtectedVisibility(target: *const Target) bool {
653 if (target.cpu.arch.isWasm()) return false;
654 if (target.ofmt == .macho) return false;
655 return true;
656}
657
571658pub const FPSemantics = enum {
572659 None,
573660 IEEEHalf,
......@@ -725,6 +812,7 @@ pub fn parseArchName(query: []const u8) ?ArchSubArch {
725812 .{ "v5t", .arm_v5 },
726813 .{ "v5e", .arm_v5te },
727814 .{ "v5te", .arm_v5te },
815 .{ "v5tel", .arm_v5te },
728816 .{ "v6", .arm_v6 },
729817 .{ "v6j", .arm_v6 },
730818 .{ "v6k", .arm_v6k },
......@@ -737,14 +825,13 @@ pub fn parseArchName(query: []const u8) ?ArchSubArch {
737825 .{ "v6zk", .arm_v6k },
738826 .{ "v6kz", .arm_v6k },
739827 .{ "v7", .arm_v7 },
740 .{ "v7a", .arm_v7 },
828 .{ "v7a", .arm_v7a },
829 .{ "v7-a", .arm_v7a },
741830 .{ "v7hl", .arm_v7 },
742831 .{ "v7l", .arm_v7 },
743 .{ "v7-a", .arm_v7 },
744 .{ "v7r", .arm_v7 },
745 .{ "v7r", .arm_v7 },
746 .{ "v7m", .arm_v7s },
747 .{ "v7-m", .arm_v7s },
832 .{ "v7r", .arm_v7r },
833 .{ "v7m", .arm_v7m },
834 .{ "v7-m", .arm_v7m },
748835 .{ "v7em", .arm_v7em },
749836 .{ "v7e-m", .arm_v7em },
750837 .{ "v8", .arm_v8 },
......@@ -753,16 +840,16 @@ pub fn parseArchName(query: []const u8) ?ArchSubArch {
753840 .{ "v8-a", .arm_v8 },
754841 .{ "v8.1a", .arm_v8_1a },
755842 .{ "v8.1-a", .arm_v8_1a },
756 .{ "v82.a", .arm_v8_2a },
757 .{ "v82.-a", .arm_v8_2a },
758 .{ "v83.a", .arm_v8_3a },
759 .{ "v83.-a", .arm_v8_3a },
760 .{ "v84.a", .arm_v8_4a },
761 .{ "v84.-a", .arm_v8_4a },
762 .{ "v85.a", .arm_v8_5a },
763 .{ "v85.-a", .arm_v8_5a },
764 .{ "v86.a", .arm_v8_6a },
765 .{ "v86.-a", .arm_v8_6a },
843 .{ "v8.2a", .arm_v8_2a },
844 .{ "v8.2-a", .arm_v8_2a },
845 .{ "v8.3a", .arm_v8_3a },
846 .{ "v8.3-a", .arm_v8_3a },
847 .{ "v8.4a", .arm_v8_4a },
848 .{ "v8.4-a", .arm_v8_4a },
849 .{ "v8.5a", .arm_v8_5a },
850 .{ "v8.5-a", .arm_v8_5a },
851 .{ "v8.6a", .arm_v8_6a },
852 .{ "v8.6-a", .arm_v8_6a },
766853 .{ "v8.7a", .arm_v8_7a },
767854 .{ "v8.7-a", .arm_v8_7a },
768855 .{ "v8.8a", .arm_v8_8a },
......@@ -772,8 +859,8 @@ pub fn parseArchName(query: []const u8) ?ArchSubArch {
772859 .{ "v8r", .arm_v8r },
773860 .{ "v8-r", .arm_v8r },
774861 .{ "v9", .arm_v9 },
775 .{ "v9a", .arm_v9 },
776 .{ "v9-a", .arm_v9 },
862 .{ "v9a", .arm_v9_1a },
863 .{ "v9-a", .arm_v9_1a },
777864 .{ "v9.1a", .arm_v9_1a },
778865 .{ "v9.1-a", .arm_v9_1a },
779866 .{ "v9.2a", .arm_v9_2a },
......@@ -879,14 +966,17 @@ pub fn parseOsName(query: []const u8) ?Os.Tag {
879966 }).get(lower) orelse return null;
880967}
881968
882pub fn isOs(target: *const Target, query: []const u8) bool {
883 const parsed = parseOsName(query) orelse return false;
884
885 if (parsed.isDarwin()) {
886 // clang treats all darwin OS's as equivalent
887 return target.os.tag.isDarwin();
969pub fn isOs(target: *const Target, query_str: []const u8) bool {
970 var query: std.Target.Query = .{};
971 parseOs(&query, query_str, null) catch return false;
972 if (query.os_tag) |tag| {
973 if (tag.isDarwin()) {
974 // clang treats all darwin OS's as equivalent
975 return target.os.tag.isDarwin();
976 }
977 return target.os.tag == tag;
888978 }
889 return parsed == target.os.tag;
979 return false;
890980}
891981
892982pub fn parseVendorName(query: []const u8) ?Vendor {
......@@ -989,9 +1079,11 @@ pub fn get32BitArchVariant(target: *const Target) ?Target {
9891079 .avr,
9901080 .bpfeb,
9911081 .bpfel,
1082 .ez80,
9921083 .kvx,
9931084 .msp430,
9941085 .s390x,
1086 .spork8,
9951087 .ve,
9961088 => return null,
9971089
......@@ -1006,6 +1098,7 @@ pub fn get32BitArchVariant(target: *const Target) ?Target {
10061098 .lanai,
10071099 .loongarch32,
10081100 .m68k,
1101 .m88k,
10091102 .microblaze,
10101103 .microblazeel,
10111104 .mips,
......@@ -1057,10 +1150,12 @@ pub fn get64BitArchVariant(target: *const Target) ?Target {
10571150 .arceb,
10581151 .avr,
10591152 .csky,
1153 .ez80,
10601154 .hexagon,
10611155 .kalimba,
10621156 .lanai,
10631157 .m68k,
1158 .m88k,
10641159 .microblaze,
10651160 .microblazeel,
10661161 .msp430,
......@@ -1068,6 +1163,7 @@ pub fn get64BitArchVariant(target: *const Target) ?Target {
10681163 .propeller,
10691164 .sh,
10701165 .sheb,
1166 .spork8,
10711167 .xcore,
10721168 .xtensa,
10731169 .xtensaeb,
......@@ -1175,16 +1271,19 @@ pub fn toLLVMTriple(target: *const Target, buf: []u8) []const u8 {
11751271 // Note: these are not supported in LLVM; this is the Zig arch name
11761272 .alpha => "alpha",
11771273 .arceb => "arceb",
1274 .ez80 => "ez80",
11781275 .hppa => "hppa",
11791276 .hppa64 => "hppa64",
11801277 .kalimba => "kalimba",
11811278 .kvx => "kvx",
11821279 .microblaze => "microblaze",
11831280 .microblazeel => "microblazeel",
1281 .m88k => "m88k",
11841282 .or1k => "or1k",
11851283 .propeller => "propeller",
11861284 .sh => "sh",
11871285 .sheb => "sheb",
1286 .spork8 => "spork8",
11881287 .x86_16 => "i86",
11891288 .xtensaeb => "xtensaeb",
11901289 };
......@@ -1228,12 +1327,18 @@ pub fn toLLVMTriple(target: *const Target, buf: []u8) []const u8 {
12281327 .windows => "windows",
12291328
12301329 .@"3ds",
1330 .ashetos,
1331 .gba,
1332 .wiiu,
1333 .@"switch",
12311334 .opencl,
12321335 .opengl,
12331336 .other,
12341337 .plan9,
1235 .vita,
12361338 .psp,
1339 .psx,
1340 .tios,
1341 .vita,
12371342 => "unknown",
12381343 };
12391344 writer.writeAll(llvm_os) catch unreachable;
......@@ -1250,10 +1355,14 @@ pub fn toLLVMTriple(target: *const Target, buf: []u8) []const u8 {
12501355
12511356 const llvm_abi = switch (target.abi) {
12521357 .none => if (target.os.tag == .maccatalyst) "macabi" else "unknown",
1253 .ilp32 => "unknown",
1358 .abin32,
1359 .ilp32,
1360 .x32,
1361 => "unknown",
12541362
12551363 .android => "android",
12561364 .androideabi => "androideabi",
1365 .call0 => "call0",
12571366 .eabi => "eabi",
12581367 .eabihf => "eabihf",
12591368 .gnu => "gnu",
......@@ -1534,7 +1643,13 @@ test "alignment functions - smoke test" {
15341643}
15351644
15361645test "target size/align tests" {
1537 var comp: @import("Compilation.zig") = undefined;
1646 var comp: @import("Compilation.zig") = .{
1647 .gpa = undefined,
1648 .arena = undefined,
1649 .io = undefined,
1650 .cwd = undefined,
1651 .diagnostics = undefined,
1652 };
15381653
15391654 const linux: Os = .{ .tag = .linux, .version_range = .{ .none = {} } };
15401655 const x86_target: Target = .{
......@@ -1574,7 +1689,7 @@ pub fn cTypeAlignment(target: *const Target, c_type: std.Target.CType) u16 {
15741689}
15751690
15761691pub fn standardDynamicLinkerPath(target: *const Target) std.Target.DynamicLinker {
1577 return .standard(target.cpu, target.os, target.abi);
1692 return .standard(target.cpu, target.os.tag, target.abi);
15781693}
15791694
15801695/// Parse ABI string in `<abi>(.?<version>)?` format.
......@@ -1644,6 +1759,32 @@ test parseAbi {
16441759 try testing.expect(query.abi == .ilp32);
16451760}
16461761
1762/// Version of `std.Target.Query.parseVersion`, but with following changes:
1763/// * Supports only 1, 2 or 3 version components (major, minor, [patch]). If 2nd or 3rd component is omitted, it will be 0.
1764pub fn parseVersion(ver: []const u8) error{ InvalidVersion, Overflow }!std.SemanticVersion {
1765 const parseVersionComponentFn = (struct {
1766 fn parseVersionComponentInner(component: []const u8) error{ InvalidVersion, Overflow }!usize {
1767 return std.fmt.parseUnsigned(usize, component, 10) catch |err| switch (err) {
1768 error.InvalidCharacter => return error.InvalidVersion,
1769 error.Overflow => |e| return e,
1770 };
1771 }
1772 }).parseVersionComponentInner;
1773
1774 var version_components = mem.splitScalar(u8, ver, '.');
1775
1776 const major = version_components.first();
1777 const minor = version_components.next() orelse "0";
1778 const patch = version_components.next() orelse "0";
1779 if (version_components.next() != null) return error.InvalidVersion;
1780
1781 return .{
1782 .major = try parseVersionComponentFn(major),
1783 .minor = try parseVersionComponentFn(minor),
1784 .patch = try parseVersionComponentFn(patch),
1785 };
1786}
1787
16471788/// Parse OS string with common aliases in `<os>(.?<version>(...<version>))?` format.
16481789///
16491790/// `native` <os> results in `builtin.os.tag`.
......@@ -1678,6 +1819,7 @@ pub fn parseOs(result: *std.Target.Query, text: []const u8, version_string: ?*[]
16781819 }
16791820 },
16801821 } else .{ checkOs(text) orelse return error.UnknownOs, "" };
1822
16811823 result.os_tag = tag;
16821824 if (version_string) |ptr| ptr.* = version_text;
16831825
......@@ -1686,13 +1828,13 @@ pub fn parseOs(result: *std.Target.Query, text: []const u8, version_string: ?*[]
16861828 .semver, .hurd, .linux => {
16871829 var range_it = mem.splitSequence(u8, version_text, "...");
16881830 result.os_version_min = .{
1689 .semver = std.Target.Query.parseVersion(range_it.first()) catch |er| switch (er) {
1831 .semver = parseVersion(range_it.first()) catch |er| switch (er) {
16901832 error.Overflow, error.InvalidVersion => return error.InvalidOsVersion,
16911833 },
16921834 };
16931835 if (range_it.next()) |v| {
16941836 result.os_version_max = .{
1695 .semver = std.Target.Query.parseVersion(v) catch |er| switch (er) {
1837 .semver = parseVersion(v) catch |er| switch (er) {
16961838 error.Overflow, error.InvalidVersion => return error.InvalidOsVersion,
16971839 },
16981840 };
......@@ -1716,6 +1858,71 @@ pub fn parseOs(result: *std.Target.Query, text: []const u8, version_string: ?*[]
17161858 };
17171859}
17181860
1861pub fn armVersion(target: Target) ?struct { version: u8, string: []const u8 } {
1862 assert(target.cpu.arch.isArm());
1863 for ([_]struct { std.Target.arm.Feature, []const u8 }{
1864 .{ .v9_6a, "9_6A" },
1865 .{ .v9_5a, "9_5A" },
1866 .{ .v9_4a, "9_4A" },
1867 .{ .v9_3a, "9_3A" },
1868 .{ .v9_2a, "9_2A" },
1869 .{ .v9_1a, "9_1A" },
1870 .{ .v9a, "9A" },
1871
1872 .{ .v8_9a, "8_9A" },
1873 .{ .v8_8a, "8_8A" },
1874 .{ .v8_7a, "8_7A" },
1875 .{ .v8_6a, "8_6A" },
1876 .{ .v8_5a, "8_5A" },
1877 .{ .v8_4a, "8_4A" },
1878 .{ .v8_3a, "8_3A" },
1879 .{ .v8_2a, "8_2A" },
1880 .{ .v8_1a, "8_1A" },
1881 .{ .v8_1m_main, "8_1M_MAIN" },
1882 .{ .v8a, "8A" },
1883 .{ .v8r, "8R" },
1884 .{ .v8m_main, "8M_MAIN" },
1885 .{ .v8m, "8M_BASE" },
1886
1887 .{ .v7ve, "7VE" },
1888 .{ .v7a, "7A" },
1889 .{ .v7r, "7R" },
1890 .{ .v7m, "7M" },
1891 .{ .v7em, "7EM" },
1892 .{ .has_v7, "7A" }, // bare armv7 with no profile: default to A
1893
1894 .{ .v6t2, "6T2" },
1895 .{ .v6kz, "6KZ" },
1896 .{ .v6k, "6K" },
1897 .{ .v6j, "6J" },
1898 .{ .v6sm, "6SM" },
1899 .{ .v6m, "6M" },
1900 .{ .v6, "6" },
1901
1902 .{ .v5tej, "5TEJ" },
1903 .{ .v5te, "5TE" },
1904 .{ .v5t, "5T" },
1905
1906 .{ .v4t, "4T" },
1907 .{ .v4, "4" },
1908
1909 .{ .v3m, "3M" },
1910 .{ .v3, "3" },
1911
1912 .{ .v2a, "2A" },
1913 .{ .v2, "2" },
1914 }) |fs| {
1915 if (target.cpu.features.isEnabled(@backingInt(fs[0]))) {
1916 return .{
1917 .version = fs[1][0] - '0',
1918 .string = fs[1],
1919 };
1920 }
1921 }
1922
1923 return null;
1924}
1925
17191926test parseOs {
17201927 const V = std.Target.Query.OsVersion;
17211928 var query: std.Target.Query = .{};
......@@ -1748,4 +1955,150 @@ test parseOs {
17481955 try parseOs(&query, "win32.win10", null);
17491956 try testing.expect(query.os_tag == .windows);
17501957 try testing.expectEqual(query.os_version_min, V{ .windows = .win10 });
1958
1959 try parseOs(&query, "ios17", null);
1960 try testing.expect(query.os_tag == .ios);
1961 try testing.expectEqual(query.os_version_min, V{ .semver = .{ .major = 17, .minor = 0, .patch = 0 } });
1962
1963 try parseOs(&query, "darwin26", null);
1964 try testing.expect(query.os_tag == .macos);
1965 try testing.expectEqual(query.os_version_min, V{ .semver = .{ .major = 26, .minor = 0, .patch = 0 } });
1966}
1967
1968pub const MipsAbi = enum { o32, n32, n64 };
1969
1970pub fn mipsAbi(target: *const Target) MipsAbi {
1971 return switch (target.abi) {
1972 .gnuabin32, .muslabin32, .abin32 => .n32,
1973 else => switch (target.cpu.arch) {
1974 .mips, .mipsel => .o32,
1975 .mips64, .mips64el => .n64,
1976 else => unreachable,
1977 },
1978 };
1979}
1980
1981pub const MipsFpMode = enum { fp32, fp64, fpxx };
1982
1983/// Returns the default MIPS floating-point mode for the target.
1984pub fn defaultMipsFpMode(target: *const Target) MipsFpMode {
1985 const cpu = std.Target.mips.cpu;
1986 if (target.cpu.model == &cpu.mips32r6 or
1987 target.mipsAbi() == .n32 or target.mipsAbi() == .n64) return .fp64;
1988 if (target.cpu.model == &cpu.mips1) return .fp32;
1989 return .fpxx;
1990}
1991
1992pub fn mipsIsaRev(target: *const Target) u8 {
1993 const cpu = std.Target.mips.cpu;
1994 const model = target.cpu.model;
1995 // clang: MipsTargetInfo::getISARev, clang/lib/Basic/Targets/Mips.cpp
1996 if (model == &cpu.mips32 or model == &cpu.mips64) return 1;
1997 if (model == &cpu.mips32r2 or model == &cpu.mips64r2 or
1998 model == &cpu.octeon or model == &cpu.@"octeon+") return 2;
1999 if (model == &cpu.mips32r3 or model == &cpu.mips64r3) return 3;
2000 if (model == &cpu.mips32r5 or model == &cpu.mips64r5 or model == &cpu.p5600) return 5;
2001 if (model == &cpu.mips32r6 or model == &cpu.mips64r6 or
2002 model == &cpu.i6400 or model == &cpu.i6500) return 6;
2003 return 0;
2004}
2005
2006/// Returns the CPU model based on arch, os, abi and vendor
2007pub fn cpuModelForTargetQuadruple(
2008 arch: Cpu.Arch,
2009 opt_os_tag: ?Os.Tag,
2010 opt_abi: ?Abi,
2011 vendor: Vendor,
2012 sub_arch: ?SubArch,
2013) ?*const Cpu.Model {
2014 const os_tag = opt_os_tag orelse builtin.os.tag;
2015 const abi = opt_abi orelse builtin.abi;
2016
2017 switch (arch) {
2018 .arm, .armeb, .thumb, .thumbeb => {
2019 const cpu = std.Target.arm.cpu;
2020
2021 if (sub_arch) |sub| {
2022 switch (os_tag) {
2023 .freebsd, .netbsd, .openbsd, .haiku => switch (sub) {
2024 .arm_v6 => return &cpu.arm1176jzf_s,
2025 .arm_v7 => return &cpu.cortex_a8,
2026 else => {},
2027 },
2028 // clang: `parseArchVersion(MArch) <= 7`
2029 .windows => switch (sub) {
2030 .arm_v4t,
2031 .arm_v5,
2032 .arm_v5te,
2033 .arm_v6,
2034 .arm_v6k,
2035 .arm_v6m,
2036 .arm_v6t2,
2037 .arm_v7,
2038 .arm_v7a,
2039 .arm_v7r,
2040 .arm_v7em,
2041 .arm_v7k,
2042 .arm_v7m,
2043 .arm_v7s,
2044 .arm_v7ve,
2045 => return &cpu.cortex_a9,
2046 else => {},
2047 },
2048 .ios, .macos, .tvos, .watchos, .driverkit, .visionos => switch (sub) {
2049 .arm_v7k => return &cpu.cortex_a7,
2050 else => {},
2051 },
2052 else => {},
2053 }
2054 return null;
2055 }
2056
2057 return switch (os_tag) {
2058 .windows => &cpu.cortex_a9,
2059 .haiku => &cpu.arm1176jzf_s,
2060 .netbsd => switch (abi) {
2061 .eabi, .eabihf, .gnueabi, .gnueabihf => &cpu.arm926ej_s,
2062 else => &cpu.strongarm,
2063 },
2064 .openbsd => &cpu.cortex_a8,
2065 .fuchsia => &cpu.cortex_a53,
2066 else => switch (abi) {
2067 .eabihf, .gnueabihf, .musleabihf => &cpu.arm1176jzf_s,
2068 else => &cpu.arm7tdmi,
2069 },
2070 };
2071 },
2072 .mips, .mipsel, .mips64, .mips64el => {
2073 const cpu = std.Target.mips.cpu;
2074 const is_64 = arch.isMIPS64();
2075
2076 // see clang: `mips::getMipsCPUAndABI`,
2077 var model: *const Cpu.Model = if (is_64) &cpu.mips64r2 else &cpu.mips32r2;
2078
2079 if (vendor == .imagination_technologies and abi.isGnu())
2080 model = if (is_64) &cpu.mips64r6 else &cpu.mips32r6;
2081
2082 if (sub_arch == .mips_r6)
2083 model = if (is_64) &cpu.mips64r6 else &cpu.mips32r6;
2084
2085 if (os_tag == .openbsd and is_64)
2086 model = &cpu.mips3;
2087
2088 if (os_tag == .freebsd)
2089 model = if (is_64) &cpu.mips3 else &cpu.mips2;
2090
2091 return model;
2092 },
2093 else => return null,
2094 }
2095}
2096
2097pub fn armHasDsp(target: *const Target) bool {
2098 assert(target.cpu.arch.isArm());
2099
2100 if (target.cpu.has(.arm, .mclass)) return target.cpu.has(.arm, .dsp);
2101
2102 const v = target.armVersion() orelse return false;
2103 return v.version >= 6 or mem.startsWith(u8, v.string, "5TE");
17512104}
lib/compiler/aro/aro/Tokenizer.zig+476-411
......@@ -5,6 +5,9 @@ const Compilation = @import("Compilation.zig");
55const LangOpts = @import("LangOpts.zig");
66const Source = @import("Source.zig");
77
8pub const number_literal = @import("Tokenizer/number_literal.zig");
9pub const text_literal = @import("Tokenizer/text_literal.zig");
10
811/// Value for valid escapes indicates how many characters to consume, not counting leading backslash
912const UCNKind = enum(u8) {
1013 /// Just `\`
......@@ -90,10 +93,6 @@ pub const Token = struct {
9093 /// `/* */` style comment without a closing `*/` before EOF
9194 unterminated_comment,
9295
93 /// Integer literal tokens generated by preprocessor.
94 one,
95 zero,
96
9796 bang,
9897 bang_equal,
9998 pipe,
......@@ -283,8 +282,10 @@ pub const Token = struct {
283282 keyword_asm,
284283 keyword_asm1,
285284 keyword_asm2,
285 keyword_thread,
286286 /// __float128
287287 keyword_float128_1,
288 keyword_int24,
288289 keyword_int128,
289290 keyword_imag1,
290291 keyword_imag2,
......@@ -320,6 +321,10 @@ pub const Token = struct {
320321 keyword_forceinline2,
321322 keyword_unaligned,
322323 keyword_unaligned2,
324 keyword_ptr64,
325 keyword_ptr32,
326 keyword_sptr,
327 keyword_uptr,
323328
324329 // Type nullability
325330 keyword_nonnull,
......@@ -432,6 +437,7 @@ pub const Token = struct {
432437 .keyword_noreturn,
433438 .keyword_static_assert,
434439 .keyword_thread_local,
440 .keyword_thread,
435441 .identifier,
436442 .extended_identifier,
437443 .keyword_typeof,
......@@ -454,6 +460,7 @@ pub const Token = struct {
454460 .keyword_asm1,
455461 .keyword_asm2,
456462 .keyword_float128_1,
463 .keyword_int24,
457464 .keyword_int128,
458465 .keyword_imag1,
459466 .keyword_imag2,
......@@ -486,6 +493,10 @@ pub const Token = struct {
486493 .keyword_forceinline2,
487494 .keyword_unaligned,
488495 .keyword_unaligned2,
496 .keyword_ptr64,
497 .keyword_ptr32,
498 .keyword_sptr,
499 .keyword_uptr,
489500 .keyword_nonnull,
490501 .keyword_nullable,
491502 .keyword_nullable_result,
......@@ -581,9 +592,6 @@ pub const Token = struct {
581592 .comment,
582593 => null,
583594
584 .zero => "0",
585 .one => "1",
586
587595 .nl,
588596 .eof,
589597 .macro_param,
......@@ -700,6 +708,7 @@ pub const Token = struct {
700708 .keyword_noreturn => "_Noreturn",
701709 .keyword_static_assert => "_Static_assert",
702710 .keyword_thread_local => "_Thread_local",
711 .keyword_thread => "__thread",
703712 .keyword_bit_int => "_BitInt",
704713 .keyword_c23_alignas => "alignas",
705714 .keyword_c23_alignof => "alignof",
......@@ -759,6 +768,7 @@ pub const Token = struct {
759768 .keyword_asm1 => "__asm",
760769 .keyword_asm2 => "__asm__",
761770 .keyword_float128_1 => "__float128",
771 .keyword_int24 => "__int24",
762772 .keyword_int128 => "__int128",
763773 .keyword_imag1 => "__imag",
764774 .keyword_imag2 => "__imag__",
......@@ -790,6 +800,10 @@ pub const Token = struct {
790800 .keyword_forceinline2 => "_forceinline",
791801 .keyword_unaligned => "__unaligned",
792802 .keyword_unaligned2 => "_unaligned",
803 .keyword_ptr64 => "__ptr64",
804 .keyword_ptr32 => "__ptr32",
805 .keyword_sptr => "__sptr",
806 .keyword_uptr => "__uptr",
793807 .keyword_nonnull => "_Nonnull",
794808 .keyword_nullable => "_Nullable",
795809 .keyword_nullable_result => "_Nullable_result",
......@@ -892,11 +906,9 @@ pub const Token = struct {
892906 }
893907
894908 pub fn shouldTrackHideset(id: Id, context: enum { func, obj }) bool {
895 return switch (id) {
896 .identifier, .extended_identifier => true,
897 .r_paren => context == .func,
898 else => false,
899 };
909 if (id.isMacroIdentifier()) return true;
910 if (id == .r_paren and context == .func) return true;
911 return false;
900912 }
901913 };
902914
......@@ -913,6 +925,8 @@ pub const Token = struct {
913925 .keyword_asm => if (standard.isGNU()) kw else .identifier,
914926 .keyword_declspec => if (langopts.declspec_attrs) kw else .identifier,
915927
928 .keyword_int24 => if (langopts.has_int24) kw else .identifier,
929
916930 .keyword_c23_alignas,
917931 .keyword_c23_alignof,
918932 .keyword_c23_bool,
......@@ -923,8 +937,6 @@ pub const Token = struct {
923937 .keyword_false,
924938 .keyword_nullptr,
925939 .keyword_typeof_unqual,
926 .keyword_elifdef,
927 .keyword_elifndef,
928940 => if (standard.atLeast(.c23)) kw else .identifier,
929941
930942 .keyword_int64,
......@@ -944,6 +956,10 @@ pub const Token = struct {
944956 .keyword_forceinline2,
945957 .keyword_unaligned,
946958 .keyword_unaligned2,
959 .keyword_ptr64,
960 .keyword_ptr32,
961 .keyword_sptr,
962 .keyword_uptr,
947963 => if (langopts.ms_extensions) kw else .identifier,
948964
949965 .keyword_float32,
......@@ -1082,11 +1098,13 @@ pub const Token = struct {
10821098 .{ "__asm", .keyword_asm1 },
10831099 .{ "__asm__", .keyword_asm2 },
10841100 .{ "__float128", .keyword_float128_1 },
1101 .{ "__int24", .keyword_int24 },
10851102 .{ "__int128", .keyword_int128 },
10861103 .{ "__imag", .keyword_imag1 },
10871104 .{ "__imag__", .keyword_imag2 },
10881105 .{ "__real", .keyword_real1 },
10891106 .{ "__real__", .keyword_real2 },
1107 .{ "__thread", .keyword_thread },
10901108
10911109 // clang keywords
10921110 .{ "__fp16", .keyword_fp16 },
......@@ -1117,6 +1135,10 @@ pub const Token = struct {
11171135 .{ "_forceinline", .keyword_forceinline2 },
11181136 .{ "__unaligned", .keyword_unaligned },
11191137 .{ "_unaligned", .keyword_unaligned2 },
1138 .{ "__ptr64", .keyword_ptr64 },
1139 .{ "__ptr32", .keyword_ptr32 },
1140 .{ "__sptr", .keyword_sptr },
1141 .{ "__uptr", .keyword_uptr },
11201142
11211143 // Type nullability
11221144 .{ "_Nonnull", .keyword_nonnull },
......@@ -1128,7 +1150,7 @@ pub const Token = struct {
11281150
11291151const Tokenizer = @This();
11301152
1131buf: []const u8,
1153buf: [:0]const u8,
11321154index: u32 = 0,
11331155source: Source.Id,
11341156langopts: LangOpts,
......@@ -1137,7 +1159,7 @@ splice_index: u32 = 0,
11371159splice_locs: []const u32,
11381160
11391161pub fn next(self: *Tokenizer) Token {
1140 var state: enum {
1162 const State = enum {
11411163 start,
11421164 whitespace,
11431165 u,
......@@ -1178,335 +1200,379 @@ pub fn next(self: *Tokenizer) Token {
11781200 pp_num,
11791201 pp_num_exponent,
11801202 pp_num_digit_separator,
1181 } = .start;
1203 };
11821204
11831205 var start = self.index;
11841206 var id: Token.Id = .eof;
11851207
1186 while (self.index < self.buf.len) : (self.index += 1) {
1187 const c = self.buf[self.index];
1188 switch (state) {
1189 .start => switch (c) {
1190 '\n' => {
1191 id = .nl;
1192 self.index += 1;
1193 self.line += 1;
1194 break;
1195 },
1196 '"' => {
1197 id = .string_literal;
1198 state = .string_literal;
1199 },
1200 '\'' => {
1201 id = .char_literal;
1202 state = .char_literal_start;
1203 },
1204 'u' => state = .u,
1205 'U' => state = .U,
1206 'L' => state = .L,
1207 '\\' => {
1208 const ucn_kind = UCNKind.classify(self.buf[self.index..]);
1209 switch (ucn_kind) {
1210 .none => {
1211 self.index += 1;
1212 id = .invalid;
1213 break;
1214 },
1215 .incomplete => {
1216 self.index += 1;
1217 id = .incomplete_ucn;
1218 break;
1219 },
1220 .hex4, .hex8 => {
1221 self.index += @backingInt(ucn_kind);
1222 id = .extended_identifier;
1223 state = .extended_identifier;
1224 },
1225 }
1226 },
1227 'a'...'t', 'v'...'z', 'A'...'K', 'M'...'T', 'V'...'Z', '_' => state = .identifier,
1228 '=' => state = .equal,
1229 '!' => state = .bang,
1230 '|' => state = .pipe,
1231 '(' => {
1232 id = .l_paren;
1233 self.index += 1;
1234 break;
1235 },
1236 ')' => {
1237 id = .r_paren;
1238 self.index += 1;
1239 break;
1240 },
1241 '[' => {
1242 id = .l_bracket;
1243 self.index += 1;
1244 break;
1245 },
1246 ']' => {
1247 id = .r_bracket;
1248 self.index += 1;
1249 break;
1250 },
1251 ';' => {
1252 id = .semicolon;
1253 self.index += 1;
1254 break;
1255 },
1256 ',' => {
1257 id = .comma;
1258 self.index += 1;
1259 break;
1260 },
1261 '?' => {
1262 id = .question_mark;
1263 self.index += 1;
1264 break;
1265 },
1266 ':' => state = .colon,
1267 '%' => state = .percent,
1268 '*' => state = .asterisk,
1269 '+' => state = .plus,
1270 '<' => state = .angle_bracket_left,
1271 '>' => state = .angle_bracket_right,
1272 '^' => state = .caret,
1273 '{' => {
1274 id = .l_brace;
1275 self.index += 1;
1276 break;
1277 },
1278 '}' => {
1279 id = .r_brace;
1280 self.index += 1;
1281 break;
1282 },
1283 '~' => {
1284 id = .tilde;
1285 self.index += 1;
1286 break;
1287 },
1288 '.' => state = .period,
1289 '-' => state = .minus,
1290 '/' => state = .slash,
1291 '&' => state = .ampersand,
1292 '#' => state = .hash,
1293 '0'...'9' => state = .pp_num,
1294 '\t', '\x0B', '\x0C', ' ' => state = .whitespace,
1295 '$' => if (self.langopts.dollars_in_identifiers) {
1296 state = .extended_identifier;
1297 } else {
1298 id = .invalid;
1299 self.index += 1;
1300 break;
1301 },
1302 0x1A => if (self.langopts.ms_extensions) {
1303 id = .eof;
1304 break;
1305 } else {
1208 loop: switch (State.start) {
1209 .start => switch (self.buf[self.index]) {
1210 0 => {
1211 if (self.index != self.buf.len) {
13061212 id = .invalid;
13071213 self.index += 1;
1308 break;
1309 },
1310 0x80...0xFF => state = .extended_identifier,
1311 else => {
1312 id = .invalid;
1313 self.index += 1;
1314 break;
1315 },
1214 }
13161215 },
1317 .whitespace => switch (c) {
1318 '\t', '\x0B', '\x0C', ' ' => {},
1319 else => {
1320 id = .whitespace;
1321 break;
1322 },
1216 '\n' => {
1217 id = .nl;
1218 self.index += 1;
1219 self.line += 1;
1220 },
1221 '"' => {
1222 id = .string_literal;
1223 continue :loop .string_literal;
1224 },
1225 '\'' => {
1226 id = .char_literal;
1227 continue :loop .char_literal_start;
1228 },
1229 'u' => continue :loop .u,
1230 'U' => continue :loop .U,
1231 'L' => continue :loop .L,
1232 '\\' => {
1233 const ucn_kind = UCNKind.classify(self.buf[self.index..]);
1234 switch (ucn_kind) {
1235 .none => {
1236 self.index += 1;
1237 id = .invalid;
1238 },
1239 .incomplete => {
1240 self.index += 1;
1241 id = .incomplete_ucn;
1242 },
1243 .hex4, .hex8 => {
1244 self.index += @backingInt(ucn_kind);
1245 id = .extended_identifier;
1246 continue :loop .extended_identifier;
1247 },
1248 }
1249 },
1250 'a'...'t', 'v'...'z', 'A'...'K', 'M'...'T', 'V'...'Z', '_' => continue :loop .identifier,
1251 '=' => continue :loop .equal,
1252 '!' => continue :loop .bang,
1253 '|' => continue :loop .pipe,
1254 '(' => {
1255 id = .l_paren;
1256 self.index += 1;
1257 },
1258 ')' => {
1259 id = .r_paren;
1260 self.index += 1;
1261 },
1262 '[' => {
1263 id = .l_bracket;
1264 self.index += 1;
1265 },
1266 ']' => {
1267 id = .r_bracket;
1268 self.index += 1;
1269 },
1270 ';' => {
1271 id = .semicolon;
1272 self.index += 1;
1273 },
1274 ',' => {
1275 id = .comma;
1276 self.index += 1;
1277 },
1278 '?' => {
1279 id = .question_mark;
1280 self.index += 1;
1281 },
1282 ':' => continue :loop .colon,
1283 '%' => continue :loop .percent,
1284 '*' => continue :loop .asterisk,
1285 '+' => continue :loop .plus,
1286 '<' => continue :loop .angle_bracket_left,
1287 '>' => continue :loop .angle_bracket_right,
1288 '^' => continue :loop .caret,
1289 '{' => {
1290 id = .l_brace;
1291 self.index += 1;
1292 },
1293 '}' => {
1294 id = .r_brace;
1295 self.index += 1;
1296 },
1297 '~' => {
1298 id = .tilde;
1299 self.index += 1;
1300 },
1301 '.' => continue :loop .period,
1302 '-' => continue :loop .minus,
1303 '/' => continue :loop .slash,
1304 '&' => continue :loop .ampersand,
1305 '#' => continue :loop .hash,
1306 '0'...'9' => continue :loop .pp_num,
1307 '\t', '\x0B', '\x0C', ' ' => continue :loop .whitespace,
1308 '$' => if (self.langopts.dollars_in_identifiers) {
1309 continue :loop .extended_identifier;
1310 } else {
1311 id = .invalid;
1312 self.index += 1;
1313 },
1314 0x1A => if (self.langopts.ms_extensions) {
1315 id = .eof;
1316 } else {
1317 id = .invalid;
1318 self.index += 1;
13231319 },
1324 .u => switch (c) {
1320 0x80...0xFF => continue :loop .extended_identifier,
1321 else => {
1322 id = .invalid;
1323 self.index += 1;
1324 },
1325 },
1326 .whitespace => {
1327 self.index += 1;
1328 switch (self.buf[self.index]) {
1329 '\t', '\x0B', '\x0C', ' ' => continue :loop .whitespace,
1330 else => id = .whitespace,
1331 }
1332 },
1333 .u => {
1334 self.index += 1;
1335 switch (self.buf[self.index]) {
13251336 '8' => {
1326 state = .u8;
1337 continue :loop .u8;
13271338 },
13281339 '\'' => {
13291340 id = .char_literal_utf_16;
1330 state = .char_literal_start;
1341 continue :loop .char_literal_start;
13311342 },
13321343 '\"' => {
13331344 id = .string_literal_utf_16;
1334 state = .string_literal;
1345 continue :loop .string_literal;
13351346 },
13361347 else => {
13371348 self.index -= 1;
1338 state = .identifier;
1349 continue :loop .identifier;
13391350 },
1340 },
1341 .u8 => switch (c) {
1351 }
1352 },
1353 .u8 => {
1354 self.index += 1;
1355 switch (self.buf[self.index]) {
13421356 '\"' => {
13431357 id = .string_literal_utf_8;
1344 state = .string_literal;
1358 continue :loop .string_literal;
13451359 },
13461360 '\'' => {
13471361 id = .char_literal_utf_8;
1348 state = .char_literal_start;
1362 continue :loop .char_literal_start;
13491363 },
13501364 else => {
13511365 self.index -= 1;
1352 state = .identifier;
1366 continue :loop .identifier;
13531367 },
1354 },
1355 .U => switch (c) {
1368 }
1369 },
1370 .U => {
1371 self.index += 1;
1372 switch (self.buf[self.index]) {
13561373 '\'' => {
13571374 id = .char_literal_utf_32;
1358 state = .char_literal_start;
1375 continue :loop .char_literal_start;
13591376 },
13601377 '\"' => {
13611378 id = .string_literal_utf_32;
1362 state = .string_literal;
1379 continue :loop .string_literal;
13631380 },
13641381 else => {
13651382 self.index -= 1;
1366 state = .identifier;
1383 continue :loop .identifier;
13671384 },
1368 },
1369 .L => switch (c) {
1385 }
1386 },
1387 .L => {
1388 self.index += 1;
1389 switch (self.buf[self.index]) {
13701390 '\'' => {
13711391 id = .char_literal_wide;
1372 state = .char_literal_start;
1392 continue :loop .char_literal_start;
13731393 },
13741394 '\"' => {
13751395 id = .string_literal_wide;
1376 state = .string_literal;
1396 continue :loop .string_literal;
13771397 },
13781398 else => {
13791399 self.index -= 1;
1380 state = .identifier;
1400 continue :loop .identifier;
13811401 },
1382 },
1383 .string_literal => switch (c) {
1402 }
1403 },
1404 .string_literal => {
1405 self.index += 1;
1406 switch (self.buf[self.index]) {
13841407 '\\' => {
1385 state = .string_escape_sequence;
1408 continue :loop .string_escape_sequence;
13861409 },
13871410 '"' => {
13881411 self.index += 1;
1389 break;
13901412 },
13911413 '\n' => {
13921414 id = .unterminated_string_literal;
1393 break;
13941415 },
13951416 '\r' => unreachable,
1396 else => {},
1397 },
1398 .char_literal_start => switch (c) {
1417 0 => {
1418 if (self.index == self.buf.len) {
1419 id = .unterminated_string_literal;
1420 } else {
1421 continue :loop .string_literal;
1422 }
1423 },
1424 else => continue :loop .string_literal,
1425 }
1426 },
1427 .char_literal_start => {
1428 self.index += 1;
1429 switch (self.buf[self.index]) {
13991430 '\\' => {
1400 state = .char_escape_sequence;
1431 continue :loop .char_escape_sequence;
14011432 },
14021433 '\'' => {
14031434 id = .empty_char_literal;
14041435 self.index += 1;
1405 break;
14061436 },
14071437 '\n' => {
14081438 id = .unterminated_char_literal;
1409 break;
14101439 },
1411 else => {
1412 state = .char_literal;
1440 0 => {
1441 if (self.index == self.buf.len) {
1442 id = .unterminated_char_literal;
1443 } else {
1444 continue :loop .char_literal;
1445 }
14131446 },
1414 },
1415 .char_literal => switch (c) {
1447 else => continue :loop .char_literal,
1448 }
1449 },
1450 .char_literal => {
1451 self.index += 1;
1452 switch (self.buf[self.index]) {
14161453 '\\' => {
1417 state = .char_escape_sequence;
1454 continue :loop .char_escape_sequence;
14181455 },
14191456 '\'' => {
14201457 self.index += 1;
1421 break;
14221458 },
14231459 '\n' => {
14241460 id = .unterminated_char_literal;
1425 break;
14261461 },
1427 else => {},
1428 },
1429 .char_escape_sequence => switch (c) {
1462 0 => {
1463 if (self.index == self.buf.len) {
1464 id = .unterminated_char_literal;
1465 } else {
1466 continue :loop .char_literal;
1467 }
1468 },
1469 else => continue :loop .char_literal,
1470 }
1471 },
1472 .char_escape_sequence => {
1473 self.index += 1;
1474 switch (self.buf[self.index]) {
14301475 '\r', '\n' => {
14311476 id = .unterminated_char_literal;
1432 break;
14331477 },
1434 else => state = .char_literal,
1435 },
1436 .string_escape_sequence => switch (c) {
1478 0 => {
1479 if (self.index == self.buf.len) {
1480 id = .unterminated_char_literal;
1481 } else {
1482 continue :loop .char_literal;
1483 }
1484 },
1485 else => continue :loop .char_literal,
1486 }
1487 },
1488 .string_escape_sequence => {
1489 self.index += 1;
1490 switch (self.buf[self.index]) {
14371491 '\r', '\n' => {
14381492 id = .unterminated_string_literal;
1439 break;
14401493 },
1441 else => state = .string_literal,
1442 },
1443 .identifier, .extended_identifier => switch (c) {
1444 'a'...'z', 'A'...'Z', '_', '0'...'9' => {},
1494 0 => {
1495 if (self.index == self.buf.len) {
1496 id = .unterminated_string_literal;
1497 } else {
1498 continue :loop .string_literal;
1499 }
1500 },
1501 else => continue :loop .string_literal,
1502 }
1503 },
1504 inline .identifier, .extended_identifier => |state| {
1505 self.index += 1;
1506 switch (self.buf[self.index]) {
1507 'a'...'z', 'A'...'Z', '_', '0'...'9' => {
1508 continue :loop state;
1509 },
14451510 '$' => if (self.langopts.dollars_in_identifiers) {
1446 state = .extended_identifier;
1511 continue :loop .extended_identifier;
14471512 } else {
14481513 id = if (state == .identifier) Token.getTokenId(self.langopts, self.buf[start..self.index]) else .extended_identifier;
1449 break;
14501514 },
1451 0x80...0xFF => state = .extended_identifier,
1515 0x80...0xFF => continue :loop .extended_identifier,
14521516 '\\' => {
14531517 const ucn_kind = UCNKind.classify(self.buf[self.index..]);
14541518 switch (ucn_kind) {
14551519 .none, .incomplete => {
14561520 id = if (state == .identifier) Token.getTokenId(self.langopts, self.buf[start..self.index]) else .extended_identifier;
1457 break;
14581521 },
14591522 .hex4, .hex8 => {
1460 state = .extended_identifier;
14611523 self.index += @backingInt(ucn_kind);
1524 continue :loop .extended_identifier;
14621525 },
14631526 }
14641527 },
1465
14661528 else => {
14671529 id = if (state == .identifier) Token.getTokenId(self.langopts, self.buf[start..self.index]) else .extended_identifier;
1468 break;
14691530 },
1470 },
1471 .equal => switch (c) {
1531 }
1532 },
1533 .equal => {
1534 self.index += 1;
1535 switch (self.buf[self.index]) {
14721536 '=' => {
14731537 id = .equal_equal;
14741538 self.index += 1;
1475 break;
14761539 },
14771540 else => {
14781541 id = .equal;
1479 break;
14801542 },
1481 },
1482 .bang => switch (c) {
1543 }
1544 },
1545 .bang => {
1546 self.index += 1;
1547 switch (self.buf[self.index]) {
14831548 '=' => {
14841549 id = .bang_equal;
14851550 self.index += 1;
1486 break;
14871551 },
14881552 else => {
14891553 id = .bang;
1490 break;
14911554 },
1492 },
1493 .pipe => switch (c) {
1555 }
1556 },
1557 .pipe => {
1558 self.index += 1;
1559 switch (self.buf[self.index]) {
14941560 '=' => {
14951561 id = .pipe_equal;
14961562 self.index += 1;
1497 break;
14981563 },
14991564 '|' => {
15001565 id = .pipe_pipe;
15011566 self.index += 1;
1502 break;
15031567 },
15041568 else => {
15051569 id = .pipe;
1506 break;
15071570 },
1508 },
1509 .colon => switch (c) {
1571 }
1572 },
1573 .colon => {
1574 self.index += 1;
1575 switch (self.buf[self.index]) {
15101576 '>' => {
15111577 if (self.langopts.hasDigraphs()) {
15121578 id = .r_bracket;
......@@ -1514,28 +1580,22 @@ pub fn next(self: *Tokenizer) Token {
15141580 } else {
15151581 id = .colon;
15161582 }
1517 break;
15181583 },
15191584 ':' => {
1520 if (self.langopts.standard.atLeast(.c23)) {
1521 id = .colon_colon;
1522 self.index += 1;
1523 break;
1524 } else {
1525 id = .colon;
1526 break;
1527 }
1585 id = .colon_colon;
1586 self.index += 1;
15281587 },
15291588 else => {
15301589 id = .colon;
1531 break;
15321590 },
1533 },
1534 .percent => switch (c) {
1591 }
1592 },
1593 .percent => {
1594 self.index += 1;
1595 switch (self.buf[self.index]) {
15351596 '=' => {
15361597 id = .percent_equal;
15371598 self.index += 1;
1538 break;
15391599 },
15401600 '>' => {
15411601 if (self.langopts.hasDigraphs()) {
......@@ -1544,54 +1604,54 @@ pub fn next(self: *Tokenizer) Token {
15441604 } else {
15451605 id = .percent;
15461606 }
1547 break;
15481607 },
15491608 ':' => {
15501609 if (self.langopts.hasDigraphs()) {
1551 state = .hash_digraph;
1610 continue :loop .hash_digraph;
15521611 } else {
15531612 id = .percent;
1554 break;
15551613 }
15561614 },
15571615 else => {
15581616 id = .percent;
1559 break;
15601617 },
1561 },
1562 .asterisk => switch (c) {
1618 }
1619 },
1620 .asterisk => {
1621 self.index += 1;
1622 switch (self.buf[self.index]) {
15631623 '=' => {
15641624 id = .asterisk_equal;
15651625 self.index += 1;
1566 break;
15671626 },
15681627 else => {
15691628 id = .asterisk;
1570 break;
15711629 },
1572 },
1573 .plus => switch (c) {
1630 }
1631 },
1632 .plus => {
1633 self.index += 1;
1634 switch (self.buf[self.index]) {
15741635 '=' => {
15751636 id = .plus_equal;
15761637 self.index += 1;
1577 break;
15781638 },
15791639 '+' => {
15801640 id = .plus_plus;
15811641 self.index += 1;
1582 break;
15831642 },
15841643 else => {
15851644 id = .plus;
1586 break;
15871645 },
1588 },
1589 .angle_bracket_left => switch (c) {
1590 '<' => state = .angle_bracket_angle_bracket_left,
1646 }
1647 },
1648 .angle_bracket_left => {
1649 self.index += 1;
1650 switch (self.buf[self.index]) {
1651 '<' => continue :loop .angle_bracket_angle_bracket_left,
15911652 '=' => {
15921653 id = .angle_bracket_left_equal;
15931654 self.index += 1;
1594 break;
15951655 },
15961656 ':' => {
15971657 if (self.langopts.hasDigraphs()) {
......@@ -1600,7 +1660,6 @@ pub fn next(self: *Tokenizer) Token {
16001660 } else {
16011661 id = .angle_bracket_left;
16021662 }
1603 break;
16041663 },
16051664 '%' => {
16061665 if (self.langopts.hasDigraphs()) {
......@@ -1609,209 +1668,258 @@ pub fn next(self: *Tokenizer) Token {
16091668 } else {
16101669 id = .angle_bracket_left;
16111670 }
1612 break;
16131671 },
16141672 else => {
16151673 id = .angle_bracket_left;
1616 break;
16171674 },
1618 },
1619 .angle_bracket_angle_bracket_left => switch (c) {
1675 }
1676 },
1677 .angle_bracket_angle_bracket_left => {
1678 self.index += 1;
1679 switch (self.buf[self.index]) {
16201680 '=' => {
16211681 id = .angle_bracket_angle_bracket_left_equal;
16221682 self.index += 1;
1623 break;
16241683 },
16251684 else => {
16261685 id = .angle_bracket_angle_bracket_left;
1627 break;
16281686 },
1629 },
1630 .angle_bracket_right => switch (c) {
1631 '>' => state = .angle_bracket_angle_bracket_right,
1687 }
1688 },
1689 .angle_bracket_right => {
1690 self.index += 1;
1691 switch (self.buf[self.index]) {
1692 '>' => continue :loop .angle_bracket_angle_bracket_right,
16321693 '=' => {
16331694 id = .angle_bracket_right_equal;
16341695 self.index += 1;
1635 break;
16361696 },
16371697 else => {
16381698 id = .angle_bracket_right;
1639 break;
16401699 },
1641 },
1642 .angle_bracket_angle_bracket_right => switch (c) {
1700 }
1701 },
1702 .angle_bracket_angle_bracket_right => {
1703 self.index += 1;
1704 switch (self.buf[self.index]) {
16431705 '=' => {
16441706 id = .angle_bracket_angle_bracket_right_equal;
16451707 self.index += 1;
1646 break;
16471708 },
16481709 else => {
16491710 id = .angle_bracket_angle_bracket_right;
1650 break;
16511711 },
1652 },
1653 .caret => switch (c) {
1712 }
1713 },
1714 .caret => {
1715 self.index += 1;
1716 switch (self.buf[self.index]) {
16541717 '=' => {
16551718 id = .caret_equal;
16561719 self.index += 1;
1657 break;
16581720 },
16591721 else => {
16601722 id = .caret;
1661 break;
16621723 },
1663 },
1664 .period => switch (c) {
1665 '.' => state = .period2,
1666 '0'...'9' => state = .pp_num,
1724 }
1725 },
1726 .period => {
1727 self.index += 1;
1728 switch (self.buf[self.index]) {
1729 '.' => continue :loop .period2,
1730 '0'...'9' => continue :loop .pp_num,
16671731 else => {
16681732 id = .period;
1669 break;
16701733 },
1671 },
1672 .period2 => switch (c) {
1734 }
1735 },
1736 .period2 => {
1737 self.index += 1;
1738 switch (self.buf[self.index]) {
16731739 '.' => {
16741740 id = .ellipsis;
16751741 self.index += 1;
1676 break;
16771742 },
16781743 else => {
16791744 id = .period;
16801745 self.index -= 1;
1681 break;
16821746 },
1683 },
1684 .minus => switch (c) {
1747 }
1748 },
1749 .minus => {
1750 self.index += 1;
1751 switch (self.buf[self.index]) {
16851752 '>' => {
16861753 id = .arrow;
16871754 self.index += 1;
1688 break;
16891755 },
16901756 '=' => {
16911757 id = .minus_equal;
16921758 self.index += 1;
1693 break;
16941759 },
16951760 '-' => {
16961761 id = .minus_minus;
16971762 self.index += 1;
1698 break;
16991763 },
17001764 else => {
17011765 id = .minus;
1702 break;
17031766 },
1704 },
1705 .ampersand => switch (c) {
1767 }
1768 },
1769 .ampersand => {
1770 self.index += 1;
1771 switch (self.buf[self.index]) {
17061772 '&' => {
17071773 id = .ampersand_ampersand;
17081774 self.index += 1;
1709 break;
17101775 },
17111776 '=' => {
17121777 id = .ampersand_equal;
17131778 self.index += 1;
1714 break;
17151779 },
17161780 else => {
17171781 id = .ampersand;
1718 break;
17191782 },
1720 },
1721 .hash => switch (c) {
1783 }
1784 },
1785 .hash => {
1786 self.index += 1;
1787 switch (self.buf[self.index]) {
17221788 '#' => {
17231789 id = .hash_hash;
17241790 self.index += 1;
1725 break;
17261791 },
17271792 else => {
17281793 id = .hash;
1729 break;
17301794 },
1731 },
1732 .hash_digraph => switch (c) {
1733 '%' => state = .hash_hash_digraph_partial,
1795 }
1796 },
1797 .hash_digraph => {
1798 self.index += 1;
1799 switch (self.buf[self.index]) {
1800 '%' => continue :loop .hash_hash_digraph_partial,
17341801 else => {
17351802 id = .hash;
1736 break;
17371803 },
1738 },
1739 .hash_hash_digraph_partial => switch (c) {
1804 }
1805 },
1806 .hash_hash_digraph_partial => {
1807 self.index += 1;
1808 switch (self.buf[self.index]) {
17401809 ':' => {
17411810 id = .hash_hash;
17421811 self.index += 1;
1743 break;
17441812 },
17451813 else => {
17461814 id = .hash;
17471815 self.index -= 1; // re-tokenize the percent
1748 break;
17491816 },
1750 },
1751 .slash => switch (c) {
1752 '/' => state = .line_comment,
1753 '*' => state = .multi_line_comment,
1817 }
1818 },
1819 .slash => {
1820 self.index += 1;
1821 switch (self.buf[self.index]) {
1822 '/' => continue :loop .line_comment,
1823 '*' => continue :loop .multi_line_comment,
17541824 '=' => {
17551825 id = .slash_equal;
17561826 self.index += 1;
1757 break;
17581827 },
17591828 else => {
17601829 id = .slash;
1761 break;
17621830 },
1763 },
1764 .line_comment => switch (c) {
1831 }
1832 },
1833 .line_comment => {
1834 self.index += 1;
1835 switch (self.buf[self.index]) {
1836 0 => {
1837 if (self.index == self.buf.len) {
1838 if (self.langopts.preserve_comments) {
1839 id = .comment;
1840 } else {
1841 continue :loop .start;
1842 }
1843 } else {
1844 continue :loop .line_comment;
1845 }
1846 },
17651847 '\n' => {
17661848 if (self.langopts.preserve_comments) {
17671849 id = .comment;
1768 break;
1850 } else {
1851 continue :loop .start;
1852 }
1853 },
1854 else => continue :loop .line_comment,
1855 }
1856 },
1857 .multi_line_comment => {
1858 self.index += 1;
1859 switch (self.buf[self.index]) {
1860 0 => {
1861 if (self.index == self.buf.len) {
1862 id = .unterminated_comment;
1863 } else {
1864 continue :loop .multi_line_comment;
1865 }
1866 },
1867 '*' => continue :loop .multi_line_comment_asterisk,
1868 '\n' => {
1869 self.line += 1;
1870 continue :loop .multi_line_comment;
1871 },
1872 else => continue :loop .multi_line_comment,
1873 }
1874 },
1875 .multi_line_comment_asterisk => {
1876 self.index += 1;
1877 switch (self.buf[self.index]) {
1878 0 => {
1879 if (self.index == self.buf.len) {
1880 id = .unterminated_comment;
1881 } else {
1882 continue :loop .multi_line_comment;
17691883 }
1770 self.index -= 1;
1771 state = .start;
17721884 },
1773 else => {},
1774 },
1775 .multi_line_comment => switch (c) {
1776 '*' => state = .multi_line_comment_asterisk,
1777 '\n' => self.line += 1,
1778 else => {},
1779 },
1780 .multi_line_comment_asterisk => switch (c) {
17811885 '/' => {
17821886 if (self.langopts.preserve_comments) {
17831887 self.index += 1;
17841888 id = .comment;
1785 break;
1889 } else {
1890 continue :loop .multi_line_comment_done;
17861891 }
1787 state = .multi_line_comment_done;
17881892 },
17891893 '\n' => {
17901894 self.line += 1;
1791 state = .multi_line_comment;
1895 continue :loop .multi_line_comment;
17921896 },
1793 '*' => {},
1794 else => state = .multi_line_comment,
1795 },
1796 .multi_line_comment_done => switch (c) {
1897 '*' => continue :loop .multi_line_comment_asterisk,
1898 else => continue :loop .multi_line_comment,
1899 }
1900 },
1901 .multi_line_comment_done => {
1902 self.index += 1;
1903 switch (self.buf[self.index]) {
17971904 '\n' => {
17981905 start = self.index;
17991906 id = .nl;
18001907 self.index += 1;
18011908 self.line += 1;
1802 break;
18031909 },
18041910 '\r' => unreachable,
18051911 '\t', '\x0B', '\x0C', ' ' => {
18061912 start = self.index;
1807 state = .whitespace;
1913 continue :loop .whitespace;
18081914 },
18091915 else => {
18101916 id = .whitespace;
1811 break;
18121917 },
1813 },
1814 .pp_num => switch (c) {
1918 }
1919 },
1920 .pp_num => {
1921 self.index += 1;
1922 switch (self.buf[self.index]) {
18151923 'a'...'d',
18161924 'A'...'D',
18171925 'f'...'o',
......@@ -1821,20 +1929,21 @@ pub fn next(self: *Tokenizer) Token {
18211929 '0'...'9',
18221930 '_',
18231931 '.',
1824 => {},
1825 'e', 'E', 'p', 'P' => state = .pp_num_exponent,
1932 => continue :loop .pp_num,
1933 'e', 'E', 'p', 'P' => continue :loop .pp_num_exponent,
18261934 '\'' => if (self.langopts.standard.atLeast(.c23)) {
1827 state = .pp_num_digit_separator;
1935 continue :loop .pp_num_digit_separator;
18281936 } else {
18291937 id = .pp_num;
1830 break;
18311938 },
18321939 else => {
18331940 id = .pp_num;
1834 break;
18351941 },
1836 },
1837 .pp_num_digit_separator => switch (c) {
1942 }
1943 },
1944 .pp_num_digit_separator => {
1945 self.index += 1;
1946 switch (self.buf[self.index]) {
18381947 'a'...'d',
18391948 'A'...'D',
18401949 'f'...'o',
......@@ -1843,14 +1952,16 @@ pub fn next(self: *Tokenizer) Token {
18431952 'Q'...'Z',
18441953 '0'...'9',
18451954 '_',
1846 => state = .pp_num,
1955 => continue :loop .pp_num,
18471956 else => {
18481957 self.index -= 1;
18491958 id = .pp_num;
1850 break;
18511959 },
1852 },
1853 .pp_num_exponent => switch (c) {
1960 }
1961 },
1962 .pp_num_exponent => {
1963 self.index += 1;
1964 switch (self.buf[self.index]) {
18541965 'a'...'o',
18551966 'q'...'z',
18561967 'A'...'O',
......@@ -1860,62 +1971,13 @@ pub fn next(self: *Tokenizer) Token {
18601971 '.',
18611972 '+',
18621973 '-',
1863 => state = .pp_num,
1864 'p', 'P' => {},
1974 => continue :loop .pp_num,
1975 'p', 'P' => continue :loop .pp_num_exponent,
18651976 else => {
18661977 id = .pp_num;
1867 break;
18681978 },
1869 },
1870 }
1871 } else if (self.index == self.buf.len) {
1872 switch (state) {
1873 .start => {},
1874 .line_comment => if (self.langopts.preserve_comments) {
1875 id = .comment;
1876 },
1877 .u, .u8, .U, .L, .identifier => id = Token.getTokenId(self.langopts, self.buf[start..self.index]),
1878 .extended_identifier => id = .extended_identifier,
1879
1880 .period2 => {
1881 self.index -= 1;
1882 id = .period;
1883 },
1884
1885 .multi_line_comment,
1886 .multi_line_comment_asterisk,
1887 => id = .unterminated_comment,
1888
1889 .char_escape_sequence, .char_literal, .char_literal_start => id = .unterminated_char_literal,
1890 .string_escape_sequence, .string_literal => id = .unterminated_string_literal,
1891
1892 .whitespace => id = .whitespace,
1893 .multi_line_comment_done => id = .whitespace,
1894
1895 .equal => id = .equal,
1896 .bang => id = .bang,
1897 .minus => id = .minus,
1898 .slash => id = .slash,
1899 .ampersand => id = .ampersand,
1900 .hash => id = .hash,
1901 .period => id = .period,
1902 .pipe => id = .pipe,
1903 .angle_bracket_angle_bracket_right => id = .angle_bracket_angle_bracket_right,
1904 .angle_bracket_right => id = .angle_bracket_right,
1905 .angle_bracket_angle_bracket_left => id = .angle_bracket_angle_bracket_left,
1906 .angle_bracket_left => id = .angle_bracket_left,
1907 .plus => id = .plus,
1908 .colon => id = .colon,
1909 .percent => id = .percent,
1910 .caret => id = .caret,
1911 .asterisk => id = .asterisk,
1912 .hash_digraph => id = .hash,
1913 .hash_hash_digraph_partial => {
1914 id = .hash;
1915 self.index -= 1; // re-tokenize the percent
1916 },
1917 .pp_num, .pp_num_exponent, .pp_num_digit_separator => id = .pp_num,
1918 }
1979 }
1980 },
19191981 }
19201982
19211983 for (self.splice_locs[self.splice_index..]) |splice_offset| {
......@@ -1945,14 +2007,11 @@ pub fn nextNoWSComments(self: *Tokenizer) Token {
19452007 return tok;
19462008}
19472009
1948/// Try to tokenize a '::' even if not supported by the current language standard.
1949pub fn colonColon(self: *Tokenizer) Token {
1950 var tok = self.nextNoWS();
1951 if (tok.id == .colon and self.index < self.buf.len and self.buf[self.index] == ':') {
1952 self.index += 1;
1953 tok.id = .colon_colon;
1954 }
1955 return tok;
2010test "escaped literals at eof or with embedded NUL byte" {
2011 try expectTokens("'\\", &.{.unterminated_char_literal});
2012 try expectTokens("\"\\", &.{.unterminated_string_literal});
2013 try expectTokens("'\\\x00", &.{.unterminated_char_literal});
2014 try expectTokens("\"\\\x00", &.{.unterminated_string_literal});
19562015}
19572016
19582017test "operators" {
......@@ -2031,7 +2090,7 @@ test "keywords" {
20312090 \\long register return short signed sizeof static
20322091 \\struct switch typedef union unsigned void volatile
20332092 \\while _Bool _Complex _Imaginary inline restrict _Alignas
2034 \\_Alignof _Atomic _Generic _Noreturn _Static_assert _Thread_local
2093 \\_Alignof _Atomic _Generic _Noreturn _Static_assert _Thread_local __thread
20352094 \\__attribute __attribute__
20362095 \\
20372096 , &.{
......@@ -2085,6 +2144,7 @@ test "keywords" {
20852144 .keyword_noreturn,
20862145 .keyword_static_assert,
20872146 .keyword_thread_local,
2147 .keyword_thread,
20882148 .nl,
20892149 .keyword_attribute1,
20902150 .keyword_attribute2,
......@@ -2307,6 +2367,11 @@ test "C23 keywords" {
23072367 }, .{ .standard = .c23 });
23082368}
23092369
2370test "GCC integer keywords" {
2371 try expectTokens("__int24", &.{.identifier});
2372 try expectTokensExtra("__int24", &.{.keyword_int24}, .{ .has_int24 = true });
2373}
2374
23102375test "Universal character names" {
23112376 try expectTokens("\\", &.{.invalid});
23122377 try expectTokens("\\g", &.{ .invalid, .identifier });
......@@ -2344,7 +2409,7 @@ test "Universal character names" {
23442409test "Tokenizer fuzz test" {
23452410 const Context = struct {
23462411 fn testOne(_: @This(), smith: *std.testing.Smith) anyerror!void {
2347 var comp = try Compilation.init(.testing);
2412 var comp = try Compilation.init(.fuzzing);
23482413 defer comp.deinit();
23492414
23502415 var buf: [256]u8 = undefined;
......@@ -2388,7 +2453,7 @@ fn expectTokensExtra(contents: []const u8, expected_tokens: []const Token.Id, la
23882453 const expected_token_id = expected_tokens[i];
23892454 i += 1;
23902455 if (!std.meta.eql(token.id, expected_token_id)) {
2391 std.debug.print("expected {s}, found {s}\n", .{ @tagName(expected_token_id), @tagName(token.id) });
2456 std.debug.print("expected {t}, found {t}\n", .{ expected_token_id, token.id });
23922457 return error.TokensDoNotEqual;
23932458 }
23942459 }
lib/compiler/aro/aro/Tokenizer/number_literal.zig created+546
......@@ -0,0 +1,546 @@
1const std = @import("std");
2const assert = std.debug.assert;
3const mem = std.mem;
4
5const Compilation = @import("../Compilation.zig");
6const Diagnostics = @import("../Diagnostics.zig");
7const text_literal = @import("text_literal.zig");
8const Source = @import("../Source.zig");
9
10pub const Prefix = enum(u8) {
11 binary = 2,
12 octal = 8,
13 decimal = 10,
14 hex = 16,
15
16 pub fn digitAllowed(prefix: Prefix, c: u8) bool {
17 return switch (c) {
18 '0', '1' => true,
19 '2'...'7' => prefix != .binary,
20 '8'...'9' => prefix == .decimal or prefix == .hex,
21 'a'...'f', 'A'...'F' => prefix == .hex,
22 else => false,
23 };
24 }
25
26 pub fn fromString(buf: []const u8, allow_msvc_extensions: bool) Prefix {
27 if (buf.len == 1) return .decimal;
28 // tokenizer enforces that first byte is a decimal digit or period
29 switch (buf[0]) {
30 '.', '1'...'9' => return .decimal,
31 '0' => {},
32 else => unreachable,
33 }
34 switch (buf[1]) {
35 'x', 'X' => return if (buf.len == 2) .decimal else .hex,
36 'b', 'B' => return if (buf.len == 2) .decimal else .binary,
37 else => {
38 if (mem.findAny(u8, buf, "eE.")) |_| {
39 // This is a decimal floating point number that happens to start with zero
40 return .decimal;
41 } else if (Suffix.fromString(buf[1..], .int, allow_msvc_extensions)) |_| {
42 // This is `0` with a valid suffix
43 return .decimal;
44 } else {
45 return .octal;
46 }
47 },
48 }
49 }
50
51 /// Length of this prefix as a string
52 pub fn stringLen(prefix: Prefix) usize {
53 return switch (prefix) {
54 .binary => 2,
55 .octal => 1,
56 .decimal => 0,
57 .hex => 2,
58 };
59 }
60};
61
62pub const Suffix = enum {
63 // zig fmt: off
64
65 // int and imaginary int
66 None, I,
67
68 // unsigned real integers
69 U, UL, ULL,
70
71 // unsigned imaginary integers
72 IU, IUL, IULL,
73
74 // long or long double, real and imaginary
75 L, IL,
76
77 // long long and imaginary long long
78 LL, ILL,
79
80 // float and imaginary float
81 F, IF,
82
83 // _Float16 and imaginary _Float16
84 F16, IF16,
85
86 // __float80
87 W,
88
89 // Imaginary __float80
90 IW,
91
92 // _Float128
93 Q, F128,
94
95 // Imaginary _Float128
96 IQ, IF128,
97
98 // Imaginary _Bitint
99 IWB, IUWB,
100
101 // _Bitint
102 WB, UWB,
103
104 // __bf16
105 BF16,
106
107 // _Float32 and imaginary _Float32
108 F32, IF32,
109
110 // _Float64 and imaginary _Float64
111 F64, IF64,
112
113 // _Float32x and imaginary _Float32x
114 F32x, IF32x,
115
116 // _Float64x and imaginary _Float64x
117 F64x, IF64x,
118
119 // _Decimal32
120 D32,
121
122 // _Decimal64
123 D64,
124
125 // _Decimal128
126 D128,
127
128 // _Decimal64x
129 D64x,
130
131 // MSVC extensions
132 I8,
133 UI8,
134 I16,
135 UI16,
136 I32,
137 UI32,
138 I64,
139 UI64,
140
141 // zig fmt: on
142
143 const Tuple = struct { Suffix, []const []const u8 };
144
145 const IntSuffixes = &[_]Tuple{
146 .{ .U, &.{"U"} },
147 .{ .L, &.{"L"} },
148 .{ .WB, &.{"WB"} },
149 .{ .UL, &.{ "U", "L" } },
150 .{ .UWB, &.{ "U", "WB" } },
151 .{ .LL, &.{"LL"} },
152 .{ .ULL, &.{ "U", "LL" } },
153
154 .{ .I8, &.{"I8"} },
155 .{ .UI8, &.{"UI8"} },
156 .{ .I16, &.{"I16"} },
157 .{ .UI16, &.{"UI16"} },
158 .{ .I32, &.{"I32"} },
159 .{ .UI32, &.{"UI32"} },
160 .{ .I64, &.{"I64"} },
161 .{ .UI64, &.{"UI64"} },
162
163 .{ .I, &.{"I"} },
164
165 .{ .IWB, &.{ "I", "WB" } },
166 .{ .IU, &.{ "I", "U" } },
167 .{ .IL, &.{ "I", "L" } },
168 .{ .IUL, &.{ "I", "U", "L" } },
169 .{ .IUWB, &.{ "I", "U", "WB" } },
170 .{ .ILL, &.{ "I", "LL" } },
171 .{ .IULL, &.{ "I", "U", "LL" } },
172 };
173
174 const FloatSuffixes = &[_]Tuple{
175 .{ .F16, &.{"F16"} },
176 .{ .F, &.{"F"} },
177 .{ .L, &.{"L"} },
178 .{ .W, &.{"W"} },
179 .{ .F128, &.{"F128"} },
180 .{ .Q, &.{"Q"} },
181 .{ .BF16, &.{"BF16"} },
182 .{ .F32, &.{"F32"} },
183 .{ .F64, &.{"F64"} },
184 .{ .F32x, &.{"F32x"} },
185 .{ .F64x, &.{"F64x"} },
186 .{ .D32, &.{"D32"} },
187 .{ .D64, &.{"D64"} },
188 .{ .D128, &.{"D128"} },
189 .{ .D64x, &.{"D64x"} },
190
191 .{ .I, &.{"I"} },
192 .{ .IL, &.{ "I", "L" } },
193 .{ .IF16, &.{ "I", "F16" } },
194 .{ .IF, &.{ "I", "F" } },
195 .{ .IW, &.{ "I", "W" } },
196 .{ .IF128, &.{ "I", "F128" } },
197 .{ .IQ, &.{ "I", "Q" } },
198 .{ .IF32, &.{ "I", "F32" } },
199 .{ .IF64, &.{ "I", "F64" } },
200 .{ .IF32x, &.{ "I", "F32x" } },
201 .{ .IF64x, &.{ "I", "F64x" } },
202 };
203
204 pub fn fromString(buf: []const u8, suffix_kind: enum { int, float }, allow_msvc_extensions: bool) ?Suffix {
205 if (buf.len == 0) return .None;
206
207 const suffixes = switch (suffix_kind) {
208 .float => FloatSuffixes,
209 .int => IntSuffixes,
210 };
211 var scratch: [4]u8 = undefined;
212 top: for (suffixes) |candidate| {
213 const tag = candidate[0];
214 const parts = candidate[1];
215 var len: usize = 0;
216 for (parts) |part| len += part.len;
217 if (len != buf.len) continue;
218
219 for (parts) |part| {
220 const lower = std.ascii.lowerString(&scratch, part);
221 if (mem.find(u8, buf, part) == null and mem.find(u8, buf, lower) == null) continue :top;
222 }
223 if (tag.isMSVCExtension() and !allow_msvc_extensions) continue;
224 return tag;
225 }
226 return null;
227 }
228
229 pub fn isImaginary(suffix: Suffix) bool {
230 return switch (suffix) {
231 .I, .IL, .IF, .IU, .IUL, .ILL, .IULL, .IWB, .IUWB, .IF128, .IQ, .IW, .IF16, .IF32, .IF64, .IF32x, .IF64x => true,
232 .None, .L, .F16, .F, .U, .UL, .LL, .ULL, .WB, .UWB, .F128, .Q, .W, .F32, .F64, .F32x, .F64x, .D32, .D64, .D128, .D64x, .BF16, .I8, .UI8, .I16, .UI16, .I32, .UI32, .I64, .UI64 => false,
233 };
234 }
235
236 pub fn isSignedInteger(suffix: Suffix) bool {
237 return switch (suffix) {
238 .None, .L, .LL, .I, .IL, .ILL, .WB, .IWB, .I8, .I16, .I32, .I64 => true,
239 .U, .UL, .ULL, .IU, .IUL, .IULL, .UWB, .IUWB, .UI8, .UI16, .UI32, .UI64 => false,
240 .F, .IF, .F16, .F128, .IF128, .Q, .IQ, .W, .IW, .IF16, .F32, .IF32, .F64, .IF64, .F32x, .IF32x, .F64x, .IF64x, .D32, .D64, .D128, .D64x, .BF16 => unreachable,
241 };
242 }
243
244 pub fn signedness(suffix: Suffix) std.builtin.Signedness {
245 return if (suffix.isSignedInteger()) .signed else .unsigned;
246 }
247
248 pub fn isBitInt(suffix: Suffix) bool {
249 return switch (suffix) {
250 .WB, .UWB, .IWB, .IUWB => true,
251 else => false,
252 };
253 }
254
255 pub fn isFloat80(suffix: Suffix) bool {
256 return suffix == .W or suffix == .IW;
257 }
258
259 pub fn isMSVCExtension(suffix: Suffix) bool {
260 return switch (suffix) {
261 .I8, .UI8, .I16, .UI16, .I32, .UI32, .I64, .UI64 => true,
262
263 .None,
264 .L,
265 .F16,
266 .F,
267 .U,
268 .UL,
269 .LL,
270 .ULL,
271 .WB,
272 .UWB,
273 .F128,
274 .Q,
275 .W,
276 .F32,
277 .F64,
278 .F32x,
279 .F64x,
280 .D32,
281 .D64,
282 .D128,
283 .D64x,
284 .BF16,
285 .I,
286 .IU,
287 .IUL,
288 .IULL,
289 .IL,
290 .ILL,
291 .IF,
292 .IF16,
293 .IW,
294 .IQ,
295 .IF128,
296 .IWB,
297 .IUWB,
298 .IF32,
299 .IF32x,
300 .IF64,
301 .IF64x,
302 => false,
303 };
304 }
305};
306
307pub const Parser = struct {
308 comp: *const Compilation,
309 literal: []const u8,
310 loc: Source.Location,
311 expansion_locs: []const Source.Location,
312
313 pub const Result = struct {
314 bytes: []const u8,
315 is_float: bool,
316 prefix: Prefix,
317 suffix: Suffix,
318 };
319
320 pub fn parse(p: *Parser) !Result {
321 const buf = p.literal;
322 const allow_fixed_size_int_suffixes = p.comp.langopts.allowFixedSizedIntSuffixes();
323 const prefix = Prefix.fromString(buf, allow_fixed_size_int_suffixes);
324 const after_prefix = buf[prefix.stringLen()..];
325
326 const int_part = try p.getIntegerPart(after_prefix, prefix);
327 const after_int = after_prefix[int_part.len..];
328
329 const frac = try p.getFracPart(after_int, prefix);
330 const after_frac = after_int[frac.len..];
331
332 const exponent = try p.getExponent(after_frac, prefix);
333 const suffix_str = after_frac[exponent.len..];
334
335 const is_float = (exponent.len > 0 or frac.len > 0);
336 const suffix = Suffix.fromString(suffix_str, if (is_float) .float else .int, allow_fixed_size_int_suffixes) orelse {
337 if (is_float) {
338 try p.err(.invalid_float_suffix, .{suffix_str});
339 } else {
340 try p.err(.invalid_int_suffix, .{suffix_str});
341 }
342 return error.ParsingFailed;
343 };
344 if (suffix.isFloat80() and p.comp.float80Type() == null) {
345 try p.err(.invalid_float_suffix, .{suffix_str});
346 return error.ParsingFailed;
347 }
348
349 if (is_float) {
350 assert(prefix == .hex or prefix == .decimal);
351 if (prefix == .hex and exponent.len == 0) {
352 try p.err(.hex_floating_constant_requires_exponent, .{});
353 return error.ParsingFailed;
354 }
355 return .{
356 .bytes = buf[0 .. buf.len - suffix_str.len],
357 .is_float = true,
358 .prefix = prefix,
359 .suffix = suffix,
360 };
361 } else {
362 if (prefix == .binary and !p.comp.langopts.standard.atLeast(.c23)) {
363 try p.err(.binary_integer_literal, .{});
364 }
365 if (suffix.isBitInt()) {
366 if (p.comp.langopts.standard.atLeast(.c23)) {
367 try p.err(.pre_c23_bitint, .{});
368 } else {
369 try p.err(.bitint_suffix, .{});
370 }
371 }
372 return .{
373 .bytes = int_part,
374 .is_float = false,
375 .prefix = prefix,
376 .suffix = suffix,
377 };
378 }
379 }
380
381 const Diagnostic = struct {
382 fmt: []const u8,
383 kind: Diagnostics.Message.Kind,
384 opt: ?Diagnostics.Option = null,
385 extension: bool = false,
386
387 const invalid_binary_digit: Diagnostic = .{
388 .fmt = "invalid digit '{c}' in binary constant",
389 .kind = .@"error",
390 };
391
392 const invalid_octal_digit: Diagnostic = .{
393 .fmt = "invalid digit '{c}' in octal constant",
394 .kind = .@"error",
395 };
396
397 const invalid_int_suffix: Diagnostic = .{
398 .fmt = "invalid suffix '{s}' on integer constant",
399 .kind = .@"error",
400 };
401
402 const invalid_float_suffix: Diagnostic = .{
403 .fmt = "invalid suffix '{s}' on floating constant",
404 .kind = .@"error",
405 };
406
407 const hex_floating_constant_requires_exponent: Diagnostic = .{
408 .fmt = "hexadecimal floating constant requires an exponent",
409 .kind = .@"error",
410 };
411
412 const exponent_has_no_digits: Diagnostic = .{
413 .fmt = "exponent has no digits",
414 .kind = .@"error",
415 };
416
417 pub const binary_integer_literal: Diagnostic = .{
418 .fmt = "binary integer literals are a C23 extension",
419 .opt = .@"c23-extensions",
420 .kind = .off,
421 .extension = true,
422 };
423
424 pub const bitint_suffix: Diagnostic = .{
425 .fmt = "'_BitInt' suffix for literals is a C23 extension",
426 .opt = .@"c23-extensions",
427 .kind = .warning,
428 .extension = true,
429 };
430
431 pub const pre_c23_bitint: Diagnostic = .{
432 .fmt = "'_BitInt' suffix for literals is incompatible with C standards before C23",
433 .kind = .off,
434 .opt = .@"pre-c23-compat",
435 };
436 };
437
438 fn err(p: *Parser, diagnostic: Diagnostic, args: anytype) !void {
439 if (p.comp.diagnostics.effectiveKind(diagnostic) == .off) return;
440
441 var bfa_buf: [1024]u8 = undefined;
442 var bfa: std.heap.BufferFirstAllocator = .init(&bfa_buf, p.comp.gpa);
443 var allocating: std.Io.Writer.Allocating = .init(bfa.allocator());
444 defer allocating.deinit();
445
446 Diagnostics.formatArgs(&allocating.writer, diagnostic.fmt, args) catch return error.OutOfMemory;
447
448 try p.comp.diagnostics.addWithLocation(p.comp, .{
449 .kind = diagnostic.kind,
450 .text = allocating.written(),
451 .opt = diagnostic.opt,
452 .extension = diagnostic.extension,
453 .location = p.loc.expand(p.comp),
454 }, p.expansion_locs, true);
455 }
456
457 fn getIntegerPart(p: *Parser, buf: []const u8, prefix: Prefix) ![]const u8 {
458 if (buf[0] == '.') return "";
459
460 if (!prefix.digitAllowed(buf[0])) {
461 switch (prefix) {
462 .binary => try p.err(.invalid_binary_digit, .{text_literal.Ascii.init(buf[0])}),
463 .octal => try p.err(.invalid_octal_digit, .{text_literal.Ascii.init(buf[0])}),
464 .hex => try p.err(.invalid_int_suffix, .{buf}),
465 .decimal => unreachable,
466 }
467 return error.ParsingFailed;
468 }
469
470 for (buf, 0..) |c, idx| {
471 if (idx == 0) continue;
472 switch (c) {
473 '.' => return buf[0..idx],
474 'p', 'P' => return if (prefix == .hex) buf[0..idx] else {
475 try p.err(.invalid_int_suffix, .{buf[idx..]});
476 return error.ParsingFailed;
477 },
478 'e', 'E' => {
479 switch (prefix) {
480 .hex => continue,
481 .decimal => return buf[0..idx],
482 .binary => try p.err(.invalid_binary_digit, .{text_literal.Ascii.init(c)}),
483 .octal => try p.err(.invalid_octal_digit, .{text_literal.Ascii.init(c)}),
484 }
485 return error.ParsingFailed;
486 },
487 '0'...'9', 'a'...'d', 'A'...'D', 'f', 'F' => {
488 if (!prefix.digitAllowed(c)) {
489 switch (prefix) {
490 .binary => try p.err(.invalid_binary_digit, .{text_literal.Ascii.init(c)}),
491 .octal => try p.err(.invalid_octal_digit, .{text_literal.Ascii.init(c)}),
492 .decimal, .hex => try p.err(.invalid_int_suffix, .{buf[idx..]}),
493 }
494 return error.ParsingFailed;
495 }
496 },
497 '\'' => {},
498 else => return buf[0..idx],
499 }
500 }
501 return buf;
502 }
503
504 fn getFracPart(p: *Parser, buf: []const u8, prefix: Prefix) ![]const u8 {
505 if (buf.len == 0 or buf[0] != '.') return "";
506 assert(prefix != .octal);
507 if (prefix == .binary) {
508 try p.err(.invalid_int_suffix, .{buf});
509 return error.ParsingFailed;
510 }
511 for (buf, 0..) |c, idx| {
512 if (idx == 0) continue;
513 if (c == '\'') continue;
514 if (!prefix.digitAllowed(c)) return buf[0..idx];
515 }
516 return buf;
517 }
518
519 fn getExponent(p: *Parser, buf: []const u8, prefix: Prefix) ![]const u8 {
520 if (buf.len == 0) return "";
521
522 switch (buf[0]) {
523 'e', 'E' => assert(prefix == .decimal),
524 'p', 'P' => if (prefix != .hex) {
525 try p.err(.invalid_float_suffix, .{buf});
526 return error.ParsingFailed;
527 },
528 else => return "",
529 }
530 const end = for (buf, 0..) |c, idx| {
531 if (idx == 0) continue;
532 if (idx == 1 and (c == '+' or c == '-')) continue;
533 switch (c) {
534 '0'...'9' => {},
535 '\'' => continue,
536 else => break idx,
537 }
538 } else buf.len;
539 const exponent = buf[0..end];
540 if (std.mem.findAny(u8, exponent, "0123456789") == null) {
541 try p.err(.exponent_has_no_digits, .{});
542 return error.ParsingFailed;
543 }
544 return exponent;
545 }
546};
lib/compiler/aro/aro/Tokenizer/text_literal.zig created+621
......@@ -0,0 +1,621 @@
1//! Parsing and classification of string and character literals
2
3const std = @import("std");
4const mem = std.mem;
5
6const Compilation = @import("../Compilation.zig");
7const Diagnostics = @import("../Diagnostics.zig");
8const Tokenizer = @import("../Tokenizer.zig");
9const QualType = @import("../TypeStore.zig").QualType;
10const Source = @import("../Source.zig");
11
12pub const Item = union(enum) {
13 /// decoded hex or character escape
14 value: u32,
15 /// validated unicode codepoint
16 codepoint: u21,
17 /// Char literal in the source text is not utf8 encoded
18 improperly_encoded: []const u8,
19 /// 1 or more unescaped bytes
20 utf8_text: std.unicode.Utf8View,
21};
22
23pub const Kind = enum {
24 char,
25 wide,
26 utf_8,
27 utf_16,
28 utf_32,
29 /// Error kind that halts parsing
30 unterminated,
31
32 pub fn classify(id: Tokenizer.Token.Id, context: enum { string_literal, char_literal }) ?Kind {
33 return switch (context) {
34 .string_literal => switch (id) {
35 .string_literal => .char,
36 .string_literal_utf_8 => .utf_8,
37 .string_literal_wide => .wide,
38 .string_literal_utf_16 => .utf_16,
39 .string_literal_utf_32 => .utf_32,
40 .unterminated_string_literal => .unterminated,
41 else => null,
42 },
43 .char_literal => switch (id) {
44 .char_literal => .char,
45 .char_literal_utf_8 => .utf_8,
46 .char_literal_wide => .wide,
47 .char_literal_utf_16 => .utf_16,
48 .char_literal_utf_32 => .utf_32,
49 else => null,
50 },
51 };
52 }
53
54 /// Should only be called for string literals. Determines the result kind of two adjacent string
55 /// literals
56 pub fn concat(self: Kind, other: Kind) !Kind {
57 if (self == .unterminated or other == .unterminated) return .unterminated;
58 if (self == other) return self; // can always concat with own kind
59 if (self == .char) return other; // char + X -> X
60 if (other == .char) return self; // X + char -> X
61 return error.CannotConcat;
62 }
63
64 /// Largest unicode codepoint that can be represented by this character kind
65 /// May be smaller than the largest value that can be represented.
66 /// For example u8 char literals may only specify 0-127 via literals or
67 /// character escapes, but may specify up to \xFF via hex escapes.
68 pub fn maxCodepoint(kind: Kind, comp: *const Compilation) u21 {
69 return @intCast(switch (kind) {
70 .char => std.math.maxInt(u7),
71 .wide => @min(0x10FFFF, comp.wcharMax()),
72 .utf_8 => std.math.maxInt(u7),
73 .utf_16 => std.math.maxInt(u16),
74 .utf_32 => 0x10FFFF,
75 .unterminated => unreachable,
76 });
77 }
78
79 /// Largest integer that can be represented by this character kind
80 pub fn maxInt(kind: Kind, comp: *const Compilation) u32 {
81 return @intCast(switch (kind) {
82 .char, .utf_8 => std.math.maxInt(u8),
83 .wide => comp.wcharMax(),
84 .utf_16 => std.math.maxInt(u16),
85 .utf_32 => std.math.maxInt(u32),
86 .unterminated => unreachable,
87 });
88 }
89
90 /// The C type of a character literal of this kind
91 pub fn charLiteralType(kind: Kind, comp: *const Compilation) QualType {
92 return switch (kind) {
93 .char => .int,
94 .wide => comp.type_store.wchar,
95 .utf_8 => .uchar,
96 .utf_16 => comp.type_store.uint_least16_t,
97 .utf_32 => comp.type_store.uint_least32_t,
98 .unterminated => unreachable,
99 };
100 }
101
102 /// Return the actual contents of the literal with leading / trailing quotes and
103 /// specifiers removed
104 pub fn contentSlice(kind: Kind, delimited: []const u8) []const u8 {
105 const end = delimited.len - 1; // remove trailing quote
106 return switch (kind) {
107 .char => delimited[1..end],
108 .wide => delimited[2..end],
109 .utf_8 => delimited[3..end],
110 .utf_16 => delimited[2..end],
111 .utf_32 => delimited[2..end],
112 .unterminated => unreachable,
113 };
114 }
115
116 /// The size of a character unit for a string literal of this kind
117 pub fn charUnitSize(kind: Kind, comp: *const Compilation) Compilation.CharUnitSize {
118 return switch (kind) {
119 .char => .@"1",
120 .wide => switch (comp.type_store.wchar.sizeof(comp)) {
121 2 => .@"2",
122 4 => .@"4",
123 else => unreachable,
124 },
125 .utf_8 => .@"1",
126 .utf_16 => .@"2",
127 .utf_32 => .@"4",
128 .unterminated => unreachable,
129 };
130 }
131
132 /// Required alignment within aro (on compiler host) for writing to Interner.strings.
133 pub fn internalStorageAlignment(kind: Kind, comp: *const Compilation) usize {
134 return switch (kind.charUnitSize(comp)) {
135 inline else => |size| @alignOf(size.Type()),
136 };
137 }
138
139 /// The C type of an element of a string literal of this kind
140 pub fn elementType(kind: Kind, comp: *const Compilation) QualType {
141 return switch (kind) {
142 .unterminated => unreachable,
143 .char => .char,
144 .utf_8 => if (comp.langopts.hasChar8_T()) .uchar else .char,
145 else => kind.charLiteralType(comp),
146 };
147 }
148};
149
150pub const Ascii = struct {
151 val: u7,
152
153 pub fn init(val: anytype) Ascii {
154 return .{ .val = @intCast(val) };
155 }
156
157 pub fn format(ctx: Ascii, w: *std.Io.Writer, fmt: []const u8) !usize {
158 const i = Diagnostics.templateIndex(w, fmt, "{c}");
159 if (std.ascii.isPrint(ctx.val)) {
160 try w.writeByte(ctx.val);
161 } else {
162 try w.print("x{x:0>2}", .{ctx.val});
163 }
164 return i;
165 }
166};
167
168pub const Parser = struct {
169 comp: *const Compilation,
170 literal: []const u8,
171 i: usize = 0,
172 kind: Kind,
173 max_codepoint: u21,
174 loc: Source.Location,
175 /// Offset added to `loc.byte_offset` when emitting an error.
176 offset: u32 = 0,
177 expansion_locs: []const Source.Location,
178 /// We only want to issue a max of 1 error per char literal
179 errored: bool = false,
180 /// Makes incorrect encoding always an error.
181 /// Used when concatenating string literals.
182 incorrect_encoding_is_error: bool = false,
183 /// If this is false, do not issue any diagnostics for incorrect character encoding
184 /// Incorrect encoding is allowed if we are unescaping an identifier in the preprocessor
185 diagnose_incorrect_encoding: bool = true,
186
187 pub const Result = union(enum) {
188 unsigned: u32,
189 signed: i32,
190 };
191
192 pub fn parse(p: *Parser) !Result {
193 if (p.kind == .utf_8 and !p.comp.langopts.standard.atLeast(.c23)) {
194 try p.warn(.u8_char_lit, .{});
195 }
196 var val: u32 = 0;
197
198 const gpa = p.comp.gpa;
199 var is_multichar = false;
200 if (p.literal.len == 1 and std.ascii.isAscii(p.literal[0])) {
201 // fast path: single unescaped ASCII char
202 val = p.literal[0];
203 } else {
204 const max_chars_expected = 4;
205 var bfa_buf: [max_chars_expected]u32 = undefined;
206 var bfa: std.heap.BufferFirstAllocator = .init(@ptrCast(&bfa_buf), gpa);
207 const allocator = bfa.allocator();
208 var chars: std.ArrayList(u32) = .empty;
209 defer chars.deinit(allocator);
210
211 chars.ensureUnusedCapacity(allocator, max_chars_expected) catch unreachable; // stack allocation already succeeded
212
213 while (try p.next()) |item| switch (item) {
214 .value => |v| try chars.append(allocator, v),
215 .codepoint => |c| try chars.append(allocator, c),
216 .improperly_encoded => |s| {
217 try chars.ensureUnusedCapacity(allocator, s.len);
218 for (s) |c| chars.appendAssumeCapacity(c);
219 },
220 .utf8_text => |view| {
221 var it = view.iterator();
222 var max_codepoint_seen: u21 = 0;
223 try chars.ensureUnusedCapacity(allocator, view.bytes.len);
224 while (it.nextCodepoint()) |c| {
225 max_codepoint_seen = @max(max_codepoint_seen, c);
226 chars.appendAssumeCapacity(c);
227 }
228 if (max_codepoint_seen > p.max_codepoint) {
229 try p.err(.char_too_large, .{});
230 }
231 },
232 };
233
234 is_multichar = chars.items.len > 1;
235 if (is_multichar) {
236 if (p.kind == .char and chars.items.len == 4) {
237 try p.warn(.four_char_char_literal, .{});
238 } else if (p.kind == .char) {
239 try p.warn(.multichar_literal_warning, .{});
240 } else {
241 const kind: []const u8 = switch (p.kind) {
242 .wide => "wide",
243 .utf_8, .utf_16, .utf_32 => "Unicode",
244 else => unreachable,
245 };
246 try p.err(.invalid_multichar_literal, .{kind});
247 }
248 }
249
250 var multichar_overflow = false;
251 if (p.kind == .char and is_multichar) {
252 for (chars.items) |item| {
253 val, const overflowed = @shlWithOverflow(val, 8);
254 multichar_overflow = multichar_overflow or overflowed != 0;
255 val += @as(u8, @truncate(item));
256 }
257 } else if (chars.items.len > 0) {
258 val = chars.items[chars.items.len - 1];
259 }
260
261 if (multichar_overflow) {
262 try p.err(.char_lit_too_wide, .{});
263 }
264 }
265
266 // C99 6.4.4.4.10
267 // > If an integer character constant contains a single character or escape sequence,
268 // > its value is the one that results when an object with type char whose value is
269 // > that of the single character or escape sequence is converted to type int.
270 // This conversion only matters if `char` is signed and has a high-order bit of `1`
271 if (p.kind == .char and !is_multichar and val > 0x7F and p.comp.getCharSignedness() == .signed) {
272 const signed: i8 = @bitCast(@as(u8, @intCast(val)));
273 return .{ .signed = signed };
274 }
275 return .{ .unsigned = val };
276 }
277
278 fn prefixLen(self: *const Parser) usize {
279 return switch (self.kind) {
280 .unterminated => unreachable,
281 .char => 0,
282 .utf_8 => 2,
283 .wide, .utf_16, .utf_32 => 1,
284 };
285 }
286
287 const Diagnostic = struct {
288 fmt: []const u8,
289 kind: Diagnostics.Message.Kind,
290 opt: ?Diagnostics.Option = null,
291 extension: bool = false,
292
293 pub const illegal_char_encoding_error: Diagnostic = .{
294 .fmt = "illegal character encoding in character literal",
295 .kind = .@"error",
296 };
297
298 pub const illegal_char_encoding_warning: Diagnostic = .{
299 .fmt = "illegal character encoding in character literal",
300 .kind = .warning,
301 .opt = .@"invalid-source-encoding",
302 };
303
304 pub const missing_hex_escape: Diagnostic = .{
305 .fmt = "\\{c} used with no following hex digits",
306 .kind = .@"error",
307 };
308
309 pub const escape_sequence_overflow: Diagnostic = .{
310 .fmt = "escape sequence out of range",
311 .kind = .@"error",
312 };
313
314 pub const incomplete_universal_character: Diagnostic = .{
315 .fmt = "incomplete universal character name",
316 .kind = .@"error",
317 };
318
319 pub const invalid_universal_character: Diagnostic = .{
320 .fmt = "invalid universal character",
321 .kind = .@"error",
322 };
323
324 pub const char_too_large: Diagnostic = .{
325 .fmt = "character too large for enclosing character literal type",
326 .kind = .@"error",
327 };
328
329 pub const ucn_basic_char_error: Diagnostic = .{
330 .fmt = "character '{c}' cannot be specified by a universal character name",
331 .kind = .@"error",
332 };
333
334 pub const ucn_basic_char_warning: Diagnostic = .{
335 .fmt = "specifying character '{c}' with a universal character name is incompatible with C standards before C23",
336 .kind = .off,
337 .opt = .@"pre-c23-compat",
338 };
339
340 pub const ucn_control_char_error: Diagnostic = .{
341 .fmt = "universal character name refers to a control character",
342 .kind = .@"error",
343 };
344
345 pub const ucn_control_char_warning: Diagnostic = .{
346 .fmt = "universal character name referring to a control character is incompatible with C standards before C23",
347 .kind = .off,
348 .opt = .@"pre-c23-compat",
349 };
350
351 pub const c89_ucn_in_literal: Diagnostic = .{
352 .fmt = "universal character names are only valid in C99 or later",
353 .kind = .warning,
354 .opt = .unicode,
355 };
356
357 const non_standard_escape_char: Diagnostic = .{
358 .fmt = "use of non-standard escape character '\\{c}'",
359 .kind = .off,
360 .extension = true,
361 };
362
363 pub const unknown_escape_sequence: Diagnostic = .{
364 .fmt = "unknown escape sequence '\\{c}'",
365 .kind = .warning,
366 .opt = .@"unknown-escape-sequence",
367 };
368
369 pub const four_char_char_literal: Diagnostic = .{
370 .fmt = "multi-character character constant",
371 .opt = .@"four-char-constants",
372 .kind = .off,
373 };
374
375 pub const multichar_literal_warning: Diagnostic = .{
376 .fmt = "multi-character character constant",
377 .kind = .warning,
378 .opt = .multichar,
379 };
380
381 pub const invalid_multichar_literal: Diagnostic = .{
382 .fmt = "{s} character literals may not contain multiple characters",
383 .kind = .@"error",
384 };
385
386 pub const char_lit_too_wide: Diagnostic = .{
387 .fmt = "character constant too long for its type",
388 .kind = .warning,
389 };
390
391 pub const u8_char_lit: Diagnostic = .{
392 .fmt = "UTF-8 character literal is a C23 extension",
393 .opt = .@"c23-extensions",
394 .kind = .warning,
395 .extension = true,
396 };
397
398 // pub const wide_multichar_literal: Diagnostic = .{
399 // .fmt = "extraneous characters in character constant ignored",
400 // .kind = .warning,
401 // };
402 };
403
404 pub fn err(p: *Parser, diagnostic: Diagnostic, args: anytype) !void {
405 defer p.offset = 0;
406 if (p.errored) return;
407 defer p.errored = true;
408 try p.warn(diagnostic, args);
409 }
410
411 pub fn warn(p: *Parser, diagnostic: Diagnostic, args: anytype) Compilation.Error!void {
412 defer p.offset = 0;
413 if (p.errored) return;
414 if (p.comp.diagnostics.effectiveKind(diagnostic) == .off) return;
415
416 var bfa_buf: [1024]u8 = undefined;
417 var bfa: std.heap.BufferFirstAllocator = .init(&bfa_buf, p.comp.gpa);
418 var allocating: std.Io.Writer.Allocating = .init(bfa.allocator());
419 defer allocating.deinit();
420
421 Diagnostics.formatArgs(&allocating.writer, diagnostic.fmt, args) catch return error.OutOfMemory;
422
423 var offset_location = p.loc;
424 offset_location.byte_offset += p.offset;
425 try p.comp.diagnostics.addWithLocation(p.comp, .{
426 .kind = diagnostic.kind,
427 .text = allocating.written(),
428 .opt = diagnostic.opt,
429 .extension = diagnostic.extension,
430 .location = offset_location.expand(p.comp),
431 }, p.expansion_locs, true);
432 }
433
434 pub fn next(p: *Parser) !?Item {
435 if (p.i >= p.literal.len) return null;
436
437 const start = p.i;
438 if (p.literal[start] != '\\') {
439 p.i = mem.findScalarPos(u8, p.literal, start + 1, '\\') orelse p.literal.len;
440 const unescaped_slice = p.literal[start..p.i];
441
442 const view = std.unicode.Utf8View.init(unescaped_slice) catch {
443 if (!p.diagnose_incorrect_encoding) {
444 return .{ .improperly_encoded = p.literal[start..p.i] };
445 }
446 if (p.incorrect_encoding_is_error) {
447 try p.warn(.illegal_char_encoding_error, .{});
448 return .{ .improperly_encoded = p.literal[start..p.i] };
449 }
450 if (p.kind != .char) {
451 try p.err(.illegal_char_encoding_error, .{});
452 return null;
453 }
454 try p.warn(.illegal_char_encoding_warning, .{});
455 return .{ .improperly_encoded = p.literal[start..p.i] };
456 };
457 return .{ .utf8_text = view };
458 }
459 switch (p.literal[start + 1]) {
460 'u', 'U' => return try p.parseUnicodeEscape(),
461 else => return try p.parseEscapedChar(),
462 }
463 }
464
465 fn parseUnicodeEscape(p: *Parser) !?Item {
466 const start = p.i;
467
468 std.debug.assert(p.literal[p.i] == '\\');
469
470 const kind = p.literal[p.i + 1];
471 std.debug.assert(kind == 'u' or kind == 'U');
472
473 p.i += 2;
474 if (p.i >= p.literal.len or !std.ascii.isHex(p.literal[p.i])) {
475 try p.err(.missing_hex_escape, .{Ascii.init(kind)});
476 return null;
477 }
478 const expected_len: usize = if (kind == 'u') 4 else 8;
479 var overflowed = false;
480 var count: usize = 0;
481 var val: u32 = 0;
482
483 for (p.literal[p.i..], 0..) |c, i| {
484 if (i == expected_len) break;
485
486 const char = std.fmt.charToDigit(c, 16) catch break;
487
488 val, const overflow = @shlWithOverflow(val, 4);
489 overflowed = overflowed or overflow != 0;
490 val |= char;
491 count += 1;
492 }
493 p.i += expected_len;
494
495 if (overflowed) {
496 p.offset += @intCast(start + p.prefixLen());
497 try p.err(.escape_sequence_overflow, .{});
498 return null;
499 }
500
501 if (count != expected_len) {
502 try p.err(.incomplete_universal_character, .{});
503 return null;
504 }
505
506 if (val > std.math.maxInt(u21) or !std.unicode.utf8ValidCodepoint(@intCast(val))) {
507 p.offset += @intCast(start + p.prefixLen());
508 try p.err(.invalid_universal_character, .{});
509 return null;
510 }
511
512 if (val > p.max_codepoint) {
513 try p.err(.char_too_large, .{});
514 return null;
515 }
516
517 if (val < 0xA0 and (val != '$' and val != '@' and val != '`')) {
518 const is_error = !p.comp.langopts.standard.atLeast(.c23);
519 if (val >= 0x20 and val <= 0x7F) {
520 if (is_error) {
521 try p.err(.ucn_basic_char_error, .{Ascii.init(val)});
522 } else if (!p.comp.langopts.standard.atLeast(.c23)) {
523 try p.warn(.ucn_basic_char_warning, .{Ascii.init(val)});
524 }
525 } else {
526 if (is_error) {
527 try p.err(.ucn_control_char_error, .{});
528 } else if (!p.comp.langopts.standard.atLeast(.c23)) {
529 try p.warn(.ucn_control_char_warning, .{});
530 }
531 }
532 }
533
534 if (!p.comp.langopts.standard.atLeast(.c99)) try p.warn(.c89_ucn_in_literal, .{});
535 return .{ .codepoint = @intCast(val) };
536 }
537
538 fn parseEscapedChar(p: *Parser) !Item {
539 p.i += 1;
540 const c = p.literal[p.i];
541 defer if (c != 'x' and (c < '0' or c > '7')) {
542 p.i += 1;
543 };
544
545 switch (c) {
546 '\n' => unreachable, // removed by line splicing
547 '\r' => unreachable, // removed by line splicing
548 '\'', '\"', '\\', '?' => return .{ .value = c },
549 'n' => return .{ .value = '\n' },
550 'r' => return .{ .value = '\r' },
551 't' => return .{ .value = '\t' },
552 'a' => return .{ .value = 0x07 },
553 'b' => return .{ .value = 0x08 },
554 'e', 'E' => {
555 p.offset += @intCast(p.i);
556 try p.warn(.non_standard_escape_char, .{Ascii.init(c)});
557 return .{ .value = 0x1B };
558 },
559 '(', '{', '[', '%' => {
560 p.offset += @intCast(p.i);
561 try p.warn(.non_standard_escape_char, .{Ascii.init(c)});
562 return .{ .value = c };
563 },
564 'f' => return .{ .value = 0x0C },
565 'v' => return .{ .value = 0x0B },
566 'x' => return .{ .value = try p.parseNumberEscape(.hex) },
567 '0'...'7' => return .{ .value = try p.parseNumberEscape(.octal) },
568 'u', 'U' => unreachable, // handled by parseUnicodeEscape
569 else => {
570 p.offset += @intCast(p.i);
571 try p.warn(.unknown_escape_sequence, .{Ascii.init(c)});
572 return .{ .value = c };
573 },
574 }
575 }
576
577 fn parseNumberEscape(p: *Parser, base: EscapeBase) !u32 {
578 var val: u32 = 0;
579 var count: usize = 0;
580 var overflowed = false;
581 const start = p.i;
582 defer p.i += count;
583
584 const slice = switch (base) {
585 .octal => p.literal[p.i..@min(p.literal.len, p.i + 3)], // max 3 chars
586 .hex => blk: {
587 p.i += 1;
588 break :blk p.literal[p.i..]; // skip over 'x'; could have an arbitrary number of chars
589 },
590 };
591 for (slice) |c| {
592 const char = std.fmt.charToDigit(c, @backingInt(base)) catch break;
593 val, const overflow = @shlWithOverflow(val, base.log2());
594 if (overflow != 0) overflowed = true;
595 val += char;
596 count += 1;
597 }
598 if (overflowed or val > p.kind.maxInt(p.comp)) {
599 p.offset += @intCast(start + p.prefixLen());
600 try p.err(.escape_sequence_overflow, .{});
601 return 0;
602 }
603 if (count == 0) {
604 std.debug.assert(base == .hex);
605 try p.err(.missing_hex_escape, .{Ascii.init('x')});
606 }
607 return val;
608 }
609};
610
611const EscapeBase = enum(u8) {
612 octal = 8,
613 hex = 16,
614
615 fn log2(base: EscapeBase) u4 {
616 return switch (base) {
617 .octal => 3,
618 .hex => 4,
619 };
620 }
621};
lib/compiler/aro/aro/Toolchain.zig+3-3
......@@ -127,7 +127,7 @@ pub fn getLinkerPath(tc: *const Toolchain, buf: []u8) ![]const u8 {
127127 // for the linker flavor is brittle. In addition, prepending "ld." or "ld64."
128128 // to a relative path is surprising. This is more complex due to priorities
129129 // among -B, COMPILER_PATH and PATH. --ld-path= should be used instead.
130 if (mem.indexOfScalar(u8, use_linker, '/') != null) {
130 if (mem.findScalar(u8, use_linker, '/') != null) {
131131 try tc.driver.comp.diagnostics.add(.{
132132 .text = "'-fuse-ld=' taking a path is deprecated; use '--ld-path=' instead",
133133 .kind = .off,
......@@ -180,7 +180,7 @@ fn possibleProgramNames(
180180) []const []const u8 {
181181 var i: u32 = 0;
182182 if (raw_triple) |triple| {
183 if (std.fmt.bufPrint(buf, "{s}-{s}", .{ triple, name })) |res| {
183 if (mem.print(buf, "{s}-{s}", .{ triple, name })) |res| {
184184 possible_name_buf[i] = res;
185185 i += 1;
186186 } else |_| {}
......@@ -564,7 +564,7 @@ pub fn findProgramByName(tc: *const Toolchain, name: []const u8, buf: []u8) ?[]c
564564 const comp = tc.driver.comp;
565565
566566 // TODO: does WASI need special handling?
567 if (mem.indexOfScalar(u8, name, '/') != null) {
567 if (mem.findScalar(u8, name, '/') != null) {
568568 @memcpy(buf[0..name.len], name);
569569 return buf[0..name.len];
570570 }
lib/compiler/aro/aro/Tree.zig+746-272
......@@ -5,7 +5,7 @@ const Interner = @import("../backend.zig").Interner;
55const Attribute = @import("Attribute.zig");
66const CodeGen = @import("CodeGen.zig");
77const Compilation = @import("Compilation.zig");
8const number_affixes = @import("Tree/number_affixes.zig");
8const Diagnostics = @import("Diagnostics.zig");
99const Source = @import("Source.zig");
1010const Tokenizer = @import("Tokenizer.zig");
1111const QualType = @import("TypeStore.zig").QualType;
......@@ -17,15 +17,83 @@ pub const Token = struct {
1717
1818 pub const List = std.MultiArrayList(Token);
1919 pub const Id = Tokenizer.Token.Id;
20 pub const NumberPrefix = number_affixes.Prefix;
21 pub const NumberSuffix = number_affixes.Suffix;
20
21 pub const Precedence = enum(i8) {
22 comma = 1,
23 assign,
24 binary_conditional,
25 conditional,
26 bool_or,
27 bool_and,
28 bit_or,
29 bit_xor,
30 bit_and,
31 equality,
32 comparison,
33 shift,
34 additive,
35 multiplicative,
36 _,
37
38 pub const any: Precedence = @fromBackingInt(0);
39 pub const invalid: Precedence = @fromBackingInt(-1);
40
41 pub fn next(p: Precedence, min: Precedence) Precedence {
42 return switch (p) {
43 .assign => .assign, // Right associative.
44 .conditional => min, // Right associative.
45 else => @fromBackingInt(@backingInt(p) + 1),
46 };
47 }
48
49 pub fn lt(a: Precedence, b: Precedence) bool {
50 return std.math.compare(@backingInt(a), .lt, @backingInt(b));
51 }
52 };
53
54 pub const precedence = std.enums.directEnumArrayDefault(Tree.Token.Id, Precedence, .invalid, 0, .{
55 .comma = .comma,
56 .equal = .assign,
57 .asterisk_equal = .assign,
58 .slash_equal = .assign,
59 .percent_equal = .assign,
60 .plus_equal = .assign,
61 .minus_equal = .assign,
62 .angle_bracket_angle_bracket_left_equal = .assign,
63 .angle_bracket_angle_bracket_right_equal = .assign,
64 .ampersand_equal = .assign,
65 .caret_equal = .assign,
66 .pipe_equal = .assign,
67 .question_mark = .conditional,
68 .pipe_pipe = .bool_or,
69 .ampersand_ampersand = .bool_and,
70 .pipe = .bit_or,
71 .caret = .bit_xor,
72 .ampersand = .bit_and,
73 .equal_equal = .equality,
74 .bang_equal = .equality,
75 .angle_bracket_right = .comparison,
76 .angle_bracket_right_equal = .comparison,
77 .angle_bracket_left = .comparison,
78 .angle_bracket_left_equal = .comparison,
79 .angle_bracket_angle_bracket_right = .shift,
80 .angle_bracket_angle_bracket_left = .shift,
81 .plus = .additive,
82 .minus = .additive,
83 .asterisk = .multiplicative,
84 .slash = .multiplicative,
85 .percent = .multiplicative,
86 });
2287};
2388
2489pub const TokenWithExpansionLocs = struct {
90 const max_expansion_locs = 64;
91
2592 id: Token.Id,
2693 flags: packed struct {
2794 expansion_disabled: bool = false,
2895 is_macro_arg: bool = false,
96 pragma_directive: bool = false,
2997 } = .{},
3098 /// This location contains the actual token slice which might be generated.
3199 /// If it is generated then there is guaranteed to be at least one
......@@ -50,8 +118,10 @@ pub const TokenWithExpansionLocs = struct {
50118 // what we ask for.
51119 if (list.capacity > 0) {
52120 list.items.ptr[list.capacity - 1].byte_offset = 1;
121 tok.expansion_locs = list.items.ptr;
122 } else {
123 tok.expansion_locs = null;
53124 }
54 tok.expansion_locs = list.items.ptr;
55125 }
56126
57127 if (tok.expansion_locs) |locs| {
......@@ -62,13 +132,22 @@ pub const TokenWithExpansionLocs = struct {
62132 list.capacity = i + 1;
63133 }
64134
65 const min_len = @max(list.items.len + new.len + 1, 4);
135 if (list.items.len >= max_expansion_locs) return;
136 var new_len: usize = 0;
137 for (new) |new_loc| {
138 if (new_loc.id.index != .generated) new_len += 1;
139 }
140 new_len = @min(new_len, max_expansion_locs - list.items.len);
141 if (new_len == 0) return;
142
143 const min_len = @max(list.items.len + new_len + 1, 4);
66144 const wanted_len = std.math.ceilPowerOfTwo(usize, min_len) catch
67145 return error.OutOfMemory;
68146 try list.ensureTotalCapacity(gpa, wanted_len);
69147
70148 for (new) |new_loc| {
71149 if (new_loc.id.index == .generated) continue;
150 if (list.items.len >= max_expansion_locs) break;
72151 list.appendAssumeCapacity(new_loc);
73152 }
74153 }
......@@ -123,13 +202,17 @@ extra: std.ArrayList(u32) = .empty,
123202root_decls: std.ArrayList(Node.Index) = .empty,
124203value_map: ValueMap = .empty,
125204
205attr_map: Attribute.Map = .{},
206
126207pub const genIr = CodeGen.genIr;
127208
128209pub fn deinit(tree: *Tree) void {
129 tree.nodes.deinit(tree.comp.gpa);
130 tree.extra.deinit(tree.comp.gpa);
131 tree.root_decls.deinit(tree.comp.gpa);
132 tree.value_map.deinit(tree.comp.gpa);
210 const gpa = tree.comp.gpa;
211 tree.nodes.deinit(gpa);
212 tree.extra.deinit(gpa);
213 tree.root_decls.deinit(gpa);
214 tree.value_map.deinit(gpa);
215 tree.attr_map.deinit(gpa);
133216 tree.* = undefined;
134217}
135218
......@@ -175,6 +258,7 @@ pub const Node = union(enum) {
175258 null_stmt: NullStmt,
176259 return_stmt: ReturnStmt,
177260 asm_stmt: AsmStmt,
261 decl_stmt: DeclStmt,
178262
179263 assign_expr: Binary,
180264 mul_assign_expr: Binary,
......@@ -283,6 +367,13 @@ pub const Node = union(enum) {
283367 /// Inserted in record and scalar initializers for unspecified elements.
284368 default_init_expr: DefaultInit,
285369
370 codegen_diagnostic: CodegenDiagnostic,
371
372 /// _Alignas(<type>) used as argument of an alignas attribute.
373 alignas_type: AlignasType,
374 /// Plain identifier argument of an attribute.
375 identifier_arg: IdentifierArg,
376
286377 pub const EmptyDecl = struct {
287378 semicolon: TokenIndex,
288379 };
......@@ -369,7 +460,6 @@ pub const Node = union(enum) {
369460 pub const LabeledStmt = struct {
370461 label_tok: TokenIndex,
371462 body: Node.Index,
372 qt: QualType,
373463 };
374464
375465 pub const CompoundStmt = struct {
......@@ -416,10 +506,7 @@ pub const Node = union(enum) {
416506
417507 pub const ForStmt = struct {
418508 for_tok: TokenIndex,
419 init: union(enum) {
420 decls: []const Node.Index,
421 expr: ?Node.Index,
422 },
509 init: ?Node.Index,
423510 cond: ?Node.Index,
424511 incr: ?Node.Index,
425512 body: Node.Index,
......@@ -444,7 +531,6 @@ pub const Node = union(enum) {
444531
445532 pub const NullStmt = struct {
446533 semicolon_or_r_brace_tok: TokenIndex,
447 qt: QualType,
448534 };
449535
450536 pub const ReturnStmt = struct {
......@@ -474,6 +560,11 @@ pub const Node = union(enum) {
474560 };
475561 };
476562
563 pub const DeclStmt = struct {
564 decls: []const Node.Index,
565 first_tok: TokenIndex,
566 };
567
477568 pub const Binary = struct {
478569 qt: QualType,
479570 lhs: Node.Index,
......@@ -728,6 +819,22 @@ pub const Node = union(enum) {
728819 qt: QualType,
729820 };
730821
822 pub const CodegenDiagnostic = struct {
823 tok: TokenIndex,
824 kind: Diagnostics.Message.Kind,
825 opt: ?Diagnostics.Option,
826 text: []const u32,
827 };
828
829 pub const AlignasType = struct {
830 alignas_tok: TokenIndex,
831 qt: QualType,
832 };
833
834 pub const IdentifierArg = struct {
835 identifier_tok: TokenIndex,
836 };
837
731838 pub const Index = enum(u32) {
732839 _,
733840
......@@ -743,7 +850,7 @@ pub const Node = union(enum) {
743850 .static_assert => .{
744851 .static_assert = .{
745852 .assert_tok = node_tok,
746 .cond = @fromBackingInt(@intCast(node_data[0])),
853 .cond = @fromBackingInt(node_data[0]),
747854 .message = unpackOptIndex(node_data[1]),
748855 },
749856 },
......@@ -768,7 +875,7 @@ pub const Node = union(enum) {
768875 .qt = @bitCast(node_data[0]),
769876 .static = attr.static,
770877 .@"inline" = attr.@"inline",
771 .body = @fromBackingInt(@intCast(node_data[2])),
878 .body = @fromBackingInt(node_data[2]),
772879 .definition = null,
773880 },
774881 };
......@@ -838,7 +945,7 @@ pub const Node = union(enum) {
838945 .global_asm => .{
839946 .global_asm = .{
840947 .asm_tok = node_tok,
841 .asm_str = @fromBackingInt(@intCast(node_data[0])),
948 .asm_str = @fromBackingInt(node_data[0]),
842949 },
843950 },
844951 .struct_decl => .{
......@@ -921,8 +1028,7 @@ pub const Node = union(enum) {
9211028 .labeled_stmt => .{
9221029 .labeled_stmt = .{
9231030 .label_tok = node_tok,
924 .qt = @bitCast(node_data[0]),
925 .body = @fromBackingInt(@intCast(node_data[1])),
1031 .body = @fromBackingInt(node_data[0]),
9261032 },
9271033 },
9281034 .compound_stmt => .{
......@@ -940,62 +1046,116 @@ pub const Node = union(enum) {
9401046 .if_stmt => .{
9411047 .if_stmt = .{
9421048 .if_tok = node_tok,
943 .cond = @fromBackingInt(@intCast(node_data[0])),
944 .then_body = @fromBackingInt(@intCast(node_data[1])),
1049 .cond = @fromBackingInt(node_data[0]),
1050 .then_body = @fromBackingInt(node_data[1]),
9451051 .else_body = unpackOptIndex(node_data[2]),
9461052 },
9471053 },
9481054 .switch_stmt => .{
9491055 .switch_stmt = .{
9501056 .switch_tok = node_tok,
951 .cond = @fromBackingInt(@intCast(node_data[0])),
952 .body = @fromBackingInt(@intCast(node_data[1])),
1057 .cond = @fromBackingInt(node_data[0]),
1058 .body = @fromBackingInt(node_data[1]),
9531059 },
9541060 },
9551061 .case_stmt => .{
9561062 .case_stmt = .{
9571063 .case_tok = node_tok,
958 .start = @fromBackingInt(@intCast(node_data[0])),
1064 .start = @fromBackingInt(node_data[0]),
9591065 .end = unpackOptIndex(node_data[1]),
960 .body = @fromBackingInt(@intCast(node_data[2])),
1066 .body = @fromBackingInt(node_data[2]),
9611067 },
9621068 },
9631069 .default_stmt => .{
9641070 .default_stmt = .{
9651071 .default_tok = node_tok,
966 .body = @fromBackingInt(@intCast(node_data[0])),
1072 .body = @fromBackingInt(node_data[0]),
9671073 },
9681074 },
9691075 .while_stmt => .{
9701076 .while_stmt = .{
9711077 .while_tok = node_tok,
972 .cond = @fromBackingInt(@intCast(node_data[0])),
973 .body = @fromBackingInt(@intCast(node_data[1])),
1078 .cond = @fromBackingInt(node_data[0]),
1079 .body = @fromBackingInt(node_data[1]),
9741080 },
9751081 },
9761082 .do_while_stmt => .{
9771083 .do_while_stmt = .{
9781084 .do_tok = node_tok,
979 .cond = @fromBackingInt(@intCast(node_data[0])),
980 .body = @fromBackingInt(@intCast(node_data[1])),
1085 .cond = @fromBackingInt(node_data[0]),
1086 .body = @fromBackingInt(node_data[1]),
9811087 },
9821088 },
983 .for_decl => .{
1089 .for_full => .{
9841090 .for_stmt = .{
9851091 .for_tok = node_tok,
986 .init = .{ .decls = @ptrCast(tree.extra.items[node_data[0]..][0 .. node_data[1] - 2]) },
987 .cond = unpackOptIndex(tree.extra.items[node_data[0] + node_data[1] - 2]),
988 .incr = unpackOptIndex(tree.extra.items[node_data[0] + node_data[1] - 1]),
989 .body = @fromBackingInt(@intCast(node_data[2])),
1092 .init = unpackOptIndex(node_data[0]),
1093 .cond = unpackOptIndex(tree.extra.items[node_data[1]]),
1094 .incr = unpackOptIndex(tree.extra.items[node_data[1] + 1]),
1095 .body = @fromBackingInt(node_data[2]),
9901096 },
9911097 },
992 .for_expr => .{
1098 .for_init_cond => .{
9931099 .for_stmt = .{
9941100 .for_tok = node_tok,
995 .init = .{ .expr = unpackOptIndex(node_data[0]) },
996 .cond = unpackOptIndex(tree.extra.items[node_data[1]]),
997 .incr = unpackOptIndex(tree.extra.items[node_data[1] + 1]),
998 .body = @fromBackingInt(@intCast(node_data[2])),
1101 .init = unpackOptIndex(node_data[0]),
1102 .cond = unpackOptIndex(node_data[1]),
1103 .incr = null,
1104 .body = @fromBackingInt(node_data[2]),
1105 },
1106 },
1107 .for_init_incr => .{
1108 .for_stmt = .{
1109 .for_tok = node_tok,
1110 .init = unpackOptIndex(node_data[0]),
1111 .cond = null,
1112 .incr = unpackOptIndex(node_data[1]),
1113 .body = @fromBackingInt(node_data[2]),
1114 },
1115 },
1116 .for_cond_incr => .{
1117 .for_stmt = .{
1118 .for_tok = node_tok,
1119 .init = null,
1120 .cond = unpackOptIndex(node_data[0]),
1121 .incr = unpackOptIndex(node_data[1]),
1122 .body = @fromBackingInt(node_data[2]),
1123 },
1124 },
1125 .for_init => .{
1126 .for_stmt = .{
1127 .for_tok = node_tok,
1128 .init = unpackOptIndex(node_data[0]),
1129 .cond = null,
1130 .incr = null,
1131 .body = @fromBackingInt(node_data[2]),
1132 },
1133 },
1134 .for_cond => .{
1135 .for_stmt = .{
1136 .for_tok = node_tok,
1137 .init = null,
1138 .cond = unpackOptIndex(node_data[0]),
1139 .incr = null,
1140 .body = @fromBackingInt(node_data[2]),
1141 },
1142 },
1143 .for_incr => .{
1144 .for_stmt = .{
1145 .for_tok = node_tok,
1146 .init = null,
1147 .cond = null,
1148 .incr = unpackOptIndex(node_data[0]),
1149 .body = @fromBackingInt(node_data[2]),
1150 },
1151 },
1152 .for_ever => .{
1153 .for_stmt = .{
1154 .for_tok = node_tok,
1155 .init = null,
1156 .cond = null,
1157 .incr = null,
1158 .body = @fromBackingInt(node_data[2]),
9991159 },
10001160 },
10011161 .goto_stmt => .{
......@@ -1006,7 +1166,7 @@ pub const Node = union(enum) {
10061166 .computed_goto_stmt => .{
10071167 .computed_goto_stmt = .{
10081168 .goto_tok = node_tok,
1009 .expr = @fromBackingInt(@intCast(node_data[0])),
1169 .expr = @fromBackingInt(node_data[0]),
10101170 },
10111171 },
10121172 .continue_stmt => .{
......@@ -1022,7 +1182,6 @@ pub const Node = union(enum) {
10221182 .null_stmt => .{
10231183 .null_stmt = .{
10241184 .semicolon_or_r_brace_tok = node_tok,
1025 .qt = @bitCast(node_data[0]),
10261185 },
10271186 },
10281187 .return_stmt => .{
......@@ -1030,7 +1189,7 @@ pub const Node = union(enum) {
10301189 .return_tok = node_tok,
10311190 .return_qt = @bitCast(node_data[0]),
10321191 .operand = .{
1033 .expr = @fromBackingInt(@intCast(node_data[1])),
1192 .expr = @fromBackingInt(node_data[1]),
10341193 },
10351194 },
10361195 },
......@@ -1082,7 +1241,7 @@ pub const Node = union(enum) {
10821241 return .{
10831242 .asm_stmt = .{
10841243 .asm_tok = node_tok,
1085 .asm_str = @fromBackingInt(@intCast(node_data[0])),
1244 .asm_str = @fromBackingInt(node_data[0]),
10861245 .outputs = @ptrCast(outputs),
10871246 .inputs = @ptrCast(inputs),
10881247 .clobbers = @ptrCast(clobbers),
......@@ -1094,7 +1253,7 @@ pub const Node = union(enum) {
10941253 .asm_stmt_simple => .{
10951254 .asm_stmt = .{
10961255 .asm_tok = node_tok,
1097 .asm_str = @fromBackingInt(@intCast(node_data[0])),
1256 .asm_str = @fromBackingInt(node_data[0]),
10981257 .outputs = &.{},
10991258 .inputs = &.{},
11001259 .clobbers = &.{},
......@@ -1102,251 +1261,263 @@ pub const Node = union(enum) {
11021261 .quals = @bitCast(node_data[1]),
11031262 },
11041263 },
1264 .decl_stmt => .{
1265 .decl_stmt = .{
1266 .first_tok = node_tok,
1267 .decls = @ptrCast(tree.extra.items[node_data[0]..][0..node_data[1]]),
1268 },
1269 },
1270 .decl_stmt_three => .{
1271 .decl_stmt = .{
1272 .first_tok = node_tok,
1273 .decls = unPackElems(node_data),
1274 },
1275 },
11051276 .assign_expr => .{
11061277 .assign_expr = .{
11071278 .op_tok = node_tok,
11081279 .qt = @bitCast(node_data[0]),
1109 .lhs = @fromBackingInt(@intCast(node_data[1])),
1110 .rhs = @fromBackingInt(@intCast(node_data[2])),
1280 .lhs = @fromBackingInt(node_data[1]),
1281 .rhs = @fromBackingInt(node_data[2]),
11111282 },
11121283 },
11131284 .mul_assign_expr => .{
11141285 .mul_assign_expr = .{
11151286 .op_tok = node_tok,
11161287 .qt = @bitCast(node_data[0]),
1117 .lhs = @fromBackingInt(@intCast(node_data[1])),
1118 .rhs = @fromBackingInt(@intCast(node_data[2])),
1288 .lhs = @fromBackingInt(node_data[1]),
1289 .rhs = @fromBackingInt(node_data[2]),
11191290 },
11201291 },
11211292 .div_assign_expr => .{
11221293 .div_assign_expr = .{
11231294 .op_tok = node_tok,
11241295 .qt = @bitCast(node_data[0]),
1125 .lhs = @fromBackingInt(@intCast(node_data[1])),
1126 .rhs = @fromBackingInt(@intCast(node_data[2])),
1296 .lhs = @fromBackingInt(node_data[1]),
1297 .rhs = @fromBackingInt(node_data[2]),
11271298 },
11281299 },
11291300 .mod_assign_expr => .{
11301301 .mod_assign_expr = .{
11311302 .op_tok = node_tok,
11321303 .qt = @bitCast(node_data[0]),
1133 .lhs = @fromBackingInt(@intCast(node_data[1])),
1134 .rhs = @fromBackingInt(@intCast(node_data[2])),
1304 .lhs = @fromBackingInt(node_data[1]),
1305 .rhs = @fromBackingInt(node_data[2]),
11351306 },
11361307 },
11371308 .add_assign_expr => .{
11381309 .add_assign_expr = .{
11391310 .op_tok = node_tok,
11401311 .qt = @bitCast(node_data[0]),
1141 .lhs = @fromBackingInt(@intCast(node_data[1])),
1142 .rhs = @fromBackingInt(@intCast(node_data[2])),
1312 .lhs = @fromBackingInt(node_data[1]),
1313 .rhs = @fromBackingInt(node_data[2]),
11431314 },
11441315 },
11451316 .sub_assign_expr => .{
11461317 .sub_assign_expr = .{
11471318 .op_tok = node_tok,
11481319 .qt = @bitCast(node_data[0]),
1149 .lhs = @fromBackingInt(@intCast(node_data[1])),
1150 .rhs = @fromBackingInt(@intCast(node_data[2])),
1320 .lhs = @fromBackingInt(node_data[1]),
1321 .rhs = @fromBackingInt(node_data[2]),
11511322 },
11521323 },
11531324 .shl_assign_expr => .{
11541325 .shl_assign_expr = .{
11551326 .op_tok = node_tok,
11561327 .qt = @bitCast(node_data[0]),
1157 .lhs = @fromBackingInt(@intCast(node_data[1])),
1158 .rhs = @fromBackingInt(@intCast(node_data[2])),
1328 .lhs = @fromBackingInt(node_data[1]),
1329 .rhs = @fromBackingInt(node_data[2]),
11591330 },
11601331 },
11611332 .shr_assign_expr => .{
11621333 .shr_assign_expr = .{
11631334 .op_tok = node_tok,
11641335 .qt = @bitCast(node_data[0]),
1165 .lhs = @fromBackingInt(@intCast(node_data[1])),
1166 .rhs = @fromBackingInt(@intCast(node_data[2])),
1336 .lhs = @fromBackingInt(node_data[1]),
1337 .rhs = @fromBackingInt(node_data[2]),
11671338 },
11681339 },
11691340 .bit_and_assign_expr => .{
11701341 .bit_and_assign_expr = .{
11711342 .op_tok = node_tok,
11721343 .qt = @bitCast(node_data[0]),
1173 .lhs = @fromBackingInt(@intCast(node_data[1])),
1174 .rhs = @fromBackingInt(@intCast(node_data[2])),
1344 .lhs = @fromBackingInt(node_data[1]),
1345 .rhs = @fromBackingInt(node_data[2]),
11751346 },
11761347 },
11771348 .bit_xor_assign_expr => .{
11781349 .bit_xor_assign_expr = .{
11791350 .op_tok = node_tok,
11801351 .qt = @bitCast(node_data[0]),
1181 .lhs = @fromBackingInt(@intCast(node_data[1])),
1182 .rhs = @fromBackingInt(@intCast(node_data[2])),
1352 .lhs = @fromBackingInt(node_data[1]),
1353 .rhs = @fromBackingInt(node_data[2]),
11831354 },
11841355 },
11851356 .bit_or_assign_expr => .{
11861357 .bit_or_assign_expr = .{
11871358 .op_tok = node_tok,
11881359 .qt = @bitCast(node_data[0]),
1189 .lhs = @fromBackingInt(@intCast(node_data[1])),
1190 .rhs = @fromBackingInt(@intCast(node_data[2])),
1360 .lhs = @fromBackingInt(node_data[1]),
1361 .rhs = @fromBackingInt(node_data[2]),
11911362 },
11921363 },
11931364 .compound_assign_dummy_expr => .{
11941365 .compound_assign_dummy_expr = .{
11951366 .op_tok = node_tok,
11961367 .qt = @bitCast(node_data[0]),
1197 .operand = @fromBackingInt(@intCast(node_data[1])),
1368 .operand = @fromBackingInt(node_data[1]),
11981369 },
11991370 },
12001371 .comma_expr => .{
12011372 .comma_expr = .{
12021373 .op_tok = node_tok,
12031374 .qt = @bitCast(node_data[0]),
1204 .lhs = @fromBackingInt(@intCast(node_data[1])),
1205 .rhs = @fromBackingInt(@intCast(node_data[2])),
1375 .lhs = @fromBackingInt(node_data[1]),
1376 .rhs = @fromBackingInt(node_data[2]),
12061377 },
12071378 },
12081379 .bool_or_expr => .{
12091380 .bool_or_expr = .{
12101381 .op_tok = node_tok,
12111382 .qt = @bitCast(node_data[0]),
1212 .lhs = @fromBackingInt(@intCast(node_data[1])),
1213 .rhs = @fromBackingInt(@intCast(node_data[2])),
1383 .lhs = @fromBackingInt(node_data[1]),
1384 .rhs = @fromBackingInt(node_data[2]),
12141385 },
12151386 },
12161387 .bool_and_expr => .{
12171388 .bool_and_expr = .{
12181389 .op_tok = node_tok,
12191390 .qt = @bitCast(node_data[0]),
1220 .lhs = @fromBackingInt(@intCast(node_data[1])),
1221 .rhs = @fromBackingInt(@intCast(node_data[2])),
1391 .lhs = @fromBackingInt(node_data[1]),
1392 .rhs = @fromBackingInt(node_data[2]),
12221393 },
12231394 },
12241395 .bit_or_expr => .{
12251396 .bit_or_expr = .{
12261397 .op_tok = node_tok,
12271398 .qt = @bitCast(node_data[0]),
1228 .lhs = @fromBackingInt(@intCast(node_data[1])),
1229 .rhs = @fromBackingInt(@intCast(node_data[2])),
1399 .lhs = @fromBackingInt(node_data[1]),
1400 .rhs = @fromBackingInt(node_data[2]),
12301401 },
12311402 },
12321403 .bit_xor_expr => .{
12331404 .bit_xor_expr = .{
12341405 .op_tok = node_tok,
12351406 .qt = @bitCast(node_data[0]),
1236 .lhs = @fromBackingInt(@intCast(node_data[1])),
1237 .rhs = @fromBackingInt(@intCast(node_data[2])),
1407 .lhs = @fromBackingInt(node_data[1]),
1408 .rhs = @fromBackingInt(node_data[2]),
12381409 },
12391410 },
12401411 .bit_and_expr => .{
12411412 .bit_and_expr = .{
12421413 .op_tok = node_tok,
12431414 .qt = @bitCast(node_data[0]),
1244 .lhs = @fromBackingInt(@intCast(node_data[1])),
1245 .rhs = @fromBackingInt(@intCast(node_data[2])),
1415 .lhs = @fromBackingInt(node_data[1]),
1416 .rhs = @fromBackingInt(node_data[2]),
12461417 },
12471418 },
12481419 .equal_expr => .{
12491420 .equal_expr = .{
12501421 .op_tok = node_tok,
12511422 .qt = @bitCast(node_data[0]),
1252 .lhs = @fromBackingInt(@intCast(node_data[1])),
1253 .rhs = @fromBackingInt(@intCast(node_data[2])),
1423 .lhs = @fromBackingInt(node_data[1]),
1424 .rhs = @fromBackingInt(node_data[2]),
12541425 },
12551426 },
12561427 .not_equal_expr => .{
12571428 .not_equal_expr = .{
12581429 .op_tok = node_tok,
12591430 .qt = @bitCast(node_data[0]),
1260 .lhs = @fromBackingInt(@intCast(node_data[1])),
1261 .rhs = @fromBackingInt(@intCast(node_data[2])),
1431 .lhs = @fromBackingInt(node_data[1]),
1432 .rhs = @fromBackingInt(node_data[2]),
12621433 },
12631434 },
12641435 .less_than_expr => .{
12651436 .less_than_expr = .{
12661437 .op_tok = node_tok,
12671438 .qt = @bitCast(node_data[0]),
1268 .lhs = @fromBackingInt(@intCast(node_data[1])),
1269 .rhs = @fromBackingInt(@intCast(node_data[2])),
1439 .lhs = @fromBackingInt(node_data[1]),
1440 .rhs = @fromBackingInt(node_data[2]),
12701441 },
12711442 },
12721443 .less_than_equal_expr => .{
12731444 .less_than_equal_expr = .{
12741445 .op_tok = node_tok,
12751446 .qt = @bitCast(node_data[0]),
1276 .lhs = @fromBackingInt(@intCast(node_data[1])),
1277 .rhs = @fromBackingInt(@intCast(node_data[2])),
1447 .lhs = @fromBackingInt(node_data[1]),
1448 .rhs = @fromBackingInt(node_data[2]),
12781449 },
12791450 },
12801451 .greater_than_expr => .{
12811452 .greater_than_expr = .{
12821453 .op_tok = node_tok,
12831454 .qt = @bitCast(node_data[0]),
1284 .lhs = @fromBackingInt(@intCast(node_data[1])),
1285 .rhs = @fromBackingInt(@intCast(node_data[2])),
1455 .lhs = @fromBackingInt(node_data[1]),
1456 .rhs = @fromBackingInt(node_data[2]),
12861457 },
12871458 },
12881459 .greater_than_equal_expr => .{
12891460 .greater_than_equal_expr = .{
12901461 .op_tok = node_tok,
12911462 .qt = @bitCast(node_data[0]),
1292 .lhs = @fromBackingInt(@intCast(node_data[1])),
1293 .rhs = @fromBackingInt(@intCast(node_data[2])),
1463 .lhs = @fromBackingInt(node_data[1]),
1464 .rhs = @fromBackingInt(node_data[2]),
12941465 },
12951466 },
12961467 .shl_expr => .{
12971468 .shl_expr = .{
12981469 .op_tok = node_tok,
12991470 .qt = @bitCast(node_data[0]),
1300 .lhs = @fromBackingInt(@intCast(node_data[1])),
1301 .rhs = @fromBackingInt(@intCast(node_data[2])),
1471 .lhs = @fromBackingInt(node_data[1]),
1472 .rhs = @fromBackingInt(node_data[2]),
13021473 },
13031474 },
13041475 .shr_expr => .{
13051476 .shr_expr = .{
13061477 .op_tok = node_tok,
13071478 .qt = @bitCast(node_data[0]),
1308 .lhs = @fromBackingInt(@intCast(node_data[1])),
1309 .rhs = @fromBackingInt(@intCast(node_data[2])),
1479 .lhs = @fromBackingInt(node_data[1]),
1480 .rhs = @fromBackingInt(node_data[2]),
13101481 },
13111482 },
13121483 .add_expr => .{
13131484 .add_expr = .{
13141485 .op_tok = node_tok,
13151486 .qt = @bitCast(node_data[0]),
1316 .lhs = @fromBackingInt(@intCast(node_data[1])),
1317 .rhs = @fromBackingInt(@intCast(node_data[2])),
1487 .lhs = @fromBackingInt(node_data[1]),
1488 .rhs = @fromBackingInt(node_data[2]),
13181489 },
13191490 },
13201491 .sub_expr => .{
13211492 .sub_expr = .{
13221493 .op_tok = node_tok,
13231494 .qt = @bitCast(node_data[0]),
1324 .lhs = @fromBackingInt(@intCast(node_data[1])),
1325 .rhs = @fromBackingInt(@intCast(node_data[2])),
1495 .lhs = @fromBackingInt(node_data[1]),
1496 .rhs = @fromBackingInt(node_data[2]),
13261497 },
13271498 },
13281499 .mul_expr => .{
13291500 .mul_expr = .{
13301501 .op_tok = node_tok,
13311502 .qt = @bitCast(node_data[0]),
1332 .lhs = @fromBackingInt(@intCast(node_data[1])),
1333 .rhs = @fromBackingInt(@intCast(node_data[2])),
1503 .lhs = @fromBackingInt(node_data[1]),
1504 .rhs = @fromBackingInt(node_data[2]),
13341505 },
13351506 },
13361507 .div_expr => .{
13371508 .div_expr = .{
13381509 .op_tok = node_tok,
13391510 .qt = @bitCast(node_data[0]),
1340 .lhs = @fromBackingInt(@intCast(node_data[1])),
1341 .rhs = @fromBackingInt(@intCast(node_data[2])),
1511 .lhs = @fromBackingInt(node_data[1]),
1512 .rhs = @fromBackingInt(node_data[2]),
13421513 },
13431514 },
13441515 .mod_expr => .{
13451516 .mod_expr = .{
13461517 .op_tok = node_tok,
13471518 .qt = @bitCast(node_data[0]),
1348 .lhs = @fromBackingInt(@intCast(node_data[1])),
1349 .rhs = @fromBackingInt(@intCast(node_data[2])),
1519 .lhs = @fromBackingInt(node_data[1]),
1520 .rhs = @fromBackingInt(node_data[2]),
13501521 },
13511522 },
13521523 .explicit_cast => .{
......@@ -1354,7 +1525,7 @@ pub const Node = union(enum) {
13541525 .l_paren = node_tok,
13551526 .qt = @bitCast(node_data[0]),
13561527 .kind = @fromBackingInt(@intCast(node_data[1])),
1357 .operand = @fromBackingInt(@intCast(node_data[2])),
1528 .operand = @fromBackingInt(node_data[2]),
13581529 .implicit = false,
13591530 },
13601531 },
......@@ -1363,7 +1534,7 @@ pub const Node = union(enum) {
13631534 .l_paren = node_tok,
13641535 .qt = @bitCast(node_data[0]),
13651536 .kind = @fromBackingInt(@intCast(node_data[1])),
1366 .operand = @fromBackingInt(@intCast(node_data[2])),
1537 .operand = @fromBackingInt(node_data[2]),
13671538 .implicit = true,
13681539 },
13691540 },
......@@ -1371,105 +1542,105 @@ pub const Node = union(enum) {
13711542 .addr_of_expr = .{
13721543 .op_tok = node_tok,
13731544 .qt = @bitCast(node_data[0]),
1374 .operand = @fromBackingInt(@intCast(node_data[1])),
1545 .operand = @fromBackingInt(node_data[1]),
13751546 },
13761547 },
13771548 .deref_expr => .{
13781549 .deref_expr = .{
13791550 .op_tok = node_tok,
13801551 .qt = @bitCast(node_data[0]),
1381 .operand = @fromBackingInt(@intCast(node_data[1])),
1552 .operand = @fromBackingInt(node_data[1]),
13821553 },
13831554 },
13841555 .plus_expr => .{
13851556 .plus_expr = .{
13861557 .op_tok = node_tok,
13871558 .qt = @bitCast(node_data[0]),
1388 .operand = @fromBackingInt(@intCast(node_data[1])),
1559 .operand = @fromBackingInt(node_data[1]),
13891560 },
13901561 },
13911562 .negate_expr => .{
13921563 .negate_expr = .{
13931564 .op_tok = node_tok,
13941565 .qt = @bitCast(node_data[0]),
1395 .operand = @fromBackingInt(@intCast(node_data[1])),
1566 .operand = @fromBackingInt(node_data[1]),
13961567 },
13971568 },
13981569 .bit_not_expr => .{
13991570 .bit_not_expr = .{
14001571 .op_tok = node_tok,
14011572 .qt = @bitCast(node_data[0]),
1402 .operand = @fromBackingInt(@intCast(node_data[1])),
1573 .operand = @fromBackingInt(node_data[1]),
14031574 },
14041575 },
14051576 .bool_not_expr => .{
14061577 .bool_not_expr = .{
14071578 .op_tok = node_tok,
14081579 .qt = @bitCast(node_data[0]),
1409 .operand = @fromBackingInt(@intCast(node_data[1])),
1580 .operand = @fromBackingInt(node_data[1]),
14101581 },
14111582 },
14121583 .pre_inc_expr => .{
14131584 .pre_inc_expr = .{
14141585 .op_tok = node_tok,
14151586 .qt = @bitCast(node_data[0]),
1416 .operand = @fromBackingInt(@intCast(node_data[1])),
1587 .operand = @fromBackingInt(node_data[1]),
14171588 },
14181589 },
14191590 .pre_dec_expr => .{
14201591 .pre_dec_expr = .{
14211592 .op_tok = node_tok,
14221593 .qt = @bitCast(node_data[0]),
1423 .operand = @fromBackingInt(@intCast(node_data[1])),
1594 .operand = @fromBackingInt(node_data[1]),
14241595 },
14251596 },
14261597 .imag_expr => .{
14271598 .imag_expr = .{
14281599 .op_tok = node_tok,
14291600 .qt = @bitCast(node_data[0]),
1430 .operand = @fromBackingInt(@intCast(node_data[1])),
1601 .operand = @fromBackingInt(node_data[1]),
14311602 },
14321603 },
14331604 .real_expr => .{
14341605 .real_expr = .{
14351606 .op_tok = node_tok,
14361607 .qt = @bitCast(node_data[0]),
1437 .operand = @fromBackingInt(@intCast(node_data[1])),
1608 .operand = @fromBackingInt(node_data[1]),
14381609 },
14391610 },
14401611 .post_inc_expr => .{
14411612 .post_inc_expr = .{
14421613 .op_tok = node_tok,
14431614 .qt = @bitCast(node_data[0]),
1444 .operand = @fromBackingInt(@intCast(node_data[1])),
1615 .operand = @fromBackingInt(node_data[1]),
14451616 },
14461617 },
14471618 .post_dec_expr => .{
14481619 .post_dec_expr = .{
14491620 .op_tok = node_tok,
14501621 .qt = @bitCast(node_data[0]),
1451 .operand = @fromBackingInt(@intCast(node_data[1])),
1622 .operand = @fromBackingInt(node_data[1]),
14521623 },
14531624 },
14541625 .paren_expr => .{
14551626 .paren_expr = .{
14561627 .op_tok = node_tok,
14571628 .qt = @bitCast(node_data[0]),
1458 .operand = @fromBackingInt(@intCast(node_data[1])),
1629 .operand = @fromBackingInt(node_data[1]),
14591630 },
14601631 },
14611632 .stmt_expr => .{
14621633 .stmt_expr = .{
14631634 .op_tok = node_tok,
14641635 .qt = @bitCast(node_data[0]),
1465 .operand = @fromBackingInt(@intCast(node_data[1])),
1636 .operand = @fromBackingInt(node_data[1]),
14661637 },
14671638 },
14681639 .cond_dummy_expr => .{
14691640 .cond_dummy_expr = .{
14701641 .op_tok = node_tok,
14711642 .qt = @bitCast(node_data[0]),
1472 .operand = @fromBackingInt(@intCast(node_data[1])),
1643 .operand = @fromBackingInt(node_data[1]),
14731644 },
14741645 },
14751646 .addr_of_label => .{
......@@ -1482,15 +1653,15 @@ pub const Node = union(enum) {
14821653 .array_access_expr = .{
14831654 .l_bracket_tok = node_tok,
14841655 .qt = @bitCast(node_data[0]),
1485 .base = @fromBackingInt(@intCast(node_data[1])),
1486 .index = @fromBackingInt(@intCast(node_data[2])),
1656 .base = @fromBackingInt(node_data[1]),
1657 .index = @fromBackingInt(node_data[2]),
14871658 },
14881659 },
14891660 .call_expr => .{
14901661 .call_expr = .{
14911662 .l_paren_tok = node_tok,
14921663 .qt = @bitCast(node_data[0]),
1493 .callee = @fromBackingInt(@intCast(tree.extra.items[node_data[1]])),
1664 .callee = @fromBackingInt(tree.extra.items[node_data[1]]),
14941665 .args = @ptrCast(tree.extra.items[node_data[1] + 1 ..][0 .. node_data[2] - 1]),
14951666 },
14961667 },
......@@ -1498,7 +1669,7 @@ pub const Node = union(enum) {
14981669 .call_expr = .{
14991670 .l_paren_tok = node_tok,
15001671 .qt = @bitCast(node_data[0]),
1501 .callee = @fromBackingInt(@intCast(node_data[1])),
1672 .callee = @fromBackingInt(node_data[1]),
15021673 .args = unPackElems(node_data[2..]),
15031674 },
15041675 },
......@@ -1520,7 +1691,7 @@ pub const Node = union(enum) {
15201691 .member_access_expr = .{
15211692 .access_tok = node_tok,
15221693 .qt = @bitCast(node_data[0]),
1523 .base = @fromBackingInt(@intCast(node_data[1])),
1694 .base = @fromBackingInt(node_data[1]),
15241695 .member_index = node_data[2],
15251696 },
15261697 },
......@@ -1528,7 +1699,7 @@ pub const Node = union(enum) {
15281699 .member_access_ptr_expr = .{
15291700 .access_tok = node_tok,
15301701 .qt = @bitCast(node_data[0]),
1531 .base = @fromBackingInt(@intCast(node_data[1])),
1702 .base = @fromBackingInt(node_data[1]),
15321703 .member_index = node_data[2],
15331704 },
15341705 },
......@@ -1536,14 +1707,14 @@ pub const Node = union(enum) {
15361707 .decl_ref_expr = .{
15371708 .name_tok = node_tok,
15381709 .qt = @bitCast(node_data[0]),
1539 .decl = @fromBackingInt(@intCast(node_data[1])),
1710 .decl = @fromBackingInt(node_data[1]),
15401711 },
15411712 },
15421713 .enumeration_ref => .{
15431714 .enumeration_ref = .{
15441715 .name_tok = node_tok,
15451716 .qt = @bitCast(node_data[0]),
1546 .decl = @fromBackingInt(@intCast(node_data[1])),
1717 .decl = @fromBackingInt(node_data[1]),
15471718 },
15481719 },
15491720 .builtin_ref => .{
......@@ -1594,7 +1765,7 @@ pub const Node = union(enum) {
15941765 .imaginary_literal = .{
15951766 .op_tok = node_tok,
15961767 .qt = @bitCast(node_data[0]),
1597 .operand = @fromBackingInt(@intCast(node_data[1])),
1768 .operand = @fromBackingInt(node_data[1]),
15981769 },
15991770 },
16001771 .sizeof_expr => .{
......@@ -1618,8 +1789,8 @@ pub const Node = union(enum) {
16181789 .generic_expr = .{
16191790 .generic_tok = node_tok,
16201791 .qt = @bitCast(node_data[0]),
1621 .controlling = @fromBackingInt(@intCast(node_data[1])),
1622 .chosen = @fromBackingInt(@intCast(node_data[2])),
1792 .controlling = @fromBackingInt(node_data[1]),
1793 .chosen = @fromBackingInt(node_data[2]),
16231794 .rest = &.{},
16241795 },
16251796 },
......@@ -1627,8 +1798,8 @@ pub const Node = union(enum) {
16271798 .generic_expr = .{
16281799 .generic_tok = node_tok,
16291800 .qt = @bitCast(node_data[0]),
1630 .controlling = @fromBackingInt(@intCast(tree.extra.items[node_data[1]])),
1631 .chosen = @fromBackingInt(@intCast(tree.extra.items[node_data[1] + 1])),
1801 .controlling = @fromBackingInt(tree.extra.items[node_data[1]]),
1802 .chosen = @fromBackingInt(tree.extra.items[node_data[1] + 1]),
16321803 .rest = @ptrCast(tree.extra.items[node_data[1] + 2 ..][0 .. node_data[2] - 2]),
16331804 },
16341805 },
......@@ -1636,40 +1807,40 @@ pub const Node = union(enum) {
16361807 .generic_association_expr = .{
16371808 .colon_tok = node_tok,
16381809 .association_qt = @bitCast(node_data[0]),
1639 .expr = @fromBackingInt(@intCast(node_data[1])),
1810 .expr = @fromBackingInt(node_data[1]),
16401811 },
16411812 },
16421813 .generic_default_expr => .{
16431814 .generic_default_expr = .{
16441815 .default_tok = node_tok,
1645 .expr = @fromBackingInt(@intCast(node_data[0])),
1816 .expr = @fromBackingInt(node_data[0]),
16461817 },
16471818 },
16481819 .binary_cond_expr => .{
16491820 .binary_cond_expr = .{
16501821 .cond_tok = node_tok,
16511822 .qt = @bitCast(node_data[0]),
1652 .cond = @fromBackingInt(@intCast(node_data[1])),
1653 .then_expr = @fromBackingInt(@intCast(tree.extra.items[node_data[2]])),
1654 .else_expr = @fromBackingInt(@intCast(tree.extra.items[node_data[2] + 1])),
1823 .cond = @fromBackingInt(node_data[1]),
1824 .then_expr = @fromBackingInt(tree.extra.items[node_data[2]]),
1825 .else_expr = @fromBackingInt(tree.extra.items[node_data[2] + 1]),
16551826 },
16561827 },
16571828 .cond_expr => .{
16581829 .cond_expr = .{
16591830 .cond_tok = node_tok,
16601831 .qt = @bitCast(node_data[0]),
1661 .cond = @fromBackingInt(@intCast(node_data[1])),
1662 .then_expr = @fromBackingInt(@intCast(tree.extra.items[node_data[2]])),
1663 .else_expr = @fromBackingInt(@intCast(tree.extra.items[node_data[2] + 1])),
1832 .cond = @fromBackingInt(node_data[1]),
1833 .then_expr = @fromBackingInt(tree.extra.items[node_data[2]]),
1834 .else_expr = @fromBackingInt(tree.extra.items[node_data[2] + 1]),
16641835 },
16651836 },
16661837 .builtin_choose_expr => .{
16671838 .builtin_choose_expr = .{
16681839 .cond_tok = node_tok,
16691840 .qt = @bitCast(node_data[0]),
1670 .cond = @fromBackingInt(@intCast(node_data[1])),
1671 .then_expr = @fromBackingInt(@intCast(tree.extra.items[node_data[2]])),
1672 .else_expr = @fromBackingInt(@intCast(tree.extra.items[node_data[2] + 1])),
1841 .cond = @fromBackingInt(node_data[1]),
1842 .then_expr = @fromBackingInt(tree.extra.items[node_data[2]]),
1843 .else_expr = @fromBackingInt(tree.extra.items[node_data[2] + 1]),
16731844 },
16741845 },
16751846 .builtin_types_compatible_p => .{
......@@ -1683,15 +1854,15 @@ pub const Node = union(enum) {
16831854 .builtin_convertvector = .{
16841855 .builtin_tok = node_tok,
16851856 .dest_qt = @bitCast(node_data[0]),
1686 .operand = @fromBackingInt(@intCast(node_data[1])),
1857 .operand = @fromBackingInt(node_data[1]),
16871858 },
16881859 },
16891860 .builtin_shufflevector => .{
16901861 .builtin_shufflevector = .{
16911862 .builtin_tok = node_tok,
16921863 .qt = @bitCast(node_data[0]),
1693 .lhs = @fromBackingInt(@intCast(tree.extra.items[node_data[1]])),
1694 .rhs = @fromBackingInt(@intCast(tree.extra.items[node_data[1] + 1])),
1864 .lhs = @fromBackingInt(tree.extra.items[node_data[1]]),
1865 .rhs = @fromBackingInt(tree.extra.items[node_data[1] + 1]),
16951866 .indexes = @ptrCast(tree.extra.items[node_data[1] + 2 ..][0..node_data[2]]),
16961867 },
16971868 },
......@@ -1767,10 +1938,38 @@ pub const Node = union(enum) {
17671938 else
17681939 .auto,
17691940 .thread_local = attr.thread_local,
1770 .initializer = @fromBackingInt(@intCast(node_data[2])),
1941 .initializer = @fromBackingInt(node_data[2]),
17711942 },
17721943 };
17731944 },
1945 .codegen_diagnostic => {
1946 const attr: Node.Repr.DiagnosticPack = @bitCast(node_data[0]);
1947 return .{
1948 .codegen_diagnostic = .{
1949 .tok = node_tok,
1950 .kind = switch (attr.kind) {
1951 .@"error" => .@"error",
1952 .warning => .warning,
1953 },
1954 .opt = switch (attr.opt) {
1955 .none => null,
1956 .@"attribute-warning" => .@"attribute-warning",
1957 },
1958 .text = @ptrCast(tree.extra.items[node_data[1]..][0..node_data[2]]),
1959 },
1960 };
1961 },
1962 .alignas_type => .{
1963 .alignas_type = .{
1964 .alignas_tok = node_tok,
1965 .qt = @bitCast(node_data[0]),
1966 },
1967 },
1968 .identifier_arg => .{
1969 .identifier_arg = .{
1970 .identifier_tok = node_tok,
1971 },
1972 },
17741973 };
17751974 }
17761975
......@@ -1799,8 +1998,14 @@ pub const Node = union(enum) {
17991998 .default_stmt,
18001999 .while_stmt,
18012000 .do_while_stmt,
1802 .for_decl,
1803 .for_expr,
2001 .for_full,
2002 .for_init_cond,
2003 .for_init_incr,
2004 .for_cond_incr,
2005 .for_init,
2006 .for_cond,
2007 .for_incr,
2008 .for_ever,
18042009 .goto_stmt,
18052010 .computed_goto_stmt,
18062011 .continue_stmt,
......@@ -1810,6 +2015,10 @@ pub const Node = union(enum) {
18102015 .asm_stmt_inline,
18112016 .asm_stmt_inline_volatile,
18122017 .asm_stmt_simple,
2018 .decl_stmt_three,
2019 .decl_stmt,
2020 .null_stmt,
2021 .labeled_stmt,
18132022 .global_asm,
18142023 .generic_association_expr,
18152024 .generic_default_expr,
......@@ -1823,6 +2032,12 @@ pub const Node = union(enum) {
18232032 },
18242033 };
18252034 }
2035
2036 /// No-op equivalent to OptIndex.unpack to make it easy for functions
2037 /// to accept both.
2038 pub inline fn unpack(node: Index) ?Index {
2039 return node;
2040 }
18262041 };
18272042
18282043 pub const OptIndex = enum(u32) {
......@@ -1830,15 +2045,15 @@ pub const Node = union(enum) {
18302045 _,
18312046
18322047 pub fn unpack(opt: OptIndex) ?Index {
1833 return if (opt == .null) null else @fromBackingInt(@intCast(@backingInt(opt)));
2048 return if (opt == .null) null else @fromBackingInt(@backingInt(opt));
18342049 }
18352050
18362051 pub fn pack(index: Index) OptIndex {
1837 return @fromBackingInt(@intCast(@backingInt(index)));
2052 return @fromBackingInt(@backingInt(index));
18382053 }
18392054
18402055 pub fn packOpt(optional: ?Index) OptIndex {
1841 return if (optional) |some| @fromBackingInt(@intCast(@backingInt(some))) else .null;
2056 return if (optional) |some| @fromBackingInt(@backingInt(some)) else .null;
18422057 }
18432058 };
18442059
......@@ -1858,6 +2073,18 @@ pub const Node = union(enum) {
18582073 _: u26 = 0,
18592074 };
18602075
2076 const DiagnosticPack = packed struct(u32) {
2077 kind: enum(u1) {
2078 @"error",
2079 warning,
2080 },
2081 opt: enum(u1) {
2082 none,
2083 @"attribute-warning",
2084 },
2085 _: u30 = 0,
2086 };
2087
18612088 pub const Tag = enum(u8) {
18622089 empty_decl,
18632090 static_assert,
......@@ -1888,8 +2115,14 @@ pub const Node = union(enum) {
18882115 default_stmt,
18892116 while_stmt,
18902117 do_while_stmt,
1891 for_expr,
1892 for_decl,
2118 for_full,
2119 for_init_cond,
2120 for_init_incr,
2121 for_cond_incr,
2122 for_init,
2123 for_cond,
2124 for_incr,
2125 for_ever,
18932126 goto_stmt,
18942127 computed_goto_stmt,
18952128 continue_stmt,
......@@ -1903,6 +2136,8 @@ pub const Node = union(enum) {
19032136 asm_stmt_volatile,
19042137 asm_stmt_inline_volatile,
19052138 asm_stmt_simple,
2139 decl_stmt_three,
2140 decl_stmt,
19062141 comma_expr,
19072142 assign_expr,
19082143 mul_assign_expr,
......@@ -1991,6 +2226,9 @@ pub const Node = union(enum) {
19912226 array_filler_expr,
19922227 default_init_expr,
19932228 compound_literal_expr,
2229 codegen_diagnostic,
2230 alignas_type,
2231 identifier_arg,
19942232 };
19952233 };
19962234
......@@ -2150,8 +2388,7 @@ pub fn setNode(tree: *Tree, node: Node, index: usize) !void {
21502388 },
21512389 .labeled_stmt => |labeled| {
21522390 repr.tag = .labeled_stmt;
2153 repr.data[0] = @bitCast(labeled.qt);
2154 repr.data[1] = @backingInt(labeled.body);
2391 repr.data[0] = @backingInt(labeled.body);
21552392 repr.tok = labeled.label_tok;
21562393 },
21572394 .compound_stmt => |compound| {
......@@ -2203,25 +2440,39 @@ pub fn setNode(tree: *Tree, node: Node, index: usize) !void {
22032440 repr.tok = do_while.do_tok;
22042441 },
22052442 .for_stmt => |@"for"| {
2206 switch (@"for".init) {
2207 .decls => |decls| {
2208 repr.tag = .for_decl;
2209 repr.data[0] = @intCast(tree.extra.items.len);
2210 const len: u32 = @intCast(decls.len + 2);
2211 try tree.extra.ensureUnusedCapacity(tree.comp.gpa, len);
2212 repr.data[1] = len;
2213 tree.extra.appendSliceAssumeCapacity(@ptrCast(decls));
2214 tree.extra.appendAssumeCapacity(packOptIndex(@"for".cond));
2215 tree.extra.appendAssumeCapacity(packOptIndex(@"for".incr));
2216 },
2217 .expr => |expr| {
2218 repr.tag = .for_expr;
2219 repr.data[0] = packOptIndex(expr);
2220 repr.data[1] = @intCast(tree.extra.items.len);
2221 try tree.extra.ensureUnusedCapacity(tree.comp.gpa, 2);
2222 tree.extra.appendAssumeCapacity(packOptIndex(@"for".cond));
2223 tree.extra.appendAssumeCapacity(packOptIndex(@"for".incr));
2224 },
2443 const init = @"for".init != null;
2444 const cond = @"for".cond != null;
2445 const incr = @"for".incr != null;
2446 if (init and cond and incr) {
2447 repr.tag = .for_full;
2448 repr.data[0] = packOptIndex(@"for".init);
2449 repr.data[1] = @intCast(tree.extra.items.len);
2450 try tree.extra.ensureUnusedCapacity(tree.comp.gpa, 2);
2451 tree.extra.appendAssumeCapacity(packOptIndex(@"for".cond));
2452 tree.extra.appendAssumeCapacity(packOptIndex(@"for".incr));
2453 } else if (init and cond) {
2454 repr.tag = .for_init_cond;
2455 repr.data[0] = packOptIndex(@"for".init);
2456 repr.data[1] = packOptIndex(@"for".cond);
2457 } else if (init and incr) {
2458 repr.tag = .for_init_incr;
2459 repr.data[0] = packOptIndex(@"for".init);
2460 repr.data[1] = packOptIndex(@"for".incr);
2461 } else if (cond and incr) {
2462 repr.tag = .for_cond_incr;
2463 repr.data[0] = packOptIndex(@"for".cond);
2464 repr.data[1] = packOptIndex(@"for".incr);
2465 } else if (init) {
2466 repr.tag = .for_init;
2467 repr.data[0] = packOptIndex(@"for".cond);
2468 } else if (cond) {
2469 repr.tag = .for_cond;
2470 repr.data[0] = packOptIndex(@"for".cond);
2471 } else if (incr) {
2472 repr.tag = .for_incr;
2473 repr.data[0] = packOptIndex(@"for".cond);
2474 } else {
2475 repr.tag = .for_ever;
22252476 }
22262477 repr.data[2] = @backingInt(@"for".body);
22272478 repr.tok = @"for".for_tok;
......@@ -2245,7 +2496,6 @@ pub fn setNode(tree: *Tree, node: Node, index: usize) !void {
22452496 },
22462497 .null_stmt => |@"null"| {
22472498 repr.tag = .null_stmt;
2248 repr.data[0] = @bitCast(@"null".qt);
22492499 repr.tok = @"null".semicolon_or_r_brace_tok;
22502500 },
22512501 .return_stmt => |@"return"| {
......@@ -2299,6 +2549,17 @@ pub fn setNode(tree: *Tree, node: Node, index: usize) !void {
22992549 tree.extra.appendSliceAssumeCapacity(@ptrCast(asm_stmt.labels));
23002550 }
23012551 },
2552 .decl_stmt => |decl_stmt| {
2553 repr.tok = decl_stmt.first_tok;
2554 if (decl_stmt.decls.len > 3) {
2555 repr.tag = .decl_stmt;
2556 repr.data[0], repr.data[1] = try tree.addExtra(decl_stmt.decls);
2557 } else {
2558 repr.tag = .decl_stmt_three;
2559 for (&repr.data, 0..) |*data, idx|
2560 data.* = packElem(decl_stmt.decls, idx);
2561 }
2562 },
23022563 .assign_expr => |bin| {
23032564 repr.tag = .assign_expr;
23042565 repr.data[0] = @bitCast(bin.qt);
......@@ -2870,6 +3131,31 @@ pub fn setNode(tree: *Tree, node: Node, index: usize) !void {
28703131 repr.data[2] = @backingInt(literal.initializer);
28713132 repr.tok = literal.l_paren_tok;
28723133 },
3134 .codegen_diagnostic => |diagnostic| {
3135 repr.tag = .codegen_diagnostic;
3136 repr.data[0] = @bitCast(Node.Repr.DiagnosticPack{
3137 .kind = switch (diagnostic.kind) {
3138 .@"error" => .@"error",
3139 .warning => .warning,
3140 else => unreachable,
3141 },
3142 .opt = if (diagnostic.opt) |opt| switch (opt) {
3143 .@"attribute-warning" => .@"attribute-warning",
3144 else => unreachable,
3145 } else .none,
3146 });
3147 repr.data[1], repr.data[2] = try tree.addExtra(@ptrCast(diagnostic.text));
3148 repr.tok = diagnostic.tok;
3149 },
3150 .alignas_type => |alignas| {
3151 repr.tag = .alignas_type;
3152 repr.data[0] = @bitCast(alignas.qt);
3153 repr.tok = alignas.alignas_tok;
3154 },
3155 .identifier_arg => |identifier_arg| {
3156 repr.tag = .identifier_arg;
3157 repr.tok = identifier_arg.identifier_tok;
3158 },
28733159 }
28743160 tree.nodes.set(index, repr);
28753161}
......@@ -2922,21 +3208,25 @@ pub fn bitfieldWidth(tree: *const Tree, node: Node.Index, inspect_lval: bool) ?u
29223208 }
29233209}
29243210
2925const CallableResultUsage = struct {
3211const CalledFunctionAttr = struct {
29263212 /// name token of the thing being called, for diagnostics
29273213 tok: TokenIndex,
2928 /// true if `nodiscard` attribute present
2929 nodiscard: bool,
2930 /// true if `warn_unused_result` attribute present
2931 warn_unused_result: bool,
3214 /// The requested attribute if present.
3215 attr: ?Attribute,
29323216};
29333217
2934pub fn callableResultUsage(tree: *const Tree, node: Node.Index) ?CallableResultUsage {
3218/// Check for an attribute on function declaration or its return type.
3219pub fn calledFunctionAttr(tree: *const Tree, node: Node.Index, tag: Attribute.Tag) ?CalledFunctionAttr {
3220 const comp = tree.comp;
3221 const am = &tree.attr_map;
29353222 loop: switch (node.get(tree)) {
29363223 .decl_ref_expr => |decl_ref| return .{
29373224 .tok = decl_ref.name_tok,
2938 .nodiscard = decl_ref.qt.hasAttribute(tree.comp, .nodiscard),
2939 .warn_unused_result = decl_ref.qt.hasAttribute(tree.comp, .warn_unused_result),
3225 .attr = am.getAttribute(decl_ref.decl, tag) orelse blk: {
3226 const base_qt = if (decl_ref.qt.get(comp, .pointer)) |pointer| pointer.child else decl_ref.qt;
3227 const func = base_qt.get(comp, .func) orelse break :blk null;
3228 break :blk func.return_type.getAttribute(tree, tag);
3229 },
29403230 },
29413231
29423232 .paren_expr, .addr_of_expr, .deref_expr => |un| continue :loop un.operand.get(tree),
......@@ -2945,23 +3235,30 @@ pub fn callableResultUsage(tree: *const Tree, node: Node.Index) ?CallableResultU
29453235 .call_expr => |call| continue :loop call.callee.get(tree),
29463236 .member_access_expr, .member_access_ptr_expr => |access| {
29473237 var qt = access.base.qt(tree);
2948 if (qt.get(tree.comp, .pointer)) |pointer| qt = pointer.child;
2949 const record_ty = switch (qt.base(tree.comp).type) {
2950 .@"struct", .@"union" => |record| record,
2951 else => return null,
2952 };
3238 if (qt.get(comp, .pointer)) |pointer| qt = pointer.child;
3239 const record_ty = qt.getRecord(comp) orelse return null;
29533240
29543241 const field = record_ty.fields[access.member_index];
29553242 return .{
29563243 .tok = field.name_tok,
2957 .nodiscard = field.qt.hasAttribute(tree.comp, .nodiscard),
2958 .warn_unused_result = field.qt.hasAttribute(tree.comp, .warn_unused_result),
3244 .attr = am.getAttribute(field.field_decl, tag) orelse blk: {
3245 const base_qt = if (field.qt.get(comp, .pointer)) |pointer| pointer.child else field.qt;
3246 const func = base_qt.get(comp, .func) orelse break :blk null;
3247 break :blk func.return_type.getAttribute(tree, tag);
3248 },
29593249 };
29603250 },
29613251 else => return null,
29623252 }
29633253}
29643254
3255pub fn linkage(tree: *const Tree, node: Node.Index) std.builtin.GlobalLinkage {
3256 const am = &tree.attr_map;
3257 if (am.hasAttribute(node, .weak)) return .weak;
3258 if (am.hasAttribute(node, .selectany)) return .weak;
3259 return .strong;
3260}
3261
29653262pub fn isLval(tree: *const Tree, node: Node.Index) bool {
29663263 var is_const: bool = undefined;
29673264 return tree.isLvalExtra(node, &is_const);
......@@ -3028,6 +3325,196 @@ pub fn tokSlice(tree: *const Tree, tok_i: TokenIndex) []const u8 {
30283325 return tree.comp.locSlice(loc);
30293326}
30303327
3328pub fn write(tree: *const Tree, node: Node.Index, w: *std.Io.Writer) std.Io.Writer.Error!void {
3329 switch (node.get(tree)) {
3330 .cast => |cast| {
3331 if (!cast.implicit) {
3332 try w.writeByte('(');
3333 try cast.qt.printDesugared(tree.comp, w);
3334 try w.writeByte(')');
3335 }
3336 try tree.write(cast.operand, w);
3337 },
3338 .paren_expr => |un| {
3339 try w.writeByte('(');
3340 try tree.write(un.operand, w);
3341 try w.writeByte(')');
3342 },
3343 .comma_expr => |bin| {
3344 try tree.write(bin.lhs, w);
3345 try w.writeAll(", ");
3346 try tree.write(bin.rhs, w);
3347 },
3348 .bool_or_expr,
3349 .bool_and_expr,
3350 .bit_or_expr,
3351 .bit_xor_expr,
3352 .bit_and_expr,
3353 .equal_expr,
3354 .not_equal_expr,
3355 .less_than_expr,
3356 .less_than_equal_expr,
3357 .greater_than_expr,
3358 .greater_than_equal_expr,
3359 .shl_expr,
3360 .shr_expr,
3361 .add_expr,
3362 .sub_expr,
3363 .mul_expr,
3364 .div_expr,
3365 .mod_expr,
3366 => |bin| {
3367 try tree.write(bin.lhs, w);
3368 try w.print(" {s} ", .{tree.tokSlice(bin.op_tok)});
3369 try tree.write(bin.rhs, w);
3370 },
3371 .addr_of_expr,
3372 .deref_expr,
3373 .plus_expr,
3374 .negate_expr,
3375 .bit_not_expr,
3376 .bool_not_expr,
3377 .pre_inc_expr,
3378 .pre_dec_expr,
3379 => |un| {
3380 try w.writeAll(tree.tokSlice(un.op_tok));
3381 try tree.write(un.operand, w);
3382 },
3383 .imag_expr,
3384 .real_expr,
3385 => |un| {
3386 try w.writeAll(tree.tokSlice(un.op_tok));
3387 try w.writeByte(' ');
3388 try tree.write(un.operand, w);
3389 },
3390 .post_inc_expr,
3391 .post_dec_expr,
3392 => |un| {
3393 try tree.write(un.operand, w);
3394 try w.writeAll(tree.tokSlice(un.op_tok));
3395 },
3396 .bool_literal,
3397 .nullptr_literal,
3398 .int_literal,
3399 .float_literal,
3400 => |literal| {
3401 try w.writeAll(tree.tokSlice(literal.literal_tok));
3402 },
3403 .char_literal => |literal| {
3404 try w.writeAll(tree.tokSlice(literal.literal_tok));
3405 },
3406 .string_literal_expr => |literal| {
3407 const val = tree.value_map.get(node).?;
3408 _ = try val.print(literal.qt, tree.comp, w);
3409 },
3410 .imaginary_literal => |un| try tree.write(un.operand, w),
3411 .sizeof_expr,
3412 .alignof_expr,
3413 => |type_info| {
3414 try w.writeAll(tree.tokSlice(type_info.op_tok));
3415 if (type_info.expr) |expr| {
3416 try w.writeByte(' ');
3417 return tree.write(expr, w);
3418 }
3419 try w.writeByte('(');
3420 try type_info.operand_qt.printDesugared(tree.comp, w);
3421 try w.writeByte(')');
3422 },
3423 .decl_ref_expr,
3424 .enumeration_ref,
3425 => |decl_ref| {
3426 try w.writeAll(tree.tokSlice(decl_ref.name_tok));
3427 },
3428 .builtin_types_compatible_p => |bin| {
3429 try w.writeAll(tree.tokSlice(bin.builtin_tok));
3430 try w.writeByte('(');
3431 try bin.lhs.printDesugared(tree.comp, w);
3432 try w.writeAll(", ");
3433 try bin.rhs.printDesugared(tree.comp, w);
3434 try w.writeByte(')');
3435 },
3436 .generic_expr => |generic| {
3437 try w.writeAll(tree.tokSlice(generic.generic_tok));
3438 try w.writeByte('(');
3439 try tree.write(generic.controlling, w);
3440 for (generic.rest) |association| {
3441 try w.writeAll(", ");
3442 try tree.write(association, w);
3443 }
3444 try w.writeAll(", ");
3445 try tree.write(generic.chosen, w);
3446 try w.writeByte(')');
3447 },
3448 .generic_association_expr => |generic| {
3449 try generic.association_qt.printDesugared(tree.comp, w);
3450 try w.writeAll(": ");
3451 try tree.write(generic.expr, w);
3452 },
3453 .generic_default_expr => |generic| {
3454 try w.writeAll(tree.tokSlice(generic.default_tok));
3455 try w.writeAll(": ");
3456 try tree.write(generic.expr, w);
3457 },
3458 .builtin_call_expr => |call| {
3459 try w.writeAll(tree.tokSlice(call.builtin_tok));
3460 try w.writeByte('(');
3461 for (call.args, 0..) |arg, i| {
3462 if (i != 0) try w.writeAll(", ");
3463 try tree.write(arg, w);
3464 }
3465 try w.writeByte(')');
3466 },
3467 .binary_cond_expr => |cond| {
3468 try tree.write(cond.cond, w);
3469 try w.writeAll(" ?: ");
3470 try tree.write(cond.else_expr, w);
3471 },
3472 .cond_expr => |cond| {
3473 try tree.write(cond.cond, w);
3474 try w.writeAll(" ? ");
3475 try tree.write(cond.then_expr, w);
3476 try w.writeAll(" : ");
3477 try tree.write(cond.else_expr, w);
3478 },
3479 .builtin_choose_expr => |cond| {
3480 try w.writeAll("__builtin_choose_expr(");
3481 try tree.write(cond.cond, w);
3482 try w.writeAll(", ");
3483 try tree.write(cond.then_expr, w);
3484 try w.writeAll(", ");
3485 try tree.write(cond.else_expr, w);
3486 try w.writeByte(')');
3487 },
3488 .builtin_va_arg_pack,
3489 .builtin_va_arg_pack_len,
3490 => |va_arg| {
3491 try w.writeAll(tree.tokSlice(va_arg.builtin_tok));
3492 try w.writeAll("()");
3493 },
3494 .array_access_expr => |access| {
3495 try tree.write(access.base, w);
3496 try w.writeByte('[');
3497 try tree.write(access.index, w);
3498 try w.writeByte(']');
3499 },
3500 .member_access_expr,
3501 .member_access_ptr_expr,
3502 => |access| {
3503 try tree.write(access.base, w);
3504
3505 var base_qt = access.base.qt(tree);
3506 if (base_qt.get(tree.comp, .pointer)) |some| base_qt = some.child;
3507 const fields = (base_qt.getRecord(tree.comp) orelse return).fields;
3508 const name = fields[access.member_index].name.lookup(tree.comp);
3509 if (name[0] == '(') return;
3510
3511 try w.writeAll(tree.tokSlice(access.access_tok));
3512 try w.writeAll(name);
3513 },
3514 else => try w.writeAll("<node>"),
3515 }
3516}
3517
30313518pub fn dump(tree: *const Tree, term: std.Io.Terminal) std.Io.Terminal.SetColorError!void {
30323519 for (tree.root_decls.items) |i| {
30333520 try tree.dumpNode(i, 0, term);
......@@ -3036,44 +3523,48 @@ pub fn dump(tree: *const Tree, term: std.Io.Terminal) std.Io.Terminal.SetColorEr
30363523 try term.writer.flush();
30373524}
30383525
3039fn dumpFieldAttributes(tree: *const Tree, attributes: []const Attribute, level: u32, w: *std.Io.Writer) !void {
3040 for (attributes) |attr| {
3041 try w.splatByteAll(' ', level);
3042 try w.print("field attr: {s}", .{@tagName(attr.tag)});
3043 try tree.dumpAttribute(attr, w);
3526fn dumpAttribute(tree: *const Tree, ref: Attribute.Map.Ref, w: *std.Io.Writer) !void {
3527 const attr = tree.attr_map.get(ref);
3528
3529 if (attr.syntax == .standard) {
3530 try w.writeAll(@tagName(attr.name));
3531 try w.writeAll("::");
3532 }
3533 switch (attr.name) {
3534 .aro => {},
3535 inline else => |tag| try w.writeAll(@tagName(tag)),
30443536 }
3045}
30463537
3047fn dumpAttribute(tree: *const Tree, attr: Attribute, w: *std.Io.Writer) !void {
3048 switch (attr.tag) {
3049 inline else => |tag| {
3050 const args = @field(attr.args, @tagName(tag));
3051 const args_info = @typeInfo(@TypeOf(args)).@"struct";
3052 if (args_info.field_names.len == 0) {
3053 try w.writeByte('\n');
3054 return;
3055 }
3056 try w.writeByte(' ');
3057 inline for (args_info.field_names, args_info.field_types, 0..) |f_name, f_type, i| {
3058 if (comptime std.mem.eql(u8, f_name, "__name_tok")) continue;
3059 if (i != 0) {
3060 try w.writeAll(", ");
3061 }
3062 try w.writeAll(f_name);
3063 try w.writeAll(": ");
3064 switch (f_type) {
3065 Interner.Ref => try w.print("\"{s}\"", .{tree.interner.get(@field(args, f_name)).bytes}),
3066 ?Interner.Ref => try w.print("\"{?s}\"", .{if (@field(args, f_name)) |str| tree.interner.get(str).bytes else null}),
3067 else => switch (@typeInfo(f_type)) {
3068 .@"enum" => try w.writeAll(@tagName(@field(args, f_name))),
3069 else => try w.print("{any}", .{@field(args, f_name)}),
3070 },
3071 }
3072 }
3073 try w.writeByte('\n');
3074 return;
3538 switch (attr.args) {
3539 inline else => |args| switch (@TypeOf(args)) {
3540 void => {},
3541 []const u8 => try w.print(": {s}", .{args}),
3542 ?[]const u8 => try w.print(": {?s}", .{args}),
3543 else => switch (@typeInfo(@TypeOf(args))) {
3544 .@"struct" => |info| {
3545 try w.writeAll(": { ");
3546 inline for (info.field_names, info.field_types, 0..) |f_name, f_type, i| {
3547 if (i != 0) {
3548 try w.writeAll(", ");
3549 }
3550 try w.writeAll(f_name);
3551 try w.writeAll(": ");
3552 switch (f_type) {
3553 []const u8 => try w.print("{s}", .{@field(args, f_name)}),
3554 ?[]const u8 => try w.print("{?s}", .{@field(args, f_name)}),
3555 else => switch (@typeInfo(f_type)) {
3556 else => try w.print("{any}", .{@field(args, f_name)}),
3557 },
3558 }
3559 }
3560 try w.writeAll(" }");
3561 },
3562 else => try w.print(": {any}", .{args}),
3563 },
30753564 },
30763565 }
3566 try w.writeByte('\n');
3567 return;
30773568}
30783569
30793570fn dumpNode(
......@@ -3101,14 +3592,14 @@ fn dumpNode(
31013592 } else {
31023593 try term.setColor(if (node.isImplicit()) IMPLICIT else TAG);
31033594 }
3104 try w.print("{s}", .{@tagName(node)});
3595 try w.print("{t}", .{node});
31053596
31063597 if (node_index.qtOrNull(tree)) |qt| {
31073598 try w.writeAll(": ");
31083599 switch (node) {
31093600 .cast => |cast| {
31103601 try term.setColor(.white);
3111 try w.print("({s}) ", .{@tagName(cast.kind)});
3602 try w.print("({t}) ", .{cast.kind});
31123603 },
31133604 else => {},
31143605 }
......@@ -3146,7 +3637,7 @@ fn dumpNode(
31463637 _ = try ptr.offset.print(tree.comp.type_store.ptrdiff, tree.comp, w);
31473638 },
31483639 else => {
3149 const ptr_node: Node.Index = @fromBackingInt(@intCast(ptr.node));
3640 const ptr_node: Node.Index = @fromBackingInt(ptr.node);
31503641 const decl_name = tree.tokSlice(ptr_node.tok(tree));
31513642 try ptr.offset.printPointer(decl_name, tree.comp, w);
31523643 },
......@@ -3161,19 +3652,16 @@ fn dumpNode(
31613652 }
31623653
31633654 try w.writeAll("\n");
3164 try term.setColor(.reset);
31653655
3166 if (node_index.qtOrNull(tree)) |qt| {
3656 const node_attrs = tree.attr_map.attrs(node_index);
3657 if (node_attrs.len > 0) {
31673658 try term.setColor(ATTRIBUTE);
3168 var it = Attribute.Iterator.initType(qt, tree.comp);
3169 while (it.next()) |item| {
3170 const attr, _ = item;
3659 for (node_attrs) |attr| {
31713660 try w.splatByteAll(' ', level + half);
3172 try w.print("attr: {s}", .{@tagName(attr.tag)});
31733661 try tree.dumpAttribute(attr, w);
31743662 }
3175 try term.setColor(.reset);
31763663 }
3664 try term.setColor(.reset);
31773665
31783666 switch (node) {
31793667 .empty_decl => {},
......@@ -3312,27 +3800,9 @@ fn dumpNode(
33123800 }
33133801 },
33143802 .struct_decl, .union_decl => |decl| {
3315 const fields = switch (node_index.qt(tree).base(tree.comp).type) {
3316 .@"struct", .@"union" => |record| record.fields,
3317 else => unreachable,
3318 };
3319
3320 var field_i: u32 = 0;
33213803 for (decl.fields, 0..) |field_node, i| {
33223804 if (i != 0) try w.writeByte('\n');
33233805 try tree.dumpNode(field_node, level + delta, term);
3324
3325 if (field_node.get(tree) != .record_field) continue;
3326 if (fields.len == 0) continue;
3327
3328 const field_attributes = fields[field_i].attributes(tree.comp);
3329 field_i += 1;
3330
3331 if (field_attributes.len == 0) continue;
3332
3333 try term.setColor(ATTRIBUTE);
3334 try tree.dumpFieldAttributes(field_attributes, level + delta + half, w);
3335 try term.setColor(.reset);
33363806 }
33373807 },
33383808 .array_init_expr, .struct_init_expr => |init| {
......@@ -3497,20 +3967,10 @@ fn dumpNode(
34973967 try tree.dumpNode(do.body, level + delta, term);
34983968 },
34993969 .for_stmt => |@"for"| {
3500 switch (@"for".init) {
3501 .decls => |decls| {
3502 try w.splatByteAll(' ', level + half);
3503 try w.writeAll("decl:\n");
3504 for (decls) |decl| {
3505 try tree.dumpNode(decl, level + delta, term);
3506 try w.writeByte('\n');
3507 }
3508 },
3509 .expr => |expr| if (expr) |some| {
3510 try w.splatByteAll(' ', level + half);
3511 try w.writeAll("init:\n");
3512 try tree.dumpNode(some, level + delta, term);
3513 },
3970 if (@"for".init) |some| {
3971 try w.splatByteAll(' ', level + half);
3972 try w.writeAll("init:\n");
3973 try tree.dumpNode(some, level + delta, term);
35143974 }
35153975 if (@"for".cond) |some| {
35163976 try w.splatByteAll(' ', level + half);
......@@ -3624,6 +4084,11 @@ fn dumpNode(
36244084 }
36254085 }
36264086 },
4087 .decl_stmt => |decl_stmt| {
4088 for (decl_stmt.decls) |decl| {
4089 try tree.dumpNode(decl, level + delta, term);
4090 }
4091 },
36274092 .call_expr => |call| {
36284093 try w.splatByteAll(' ', level + half);
36294094 try w.writeAll("callee:\n");
......@@ -3807,5 +4272,14 @@ fn dumpNode(
38074272 .cond_dummy_expr,
38084273 .compound_assign_dummy_expr,
38094274 => {},
4275 .codegen_diagnostic => |diagnostic| {
4276 try w.splatByteAll(' ', level + 1);
4277 try w.print("{t}: {s}", .{ diagnostic.kind, @as([]const u8, @ptrCast(diagnostic.text)) });
4278 if (diagnostic.opt) |opt| {
4279 try w.print(" [-W{t}]", .{opt});
4280 }
4281 },
4282 .alignas_type => unreachable,
4283 .identifier_arg => unreachable,
38104284 }
38114285}
lib/compiler/aro/aro/TypeStore.zig+591-265
......@@ -20,23 +20,30 @@ const Repr = struct {
2020 complex,
2121 bit_int,
2222 atomic,
23 block,
2324 func,
2425 func_variadic,
2526 func_old_style,
27 func_attributed,
2628 func_zero,
2729 func_variadic_zero,
2830 func_old_style_zero,
31 func_attributed_zero,
2932 func_one,
3033 func_variadic_one,
3134 func_old_style_one,
35 func_attributed_one,
3236 pointer,
3337 pointer_decayed,
38 pointer_decayed_attributed,
3439 array_incomplete,
3540 array_fixed,
3641 array_static,
3742 array_variable,
3843 array_unspecified_variable,
3944 vector,
45 vector_neon,
46 vector_neon_poly,
4047 @"struct",
4148 struct_incomplete,
4249 @"union",
......@@ -48,8 +55,18 @@ const Repr = struct {
4855 typeof,
4956 typeof_expr,
5057 typedef,
51 attributed,
52 attributed_one,
58 };
59
60 const FuncAttrs = packed struct(u32) {
61 kind: Type.Func.Kind,
62 cc: Type.Func.CallingConvention,
63 _: u26 = 0,
64 };
65
66 const PointerAttrs = packed struct(u32) {
67 bounds: Type.Pointer.Bounds,
68 nullability: Type.Pointer.Nullability,
69 _: u27 = 0,
5370 };
5471};
5572
......@@ -101,6 +118,9 @@ const Index = enum(u29) {
101118 float_dfloat64 = std.math.maxInt(u29) - 36,
102119 float_dfloat128 = std.math.maxInt(u29) - 37,
103120 float_dfloat64x = std.math.maxInt(u29) - 38,
121 mfp8 = std.math.maxInt(u29) - 39,
122 int_int24 = std.math.maxInt(u29) - 40,
123 int_uint24 = std.math.maxInt(u29) - 41,
104124 _,
105125};
106126
......@@ -132,6 +152,8 @@ pub const QualType = packed struct(u32) {
132152 pub const ulong_long: QualType = .{ ._index = .int_ulong_long };
133153 pub const int128: QualType = .{ ._index = .int_int128 };
134154 pub const uint128: QualType = .{ ._index = .int_uint128 };
155 pub const int24: QualType = .{ ._index = .int_int24 };
156 pub const uint24: QualType = .{ ._index = .int_uint24 };
135157 pub const bf16: QualType = .{ ._index = .float_bf16 };
136158 pub const fp16: QualType = .{ ._index = .float_fp16 };
137159 pub const float16: QualType = .{ ._index = .float_float16 };
......@@ -148,6 +170,7 @@ pub const QualType = packed struct(u32) {
148170 pub const dfloat64: QualType = .{ ._index = .float_dfloat64 };
149171 pub const dfloat128: QualType = .{ ._index = .float_dfloat128 };
150172 pub const dfloat64x: QualType = .{ ._index = .float_dfloat64x };
173 pub const mfp8: QualType = .{ ._index = .mfp8 };
151174 pub const void_pointer: QualType = .{ ._index = .void_pointer };
152175 pub const char_pointer: QualType = .{ ._index = .char_pointer };
153176 pub const int_pointer: QualType = .{ ._index = .int_pointer };
......@@ -164,6 +187,10 @@ pub const QualType = packed struct(u32) {
164187 return qt._index == .c23_auto;
165188 }
166189
190 pub fn isAuto(qt: QualType) bool {
191 return qt._index == .auto_type or qt._index == .c23_auto;
192 }
193
167194 pub fn isQualified(qt: QualType) bool {
168195 return qt.@"const" or qt.@"volatile" or qt.restrict;
169196 }
......@@ -203,6 +230,8 @@ pub const QualType = packed struct(u32) {
203230 .int_ulong_long => return .{ .int = .ulong_long },
204231 .int_int128 => return .{ .int = .int128 },
205232 .int_uint128 => return .{ .int = .uint128 },
233 .int_int24 => return .{ .int = .int24 },
234 .int_uint24 => return .{ .int = .uint24 },
206235 .float_bf16 => return .{ .float = .bf16 },
207236 .float_fp16 => return .{ .float = .fp16 },
208237 .float_float16 => return .{ .float = .float16 },
......@@ -219,6 +248,7 @@ pub const QualType = packed struct(u32) {
219248 .float_dfloat64 => return .{ .float = .dfloat64 },
220249 .float_dfloat128 => return .{ .float = .dfloat128 },
221250 .float_dfloat64x => return .{ .float = .dfloat64x },
251 .mfp8 => return .{ .storage_float = .mfp8 },
222252 .void_pointer => return .{ .pointer = .{ .child = .void } },
223253 .char_pointer => return .{ .pointer = .{ .child = .char } },
224254 .int_pointer => return .{ .pointer = .{ .child = .int } },
......@@ -234,6 +264,7 @@ pub const QualType = packed struct(u32) {
234264 .bits = @intCast(repr.data[0]),
235265 .signedness = @fromBackingInt(@intCast(repr.data[1])),
236266 } },
267 .block => .{ .block = .{ .func = @bitCast(repr.data[0]) } },
237268 .func_zero => .{ .func = .{
238269 .return_type = @bitCast(repr.data[0]),
239270 .kind = .normal,
......@@ -249,23 +280,47 @@ pub const QualType = packed struct(u32) {
249280 .kind = .old_style,
250281 .params = &.{},
251282 } },
283 .func_attributed_zero => {
284 const attr: Repr.FuncAttrs = @bitCast(repr.data[1]);
285 return .{ .func = .{
286 .return_type = @bitCast(repr.data[0]),
287 .kind = attr.kind,
288 .params = &.{},
289 .cc = attr.cc,
290 } };
291 },
252292 .func_one,
253293 .func_variadic_one,
254294 .func_old_style_one,
255295 .func,
256296 .func_variadic,
257297 .func_old_style,
298 .func_attributed,
299 .func_attributed_one,
258300 => {
259301 const param_size = 4;
260302 comptime std.debug.assert(@sizeOf(Type.Func.Param) == @sizeOf(u32) * param_size);
261303
262304 const extra = comp.type_store.extra.items;
263305 const params_len = switch (repr.tag) {
264 .func_one, .func_variadic_one, .func_old_style_one => 1,
265 .func, .func_variadic, .func_old_style => extra[repr.data[1]],
306 .func_one, .func_variadic_one, .func_old_style_one, .func_attributed_one => 1,
307 .func, .func_variadic, .func_old_style, .func_attributed => extra[repr.data[1]],
266308 else => unreachable,
267309 };
268 const extra_params = extra[repr.data[1] + @intFromBool(params_len > 1) ..][0 .. params_len * param_size];
310 const param_index = repr.data[1] + @intFromBool(params_len > 1);
311 const param_u32_len = params_len * param_size;
312 const extra_params = extra[param_index..][0..param_u32_len];
313
314 if (repr.tag == .func_attributed or repr.tag == .func_attributed_one or repr.tag == .func_attributed_zero) {
315 const attr_index = param_index + param_u32_len;
316 const attr: Repr.FuncAttrs = @bitCast(extra[attr_index]);
317 return .{ .func = .{
318 .return_type = @bitCast(repr.data[0]),
319 .kind = attr.kind,
320 .params = std.mem.bytesAsSlice(Type.Func.Param, std.mem.sliceAsBytes(extra_params)),
321 .cc = attr.cc,
322 } };
323 }
269324
270325 return .{ .func = .{
271326 .return_type = @bitCast(repr.data[0]),
......@@ -278,14 +333,28 @@ pub const QualType = packed struct(u32) {
278333 .params = std.mem.bytesAsSlice(Type.Func.Param, std.mem.sliceAsBytes(extra_params)),
279334 } };
280335 },
281 .pointer => .{ .pointer = .{
282 .child = @bitCast(repr.data[0]),
283 .bounds = @fromBackingInt(@intCast(repr.data[1])),
284 } },
336 .pointer => {
337 const attr: Repr.PointerAttrs = @bitCast(repr.data[1]);
338 return .{ .pointer = .{
339 .child = @bitCast(repr.data[0]),
340 .bounds = attr.bounds,
341 .nullability = attr.nullability,
342 } };
343 },
285344 .pointer_decayed => .{ .pointer = .{
286345 .child = @bitCast(repr.data[0]),
287346 .decayed = @bitCast(repr.data[1]),
288347 } },
348 .pointer_decayed_attributed => {
349 const extra = comp.type_store.extra.items;
350 const attr: Repr.PointerAttrs = @bitCast(extra[repr.data[1] + 1]);
351 return .{ .pointer = .{
352 .child = @bitCast(repr.data[0]),
353 .decayed = @bitCast(extra[repr.data[1]]),
354 .bounds = attr.bounds,
355 .nullability = attr.nullability,
356 } };
357 },
289358 .array_incomplete => .{ .array = .{
290359 .elem = @bitCast(repr.data[0]),
291360 .len = .incomplete,
......@@ -300,7 +369,7 @@ pub const QualType = packed struct(u32) {
300369 } },
301370 .array_variable => .{ .array = .{
302371 .elem = @bitCast(repr.data[0]),
303 .len = .{ .variable = @fromBackingInt(@intCast(repr.data[1])) },
372 .len = .{ .variable = @fromBackingInt(repr.data[1]) },
304373 } },
305374 .array_unspecified_variable => .{ .array = .{
306375 .elem = @bitCast(repr.data[0]),
......@@ -309,11 +378,22 @@ pub const QualType = packed struct(u32) {
309378 .vector => .{ .vector = .{
310379 .elem = @bitCast(repr.data[0]),
311380 .len = repr.data[1],
381 .kind = .generic,
382 } },
383 .vector_neon => .{ .vector = .{
384 .elem = @bitCast(repr.data[0]),
385 .len = repr.data[1],
386 .kind = .neon,
387 } },
388 .vector_neon_poly => .{ .vector = .{
389 .elem = @bitCast(repr.data[0]),
390 .len = repr.data[1],
391 .kind = .neon_poly,
312392 } },
313393 .@"struct", .@"union" => {
314394 const layout_size = 5;
315395 comptime std.debug.assert(@sizeOf(Type.Record.Layout) == @sizeOf(u32) * layout_size);
316 const field_size = 10;
396 const field_size = 9;
317397 comptime std.debug.assert(@sizeOf(Type.Record.Field) == @sizeOf(u32) * field_size);
318398
319399 const extra = comp.type_store.extra.items;
......@@ -322,8 +402,8 @@ pub const QualType = packed struct(u32) {
322402 const extra_fields = extra[repr.data[1] + layout_size + 2 ..][0 .. fields_len * field_size];
323403
324404 const record: Type.Record = .{
325 .name = @fromBackingInt(@intCast(repr.data[0])),
326 .decl_node = @fromBackingInt(@intCast(extra[repr.data[1]])),
405 .name = @fromBackingInt(repr.data[0]),
406 .decl_node = @fromBackingInt(extra[repr.data[1]]),
327407 .layout = layout,
328408 .fields = std.mem.bytesAsSlice(Type.Record.Field, std.mem.sliceAsBytes(extra_fields)),
329409 };
......@@ -334,14 +414,14 @@ pub const QualType = packed struct(u32) {
334414 };
335415 },
336416 .struct_incomplete => .{ .@"struct" = .{
337 .name = @fromBackingInt(@intCast(repr.data[0])),
338 .decl_node = @fromBackingInt(@intCast(repr.data[1])),
417 .name = @fromBackingInt(repr.data[0]),
418 .decl_node = @fromBackingInt(repr.data[1]),
339419 .layout = null,
340420 .fields = &.{},
341421 } },
342422 .union_incomplete => .{ .@"union" = .{
343 .name = @fromBackingInt(@intCast(repr.data[0])),
344 .decl_node = @fromBackingInt(@intCast(repr.data[1])),
423 .name = @fromBackingInt(repr.data[0]),
424 .decl_node = @fromBackingInt(repr.data[1]),
345425 .layout = null,
346426 .fields = &.{},
347427 } },
......@@ -354,8 +434,8 @@ pub const QualType = packed struct(u32) {
354434 const extra_fields = extra[repr.data[1] + 3 ..][0 .. fields_len * field_size];
355435
356436 return .{ .@"enum" = .{
357 .name = @fromBackingInt(@intCast(extra[repr.data[1]])),
358 .decl_node = @fromBackingInt(@intCast(extra[repr.data[1] + 1])),
437 .name = @fromBackingInt(extra[repr.data[1]]),
438 .decl_node = @fromBackingInt(extra[repr.data[1] + 1]),
359439 .tag = @bitCast(repr.data[0]),
360440 .incomplete = false,
361441 .fixed = repr.tag == .enum_fixed,
......@@ -365,8 +445,8 @@ pub const QualType = packed struct(u32) {
365445 .enum_incomplete => .{
366446 .@"enum" = .{
367447 .tag = null,
368 .name = @fromBackingInt(@intCast(repr.data[0])),
369 .decl_node = @fromBackingInt(@intCast(repr.data[1])),
448 .name = @fromBackingInt(repr.data[0]),
449 .decl_node = @fromBackingInt(repr.data[1]),
370450 .incomplete = true,
371451 .fixed = false,
372452 .fields = &.{},
......@@ -375,8 +455,8 @@ pub const QualType = packed struct(u32) {
375455 .enum_incomplete_fixed => .{
376456 .@"enum" = .{
377457 .tag = @bitCast(repr.data[0]),
378 .name = @fromBackingInt(@intCast(comp.type_store.extra.items[repr.data[1]])),
379 .decl_node = @fromBackingInt(@intCast(comp.type_store.extra.items[repr.data[1] + 1])),
458 .name = @fromBackingInt(comp.type_store.extra.items[repr.data[1]]),
459 .decl_node = @fromBackingInt(comp.type_store.extra.items[repr.data[1] + 1]),
380460 .incomplete = true,
381461 .fixed = true,
382462 .fields = &.{},
......@@ -388,23 +468,12 @@ pub const QualType = packed struct(u32) {
388468 } },
389469 .typeof_expr => .{ .typeof = .{
390470 .base = @bitCast(repr.data[0]),
391 .expr = @fromBackingInt(@intCast(repr.data[1])),
471 .expr = @fromBackingInt(repr.data[1]),
392472 } },
393473 .typedef => .{ .typedef = .{
394474 .base = @bitCast(repr.data[0]),
395 .name = @fromBackingInt(@intCast(comp.type_store.extra.items[repr.data[1]])),
396 .decl_node = @fromBackingInt(@intCast(comp.type_store.extra.items[repr.data[1] + 1])),
397 } },
398 .attributed => {
399 const extra = comp.type_store.extra.items;
400 return .{ .attributed = .{
401 .base = @bitCast(repr.data[0]),
402 .attributes = comp.type_store.attributes.items[extra[repr.data[1]]..][0..extra[repr.data[1] + 1]],
403 } };
404 },
405 .attributed_one => .{ .attributed = .{
406 .base = @bitCast(repr.data[0]),
407 .attributes = comp.type_store.attributes.items[repr.data[1]..][0..1],
475 .name = @fromBackingInt(comp.type_store.extra.items[repr.data[1]]),
476 .decl_node = @fromBackingInt(comp.type_store.extra.items[repr.data[1] + 1]),
408477 } },
409478 };
410479 }
......@@ -414,12 +483,21 @@ pub const QualType = packed struct(u32) {
414483 while (true) switch (cur.type(comp)) {
415484 .typeof => |typeof| cur = typeof.base,
416485 .typedef => |typedef| cur = typedef.base,
417 .attributed => |attributed| cur = attributed.base,
418486 else => |ty| return .{ .type = ty, .qt = cur },
419487 };
420488 }
421489
490 /// Function or function pointer
491 pub fn getFunc(qt: QualType, comp: *const Compilation) ?Type.Func {
492 const base_qt = if (qt.get(comp, .pointer)) |pointer| pointer.child else qt;
493 return base_qt.get(comp, .func);
494 }
495
422496 pub fn getRecord(qt: QualType, comp: *const Compilation) ?Type.Record {
497 switch (qt._index) {
498 .invalid, .auto_type, .c23_auto => return null,
499 else => {},
500 }
423501 return switch (qt.base(comp).type) {
424502 .@"struct", .@"union" => |record| record,
425503 else => null,
......@@ -427,7 +505,7 @@ pub const QualType = packed struct(u32) {
427505 }
428506
429507 pub fn get(qt: QualType, comp: *const Compilation, comptime tag: std.meta.Tag(Type)) ?@FieldType(Type, @tagName(tag)) {
430 comptime std.debug.assert(tag != .typeof and tag != .attributed and tag != .typedef);
508 comptime std.debug.assert(tag != .typeof and tag != .typedef);
431509 switch (qt._index) {
432510 .invalid, .auto_type, .c23_auto => return null,
433511 else => {},
......@@ -449,6 +527,7 @@ pub const QualType = packed struct(u32) {
449527 .pointer => |pointer| pointer.child,
450528 .array => |array| array.elem,
451529 .vector => |vector| vector.elem,
530 .block => qt.base(comp).qt, // special case: block's childType is always itself
452531 else => unreachable,
453532 };
454533 }
......@@ -493,12 +572,25 @@ pub const QualType = packed struct(u32) {
493572 .void => 1,
494573 .bool => 1,
495574 .func => 1,
496 .nullptr_t, .pointer => comp.target.ptrBitWidth() / 8,
575 .nullptr_t, .block => comp.target.ptrBitWidth() / 8,
576 .pointer => |pointer| {
577 _ = pointer;
578 // switch (pointer.size) {
579 // .ptr32 => return 32,
580 // .ptr64 => return 64,
581 // .default => {},
582 // }
583 // switch (pointer.address_space) {
584 // }
585 return comp.target.ptrBitWidth() / 8;
586 },
587 .storage_float => |storage_float| storage_float.bits() / 8,
497588 .int => |int_ty| int_ty.bits(comp) / 8,
498589 .float => |float_ty| float_ty.bits(comp) / 8,
499 .complex => |complex| complex.sizeofOrNull(comp),
590 .complex => |complex| (complex.sizeofOrNull(comp) orelse return null) * 2,
500591 .bit_int => |bit_int| {
501 return std.mem.alignForward(u64, (@as(u32, bit_int.bits) + 7) / 8, qt.alignof(comp));
592 const base_qt = qt.base(comp).qt;
593 return std.mem.alignForward(u64, (@as(u32, bit_int.bits) + 7) / 8, base_qt.alignof(comp));
502594 },
503595 .atomic => |atomic| atomic.sizeofOrNull(comp),
504596 .vector => |vector| {
......@@ -522,12 +614,34 @@ pub const QualType = packed struct(u32) {
522614 // for the field alignment. A flexible array has size 0. See test case 0018.
523615 return arr_size;
524616 } else {
525 return std.mem.alignForward(u64, arr_size, qt.alignof(comp));
617 const base_qt = qt.base(comp).qt;
618 return std.mem.alignForward(u64, arr_size, base_qt.alignof(comp));
526619 }
527620 },
528621 .@"struct", .@"union" => |record| {
529622 const layout = record.layout orelse return null;
530 return layout.size_bits / 8;
623 const size = layout.size_bits / 8;
624 if (comp.langopts.emulate != .msvc) return size;
625 switch (qt.type(comp)) {
626 .typedef => |typedef| {
627 if (comp.type_store.requested_aligns.get(qt) == null) {
628 return typedef.base.sizeofOrNull(comp);
629 }
630 },
631 else => {},
632 }
633 const alignment = qt.requestedAlignment(comp) orelse return size;
634
635 const should_round_size = switch (qt.type(comp)) {
636 .typedef => |typedef| switch (typedef.base.type(comp)) {
637 .@"struct", .@"union" => true,
638 else => false,
639 },
640 else => true,
641 };
642 if (!should_round_size) return size;
643
644 return std.mem.alignForward(u64, size, alignment);
531645 },
532646 .@"enum" => |enum_ty| {
533647 const tag = enum_ty.tag orelse return null;
......@@ -535,7 +649,6 @@ pub const QualType = packed struct(u32) {
535649 },
536650 .typeof => unreachable,
537651 .typedef => unreachable,
538 .attributed => unreachable,
539652 };
540653 }
541654
......@@ -548,17 +661,12 @@ pub const QualType = packed struct(u32) {
548661 /// Returns null for incomplete types.
549662 pub fn bitSizeofOrNull(qt: QualType, comp: *const Compilation) ?u64 {
550663 if (qt.isInvalid()) return null;
551 return loop: switch (qt.base(comp).type) {
664 return switch (qt.base(comp).type) {
552665 .bool => if (comp.langopts.emulate == .msvc) 8 else 1,
553666 .bit_int => |bit_int| bit_int.bits,
667 .storage_float => |storage_float| storage_float.bits(),
554668 .float => |float_ty| float_ty.bits(comp),
555669 .int => |int_ty| int_ty.bits(comp),
556 .nullptr_t, .pointer => comp.target.ptrBitWidth(),
557 .atomic => |atomic| continue :loop atomic.base(comp).type,
558 .complex => |complex| {
559 const child_size = complex.bitSizeofOrNull(comp) orelse return null;
560 return child_size * 2;
561 },
562670 else => 8 * (qt.sizeofOrNull(comp) orelse return null),
563671 };
564672 }
......@@ -582,11 +690,11 @@ pub const QualType = packed struct(u32) {
582690 .bit_int => |bit_int| bit_int.signedness,
583691 .int => |int_ty| switch (int_ty) {
584692 .char => comp.getCharSignedness(),
585 .schar, .short, .int, .long, .long_long, .int128 => .signed,
586 .uchar, .ushort, .uint, .ulong, .ulong_long, .uint128 => .unsigned,
693 .schar, .short, .int, .int24, .long, .long_long, .int128 => .signed,
694 .uchar, .ushort, .uint, .uint24, .ulong, .ulong_long, .uint128 => .unsigned,
587695 },
588696 // Pointer values are signed.
589 .pointer, .nullptr_t => .signed,
697 .pointer, .nullptr_t, .block => .signed,
590698 .@"enum" => .signed,
591699 else => unreachable,
592700 };
......@@ -596,27 +704,25 @@ pub const QualType = packed struct(u32) {
596704 pub fn alignof(qt: QualType, comp: *const Compilation) u32 {
597705 if (qt.requestedAlignment(comp)) |requested| request: {
598706 if (qt.is(comp, .@"enum")) {
599 if (comp.langopts.emulate == .gcc) {
600 // gcc does not respect alignment on enums
601 break :request;
707 switch (comp.langopts.emulate) {
708 .gcc => break :request, // gcc does not respect alignment on enums
709 .msvc => return @max(requested, qt.base(comp).qt.alignof(comp)),
710 .clang, .no => {},
602711 }
603 } else if (qt.getRecord(comp)) |record_ty| {
604 const layout = record_ty.layout orelse return 0;
605
606 // don't return the attribute for records
607 // layout has already accounted for requested alignment
608 const computed = @divExact(layout.field_alignment_bits, 8);
609 return @max(requested, computed);
610712 } else if (comp.langopts.emulate == .msvc) {
611 const type_align = qt.base(comp).qt.alignof(comp);
713 const type_align = switch (qt.type(comp)) {
714 .typedef => |typedef| typedef.base.alignof(comp),
715 else => qt.base(comp).qt.alignof(comp),
716 };
612717 return @max(requested, type_align);
613718 }
614719 return requested;
615720 }
616721
617 return loop: switch (qt.base(comp).type) {
722 return loop: switch (qt.type(comp)) {
618723 .void => 1,
619724 .bool => 1,
725 .storage_float => |storage_float| storage_float.alignment(),
620726 .int => |int_ty| switch (int_ty) {
621727 .char,
622728 .schar,
......@@ -631,6 +737,7 @@ pub const QualType = packed struct(u32) {
631737 .ulong => comp.target.cTypeAlignment(.ulong),
632738 .long_long => comp.target.cTypeAlignment(.longlong),
633739 .ulong_long => comp.target.cTypeAlignment(.ulonglong),
740 .int24, .uint24 => 1,
634741 .int128, .uint128 => if (comp.target.cpu.arch == .s390x and comp.target.os.tag == .linux and comp.target.abi.isGnu()) 8 else 16,
635742 },
636743 .float => |float_ty| switch (float_ty) {
......@@ -661,14 +768,14 @@ pub const QualType = packed struct(u32) {
661768 .atomic => |atomic| continue :loop atomic.base(comp).type,
662769 .complex => |complex| continue :loop complex.base(comp).type,
663770
664 .pointer, .nullptr_t => switch (comp.target.cpu.arch) {
771 .pointer, .nullptr_t, .block => switch (comp.target.cpu.arch) {
665772 .avr => 1,
666 else => comp.target.ptrBitWidth() / 8,
773 else => @intCast(qt.bitSizeof(comp) / 8),
667774 },
668775
669776 .func => comp.target.defaultFunctionAlignment(),
670777
671 .array => |array| continue :loop array.elem.base(comp).type,
778 .array => |array| return array.elem.alignof(comp),
672779 .vector => |vector| continue :loop vector.elem.base(comp).type,
673780
674781 .@"struct", .@"union" => |record| {
......@@ -679,9 +786,8 @@ pub const QualType = packed struct(u32) {
679786 const tag = enum_ty.tag orelse return 0;
680787 continue :loop tag.base(comp).type;
681788 },
682 .typeof => unreachable,
683 .typedef => unreachable,
684 .attributed => unreachable,
789 .typeof => |typeof| return typeof.base.alignof(comp),
790 .typedef => |typedef| continue :loop typedef.base.base(comp).type,
685791 };
686792 }
687793
......@@ -694,7 +800,7 @@ pub const QualType = packed struct(u32) {
694800 .schar, .uchar, .char => {
695801 // Only 8-bit char supported currently;
696802 // TODO: handle platforms with 16-bit int + 16-bit char
697 std.debug.assert(qt.sizeof(comp) == 1);
803 std.debug.assert(qt.bitSizeof(comp) == 8);
698804 return "";
699805 },
700806 .ushort => {
......@@ -740,6 +846,8 @@ pub const QualType = packed struct(u32) {
740846 .ulong_long => return .ulong_long,
741847 .int128 => return .uint128,
742848 .uint128 => return .uint128,
849 .int24 => return .uint24,
850 .uint24 => return .uint24,
743851 },
744852 .bit_int => |bit_int| {
745853 return try comp.type_store.put(comp.gpa, .{ .bit_int = .{
......@@ -847,9 +955,10 @@ pub const QualType = packed struct(u32) {
847955 .char, .schar, .uchar => 2 + (int_ty.bits(comp) * 8),
848956 .short, .ushort => 3 + (int_ty.bits(comp) * 8),
849957 .int, .uint => 4 + (int_ty.bits(comp) * 8),
850 .long, .ulong => 5 + (int_ty.bits(comp) * 8),
851 .long_long, .ulong_long => 6 + (int_ty.bits(comp) * 8),
852 .int128, .uint128 => 7 + (int_ty.bits(comp) * 8),
958 .int24, .uint24 => 5 + (int_ty.bits(comp) * 8),
959 .long, .ulong => 6 + (int_ty.bits(comp) * 8),
960 .long_long, .ulong_long => 7 + (int_ty.bits(comp) * 8),
961 .int128, .uint128 => 8 + (int_ty.bits(comp) * 8),
853962 },
854963 .complex => |complex| continue :loop complex.base(comp).type,
855964 .atomic => |atomic| continue :loop atomic.base(comp).type,
......@@ -932,6 +1041,7 @@ pub const QualType = packed struct(u32) {
9321041 void_pointer,
9331042 complex_int,
9341043 complex_float,
1044 block_pointer,
9351045 none,
9361046
9371047 pub fn isInt(sk: ScalarKind) bool {
......@@ -957,7 +1067,7 @@ pub const QualType = packed struct(u32) {
9571067
9581068 pub fn isPointer(sk: ScalarKind) bool {
9591069 return switch (sk) {
960 .pointer, .void_pointer => true,
1070 .pointer, .void_pointer, .block_pointer => true,
9611071 else => false,
9621072 };
9631073 }
......@@ -988,6 +1098,7 @@ pub const QualType = packed struct(u32) {
9881098 else => unreachable,
9891099 },
9901100 .atomic => |atomic| continue :loop atomic.base(comp).type,
1101 .block => return .block_pointer,
9911102 else => return .none,
9921103 }
9931104 }
......@@ -1012,15 +1123,6 @@ pub const QualType = packed struct(u32) {
10121123 return qt.scalarKind(comp).isPointer();
10131124 }
10141125
1015 /// Function or function pointer
1016 pub fn isCallable(qt: QualType, comp: *const Compilation) bool {
1017 return switch (qt.base(comp).type) {
1018 .func => true,
1019 .pointer => |ptr| ptr.child.is(comp, .func),
1020 else => false,
1021 };
1022 }
1023
10241126 pub fn eqlQualified(a_qt: QualType, b_qt: QualType, comp: *const Compilation) bool {
10251127 if (a_qt.@"const" != b_qt.@"const") return false;
10261128 if (a_qt.@"volatile" != b_qt.@"volatile") return false;
......@@ -1051,6 +1153,7 @@ pub const QualType = packed struct(u32) {
10511153 .void => return true,
10521154 .bool => return true,
10531155 .nullptr_t => return true,
1156 .storage_float => |a_storage_float| return a_storage_float == b_type.storage_float,
10541157 .int => |a_int| return a_int == b_type.int,
10551158 .float => |a_float| return a_float == b_type.float,
10561159 .complex => |a_complex| {
......@@ -1135,36 +1238,39 @@ pub const QualType = packed struct(u32) {
11351238 },
11361239 .vector => |a_vector| {
11371240 const b_vector = b_type.vector;
1138 if (a_vector.len != b_vector.len) return false;
1139
1140 // Vector elemnent qualifiers are checked.
1141 return a_vector.elem.eqlQualified(b_vector.elem, comp);
1241 return a_vector.eql(b_vector, comp, false);
11421242 },
11431243 .@"struct", .@"union", .@"enum" => return a_type_qt.qt._index == b_type_qt.qt._index,
1244 .block => |a_block| return a_block.func.eql(b_type.block.func, comp),
11441245
11451246 .typeof => unreachable, // Never returned from base()
11461247 .typedef => unreachable, // Never returned from base()
1147 .attributed => unreachable, // Never returned from base()
11481248 }
11491249 }
11501250
1151 pub fn getAttribute(qt: QualType, comp: *const Compilation, comptime tag: Attribute.Tag) ?Attribute.ArgumentsForTag(tag) {
1152 if (tag == .aligned) @compileError("use requestedAlignment");
1153 var it = Attribute.Iterator.initType(qt, comp);
1154 while (it.next()) |item| {
1155 const attribute, _ = item;
1156 if (attribute.tag == tag) return @field(attribute.args, @tagName(tag));
1251 /// Checks for attributes on the declarations of struct, union, enum and typedef types.
1252 pub fn getAttribute(qt: QualType, tree: *const Tree, tag: Attribute.Tag) ?Attribute {
1253 if (qt.isInvalid()) return null;
1254 const comp = tree.comp;
1255 const am = &tree.attr_map;
1256 loop: switch (qt.type(comp)) {
1257 .@"struct", .@"union" => |record| {
1258 return am.getAttribute(record.decl_node, tag);
1259 },
1260 .@"enum" => |@"enum"| {
1261 return am.getAttribute(@"enum".decl_node, tag);
1262 },
1263 .typeof => |typeof| continue :loop typeof.base.type(comp),
1264 .typedef => |typedef| {
1265 if (am.getAttribute(typedef.decl_node, tag)) |attr| return attr;
1266 continue :loop typedef.base.type(comp);
1267 },
1268 else => return null,
11571269 }
1158 return null;
11591270 }
11601271
1161 pub fn hasAttribute(qt: QualType, comp: *const Compilation, tag: Attribute.Tag) bool {
1162 var it = Attribute.Iterator.initType(qt, comp);
1163 while (it.next()) |item| {
1164 const attr, _ = item;
1165 if (attr.tag == tag) return true;
1166 }
1167 return false;
1272 pub fn hasAttribute(qt: QualType, tree: *const Tree, tag: Attribute.Tag) bool {
1273 return qt.getAttribute(tree, tag) != null;
11681274 }
11691275
11701276 pub fn alignable(qt: QualType, comp: *const Compilation) bool {
......@@ -1177,43 +1283,24 @@ pub const QualType = packed struct(u32) {
11771283 }
11781284
11791285 pub fn requestedAlignment(qt: QualType, comp: *const Compilation) ?u32 {
1180 return annotationAlignment(comp, Attribute.Iterator.initType(qt, comp));
1181 }
1182
1183 pub fn annotationAlignment(comp: *const Compilation, attrs: Attribute.Iterator) ?u32 {
1184 var it = attrs;
1185 var max_requested: ?u32 = null;
1186 var last_aligned_index: ?usize = null;
1187 while (it.next()) |item| {
1188 const attribute, const index = item;
1189 if (attribute.tag != .aligned) continue;
1190 if (last_aligned_index) |aligned_index| {
1191 // once we recurse into a new type, after an `aligned` attribute was found, we're done
1192 if (index <= aligned_index) break;
1193 }
1194 last_aligned_index = index;
1195 const requested = if (attribute.args.aligned.alignment) |alignment| alignment.requested else comp.target.defaultAlignment();
1196 if (max_requested == null or max_requested.? < requested) {
1197 max_requested = requested;
1198 }
1199 }
1200 return max_requested;
1201 }
1202
1203 pub fn linkage(qt: QualType, comp: *const Compilation) std.builtin.GlobalLinkage {
1204 if (qt.hasAttribute(comp, .weak)) return .weak;
1205 if (qt.hasAttribute(comp, .selectany)) return .weak;
1206 return .strong;
1207 }
1208
1209 pub fn enumIsPacked(qt: QualType, comp: *const Compilation) bool {
1210 std.debug.assert(qt.is(comp, .@"enum"));
1211 return comp.langopts.short_enums or comp.target.packAllEnums() or qt.hasAttribute(comp, .@"packed");
1286 if (qt.isInvalid()) return null;
1287 const own_alignment = comp.type_store.requested_aligns.get(qt);
1288 const base_alignment = switch (qt.type(comp)) {
1289 .typeof => |typeof| typeof.base.requestedAlignment(comp),
1290 .typedef => |typedef| typedef.base.requestedAlignment(comp),
1291 else => null,
1292 };
1293 return if (own_alignment) |own|
1294 if (comp.langopts.emulate == .msvc and base_alignment != null)
1295 @max(own, base_alignment.?)
1296 else
1297 own
1298 else
1299 base_alignment;
12121300 }
12131301
12141302 pub fn shouldDesugar(qt: QualType, comp: *const Compilation) bool {
12151303 loop: switch (qt.type(comp)) {
1216 .attributed => |attributed| continue :loop attributed.base.type(comp),
12171304 .pointer => |pointer| continue :loop pointer.child.type(comp),
12181305 .func => |func| {
12191306 for (func.params) |param| {
......@@ -1222,7 +1309,12 @@ pub const QualType = packed struct(u32) {
12221309 continue :loop func.return_type.type(comp);
12231310 },
12241311 .typeof => return true,
1225 .typedef => |typedef| return !typedef.base.is(comp, .nullptr_t),
1312 .typedef => |typedef| {
1313 if (Builder.fromType(comp, typedef.base).str(comp.langopts)) |some| {
1314 return !std.mem.eql(u8, some, typedef.name.lookup(comp));
1315 }
1316 return true;
1317 },
12261318 else => return false,
12271319 }
12281320 }
......@@ -1232,6 +1324,10 @@ pub const QualType = packed struct(u32) {
12321324 try w.writeAll("auto");
12331325 return;
12341326 }
1327 if (qt.isAutoType()) {
1328 try w.writeAll("__auto_type");
1329 return;
1330 }
12351331 _ = try qt.printPrologue(comp, false, w);
12361332 try qt.printEpilogue(comp, false, w);
12371333 }
......@@ -1241,6 +1337,10 @@ pub const QualType = packed struct(u32) {
12411337 try w.print("auto {s}", .{name});
12421338 return;
12431339 }
1340 if (qt.isAutoType()) {
1341 try w.print("__auto_type {s}", .{name});
1342 return;
1343 }
12441344 const simple = try qt.printPrologue(comp, false, w);
12451345 if (simple) try w.writeByte(' ');
12461346 try w.writeAll(name);
......@@ -1271,6 +1371,10 @@ pub const QualType = packed struct(u32) {
12711371 if (qt.@"const" or qt.@"volatile") try w.writeByte(' ');
12721372 try w.writeAll("restrict");
12731373 }
1374 if (pointer.nullability != .default) {
1375 try w.writeByte(' ');
1376 try w.writeAll(pointer.nullability.str());
1377 }
12741378 return false;
12751379 },
12761380 .func => |func| {
......@@ -1278,6 +1382,23 @@ pub const QualType = packed struct(u32) {
12781382 if (simple) try w.writeByte(' ');
12791383 return false;
12801384 },
1385 .block => |block| {
1386 if (!block.func.is(comp, .func)) unreachable;
1387
1388 const simple = try block.func.printPrologue(comp, desugar, w);
1389 try w.writeAll(if (simple) " ^" else "(^");
1390 if (qt.@"const") try w.writeAll("const");
1391 if (qt.@"volatile") {
1392 if (qt.@"const") try w.writeByte(' ');
1393 try w.writeAll("volatile");
1394 }
1395 if (qt.restrict) {
1396 if (qt.@"const" or qt.@"volatile") try w.writeByte(' ');
1397 try w.writeAll("restrict");
1398 }
1399 if (!simple) try w.writeByte(')');
1400 return false;
1401 },
12811402 .array => |array| {
12821403 if (qt.@"const") {
12831404 try w.writeAll("const ");
......@@ -1293,6 +1414,13 @@ pub const QualType = packed struct(u32) {
12931414 .typeof => |typeof| if (desugar) {
12941415 continue :loop typeof.base.type(comp);
12951416 } else {
1417 if (qt.@"const" and !typeof.base.@"const") {
1418 try w.writeAll("const ");
1419 }
1420 if (qt.@"volatile" and !typeof.base.@"volatile") {
1421 try w.writeAll("volatile ");
1422 }
1423
12961424 try w.writeAll("typeof(");
12971425 try typeof.base.print(comp, w);
12981426 try w.writeAll(")");
......@@ -1301,10 +1429,12 @@ pub const QualType = packed struct(u32) {
13011429 .typedef => |typedef| if (desugar) {
13021430 continue :loop typedef.base.type(comp);
13031431 } else {
1432 if (qt.@"const") try w.writeAll("const ");
1433 if (qt.@"volatile") try w.writeAll("volatile ");
1434
13041435 try w.writeAll(typedef.name.lookup(comp));
13051436 return true;
13061437 },
1307 .attributed => |attributed| continue :loop attributed.base.type(comp),
13081438 else => {},
13091439 }
13101440 if (qt.@"const") try w.writeAll("const ");
......@@ -1316,11 +1446,12 @@ pub const QualType = packed struct(u32) {
13161446 .array => unreachable,
13171447 .typeof => unreachable,
13181448 .typedef => unreachable,
1319 .attributed => unreachable,
1449 .block => unreachable,
13201450
13211451 .void => try w.writeAll("void"),
13221452 .bool => try w.writeAll(if (comp.langopts.standard.atLeast(.c23)) "bool" else "_Bool"),
13231453 .nullptr_t => try w.writeAll("nullptr_t"),
1454 .storage_float => |storage_float| try w.writeAll(storage_float.name()),
13241455 .int => |int_ty| switch (int_ty) {
13251456 .char => try w.writeAll("char"),
13261457 .schar => try w.writeAll("signed char"),
......@@ -1335,8 +1466,10 @@ pub const QualType = packed struct(u32) {
13351466 .ulong_long => try w.writeAll("unsigned long long"),
13361467 .int128 => try w.writeAll("__int128"),
13371468 .uint128 => try w.writeAll("unsigned __int128"),
1469 .int24 => try w.writeAll("__int24"),
1470 .uint24 => try w.writeAll("unsigned __int24"),
13381471 },
1339 .bit_int => |bit_int| try w.print("{s} _BitInt({d})", .{ @tagName(bit_int.signedness), bit_int.bits }),
1472 .bit_int => |bit_int| try w.print("{t} _BitInt({d})", .{ bit_int.signedness, bit_int.bits }),
13401473 .float => |float_ty| switch (float_ty) {
13411474 .bf16 => try w.writeAll("__bf16"),
13421475 .fp16 => try w.writeAll("__fp16"),
......@@ -1367,9 +1500,15 @@ pub const QualType = packed struct(u32) {
13671500 },
13681501
13691502 .vector => |vector| {
1370 try w.print("__attribute__((__vector_size__({d} * sizeof(", .{vector.len});
1371 _ = try vector.elem.printPrologue(comp, desugar, w);
1372 try w.writeAll(")))) ");
1503 switch (vector.kind) {
1504 .generic => {
1505 try w.print("__attribute__((__vector_size__({d} * sizeof(", .{vector.len});
1506 _ = try vector.elem.printPrologue(comp, desugar, w);
1507 try w.writeAll(")))) ");
1508 },
1509 .neon => try w.print("__attribute__((neon_vector_type({d}))) ", .{vector.len}),
1510 .neon_poly => try w.print("__attribute__((neon_polyvector_type({d}))) ", .{vector.len}),
1511 }
13731512 _ = try vector.elem.printPrologue(comp, desugar, w);
13741513 },
13751514
......@@ -1394,6 +1533,7 @@ pub const QualType = packed struct(u32) {
13941533 }
13951534 continue :loop pointer.child.type(comp);
13961535 },
1536 .block => |block| continue :loop block.func.type(comp),
13971537 .func => |func| {
13981538 try w.writeByte('(');
13991539 for (func.params, 0..) |param, i| {
......@@ -1408,6 +1548,9 @@ pub const QualType = packed struct(u32) {
14081548 try w.writeAll("void");
14091549 }
14101550 try w.writeByte(')');
1551 if (func.cc != .default) {
1552 try w.print(" __attribute__(({t}))", .{func.cc});
1553 }
14111554 continue :loop func.return_type.type(comp);
14121555 },
14131556 .array => |array| {
......@@ -1429,7 +1572,8 @@ pub const QualType = packed struct(u32) {
14291572
14301573 continue :loop array.elem.type(comp);
14311574 },
1432 .attributed => |attributed| continue :loop attributed.base.type(comp),
1575 .typeof => |typeof| if (desugar) continue :loop typeof.base.type(comp),
1576 .typedef => |typedef| if (desugar) continue :loop typedef.base.type(comp),
14331577 else => {},
14341578 }
14351579 }
......@@ -1441,11 +1585,20 @@ pub const QualType = packed struct(u32) {
14411585 if (qt.isInvalid()) return w.writeAll("invalid");
14421586 switch (qt.type(comp)) {
14431587 .pointer => |pointer| {
1588 if (pointer.nullability != .default) {
1589 try w.writeAll(pointer.nullability.str());
1590 try w.writeByte(' ');
1591 }
14441592 if (pointer.decayed) |decayed| {
14451593 try w.writeAll("decayed *");
14461594 try decayed.dump(comp, w);
14471595 } else {
14481596 try w.writeAll("*");
1597 switch (pointer.bounds) {
1598 .single => try w.writeAll("single "),
1599 .unsafe_indexable => try w.writeAll("unsafe_indexable "),
1600 .c => {},
1601 }
14491602 try pointer.child.dump(comp, w);
14501603 }
14511604 },
......@@ -1465,6 +1618,27 @@ pub const QualType = packed struct(u32) {
14651618 try w.writeAll("...");
14661619 }
14671620 try w.writeAll(") ");
1621 if (func.cc != .default) {
1622 try w.print("cc({t}) ", .{func.cc});
1623 }
1624 try func.return_type.dump(comp, w);
1625 },
1626 .block => |block| {
1627 const func = block.func.get(comp, .func).?; // `validateExtra` ensures this invariant
1628 try w.writeAll("block (");
1629 for (func.params, 0..) |param, i| {
1630 if (i != 0) try w.writeAll(", ");
1631 if (param.name != .empty) try w.print("{s}: ", .{param.name.lookup(comp)});
1632 try param.qt.dump(comp, w);
1633 }
1634 if (func.kind != .normal) {
1635 if (func.params.len != 0) try w.writeAll(", ");
1636 try w.writeAll("...");
1637 }
1638 try w.writeAll(") ");
1639 if (func.cc != .default) {
1640 try w.print("cc({t}) ", .{func.cc});
1641 }
14681642 try func.return_type.dump(comp, w);
14691643 },
14701644 .array => |array| {
......@@ -1478,7 +1652,12 @@ pub const QualType = packed struct(u32) {
14781652 try array.elem.dump(comp, w);
14791653 },
14801654 .vector => |vector| {
1481 try w.print("vector({d}, ", .{vector.len});
1655 const kind = switch (vector.kind) {
1656 .generic => "vector",
1657 .neon => "neon_vector",
1658 .neon_poly => "neon_polyvector",
1659 };
1660 try w.print("{s}({d}, ", .{ kind, vector.len });
14821661 try vector.elem.dump(comp, w);
14831662 try w.writeAll(")");
14841663 },
......@@ -1488,11 +1667,6 @@ pub const QualType = packed struct(u32) {
14881667 try typeof.base.dump(comp, w);
14891668 try w.writeAll(")");
14901669 },
1491 .attributed => |attributed| {
1492 try w.writeAll("attributed(");
1493 try attributed.base.dump(comp, w);
1494 try w.writeAll(")");
1495 },
14961670 .typedef => |typedef| {
14971671 try w.writeAll(typedef.name.lookup(comp));
14981672 try w.writeAll(": ");
......@@ -1519,10 +1693,12 @@ pub const Type = union(enum) {
15191693
15201694 int: Int,
15211695 float: Float,
1696 storage_float: StorageFloat,
15221697 complex: QualType,
15231698 bit_int: BitInt,
15241699 atomic: QualType,
15251700
1701 block: Block,
15261702 func: Func,
15271703 pointer: Pointer,
15281704 array: Array,
......@@ -1534,7 +1710,6 @@ pub const Type = union(enum) {
15341710
15351711 typeof: TypeOf,
15361712 typedef: TypeDef,
1537 attributed: Attributed,
15381713
15391714 pub const Int = enum {
15401715 char,
......@@ -1550,6 +1725,8 @@ pub const Type = union(enum) {
15501725 ulong_long,
15511726 int128,
15521727 uint128,
1728 int24,
1729 uint24,
15531730
15541731 pub fn bits(int: Int, comp: *const Compilation) u16 {
15551732 return switch (int) {
......@@ -1566,6 +1743,7 @@ pub const Type = union(enum) {
15661743 .ulong_long => comp.target.cTypeBitSize(.ulonglong),
15671744 .int128 => 128,
15681745 .uint128 => 128,
1746 .int24, .uint24 => 24,
15691747 };
15701748 }
15711749 };
......@@ -1610,15 +1788,47 @@ pub const Type = union(enum) {
16101788 }
16111789 };
16121790
1791 /// non-arithmetic floats
1792 pub const StorageFloat = enum {
1793 mfp8,
1794
1795 pub fn bits(storage_float: StorageFloat) u16 {
1796 return switch (storage_float) {
1797 .mfp8 => 8,
1798 };
1799 }
1800
1801 pub fn alignment(storage_float: StorageFloat) u32 {
1802 return switch (storage_float) {
1803 .mfp8 => 1,
1804 };
1805 }
1806
1807 pub fn name(storage_float: StorageFloat) []const u8 {
1808 return switch (storage_float) {
1809 .mfp8 => "__mfp8",
1810 };
1811 }
1812 };
1813
16131814 pub const BitInt = struct {
16141815 /// Must be >= 1 if unsigned and >= 2 if signed
16151816 bits: u16,
16161817 signedness: std.builtin.Signedness,
16171818 };
16181819
1820 pub const Block = struct {
1821 func: QualType,
1822 nullability: Pointer.Nullability = .default,
1823 };
1824
16191825 pub const Func = struct {
16201826 return_type: QualType,
1621 kind: enum {
1827 kind: Kind,
1828 params: []const Param,
1829 cc: CallingConvention = .default,
1830
1831 pub const Kind = enum(u2) {
16221832 /// int foo(int bar, char baz) and int (void)
16231833 normal,
16241834 /// int foo(int bar, char baz, ...)
......@@ -1626,8 +1836,7 @@ pub const Type = union(enum) {
16261836 /// int foo(bar, baz) and int foo()
16271837 /// is also var args, but we can give warnings about incorrect amounts of parameters
16281838 old_style,
1629 },
1630 params: []const Param,
1839 };
16311840
16321841 pub const Param = extern struct {
16331842 qt: QualType,
......@@ -1635,29 +1844,81 @@ pub const Type = union(enum) {
16351844 name_tok: TokenIndex,
16361845 node: Node.OptIndex,
16371846 };
1847
1848 pub const CallingConvention = enum(u4) {
1849 default,
1850 cdecl,
1851 aarch64_sve_pcs,
1852 aarch64_vector_pcs,
1853 arm_aapcs_vfp,
1854 arm_aapcs,
1855 fastcall,
1856 ms_abi,
1857 regcall,
1858 riscv_vector_cc,
1859 riscv_vls_cc,
1860 stdcall,
1861 sysv_abi,
1862 thiscall,
1863 vectorcall,
1864 };
16381865 };
16391866
16401867 pub const Pointer = struct {
16411868 child: QualType,
16421869 decayed: ?QualType = null,
16431870 bounds: Bounds = .c,
1871 nullability: Nullability = .default,
1872 // size: Size = .default,
1873 // extend: Extend = .default,
1874 // address_space: AddressSpace = .default,
16441875
1645 pub const Bounds = enum {
1876 pub const Bounds = enum(u2) {
16461877 /// C pointer with no bounds attribute
16471878 c,
16481879 /// No pointer arithmetic or non-zero indexing
16491880 single,
16501881 /// Explicitly specified as a traditional C pointer
16511882 unsafe_indexable,
1883 };
16521884
1653 pub fn fromTag(tag: Attribute.Tag) Bounds {
1654 return switch (tag) {
1655 .single => .single,
1656 .unsafe_indexable => .unsafe_indexable,
1657 else => unreachable,
1885 pub const Nullability = enum(u3) {
1886 default,
1887 nonnull,
1888 nullable,
1889 nullable_result,
1890 unspecified,
1891
1892 pub fn str(n: Nullability) []const u8 {
1893 return switch (n) {
1894 .default => unreachable,
1895 .nonnull => "_Nonnull",
1896 .nullable => "_Nullable",
1897 .nullable_result => "_Nullable_result",
1898 .unspecified => "_Null_unspecified",
16581899 };
16591900 }
16601901 };
1902
1903 pub const Size = enum {
1904 default,
1905 ptr64,
1906 ptr32,
1907 };
1908
1909 pub const Extend = enum {
1910 default,
1911 sign,
1912 zero,
1913 };
1914
1915 pub const AddressSpace = enum {
1916 default,
1917 };
1918
1919 pub fn anyAttrs(p: Pointer) bool {
1920 return p.bounds != .c or p.nullability != .default;
1921 }
16611922 };
16621923
16631924 pub const Array = struct {
......@@ -1674,11 +1935,25 @@ pub const Type = union(enum) {
16741935 pub const Vector = struct {
16751936 elem: QualType,
16761937 len: u32,
1938 kind: Kind = .generic,
1939
1940 pub const Kind = enum {
1941 generic,
1942 neon,
1943 neon_poly,
1944 };
1945
1946 pub fn eql(a: Vector, b: Vector, comp: *const Compilation, check_kind: bool) bool {
1947 if (a.len != b.len) return false;
1948 if (!a.elem.eqlQualified(b.elem, comp)) return false;
1949 if (check_kind and a.kind != b.kind) return false;
1950 return true;
1951 }
16771952 };
16781953
16791954 pub const Record = struct {
16801955 name: StringId,
1681 decl_node: Node.Index,
1956 decl_node: Node.OptIndex = .null,
16821957 layout: ?Layout = null,
16831958 fields: []const Field,
16841959
......@@ -1700,12 +1975,7 @@ pub const Type = union(enum) {
17001975 .offset_bits = 0,
17011976 .size_bits = 0,
17021977 },
1703 _attr_index: u32 = 0,
1704 _attr_len: u32 = 0,
1705
1706 pub fn attributes(field: Field, comp: *const Compilation) []const Attribute {
1707 return comp.type_store.attributes.items[field._attr_index..][0..field._attr_len];
1708 }
1978 field_decl: Node.OptIndex = .null,
17091979
17101980 pub const Layout = extern struct {
17111981 /// `offset_bits` and `size_bits` should both be INVALID if and only if the field
......@@ -1796,17 +2066,14 @@ pub const Type = union(enum) {
17962066 name: StringId,
17972067 decl_node: Node.Index,
17982068 };
1799
1800 pub const Attributed = struct {
1801 base: QualType,
1802 attributes: []const Attribute,
1803 };
18042069};
18052070
18062071types: std.MultiArrayList(Repr) = .empty,
18072072extra: std.ArrayList(u32) = .empty,
1808attributes: std.ArrayList(Attribute) = .empty,
18092073anon_name_arena: std.heap.ArenaAllocator.State = .{},
2074/// Alignment is a decl attribute in C but since it matters for sizeof calculations
2075/// it is additionally stored here.
2076requested_aligns: std.AutoHashMapUnmanaged(QualType, u32) = .empty,
18102077
18112078wchar: QualType = .invalid,
18122079wint: QualType = .invalid,
......@@ -1829,8 +2096,8 @@ int64: QualType = .invalid,
18292096pub fn deinit(ts: *TypeStore, gpa: std.mem.Allocator) void {
18302097 ts.types.deinit(gpa);
18312098 ts.extra.deinit(gpa);
1832 ts.attributes.deinit(gpa);
18332099 ts.anon_name_arena.promote(gpa).deinit();
2100 ts.requested_aligns.deinit(gpa);
18342101 ts.* = undefined;
18352102}
18362103
......@@ -1857,6 +2124,8 @@ pub fn putExtra(ts: *TypeStore, gpa: std.mem.Allocator, ty: Type) !Index {
18572124 .ulong_long => return .int_ulong_long,
18582125 .int128 => return .int_int128,
18592126 .uint128 => return .int_uint128,
2127 .int24 => return .int_int24,
2128 .uint24 => return .int_uint24,
18602129 },
18612130 .float => |float| switch (float) {
18622131 .bf16 => return .float_bf16,
......@@ -1876,6 +2145,9 @@ pub fn putExtra(ts: *TypeStore, gpa: std.mem.Allocator, ty: Type) !Index {
18762145 .dfloat128 => return .float_dfloat128,
18772146 .dfloat64x => return .float_dfloat64x,
18782147 },
2148 .storage_float => |storage_float| switch (storage_float) {
2149 .mfp8 => return .mfp8,
2150 },
18792151 else => {},
18802152 }
18812153 const index = try ts.types.addOne(gpa);
......@@ -1891,6 +2163,7 @@ pub fn set(ts: *TypeStore, gpa: std.mem.Allocator, ty: Type, index: usize) !void
18912163 .nullptr_t => unreachable,
18922164 .int => unreachable,
18932165 .float => unreachable,
2166 .storage_float => unreachable,
18942167 .complex => |complex| {
18952168 repr.tag = .complex;
18962169 repr.data[0] = @bitCast(complex);
......@@ -1905,6 +2178,10 @@ pub fn set(ts: *TypeStore, gpa: std.mem.Allocator, ty: Type, index: usize) !void
19052178 std.debug.assert(!atomic.@"const" and !atomic.@"volatile");
19062179 repr.data[0] = @bitCast(atomic);
19072180 },
2181 .block => |block| {
2182 repr.tag = .block;
2183 repr.data[0] = @bitCast(block.func);
2184 },
19082185 .func => |func| {
19092186 repr.data[0] = @bitCast(func.return_type);
19102187
......@@ -1940,16 +2217,43 @@ pub fn set(ts: *TypeStore, gpa: std.mem.Allocator, ty: Type, index: usize) !void
19402217 else => .func_old_style,
19412218 },
19422219 };
2220
2221 if (func.cc != .default) {
2222 const attr: Repr.FuncAttrs = .{
2223 .kind = func.kind,
2224 .cc = func.cc,
2225 };
2226 if (func.params.len == 0) {
2227 repr.data[1] = @bitCast(attr);
2228 } else {
2229 try ts.extra.append(gpa, @bitCast(attr));
2230 }
2231 repr.tag = switch (func.params.len) {
2232 0 => .func_attributed_zero,
2233 1 => .func_attributed_one,
2234 else => .func_attributed,
2235 };
2236 }
19432237 },
19442238 .pointer => |pointer| {
19452239 repr.data[0] = @bitCast(pointer.child);
2240 const attr: Repr.PointerAttrs = .{
2241 .bounds = pointer.bounds,
2242 .nullability = pointer.nullability,
2243 };
19462244 if (pointer.decayed) |array| {
1947 std.debug.assert(pointer.bounds == .c);
1948 repr.tag = .pointer_decayed;
1949 repr.data[1] = @bitCast(array);
2245 if (pointer.anyAttrs()) {
2246 repr.tag = .pointer_decayed_attributed;
2247 repr.data[1] = @intCast(ts.extra.items.len);
2248 try ts.extra.append(gpa, @bitCast(array));
2249 try ts.extra.append(gpa, @bitCast(attr));
2250 } else {
2251 repr.tag = .pointer_decayed;
2252 repr.data[1] = @bitCast(array);
2253 }
19502254 } else {
19512255 repr.tag = .pointer;
1952 repr.data[1] = @backingInt(pointer.bounds);
2256 repr.data[1] = @bitCast(attr);
19532257 }
19542258 },
19552259 .array => |array| {
......@@ -1980,7 +2284,11 @@ pub fn set(ts: *TypeStore, gpa: std.mem.Allocator, ty: Type, index: usize) !void
19802284 }
19812285 },
19822286 .vector => |vector| {
1983 repr.tag = .vector;
2287 repr.tag = switch (vector.kind) {
2288 .generic => .vector,
2289 .neon => .vector_neon,
2290 .neon_poly => .vector_neon_poly,
2291 };
19842292 repr.data[0] = @bitCast(vector.elem);
19852293 repr.data[1] = vector.len;
19862294 },
......@@ -2007,7 +2315,7 @@ pub fn set(ts: *TypeStore, gpa: std.mem.Allocator, ty: Type, index: usize) !void
20072315
20082316 const layout_size = 5;
20092317 comptime std.debug.assert(@sizeOf(Type.Record.Layout) == @sizeOf(u32) * layout_size);
2010 const field_size = 10;
2318 const field_size = 9;
20112319 comptime std.debug.assert(@sizeOf(Type.Record.Field) == @sizeOf(u32) * field_size);
20122320 try ts.extra.ensureUnusedCapacity(gpa, record.fields.len * field_size + layout_size + 2);
20132321
......@@ -2076,22 +2384,6 @@ pub fn set(ts: *TypeStore, gpa: std.mem.Allocator, ty: Type, index: usize) !void
20762384 @backingInt(typedef.decl_node),
20772385 });
20782386 },
2079 .attributed => |attributed| {
2080 repr.data[0] = @bitCast(attributed.base);
2081
2082 const attr_index: u32 = @intCast(ts.attributes.items.len);
2083 const attr_count: u32 = @intCast(attributed.attributes.len);
2084 try ts.attributes.appendSlice(gpa, attributed.attributes);
2085 if (attr_count > 1) {
2086 repr.tag = .attributed;
2087 const extra_index: u32 = @intCast(ts.extra.items.len);
2088 repr.data[1] = extra_index;
2089 try ts.extra.appendSlice(gpa, &.{ attr_index, attr_count });
2090 } else {
2091 repr.tag = .attributed_one;
2092 repr.data[1] = attr_index;
2093 }
2094 },
20952387 }
20962388 ts.types.set(index, repr);
20972389}
......@@ -2180,10 +2472,8 @@ fn generateNsConstantStringType(ts: *TypeStore, comp: *Compilation) !QualType {
21802472 var record: Type.Record = .{
21812473 .name = try comp.internString("__NSConstantString_tag"),
21822474 .layout = null,
2183 .decl_node = undefined, // TODO
21842475 .fields = &.{},
21852476 };
2186 const qt = try ts.put(comp.gpa, .{ .@"struct" = record });
21872477
21882478 var fields: [4]Type.Record.Field = .{
21892479 .{ .name = try comp.internString("isa"), .qt = const_int_ptr },
......@@ -2192,10 +2482,9 @@ fn generateNsConstantStringType(ts: *TypeStore, comp: *Compilation) !QualType {
21922482 .{ .name = try comp.internString("length"), .qt = .long },
21932483 };
21942484 record.fields = &fields;
2195 record.layout = record_layout.compute(&fields, qt, comp, null) catch unreachable;
2196 try ts.set(comp.gpa, .{ .@"struct" = record }, @backingInt(qt._index));
2485 record.layout = record_layout.compute(&fields, .null, false, comp, &.{}, null) catch unreachable;
21972486
2198 return qt;
2487 return try ts.put(comp.gpa, .{ .@"struct" = record });
21992488}
22002489
22012490fn generateVaListType(ts: *TypeStore, comp: *Compilation) !QualType {
......@@ -2266,11 +2555,9 @@ fn generateVaListType(ts: *TypeStore, comp: *Compilation) !QualType {
22662555 .aarch64_va_list => {
22672556 var record: Type.Record = .{
22682557 .name = try comp.internString("__va_list"),
2269 .decl_node = undefined, // TODO
22702558 .layout = null,
22712559 .fields = &.{},
22722560 };
2273 const qt = try ts.put(comp.gpa, .{ .@"struct" = record });
22742561
22752562 var fields: [5]Type.Record.Field = .{
22762563 .{ .name = try comp.internString("__stack"), .qt = .void_pointer },
......@@ -2280,37 +2567,31 @@ fn generateVaListType(ts: *TypeStore, comp: *Compilation) !QualType {
22802567 .{ .name = try comp.internString("__vr_offs"), .qt = .int },
22812568 };
22822569 record.fields = &fields;
2283 record.layout = record_layout.compute(&fields, qt, comp, null) catch unreachable;
2284 try ts.set(comp.gpa, .{ .@"struct" = record }, @backingInt(qt._index));
2570 record.layout = record_layout.compute(&fields, .null, false, comp, &.{}, null) catch unreachable;
22852571
2286 return qt;
2572 return ts.put(comp.gpa, .{ .@"struct" = record });
22872573 },
22882574 .arm_va_list => {
22892575 var record: Type.Record = .{
22902576 .name = try comp.internString("__va_list"),
2291 .decl_node = undefined, // TODO
22922577 .layout = null,
22932578 .fields = &.{},
22942579 };
2295 const qt = try ts.put(comp.gpa, .{ .@"struct" = record });
22962580
22972581 var fields: [1]Type.Record.Field = .{
22982582 .{ .name = try comp.internString("__ap"), .qt = .void_pointer },
22992583 };
23002584 record.fields = &fields;
2301 record.layout = record_layout.compute(&fields, qt, comp, null) catch unreachable;
2302 try ts.set(comp.gpa, .{ .@"struct" = record }, @backingInt(qt._index));
2585 record.layout = record_layout.compute(&fields, .null, false, comp, &.{}, null) catch unreachable;
23032586
2304 return qt;
2587 return ts.put(comp.gpa, .{ .@"struct" = record });
23052588 },
2306 .hexagon_va_list => blk: {
2589 .s390x_va_list => blk: {
23072590 var record: Type.Record = .{
23082591 .name = try comp.internString("__va_list_tag"),
2309 .decl_node = undefined, // TODO
23102592 .layout = null,
23112593 .fields = &.{},
23122594 };
2313 const qt = try ts.put(comp.gpa, .{ .@"struct" = record });
23142595
23152596 var fields: [4]Type.Record.Field = .{
23162597 .{ .name = try comp.internString("__gpr"), .qt = .long },
......@@ -2319,19 +2600,16 @@ fn generateVaListType(ts: *TypeStore, comp: *Compilation) !QualType {
23192600 .{ .name = try comp.internString("__reg_save_area"), .qt = .void_pointer },
23202601 };
23212602 record.fields = &fields;
2322 record.layout = record_layout.compute(&fields, qt, comp, null) catch unreachable;
2323 try ts.set(comp.gpa, .{ .@"struct" = record }, @backingInt(qt._index));
2603 record.layout = record_layout.compute(&fields, .null, false, comp, &.{}, null) catch unreachable;
23242604
2325 break :blk qt;
2605 break :blk try ts.put(comp.gpa, .{ .@"struct" = record });
23262606 },
23272607 .powerpc_va_list => blk: {
23282608 var record: Type.Record = .{
23292609 .name = try comp.internString("__va_list_tag"),
2330 .decl_node = undefined, // TODO
23312610 .layout = null,
23322611 .fields = &.{},
23332612 };
2334 const qt = try ts.put(comp.gpa, .{ .@"struct" = record });
23352613
23362614 var fields: [5]Type.Record.Field = .{
23372615 .{ .name = try comp.internString("gpr"), .qt = .uchar },
......@@ -2341,19 +2619,16 @@ fn generateVaListType(ts: *TypeStore, comp: *Compilation) !QualType {
23412619 .{ .name = try comp.internString("reg_save_area"), .qt = .void_pointer },
23422620 };
23432621 record.fields = &fields;
2344 record.layout = record_layout.compute(&fields, qt, comp, null) catch unreachable;
2345 try ts.set(comp.gpa, .{ .@"struct" = record }, @backingInt(qt._index));
2622 record.layout = record_layout.compute(&fields, .null, false, comp, &.{}, null) catch unreachable;
23462623
2347 break :blk qt;
2624 break :blk try ts.put(comp.gpa, .{ .@"struct" = record });
23482625 },
2349 .s390x_va_list => blk: {
2626 .hexagon_va_list => blk: {
23502627 var record: Type.Record = .{
23512628 .name = try comp.internString("__va_list_tag"),
2352 .decl_node = undefined, // TODO
23532629 .layout = null,
23542630 .fields = &.{},
23552631 };
2356 const qt = try ts.put(comp.gpa, .{ .@"struct" = record });
23572632
23582633 var fields: [3]Type.Record.Field = .{
23592634 .{ .name = try comp.internString("__current_saved_reg_area_pointer"), .qt = .void_pointer },
......@@ -2361,19 +2636,16 @@ fn generateVaListType(ts: *TypeStore, comp: *Compilation) !QualType {
23612636 .{ .name = try comp.internString("__overflow_area_pointer"), .qt = .void_pointer },
23622637 };
23632638 record.fields = &fields;
2364 record.layout = record_layout.compute(&fields, qt, comp, null) catch unreachable;
2365 try ts.set(comp.gpa, .{ .@"struct" = record }, @backingInt(qt._index));
2639 record.layout = record_layout.compute(&fields, .null, false, comp, &.{}, null) catch unreachable;
23662640
2367 break :blk qt;
2641 break :blk try ts.put(comp.gpa, .{ .@"struct" = record });
23682642 },
23692643 .x86_64_va_list => blk: {
23702644 var record: Type.Record = .{
23712645 .name = try comp.internString("__va_list_tag"),
2372 .decl_node = undefined, // TODO
23732646 .layout = null,
23742647 .fields = &.{},
23752648 };
2376 const qt = try ts.put(comp.gpa, .{ .@"struct" = record });
23772649
23782650 var fields: [4]Type.Record.Field = .{
23792651 .{ .name = try comp.internString("gp_offset"), .qt = .uint },
......@@ -2382,19 +2654,16 @@ fn generateVaListType(ts: *TypeStore, comp: *Compilation) !QualType {
23822654 .{ .name = try comp.internString("reg_save_area"), .qt = .void_pointer },
23832655 };
23842656 record.fields = &fields;
2385 record.layout = record_layout.compute(&fields, qt, comp, null) catch unreachable;
2386 try ts.set(comp.gpa, .{ .@"struct" = record }, @backingInt(qt._index));
2657 record.layout = record_layout.compute(&fields, .null, false, comp, &.{}, null) catch unreachable;
23872658
2388 break :blk qt;
2659 break :blk try ts.put(comp.gpa, .{ .@"struct" = record });
23892660 },
23902661 .xtensa_va_list => {
23912662 var record: Type.Record = .{
23922663 .name = try comp.internString("__va_list_tag"),
2393 .decl_node = undefined, // TODO
23942664 .layout = null,
23952665 .fields = &.{},
23962666 };
2397 const qt = try ts.put(comp.gpa, .{ .@"struct" = record });
23982667
23992668 var fields: [3]Type.Record.Field = .{
24002669 .{ .name = try comp.internString("__va_stk"), .qt = .int_pointer },
......@@ -2402,10 +2671,9 @@ fn generateVaListType(ts: *TypeStore, comp: *Compilation) !QualType {
24022671 .{ .name = try comp.internString("__va_ndx"), .qt = .int },
24032672 };
24042673 record.fields = &fields;
2405 record.layout = record_layout.compute(&fields, qt, comp, null) catch unreachable;
2406 try ts.set(comp.gpa, .{ .@"struct" = record }, @backingInt(qt._index));
2674 record.layout = record_layout.compute(&fields, .null, false, comp, &.{}, null) catch unreachable;
24072675
2408 return qt;
2676 return try ts.put(comp.gpa, .{ .@"struct" = record });
24092677 },
24102678 };
24112679
......@@ -2487,6 +2755,9 @@ pub const Builder = struct {
24872755 int128,
24882756 sint128,
24892757 uint128,
2758 int24,
2759 sint24,
2760 uint24,
24902761 complex_unsigned,
24912762 complex_signed,
24922763 complex_short,
......@@ -2513,6 +2784,9 @@ pub const Builder = struct {
25132784 complex_int128,
25142785 complex_sint128,
25152786 complex_uint128,
2787 complex_int24,
2788 complex_sint24,
2789 complex_uint24,
25162790 bit_int: u64,
25172791 sbit_int: u64,
25182792 ubit_int: u64,
......@@ -2522,6 +2796,7 @@ pub const Builder = struct {
25222796
25232797 bf16,
25242798 fp16,
2799 mfp8,
25252800 float16,
25262801 float,
25272802 double,
......@@ -2588,6 +2863,9 @@ pub const Builder = struct {
25882863 .int128 => "__int128",
25892864 .sint128 => "signed __int128",
25902865 .uint128 => "unsigned __int128",
2866 .int24 => "__int24",
2867 .sint24 => "signed __int24",
2868 .uint24 => "unsigned __int24",
25912869 .complex_char => "_Complex char",
25922870 .complex_schar => "_Complex signed char",
25932871 .complex_uchar => "_Complex unsigned char",
......@@ -2617,9 +2895,13 @@ pub const Builder = struct {
26172895 .complex_int128 => "_Complex __int128",
26182896 .complex_sint128 => "_Complex signed __int128",
26192897 .complex_uint128 => "_Complex unsigned __int128",
2898 .complex_int24 => "_Complex __int24",
2899 .complex_sint24 => "_Complex signed __int24",
2900 .complex_uint24 => "_Complex unsigned __int24",
26202901
26212902 .bf16 => "__bf16",
26222903 .fp16 => "__fp16",
2904 .mfp8 => "__mfp8",
26232905 .float16 => "_Float16",
26242906 .float => "float",
26252907 .double => "double",
......@@ -2668,6 +2950,8 @@ pub const Builder = struct {
26682950 .ulong_long, .ulong_long_int => .ulong_long,
26692951 .int128, .sint128 => .int128,
26702952 .uint128 => .uint128,
2953 .int24, .sint24 => .int24,
2954 .uint24 => .uint24,
26712955
26722956 .complex_char,
26732957 .complex_schar,
......@@ -2698,6 +2982,9 @@ pub const Builder = struct {
26982982 .complex_int128,
26992983 .complex_sint128,
27002984 .complex_uint128,
2985 .complex_int24,
2986 .complex_sint24,
2987 .complex_uint24,
27012988 => blk: {
27022989 const base_qt: QualType = switch (b.type) {
27032990 .complex_char => .char,
......@@ -2715,30 +3002,30 @@ pub const Builder = struct {
27153002 .complex_ulong_long, .complex_ulong_long_int => .ulong_long,
27163003 .complex_int128, .complex_sint128 => .int128,
27173004 .complex_uint128 => .uint128,
3005 .complex_int24, .complex_sint24 => .int24,
3006 .complex_uint24 => .uint24,
27183007 else => unreachable,
27193008 };
27203009 if (b.complex_tok) |tok| try b.parser.err(tok, .complex_int, .{});
27213010 break :blk try base_qt.toComplex(b.parser.comp);
27223011 },
27233012
2724 .bit_int, .sbit_int, .ubit_int, .complex_bit_int, .complex_ubit_int, .complex_sbit_int => |bits| blk: {
2725 const unsigned = b.type == .ubit_int or b.type == .complex_ubit_int;
2726 const complex = b.type == .complex_bit_int or b.type == .complex_ubit_int or b.type == .complex_sbit_int;
2727 const complex_str = if (complex) "_Complex " else "";
3013 .bit_int, .sbit_int, .ubit_int => |bits| blk: {
3014 const unsigned = b.type == .ubit_int;
27283015
27293016 if (unsigned) {
27303017 if (bits < 1) {
2731 try b.parser.err(b.bit_int_tok.?, .unsigned_bit_int_too_small, .{complex_str});
3018 try b.parser.err(b.bit_int_tok.?, .unsigned_bit_int_too_small, .{});
27323019 return .invalid;
27333020 }
27343021 } else {
27353022 if (bits < 2) {
2736 try b.parser.err(b.bit_int_tok.?, .signed_bit_int_too_small, .{complex_str});
3023 try b.parser.err(b.bit_int_tok.?, .signed_bit_int_too_small, .{});
27373024 return .invalid;
27383025 }
27393026 }
27403027 if (bits > Compilation.bit_int_max_bits) {
2741 try b.parser.err(b.bit_int_tok.?, if (unsigned) .unsigned_bit_int_too_big else .signed_bit_int_too_big, .{complex_str});
3028 try b.parser.err(b.bit_int_tok.?, if (unsigned) .unsigned_bit_int_too_big else .signed_bit_int_too_big, .{});
27423029 return .invalid;
27433030 }
27443031 if (b.complex_tok) |tok| try b.parser.err(tok, .complex_int, .{});
......@@ -2747,11 +3034,16 @@ pub const Builder = struct {
27473034 .signedness = if (unsigned) .unsigned else .signed,
27483035 .bits = @intCast(bits),
27493036 } });
2750 break :blk if (complex) try qt.toComplex(b.parser.comp) else qt;
3037 break :blk qt;
3038 },
3039 .complex_bit_int, .complex_ubit_int, .complex_sbit_int => {
3040 try b.parser.err(b.complex_tok.?, .complex_bit_int, .{});
3041 return .invalid;
27513042 },
27523043
27533044 .bf16 => .bf16,
27543045 .fp16 => .fp16,
3046 .mfp8 => .mfp8,
27553047 .float16 => .float16,
27563048 .float => .float,
27573049 .double => .double,
......@@ -2833,6 +3125,10 @@ pub const Builder = struct {
28333125 try b.parser.err(atomic_tok, .atomic_complex, .{qt});
28343126 return .invalid;
28353127 },
3128 .bit_int => {
3129 try b.parser.err(atomic_tok, .atomic_bit_int, .{qt});
3130 return .invalid;
3131 },
28363132 else => {
28373133 result_qt = try b.parser.comp.type_store.put(gpa, .{ .atomic = result_qt });
28383134 },
......@@ -2840,24 +3136,17 @@ pub const Builder = struct {
28403136 }
28413137
28423138 // We can't use `qt.isPointer()` because `qt` might contain a `.declarator_combine`.
2843 const is_pointer = qt.isAutoType() or qt.isC23Auto() or qt.base(b.parser.comp).type == .pointer;
3139 const is_pointer = qt.isAuto() or switch (qt.base(b.parser.comp).type) {
3140 .array, .pointer => true,
3141 else => false,
3142 };
28443143
28453144 if (b.unaligned != null and !is_pointer) {
2846 result_qt = (try b.parser.comp.type_store.put(gpa, .{ .attributed = .{
2847 .base = result_qt,
2848 .attributes = &.{.{ .tag = .unaligned, .args = .{ .unaligned = .{} }, .syntax = .keyword }},
2849 } })).withQualifiers(result_qt);
2850 }
2851 switch (b.nullability) {
2852 .none => {},
2853 .nonnull,
2854 .nullable,
2855 .nullable_result,
2856 .null_unspecified,
2857 => |tok| if (!is_pointer) {
2858 // TODO this should be checked later so that auto types can be properly validated.
2859 try b.parser.err(tok, .invalid_nullability, .{qt});
2860 },
3145 // TODO should be a qualifier?
3146 // result_qt = (try b.parser.comp.type_store.put(gpa, .{ .attributed = .{
3147 // .base = result_qt,
3148 // .attributes = undefined,
3149 // } })).withQualifiers(result_qt);
28613150 }
28623151
28633152 if (b.@"const" != null) result_qt.@"const" = true;
......@@ -2958,6 +3247,7 @@ pub const Builder = struct {
29583247 .long_long => .slong_long,
29593248 .long_long_int => .slong_long_int,
29603249 .int128 => .sint128,
3250 .int24 => .sint24,
29613251 .bit_int => |bits| .{ .sbit_int = bits },
29623252 .complex => .complex_signed,
29633253 .complex_char => .complex_schar,
......@@ -2969,6 +3259,7 @@ pub const Builder = struct {
29693259 .complex_long_long => .complex_slong_long,
29703260 .complex_long_long_int => .complex_slong_long_int,
29713261 .complex_int128 => .sint128,
3262 .complex_int24 => .complex_sint24,
29723263 .complex_bit_int => |bits| .{ .complex_sbit_int = bits },
29733264 .signed,
29743265 .sshort,
......@@ -2979,6 +3270,7 @@ pub const Builder = struct {
29793270 .slong_long,
29803271 .slong_long_int,
29813272 .sint128,
3273 .sint24,
29823274 .sbit_int,
29833275 .complex_schar,
29843276 .complex_signed,
......@@ -2990,6 +3282,7 @@ pub const Builder = struct {
29903282 .complex_slong_long,
29913283 .complex_slong_long_int,
29923284 .complex_sint128,
3285 .complex_sint24,
29933286 .complex_sbit_int,
29943287 => return b.duplicateSpec(source_tok, "signed"),
29953288 else => return b.cannotCombine(source_tok),
......@@ -3005,6 +3298,7 @@ pub const Builder = struct {
30053298 .long_long => .ulong_long,
30063299 .long_long_int => .ulong_long_int,
30073300 .int128 => .uint128,
3301 .int24 => .uint24,
30083302 .bit_int => |bits| .{ .ubit_int = bits },
30093303 .complex => .complex_unsigned,
30103304 .complex_char => .complex_uchar,
......@@ -3016,6 +3310,7 @@ pub const Builder = struct {
30163310 .complex_long_long => .complex_ulong_long,
30173311 .complex_long_long_int => .complex_ulong_long_int,
30183312 .complex_int128 => .complex_uint128,
3313 .complex_int24 => .complex_uint24,
30193314 .complex_bit_int => |bits| .{ .complex_ubit_int = bits },
30203315 .unsigned,
30213316 .ushort,
......@@ -3026,6 +3321,7 @@ pub const Builder = struct {
30263321 .ulong_long,
30273322 .ulong_long_int,
30283323 .uint128,
3324 .uint24,
30293325 .ubit_int,
30303326 .complex_uchar,
30313327 .complex_unsigned,
......@@ -3037,6 +3333,7 @@ pub const Builder = struct {
30373333 .complex_ulong_long,
30383334 .complex_ulong_long_int,
30393335 .complex_uint128,
3336 .complex_uint24,
30403337 .complex_ubit_int,
30413338 => return b.duplicateSpec(source_tok, "unsigned"),
30423339 else => return b.cannotCombine(source_tok),
......@@ -3100,6 +3397,9 @@ pub const Builder = struct {
31003397 .long => .long_long,
31013398 .slong => .slong_long,
31023399 .ulong => .ulong_long,
3400 .long_int => .long_long_int,
3401 .ulong_int => .ulong_long_int,
3402 .slong_int => .slong_long_int,
31033403 .complex => .complex_long,
31043404 .complex_signed => .complex_slong,
31053405 .complex_unsigned => .complex_ulong,
......@@ -3142,6 +3442,15 @@ pub const Builder = struct {
31423442 .complex_unsigned => .complex_uint128,
31433443 else => return b.cannotCombine(source_tok),
31443444 },
3445 .int24 => switch (b.type) {
3446 .none => .int24,
3447 .unsigned => .uint24,
3448 .signed => .sint24,
3449 .complex => .complex_int24,
3450 .complex_signed => .complex_sint24,
3451 .complex_unsigned => .complex_uint24,
3452 else => return b.cannotCombine(source_tok),
3453 },
31453454 .bit_int => switch (b.type) {
31463455 .none => .{ .bit_int = new.bit_int },
31473456 .unsigned => .{ .ubit_int = new.bit_int },
......@@ -3163,6 +3472,10 @@ pub const Builder = struct {
31633472 .none => .fp16,
31643473 else => return b.cannotCombine(source_tok),
31653474 },
3475 .mfp8 => switch (b.type) {
3476 .none => .mfp8,
3477 else => return b.cannotCombine(source_tok),
3478 },
31663479 .float16 => switch (b.type) {
31673480 .none => .float16,
31683481 .complex => .complex_float16,
......@@ -3267,6 +3580,9 @@ pub const Builder = struct {
32673580 .int128 => .complex_int128,
32683581 .sint128 => .complex_sint128,
32693582 .uint128 => .complex_uint128,
3583 .int24 => .complex_int24,
3584 .sint24 => .complex_sint24,
3585 .uint24 => .complex_uint24,
32703586 .bit_int => |bits| .{ .complex_bit_int = bits },
32713587 .sbit_int => |bits| .{ .complex_sbit_int = bits },
32723588 .ubit_int => |bits| .{ .complex_ubit_int = bits },
......@@ -3304,6 +3620,9 @@ pub const Builder = struct {
33043620 .complex_int128,
33053621 .complex_sint128,
33063622 .complex_uint128,
3623 .complex_int24,
3624 .complex_sint24,
3625 .complex_uint24,
33073626 .complex_bit_int,
33083627 .complex_sbit_int,
33093628 .complex_ubit_int,
......@@ -3337,6 +3656,8 @@ pub const Builder = struct {
33373656 .ulong_long => .ulong_long,
33383657 .int128 => .int128,
33393658 .uint128 => .uint128,
3659 .int24 => .int24,
3660 .uint24 => .uint24,
33403661 },
33413662 .bit_int => |bit_int| if (bit_int.signedness == .unsigned) {
33423663 return .{ .ubit_int = bit_int.bits };
......@@ -3361,6 +3682,9 @@ pub const Builder = struct {
33613682 .dfloat128 => .dfloat128,
33623683 .dfloat64x => .dfloat64x,
33633684 },
3685 .storage_float => |storage_float| switch (storage_float) {
3686 .mfp8 => .mfp8,
3687 },
33643688 .complex => |complex| switch (complex.base(comp).type) {
33653689 .int => |int| switch (int) {
33663690 .char => .complex_char,
......@@ -3376,6 +3700,8 @@ pub const Builder = struct {
33763700 .ulong_long => .complex_ulong_long,
33773701 .int128 => .complex_int128,
33783702 .uint128 => .complex_uint128,
3703 .int24 => .complex_int24,
3704 .uint24 => .complex_uint24,
33793705 },
33803706 .bit_int => |bit_int| if (bit_int.signedness == .unsigned) {
33813707 return .{ .complex_ubit_int = bit_int.bits };
lib/compiler/aro/aro/Value.zig+77-62
......@@ -21,7 +21,7 @@ pub const @"null" = Value{ .opt_ref = .null };
2121
2222pub fn intern(comp: *Compilation, k: Interner.Key) !Value {
2323 const r = try comp.interner.put(comp.gpa, k);
24 return .{ .opt_ref = @fromBackingInt(@intCast(@backingInt(r))) };
24 return .{ .opt_ref = @fromBackingInt(@backingInt(r)) };
2525}
2626
2727pub fn int(i: anytype, comp: *Compilation) !Value {
......@@ -39,11 +39,11 @@ pub fn pointer(r: Interner.Key.Pointer, comp: *Compilation) !Value {
3939
4040pub fn ref(v: Value) Interner.Ref {
4141 std.debug.assert(v.opt_ref != .none);
42 return @fromBackingInt(@intCast(@backingInt(v.opt_ref)));
42 return @fromBackingInt(@backingInt(v.opt_ref));
4343}
4444
4545pub fn fromRef(r: Interner.Ref) Value {
46 return .{ .opt_ref = @fromBackingInt(@intCast(@backingInt(r))) };
46 return .{ .opt_ref = @fromBackingInt(@backingInt(r)) };
4747}
4848
4949pub fn is(v: Value, tag: std.meta.Tag(Interner.Key), comp: *const Compilation) bool {
......@@ -193,13 +193,12 @@ pub fn intToFloat(v: *Value, dest_ty: QualType, comp: *Compilation) !void {
193193 if (v.opt_ref == .none) return;
194194
195195 if (dest_ty.is(comp, .complex)) {
196 const bits = dest_ty.bitSizeof(comp);
197 const cf: Interner.Key.Complex = switch (bits) {
198 32 => .{ .cf16 = .{ v.toFloat(f16, comp), 0 } },
199 64 => .{ .cf32 = .{ v.toFloat(f32, comp), 0 } },
200 128 => .{ .cf64 = .{ v.toFloat(f64, comp), 0 } },
201 160 => .{ .cf80 = .{ v.toFloat(f80, comp), 0 } },
202 256 => .{ .cf128 = .{ v.toFloat(f128, comp), 0 } },
196 const cf: Interner.Key.Complex = switch (dest_ty.childType(comp).bitSizeof(comp)) {
197 16 => .{ .cf16 = .{ v.toFloat(f16, comp), 0 } },
198 32 => .{ .cf32 = .{ v.toFloat(f32, comp), 0 } },
199 64 => .{ .cf64 = .{ v.toFloat(f64, comp), 0 } },
200 80 => .{ .cf80 = .{ v.toFloat(f80, comp), 0 } },
201 128 => .{ .cf128 = .{ v.toFloat(f128, comp), 0 } },
203202 else => unreachable,
204203 };
205204 v.* = try intern(comp, .{ .complex = cf });
......@@ -285,19 +284,18 @@ pub fn intCast(v: *Value, dest_ty: QualType, comp: *Compilation) !IntCastChangeK
285284/// `.none` value remains unchanged.
286285pub fn floatCast(v: *Value, dest_ty: QualType, comp: *Compilation) !void {
287286 if (v.opt_ref == .none) return;
288 const bits = dest_ty.bitSizeof(comp);
289 if (dest_ty.is(comp, .complex)) {
290 const cf: Interner.Key.Complex = switch (bits) {
291 32 => .{ .cf16 = .{ v.toFloat(f16, comp), v.imag(f16, comp) } },
292 64 => .{ .cf32 = .{ v.toFloat(f32, comp), v.imag(f32, comp) } },
293 128 => .{ .cf64 = .{ v.toFloat(f64, comp), v.imag(f64, comp) } },
294 160 => .{ .cf80 = .{ v.toFloat(f80, comp), v.imag(f80, comp) } },
295 256 => .{ .cf128 = .{ v.toFloat(f128, comp), v.imag(f128, comp) } },
287 if (dest_ty.get(comp, .complex)) |scalar_qt| {
288 const cf: Interner.Key.Complex = switch (scalar_qt.bitSizeof(comp)) {
289 16 => .{ .cf16 = .{ v.toFloat(f16, comp), v.imag(f16, comp) } },
290 32 => .{ .cf32 = .{ v.toFloat(f32, comp), v.imag(f32, comp) } },
291 64 => .{ .cf64 = .{ v.toFloat(f64, comp), v.imag(f64, comp) } },
292 80 => .{ .cf80 = .{ v.toFloat(f80, comp), v.imag(f80, comp) } },
293 128 => .{ .cf128 = .{ v.toFloat(f128, comp), v.imag(f128, comp) } },
296294 else => unreachable,
297295 };
298296 v.* = try intern(comp, .{ .complex = cf });
299297 } else {
300 const f: Interner.Key.Float = switch (bits) {
298 const f: Interner.Key.Float = switch (dest_ty.bitSizeof(comp)) {
301299 16 => .{ .f16 = v.toFloat(f16, comp) },
302300 32 => .{ .f32 = v.toFloat(f32, comp) },
303301 64 => .{ .f64 = v.toFloat(f64, comp) },
......@@ -517,21 +515,20 @@ fn complexAddSub(lhs: Value, rhs: Value, comptime T: type, op: ComplexOp, comp:
517515}
518516
519517pub fn add(res: *Value, lhs: Value, rhs: Value, qt: QualType, comp: *Compilation) !bool {
520 const bits: usize = @intCast(qt.bitSizeof(comp));
521518 const scalar_kind = qt.scalarKind(comp);
522519 if (scalar_kind.isFloat()) {
523520 if (scalar_kind == .complex_float) {
524 res.* = switch (bits) {
525 32 => try complexAddSub(lhs, rhs, f16, .add, comp),
526 64 => try complexAddSub(lhs, rhs, f32, .add, comp),
527 128 => try complexAddSub(lhs, rhs, f64, .add, comp),
528 160 => try complexAddSub(lhs, rhs, f80, .add, comp),
529 256 => try complexAddSub(lhs, rhs, f128, .add, comp),
521 res.* = switch (qt.childType(comp).bitSizeof(comp)) {
522 16 => try complexAddSub(lhs, rhs, f16, .add, comp),
523 32 => try complexAddSub(lhs, rhs, f32, .add, comp),
524 64 => try complexAddSub(lhs, rhs, f64, .add, comp),
525 80 => try complexAddSub(lhs, rhs, f80, .add, comp),
526 128 => try complexAddSub(lhs, rhs, f128, .add, comp),
530527 else => unreachable,
531528 };
532529 return false;
533530 }
534 const f: Interner.Key.Float = switch (bits) {
531 const f: Interner.Key.Float = switch (qt.bitSizeof(comp)) {
535532 16 => .{ .f16 = lhs.toFloat(f16, comp) + rhs.toFloat(f16, comp) },
536533 32 => .{ .f32 = lhs.toFloat(f32, comp) + rhs.toFloat(f32, comp) },
537534 64 => .{ .f64 = lhs.toFloat(f64, comp) + rhs.toFloat(f64, comp) },
......@@ -569,6 +566,7 @@ pub fn add(res: *Value, lhs: Value, rhs: Value, qt: QualType, comp: *Compilation
569566 const lhs_bigint = lhs_key.toBigInt(&lhs_space);
570567 const rhs_bigint = rhs_key.toBigInt(&rhs_space);
571568
569 const bits: usize = @intCast(qt.bitSizeof(comp));
572570 const limbs = try comp.gpa.alloc(
573571 std.math.big.Limb,
574572 std.math.big.int.calcTwosCompLimbCount(bits),
......@@ -591,21 +589,20 @@ pub fn decrement(res: *Value, val: Value, qt: QualType, comp: *Compilation) !boo
591589
592590/// elem_size is only used when subtracting two pointers, so we can scale the result by the size of the element type
593591pub fn sub(res: *Value, lhs: Value, rhs: Value, qt: QualType, elem_size: u64, comp: *Compilation) !bool {
594 const bits: usize = @intCast(qt.bitSizeof(comp));
595592 const scalar_kind = qt.scalarKind(comp);
596593 if (scalar_kind.isFloat()) {
597594 if (scalar_kind == .complex_float) {
598 res.* = switch (bits) {
599 32 => try complexAddSub(lhs, rhs, f16, .sub, comp),
600 64 => try complexAddSub(lhs, rhs, f32, .sub, comp),
601 128 => try complexAddSub(lhs, rhs, f64, .sub, comp),
602 160 => try complexAddSub(lhs, rhs, f80, .sub, comp),
603 256 => try complexAddSub(lhs, rhs, f128, .sub, comp),
595 res.* = switch (qt.childType(comp).bitSizeof(comp)) {
596 16 => try complexAddSub(lhs, rhs, f16, .sub, comp),
597 32 => try complexAddSub(lhs, rhs, f32, .sub, comp),
598 64 => try complexAddSub(lhs, rhs, f64, .sub, comp),
599 80 => try complexAddSub(lhs, rhs, f80, .sub, comp),
600 128 => try complexAddSub(lhs, rhs, f128, .sub, comp),
604601 else => unreachable,
605602 };
606603 return false;
607604 }
608 const f: Interner.Key.Float = switch (bits) {
605 const f: Interner.Key.Float = switch (qt.bitSizeof(comp)) {
609606 16 => .{ .f16 = lhs.toFloat(f16, comp) - rhs.toFloat(f16, comp) },
610607 32 => .{ .f32 = lhs.toFloat(f32, comp) - rhs.toFloat(f32, comp) },
611608 64 => .{ .f64 = lhs.toFloat(f64, comp) - rhs.toFloat(f64, comp) },
......@@ -653,6 +650,7 @@ pub fn sub(res: *Value, lhs: Value, rhs: Value, qt: QualType, elem_size: u64, co
653650 const lhs_bigint = lhs_key.toBigInt(&lhs_space);
654651 const rhs_bigint = rhs_key.toBigInt(&rhs_space);
655652
653 const bits: usize = @intCast(qt.bitSizeof(comp));
656654 const limbs = try comp.gpa.alloc(
657655 std.math.big.Limb,
658656 std.math.big.int.calcTwosCompLimbCount(bits),
......@@ -666,22 +664,21 @@ pub fn sub(res: *Value, lhs: Value, rhs: Value, qt: QualType, elem_size: u64, co
666664}
667665
668666pub fn mul(res: *Value, lhs: Value, rhs: Value, qt: QualType, comp: *Compilation) !bool {
669 const bits: usize = @intCast(qt.bitSizeof(comp));
670667 const scalar_kind = qt.scalarKind(comp);
671668 if (scalar_kind.isFloat()) {
672669 if (scalar_kind == .complex_float) {
673 const cf: Interner.Key.Complex = switch (bits) {
674 32 => .{ .cf16 = annex_g.complexFloatMul(f16, lhs.toFloat(f16, comp), lhs.imag(f16, comp), rhs.toFloat(f16, comp), rhs.imag(f16, comp)) },
675 64 => .{ .cf32 = annex_g.complexFloatMul(f32, lhs.toFloat(f32, comp), lhs.imag(f32, comp), rhs.toFloat(f32, comp), rhs.imag(f32, comp)) },
676 128 => .{ .cf64 = annex_g.complexFloatMul(f64, lhs.toFloat(f64, comp), lhs.imag(f64, comp), rhs.toFloat(f64, comp), rhs.imag(f64, comp)) },
677 160 => .{ .cf80 = annex_g.complexFloatMul(f80, lhs.toFloat(f80, comp), lhs.imag(f80, comp), rhs.toFloat(f80, comp), rhs.imag(f80, comp)) },
678 256 => .{ .cf128 = annex_g.complexFloatMul(f128, lhs.toFloat(f128, comp), lhs.imag(f128, comp), rhs.toFloat(f128, comp), rhs.imag(f128, comp)) },
670 const cf: Interner.Key.Complex = switch (qt.childType(comp).bitSizeof(comp)) {
671 16 => .{ .cf16 = annex_g.complexFloatMul(f16, lhs.toFloat(f16, comp), lhs.imag(f16, comp), rhs.toFloat(f16, comp), rhs.imag(f16, comp)) },
672 32 => .{ .cf32 = annex_g.complexFloatMul(f32, lhs.toFloat(f32, comp), lhs.imag(f32, comp), rhs.toFloat(f32, comp), rhs.imag(f32, comp)) },
673 64 => .{ .cf64 = annex_g.complexFloatMul(f64, lhs.toFloat(f64, comp), lhs.imag(f64, comp), rhs.toFloat(f64, comp), rhs.imag(f64, comp)) },
674 80 => .{ .cf80 = annex_g.complexFloatMul(f80, lhs.toFloat(f80, comp), lhs.imag(f80, comp), rhs.toFloat(f80, comp), rhs.imag(f80, comp)) },
675 128 => .{ .cf128 = annex_g.complexFloatMul(f128, lhs.toFloat(f128, comp), lhs.imag(f128, comp), rhs.toFloat(f128, comp), rhs.imag(f128, comp)) },
679676 else => unreachable,
680677 };
681678 res.* = try intern(comp, .{ .complex = cf });
682679 return false;
683680 }
684 const f: Interner.Key.Float = switch (bits) {
681 const f: Interner.Key.Float = switch (qt.bitSizeof(comp)) {
685682 16 => .{ .f16 = lhs.toFloat(f16, comp) * rhs.toFloat(f16, comp) },
686683 32 => .{ .f32 = lhs.toFloat(f32, comp) * rhs.toFloat(f32, comp) },
687684 64 => .{ .f64 = lhs.toFloat(f64, comp) * rhs.toFloat(f64, comp) },
......@@ -712,6 +709,7 @@ pub fn mul(res: *Value, lhs: Value, rhs: Value, qt: QualType, comp: *Compilation
712709
713710 result_bigint.mul(lhs_bigint, rhs_bigint, limbs_buffer, comp.gpa);
714711
712 const bits: usize = @intCast(qt.bitSizeof(comp));
715713 const signedness = qt.signedness(comp);
716714 const overflowed = !result_bigint.toConst().fitsInTwosComp(signedness, bits);
717715 if (overflowed) {
......@@ -724,22 +722,21 @@ pub fn mul(res: *Value, lhs: Value, rhs: Value, qt: QualType, comp: *Compilation
724722
725723/// caller guarantees rhs != 0
726724pub fn div(res: *Value, lhs: Value, rhs: Value, qt: QualType, comp: *Compilation) !bool {
727 const bits: usize = @intCast(qt.bitSizeof(comp));
728725 const scalar_kind = qt.scalarKind(comp);
729726 if (scalar_kind.isFloat()) {
730727 if (scalar_kind == .complex_float) {
731 const cf: Interner.Key.Complex = switch (bits) {
732 32 => .{ .cf16 = annex_g.complexFloatDiv(f16, lhs.toFloat(f16, comp), lhs.imag(f16, comp), rhs.toFloat(f16, comp), rhs.imag(f16, comp)) },
733 64 => .{ .cf32 = annex_g.complexFloatDiv(f32, lhs.toFloat(f32, comp), lhs.imag(f32, comp), rhs.toFloat(f32, comp), rhs.imag(f32, comp)) },
734 128 => .{ .cf64 = annex_g.complexFloatDiv(f64, lhs.toFloat(f64, comp), lhs.imag(f64, comp), rhs.toFloat(f64, comp), rhs.imag(f64, comp)) },
735 160 => .{ .cf80 = annex_g.complexFloatDiv(f80, lhs.toFloat(f80, comp), lhs.imag(f80, comp), rhs.toFloat(f80, comp), rhs.imag(f80, comp)) },
736 256 => .{ .cf128 = annex_g.complexFloatDiv(f128, lhs.toFloat(f128, comp), lhs.imag(f128, comp), rhs.toFloat(f128, comp), rhs.imag(f128, comp)) },
728 const cf: Interner.Key.Complex = switch (qt.childType(comp).bitSizeof(comp)) {
729 16 => .{ .cf16 = annex_g.complexFloatDiv(f16, lhs.toFloat(f16, comp), lhs.imag(f16, comp), rhs.toFloat(f16, comp), rhs.imag(f16, comp)) },
730 32 => .{ .cf32 = annex_g.complexFloatDiv(f32, lhs.toFloat(f32, comp), lhs.imag(f32, comp), rhs.toFloat(f32, comp), rhs.imag(f32, comp)) },
731 64 => .{ .cf64 = annex_g.complexFloatDiv(f64, lhs.toFloat(f64, comp), lhs.imag(f64, comp), rhs.toFloat(f64, comp), rhs.imag(f64, comp)) },
732 80 => .{ .cf80 = annex_g.complexFloatDiv(f80, lhs.toFloat(f80, comp), lhs.imag(f80, comp), rhs.toFloat(f80, comp), rhs.imag(f80, comp)) },
733 128 => .{ .cf128 = annex_g.complexFloatDiv(f128, lhs.toFloat(f128, comp), lhs.imag(f128, comp), rhs.toFloat(f128, comp), rhs.imag(f128, comp)) },
737734 else => unreachable,
738735 };
739736 res.* = try intern(comp, .{ .complex = cf });
740737 return false;
741738 }
742 const f: Interner.Key.Float = switch (bits) {
739 const f: Interner.Key.Float = switch (qt.bitSizeof(comp)) {
743740 16 => .{ .f16 = lhs.toFloat(f16, comp) / rhs.toFloat(f16, comp) },
744741 32 => .{ .f32 = lhs.toFloat(f32, comp) / rhs.toFloat(f32, comp) },
745742 64 => .{ .f64 = lhs.toFloat(f64, comp) / rhs.toFloat(f64, comp) },
......@@ -777,6 +774,7 @@ pub fn div(res: *Value, lhs: Value, rhs: Value, qt: QualType, comp: *Compilation
777774
778775 result_q.divTrunc(&result_r, lhs_bigint, rhs_bigint, limbs_buffer);
779776
777 const bits: usize = @intCast(qt.bitSizeof(comp));
780778 res.* = try intern(comp, .{ .int = .{ .big_int = result_q.toConst() } });
781779 return !result_q.toConst().fitsInTwosComp(qt.signedness(comp), bits);
782780 }
......@@ -966,13 +964,12 @@ pub fn shr(lhs: Value, rhs: Value, qt: QualType, comp: *Compilation) !Value {
966964}
967965
968966pub fn complexConj(val: Value, qt: QualType, comp: *Compilation) !Value {
969 const bits = qt.bitSizeof(comp);
970 const cf: Interner.Key.Complex = switch (bits) {
971 32 => .{ .cf16 = .{ val.toFloat(f16, comp), -val.imag(f16, comp) } },
972 64 => .{ .cf32 = .{ val.toFloat(f32, comp), -val.imag(f32, comp) } },
973 128 => .{ .cf64 = .{ val.toFloat(f64, comp), -val.imag(f64, comp) } },
974 160 => .{ .cf80 = .{ val.toFloat(f80, comp), -val.imag(f80, comp) } },
975 256 => .{ .cf128 = .{ val.toFloat(f128, comp), -val.imag(f128, comp) } },
967 const cf: Interner.Key.Complex = switch (qt.childType(comp).bitSizeof(comp)) {
968 16 => .{ .cf16 = .{ val.toFloat(f16, comp), -val.imag(f16, comp) } },
969 32 => .{ .cf32 = .{ val.toFloat(f32, comp), -val.imag(f32, comp) } },
970 64 => .{ .cf64 = .{ val.toFloat(f64, comp), -val.imag(f64, comp) } },
971 80 => .{ .cf80 = .{ val.toFloat(f80, comp), -val.imag(f80, comp) } },
972 128 => .{ .cf128 = .{ val.toFloat(f128, comp), -val.imag(f128, comp) } },
976973 else => unreachable,
977974 };
978975 return intern(comp, .{ .complex = cf });
......@@ -1070,6 +1067,18 @@ pub fn maxInt(qt: QualType, comp: *Compilation) !Value {
10701067 return twosCompIntLimit(.max, qt, comp);
10711068}
10721069
1070pub fn elem(arr: Value, index: Value, comp: *Compilation) !Value {
1071 const index_int = index.toInt(u32, comp) orelse return .{};
1072 if (arr.opt_ref == .none) return .{};
1073 switch (comp.interner.get(arr.ref())) {
1074 .bytes => |b| {
1075 if (index_int > b.len) return .{};
1076 return Value.int(b[index_int], comp);
1077 },
1078 else => return .{},
1079 }
1080}
1081
10731082const NestedPrint = union(enum) {
10741083 pointer: struct {
10751084 node: u32,
......@@ -1102,7 +1111,7 @@ pub fn print(v: Value, qt: QualType, comp: *const Compilation, w: *std.Io.Writer
11021111 .f32 => |x| try w.print("{d}", .{@round(@as(f64, @floatCast(x)) * 1000000) / 1000000}),
11031112 inline else => |x| try w.print("{d}", .{@as(f64, @floatCast(x))}),
11041113 },
1105 .bytes => |b| try printString(b, qt, comp, w),
1114 .bytes => |b| try printString(b, qt, comp, w, .quoted),
11061115 .complex => |repr| switch (repr) {
11071116 .cf32 => |components| try w.print("{d} + {d}i", .{ @round(@as(f64, @floatCast(components[0])) * 1000000) / 1000000, @round(@as(f64, @floatCast(components[1])) * 1000000) / 1000000 }),
11081117 inline else => |components| try w.print("{d} + {d}i", .{ @as(f64, @floatCast(components[0])), @as(f64, @floatCast(components[1])) }),
......@@ -1113,10 +1122,13 @@ pub fn print(v: Value, qt: QualType, comp: *const Compilation, w: *std.Io.Writer
11131122 return null;
11141123}
11151124
1116pub fn printString(bytes: []const u8, qt: QualType, comp: *const Compilation, w: *std.Io.Writer) std.Io.Writer.Error!void {
1125pub fn printString(bytes: []const u8, qt: QualType, comp: *const Compilation, w: *std.Io.Writer, style: enum { quoted, bare }) std.Io.Writer.Error!void {
1126 if (style == .quoted) {
1127 try w.writeByte('"');
1128 }
1129
11171130 const size: Compilation.CharUnitSize = @fromBackingInt(@intCast(qt.childType(comp).sizeof(comp)));
11181131 const without_null = bytes[0 .. bytes.len - @backingInt(size)];
1119 try w.writeByte('"');
11201132 switch (size) {
11211133 .@"1" => try std.zig.stringEscape(without_null, w),
11221134 .@"2" => {
......@@ -1155,5 +1167,8 @@ pub fn printString(bytes: []const u8, qt: QualType, comp: *const Compilation, w:
11551167 }
11561168 },
11571169 }
1158 try w.writeByte('"');
1170
1171 if (style == .quoted) {
1172 try w.writeByte('"');
1173 }
11591174}
lib/compiler/aro/aro/features.zig+29-5
......@@ -1,9 +1,12 @@
11const std = @import("std");
2
3const Attribute = @import("Attribute.zig");
24const Compilation = @import("Compilation.zig");
3const Target = @import("Target.zig");
45
56/// Used to implement the __has_feature macro.
6pub fn hasFeature(comp: *Compilation, ext: []const u8) bool {
7pub fn hasFeature(comp: *Compilation, ext_raw: []const u8) bool {
8 const ext = Attribute.normalize(ext_raw);
9
710 const list = .{
811 .assume_nonnull = true,
912 .attribute_analyzer_noreturn = true,
......@@ -44,6 +47,8 @@ pub fn hasFeature(comp: *Compilation, ext: []const u8) bool {
4447 .c_generic_selections = comp.langopts.standard.atLeast(.c11),
4548 .c_static_assert = comp.langopts.standard.atLeast(.c11),
4649 .c_thread_local = comp.langopts.standard.atLeast(.c11) and comp.target.isTlsSupported(),
50 .c_attributes = comp.langopts.standard.atLeast(.c23),
51 .c_fixed_enum = comp.langopts.standard.atLeast(.c23),
4752 .bounds_attributes = comp.langopts.bounds_safety == .clang,
4853 };
4954 inline for (@typeInfo(@TypeOf(list)).@"struct".field_names) |f_name| {
......@@ -53,7 +58,22 @@ pub fn hasFeature(comp: *Compilation, ext: []const u8) bool {
5358}
5459
5560/// Used to implement the __has_extension macro.
56pub fn hasExtension(comp: *Compilation, ext: []const u8) bool {
61pub fn hasExtension(comp: *Compilation, ext_raw: []const u8) bool {
62 const ext = Attribute.normalize(ext_raw);
63
64 // Extensions are a superset of features, so check all features first.
65 if (hasFeature(comp, ext)) {
66 return true;
67 }
68
69 // "-pedantic-errors" effectively disables extensions by erroring out on
70 // them, so we just return early. This makes "__has_extension" the same as
71 // "__has_feature" when this is set.
72 switch (comp.diagnostics.state.extensions) {
73 .@"error", .@"fatal error" => return false,
74 else => {},
75 }
76
5777 const list = .{
5878 // C11 features
5979 .c_alignas = true,
......@@ -62,13 +82,17 @@ pub fn hasExtension(comp: *Compilation, ext: []const u8) bool {
6282 .c_generic_selections = true,
6383 .c_static_assert = true,
6484 .c_thread_local = comp.target.isTlsSupported(),
85 // C23 features
86 .c_attributes = true,
87 .c_fixed_enum = true,
6588 // misc
6689 .overloadable_unmarked = false, // TODO
6790 .statement_attributes_with_gnu_syntax = true,
68 .gnu_asm = true,
69 .gnu_asm_goto_with_outputs = true,
91 .gnu_asm = comp.langopts.gnu_asm,
92 .gnu_asm_goto_with_outputs = comp.langopts.gnu_asm,
7093 .matrix_types = false, // TODO
7194 .matrix_types_scalar_division = false, // TODO
95 .define_target_os_macros = comp.langopts.hasTargetOsMacros(),
7296 };
7397 inline for (@typeInfo(@TypeOf(list)).@"struct".field_names) |f_name| {
7498 if (std.mem.eql(u8, f_name, ext)) return @field(list, f_name);
lib/compiler/aro/aro/pragmas/once.zig+6
......@@ -14,6 +14,7 @@ const Once = @This();
1414pragma: Pragma = .{
1515 .afterParse = afterParse,
1616 .deinit = deinit,
17 .beforeInclude = beforeInclude,
1718 .preprocessorHandler = preprocessorHandler,
1819 .preserveTokens = preserveTokens,
1920},
......@@ -37,6 +38,11 @@ fn deinit(pragma: *Pragma, comp: *Compilation) void {
3738 comp.gpa.destroy(self);
3839}
3940
41fn beforeInclude(pragma: *Pragma, _: *Preprocessor, source: Source) Pragma.BeforeIncludeError!void {
42 var self: *Once = @fieldParentPtr("pragma", pragma);
43 if (self.pragma_once.contains(source.id)) return error.SkipInclude;
44}
45
4046fn preprocessorHandler(pragma: *Pragma, pp: *Preprocessor, start_idx: TokenIndex) Pragma.Error!void {
4147 var self: *Once = @fieldParentPtr("pragma", pragma);
4248 const name_tok = pp.tokens.get(start_idx);
lib/compiler/aro/aro/pragmas/pack.zig+5-2
......@@ -15,7 +15,10 @@ pragma: Pragma = .{
1515 .deinit = deinit,
1616 .parserHandler = parserHandler,
1717},
18stack: std.ArrayList(struct { label: []const u8, val: u8 }) = .empty,
18
19// Pack states are saved in this stack so `pop` can restore them exactly.
20// A `null` value means no packing, or natural alignment.
21stack: std.ArrayList(struct { label: []const u8, val: ?u8 }) = .empty,
1922
2023pub fn init(allocator: mem.Allocator) !*Pragma {
2124 var pack = try allocator.create(Pack);
......@@ -82,7 +85,7 @@ fn parserHandler(pragma: *Pragma, p: *Parser, start_idx: TokenIndex) Compilation
8285 }
8386 }
8487 if (action == .push) {
85 try pack.stack.append(p.comp.gpa, .{ .label = label orelse "", .val = p.pragma_pack orelse 8 });
88 try pack.stack.append(p.comp.gpa, .{ .label = label orelse "", .val = p.pragma_pack });
8689 } else {
8790 const pop_success = pack.pop(p, label);
8891 if (new_val != null) {
lib/compiler/aro/aro/record_layout.zig+119-92
......@@ -5,6 +5,7 @@ const std = @import("std");
55
66const Attribute = @import("Attribute.zig");
77const Compilation = @import("Compilation.zig");
8const Node = @import("Tree.zig").Node;
89const Parser = @import("Parser.zig");
910const Target = @import("Target.zig");
1011const TypeStore = @import("TypeStore.zig");
......@@ -44,34 +45,20 @@ const SysVContext = struct {
4445 ongoing_bitfield: ?OngoingBitfield,
4546
4647 comp: *const Compilation,
47
48 fn init(qt: QualType, comp: *const Compilation, pragma_pack: ?u8) SysVContext {
49 const pack_value: ?u64 = if (pragma_pack) |pak| @as(u64, pak) * BITS_PER_BYTE else null;
50 const req_align = @as(u32, (qt.requestedAlignment(comp) orelse 1)) * BITS_PER_BYTE;
51 return SysVContext{
52 .attr_packed = qt.hasAttribute(comp, .@"packed"),
53 .max_field_align_bits = pack_value,
54 .aligned_bits = req_align,
55 .is_union = qt.is(comp, .@"union"),
56 .size_bits = 0,
57 .comp = comp,
58 .ongoing_bitfield = null,
59 };
60 }
48 am: *const Attribute.Map,
6149
6250 fn layoutFields(self: *SysVContext, fields: []Type.Record.Field) !void {
6351 for (fields) |*field| {
6452 if (field.qt.isInvalid()) continue;
6553 const type_layout = computeLayout(field.qt, self.comp);
6654
67 const attributes = field.attributes(self.comp);
6855 if (self.comp.target.isMinGW()) {
69 field.layout = try self.layoutMinGWField(field, attributes, type_layout);
56 field.layout = try self.layoutMinGWField(field, type_layout);
7057 } else {
7158 if (field.bit_width.unpack()) |bit_width| {
72 field.layout = try self.layoutBitField(attributes, type_layout, field.name_tok != 0, bit_width);
59 field.layout = try self.layoutBitField(type_layout, field, bit_width);
7360 } else {
74 field.layout = try self.layoutRegularField(attributes, type_layout);
61 field.layout = try self.layoutRegularField(type_layout, field);
7562 }
7663 }
7764 }
......@@ -98,11 +85,10 @@ const SysVContext = struct {
9885 fn layoutMinGWField(
9986 self: *SysVContext,
10087 field: *const Field,
101 field_attrs: []const Attribute,
10288 field_layout: RecordLayout,
10389 ) !FieldLayout {
104 const annotation_alignment_bits = BITS_PER_BYTE * (QualType.annotationAlignment(self.comp, Attribute.Iterator.initSlice(field_attrs)) orelse 1);
105 const is_attr_packed = self.attr_packed or isPacked(field_attrs);
90 const annotation_alignment_bits = BITS_PER_BYTE * (self.am.requestedAlignment(field.field_decl, self.comp) orelse 1);
91 const is_attr_packed = self.attr_packed or self.am.hasAttribute(field.field_decl, .@"packed");
10692 const ignore_type_alignment = ignoreTypeAlignment(is_attr_packed, field.bit_width.unpack(), self.ongoing_bitfield, field_layout);
10793
10894 var field_alignment_bits: u64 = field_layout.field_alignment_bits;
......@@ -227,20 +213,20 @@ const SysVContext = struct {
227213
228214 fn layoutRegularField(
229215 self: *SysVContext,
230 fld_attrs: []const Attribute,
231216 fld_layout: RecordLayout,
217 field: *const Record.Field,
232218 ) !FieldLayout {
233219 var fld_align_bits = fld_layout.field_alignment_bits;
234220
235221 // If the struct or the field is packed, then the alignment of the underlying type is
236222 // ignored. See test case 0084.
237 if (self.attr_packed or isPacked(fld_attrs)) {
223 if (self.attr_packed or self.am.hasAttribute(field.field_decl, .@"packed")) {
238224 fld_align_bits = BITS_PER_BYTE;
239225 }
240226
241227 // The field alignment can be increased by __attribute__((aligned)) annotations on the
242228 // field. See test case 0085.
243 if (QualType.annotationAlignment(self.comp, Attribute.Iterator.initSlice(fld_attrs))) |anno| {
229 if (self.am.requestedAlignment(field.field_decl, self.comp)) |anno| {
244230 fld_align_bits = @max(fld_align_bits, @as(u32, anno) * BITS_PER_BYTE);
245231 }
246232
......@@ -268,48 +254,50 @@ const SysVContext = struct {
268254
269255 fn layoutBitField(
270256 self: *SysVContext,
271 fld_attrs: []const Attribute,
272257 fld_layout: RecordLayout,
273 is_named: bool,
258 field: *const Record.Field,
274259 bit_width: u64,
275260 ) !FieldLayout {
261 const is_named = field.name_tok != 0;
276262 const ty_size_bits = fld_layout.size_bits;
277263 var ty_fld_algn_bits: u32 = fld_layout.field_alignment_bits;
264 const target = &self.comp.target;
278265
279266 if (bit_width > 0) {
280267 std.debug.assert(bit_width <= ty_size_bits); // Checked in parser
281268 // Some targets ignore the alignment of the underlying type when laying out
282269 // non-zero-sized bit-fields. See test case 0072. On such targets, bit-fields never
283270 // cross a storage boundary. See test case 0081.
284 if (self.comp.target.ignoreNonZeroSizedBitfieldTypeAlignment()) {
271 if (target.ignoreNonZeroSizedBitfieldTypeAlignment()) {
285272 ty_fld_algn_bits = 1;
286273 }
287274 } else {
288275 // Some targets ignore the alignment of the underlying type when laying out
289276 // zero-sized bit-fields. See test case 0073.
290 if (self.comp.target.ignoreZeroSizedBitfieldTypeAlignment()) {
277 if (target.ignoreZeroSizedBitfieldTypeAlignment()) {
291278 ty_fld_algn_bits = 1;
292279 }
293280 // Some targets have a minimum alignment of zero-sized bit-fields. See test case
294281 // 0074.
295 if (self.comp.target.minZeroWidthBitfieldAlignment()) |target_align| {
282 if (target.minZeroWidthBitfieldAlignment()) |target_align| {
296283 ty_fld_algn_bits = @max(ty_fld_algn_bits, target_align);
297284 }
298285 }
299286
300287 // __attribute__((packed)) on the record is identical to __attribute__((packed)) on each
301288 // field. See test case 0067.
302 const attr_packed = self.attr_packed or isPacked(fld_attrs);
289 const attr_packed = self.attr_packed or self.am.hasAttribute(field.field_decl, .@"packed");
303290 const has_packing_annotation = attr_packed or self.max_field_align_bits != null;
304291
305 const annotation_alignment = if (QualType.annotationAlignment(self.comp, Attribute.Iterator.initSlice(fld_attrs))) |anno| @as(u32, anno) * BITS_PER_BYTE else 1;
292 const annotation_alignment = if (self.am.requestedAlignment(field.field_decl, self.comp)) |anno| @as(u32, anno) * BITS_PER_BYTE else 1;
306293
307294 const first_unused_bit: u64 = if (self.is_union) 0 else self.size_bits;
308295 var field_align_bits: u64 = 1;
296 const emulate = self.comp.langopts.emulate;
309297
310298 if (bit_width == 0) {
311299 field_align_bits = @max(ty_fld_algn_bits, annotation_alignment);
312 } else if (self.comp.langopts.emulate == .gcc) {
300 } else if (emulate == .gcc) {
313301 // On GCC, the field alignment is at least the alignment requested by annotations
314302 // except as restricted by #pragma pack. See test case 0083.
315303 field_align_bits = annotation_alignment;
......@@ -332,7 +320,7 @@ const SysVContext = struct {
332320 }
333321 }
334322 } else {
335 std.debug.assert(self.comp.langopts.emulate == .no or self.comp.langopts.emulate == .clang);
323 std.debug.assert(emulate == .no or emulate == .clang);
336324
337325 // On Clang, the alignment requested by annotations is not respected if it is
338326 // larger than the value of #pragma pack. See test case 0083.
......@@ -355,7 +343,7 @@ const SysVContext = struct {
355343
356344 // Unnamed fields do not contribute to the record alignment except on a few targets.
357345 // See test case 0079.
358 if (is_named or self.comp.target.unnamedFieldAffectsAlignment()) {
346 if (is_named or target.unnamedFieldAffectsAlignment()) {
359347 var inherited_align_bits: u32 = undefined;
360348
361349 if (bit_width == 0) {
......@@ -401,11 +389,20 @@ const MsvcContext = struct {
401389 ongoing_bitfield: ?OngoingBitfield,
402390 contains_non_bitfield: bool,
403391 is_union: bool,
404 comp: *const Compilation,
405392
406 fn init(qt: QualType, comp: *const Compilation, pragma_pack: ?u8) MsvcContext {
393 comp: *const Compilation,
394 am: *const Attribute.Map,
395
396 fn init(
397 packed_attr: bool,
398 requested_align: ?u32,
399 is_union: bool,
400 comp: *const Compilation,
401 am: *const Attribute.Map,
402 pragma_pack: ?u8,
403 ) MsvcContext {
407404 var pack_value: ?u32 = null;
408 if (qt.hasAttribute(comp, .@"packed")) {
405 if (packed_attr) {
409406 // __attribute__((packed)) behaves like #pragma pack(1) in clang. See test case 0056.
410407 pack_value = BITS_PER_BYTE;
411408 }
......@@ -414,13 +411,10 @@ const MsvcContext = struct {
414411 pack_value = pack * BITS_PER_BYTE;
415412 }
416413 }
417 if (pack_value) |pack| {
418 pack_value = msvcPragmaPack(comp, pack);
419 }
420
414 pack_value = msvcPragmaPack(comp, pack_value);
421415 // The required alignment can be increased by adding a __declspec(align)
422416 // annotation. See test case 0023.
423 const must_align = @as(u32, (qt.requestedAlignment(comp) orelse 1)) * BITS_PER_BYTE;
417 const must_align = @as(u32, (requested_align orelse 1)) * BITS_PER_BYTE;
424418 return .{
425419 .req_align_bits = must_align,
426420 .pointer_align_bits = must_align,
......@@ -429,19 +423,20 @@ const MsvcContext = struct {
429423 .max_field_align_bits = pack_value,
430424 .ongoing_bitfield = null,
431425 .contains_non_bitfield = false,
432 .is_union = qt.is(comp, .@"union"),
426 .is_union = is_union,
433427 .comp = comp,
428 .am = am,
434429 };
435430 }
436431
437 fn layoutField(self: *MsvcContext, fld: *const Field, fld_attrs: []const Attribute) !FieldLayout {
432 fn layoutField(self: *MsvcContext, fld: *const Field) !FieldLayout {
438433 const type_layout = computeLayout(fld.qt, self.comp);
439434
440435 // The required alignment of the field is the maximum of the required alignment of the
441436 // underlying type and the __declspec(align) annotation on the field itself.
442437 // See test case 0028.
443438 var req_align = type_layout.required_alignment_bits;
444 if (QualType.annotationAlignment(self.comp, Attribute.Iterator.initSlice(fld_attrs))) |anno| {
439 if (self.am.requestedAlignment(fld.field_decl, self.comp)) |anno| {
445440 req_align = @max(@as(u32, anno) * BITS_PER_BYTE, req_align);
446441 }
447442
......@@ -463,7 +458,7 @@ const MsvcContext = struct {
463458 fld_align_bits = @max(fld_align_bits, type_req_align * 8);
464459 }
465460
466 if (isPacked(fld_attrs)) {
461 if (self.am.hasAttribute(fld.field_decl, .@"packed")) {
467462 // __attribute__((packed)) on a field is a clang extension. It behaves as if #pragma
468463 // pack(1) had been applied only to this field. See test case 0057.
469464 fld_align_bits = BITS_PER_BYTE;
......@@ -567,54 +562,79 @@ const MsvcContext = struct {
567562 }
568563};
569564
570pub fn compute(fields: []Type.Record.Field, qt: QualType, comp: *const Compilation, pragma_pack: ?u8) Error!Type.Record.Layout {
571 switch (comp.langopts.emulate) {
572 .no, .gcc, .clang => {
573 var context = SysVContext.init(qt, comp, pragma_pack);
565pub fn compute(
566 fields: []Type.Record.Field,
567 opt_decl: Node.OptIndex,
568 is_union: bool,
569 comp: *const Compilation,
570 am: *const Attribute.Map,
571 pragma_pack: ?u8,
572) Error!Type.Record.Layout {
573 const packed_attr = am.hasAttribute(opt_decl, .@"packed");
574 const requested_align = am.requestedAlignment(opt_decl, comp);
575
576 const use_sysv_layout = switch (comp.langopts.emulate) {
577 .msvc => false,
578 .clang, .no => comp.target.abi != .msvc,
579 .gcc => true,
580 };
574581
575 try context.layoutFields(fields);
582 if (use_sysv_layout) {
583 var context: SysVContext = .{
584 .attr_packed = packed_attr,
585 .max_field_align_bits = if (pragma_pack) |pak| @as(u64, pak) * BITS_PER_BYTE else null,
586 .aligned_bits = (requested_align orelse 1) * BITS_PER_BYTE,
587 .is_union = is_union,
588 .size_bits = 0,
589 .comp = comp,
590 .am = am,
591 .ongoing_bitfield = null,
592 };
576593
577 context.size_bits = try alignForward(context.size_bits, context.aligned_bits);
594 try context.layoutFields(fields);
578595
579 return .{
580 .size_bits = context.size_bits,
581 .field_alignment_bits = context.aligned_bits,
582 .pointer_alignment_bits = context.aligned_bits,
583 .required_alignment_bits = BITS_PER_BYTE,
584 };
585 },
586 .msvc => {
587 var context = MsvcContext.init(qt, comp, pragma_pack);
588 for (fields) |*field| {
589 if (field.qt.isInvalid()) continue;
590 field.layout = try context.layoutField(field, field.attributes(comp));
591 }
592 if (context.size_bits == 0) {
593 // As an extension, MSVC allows records that only contain zero-sized bitfields and empty
594 // arrays. Such records would be zero-sized but this case is handled here separately to
595 // ensure that there are no zero-sized records.
596 context.handleZeroSizedRecord();
597 }
598 context.size_bits = try alignForward(context.size_bits, context.pointer_align_bits);
599 return .{
600 .size_bits = context.size_bits,
601 .field_alignment_bits = context.field_align_bits,
602 .pointer_alignment_bits = context.pointer_align_bits,
603 .required_alignment_bits = context.req_align_bits,
604 };
605 },
596 context.size_bits = try alignForward(context.size_bits, context.aligned_bits);
597
598 return .{
599 .size_bits = context.size_bits,
600 .field_alignment_bits = context.aligned_bits,
601 .pointer_alignment_bits = context.aligned_bits,
602 .required_alignment_bits = BITS_PER_BYTE,
603 };
604 } else {
605 var context = MsvcContext.init(packed_attr, requested_align, is_union, comp, am, pragma_pack);
606 for (fields) |*field| {
607 if (field.qt.isInvalid()) continue;
608 field.layout = try context.layoutField(field);
609 }
610 if (context.size_bits == 0) {
611 // As an extension, MSVC allows records that only contain zero-sized bitfields and empty
612 // arrays. Such records would be zero-sized but this case is handled here separately to
613 // ensure that there are no zero-sized records.
614 context.handleZeroSizedRecord();
615 }
616 context.size_bits = try alignForward(context.size_bits, context.pointer_align_bits);
617 return .{
618 .size_bits = context.size_bits,
619 .field_alignment_bits = context.field_align_bits,
620 .pointer_alignment_bits = context.pointer_align_bits,
621 .required_alignment_bits = context.req_align_bits,
622 };
606623 }
607624}
608625
609626fn computeLayout(qt: QualType, comp: *const Compilation) RecordLayout {
627 const requested = BITS_PER_BYTE * (if (comp.langopts.emulate == .msvc)
628 msvcRequiredAlignment(qt, comp) orelse 0
629 else
630 qt.requestedAlignment(comp) orelse 0);
610631 switch (qt.base(comp).type) {
611632 .@"struct", .@"union" => |record| {
612 const requested = BITS_PER_BYTE * (qt.requestedAlignment(comp) orelse 0);
613633 return .{
614634 .size_bits = record.layout.?.size_bits,
615635 .pointer_alignment_bits = @max(requested, record.layout.?.pointer_alignment_bits),
616636 .field_alignment_bits = @max(requested, record.layout.?.field_alignment_bits),
617 .required_alignment_bits = record.layout.?.required_alignment_bits,
637 .required_alignment_bits = @max(requested, record.layout.?.required_alignment_bits),
618638 };
619639 },
620640 else => {
......@@ -623,20 +643,27 @@ fn computeLayout(qt: QualType, comp: *const Compilation) RecordLayout {
623643 .size_bits = BITS_PER_BYTE * (qt.sizeofOrNull(comp) orelse 0),
624644 .pointer_alignment_bits = type_align,
625645 .field_alignment_bits = type_align,
626 .required_alignment_bits = BITS_PER_BYTE,
646 .required_alignment_bits = @max(requested, BITS_PER_BYTE),
627647 };
628648 },
629649 }
630650}
631651
632fn isPacked(attrs: ?[]const Attribute) bool {
633 const a = attrs orelse return false;
634
635 for (a) |attribute| {
636 if (attribute.tag != .@"packed") continue;
637 return true;
638 }
639 return false;
652fn msvcRequiredAlignment(qt: QualType, comp: *const Compilation) ?u32 {
653 const child = switch (qt.type(comp)) {
654 .array => |array| msvcRequiredAlignment(array.elem, comp),
655 .typedef => |typedef| msvcRequiredAlignment(typedef.base, comp),
656 .typeof => |typeof| msvcRequiredAlignment(typeof.base, comp),
657 .@"struct", .@"union" => |record| if (record.layout) |layout|
658 layout.required_alignment_bits / BITS_PER_BYTE
659 else
660 null,
661 else => null,
662 };
663 return if (qt.requestedAlignment(comp)) |own|
664 if (child) |child_alignment| @max(own, child_alignment) else own
665 else
666 child;
640667}
641668
642669// The effect of #pragma pack(N) depends on the target.
......@@ -652,8 +679,8 @@ fn isPacked(attrs: ?[]const Attribute) bool {
652679// activate the default.
653680//
654681// See test case 0020.
655pub fn msvcPragmaPack(comp: *const Compilation, pack: u32) ?u32 {
656 return switch (pack) {
682pub fn msvcPragmaPack(comp: *const Compilation, pack: ?u32) ?u32 {
683 return switch (pack orelse 0) {
657684 8, 16, 32 => pack,
658685 64 => if (comp.target.cpu.arch == .x86) null else pack,
659686 128 => if (comp.target.cpu.arch == .thumb) pack else null,
lib/compiler/aro/assembly_backend/x86_64.zig+4-3
......@@ -68,7 +68,7 @@ fn serializeFloat(comptime T: type, value: T, w: *std.Io.Writer) !void {
6868pub fn todo(c: *AsmCodeGen, msg: []const u8, tok: Tree.TokenIndex) Error {
6969 const loc: Source.Location = c.tree.tokens.items(.loc)[tok];
7070
71 var bfa_buf: [u8]1024 = undefined;
71 var bfa_buf: [1024]u8 = undefined;
7272 var bfa: std.heap.BufferFirstAllocator = .init(&bfa_buf, c.comp.gpa);
7373 const allocator = bfa.allocator();
7474 var buf: std.ArrayList(u8) = .empty;
......@@ -118,7 +118,7 @@ fn emitSingleValue(c: *AsmCodeGen, qt: QualType, node: Node.Index) !void {
118118 const bytes = value.toBytes(c.comp);
119119 const directive = if (bytes.len > bit_size / 8) "ascii" else "string";
120120 try c.data.print(" .{s} ", .{directive});
121 try Value.printString(bytes, qt, c.comp, c.data);
121 try Value.printString(bytes, qt, c.comp, c.data, .quoted);
122122
123123 try c.data.writeByte('\n');
124124 } else unreachable;
......@@ -150,7 +150,8 @@ pub fn genAsm(tree: *const Tree) Error!Assembly {
150150
151151 codegen.genDecls() catch |err| switch (err) {
152152 error.WriteFailed => return error.OutOfMemory,
153 error.OutOfMemory, error.FatalError => |e| return e,
153 error.OutOfMemory => return error.OutOfMemory,
154 error.FatalError => return error.FatalError,
154155 };
155156
156157 const text_slice = try text.toOwnedSlice();
lib/compiler/aro/backend/CodeGenOptions.zig+6
......@@ -10,6 +10,10 @@ pic_level: PicLevel,
1010/// Generate position-independent code that can only be linked into executables
1111is_pie: bool,
1212optimization_level: OptimizationLevel,
13/// Generate Read-Only and Read-Write Position Independent (ROPI/RWPI) code an ARM targets.
14/// This currently only emits macros for better clang compat.
15is_ropi: bool,
16is_rwpi: bool,
1317/// Generate debug information
1418debug: DebugFormat,
1519dwarf_version: DwarfVersion,
......@@ -88,6 +92,8 @@ pub const default: @This() = .{
8892 .data_sections = false,
8993 .pic_level = .none,
9094 .is_pie = false,
95 .is_ropi = false,
96 .is_rwpi = false,
9197 .optimization_level = .@"0",
9298 .debug = .strip,
9399 .dwarf_version = .@"0",
lib/compiler/aro/backend/Interner.zig+2-2
......@@ -8,7 +8,7 @@ const Limb = std.math.big.Limb;
88
99const Interner = @This();
1010
11map: std.array_hash_map.Auto(void, void) = .empty,
11map: std.AutoArrayHashMapUnmanaged(void, void) = .empty,
1212items: std.MultiArrayList(struct {
1313 tag: Tag,
1414 data: u32,
......@@ -896,7 +896,7 @@ fn extraDataTrail(i: *const Interner, comptime T: type, index: usize) struct { d
896896 inline for (info.field_names, info.field_types, 0..) |field_name, field_type, field_i| {
897897 const int32 = i.extra.items[field_i + index];
898898 @field(result, field_name) = switch (field_type) {
899 Ref => @fromBackingInt(@intCast(int32)),
899 Ref => @fromBackingInt(int32),
900900 u32 => int32,
901901 else => @compileError("bad field type: " ++ @typeName(field_type)),
902902 };
lib/compiler/aro/backend/Ir.zig+5-5
......@@ -7,7 +7,7 @@ const Object = @import("Object.zig");
77const Ir = @This();
88
99interner: *Interner,
10decls: std.array_hash_map.String(Decl),
10decls: std.StringArrayHashMapUnmanaged(Decl),
1111
1212pub const Decl = struct {
1313 instructions: std.MultiArrayList(Inst),
......@@ -26,7 +26,7 @@ pub const Builder = struct {
2626 arena: std.heap.ArenaAllocator,
2727 interner: *Interner,
2828
29 decls: std.array_hash_map.String(Decl) = .empty,
29 decls: std.StringArrayHashMapUnmanaged(Decl) = .empty,
3030 instructions: std.MultiArrayList(Ir.Inst) = .empty,
3131 body: std.ArrayList(Ref) = .empty,
3232 alloc_count: u32 = 0,
......@@ -181,7 +181,7 @@ pub const Renderer = struct {
181181 ir: *const Ir,
182182 errors: ErrorList = .{},
183183
184 pub const ErrorList = std.array_hash_map.String([]const u8);
184 pub const ErrorList = std.StringArrayHashMapUnmanaged([]const u8);
185185
186186 pub const Error = Allocator.Error || error{LowerFail};
187187
......@@ -204,7 +204,7 @@ pub const Renderer = struct {
204204 args: anytype,
205205 ) Error {
206206 try r.errors.ensureUnusedCapacity(r.gpa, 1);
207 r.errors.putAssumeCapacity(name, try std.fmt.allocPrint(r.gpa, format, args));
207 r.errors.putAssumeCapacity(name, try r.gpa.print(format, args));
208208 return error.LowerFail;
209209 }
210210};
......@@ -380,7 +380,7 @@ const REF = std.Io.Terminal.Color.bright_blue;
380380const LITERAL = std.Io.Terminal.Color.bright_green;
381381const ATTRIBUTE = std.Io.Terminal.Color.bright_yellow;
382382
383const RefMap = std.array_hash_map.Auto(Ref, void);
383const RefMap = std.AutoArrayHashMapUnmanaged(Ref, void);
384384
385385pub const DumpError = std.Io.Terminal.SetColorError || std.mem.Allocator.Error;
386386
lib/compiler/aro/backend/Ir/x86/Renderer.zig-34
......@@ -4,46 +4,12 @@ const assert = std.debug.assert;
44const Interner = @import("../../Interner.zig");
55const Ir = @import("../../Ir.zig");
66const BaseRenderer = Ir.Renderer;
7const zig = @import("zig");
8const abi = zig.arch.x86_64.abi;
9const bits = zig.arch.x86_64.bits;
10
11const Condition = bits.Condition;
12const Immediate = bits.Immediate;
13const Memory = bits.Memory;
14const Register = bits.Register;
15const RegisterLock = RegisterManager.RegisterLock;
16const FrameIndex = bits.FrameIndex;
17
18const RegisterManager = zig.RegisterManager(Renderer, Register, Ir.Ref, abi.allocatable_regs);
19
20// Register classes
21const RegisterBitSet = RegisterManager.RegisterBitSet;
22const RegisterClass = struct {
23 const gp: RegisterBitSet = blk: {
24 var set: RegisterBitSet = .empty;
25 for (abi.allocatable_regs, 0..) |reg, index| if (reg.class() == .general_purpose) set.set(index);
26 break :blk set;
27 };
28 const x87: RegisterBitSet = blk: {
29 var set: RegisterBitSet = .empty;
30 for (abi.allocatable_regs, 0..) |reg, index| if (reg.class() == .x87) set.set(index);
31 break :blk set;
32 };
33 const sse: RegisterBitSet = blk: {
34 var set: RegisterBitSet = .empty;
35 for (abi.allocatable_regs, 0..) |reg, index| if (reg.class() == .sse) set.set(index);
36 break :blk set;
37 };
38};
397
408const Renderer = @This();
419
4210base: *BaseRenderer,
4311interner: *Interner,
4412
45register_manager: RegisterManager = .{},
46
4713pub fn render(base: *BaseRenderer) !void {
4814 var renderer: Renderer = .{
4915 .base = base,
lib/compiler/aro/backend/Object/Elf.zig+97-87
......@@ -129,7 +129,7 @@ pub fn declareSymbol(
129129 };
130130 const name = if (maybe_name) |some| some else blk: {
131131 defer elf.unnamed_symbol_mangle += 1;
132 break :blk try std.fmt.allocPrint(elf.arena.allocator(), ".L.{d}", .{elf.unnamed_symbol_mangle});
132 break :blk try elf.arena.allocator().print(".L.{d}", .{elf.unnamed_symbol_mangle});
133133 };
134134
135135 const gop = if (linkage == .Internal)
......@@ -172,21 +172,21 @@ pub fn addRelocation(elf: *Elf, name: []const u8, section_kind: Object.Section,
172172/// section headers
173173pub fn finish(elf: *Elf, w: *std.Io.Writer) !void {
174174 var num_sections: std.elf.Half = additional_sections;
175 var relocations_len: std.elf.Elf64_Off = 0;
176 var sections_len: std.elf.Elf64_Off = 0;
175 var relocations_len: std.elf.Elf64.Off = 0;
176 var sections_len: std.elf.Elf64.Off = 0;
177177 {
178178 var it = elf.sections.valueIterator();
179179 while (it.next()) |sect| {
180180 sections_len += sect.*.data.items.len;
181 relocations_len += sect.*.relocations.items.len * @sizeOf(std.elf.Elf64_Rela);
181 relocations_len += sect.*.relocations.items.len * @sizeOf(std.elf.Elf64.Rela);
182182 sect.*.index = num_sections;
183183 num_sections += 1;
184184 num_sections += @intFromBool(sect.*.relocations.items.len != 0);
185185 }
186186 }
187 const symtab_len = (elf.local_symbols.count() + elf.global_symbols.count() + 1) * @sizeOf(std.elf.Elf64_Sym);
187 const symtab_len = (elf.local_symbols.count() + elf.global_symbols.count() + 1) * @sizeOf(std.elf.Elf64.Sym);
188188
189 const symtab_offset = @sizeOf(std.elf.Elf64_Ehdr) + sections_len;
189 const symtab_offset = @sizeOf(std.elf.Elf64.Ehdr) + sections_len;
190190 const symtab_offset_aligned = std.mem.alignForward(u64, symtab_offset, 8);
191191 const rela_offset = symtab_offset_aligned + symtab_len;
192192 const strtab_offset = rela_offset + relocations_len;
......@@ -194,21 +194,28 @@ pub fn finish(elf: *Elf, w: *std.Io.Writer) !void {
194194 const sh_offset_aligned = std.mem.alignForward(u64, sh_offset, 16);
195195 const endian = elf.obj.target.cpu.arch.endian();
196196
197 const elf_header: std.elf.Elf64_Ehdr = .{
198 .e_ident = .{ 0x7F, 'E', 'L', 'F', 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
199 .e_type = std.elf.ET.REL, // we only produce relocatables
200 .e_machine = elf.obj.target.toElfMachine(),
201 .e_version = 1,
202 .e_entry = 0, // linker will handle this
203 .e_phoff = 0, // no program header
204 .e_shoff = sh_offset_aligned, // section headers offset
205 .e_flags = 0, // no flags
206 .e_ehsize = @sizeOf(std.elf.Elf64_Ehdr),
207 .e_phentsize = 0, // no program header
208 .e_phnum = 0, // no program header
209 .e_shentsize = @sizeOf(std.elf.Elf64_Shdr),
210 .e_shnum = num_sections,
211 .e_shstrndx = strtab_index,
197 const elf_header: std.elf.Elf64.Ehdr = .{
198 .ident = .{
199 .magic = .{ 0x7F, 'E', 'L', 'F' },
200 .class = .@"64",
201 .data = .@"2LSB",
202 .version = 1,
203 .osabi = .NONE,
204 .abiversion = 0,
205 },
206 .type = .REL, // we only produce relocatables
207 .machine = elf.obj.target.toElfMachine(),
208 .version = 1,
209 .entry = 0, // linker will handle this
210 .phoff = 0, // no program header
211 .shoff = sh_offset_aligned, // section headers offset
212 .flags = .{ .int = 0 }, // no flags
213 .ehsize = @sizeOf(std.elf.Elf64.Ehdr),
214 .phentsize = 0, // no program header
215 .phnum = 0, // no program header
216 .shentsize = @sizeOf(std.elf.Elf64.Shdr),
217 .shnum = num_sections,
218 .shstrndx = strtab_index,
212219 };
213220 try w.writeStruct(elf_header, endian);
214221
......@@ -225,19 +232,19 @@ pub fn finish(elf: *Elf, w: *std.Io.Writer) !void {
225232 // write symbols
226233 {
227234 // first symbol must be null
228 try w.writeStruct(std.mem.zeroes(std.elf.Elf64_Sym), endian);
235 try w.writeStruct(std.mem.zeroes(std.elf.Elf64.Sym), endian);
229236
230237 var sym_index: u16 = 1;
231238 var it = elf.local_symbols.iterator();
232239 while (it.next()) |entry| {
233240 const sym = entry.value_ptr.*;
234 try w.writeStruct(std.elf.Elf64_Sym{
235 .st_name = name_offset,
236 .st_info = sym.info,
237 .st_other = 0,
238 .st_shndx = if (sym.section) |some| some.index else 0,
239 .st_value = sym.offset,
240 .st_size = sym.size,
241 try w.writeStruct(std.elf.Elf64.Sym{
242 .name = name_offset,
243 .info = @bitCast(sym.info),
244 .other = .{ .visibility = .DEFAULT },
245 .shndx = if (sym.section) |some| some.index else 0,
246 .value = sym.offset,
247 .size = sym.size,
241248 }, endian);
242249 sym.index = sym_index;
243250 sym_index += 1;
......@@ -246,13 +253,13 @@ pub fn finish(elf: *Elf, w: *std.Io.Writer) !void {
246253 it = elf.global_symbols.iterator();
247254 while (it.next()) |entry| {
248255 const sym = entry.value_ptr.*;
249 try w.writeStruct(std.elf.Elf64_Sym{
250 .st_name = name_offset,
251 .st_info = sym.info,
252 .st_other = 0,
253 .st_shndx = if (sym.section) |some| some.index else 0,
254 .st_value = sym.offset,
255 .st_size = sym.size,
256 try w.writeStruct(std.elf.Elf64.Sym{
257 .name = name_offset,
258 .info = @bitCast(sym.info),
259 .other = .{ .visibility = .DEFAULT },
260 .shndx = if (sym.section) |some| some.index else 0,
261 .value = sym.offset,
262 .size = sym.size,
256263 }, endian);
257264 sym.index = sym_index;
258265 sym_index += 1;
......@@ -265,10 +272,13 @@ pub fn finish(elf: *Elf, w: *std.Io.Writer) !void {
265272 var it = elf.sections.valueIterator();
266273 while (it.next()) |sect| {
267274 for (sect.*.relocations.items) |rela| {
268 try w.writeStruct(std.elf.Elf64_Rela{
269 .r_offset = rela.offset,
270 .r_addend = rela.addend,
271 .r_info = (@as(u64, rela.symbol.index) << 32) | rela.type,
275 try w.writeStruct(std.elf.Elf64.Rela{
276 .offset = rela.offset,
277 .addend = rela.addend,
278 .info = .{
279 .type = rela.type,
280 .sym = rela.symbol.index,
281 },
272282 }, endian);
273283 }
274284 }
......@@ -293,77 +303,77 @@ pub fn finish(elf: *Elf, w: *std.Io.Writer) !void {
293303 // pad to 16 bytes
294304 try w.splatByteAll(0, @intCast(sh_offset_aligned - sh_offset));
295305 // mandatory null header
296 try w.writeStruct(std.mem.zeroes(std.elf.Elf64_Shdr), endian);
306 try w.writeStruct(std.mem.zeroes(std.elf.Elf64.Shdr), endian);
297307
298308 // write strtab section header
299309 {
300 const sect_header: std.elf.Elf64_Shdr = .{
301 .sh_name = strtab_name,
302 .sh_type = std.elf.SHT_STRTAB,
303 .sh_flags = 0,
304 .sh_addr = 0,
305 .sh_offset = strtab_offset,
306 .sh_size = elf.strtab_len,
307 .sh_link = 0,
308 .sh_info = 0,
309 .sh_addralign = 1,
310 .sh_entsize = 0,
310 const sect_header: std.elf.Elf64.Shdr = .{
311 .name = strtab_name,
312 .type = .STRTAB,
313 .flags = .{ .shf = .{} },
314 .addr = 0,
315 .offset = strtab_offset,
316 .size = elf.strtab_len,
317 .link = 0,
318 .info = 0,
319 .addralign = 1,
320 .entsize = 0,
311321 };
312322 try w.writeStruct(sect_header, endian);
313323 }
314324
315325 // write symtab section header
316326 {
317 const sect_header: std.elf.Elf64_Shdr = .{
318 .sh_name = symtab_name,
319 .sh_type = std.elf.SHT_SYMTAB,
320 .sh_flags = 0,
321 .sh_addr = 0,
322 .sh_offset = symtab_offset_aligned,
323 .sh_size = symtab_len,
324 .sh_link = strtab_index,
325 .sh_info = elf.local_symbols.size + 1,
326 .sh_addralign = 8,
327 .sh_entsize = @sizeOf(std.elf.Elf64_Sym),
327 const sect_header: std.elf.Elf64.Shdr = .{
328 .name = symtab_name,
329 .type = .SYMTAB,
330 .flags = .{ .shf = .{} },
331 .addr = 0,
332 .offset = symtab_offset_aligned,
333 .size = symtab_len,
334 .link = strtab_index,
335 .info = elf.local_symbols.size + 1,
336 .addralign = 8,
337 .entsize = @sizeOf(std.elf.Elf64.Sym),
328338 };
329339 try w.writeStruct(sect_header, endian);
330340 }
331341
332342 // remaining section headers
333343 {
334 var sect_offset: u64 = @sizeOf(std.elf.Elf64_Ehdr);
344 var sect_offset: u64 = @sizeOf(std.elf.Elf64.Ehdr);
335345 var rela_sect_offset: u64 = rela_offset;
336346 var it = elf.sections.iterator();
337347 while (it.next()) |entry| {
338348 const sect = entry.value_ptr.*;
339349 const rela_count = sect.relocations.items.len;
340350 const rela_name_offset: u32 = if (rela_count != 0) @truncate(".rela".len) else 0;
341 try w.writeStruct(std.elf.Elf64_Shdr{
342 .sh_name = rela_name_offset + name_offset,
343 .sh_type = sect.type,
344 .sh_flags = sect.flags,
345 .sh_addr = 0,
346 .sh_offset = sect_offset,
347 .sh_size = sect.data.items.len,
348 .sh_link = 0,
349 .sh_info = 0,
350 .sh_addralign = if (sect.flags & std.elf.SHF_EXECINSTR != 0) 16 else 1,
351 .sh_entsize = 0,
351 try w.writeStruct(std.elf.Elf64.Shdr{
352 .name = rela_name_offset + name_offset,
353 .type = @fromBackingInt(sect.type),
354 .flags = @bitCast(sect.flags),
355 .addr = 0,
356 .offset = sect_offset,
357 .size = sect.data.items.len,
358 .link = 0,
359 .info = 0,
360 .addralign = if (sect.flags & std.elf.SHF_EXECINSTR != 0) 16 else 1,
361 .entsize = 0,
352362 }, endian);
353363
354364 if (rela_count != 0) {
355 const size = rela_count * @sizeOf(std.elf.Elf64_Rela);
356 try w.writeStruct(std.elf.Elf64_Shdr{
357 .sh_name = name_offset,
358 .sh_type = std.elf.SHT_RELA,
359 .sh_flags = 0,
360 .sh_addr = 0,
361 .sh_offset = rela_sect_offset,
362 .sh_size = rela_count * @sizeOf(std.elf.Elf64_Rela),
363 .sh_link = symtab_index,
364 .sh_info = sect.index,
365 .sh_addralign = 8,
366 .sh_entsize = @sizeOf(std.elf.Elf64_Rela),
365 const size = rela_count * @sizeOf(std.elf.Elf64.Rela);
366 try w.writeStruct(std.elf.Elf64.Shdr{
367 .name = name_offset,
368 .type = .RELA,
369 .flags = .{ .shf = .{} },
370 .addr = 0,
371 .offset = rela_sect_offset,
372 .size = rela_count * @sizeOf(std.elf.Elf64.Rela),
373 .link = symtab_index,
374 .info = sect.index,
375 .addralign = 8,
376 .entsize = @sizeOf(std.elf.Elf64.Rela),
367377 }, endian);
368378 rela_sect_offset += size;
369379 }
lib/compiler/aro/include/stdint.h+23
......@@ -7,6 +7,29 @@
77
88# include_next <stdint.h>
99
10# if defined(__APPLE__)
11
12# if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
13# define INTMAX_WIDTH __INTMAX_WIDTH__
14# define UINTMAX_WIDTH __UINTMAX_WIDTH__
15# define INTPTR_WIDTH __INTPTR_WIDTH__
16# define UINTPTR_WIDTH __UINTPTR_WIDTH__
17# define PTRDIFF_WIDTH __PTRDIFF_WIDTH__
18# define SIZE_WIDTH __SIZE_WIDTH__
19# define WCHAR_WIDTH __WCHAR_WIDTH__
20
21# define UINT8_WIDTH 8
22# define UINT16_WIDTH 16
23# define UINT32_WIDTH 32
24# define UINT64_WIDTH 64
25# define INT8_WIDTH UINT8_WIDTH
26# define INT16_WIDTH UINT16_WIDTH
27# define INT32_WIDTH UINT32_WIDTH
28# define INT64_WIDTH UINT64_WIDTH
29# endif
30
31# endif
32
1033#else
1134
1235#define __stdint_int_c_cat(X, Y) X ## Y
lib/compiler/translate-c/MacroTranslator.zig+49-6
......@@ -269,7 +269,8 @@ fn parseCNumLit(mt: *MacroTranslator) ParseError!ZigNode {
269269 // +3 for prefix and +2 for suffix
270270 var bytes = try std.ArrayList(u8).initCapacity(arena, lit_bytes.len + 3 + 2);
271271
272 const prefix = aro.Tree.Token.NumberPrefix.fromString(lit_bytes);
272 const allow_msvc_suffixes = mt.t.comp.langopts.allowFixedSizedIntSuffixes();
273 const prefix = aro.Tokenizer.number_literal.Prefix.fromString(lit_bytes, allow_msvc_suffixes);
273274 switch (prefix) {
274275 .binary => bytes.appendSliceAssumeCapacity("0b"),
275276 .octal => bytes.appendSliceAssumeCapacity("0o"),
......@@ -335,7 +336,7 @@ fn parseCNumLit(mt: *MacroTranslator) ParseError!ZigNode {
335336 };
336337
337338 const is_float = after_int.len != suffix_str.len;
338 const suffix = aro.Tree.Token.NumberSuffix.fromString(suffix_str, if (is_float) .float else .int) orelse {
339 const suffix = aro.Tokenizer.number_literal.Suffix.fromString(suffix_str, if (is_float) .float else .int, allow_msvc_suffixes) orelse {
339340 try mt.fail("invalid number suffix: '{s}'", .{suffix_str});
340341 return error.ParseError;
341342 };
......@@ -361,7 +362,7 @@ fn parseCNumLit(mt: *MacroTranslator) ParseError!ZigNode {
361362 return error.ParseError;
362363 },
363364 });
364 if (bytes.last().? == '.') {
365 if (bytes.last() == '.') {
365366 bytes.appendAssumeCapacity('0');
366367 } else if (mem.findAny(u8, bytes.items, ".eEpP") == null) {
367368 bytes.appendSliceAssumeCapacity(".0");
......@@ -376,6 +377,14 @@ fn parseCNumLit(mt: *MacroTranslator) ParseError!ZigNode {
376377 .UL => "c_ulong",
377378 .LL => "c_longlong",
378379 .ULL => "c_ulonglong",
380 .I8 => "i8",
381 .UI8 => "u8",
382 .I16 => "i16",
383 .UI16 => "u16",
384 .I32 => "i32",
385 .UI32 => "u32",
386 .I64 => "i64",
387 .UI64 => "u64",
379388 else => unreachable,
380389 });
381390 const value = std.fmt.parseInt(i128, bytes.items, 0) catch math.maxInt(i128);
......@@ -389,6 +398,14 @@ fn parseCNumLit(mt: *MacroTranslator) ParseError!ZigNode {
389398 .UL => math.cast(u32, value) != null,
390399 .LL => math.cast(i64, value) != null,
391400 .ULL => math.cast(u64, value) != null,
401 .I8 => math.cast(i8, value) != null,
402 .UI8 => math.cast(u8, value) != null,
403 .I16 => math.cast(i16, value) != null,
404 .UI16 => math.cast(u16, value) != null,
405 .I32 => math.cast(i32, value) != null,
406 .UI32 => math.cast(u32, value) != null,
407 .I64 => math.cast(i64, value) != null,
408 .UI64 => math.cast(u64, value) != null,
392409 else => unreachable,
393410 };
394411
......@@ -583,7 +600,7 @@ fn escapeUnprintables(mt: *MacroTranslator) ![]const u8 {
583600 const formatter = std.ascii.hexEscape(zigified, .lower);
584601 const encoded_size = @as(usize, @intCast(std.fmt.count("{f}", .{formatter})));
585602 const output = try mt.t.arena.alloc(u8, encoded_size);
586 return std.mem.print(output, "{f}", .{formatter}) catch |err| switch (err) {
603 return std.fmt.bufPrint(output, "{f}", .{formatter}) catch |err| switch (err) {
587604 error.NoSpaceLeft => unreachable,
588605 else => |e| return e,
589606 };
......@@ -1270,8 +1287,24 @@ fn parseCPostfixExprInner(mt: *MacroTranslator, scope: *Scope, type_name: ?ZigNo
12701287 var args: std.ArrayList(ZigNode) = .empty;
12711288 defer args.deinit(gpa);
12721289
1273 while (true) {
1274 const arg = try mt.parseCCondExpr(scope);
1290 const func_params = if (mt.t.getFnProto(node)) |func| func.data.params else &.{};
1291 var arg_idx: usize = 0;
1292 while (true) : (arg_idx += 1) {
1293 var arg = try mt.parseCCondExpr(scope);
1294 if (arg_idx < func_params.len) {
1295 if (func_params[arg_idx].type.castTag(.type)) |t| {
1296 if (std.mem.eql(u8, t.data, "bool")) {
1297 // If a C bool function parameter has been
1298 // actually lowered to the Zig bool type,
1299 // we need to cast; likely the parameter in
1300 // the call is still int and will not
1301 // coerce.
1302 const bool_ty = try ZigTag.type.create(mt.t.arena, "bool");
1303 arg = try mt.t.createHelperCallNode(.cast, &.{ bool_ty, arg });
1304 }
1305 }
1306 }
1307
12751308 try args.append(gpa, arg);
12761309
12771310 const next_id = mt.peek();
......@@ -1313,6 +1346,11 @@ fn parseCPostfixExprInner(mt: *MacroTranslator, scope: *Scope, type_name: ?ZigNo
13131346 switch (next_id) {
13141347 .comma => {
13151348 mt.i += 1;
1349 // Check for trailing comma
1350 if (mt.peek() == .r_brace) {
1351 mt.i += 1;
1352 break;
1353 }
13161354 },
13171355 .r_brace => {
13181356 mt.i += 1;
......@@ -1340,6 +1378,11 @@ fn parseCPostfixExprInner(mt: *MacroTranslator, scope: *Scope, type_name: ?ZigNo
13401378 switch (next_id) {
13411379 .comma => {
13421380 mt.i += 1;
1381 // Check for trailing comma
1382 if (mt.peek() == .r_brace) {
1383 mt.i += 1;
1384 break;
1385 }
13431386 },
13441387 .r_brace => {
13451388 mt.i += 1;
lib/compiler/translate-c/PatternList.zig+3-3
......@@ -11,7 +11,7 @@ const Error = Translator.Error;
1111pub const MacroProcessingError = Error || error{UnexpectedMacroToken};
1212
1313const Impl = std.meta.DeclEnum(std.zig.c_translation.helpers);
14const Template = struct { []const u8, Impl };
14const Template = struct { [:0]const u8, Impl };
1515
1616/// Templates must be function-like macros
1717/// first element is macro source, second element is the name of the function
......@@ -167,7 +167,7 @@ pub fn match(pl: PatternList, ms: MacroSlicer) Error!?Impl {
167167 return null;
168168}
169169
170fn tokenizeMacro(allocator: mem.Allocator, source: []const u8, tok_list: *std.ArrayList(CToken)) Error!MacroSlicer {
170fn tokenizeMacro(allocator: mem.Allocator, source: [:0]const u8, tok_list: *std.ArrayList(CToken)) Error!MacroSlicer {
171171 var param_count: u32 = 0;
172172 var param_buf: [8][]const u8 = undefined;
173173
......@@ -238,7 +238,7 @@ test "Macro matching" {
238238 fn checkMacro(
239239 allocator: mem.Allocator,
240240 pattern_list: PatternList,
241 source: []const u8,
241 source: [:0]const u8,
242242 comptime expected_match: ?Impl,
243243 ) !void {
244244 var tok_list: std.ArrayList(CToken) = .empty;
lib/compiler/translate-c/Scope.zig+17-7
......@@ -7,7 +7,7 @@ const Translator = @import("Translator.zig");
77
88const Scope = @This();
99
10pub const SymbolTable = std.array_hash_map.String(ast.Node);
10pub const SymbolTable = std.StringArrayHashMapUnmanaged(ast.Node);
1111pub const AliasList = std.ArrayList(struct {
1212 alias: []const u8,
1313 name: []const u8,
......@@ -18,7 +18,7 @@ pub const ContainerMemberFns = struct {
1818 container_decl_ptr: *ast.Node,
1919 member_fns: std.ArrayList(*ast.Payload.Func) = .empty,
2020};
21pub const ContainerMemberFnsHashMap = std.array_hash_map.Custom(
21pub const ContainerMemberFnsHashMap = std.ArrayHashMapUnmanaged(
2222 aro.QualType,
2323 ContainerMemberFns,
2424 struct {
......@@ -44,6 +44,7 @@ pub const Id = enum {
4444 condition,
4545 loop,
4646 do_loop,
47 @"switch",
4748};
4849
4950/// Used for the scope of condition expressions, for example `if (cond)`.
......@@ -79,7 +80,7 @@ pub const Block = struct {
7980 /// will be used. This maps the variable's name to the Discard payload, so that if
8081 /// the variable is subsequently referenced we can indicate that the discard should
8182 /// be skipped during the intermediate AST -> Zig AST render step.
82 variable_discards: std.array_hash_map.String(*ast.Payload.Discard),
83 variable_discards: std.StringArrayHashMapUnmanaged(*ast.Payload.Discard),
8384
8485 /// When the block corresponds to a function, keep track of the return type
8586 /// so that the return expression can be cast, if necessary
......@@ -209,7 +210,7 @@ pub const Root = struct {
209210 base: Scope,
210211 translator: *Translator,
211212 sym_table: SymbolTable,
212 blank_macros: std.array_hash_map.String(void),
213 blank_macros: std.StringArrayHashMapUnmanaged(void),
213214 nodes: std.ArrayList(ast.Node),
214215 container_member_fns_map: ContainerMemberFnsHashMap,
215216
......@@ -267,7 +268,7 @@ pub const Root = struct {
267268 const gpa = root.translator.gpa;
268269 const arena = root.translator.arena;
269270
270 var member_names: std.array_hash_map.String(void) = .empty;
271 var member_names: std.StringArrayHashMapUnmanaged(void) = .empty;
271272 defer member_names.deinit(gpa);
272273 for (root.container_member_fns_map.keys(), root.container_member_fns_map.values()) |container_qt, members| {
273274 // Get the container name
......@@ -353,6 +354,15 @@ pub const Root = struct {
353354 }
354355};
355356
357/// Used for switch scoping because the `break`s should not escape this scope while
358/// still allowing `continue`s to pass. `label_used` is necessary because we only
359/// insert the label when we `break` to it.
360pub const Switch = struct {
361 base: Scope,
362 label: []const u8,
363 label_used: bool = false,
364};
365
356366pub fn findBlockScope(inner: *Scope, t: *Translator) !*Block {
357367 var scope = inner;
358368 while (true) {
......@@ -384,7 +394,7 @@ pub fn getAlias(scope: *Scope, name: []const u8) ?[]const u8 {
384394 return switch (scope.id) {
385395 .root => null,
386396 .block => @as(*Block, @fieldParentPtr("base", scope)).getAlias(name),
387 .loop, .do_loop, .condition => scope.parent.?.getAlias(name),
397 .loop, .do_loop, .condition, .@"switch" => scope.parent.?.getAlias(name),
388398 };
389399}
390400
......@@ -392,7 +402,7 @@ fn contains(scope: *Scope, name: []const u8) bool {
392402 return switch (scope.id) {
393403 .root => @as(*Root, @fieldParentPtr("base", scope)).contains(name),
394404 .block => @as(*Block, @fieldParentPtr("base", scope)).contains(name),
395 .loop, .do_loop, .condition => scope.parent.?.contains(name),
405 .loop, .do_loop, .condition, .@"switch" => scope.parent.?.contains(name),
396406 };
397407}
398408
lib/compiler/translate-c/Translator.zig+273-194
......@@ -9,6 +9,7 @@ const Tree = aro.Tree;
99const Node = Tree.Node;
1010const TokenIndex = Tree.TokenIndex;
1111const QualType = aro.QualType;
12const Type = aro.TypeStore.Type;
1213
1314const ast = @import("ast.zig");
1415const ZigNode = ast.Node;
......@@ -105,8 +106,10 @@ global_scope: *Scope.Root,
105106/// Running number used for creating new unique identifiers.
106107mangle_count: u32 = 0,
107108
108/// Table of declarations for enum, struct, union and typedef types.
109type_decls: std.array_hash_map.Auto(Node.Index, []const u8) = .empty,
109/// Typedef decl to translated decl identifier.
110typedef_decls: std.AutoArrayHashMapUnmanaged(Node.Index, []const u8) = .empty,
111/// Enum, struct and union type to translated decl identifier.
112container_types: std.AutoArrayHashMapUnmanaged(QualType, []const u8) = .empty,
110113/// Table of record decls that have been demoted to opaques.
111114opaque_demotes: std.HashMapUnmanaged(QualType, void, QualTypeHashContext, std.hash_map.default_max_load_percentage) = .empty,
112115/// Table of unnamed enums and records that are child types of typedefs.
......@@ -123,7 +126,7 @@ anonymous_record_field_names: std.HashMapUnmanaged(
123126/// a list of names that we found by visiting all the top level decls without
124127/// translating them. The other maps are updated as we translate; this one is updated
125128/// up front in a pre-processing step.
126global_names: std.array_hash_map.String(void) = .empty,
129global_names: std.StringArrayHashMapUnmanaged(void) = .empty,
127130
128131/// This is similar to `global_names`, but contains names which we would
129132/// *like* to use, but do not strictly *have* to if they are unavailable.
......@@ -132,11 +135,11 @@ global_names: std.array_hash_map.String(void) = .empty,
132135/// may be mangled.
133136/// This is distinct from `global_names` so we can detect at a type
134137/// declaration whether or not the name is available.
135weak_global_names: std.array_hash_map.String(void) = .empty,
138weak_global_names: std.StringArrayHashMapUnmanaged(void) = .empty,
136139
137140/// Set of identifiers known to refer to typedef declarations.
138141/// Used when parsing macros.
139typedefs: std.array_hash_map.String(void) = .empty,
142typedefs: std.StringArrayHashMapUnmanaged(void) = .empty,
140143
141144/// The lhs lval of a compound assignment expression.
142145compound_assign_dummy: ?ZigNode = null,
......@@ -271,7 +274,8 @@ pub fn translate(options: Options) mem.Allocator.Error![]u8 {
271274 };
272275 translator.global_scope.* = Scope.Root.init(&translator);
273276 defer {
274 translator.type_decls.deinit(gpa);
277 translator.typedef_decls.deinit(gpa);
278 translator.container_types.deinit(gpa);
275279 translator.alias_list.deinit(gpa);
276280 translator.global_names.deinit(gpa);
277281 translator.weak_global_names.deinit(gpa);
......@@ -345,7 +349,7 @@ fn prepopulateGlobalNameTable(t: *Translator) !void {
345349 continue;
346350 }
347351 gop.value_ptr.* = decl_name;
348 try t.type_decls.put(t.gpa, decl, decl_name);
352 try t.typedef_decls.put(t.gpa, decl, decl_name);
349353 try t.typedefs.put(t.gpa, decl_name, {});
350354 },
351355
......@@ -449,10 +453,14 @@ fn transDecl(t: *Translator, scope: *Scope, decl: Node.Index) !void {
449453 => return,
450454
451455 .function => |function| {
452 if (function.definition) |definition| {
453 return t.transFnDecl(scope, definition.get(t.tree).function);
456 // If there is going to be a definition later, wait until we reach it before
457 // generating it. This works because Zig has order independent analysis and
458 // is fine with the definition appearing later. However, since C has order
459 // dependent analysis, we cannot safely emit the definition yet, since we
460 // first need to translate any declarations that appear before the definition.
461 if (function.definition == null) {
462 try t.transFnDecl(scope, function, decl);
454463 }
455 try t.transFnDecl(scope, function);
456464 },
457465
458466 .variable => |variable| {
......@@ -491,7 +499,7 @@ pub const builtin_typedef_map = std.StaticStringMap([]const u8).initComptime(.{
491499
492500fn transTypeDef(t: *Translator, scope: *Scope, typedef_node: Node.Index) Error!void {
493501 const typedef_decl = typedef_node.get(t.tree).typedef;
494 if (t.type_decls.get(typedef_node)) |_|
502 if (t.typedef_decls.get(typedef_node)) |_|
495503 return; // Avoid processing this decl twice
496504
497505 const toplevel = scope.id == .root;
......@@ -501,10 +509,10 @@ fn transTypeDef(t: *Translator, scope: *Scope, typedef_node: Node.Index) Error!v
501509 try t.typedefs.put(t.gpa, name, {});
502510
503511 if (builtin_typedef_map.get(name)) |builtin| {
504 return t.type_decls.putNoClobber(t.gpa, typedef_node, builtin);
512 return t.typedef_decls.putNoClobber(t.gpa, typedef_node, builtin);
505513 }
506514 if (!toplevel) name = try bs.makeMangledName(name);
507 try t.type_decls.putNoClobber(t.gpa, typedef_node, name);
515 try t.typedef_decls.putNoClobber(t.gpa, typedef_node, name);
508516
509517 const typedef_loc = typedef_decl.name_tok;
510518 const init_node = t.transType(scope, typedef_decl.qt, typedef_loc) catch |err| switch (err) {
......@@ -549,12 +557,12 @@ fn mangleWeakGlobalName(t: *Translator, want_name: []const u8) Error![]const u8
549557
550558fn transRecordDecl(t: *Translator, scope: *Scope, record_qt: QualType) Error!void {
551559 const base = record_qt.base(t.comp);
552 const record_ty = switch (base.type) {
560 const record_ty: Type.Record = switch (base.type) {
553561 .@"struct", .@"union" => |record_ty| record_ty,
554562 else => unreachable,
555563 };
556564
557 if (t.type_decls.get(record_ty.decl_node)) |_|
565 if (t.container_types.get(base.qt.unqualified())) |_|
558566 return; // Avoid processing this decl twice
559567
560568 const toplevel = scope.id == .root;
......@@ -581,7 +589,7 @@ fn transRecordDecl(t: *Translator, scope: *Scope, record_qt: QualType) Error!voi
581589 }
582590 }
583591 if (!toplevel) name = try bs.makeMangledName(name);
584 try t.type_decls.putNoClobber(t.gpa, record_ty.decl_node, name);
592 try t.container_types.putNoClobber(t.gpa, base.qt.unqualified(), name);
585593
586594 const is_pub = toplevel and !is_unnamed;
587595 const init_node = init: {
......@@ -597,27 +605,8 @@ fn transRecordDecl(t: *Translator, scope: *Scope, record_qt: QualType) Error!voi
597605 var functions: std.ArrayList(ZigNode) = .empty;
598606 defer functions.deinit(t.gpa);
599607
608 const head_field_alignment = t.headFieldAlignment(record_ty);
600609 var unnamed_field_count: u32 = 0;
601
602 // If a record doesn't have any attributes that would affect the alignment and
603 // layout, then we can just use a simple `extern` type. If it does have attributes,
604 // then we need to inspect the layout and assign an `align` value for each field.
605 const has_alignment_attributes = aligned: {
606 if (record_qt.hasAttribute(t.comp, .@"packed")) break :aligned true;
607 if (record_qt.hasAttribute(t.comp, .aligned)) break :aligned true;
608 for (record_ty.fields) |field| {
609 const field_attrs = field.attributes(t.comp);
610 for (field_attrs) |field_attr| {
611 switch (field_attr.tag) {
612 .@"packed", .aligned => break :aligned true,
613 else => {},
614 }
615 }
616 }
617 break :aligned false;
618 };
619 const head_field_alignment: ?c_uint = if (has_alignment_attributes) t.headFieldAlignment(record_ty) else null;
620
621610 for (record_ty.fields, 0..) |field, field_index| {
622611 const field_loc = field.name_tok;
623612
......@@ -684,11 +673,6 @@ fn transRecordDecl(t: *Translator, scope: *Scope, record_qt: QualType) Error!voi
684673 break :init ZigTag.opaque_literal.init();
685674 }
686675
687 const field_alignment = if (has_alignment_attributes)
688 t.alignmentForField(record_ty, head_field_alignment, field_index)
689 else
690 null;
691
692676 // C99 introduced designated initializers for structs. Omitted fields are implicitly
693677 // initialized to zero. Some C APIs are designed with this in mind. Defaulting to zero
694678 // values for translated struct fields permits Zig code to comfortably use such an API.
......@@ -700,7 +684,7 @@ fn transRecordDecl(t: *Translator, scope: *Scope, record_qt: QualType) Error!voi
700684 fields.appendAssumeCapacity(.{
701685 .name = field_name,
702686 .type = field_type,
703 .alignment = field_alignment,
687 .alignment = t.alignmentForField(record_ty, head_field_alignment, field_index),
704688 .default_value = default_value,
705689 });
706690 }
......@@ -761,7 +745,7 @@ fn transRecordDecl(t: *Translator, scope: *Scope, record_qt: QualType) Error!voi
761745 }
762746}
763747
764fn transFnDecl(t: *Translator, scope: *Scope, function: Node.Function) Error!void {
748fn transFnDecl(t: *Translator, scope: *Scope, function: Node.Function, decl_node: Node.Index) Error!void {
765749 const func_ty = function.qt.get(t.comp, .func).?;
766750
767751 const fn_name = t.tree.tokSlice(function.name_tok);
......@@ -774,42 +758,38 @@ fn transFnDecl(t: *Translator, scope: *Scope, function: Node.Function) Error!voi
774758 try t.warn(scope, function.name_tok, "TODO unable to translate variadic function, demoted to extern", .{});
775759 }
776760
777 const is_always_inline = has_body and function.qt.getAttribute(t.comp, .always_inline) != null;
761 // TODO actually set with @export/@extern
762 const linkage = t.tree.linkage(decl_node);
763 if (linkage != .strong) {
764 try t.warn(scope, fn_decl_loc, "TODO {s} linkage ignored", .{@tagName(linkage)});
765 }
766
767 const is_always_inline = has_body and t.tree.attr_map.getAttribute(decl_node, .always_inline) != null;
778768 const proto_ctx: FnProtoContext = .{
779769 .fn_name = fn_name,
780770 .is_always_inline = is_always_inline,
781771 .is_extern = !has_body,
782 .is_export = !function.static and has_body and !is_always_inline and !function.@"inline",
772 .is_export = !function.static and has_body and !is_always_inline and !function.@"inline" and linkage == .strong,
783773 .is_pub = scope.id == .root and (!function.static or t.pub_static),
784774 .has_body = has_body,
785 .cc = if (function.qt.getAttribute(t.comp, .calling_convention)) |some| switch (some.cc) {
786 .c => .c,
787 .stdcall => .x86_stdcall,
788 .thiscall => .x86_thiscall,
789 .fastcall => .x86_fastcall,
790 .regcall => .x86_regcall,
791 .riscv_vector => .riscv_vector,
792 .aarch64_sve_pcs => .aarch64_sve_pcs,
793 .aarch64_vector_pcs => .aarch64_vfabi,
794 .arm_aapcs => .arm_aapcs,
795 .arm_aapcs_vfp => .arm_aapcs_vfp,
796 .vectorcall => switch (t.comp.target.cpu.arch) {
797 .x86 => .x86_vectorcall,
798 .aarch64, .aarch64_be => .aarch64_vfabi,
799 else => .c,
800 },
801 .x86_64_sysv => .x86_64_sysv,
802 .x86_64_win => .x86_64_win,
803 } else .c,
775 .cc = if (is_always_inline) .c else t.transCallingConvention(func_ty.cc) catch
776 return t.failDecl(scope, fn_decl_loc, fn_name, "TODO {s}", .{@tagName(func_ty.cc)}),
777 .linksection_string = if (t.tree.attr_map.getAttribute(decl_node, .section)) |attr| attr.args.section else null,
778 .alignment = t.tree.attr_map.requestedAlignment(decl_node, t.comp) orelse null,
779 .noreturn = t.tree.attr_map.hasAttribute(decl_node, .noreturn),
804780 };
805781
806 const proto_node = t.transFnType(&t.global_scope.base, function.qt, func_ty, fn_decl_loc, proto_ctx) catch |err| switch (err) {
782 const proto_node = t.transFnType(&t.global_scope.base, func_ty, fn_decl_loc, proto_ctx) catch |err| switch (err) {
807783 error.UnsupportedType => {
808784 return t.failDecl(scope, fn_decl_loc, fn_name, "unable to resolve prototype of function", .{});
809785 },
810786 error.OutOfMemory => |e| return e,
811787 };
812788
789 if (is_always_inline and func_ty.cc != .default) {
790 try t.warn(&t.global_scope.base, fn_decl_loc, "{s} calling convention ignored on inline function", .{@tagName(func_ty.cc)});
791 }
792
813793 const proto_payload = proto_node.castTag(.func).?;
814794 if (!has_body) {
815795 if (scope.id != .root) {
......@@ -830,7 +810,7 @@ fn transFnDecl(t: *Translator, scope: *Scope, function: Node.Function) Error!voi
830810 block_scope.return_type = func_ty.return_type;
831811 defer block_scope.deinit();
832812
833 var param_id: c_uint = 0;
813 var param_id: u32 = 0;
834814 for (proto_payload.data.params, func_ty.params) |*param, param_info| {
835815 const param_name = param.name orelse {
836816 proto_payload.data.is_extern = true;
......@@ -894,10 +874,10 @@ fn transVarDecl(t: *Translator, scope: *Scope, variable: Node.Variable, decl_nod
894874 };
895875
896876 if (t.typeWasDemotedToOpaque(variable.qt)) {
897 if (variable.storage_class != .@"extern" and scope.id == .root) {
898 return t.failDecl(scope, variable.name_tok, name, "non-extern variable has opaque type", .{});
899 } else {
900 return t.failDecl(scope, variable.name_tok, name, "local variable has opaque type", .{});
877 switch (scope.id) {
878 .root => if (variable.storage_class != .@"extern")
879 return t.failDecl(scope, variable.name_tok, name, "non-extern variable has opaque type", .{}),
880 else => return t.failDecl(scope, variable.name_tok, name, "local variable has opaque type", .{}),
901881 }
902882 }
903883
......@@ -964,20 +944,14 @@ fn transVarDecl(t: *Translator, scope: *Scope, variable: Node.Variable, decl_nod
964944 break :init ZigTag.undefined_literal.init();
965945 };
966946
967 const linksection_string = blk: {
968 if (variable.qt.getAttribute(t.comp, .section)) |section| {
969 break :blk t.comp.interner.get(section.name.ref()).bytes;
970 }
971 break :blk null;
972 };
947 const linksection_string = if (t.tree.attr_map.getAttribute(decl_node, .section)) |attr| attr.args.section else null;
973948
974949 // TODO actually set with @export/@extern
975 const linkage = variable.qt.linkage(t.comp);
950 const linkage = t.tree.linkage(decl_node);
976951 if (linkage != .strong) {
977952 try t.warn(scope, variable.name_tok, "TODO {s} linkage ignored", .{@tagName(linkage)});
978953 }
979954
980 const alignment: ?c_uint = variable.qt.requestedAlignment(t.comp) orelse null;
981955 var node = try ZigTag.var_decl.create(t.arena, .{
982956 .is_pub = toplevel,
983957 .is_const = is_const and !self_referential,
......@@ -985,7 +959,7 @@ fn transVarDecl(t: *Translator, scope: *Scope, variable: Node.Variable, decl_nod
985959 .is_export = toplevel and variable.storage_class == .auto and linkage == .strong,
986960 .is_threadlocal = variable.thread_local,
987961 .linksection_string = linksection_string,
988 .alignment = alignment,
962 .alignment = t.tree.attr_map.requestedAlignment(decl_node, t.comp) orelse null,
989963 .name = if (use_base_name) base_name else name,
990964 .type = type_node,
991965 .init = init_node,
......@@ -1015,8 +989,9 @@ fn transVarDecl(t: *Translator, scope: *Scope, variable: Node.Variable, decl_nod
1015989 }
1016990 try bs.discardVariable(name);
1017991
1018 if (variable.qt.getAttribute(t.comp, .cleanup)) |cleanup_attr| {
1019 const cleanup_fn_name = t.tree.tokSlice(cleanup_attr.function.tok);
992 if (t.tree.attr_map.getAttribute(decl_node, .cleanup)) |attr| {
993 const cleanup_func = attr.args.cleanup.function;
994 const cleanup_fn_name = t.tree.tokSlice(cleanup_func.tok(t.tree));
1020995 const mangled_fn_name = scope.getAlias(cleanup_fn_name) orelse cleanup_fn_name;
1021996 const fn_id = try ZigTag.identifier.create(t.arena, mangled_fn_name);
1022997
......@@ -1037,7 +1012,7 @@ fn transEnumDecl(t: *Translator, scope: *Scope, enum_qt: QualType) Error!void {
10371012 const base = enum_qt.base(t.comp);
10381013 const enum_ty = base.type.@"enum";
10391014
1040 if (t.type_decls.get(enum_ty.decl_node)) |_|
1015 if (t.container_types.get(base.qt.unqualified())) |_|
10411016 return; // Avoid processing this decl twice
10421017
10431018 const toplevel = scope.id == .root;
......@@ -1057,7 +1032,7 @@ fn transEnumDecl(t: *Translator, scope: *Scope, enum_qt: QualType) Error!void {
10571032 name = try std.fmt.allocPrint(t.arena, "enum_{s}", .{bare_name});
10581033 }
10591034 if (!toplevel) name = try bs.makeMangledName(name);
1060 try t.type_decls.putNoClobber(t.gpa, enum_ty.decl_node, name);
1035 try t.container_types.putNoClobber(t.gpa, base.qt.unqualified(), name);
10611036
10621037 const enum_type_node = if (!base.qt.hasIncompleteSize(t.comp)) blk: {
10631038 const enum_decl = enum_ty.decl_node.get(t.tree).enum_decl;
......@@ -1137,10 +1112,9 @@ fn transStaticAssert(t: *Translator, scope: *Scope, static_assert: Node.StaticAs
11371112 var allocating: std.Io.Writer.Allocating = .init(t.gpa);
11381113 defer allocating.deinit();
11391114
1140 allocating.writer.writeAll("\"static assertion failed \\") catch return error.OutOfMemory;
1115 allocating.writer.writeAll("\"static assertion failed \\\"") catch return error.OutOfMemory;
11411116
1142 aro.Value.printString(bytes, str_qt, t.comp, &allocating.writer) catch return error.OutOfMemory;
1143 allocating.writer.end -= 1; // printString adds a terminating " so we need to remove it
1117 aro.Value.printString(bytes, str_qt, t.comp, &allocating.writer, .bare) catch return error.OutOfMemory;
11441118 allocating.writer.writeAll("\\\"\"") catch return error.OutOfMemory;
11451119
11461120 break :str try ZigTag.string_literal.create(t.arena, try t.arena.dupe(u8, allocating.written()));
......@@ -1156,7 +1130,7 @@ fn transGlobalAsm(t: *Translator, scope: *Scope, global_asm: Node.GlobalAsm) Err
11561130
11571131 var allocating: std.Io.Writer.Allocating = try .initCapacity(t.gpa, bytes.len);
11581132 defer allocating.deinit();
1159 aro.Value.printString(bytes, global_asm.asm_str.qt(t.tree), t.comp, &allocating.writer) catch return error.OutOfMemory;
1133 aro.Value.printString(bytes, global_asm.asm_str.qt(t.tree), t.comp, &allocating.writer, .quoted) catch return error.OutOfMemory;
11601134
11611135 const str_node = try ZigTag.string_literal.create(t.arena, try t.arena.dupe(u8, allocating.written()));
11621136
......@@ -1179,7 +1153,7 @@ fn getTypeStr(t: *Translator, qt: QualType) ![]const u8 {
11791153}
11801154
11811155fn transType(t: *Translator, scope: *Scope, qt: QualType, source_loc: TokenIndex) TypeError!ZigNode {
1182 loop: switch (qt.type(t.comp)) {
1156 switch (qt.type(t.comp)) {
11831157 .atomic => {
11841158 const type_name = try t.getTypeStr(qt);
11851159 return t.fail(error.UnsupportedType, source_loc, "TODO support atomic type: '{s}'", .{type_name});
......@@ -1201,6 +1175,8 @@ fn transType(t: *Translator, scope: *Scope, qt: QualType, source_loc: TokenIndex
12011175 .ulong_long => return ZigTag.type.create(t.arena, "c_ulonglong"),
12021176 .int128 => return ZigTag.type.create(t.arena, "i128"),
12031177 .uint128 => return ZigTag.type.create(t.arena, "u128"),
1178 .int24 => return ZigTag.type.create(t.arena, "i24"),
1179 .uint24 => return ZigTag.type.create(t.arena, "u24"),
12041180 },
12051181 .float => |float_ty| switch (float_ty) {
12061182 .fp16, .float16 => return ZigTag.type.create(t.arena, "f16"),
......@@ -1258,14 +1234,18 @@ fn transType(t: *Translator, scope: *Scope, qt: QualType, source_loc: TokenIndex
12581234 .variable => return t.fail(error.UnsupportedType, source_loc, "VLA unsupported '{s}'", .{try t.getTypeStr(qt)}),
12591235 }
12601236 },
1261 .func => |func_ty| return t.transFnType(scope, qt, func_ty, source_loc, .{}),
1237 .func => |func_ty| {
1238 return t.transFnType(scope, func_ty, source_loc, .{
1239 .cc = t.transCallingConvention(func_ty.cc) catch return t.fail(error.UnsupportedType, source_loc, "TODO {s}", .{@tagName(func_ty.cc)}),
1240 });
1241 },
12621242 .@"struct", .@"union" => |record_ty| {
12631243 var trans_scope = scope;
12641244 if (!record_ty.isAnonymous(t.comp)) {
12651245 if (t.weak_global_names.contains(record_ty.name.lookup(t.comp))) trans_scope = &t.global_scope.base;
12661246 }
12671247 try t.transRecordDecl(trans_scope, qt);
1268 const name = t.type_decls.get(record_ty.decl_node).?;
1248 const name = t.container_types.get(qt.unqualified()).?;
12691249 return ZigTag.identifier.create(t.arena, name);
12701250 },
12711251 .@"enum" => |enum_ty| {
......@@ -1275,7 +1255,7 @@ fn transType(t: *Translator, scope: *Scope, qt: QualType, source_loc: TokenIndex
12751255 if (t.weak_global_names.contains(enum_ty.name.lookup(t.comp))) trans_scope = &t.global_scope.base;
12761256 }
12771257 try t.transEnumDecl(trans_scope, qt);
1278 const name = t.type_decls.get(enum_ty.decl_node).?;
1258 const name = t.container_types.get(qt.unqualified()).?;
12791259 return ZigTag.identifier.create(t.arena, name);
12801260 },
12811261 .typedef => |typedef_ty| {
......@@ -1285,10 +1265,9 @@ fn transType(t: *Translator, scope: *Scope, qt: QualType, source_loc: TokenIndex
12851265 if (t.global_names.contains(typedef_name)) trans_scope = &t.global_scope.base;
12861266
12871267 try t.transTypeDef(trans_scope, typedef_ty.decl_node);
1288 const name = t.type_decls.get(typedef_ty.decl_node).?;
1268 const name = t.typedef_decls.get(typedef_ty.decl_node).?;
12891269 return ZigTag.identifier.create(t.arena, name);
12901270 },
1291 .attributed => |attributed_ty| continue :loop attributed_ty.base.type(t.comp),
12921271 .typeof => |typeof_ty| {
12931272 if (typeof_ty.expr) |expr| {
12941273 if (t.transExpr(scope, expr, .used)) |node| {
......@@ -1297,10 +1276,10 @@ fn transType(t: *Translator, scope: *Scope, qt: QualType, source_loc: TokenIndex
12971276 error.SelfReferential => {},
12981277 error.UnsupportedTranslation => {},
12991278 error.UnsupportedType => {},
1300 error.OutOfMemory => |e| return e,
1279 error.OutOfMemory => return error.OutOfMemory,
13011280 }
13021281 }
1303 continue :loop typeof_ty.base.type(t.comp);
1282 return t.transType(scope, typeof_ty.base, source_loc);
13041283 },
13051284 .vector => |vector_ty| {
13061285 const len = try t.createNumberNode(vector_ty.len);
......@@ -1316,7 +1295,7 @@ fn transType(t: *Translator, scope: *Scope, qt: QualType, source_loc: TokenIndex
13161295/// the fields with 0 offset need an `align` qualifier. Strictly speaking, we could just
13171296/// pedantically assign those fields the same alignment as the parent's pointer alignment,
13181297/// but this helps the generated code to be a little less verbose.
1319fn headFieldAlignment(t: *Translator, record_decl: aro.Type.Record) ?c_uint {
1298fn headFieldAlignment(t: *Translator, record_decl: aro.Type.Record) ?u32 {
13201299 const bits_per_byte = 8;
13211300 const parent_ptr_alignment_bits = record_decl.layout.?.pointer_alignment_bits;
13221301 const parent_ptr_alignment = parent_ptr_alignment_bits / bits_per_byte;
......@@ -1335,19 +1314,11 @@ fn headFieldAlignment(t: *Translator, record_decl: aro.Type.Record) ?c_uint {
13351314/// required to fulfill the requested alignment, which means we'd risk generating different code
13361315/// if we only look at the user-requested alignment.
13371316///
1338/// Returns a ?c_uint to match Clang's behavior of using c_uint. The return type can be changed
1339/// after the Clang frontend for translate-c is removed. A null value indicates that a field is
1340/// 'naturally aligned'.
1341fn alignmentForField(
1342 t: *Translator,
1343 record_decl: aro.Type.Record,
1344 head_field_alignment: ?c_uint,
1345 field_index: usize,
1346) ?c_uint {
1317/// A null value indicates that a field is 'naturally aligned'.
1318fn alignmentForField(t: *Translator, record_decl: aro.Type.Record, head_field_alignment: ?u32, field_index: usize) ?u32 {
13471319 const fields = record_decl.fields;
13481320 assert(fields.len != 0);
13491321 const field = fields[field_index];
1350
13511322 const bits_per_byte = 8;
13521323 const parent_ptr_alignment_bits = record_decl.layout.?.pointer_alignment_bits;
13531324 const parent_ptr_alignment = parent_ptr_alignment_bits / bits_per_byte;
......@@ -1359,10 +1330,9 @@ fn alignmentForField(
13591330 }
13601331
13611332 const field_offset_bits: u64 = field.layout.offset_bits;
1362 const field_size_bits: u64 = field.layout.size_bits;
13631333
1364 // Fields with zero width always have an alignment of 1
1365 if (field_size_bits == 0) {
1334 // Union and struct fields with zero width always have an alignment of 1
1335 if (field.layout.size_bits == 0 and field.qt.getRecord(t.comp) != null) {
13661336 return 1;
13671337 }
13681338
......@@ -1383,7 +1353,7 @@ fn alignmentForField(
13831353 const rem_alignment = rem_bits / bits_per_byte;
13841354 if (rem_alignment > 0 and std.math.isPowerOfTwo(rem_alignment)) {
13851355 const actual_alignment = @min(rem_alignment, parent_ptr_alignment);
1386 return @as(c_uint, @truncate(actual_alignment));
1356 return @truncate(actual_alignment);
13871357 } else {
13881358 return 1;
13891359 }
......@@ -1426,6 +1396,38 @@ fn alignmentForField(
14261396 }
14271397}
14281398
1399fn transCallingConvention(t: *Translator, cc: aro.Type.Func.CallingConvention) !ast.Payload.Func.CallingConvention {
1400 return switch (cc) {
1401 .default, .cdecl => .c,
1402 .stdcall => .x86_stdcall,
1403 .thiscall => .x86_thiscall,
1404 .fastcall => .x86_fastcall,
1405 .regcall => .x86_regcall,
1406 .riscv_vector_cc => switch (t.comp.target.cpu.arch) {
1407 .riscv32, .riscv32be => .riscv32_ilp32_v,
1408 .riscv64, .riscv64be => .riscv64_lp64_v,
1409 else => unreachable,
1410 },
1411 .riscv_vls_cc => return error.UnsupportedCallingConvention,
1412 .aarch64_sve_pcs => .aarch64_sve_pcs,
1413 .aarch64_vector_pcs => .aarch64_vfabi,
1414 .arm_aapcs => .arm_aapcs,
1415 .arm_aapcs_vfp => .arm_aapcs_vfp,
1416 .vectorcall => switch (t.comp.target.cpu.arch) {
1417 .x86 => .x86_vectorcall,
1418 .x86_64 => .x86_64_vectorcall,
1419 .aarch64, .aarch64_be => .aarch64_vfabi,
1420 else => .c,
1421 },
1422 .ms_abi => switch (t.comp.target.cpu.arch) {
1423 .x86_64 => .x86_64_win,
1424 .aarch64, .aarch64_be => .aarch64_aapcs_win,
1425 else => .c,
1426 },
1427 .sysv_abi => .x86_64_sysv,
1428 };
1429}
1430
14291431const FnProtoContext = struct {
14301432 is_pub: bool = false,
14311433 is_export: bool = false,
......@@ -1434,12 +1436,14 @@ const FnProtoContext = struct {
14341436 fn_name: ?[]const u8 = null,
14351437 has_body: bool = false,
14361438 cc: ast.Payload.Func.CallingConvention = .c,
1439 alignment: ?u32 = null,
1440 noreturn: bool = false,
1441 linksection_string: ?[]const u8 = null,
14371442};
14381443
14391444fn transFnType(
14401445 t: *Translator,
14411446 scope: *Scope,
1442 func_qt: QualType,
14431447 func_ty: aro.Type.Func,
14441448 source_loc: TokenIndex,
14451449 ctx: FnProtoContext,
......@@ -1464,19 +1468,10 @@ fn transFnType(
14641468 };
14651469 }
14661470
1467 const linksection_string = blk: {
1468 if (func_qt.getAttribute(t.comp, .section)) |section| {
1469 break :blk t.comp.interner.get(section.name.ref()).bytes;
1470 }
1471 break :blk null;
1472 };
1473
1474 const alignment: ?c_uint = func_qt.requestedAlignment(t.comp) orelse null;
1475
14761471 const explicit_callconv = if ((ctx.is_always_inline or ctx.is_export or ctx.is_extern) and ctx.cc == .c) null else ctx.cc;
14771472
14781473 const return_type_node = blk: {
1479 if (func_qt.getAttribute(t.comp, .noreturn) != null) {
1474 if (ctx.noreturn) {
14801475 break :blk ZigTag.noreturn_type.init();
14811476 } else {
14821477 const return_qt = func_ty.return_type;
......@@ -1495,19 +1490,13 @@ fn transFnType(
14951490 }
14961491 };
14971492
1498 // TODO actually set with @export/@extern
1499 const linkage = func_qt.linkage(t.comp);
1500 if (linkage != .strong) {
1501 try t.warn(scope, source_loc, "TODO {s} linkage ignored", .{@tagName(linkage)});
1502 }
1503
15041493 const payload = try t.arena.create(ast.Payload.Func);
15051494 payload.* = .{
15061495 .base = .{ .tag = .func },
15071496 .data = .{
15081497 .is_pub = ctx.is_pub,
15091498 .is_extern = ctx.is_extern,
1510 .is_export = ctx.is_export and linkage == .strong,
1499 .is_export = ctx.is_export,
15111500 .is_inline = ctx.is_always_inline,
15121501 .is_var_args = switch (func_ty.kind) {
15131502 .normal => false,
......@@ -1518,12 +1507,12 @@ fn transFnType(
15181507 !ctx.is_export and !ctx.is_always_inline and !ctx.has_body,
15191508 },
15201509 .name = ctx.fn_name,
1521 .linksection_string = linksection_string,
1510 .linksection_string = ctx.linksection_string,
15221511 .explicit_callconv = explicit_callconv,
15231512 .params = fn_params,
15241513 .return_type = return_type_node,
15251514 .body = null,
1526 .alignment = alignment,
1515 .alignment = ctx.alignment,
15271516 },
15281517 };
15291518 return ZigNode.initPayload(&payload.base);
......@@ -1540,6 +1529,7 @@ fn transTypeIntWidthOf(t: *Translator, qt: QualType, is_signed: bool) TypeError!
15401529 .long, .ulong => if (is_signed) "c_long" else "c_ulong",
15411530 .long_long, .ulong_long => if (is_signed) "c_longlong" else "c_ulonglong",
15421531 .int128, .uint128 => if (is_signed) "i128" else "u128",
1532 .int24, .uint24 => if (is_signed) "i24" else "u24",
15431533 },
15441534 .bit_int => |bit_int_ty| try std.fmt.allocPrint(t.arena, "{s}{d}", .{
15451535 if (is_signed) "i" else "u",
......@@ -1621,8 +1611,8 @@ fn signedness(t: *Translator, qt: QualType) ?std.builtin.Signedness {
16211611 .bit_int => |bit_int| bit_int.signedness,
16221612 .int => |int_ty| switch (int_ty) {
16231613 .char => .unsigned, // Always translated as u8
1624 .schar, .short, .int, .long, .long_long, .int128 => .signed,
1625 .uchar, .ushort, .uint, .ulong, .ulong_long, .uint128 => .unsigned,
1614 .schar, .short, .int, .long, .long_long, .int128, .int24 => .signed,
1615 .uchar, .ushort, .uint, .ulong, .ulong_long, .uint128, .uint24 => .unsigned,
16261616 },
16271617 .@"enum" => |enum_ty| {
16281618 const tag_qt = enum_ty.tag orelse return .signed;
......@@ -1652,7 +1642,7 @@ fn transStmt(t: *Translator, scope: *Scope, stmt: Node.Index) TransError!ZigNode
16521642 .do_while_stmt => |do_while_stmt| return t.transDoWhileStmt(scope, do_while_stmt),
16531643 .for_stmt => |for_stmt| return t.transForStmt(scope, for_stmt),
16541644 .continue_stmt => return ZigTag.@"continue".init(),
1655 .break_stmt => return ZigTag.@"break".init(),
1645 .break_stmt => return t.transBreakStmt(scope),
16561646 .typedef => |typedef_decl| {
16571647 assert(!typedef_decl.implicit);
16581648 try t.transTypeDef(scope, stmt);
......@@ -1681,7 +1671,7 @@ fn transStmt(t: *Translator, scope: *Scope, stmt: Node.Index) TransError!ZigNode
16811671 return ZigTag.declaration.init();
16821672 },
16831673 .function => |function| {
1684 try t.transFnDecl(scope, function);
1674 try t.transFnDecl(scope, function, stmt);
16851675 return ZigTag.declaration.init();
16861676 },
16871677 .variable => |variable| {
......@@ -1698,6 +1688,16 @@ fn transStmt(t: *Translator, scope: *Scope, stmt: Node.Index) TransError!ZigNode
16981688 .asm_stmt => {
16991689 return t.fail(error.UnsupportedTranslation, stmt.tok(t.tree), "TODO asm stmt", .{});
17001690 },
1691 .codegen_diagnostic => {
1692 // Could be translated as `if (true) @compileError(...)`, ignore for now.
1693 return t.fail(error.UnsupportedTranslation, stmt.tok(t.tree), "TODO codegen diagnostic", .{});
1694 },
1695 .decl_stmt => |decl_stmt| {
1696 for (decl_stmt.decls) |decl| {
1697 _ = try t.transStmt(scope, decl);
1698 }
1699 return ZigTag.declaration.init();
1700 },
17011701 else => return t.transExprCoercing(scope, stmt, .unused),
17021702 }
17031703}
......@@ -1836,7 +1836,7 @@ fn transDoWhileStmt(t: *Translator, scope: *Scope, do_stmt: Node.DoWhileStmt) Tr
18361836 const cond = try t.transBoolExpr(&cond_scope.base, do_stmt.cond);
18371837 const if_not_break = switch (cond.tag()) {
18381838 .true_literal => {
1839 const body_node = try t.maybeBlockify(scope, do_stmt.body);
1839 const body_node = try t.maybeBlockify(&loop_scope, do_stmt.body);
18401840 return ZigTag.while_true.create(t.arena, body_node);
18411841 },
18421842 else => try ZigTag.if_not_break.create(t.arena, cond),
......@@ -1886,21 +1886,13 @@ fn transForStmt(t: *Translator, scope: *Scope, for_stmt: Node.ForStmt) TransErro
18861886 var block_scope: ?Scope.Block = null;
18871887 defer if (block_scope) |*bs| bs.deinit();
18881888
1889 switch (for_stmt.init) {
1890 .decls => |decls| {
1891 block_scope = try Scope.Block.init(t, scope, false);
1892 loop_scope.parent = &block_scope.?.base;
1893 for (decls) |decl| {
1894 try t.transDecl(&block_scope.?.base, decl);
1895 }
1896 },
1897 .expr => |maybe_init| if (maybe_init) |init| {
1898 block_scope = try Scope.Block.init(t, scope, false);
1899 loop_scope.parent = &block_scope.?.base;
1900 const init_node = try t.transStmt(&block_scope.?.base, init);
1901 try loop_scope.appendNode(init_node);
1902 },
1889 if (for_stmt.init) |init| {
1890 block_scope = try Scope.Block.init(t, scope, false);
1891 loop_scope.parent = &block_scope.?.base;
1892 const init_node = try t.transStmt(&block_scope.?.base, init);
1893 if (init_node.tag() != .declaration) try loop_scope.appendNode(init_node);
19031894 }
1895
19041896 var cond_scope: Scope.Condition = .{
19051897 .base = .{
19061898 .parent = &loop_scope,
......@@ -1914,10 +1906,14 @@ fn transForStmt(t: *Translator, scope: *Scope, for_stmt: Node.ForStmt) TransErro
19141906 else
19151907 ZigTag.true_literal.init();
19161908
1917 const cont_expr = if (for_stmt.incr) |incr|
1918 try t.transExpr(&cond_scope.base, incr, .unused)
1919 else
1920 null;
1909 var incr_scope = try Scope.Block.init(t, &cond_scope.base, false);
1910 defer incr_scope.deinit();
1911 const cont_expr = if (for_stmt.incr) |incr| blk: {
1912 const last = try t.transExpr(&incr_scope.base, incr, .unused);
1913 if (incr_scope.statements.items.len == 0) break :blk last;
1914 try incr_scope.statements.append(t.gpa, last);
1915 break :blk try incr_scope.complete();
1916 } else null;
19211917
19221918 const body = try t.maybeBlockify(&loop_scope, for_stmt.body);
19231919 const while_node = try ZigTag.@"while".create(t.arena, .{ .cond = cond, .body = body, .cont_expr = cont_expr });
......@@ -1930,19 +1926,24 @@ fn transForStmt(t: *Translator, scope: *Scope, for_stmt: Node.ForStmt) TransErro
19301926}
19311927
19321928fn transSwitch(t: *Translator, scope: *Scope, switch_stmt: Node.SwitchStmt) TransError!ZigNode {
1933 var loop_scope: Scope = .{
1934 .parent = scope,
1935 .id = .loop,
1936 };
1937
1938 var block_scope = try Scope.Block.init(t, &loop_scope, false);
1929 var block_scope = try Scope.Block.init(t, scope, true);
19391930 defer block_scope.deinit();
19401931
1941 const base_scope = &block_scope.base;
1932 var switch_scope: Scope.Switch = .{
1933 .base = .{
1934 .parent = &block_scope.base,
1935 .id = .@"switch",
1936 },
1937 .label = block_scope.label.?,
1938 };
1939
1940 const base_scope = &switch_scope.base;
19421941
19431942 var cond_scope: Scope.Condition = .{
19441943 .base = .{
1945 .parent = base_scope,
1944 // The switch condition is not in the switch scope yet, so any `break`s
1945 // should apply to the outer scope e.g. `switch ({ if (x == 1) break; 0; })`.
1946 .parent = &block_scope.base,
19461947 .id = .condition,
19471948 },
19481949 };
......@@ -2008,11 +2009,11 @@ fn transSwitch(t: *Translator, scope: *Scope, switch_stmt: Node.SwitchStmt) Tran
20082009 .cond = switch_expr,
20092010 .cases = try t.arena.dupe(ZigNode, cases.items),
20102011 });
2012 if (!switch_scope.label_used) {
2013 block_scope.label = null;
2014 }
20112015 try block_scope.statements.append(t.gpa, switch_node);
2012 try block_scope.statements.append(t.gpa, ZigTag.@"break".init());
2013 const while_body = try block_scope.complete();
2014
2015 return ZigTag.while_true.create(t.arena, while_body);
2016 return try block_scope.complete();
20162017}
20172018
20182019/// Collects all items for this case, returns the first statement after the labels.
......@@ -2121,6 +2122,30 @@ fn transSwitchProngStmtInline(
21212122 }
21222123}
21232124
2125fn transBreakStmt(t: *Translator, inner: *Scope) TransError!ZigNode {
2126 var scope = inner;
2127
2128 while (true) {
2129 switch (scope.id) {
2130 .root, .loop, .do_loop => {
2131 return ZigTag.@"break".init();
2132 },
2133 .@"switch" => {
2134 const switch_scope: *Scope.Switch =
2135 @fieldParentPtr("base", scope);
2136
2137 switch_scope.label_used = true;
2138 return ZigTag.break_label.create(t.arena, .{
2139 .label = switch_scope.label,
2140 });
2141 },
2142 .block, .condition => {
2143 scope = scope.parent.?;
2144 },
2145 }
2146 }
2147}
2148
21242149// ======================
21252150// Expression translation
21262151// ======================
......@@ -2133,7 +2158,7 @@ fn transExpr(t: *Translator, scope: *Scope, expr: Node.Index, used: ResultUsed)
21332158 .paren_expr => |paren_expr| {
21342159 return t.transExpr(scope, paren_expr.operand, used);
21352160 },
2136 .cast => |cast| return t.transCastExpr(scope, cast, cast.qt, used, .with_as),
2161 .cast => |cast| return t.maybeTransCastExpr(scope, cast, cast.qt, used, .with_as),
21372162 .decl_ref_expr => |decl_ref| try t.transDeclRefExpr(scope, decl_ref),
21382163 .enumeration_ref => |enum_ref| try t.transDeclRefExpr(scope, enum_ref),
21392164 .addr_of_expr => |addr_of_expr| try ZigTag.address_of.create(t.arena, try t.transExpr(scope, addr_of_expr.operand, .used)),
......@@ -2355,6 +2380,7 @@ fn transExpr(t: *Translator, scope: *Scope, expr: Node.Index, used: ResultUsed)
23552380 .goto_stmt,
23562381 .computed_goto_stmt,
23572382 .asm_stmt,
2383 .decl_stmt,
23582384 .global_asm,
23592385 .typedef,
23602386 .struct_decl,
......@@ -2369,6 +2395,9 @@ fn transExpr(t: *Translator, scope: *Scope, expr: Node.Index, used: ResultUsed)
23692395 .union_forward_decl,
23702396 .enum_forward_decl,
23712397 .empty_decl,
2398 .codegen_diagnostic,
2399 .alignas_type,
2400 .identifier_arg,
23722401 => unreachable, // not an expression
23732402 });
23742403}
......@@ -2389,7 +2418,7 @@ fn transExprCoercing(t: *Translator, scope: *Scope, expr: Node.Index, used: Resu
23892418 return t.transExprCoercing(scope, cast.operand, used);
23902419 },
23912420 .lval_to_rval => return t.transExprCoercing(scope, cast.operand, used),
2392 else => return t.transCastExpr(scope, cast, cast.qt, used, .no_as),
2421 else => return t.maybeTransCastExpr(scope, cast, cast.qt, used, .no_as),
23932422 },
23942423 .default_init_expr => |default_init| return try t.transDefaultInit(scope, default_init, used, .no_as),
23952424 .compound_literal_expr => |literal| {
......@@ -2460,6 +2489,20 @@ fn finishBoolExpr(t: *Translator, qt: QualType, node: ZigNode) TransError!ZigNod
24602489 unreachable; // Unexpected bool expression type
24612490}
24622491
2492fn maybeTransCastExpr(
2493 t: *Translator,
2494 scope: *Scope,
2495 cast: Node.Cast,
2496 dest_qt: QualType,
2497 used: ResultUsed,
2498 suppress_as: SuppressCast,
2499) TransError!ZigNode {
2500 return if (used == .used)
2501 t.transCastExpr(scope, cast, dest_qt, used, suppress_as)
2502 else
2503 t.transExpr(scope, cast.operand, used);
2504}
2505
24632506fn transCastExpr(
24642507 t: *Translator,
24652508 scope: *Scope,
......@@ -2496,8 +2539,7 @@ fn transCastExpr(
24962539 break :int_cast try t.transIntCast(operand, src_qt, dest_qt);
24972540 },
24982541 .to_void => {
2499 assert(used == .unused);
2500 return try t.transExpr(scope, cast.operand, .unused);
2542 return try t.transExpr(scope, cast.operand, used);
25012543 },
25022544 .null_to_pointer => ZigTag.null_literal.init(),
25032545 .array_to_pointer => array_to_pointer: {
......@@ -2734,7 +2776,7 @@ fn transDeclRefExpr(t: *Translator, scope: *Scope, decl_ref: Node.DeclRef) Trans
27342776 switch (decl_ref.decl.get(t.tree)) {
27352777 .function => |function| if (function.definition == null and function.body == null) {
27362778 // Try translating the decl again in case of out of scope declaration.
2737 try t.transFnDecl(scope, function);
2779 try t.transFnDecl(scope, function, decl_ref.decl);
27382780 },
27392781 else => {},
27402782 }
......@@ -2822,7 +2864,9 @@ fn transCondExpr(
28222864 const cond = try t.transBoolExpr(&cond_scope.base, conditional.cond);
28232865
28242866 var then_body = try t.transExpr(scope, conditional.then_expr, used);
2825 if (!res_is_bool and then_body.isBoolRes()) {
2867 if (used == .unused) {
2868 then_body = try ZigTag.block_single.create(t.arena, then_body);
2869 } else if (!res_is_bool and then_body.isBoolRes()) {
28262870 then_body = try ZigTag.int_from_bool.create(t.arena, then_body);
28272871 }
28282872
......@@ -2842,11 +2886,14 @@ fn transBinaryCondExpr(
28422886 used: ResultUsed,
28432887) TransError!ZigNode {
28442888 // GNU extension of the ternary operator where the middle expression is
2845 // omitted, the condition itself is returned if it evaluates to true.
2889 // omitted (<foo> ?: <bar>), <foo> is returned if it evaluates to true, otherwise <bar> is returned.
2890 // see https://gcc.gnu.org/onlinedocs/gcc/Conditionals.html
28462891
28472892 if (used == .unused) {
28482893 // Result unused so this can be translated as
2849 // if (condition) else_expr;
2894 // if (!condition) else_expr;
2895 // This is because if the first operand is nonzero, the expression short-circuits.
2896 // That means the else-case is evaluated if the first operand _is_ zero.
28502897 var cond_scope: Scope.Condition = .{
28512898 .base = .{
28522899 .parent = scope,
......@@ -2854,9 +2901,11 @@ fn transBinaryCondExpr(
28542901 },
28552902 };
28562903 defer cond_scope.deinit();
2904 const cond = try t.transBoolExpr(&cond_scope.base, conditional.cond);
2905 const negated_cond = try ZigTag.not.create(t.arena, cond);
28572906
28582907 return ZigTag.@"if".create(t.arena, .{
2859 .cond = try t.transBoolExpr(&cond_scope.base, conditional.cond),
2908 .cond = negated_cond,
28602909 .then = try t.transExpr(scope, conditional.else_expr, .unused),
28612910 .@"else" = null,
28622911 });
......@@ -2997,7 +3046,7 @@ fn transCompoundAssign(
29973046 const ref_node = try ZigTag.deref.create(t.arena, lhs_node);
29983047
29993048 // Use the equivalent Zig operator if possible.
3000 if (try t.transCompoundAssignSimple(scope, ref_node, assign)) |some| {
3049 if (try t.transCompoundAssignSimple(&block_scope.base, ref_node, assign)) |some| {
30013050 try block_scope.statements.append(t.gpa, some);
30023051 } else {
30033052 const old_dummy = t.compound_assign_dummy;
......@@ -3066,11 +3115,10 @@ fn transCompoundAssignSimple(t: *Translator, scope: *Scope, lhs_dummy_opt: ?ZigN
30663115 break :blk try t.transExpr(scope, bin.lhs, .used);
30673116 };
30683117
3069 const rhs_node = try t.transExprCoercing(scope, bin.rhs, .used);
30703118 const casted_rhs = switch (cast) {
3071 .none => rhs_node,
3072 .shift => try ZigTag.int_cast.create(t.arena, rhs_node),
3073 .usize => try t.usizeCastForWrappingPtrArithmetic(rhs_node),
3119 .none => try t.transExprCoercing(scope, bin.rhs, .used),
3120 .shift => try ZigTag.int_cast.create(t.arena, try t.transExpr(scope, bin.rhs, .used)),
3121 .usize => try t.usizeCastForWrappingPtrArithmetic(try t.transExpr(scope, bin.rhs, .used)),
30743122 };
30753123 return try t.createBinOpNode(op, lhs_node, casted_rhs);
30763124}
......@@ -3367,13 +3415,22 @@ fn transBuiltinCall(
33673415 ptr.* = .{ .base = .{ .tag = tag }, .data = coerced };
33683416 return t.maybeSuppressResult(used, ZigNode.initPayload(&ptr.base));
33693417 },
3418 .clz, .ctz => if (call.args.len == 1) { // elementwise ctz/clz with second argument requires special handling
3419 const arg = try t.transExprCoercing(scope, call.args[0], .used);
3420 const arg_ty = try t.transType(scope, call.args[0].qt(t.tree), call.args[0].tok(t.tree));
3421 const coerced = try ZigTag.as.create(t.arena, .{ .lhs = arg_ty, .rhs = arg });
3422
3423 const ptr = try t.arena.create(ast.Payload.UnOp);
3424 ptr.* = .{ .base = .{ .tag = tag }, .data = coerced };
3425 return t.maybeSuppressResult(used, ZigNode.initPayload(&ptr.base));
3426 },
33703427 .@"unreachable" => return ZigTag.@"unreachable".init(),
33713428 else => unreachable,
33723429 };
33733430
33743431 const arg_nodes = try t.arena.alloc(ZigNode, call.args.len);
33753432 for (call.args, arg_nodes) |c_arg, *zig_arg| {
3376 zig_arg.* = try t.transExprCoercing(scope, c_arg, .used);
3433 zig_arg.* = try t.transExpr(scope, c_arg, .used);
33773434 }
33783435
33793436 const builtin_identifier = try ZigTag.identifier.create(t.arena, "__builtin");
......@@ -3631,7 +3688,7 @@ fn transNarrowStringLiteral(
36313688 var allocating: std.Io.Writer.Allocating = try .initCapacity(t.gpa, bytes.len);
36323689 defer allocating.deinit();
36333690
3634 aro.Value.printString(bytes, literal.qt, t.comp, &allocating.writer) catch return error.OutOfMemory;
3691 aro.Value.printString(bytes, literal.qt, t.comp, &allocating.writer, .quoted) catch return error.OutOfMemory;
36353692
36363693 return ZigTag.string_literal.create(t.arena, try t.arena.dupe(u8, allocating.written()));
36373694}
......@@ -3811,8 +3868,8 @@ fn transArrayInit(
38113868 defer val_list.clearRetainingCapacity();
38123869 while (i < array_init.items.len) : (i += 1) {
38133870 if (array_init.items[i].get(t.tree) == .array_filler_expr) break;
3814 const expr = try t.transExprCoercing(scope, array_init.items[i], .used);
3815 try val_list.append(t.gpa, try t.toNonBool(expr, array_item_qt));
3871 const init_node = try t.transInitializerExpr(scope, array_init.items[i], array_item_qt);
3872 try val_list.append(t.gpa, init_node);
38163873 }
38173874 const array_type = try ZigTag.array_type.create(t.arena, .{
38183875 .elem_type = array_item_type,
......@@ -3860,10 +3917,7 @@ fn transUnionInit(
38603917 }).? else field.name.lookup(t.comp);
38613918
38623919 const field_init = try t.arena.create(ast.Payload.ContainerInit.Initializer);
3863 field_init.* = .{
3864 .name = field_name,
3865 .value = try t.toNonBool(try t.transExprCoercing(scope, init_expr, .used), field.qt),
3866 };
3920 field_init.* = .{ .name = field_name, .value = try t.transInitializerExpr(scope, init_expr, field.qt) };
38673921 const container_init = try ZigTag.container_init.create(t.arena, .{
38683922 .lhs = union_type,
38693923 .inits = field_init[0..1],
......@@ -3891,10 +3945,7 @@ fn transStructInit(
38913945 .parent = struct_base.qt,
38923946 .field = field.qt,
38933947 }).? else field.name.lookup(t.comp);
3894 init.* = .{
3895 .name = field_name,
3896 .value = try t.toNonBool(try t.transExprCoercing(scope, field_expr, .used), field.qt),
3897 };
3948 init.* = .{ .name = field_name, .value = try t.transInitializerExpr(scope, field_expr, field.qt) };
38983949 }
38993950
39003951 const container_init = try ZigTag.container_init.create(t.arena, .{
......@@ -3904,6 +3955,21 @@ fn transStructInit(
39043955 return container_init;
39053956}
39063957
3958fn transInitializerExpr(
3959 t: *Translator,
3960 scope: *Scope,
3961 item: Node.Index,
3962 init_qt: QualType,
3963) TransError!ZigNode {
3964 switch (item.get(t.tree)) {
3965 .string_literal_expr => |literal| {
3966 const array_type = try t.transTypeInit(scope, init_qt, item, literal.literal_tok);
3967 return t.transStringLiteralInitializer(item, literal, array_type);
3968 },
3969 else => return t.toNonBool(try t.transExprCoercing(scope, item, .used), init_qt),
3970 }
3971}
3972
39073973fn transTypeInfo(
39083974 t: *Translator,
39093975 scope: *Scope,
......@@ -3919,6 +3985,11 @@ fn transTypeInfo(
39193985 }
39203986 break :operand try ZigTag.typeof.create(t.arena, operand);
39213987 }
3988
3989 if (op == .sizeof and t.typeWasDemotedToOpaque(typeinfo.operand_qt)) {
3990 return error.UnsupportedType; // Can't get sizeof on opaque type
3991 }
3992
39223993 break :operand try t.transType(scope, typeinfo.operand_qt, typeinfo.op_tok);
39233994 };
39243995
......@@ -4099,7 +4170,7 @@ fn createIntNode(t: *Translator, int: aro.Value) !ZigNode {
40994170 big.positive = true;
41004171
41014172 const str = big.toStringAlloc(t.arena, 10, .lower) catch |err| switch (err) {
4102 error.OutOfMemory => |e| return e,
4173 error.OutOfMemory => return error.OutOfMemory,
41034174 };
41044175 const res = try ZigTag.integer_literal.create(t.arena, str);
41054176 if (is_negative) return ZigTag.negate.create(t.arena, res);
......@@ -4424,8 +4495,16 @@ pub fn getFnProto(t: *Translator, ref: ZigNode) ?*ast.Payload.Func {
44244495 v.data.init orelse return null
44254496 else if (ref.castTag(.var_simple) orelse ref.castTag(.pub_var_simple)) |v|
44264497 v.data.init
4427 else
4428 return null;
4498 else if (ref.castTag(.identifier)) |v| ident: {
4499 // Idents may reference functions directly, if this is the case just
4500 // return that here (no need to check containers).
4501 if (t.global_scope.sym_table.get(v.data)) |w| {
4502 if (w.castTag(.func)) |fn_proto| {
4503 return fn_proto;
4504 }
4505 }
4506 break :ident ref;
4507 } else return null;
44294508 if (t.getContainerTypeOf(init)) |ty_node| {
44304509 if (ty_node.castTag(.optional_type)) |prefix| {
44314510 if (prefix.data.castTag(.single_pointer)) |sp| {
lib/compiler/translate-c/ast.zig+70-67
......@@ -48,6 +48,7 @@ pub const Node = extern union {
4848 /// items => body,
4949 switch_prong,
5050 break_val,
51 break_label,
5152 @"return",
5253 field_access,
5354 field_builtin,
......@@ -56,8 +57,6 @@ pub const Node = extern union {
5657 var_decl,
5758 /// const name = struct { init }
5859 wrapped_local,
59 /// var name = init.*
60 mut_str,
6160 func,
6261 warning,
6362 @"struct",
......@@ -145,10 +144,6 @@ pub const Node = extern union {
145144 ptr_cast,
146145 /// @divExact(lhs, rhs)
147146 div_exact,
148 /// @offsetOf(lhs, rhs)
149 offset_of,
150 /// @splat(operand)
151 vector_zero_init,
152147 /// @shuffle(type, a, b, mask)
153148 shuffle,
154149 /// @extern(ty, .{ .name = n })
......@@ -156,6 +151,10 @@ pub const Node = extern union {
156151
157152 /// @byteSwap(operand)
158153 byte_swap,
154 /// @clz(operand)
155 clz,
156 /// @ctz(operand)
157 ctz,
159158 /// @ceil(operand)
160159 ceil,
161160 /// @cos(operand)
......@@ -242,7 +241,7 @@ pub const Node = extern union {
242241
243242 /// array_type{}
244243 empty_array,
245 /// @as([count]type, @splat(val))
244 /// [1]type{val} ** count
246245 array_filler,
247246
248247 /// comptime { if (!(lhs)) @compileError(rhs); }
......@@ -309,8 +308,9 @@ pub const Node = extern union {
309308 .int_cast,
310309 .const_cast,
311310 .volatile_cast,
312 .vector_zero_init,
313311 .byte_swap,
312 .clz,
313 .ctz,
314314 .ceil,
315315 .cos,
316316 .sin,
......@@ -370,7 +370,6 @@ pub const Node = extern union {
370370 .std_mem_zeroinit,
371371 .vector,
372372 .div_exact,
373 .offset_of,
374373 .static_assert,
375374 .field_builtin,
376375 => Payload.BinOp,
......@@ -389,6 +388,7 @@ pub const Node = extern union {
389388 .@"while" => Payload.While,
390389 .@"switch", .array_init, .switch_prong => Payload.Switch,
391390 .break_val => Payload.BreakVal,
391 .break_label => Payload.BreakLabel,
392392 .call => Payload.Call,
393393 .var_decl => Payload.VarDecl,
394394 .func => Payload.Func,
......@@ -401,7 +401,7 @@ pub const Node = extern union {
401401 .array_type, .null_sentinel_array_type => Payload.Array,
402402 .arg_redecl, .alias => Payload.ArgRedecl,
403403 .fail_decl => Payload.FailDecl,
404 .var_simple, .pub_var_simple, .wrapped_local, .mut_str => Payload.SimpleVarDecl,
404 .var_simple, .pub_var_simple, .wrapped_local => Payload.SimpleVarDecl,
405405 .enum_constant => Payload.EnumConstant,
406406 .array_filler => Payload.ArrayFiller,
407407 .pub_inline_fn => Payload.PubInlineFn,
......@@ -436,7 +436,7 @@ pub const Node = extern union {
436436
437437 pub fn tag(self: Node) Tag {
438438 if (self.tag_if_small_enough < Tag.no_payload_count) {
439 return @fromBackingInt(@intCast(@as(std.meta.Tag(Tag), @intCast(self.tag_if_small_enough))));
439 return @fromBackingInt(@as(std.meta.Tag(Tag), @intCast(self.tag_if_small_enough)));
440440 } else {
441441 return self.ptr_otherwise.tag;
442442 }
......@@ -461,6 +461,9 @@ pub const Node = extern union {
461461 return switch (node.tag()) {
462462 .block => {
463463 const block_node = node.castTag(.block).?;
464 // A labeled block can always be exited early via `break :label`,
465 // so control may resume after it regardless of the final statement.
466 if (block_node.data.label != null) return false;
464467 if (block_node.data.stmts.len == 0) return false;
465468
466469 const last = block_node.data.stmts[block_node.data.stmts.len - 1];
......@@ -482,7 +485,7 @@ pub const Node = extern union {
482485 return true;
483486 },
484487 .@"return", .return_void => true,
485 .@"break" => true,
488 .@"break", .break_label => true,
486489 .@"continue" => true,
487490 .@"unreachable" => true,
488491 else => false,
......@@ -571,6 +574,13 @@ pub const Payload = struct {
571574 },
572575 };
573576
577 pub const BreakLabel = struct {
578 base: Payload,
579 data: struct {
580 label: []const u8,
581 },
582 };
583
574584 pub const Call = struct {
575585 base: Payload,
576586 data: struct {
......@@ -587,7 +597,7 @@ pub const Payload = struct {
587597 is_extern: bool,
588598 is_export: bool,
589599 is_threadlocal: bool,
590 alignment: ?c_uint,
600 alignment: ?u32,
591601 linksection_string: ?[]const u8,
592602 name: []const u8,
593603 type: Node,
......@@ -609,13 +619,14 @@ pub const Payload = struct {
609619 params: []Param,
610620 return_type: Node,
611621 body: ?Node,
612 alignment: ?c_uint,
622 alignment: ?u32,
613623 },
614624
615625 pub const CallingConvention = enum {
616626 c,
617627 x86_64_sysv,
618628 x86_64_win,
629 x86_64_vectorcall,
619630 x86_stdcall,
620631 x86_fastcall,
621632 x86_thiscall,
......@@ -623,10 +634,12 @@ pub const Payload = struct {
623634 x86_regcall,
624635 aarch64_vfabi,
625636 aarch64_sve_pcs,
637 aarch64_aapcs_win,
626638 arm_aapcs,
627639 arm_aapcs_vfp,
628640 m68k_rtd,
629 riscv_vector,
641 riscv32_ilp32_v,
642 riscv64_lp64_v,
630643 };
631644 };
632645
......@@ -647,7 +660,7 @@ pub const Payload = struct {
647660 pub const Field = struct {
648661 name: []const u8,
649662 type: Node,
650 alignment: ?c_uint,
663 alignment: ?u32,
651664 default_value: ?Node,
652665 };
653666 };
......@@ -863,14 +876,11 @@ pub fn render(gpa: Allocator, nodes: []const Node) !std.zig.Ast {
863876 .start = @as(u32, @intCast(ctx.buf.items.len)),
864877 });
865878
866 try ctx.buf.shrinkToLenSentinel(gpa);
867 try ctx.extra_data.shrinkToLen(gpa);
868
869879 return .{
870 .source = ctx.buf.toOwnedSliceSentinelAssert(0),
880 .source = try ctx.buf.toOwnedSliceSentinel(gpa, 0),
871881 .tokens = ctx.tokens.toOwnedSlice(),
872882 .nodes = ctx.nodes.toOwnedSlice(),
873 .extra_data = ctx.extra_data.toOwnedSliceAssert(),
883 .extra_data = try ctx.extra_data.toOwnedSlice(gpa),
874884 .errors = &.{},
875885 .mode = .zig,
876886 };
......@@ -925,10 +935,11 @@ const Context = struct {
925935 }
926936
927937 fn addExtra(c: *Context, extra: anytype) Allocator.Error!std.zig.Ast.ExtraIndex {
928 const info = @typeInfo(@TypeOf(extra)).@"struct";
929 try c.extra_data.ensureUnusedCapacity(c.gpa, info.field_names.len);
938 const field_names = comptime std.meta.fieldNames(@TypeOf(extra));
939 const field_types = comptime std.meta.fieldTypes(@TypeOf(extra));
940 try c.extra_data.ensureUnusedCapacity(c.gpa, field_names.len);
930941 const result: std.zig.Ast.ExtraIndex = @fromBackingInt(@intCast(c.extra_data.items.len));
931 inline for (info.field_names, info.field_types) |field_name, field_type| {
942 inline for (field_names, field_types) |field_name, field_type| {
932943 const data: u32 = switch (field_type) {
933944 NodeIndex,
934945 std.zig.Ast.Node.OptionalIndex,
......@@ -949,6 +960,7 @@ fn renderNodeOpt(c: *Context, node: Node) Allocator.Error!?NodeIndex {
949960 switch (node.tag()) {
950961 .warning => {
951962 const payload = node.castTag(.warning).?.data;
963 try c.buf.append(c.gpa, '\n');
952964 try c.buf.appendSlice(c.gpa, payload);
953965 try c.buf.append(c.gpa, '\n');
954966 return null;
......@@ -1099,6 +1111,20 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex {
10991111 } },
11001112 });
11011113 },
1114 .break_label => {
1115 const payload = node.castTag(.break_label).?.data;
1116 const tok = try c.addToken(.keyword_break, "break");
1117 _ = try c.addToken(.colon, ":");
1118 const label = try c.addIdentifier(payload.label);
1119 return c.addNode(.{
1120 .tag = .@"break",
1121 .main_token = tok,
1122 .data = .{ .opt_token_and_opt_node = .{
1123 .fromToken(label),
1124 .none,
1125 } },
1126 });
1127 },
11021128 .@"return" => {
11031129 const payload = node.castTag(.@"return").?.data;
11041130 return c.addNode(.{
......@@ -1338,33 +1364,6 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex {
13381364 },
13391365 });
13401366 },
1341 .mut_str => {
1342 const payload = node.castTag(.mut_str).?.data;
1343
1344 const var_tok = try c.addToken(.keyword_var, "var");
1345 _ = try c.addIdentifier(payload.name);
1346 _ = try c.addToken(.equal, "=");
1347
1348 const deref = try c.addNode(.{
1349 .tag = .deref,
1350 .data = .{
1351 .node = try renderNodeGrouped(c, payload.init),
1352 },
1353 .main_token = try c.addToken(.period_asterisk, ".*"),
1354 });
1355 _ = try c.addToken(.semicolon, ";");
1356
1357 return c.addNode(.{
1358 .tag = .simple_var_decl,
1359 .main_token = var_tok,
1360 .data = .{
1361 .opt_node_and_opt_node = .{
1362 .none, // Type expression
1363 deref.toOptional(), // Init expression
1364 },
1365 },
1366 });
1367 },
13681367 .var_decl => return renderVar(c, node),
13691368 .arg_redecl, .alias => {
13701369 const payload = @as(*Payload.ArgRedecl, @alignCast(@fieldParentPtr("base", node.ptr_otherwise))).data;
......@@ -1458,10 +1457,6 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex {
14581457 const payload = node.castTag(.div_exact).?.data;
14591458 return renderBuiltinCall(c, "@divExact", &.{ payload.lhs, payload.rhs });
14601459 },
1461 .offset_of => {
1462 const payload = node.castTag(.offset_of).?.data;
1463 return renderBuiltinCall(c, "@offsetOf", &.{ payload.lhs, payload.rhs });
1464 },
14651460 .sizeof => {
14661461 const payload = node.castTag(.sizeof).?.data;
14671462 return renderBuiltinCall(c, "@sizeOf", &.{payload});
......@@ -1526,6 +1521,14 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex {
15261521 const payload = node.castTag(.byte_swap).?.data;
15271522 return renderBuiltinCall(c, "@byteSwap", &.{payload});
15281523 },
1524 .clz => {
1525 const payload = node.castTag(.clz).?.data;
1526 return renderBuiltinCall(c, "@clz", &.{payload});
1527 },
1528 .ctz => {
1529 const payload = node.castTag(.ctz).?.data;
1530 return renderBuiltinCall(c, "@ctz", &.{payload});
1531 },
15291532 .ceil => {
15301533 const payload = node.castTag(.ceil).?.data;
15311534 return renderBuiltinCall(c, "@ceil", &.{payload});
......@@ -1978,16 +1981,17 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex {
19781981
19791982 const as_tok = try c.addToken(.builtin, "@as");
19801983 _ = try c.addToken(.l_paren, "(");
1981 const type_node = try renderArrayType(c, payload.count, payload.type);
1984 const type_expr = try renderArrayType(c, payload.count, payload.type);
19821985 _ = try c.addToken(.comma, ",");
1983 const splat_node = try renderBuiltinCall(c, "@splat", &.{payload.filler});
1986
1987 const splat = try renderBuiltinCall(c, "@splat", &.{payload.filler});
19841988 _ = try c.addToken(.r_paren, ")");
19851989
19861990 return c.addNode(.{
19871991 .tag = .builtin_call_two,
19881992 .main_token = as_tok,
19891993 .data = .{ .opt_node_and_opt_node = .{
1990 .fromOptional(type_node), .fromOptional(splat_node),
1994 .fromOptional(type_expr), .fromOptional(splat),
19911995 } },
19921996 });
19931997 },
......@@ -2002,10 +2006,6 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex {
20022006 const type_expr = try renderNode(c, payload.cond);
20032007 return renderArrayInit(c, type_expr, payload.cases);
20042008 },
2005 .vector_zero_init => {
2006 const payload = node.castTag(.vector_zero_init).?.data;
2007 return renderBuiltinCall(c, "@splat", &.{payload});
2008 },
20092009 .field_access => {
20102010 const payload = node.castTag(.field_access).?.data;
20112011 const lhs = try renderNodeGrouped(c, payload.lhs);
......@@ -2424,7 +2424,7 @@ fn renderNullSentinelArrayType(c: *Context, len: u64, elem_type: Node) !NodeInde
24242424fn addSemicolonIfNeeded(c: *Context, node: Node) !void {
24252425 switch (node.tag()) {
24262426 .warning => unreachable,
2427 .static_assert, .var_decl, .var_simple, .arg_redecl, .alias, .block, .empty_block, .block_single, .@"switch", .wrapped_local, .mut_str => {},
2427 .static_assert, .var_decl, .var_simple, .arg_redecl, .alias, .block, .empty_block, .block_single, .@"switch", .wrapped_local => {},
24282428 .while_true => {
24292429 const payload = node.castTag(.while_true).?.data;
24302430 return addSemicolonIfNotBlock(c, payload);
......@@ -2509,14 +2509,14 @@ fn renderNodeGrouped(c: *Context, node: Node) !NodeIndex {
25092509 .null_sentinel_array_type,
25102510 .int_from_bool,
25112511 .div_exact,
2512 .offset_of,
25132512 .shuffle,
25142513 .builtin_extern,
25152514 .wrapped_local,
2516 .mut_str,
25172515 .helper_call,
25182516 .helper_ref,
25192517 .byte_swap,
2518 .clz,
2519 .ctz,
25202520 .ceil,
25212521 .cos,
25222522 .sin,
......@@ -2571,7 +2571,6 @@ fn renderNodeGrouped(c: *Context, node: Node) !NodeIndex {
25712571 .@"struct",
25722572 .@"union",
25732573 .array_init,
2574 .vector_zero_init,
25752574 .tuple,
25762575 .container_init,
25772576 .container_init_dot,
......@@ -2598,6 +2597,7 @@ fn renderNodeGrouped(c: *Context, node: Node) !NodeIndex {
25982597 .@"while",
25992598 .@"break",
26002599 .break_val,
2600 .break_label,
26012601 .pub_inline_fn,
26022602 .discard,
26032603 .@"continue",
......@@ -2926,6 +2926,7 @@ fn renderFunc(c: *Context, node: Node) !NodeIndex {
29262926 },
29272927 .x86_64_sysv,
29282928 .x86_64_win,
2929 .x86_64_vectorcall,
29292930 .x86_stdcall,
29302931 .x86_fastcall,
29312932 .x86_thiscall,
......@@ -2933,10 +2934,12 @@ fn renderFunc(c: *Context, node: Node) !NodeIndex {
29332934 .x86_regcall,
29342935 .aarch64_vfabi,
29352936 .aarch64_sve_pcs,
2937 .aarch64_aapcs_win,
29362938 .arm_aapcs,
29372939 .arm_aapcs_vfp,
29382940 .m68k_rtd,
2939 .riscv_vector,
2941 .riscv32_ilp32_v,
2942 .riscv64_lp64_v,
29402943 => cc_node: {
29412944 // .{ .foo = .{} }
29422945 _ = try c.addToken(.period, ".");
lib/compiler/translate-c/builtins.zig+6
......@@ -13,6 +13,7 @@ pub const Builtin = struct {
1313
1414pub const map = std.StaticStringMap(Builtin).initComptime([_]struct { []const u8, Builtin }{
1515 .{ "__builtin_abs", .{ .name = "abs" } },
16 .{ "__builtin_add_overflow", .{ .name = "add_overflow" } },
1617 .{ "__builtin_assume", .{ .name = "assume" } },
1718 .{ "__builtin_bswap16", .{ .name = "bswap16", .tag = .byte_swap } },
1819 .{ "__builtin_bswap32", .{ .name = "bswap32", .tag = .byte_swap } },
......@@ -33,6 +34,10 @@ pub const map = std.StaticStringMap(Builtin).initComptime([_]struct { []const u8
3334 .{ "__builtin_fabs", .{ .name = "fabs", .tag = .abs } },
3435 .{ "__builtin_floorf", .{ .name = "floorf", .tag = .floor } },
3536 .{ "__builtin_floor", .{ .name = "floor", .tag = .floor } },
37 .{ "__builtin_elementwise_clzg", .{ .name = "elementwise_clzg", .tag = .clz } },
38 .{ "__builtin_elementwise_ctzg", .{ .name = "elementwise_ctzg", .tag = .ctz } },
39 .{ "__builtin_elementwise_fshl", .{ .name = "elementwise_fshl" } },
40 .{ "__builtin_elementwise_fshr", .{ .name = "elementwise_fshr" } },
3641 .{ "__builtin_huge_valf", .{ .name = "huge_valf" } },
3742 .{ "__builtin_inff", .{ .name = "inff" } },
3843 .{ "__builtin_isinf_sign", .{ .name = "isinf_sign" } },
......@@ -64,6 +69,7 @@ pub const map = std.StaticStringMap(Builtin).initComptime([_]struct { []const u8
6469 .{ "__builtin_sqrt", .{ .name = "sqrt", .tag = .sqrt } },
6570 .{ "__builtin_strcmp", .{ .name = "strcmp" } },
6671 .{ "__builtin_strlen", .{ .name = "strlen" } },
72 .{ "__builtin_sub_overflow", .{ .name = "sub_overflow" } },
6773 .{ "__builtin_truncf", .{ .name = "truncf", .tag = .trunc } },
6874 .{ "__builtin_trunc", .{ .name = "trunc", .tag = .trunc } },
6975 .{ "__builtin_unreachable", .{ .name = "unreachable", .tag = .@"unreachable" } },
lib/compiler/translate-c/main.zig+394-77
......@@ -1,27 +1,24 @@
11const std = @import("std");
22const assert = std.debug.assert;
33const mem = std.mem;
4const Allocator = std.mem.Allocator;
45const process = std.process;
6const fatal = std.process.fatal;
57const Io = std.Io;
8const PkgConfig = std.zig.PkgConfig;
69
710const aro = @import("aro");
811const compiler_util = @import("../util.zig");
12const build_options = @import("build_options");
913
1014const Translator = @import("Translator.zig");
1115
12const fast_exit = @import("builtin").mode != .debug;
13
14pub fn main(init: process.Init) u8 {
16pub fn main(init: process.Init) !void {
1517 const gpa = init.gpa;
1618 const arena = init.arena.allocator();
1719 const io = init.io;
1820 const environ_map = init.environ_map;
19
20 const args = init.minimal.args.toSlice(arena) catch {
21 std.debug.print("ran out of memory allocating arguments\n", .{});
22 if (fast_exit) process.exit(1);
23 return 1;
24 };
21 const args = try init.minimal.args.toSlice(arena);
2522
2623 var zig_integration = false;
2724 if (args.len > 1 and std.mem.eql(u8, args[1], "--zig-integration")) {
......@@ -42,55 +39,39 @@ pub fn main(init: process.Init) u8 {
4239 };
4340 defer diagnostics.deinit();
4441
45 var comp = aro.Compilation.init(.{
42 var comp = try aro.Compilation.init(.{
4643 .gpa = gpa,
4744 .arena = arena,
4845 .io = io,
4946 .diagnostics = &diagnostics,
5047 .environ_map = environ_map,
51 }) catch |err| switch (err) {
52 error.OutOfMemory => {
53 std.debug.print("ran out of memory initializing C compilation\n", .{});
54 if (fast_exit) process.exit(1);
55 return 1;
56 },
57 };
48 });
5849 defer comp.deinit();
5950
60 var driver: aro.Driver = .{ .comp = &comp, .diagnostics = &diagnostics, .aro_name = "aro" };
51 var driver: aro.Driver = .{ .comp = &comp, .diagnostics = &diagnostics, .aro_name = args[0] };
6152 defer driver.deinit();
6253
6354 var toolchain: aro.Toolchain = .{ .driver = &driver };
6455 defer toolchain.deinit();
6556
66 translate(&driver, &toolchain, args, zig_integration) catch |err| switch (err) {
67 error.OutOfMemory => {
68 std.debug.print("ran out of memory translating\n", .{});
69 if (fast_exit) process.exit(1);
70 return 1;
71 },
57 var stdout_buf: [512]u8 = undefined;
58 var stdout = Io.File.stdout().writer(io, &stdout_buf);
59 translate(&driver, &toolchain, init.environ_map, &stdout.interface, args, zig_integration) catch |err| switch (err) {
7260 error.FatalError => if (zig_integration) {
7361 serveErrorBundle(arena, io, &diagnostics) catch |bundle_err| {
7462 std.debug.print("unable to serve error bundle: {}\n", .{bundle_err});
75 if (fast_exit) process.exit(1);
76 return 1;
63 process.exit(1);
7764 };
7865
79 if (fast_exit) process.exit(0);
80 return 0;
66 process.exit(0);
8167 } else {
82 if (fast_exit) process.exit(1);
83 return 1;
84 },
85 error.WriteFailed => {
86 std.debug.print("unable to write to stdout\n", .{});
87 if (fast_exit) process.exit(1);
88 return 1;
68 process.exit(1);
8969 },
70 error.WriteFailed => return stdout.err.?,
71 else => |e| return e,
9072 };
91 assert(comp.diagnostics.errors == 0 or !zig_integration);
92 if (fast_exit) process.exit(@intFromBool(comp.diagnostics.errors != 0));
93 return @intFromBool(comp.diagnostics.errors != 0);
73 if (comp.diagnostics.errors != 0) process.exit(1);
74 return process.cleanExit(io);
9475}
9576
9677fn serveErrorBundle(arena: std.mem.Allocator, io: Io, diagnostics: *const aro.Diagnostics) !void {
......@@ -114,6 +95,7 @@ pub const usage =
11495 \\Options:
11596 \\ --help Print this message
11697 \\ --version Print translate-c version
98 \\ --libc=<file> Provide a file which specifies libc paths
11799 \\ -fmodule-libs Import libraries as modules
118100 \\ -fno-module-libs (default) Install libraries next to output file
119101 \\ -fpub-static (default) Translate static functions as pub
......@@ -133,7 +115,15 @@ pub const usage =
133115 \\
134116;
135117
136fn translate(d: *aro.Driver, tc: *aro.Toolchain, args: []const [:0]const u8, zig_integration: bool) !void {
118fn translate(
119 d: *aro.Driver,
120 tc: *aro.Toolchain,
121 environ_map: *const process.Environ.Map,
122 stdout: *Io.Writer,
123 args: []const [:0]const u8,
124 zig_integration: bool,
125) !void {
126 const arena = d.comp.arena;
137127 const gpa = d.comp.gpa;
138128 const io = d.comp.io;
139129
......@@ -143,27 +133,37 @@ fn translate(d: *aro.Driver, tc: *aro.Toolchain, args: []const [:0]const u8, zig
143133 var keep_macro_literals = true;
144134 var default_init = true;
145135 var strict_flex_arrays: Translator.StrictFlexArraysLevel = .@"2";
136 var target_query: std.Target.Query = .{};
137 var link_libc = false;
138 var link_libcpp = false;
139 var link_libunwind = false;
140 var libc_paths_file: ?[]const u8 = null;
141
142 var system_libs: std.ArrayList(SystemLib) = .empty;
143 var any_want_pkg_conf = false;
144 var any_force_pkg_conf = false;
145 var optimize_mode: std.lang.OptimizeMode = .Debug;
146 var opt_zig_lib_path: ?[]const u8 = null;
147
148 var aro_args: std.ArrayList([]const u8) = try .initCapacity(arena, args.len);
146149
147 var aro_args: std.ArrayList([:0]const u8) = try .initCapacity(gpa, args.len);
148 defer aro_args.deinit(gpa);
150 aro_args.appendAssumeCapacity(args[0]);
149151
150 for (args, 0..) |arg, i| {
152 for (args[1..], 1..) |arg, i| {
151153 if (mem.eql(u8, arg, "--help")) {
152 var stdout_buf: [512]u8 = undefined;
153 var stdout = Io.File.stdout().writer(io, &stdout_buf);
154 try stdout.interface.print(usage, .{args[0]});
155 try stdout.interface.flush();
154 try stdout.print(usage, .{args[0]});
155 try stdout.flush();
156156 return;
157157 } else if (mem.eql(u8, arg, "--version")) {
158 var stdout_buf: [512]u8 = undefined;
159 var stdout = Io.File.stdout().writer(io, &stdout_buf);
160158 // TODO add version
161 try stdout.interface.writeAll("0.0.0-dev\n");
162 try stdout.interface.flush();
159 try stdout.writeAll("0.0.0-dev\n");
160 try stdout.flush();
163161 return;
164162 } else if (mem.eql(u8, arg, "--zig-integration")) {
165163 if (i != 1 or !zig_integration)
166164 return d.fatal("--zig-integration must be the first argument", .{});
165 } else if (mem.cutPrefix(u8, arg, "--libc=")) |rest| {
166 libc_paths_file = rest;
167167 } else if (mem.eql(u8, arg, "-fmodule-libs")) {
168168 module_libs = true;
169169 } else if (mem.eql(u8, arg, "-fno-module-libs")) {
......@@ -184,16 +184,249 @@ fn translate(d: *aro.Driver, tc: *aro.Toolchain, args: []const [:0]const u8, zig
184184 default_init = true;
185185 } else if (mem.eql(u8, arg, "-fno-default-init")) {
186186 default_init = false;
187 } else if (mem.startsWith(u8, arg, "-fstrict-flex-arrays=")) {
188 const val_str = arg["-fstrict-flex-arrays=".len..];
189 if (val_str.len != 1 or val_str[0] < '0' or val_str[0] > '3') {
187 } else if (mem.cutPrefix(u8, arg, "-fstrict-flex-arrays=")) |rest| {
188 if (rest.len != 1 or rest[0] < '0' or rest[0] > '3') {
190189 return d.fatal("-fstrict-flex-arrays= requires a value of '0', '1', '2', or '3'", .{});
191190 }
192 strict_flex_arrays = @fromBackingInt(@intCast(val_str[0] - '0'));
191 strict_flex_arrays = @fromBackingInt(@intCast(rest[0] - '0'));
192 } else if (mem.cutPrefix(u8, arg, "--target=")) |rest| {
193 target_query = std.zig.parseTargetQueryOrReportFatalError(arena, .{
194 .arch_os_abi = rest,
195 });
196 try aro_args.append(arena, arg);
197 } else if (mem.cutPrefix(u8, arg, "-mcpu=")) |rest| {
198 try aro_args.ensureUnusedCapacity(arena, 2);
199 aro_args.appendAssumeCapacity("-mcpu");
200 aro_args.appendAssumeCapacity(rest);
201 } else if (mem.cutPrefix(u8, arg, "-o=")) |rest| {
202 try aro_args.ensureUnusedCapacity(arena, 2);
203 aro_args.appendAssumeCapacity("-o");
204 aro_args.appendAssumeCapacity(rest);
205 } else if (mem.cutPrefix(u8, arg, "-O=")) |rest| {
206 optimize_mode = std.meta.stringToEnum(std.lang.OptimizeMode, rest) orelse
207 fatal("bad optimize mode: {s}", .{rest});
208 } else if (mem.eql(u8, arg, "-lc")) {
209 link_libc = true;
210 } else if (mem.eql(u8, arg, "-lc++")) {
211 link_libcpp = true;
212 } else if (mem.eql(u8, arg, "-lunwind")) {
213 link_libunwind = true;
214 } else if (mem.cutPrefix(u8, arg, "-l=")) |rest| {
215 try system_libs.append(arena, .{
216 .options = .{
217 .needed = (rest[0] - '0') != 0,
218 .weak = (rest[1] - '0') != 0,
219 .use_pkg_config = @fromBackingInt(@intCast(rest[2] - '0')),
220 .preferred_link_mode = @fromBackingInt(@intCast(rest[3] - '0')),
221 .search_strategy = @fromBackingInt(@intCast(rest[4] - '0')),
222 },
223 .name = rest[6..],
224 });
225 switch (system_libs.last().?.options.use_pkg_config) {
226 .no => {},
227 .yes => any_want_pkg_conf = true,
228 .force => any_force_pkg_conf = true,
229 }
230 } else if (mem.cutPrefix(u8, arg, "--zig-lib=")) |rest| {
231 opt_zig_lib_path = rest;
232 } else if (mem.eql(u8, arg, "--")) {
233 try aro_args.appendSlice(arena, args[i + 1 ..]);
234 break;
193235 } else {
194 aro_args.appendAssumeCapacity(arg);
236 fatal("unrecognized translate-c argument: {s}", .{arg});
237 }
238 }
239
240 const zig_lib_path = opt_zig_lib_path orelse fatal("missing --zig-lib=[path] argument", .{});
241
242 try aro_args.append(arena, "-nostdlibinc");
243
244 switch (optimize_mode) {
245 .Debug => {
246 try aro_args.append(arena, "-O0");
247 },
248 .ReleaseSafe => {
249 try aro_args.append(arena, "-O2");
250 try aro_args.append(arena, "-D_FORTIFY_SOURCE=2");
251 },
252 .ReleaseFast => {
253 try aro_args.append(arena, "-O2");
254 try aro_args.append(arena, "-DNDEBUG");
255 },
256 .ReleaseSmall => {
257 try aro_args.append(arena, "-Os");
258 try aro_args.append(arena, "-DNDEBUG");
259 },
260 }
261
262 const target = std.zig.resolveTargetQueryOrFatal(io, target_query);
263
264 if (link_libc) {
265 if (target.isGnuLibC()) {
266 const target_version = target.os.versionRange().gnuLibCVersion().?;
267 const glibc_minor_define = try std.fmt.allocPrint(arena, "-D__GLIBC_MINOR__={d}", .{
268 target_version.minor,
269 });
270 try aro_args.append(arena, glibc_minor_define);
271 } else if (target.isMinGW()) {
272 try aro_args.append(arena, "-D__MSVCRT_VERSION__=0xE00"); // use ucrt
273
274 const minver: u16 = @truncate(@backingInt(target.os.versionRange().windows.min) >> 16);
275 try aro_args.append(
276 arena,
277 try std.fmt.allocPrint(arena, "-D_WIN32_WINNT=0x{x:0>4}", .{minver}),
278 );
279
280 // MinGW-w64's inline functions in headers (e.g. `fabs`), which are emitted with `linkonce_odr`
281 // linkage, sometimes cause duplicate symbol errors due to us providing the same symbols with
282 // `weak` linkage in compiler-rt or libzigc. So just disable them. Besides, they undermine the
283 // goal of moving more libc code to Zig, and they're also just kind of unnecessary since LLVM is
284 // perfectly capable of recognizing and optimizing libcalls.
285 try aro_args.append(arena, "-D__CRT__NO_INLINE");
286 } else if (target.isFreeBSDLibC()) {
287 // https://docs.freebsd.org/en/books/porters-handbook/versions
288 const min_ver = target.os.version_range.semver.min;
289 try aro_args.append(arena, try std.fmt.allocPrint(arena, "-D__FreeBSD_version={d}", .{
290 // We don't currently respect the minor and patch components. This wouldn't be particularly
291 // helpful because our abilists file only tracks major FreeBSD releases, so the link-time stub
292 // symbols would be inconsistent with header declarations.
293 min_ver.major * 100_000 + 500,
294 }));
295 } else if (target.isNetBSDLibC()) {
296 const min_ver = target.os.version_range.semver.min;
297 try aro_args.append(arena, try std.fmt.allocPrint(arena, "-D__NetBSD_Version__={d}", .{
298 // We don't currently respect the patch component. This wouldn't be particularly helpful because
299 // our abilists file only tracks major and minor NetBSD releases, so the link-time stub symbols
300 // would be inconsistent with header declarations.
301 (min_ver.major * 100_000_000) + (min_ver.minor * 1_000_000),
302 }));
303 } else if (target.isOpenBSDLibC()) {
304 const min_ver = target.os.version_range.semver.min;
305 // The macro in sys/param.h doesn't have the leading underscores, but we don't want to pollute the
306 // global namespace in all compilation units. So we use leading underscores and modify sys/param.h
307 // to just alias this one.
308 try aro_args.append(arena, try std.fmt.allocPrint(arena, "-D___OpenBSD={d}", .{
309 // Brilliantly, OpenBSD defines this macro to the year and month of the release, so we need to
310 // maintain a manual mapping here whenever we update the headers.
311 202510,
312 }));
313 // We can't avoid pollution for this one...
314 try aro_args.append(arena, try std.fmt.allocPrint(arena, "-DOpenBSD{d}_{d}", .{
315 min_ver.major,
316 min_ver.minor,
317 }));
318 }
319 }
320
321 if (link_libcpp) {
322 try aro_args.ensureUnusedCapacity(arena, 4);
323 aro_args.appendAssumeCapacity("-isystem");
324 aro_args.appendAssumeCapacity(try Io.Dir.path.join(arena, &.{ zig_lib_path, "libcxx", "include" }));
325
326 aro_args.appendAssumeCapacity("-isystem");
327 aro_args.appendAssumeCapacity(try Io.Dir.path.join(arena, &.{ zig_lib_path, "libcxxabi", "include" }));
328
329 //try libcxx.addCxxArgs(comp, arena, aro_args);
330 }
331
332 const is_native_os = target_query.isNativeOs();
333 const is_native_abi = target_query.isNativeAbi();
334 const libc_installation = if (libc_paths_file) |libc_file|
335 std.zig.LibCInstallation.parse(arena, io, libc_file, &target) catch |err| fatal("failed to parse '{s}': {t}", .{ libc_file, err })
336 else
337 null;
338
339 const libc_dirs = std.zig.LibCDirs.detect(
340 arena,
341 io,
342 .initCwd(zig_lib_path),
343 &target,
344 is_native_abi,
345 link_libc,
346 if (libc_installation) |l| &l else null,
347 environ_map,
348 ) catch |err| fatal("failed detecting libc: {t}", .{err});
349
350 // Supplement Aro builtin headers with Clang builtin headers
351 try aro_args.appendSlice(arena, &.{ "-idirafter", try Io.Dir.path.join(arena, &.{ zig_lib_path, "include" }) });
352
353 try aro_args.ensureUnusedCapacity(arena, libc_dirs.libc_include_dir_list.len * 2);
354 for (libc_dirs.libc_include_dir_list) |include_dir| {
355 aro_args.appendAssumeCapacity("-isystem");
356 aro_args.appendAssumeCapacity(include_dir);
357 }
358
359 const native_paths: ?std.zig.system.NativePaths = if (is_native_os and is_native_abi) p: {
360 const native_paths = std.zig.system.NativePaths.detect(arena, io, &target, environ_map) catch |err|
361 fatal("unable to detect native system paths: {t}", .{err});
362 for (native_paths.warnings.items) |warning| {
363 std.log.warn("{s}", .{warning});
364 }
365 break :p native_paths;
366 } else null;
367
368 if (native_paths) |np| {
369 try aro_args.ensureUnusedCapacity(arena, np.include_dirs.items.len * 2);
370 for (np.include_dirs.items) |include_path| {
371 aro_args.appendAssumeCapacity("-isystem");
372 aro_args.appendAssumeCapacity(include_path);
195373 }
196374 }
375
376 if (link_libunwind) {
377 try aro_args.ensureUnusedCapacity(arena, 2);
378 aro_args.appendAssumeCapacity("-isystem");
379 aro_args.appendAssumeCapacity(try Io.Dir.path.join(arena, &.{ zig_lib_path, "libunwind", "include" }));
380 }
381
382 try aro_args.ensureUnusedCapacity(arena, libc_dirs.libc_framework_dir_list.len * 2);
383 for (libc_dirs.libc_framework_dir_list) |framework_dir| {
384 try aro_args.appendSlice(arena, &.{ "-iframework", framework_dir });
385 }
386
387 if (native_paths) |np| {
388 try aro_args.ensureUnusedCapacity(arena, np.framework_dirs.items.len * 2);
389 for (np.framework_dirs.items) |framework_dir| {
390 try aro_args.appendSlice(arena, &.{ "-F", framework_dir });
391 }
392 }
393
394 var opt_pc: ?PkgConfig = null;
395 if (any_want_pkg_conf or any_force_pkg_conf) {
396 const pkg_config_exe = PkgConfig.exe(environ_map);
397 if (process.run(arena, io, .{
398 .argv = &.{ pkg_config_exe, "--list-all" },
399 .environ_map = environ_map,
400 })) |result| {
401 if (result.term.success()) {
402 opt_pc = try PkgConfig.init(arena, result.stdout, null);
403 } else if (any_force_pkg_conf) {
404 fatal("{s} {f}", .{ pkg_config_exe, result.term });
405 }
406 } else |err| {
407 if (any_force_pkg_conf) fatal("{s}: failed running --list-all: {t}", .{ pkg_config_exe, err });
408 }
409 }
410
411 if (opt_pc) |pc| {
412 var group: Io.Group = .init;
413 defer group.cancel(io);
414
415 for (system_libs.items) |*system_lib| switch (system_lib.options.use_pkg_config) {
416 .no => continue,
417 .yes, .force => group.async(io, runPkgConfig, .{ arena, io, environ_map, &pc, system_lib }),
418 };
419
420 try group.await(io);
421 }
422
423 for (system_libs.items) |*system_lib| {
424 if (system_lib.flags) |flags| {
425 try aro_args.ensureUnusedCapacity(arena, flags.len + 1);
426 aro_args.appendSliceAssumeCapacity(flags);
427 }
428 }
429
197430 const user_macros = macros: {
198431 var macro_buf: std.ArrayList(u8) = .empty;
199432 defer macro_buf.deinit(gpa);
......@@ -205,15 +438,7 @@ fn translate(d: *aro.Driver, tc: *aro.Toolchain, args: []const [:0]const u8, zig
205438 return d.fatal("user provided macro source exceeded max size", .{});
206439 }
207440
208 const has_output_file = if (d.output_name) |path|
209 !std.mem.eql(u8, path, "-")
210 else
211 false;
212 if (zig_integration and !has_output_file) {
213 return d.fatal("--zig-integration requires specifying an output file", .{});
214 }
215
216 const content = try macro_buf.toOwnedSlice(gpa);
441 const content = try macro_buf.toOwnedSliceSentinel(gpa, 0);
217442 errdefer gpa.free(content);
218443
219444 break :macros try d.comp.addSourceFromOwnedBuffer("<command line>", content, .user);
......@@ -225,7 +450,7 @@ fn translate(d: *aro.Driver, tc: *aro.Toolchain, args: []const [:0]const u8, zig
225450 const source = d.inputs.items[0];
226451
227452 tc.discover() catch |er| switch (er) {
228 error.OutOfMemory => |e| return e,
453 error.OutOfMemory => return error.OutOfMemory,
229454 error.TooManyMultilibs => return d.fatal("found more than one multilib with the same priority", .{}),
230455 };
231456 try tc.defineSystemIncludes();
......@@ -242,12 +467,8 @@ fn translate(d: *aro.Driver, tc: *aro.Toolchain, args: []const [:0]const u8, zig
242467 defer pp.deinit();
243468
244469 var name_buf: [std.fs.max_name_bytes]u8 = undefined;
245 // Omit the source file from the dep file so that it can be tracked separately.
246 // In the Zig compiler we want to omit it from the cache hash since it will
247 // be written to a tmp file then renamed into place, meaning the path will be
248 // wrong as soon as the work is done.
249 var opt_dep_file = try d.initDepFile(source, &name_buf, true);
250 defer if (opt_dep_file) |*dep_file| dep_file.deinit(gpa);
470 var opt_dep_file = try d.initDepFile(source, &name_buf);
471 defer if (opt_dep_file) |*dep_file| dep_file.deinit(d.comp.gpa);
251472
252473 if (opt_dep_file) |*dep_file| pp.dep_file = dep_file;
253474
......@@ -263,7 +484,7 @@ fn translate(d: *aro.Driver, tc: *aro.Toolchain, args: []const [:0]const u8, zig
263484 defer c_tree.deinit();
264485
265486 if (d.diagnostics.errors != 0) {
266 if (fast_exit and !zig_integration) process.exit(1);
487 if (!zig_integration) process.exit(1);
267488 return error.FatalError;
268489 }
269490
......@@ -321,11 +542,107 @@ fn translate(d: *aro.Driver, tc: *aro.Toolchain, args: []const [:0]const u8, zig
321542 if (out_writer.err) |write_err|
322543 return d.fatal("failed to write result to '{s}': {s}", .{ out_file_path, aro.Driver.errorDescription(write_err) });
323544
324 if (fast_exit and !zig_integration) process.exit(0);
545 if (!module_libs) {
546 const dest_path = if (d.output_name) |path| std.fs.path.dirname(path) else null;
547 installLibs(d, dest_path) catch |err|
548 return d.fatal("failed to install library files: {s}", .{aro.Driver.errorDescription(err)});
549 }
550
551 return process.cleanExit(io);
325552}
326553
327test {
328 _ = Translator;
329 _ = @import("helpers.zig");
330 _ = @import("PatternList.zig");
554fn installLibs(d: *aro.Driver, dest_path: ?[]const u8) !void {
555 const gpa = d.comp.gpa;
556 const io = d.comp.io;
557 const cwd = Io.Dir.cwd();
558
559 const self_exe_path = try process.executableDirPathAlloc(io, gpa);
560 defer gpa.free(self_exe_path);
561
562 var cur_dir: []const u8 = self_exe_path;
563 while (std.fs.path.dirname(cur_dir)) |dirname| : (cur_dir = dirname) {
564 var base_dir = cwd.openDir(io, dirname, .{}) catch continue;
565 defer base_dir.close(io);
566
567 var lib_dir = base_dir.openDir(io, "lib", .{}) catch continue;
568 defer lib_dir.close(io);
569
570 lib_dir.access(io, "c_builtins.zig", .{}) catch continue;
571
572 {
573 const install_path = try std.fs.path.join(gpa, &.{ dest_path orelse "", "c_builtins.zig" });
574 defer gpa.free(install_path);
575 try lib_dir.copyFile("c_builtins.zig", cwd, install_path, io, .{});
576 }
577 {
578 const install_path = try std.fs.path.join(gpa, &.{ dest_path orelse "", "helpers.zig" });
579 defer gpa.free(install_path);
580 try lib_dir.copyFile("helpers.zig", cwd, install_path, io, .{});
581 }
582 return;
583 }
584 return error.FileNotFound;
585}
586
587comptime {
588 if (@import("builtin").is_test) {
589 _ = Translator;
590 _ = @import("helpers.zig");
591 _ = @import("PatternList.zig");
592 }
593}
594
595const SystemLib = struct {
596 name: []const u8,
597 options: std.Build.Module.LinkSystemLibraryOptions,
598 flags: ?[]const []const u8 = null,
599};
600
601fn runPkgConfig(
602 arena: Allocator,
603 io: Io,
604 environ_map: *const process.Environ.Map,
605 pc: *const PkgConfig,
606 system_lib: *SystemLib,
607) void {
608 const force = switch (system_lib.options.use_pkg_config) {
609 .no => unreachable,
610 .yes => false,
611 .force => true,
612 };
613
614 const lib_name = system_lib.name;
615 const pkg_config_exe = std.zig.PkgConfig.exe(environ_map);
616 const found_index = pc.find(lib_name) orelse {
617 if (force) fatal("{s}: package not found: {s}", .{ pkg_config_exe, lib_name });
618 return;
619 };
620 const pkg = pc.all[found_index];
621
622 const result = process.run(arena, io, .{
623 .argv = &.{ pkg_config_exe, pkg.name, "--cflags", "--libs" },
624 .environ_map = environ_map,
625 }) catch |err| {
626 if (force) fatal("failed running {s}: {t}", .{ pkg_config_exe, err });
627 return;
628 };
629 if (!result.term.success()) {
630 if (result.stderr.len != 0) std.log.err("{s}: {s}", .{ pkg_config_exe, result.stderr });
631 if (force) fatal("{s} {f}", .{ pkg_config_exe, result.term });
632 return;
633 }
634
635 system_lib.flags = ret: {
636 var parsed: std.ArrayList([]const u8) = .empty;
637 var arg_it = mem.tokenizeAny(u8, result.stdout, " \r\n\t");
638
639 while (arg_it.next()) |arg| {
640 parsed.append(arena, arg) catch |err| break :ret err;
641 }
642
643 parsed.shrinkToLen(arena) catch |err| break :ret err;
644 break :ret parsed.toOwnedSliceAssert();
645 } catch |err| switch (err) {
646 error.OutOfMemory => fatal("out of memory parsing pkg-config output", .{}),
647 };
331648}
lib/std/zig/c_translation/builtins.zig+128-2
......@@ -5,6 +5,12 @@ pub inline fn abs(val: c_int) c_int {
55 return if (val == std.math.minInt(c_int)) val else @intCast(@abs(val));
66}
77
8pub fn add_overflow(a: anytype, b: anytype, result: *@TypeOf(a, b)) bool {
9 const res = @addWithOverflow(a, b);
10 result.* = res[0];
11 return res[1] == 1;
12}
13
814pub inline fn assume(cond: bool) void {
915 if (!cond) unreachable;
1016}
......@@ -95,6 +101,120 @@ pub inline fn floor(val: f64) f64 {
95101 return @floor(val);
96102}
97103
104// Single argument variant is mapped to @clz
105pub inline fn elementwise_clzg(x: anytype, y: anytype) @TypeOf(x, y) {
106 switch (@typeInfo(@TypeOf(x, y))) {
107 .int => |int| {
108 const U = @Int(.unsigned, int.bits);
109 const value: U = @bitCast(x);
110 if (value == 0) return y;
111
112 const result: U = @clz(value);
113 return @bitCast(result);
114 },
115 .vector => |vector| {
116 const Elem = @Int(.unsigned, @bitSizeOf(vector.child));
117 const U = @Vector(vector.len, Elem);
118 const value: U = @bitCast(x);
119 const fallback: U = @bitCast(y);
120 const zero: U = @splat(0);
121 const count: U = @clz(value);
122 const result: U = @select(Elem, value == zero, fallback, count);
123 return @bitCast(result);
124 },
125 else => unreachable,
126 }
127}
128
129// Single argument variant is mapped to @ctz
130pub inline fn elementwise_ctzg(x: anytype, y: anytype) @TypeOf(x, y) {
131 switch (@typeInfo(@TypeOf(x, y))) {
132 .int => |int| {
133 const U = @Int(.unsigned, int.bits);
134 const value: U = @bitCast(x);
135 if (value == 0) return y;
136
137 const result: U = @ctz(value);
138 return @bitCast(result);
139 },
140 .vector => |vector| {
141 const Elem = @Int(.unsigned, @bitSizeOf(vector.child));
142 const U = @Vector(vector.len, Elem);
143 const value: U = @bitCast(x);
144 const fallback: U = @bitCast(y);
145 const zero: U = @splat(0);
146 const count: U = @ctz(value);
147 const result: U = @select(Elem, value == zero, fallback, count);
148 return @bitCast(result);
149 },
150 else => unreachable,
151 }
152}
153
154pub inline fn elementwise_fshl(a: anytype, b: anytype, c: anytype) @TypeOf(a, b, c) {
155 switch (@typeInfo(@TypeOf(a, b, c))) {
156 .int => |int| {
157 const U = @Int(.unsigned, int.bits);
158 const lhs: U = @bitCast(a);
159 const rhs: U = @bitCast(b);
160 const bits = @bitSizeOf(U);
161 const shift = @as(U, @bitCast(c)) % bits;
162 if (shift == 0) return a;
163
164 const inverse_shift: U = @as(U, bits) - shift;
165 const result: U = (lhs << @intCast(shift)) | (rhs >> @intCast(inverse_shift));
166 return @bitCast(result);
167 },
168 .vector => |vector| {
169 const Elem = @Int(.unsigned, @bitSizeOf(vector.child));
170 const U = @Vector(vector.len, Elem);
171 const lhs: U = @bitCast(a);
172 const rhs: U = @bitCast(b);
173 const bits: U = @splat(@bitSizeOf(vector.child));
174 const zero: U = @splat(0);
175 const shift = @as(U, @bitCast(c)) % bits;
176 const inverse_shift = @select(Elem, shift == zero, zero, bits - shift);
177
178 const rhs_term = @select(Elem, shift == zero, zero, rhs >> @intCast(inverse_shift));
179 const result: U = (lhs << @intCast(shift)) | rhs_term;
180 return @bitCast(result);
181 },
182 else => unreachable,
183 }
184}
185
186pub inline fn elementwise_fshr(a: anytype, b: anytype, c: anytype) @TypeOf(a, b, c) {
187 switch (@typeInfo(@TypeOf(a, b, c))) {
188 .int => |int| {
189 const U = @Int(.unsigned, int.bits);
190 const lhs: U = @bitCast(a);
191 const rhs: U = @bitCast(b);
192 const bits = @bitSizeOf(U);
193 const shift = @as(U, @bitCast(c)) % bits;
194 if (shift == 0) return b;
195
196 const inverse_shift: U = @as(U, bits) - shift;
197 const result: U = (lhs << @intCast(inverse_shift)) | (rhs >> @intCast(shift));
198 return @bitCast(result);
199 },
200 .vector => |vector| {
201 const Elem = @Int(.unsigned, @bitSizeOf(vector.child));
202 const U = @Vector(vector.len, Elem);
203 const lhs: U = @bitCast(a);
204 const rhs: U = @bitCast(b);
205 const bits: U = @splat(@bitSizeOf(vector.child));
206 const zero: U = @splat(0);
207 const shift = @as(U, @bitCast(c)) % bits;
208 const inverse_shift = @select(Elem, shift == zero, zero, bits - shift);
209
210 const lhs_term = @select(Elem, shift == zero, zero, lhs << @intCast(inverse_shift));
211 const result: U = lhs_term | (rhs >> @intCast(shift));
212 return @bitCast(result);
213 },
214 else => unreachable,
215 }
216}
217
98218pub inline fn has_builtin(func: anytype) c_int {
99219 _ = func;
100220 return @intFromBool(true);
......@@ -200,10 +320,10 @@ pub inline fn memset(dst: ?*anyopaque, val: c_int, len: usize) ?*anyopaque {
200320 return dst;
201321}
202322
203pub fn mul_overflow(a: anytype, b: anytype, result: *@TypeOf(a, b)) c_int {
323pub fn mul_overflow(a: anytype, b: anytype, result: *@TypeOf(a, b)) bool {
204324 const res = @mulWithOverflow(a, b);
205325 result.* = res[0];
206 return res[1];
326 return res[1] == 1;
207327}
208328
209329/// returns a quiet NaN. Quiet NaNs have many representations; tagp is used to select one in an
......@@ -288,6 +408,12 @@ pub inline fn strlen(s: [*c]const u8) usize {
288408 return std.mem.sliceTo(s, 0).len;
289409}
290410
411pub fn sub_overflow(a: anytype, b: anytype, result: *@TypeOf(a, b)) bool {
412 const res = @subWithOverflow(a, b);
413 result.* = res[0];
414 return res[1] == 1;
415}
416
291417pub inline fn truncf(val: f32) f32 {
292418 return @trunc(val);
293419}
lib/std/zig/c_translation/helpers.zig+9-9
......@@ -86,8 +86,8 @@ pub fn FlexibleArrayType(comptime SelfType: type, comptime ElementType: type) ty
8686 switch (@typeInfo(SelfType)) {
8787 .pointer => |ptr| {
8888 return @Pointer(.c, .{
89 .@"const" = ptr.is_const,
90 .@"volatile" = ptr.is_volatile,
89 .@"const" = ptr.attrs.@"const",
90 .@"volatile" = ptr.attrs.@"volatile",
9191 .@"allowzero" = true,
9292 .@"addrspace" = .generic,
9393 .@"align" = null,
......@@ -98,7 +98,7 @@ pub fn FlexibleArrayType(comptime SelfType: type, comptime ElementType: type) ty
9898}
9999
100100/// Promote the type of an integer literal until it fits as C would.
101pub fn promoteIntLiteral(
101pub inline fn promoteIntLiteral(
102102 comptime SuffixType: type,
103103 comptime number: comptime_int,
104104 comptime base: CIntLiteralBase,
......@@ -295,7 +295,7 @@ pub fn sizeof(target: anytype) usize {
295295 // in the .array case above, but strings remain literals
296296 // and are therefore always pointers, so they need to be
297297 // specially handled here.
298 if (ptr.size == .one and ptr.is_const and @typeInfo(ptr.child) == .array) {
298 if (ptr.size == .one and ptr.attrs.@"const" and @typeInfo(ptr.child) == .array) {
299299 const array_info = @typeInfo(ptr.child).array;
300300 if ((array_info.child == u8 or array_info.child == u16) and array_info.sentinel() == 0) {
301301 // length of the string plus one for the null terminator.
......@@ -381,7 +381,7 @@ fn L_SUFFIX_ReturnType(comptime number: anytype) type {
381381 }
382382}
383383
384pub fn L_SUFFIX(comptime number: anytype) L_SUFFIX_ReturnType(number) {
384pub inline fn L_SUFFIX(comptime number: anytype) L_SUFFIX_ReturnType(number) {
385385 switch (@typeInfo(@TypeOf(number))) {
386386 .int, .comptime_int => return promoteIntLiteral(c_long, number, .decimal),
387387 .float, .comptime_float => @compileError("TODO: c_longdouble initialization from comptime_float not supported"),
......@@ -389,19 +389,19 @@ pub fn L_SUFFIX(comptime number: anytype) L_SUFFIX_ReturnType(number) {
389389 }
390390}
391391
392pub fn LL_SUFFIX(comptime n: comptime_int) @TypeOf(promoteIntLiteral(c_longlong, n, .decimal)) {
392pub inline fn LL_SUFFIX(comptime n: comptime_int) @TypeOf(promoteIntLiteral(c_longlong, n, .decimal)) {
393393 return promoteIntLiteral(c_longlong, n, .decimal);
394394}
395395
396pub fn U_SUFFIX(comptime n: comptime_int) @TypeOf(promoteIntLiteral(c_uint, n, .decimal)) {
396pub inline fn U_SUFFIX(comptime n: comptime_int) @TypeOf(promoteIntLiteral(c_uint, n, .decimal)) {
397397 return promoteIntLiteral(c_uint, n, .decimal);
398398}
399399
400pub fn UL_SUFFIX(comptime n: comptime_int) @TypeOf(promoteIntLiteral(c_ulong, n, .decimal)) {
400pub inline fn UL_SUFFIX(comptime n: comptime_int) @TypeOf(promoteIntLiteral(c_ulong, n, .decimal)) {
401401 return promoteIntLiteral(c_ulong, n, .decimal);
402402}
403403
404pub fn ULL_SUFFIX(comptime n: comptime_int) @TypeOf(promoteIntLiteral(c_ulonglong, n, .decimal)) {
404pub inline fn ULL_SUFFIX(comptime n: comptime_int) @TypeOf(promoteIntLiteral(c_ulonglong, n, .decimal)) {
405405 return promoteIntLiteral(c_ulonglong, n, .decimal);
406406}
407407
src/Compilation.zig+2-1
......@@ -5050,7 +5050,8 @@ pub fn translateC(
50505050 var argv = std.array_list.Managed([]const u8).init(arena);
50515051 {
50525052 const target = &owner_mod.resolved_target.result;
5053 try argv.appendSlice(&.{ "--zig-integration", "-x", "c" });
5053 const zig_lib = try arena.print("--zig-lib={f}", .{comp.dirs.zig_lib});
5054 try argv.appendSlice(&.{ "--zig-integration", zig_lib, "--", "-x", "c" });
50545055
50555056 const resource_path = try comp.dirs.zig_lib.join(arena, &.{ "compiler", "aro", "include" });
50565057 try argv.appendSlice(&.{ "-isystem", resource_path });