1cb93a386Sopenharmony_ci/*
2cb93a386Sopenharmony_ci * Copyright 2017 Google Inc.
3cb93a386Sopenharmony_ci *
4cb93a386Sopenharmony_ci * Use of this source code is governed by a BSD-style license that can be
5cb93a386Sopenharmony_ci * found in the LICENSE file.
6cb93a386Sopenharmony_ci */
7cb93a386Sopenharmony_ci/*****************************************************************************************
8cb93a386Sopenharmony_ci ******************** This file was generated by sksllex. Do not edit. *******************
9cb93a386Sopenharmony_ci *****************************************************************************************/
10cb93a386Sopenharmony_ci#include "src/sksl/SkSLLexer.h"
11cb93a386Sopenharmony_ci
12cb93a386Sopenharmony_cinamespace SkSL {
13cb93a386Sopenharmony_ci
14cb93a386Sopenharmony_ciusing State = uint16_t;
15cb93a386Sopenharmony_cistatic const uint8_t INVALID_CHAR = 18;
16cb93a386Sopenharmony_cistatic const int8_t kMappings[127] = {
17cb93a386Sopenharmony_ci        0,  0,  0,  0,  0,  0,  0,  0,  0,  1,  2,  3,  3,  1,  3,  3,  3,  3,  3,  3,  3,  3,
18cb93a386Sopenharmony_ci        3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  1,  4,  3,  5,  6,  7,  8,  3,  9,  10, 11, 12,
19cb93a386Sopenharmony_ci        13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 22, 22, 23, 24, 25, 26, 27, 28, 29, 30,
20cb93a386Sopenharmony_ci        30, 31, 32, 33, 30, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 35, 36, 34, 34, 34, 34,
21cb93a386Sopenharmony_ci        37, 34, 34, 38, 3,  39, 40, 41, 3,  42, 43, 44, 45, 46, 47, 48, 49, 50, 34, 51, 52, 53,
22cb93a386Sopenharmony_ci        54, 55, 56, 34, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69};
23cb93a386Sopenharmony_cistruct IndexEntry {
24cb93a386Sopenharmony_ci    uint16_t type : 2;
25cb93a386Sopenharmony_ci    uint16_t pos : 14;
26cb93a386Sopenharmony_ci};
27cb93a386Sopenharmony_cistruct FullEntry {
28cb93a386Sopenharmony_ci    State data[70];
29cb93a386Sopenharmony_ci};
30cb93a386Sopenharmony_cistruct CompactEntry {
31cb93a386Sopenharmony_ci    State v0 : 6;
32cb93a386Sopenharmony_ci    State v1 : 9;
33cb93a386Sopenharmony_ci    State v2 : 9;
34cb93a386Sopenharmony_ci    uint8_t data[18];
35cb93a386Sopenharmony_ci};
36cb93a386Sopenharmony_cistatic constexpr FullEntry kFull[] = {
37cb93a386Sopenharmony_ci        {
38cb93a386Sopenharmony_ci                0,   2,   3,   4,   5,   7,   9,   14,  16,  19, 20,  21,  23,  26,
39cb93a386Sopenharmony_ci                27,  31,  36,  42,  57,  57,  57,  57,  57,  58, 59,  60,  64,  66,
40cb93a386Sopenharmony_ci                70,  71,  80,  80,  80,  80,  80,  80,  80,  80, 81,  82,  83,  80,
41cb93a386Sopenharmony_ci                86,  96,  101, 117, 137, 149, 165, 170, 178, 80, 202, 212, 219, 245,
42cb93a386Sopenharmony_ci                250, 266, 272, 344, 361, 377, 389, 80,  80,  80, 394, 395, 398, 399,
43cb93a386Sopenharmony_ci        },
44cb93a386Sopenharmony_ci        {
45cb93a386Sopenharmony_ci                0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0,  0, 43, 0, 51, 51, 51, 51, 51, 51, 0,
46cb93a386Sopenharmony_ci                0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0, 55, 0, 0,  0, 0,  0,  0,  0,  0,  52, 0,
47cb93a386Sopenharmony_ci                0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  0, 0, 0, 0,  0, 55, 0, 0,  0,  0,  0,  0,
48cb93a386Sopenharmony_ci        },
49cb93a386Sopenharmony_ci        {
50cb93a386Sopenharmony_ci                0,  0,   0,  0,  0,  0,  10,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,   10,
51cb93a386Sopenharmony_ci                10, 10,  10, 10, 10, 0,  0,   0,  0,  0,  0,  0,  10, 10, 10, 10, 10,  10,
52cb93a386Sopenharmony_ci                10, 10,  0,  0,  0,  10, 102, 10, 10, 10, 10, 10, 10, 10, 10, 10, 105, 10,
53cb93a386Sopenharmony_ci                10, 108, 10, 10, 10, 10, 10,  10, 10, 10, 10, 10, 0,  0,  0,  0,
54cb93a386Sopenharmony_ci        },
55cb93a386Sopenharmony_ci        {
56cb93a386Sopenharmony_ci                0,  0,   0,  0,  0,  0,  10, 0,   0,  0,  0,   0,  0,  0,  0,   0,  0,  10,
57cb93a386Sopenharmony_ci                10, 10,  10, 10, 10, 0,  0,  0,   0,  0,  0,   0,  10, 10, 10,  10, 10, 10,
58cb93a386Sopenharmony_ci                10, 10,  0,  0,  0,  10, 10, 10,  10, 10, 118, 10, 10, 10, 124, 10, 10, 10,
59cb93a386Sopenharmony_ci                10, 130, 10, 10, 10, 10, 10, 134, 10, 10, 10,  10, 0,  0,  0,   0,
60cb93a386Sopenharmony_ci        },
61cb93a386Sopenharmony_ci        {
62cb93a386Sopenharmony_ci                0,   0,  0,  0,  0,  0,  10, 0,  0,  0,   0,  0,  0,  0,  0,  0,  0,   10,
63cb93a386Sopenharmony_ci                10,  10, 10, 10, 10, 0,  0,  0,  0,  0,   0,  0,  10, 10, 10, 10, 10,  10,
64cb93a386Sopenharmony_ci                10,  10, 0,  0,  0,  10, 10, 10, 10, 10,  10, 10, 10, 10, 10, 10, 138, 10,
65cb93a386Sopenharmony_ci                141, 10, 10, 10, 10, 10, 10, 10, 10, 143, 10, 10, 0,  0,  0,  0,
66cb93a386Sopenharmony_ci        },
67cb93a386Sopenharmony_ci        {
68cb93a386Sopenharmony_ci                0,  0,   0,  0,  0,  0,  10,  0,   0,  0,  0,  0,  0,  0,  0,   0,  0,   10,
69cb93a386Sopenharmony_ci                10, 10,  10, 10, 10, 0,  0,   0,   0,  0,  0,  0,  10, 10, 10,  10, 10,  10,
70cb93a386Sopenharmony_ci                10, 10,  0,  0,  0,  10, 150, 10,  10, 10, 10, 10, 10, 10, 154, 10, 157, 10,
71cb93a386Sopenharmony_ci                10, 160, 10, 10, 10, 10, 10,  162, 10, 10, 10, 10, 0,  0,  0,   0,
72cb93a386Sopenharmony_ci        },
73cb93a386Sopenharmony_ci        {
74cb93a386Sopenharmony_ci                0,  0,   0,   0,  0,  0,   10, 0,   0,  0,  0,  0,  0,  0,  0,  0,  0,   10,
75cb93a386Sopenharmony_ci                10, 10,  10,  10, 10, 0,   0,  0,   0,  0,  0,  0,  10, 10, 10, 10, 10,  10,
76cb93a386Sopenharmony_ci                10, 10,  0,   0,  0,  10,  10, 10,  10, 10, 10, 10, 10, 10, 10, 10, 181, 10,
77cb93a386Sopenharmony_ci                10, 185, 188, 10, 10, 190, 10, 196, 10, 10, 10, 10, 0,  0,  0,  0,
78cb93a386Sopenharmony_ci        },
79cb93a386Sopenharmony_ci        {
80cb93a386Sopenharmony_ci                0,  0,  0,  0,   0,  0,  10,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  10,
81cb93a386Sopenharmony_ci                10, 10, 10, 10,  10, 0,  0,   0,  0,  0,  0,  0,  10, 10, 10, 10, 10, 10,
82cb93a386Sopenharmony_ci                10, 10, 0,  0,   0,  10, 251, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
83cb93a386Sopenharmony_ci                10, 10, 10, 255, 10, 10, 262, 10, 10, 10, 10, 10, 0,  0,  0,  0,
84cb93a386Sopenharmony_ci        },
85cb93a386Sopenharmony_ci        {
86cb93a386Sopenharmony_ci                0,  0,  0,  0,  0,  0,   10,  0,  0,   0,  0,  0,  0,  0,  0,   0,   0,  10,
87cb93a386Sopenharmony_ci                10, 10, 10, 10, 10, 0,   0,   0,  0,   0,  0,  0,  10, 10, 10,  10,  10, 10,
88cb93a386Sopenharmony_ci                10, 10, 0,  0,  0,  10,  273, 10, 10,  10, 10, 10, 10, 10, 305, 309, 10, 10,
89cb93a386Sopenharmony_ci                10, 10, 10, 10, 10, 327, 335, 10, 339, 10, 10, 10, 0,  0,  0,   0,
90cb93a386Sopenharmony_ci        },
91cb93a386Sopenharmony_ci        {
92cb93a386Sopenharmony_ci                0,   0,   0,   0,  0,  0,  10, 0,  0,  0,  0,  0,  0,  0,   0,  0,  0,  10,
93cb93a386Sopenharmony_ci                279, 286, 297, 10, 10, 0,  0,  0,  0,  0,  0,  0,  10, 302, 10, 10, 10, 10,
94cb93a386Sopenharmony_ci                10,  10,  0,   0,  0,  10, 10, 10, 10, 10, 10, 10, 10, 10,  10, 10, 10, 10,
95cb93a386Sopenharmony_ci                10,  10,  10,  10, 10, 10, 10, 10, 10, 10, 10, 10, 0,  0,   0,  0,
96cb93a386Sopenharmony_ci        },
97cb93a386Sopenharmony_ci        {
98cb93a386Sopenharmony_ci                0,  0,  0,  0,   0,  0,  10, 0,  0,  0,  0,   0,  0,  0,   0,  0,  0,  10,
99cb93a386Sopenharmony_ci                10, 10, 10, 10,  10, 0,  0,  0,  0,  0,  0,   0,  10, 10,  10, 10, 10, 10,
100cb93a386Sopenharmony_ci                10, 10, 0,  0,   0,  10, 10, 10, 10, 10, 345, 10, 10, 351, 10, 10, 10, 10,
101cb93a386Sopenharmony_ci                10, 10, 10, 353, 10, 10, 10, 10, 10, 10, 356, 10, 0,  0,   0,  0,
102cb93a386Sopenharmony_ci        },
103cb93a386Sopenharmony_ci};
104cb93a386Sopenharmony_cistatic constexpr CompactEntry kCompact[] = {
105cb93a386Sopenharmony_ci        {0, 0, 3, {60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
106cb93a386Sopenharmony_ci        {0, 0, 6, {0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
107cb93a386Sopenharmony_ci        {0, 0, 8, {0, 48, 0, 0, 0, 0, 0, 240, 255, 15, 252, 255, 255, 255, 255, 255, 15, 0}},
108cb93a386Sopenharmony_ci        {0, 0, 8, {0, 48, 0, 0, 252, 63, 0, 240, 255, 15, 252, 255, 255, 255, 255, 255, 15, 0}},
109cb93a386Sopenharmony_ci        {0, 10, 11, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
110cb93a386Sopenharmony_ci        {0, 0, 10, {0, 48, 0, 0, 252, 63, 0, 240, 255, 15, 252, 255, 255, 255, 255, 255, 15, 0}},
111cb93a386Sopenharmony_ci        {0, 10, 12, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
112cb93a386Sopenharmony_ci        {0, 10, 13, {0, 32, 0, 0, 168, 43, 0, 160, 170, 10, 168, 170, 170, 170, 170, 170, 10, 0}},
113cb93a386Sopenharmony_ci        {0, 0, 15, {0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
114cb93a386Sopenharmony_ci        {0, 17, 18, {0, 0, 2, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
115cb93a386Sopenharmony_ci        {0, 0, 22, {0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
116cb93a386Sopenharmony_ci        {0, 24, 25, {0, 0, 0, 2, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
117cb93a386Sopenharmony_ci        {28, 29, 30, {0, 0, 0, 16, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
118cb93a386Sopenharmony_ci        {0, 0, 32, {0, 0, 0, 0, 252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
119cb93a386Sopenharmony_ci        {0, 32, 33, {0, 0, 0, 0, 168, 42, 0, 0, 12, 0, 0, 48, 0, 0, 0, 0, 0, 0}},
120cb93a386Sopenharmony_ci        {0, 34, 35, {0, 0, 0, 34, 252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
121cb93a386Sopenharmony_ci        {0, 0, 35, {0, 0, 0, 0, 252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
122cb93a386Sopenharmony_ci        {37, 40, 41, {0, 0, 64, 0, 2, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
123cb93a386Sopenharmony_ci        {0,
124cb93a386Sopenharmony_ci         37,
125cb93a386Sopenharmony_ci         38,
126cb93a386Sopenharmony_ci         {168, 170, 234, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 10}},
127cb93a386Sopenharmony_ci        {0,
128cb93a386Sopenharmony_ci         37,
129cb93a386Sopenharmony_ci         39,
130cb93a386Sopenharmony_ci         {168, 170, 170, 170, 171, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 10}},
131cb93a386Sopenharmony_ci        {0,
132cb93a386Sopenharmony_ci         0,
133cb93a386Sopenharmony_ci         40,
134cb93a386Sopenharmony_ci         {204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15}},
135cb93a386Sopenharmony_ci        {0, 44, 48, {0, 0, 0, 0, 168, 42, 0, 0, 12, 0, 0, 48, 0, 0, 0, 0, 0, 0}},
136cb93a386Sopenharmony_ci        {0, 44, 45, {0, 0, 0, 0, 168, 42, 0, 0, 12, 0, 0, 48, 0, 0, 0, 0, 0, 0}},
137cb93a386Sopenharmony_ci        {0, 46, 47, {0, 0, 0, 34, 252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
138cb93a386Sopenharmony_ci        {0, 0, 47, {0, 0, 0, 0, 252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
139cb93a386Sopenharmony_ci        {0, 49, 50, {0, 0, 0, 34, 252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
140cb93a386Sopenharmony_ci        {0, 0, 50, {0, 0, 0, 0, 252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
141cb93a386Sopenharmony_ci        {43, 51, 52, {0, 0, 0, 64, 168, 42, 0, 0, 12, 0, 0, 48, 0, 0, 0, 0, 0, 0}},
142cb93a386Sopenharmony_ci        {0, 53, 54, {0, 0, 0, 34, 252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
143cb93a386Sopenharmony_ci        {0, 0, 54, {0, 0, 0, 0, 252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
144cb93a386Sopenharmony_ci        {0, 0, 56, {0, 0, 0, 0, 252, 63, 0, 240, 15, 0, 240, 255, 0, 0, 0, 0, 0, 0}},
145cb93a386Sopenharmony_ci        {0, 61, 63, {0, 0, 0, 0, 0, 0, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
146cb93a386Sopenharmony_ci        {0, 0, 62, {0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
147cb93a386Sopenharmony_ci        {0, 0, 65, {0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
148cb93a386Sopenharmony_ci        {0, 67, 68, {0, 0, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
149cb93a386Sopenharmony_ci        {0, 0, 69, {0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
150cb93a386Sopenharmony_ci        {0, 72, 74, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 48, 0, 0, 0}},
151cb93a386Sopenharmony_ci        {0, 0, 73, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 0, 0, 0, 0, 0, 0}},
152cb93a386Sopenharmony_ci        {0, 0, 75, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0}},
153cb93a386Sopenharmony_ci        {0, 0, 76, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0}},
154cb93a386Sopenharmony_ci        {0, 0, 77, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 0, 0, 0}},
155cb93a386Sopenharmony_ci        {0, 0, 78, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0}},
156cb93a386Sopenharmony_ci        {0, 0, 79, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, 0, 0}},
157cb93a386Sopenharmony_ci        {0, 84, 85, {0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0}},
158cb93a386Sopenharmony_ci        {10, 87, 89, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 85, 85, 85, 229, 85, 5, 0}},
159cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 174, 170, 170, 10, 0}},
160cb93a386Sopenharmony_ci        {0, 10, 90, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
161cb93a386Sopenharmony_ci        {0, 10, 91, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
162cb93a386Sopenharmony_ci        {0, 10, 92, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
163cb93a386Sopenharmony_ci        {0, 10, 93, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 232, 170, 170, 170, 170, 170, 10, 0}},
164cb93a386Sopenharmony_ci        {0, 10, 94, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
165cb93a386Sopenharmony_ci        {0, 10, 95, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
166cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
167cb93a386Sopenharmony_ci        {0, 10, 97, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
168cb93a386Sopenharmony_ci        {0, 10, 98, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
169cb93a386Sopenharmony_ci        {0, 10, 99, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
170cb93a386Sopenharmony_ci        {0, 10, 100, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 234, 170, 170, 170, 10, 0}},
171cb93a386Sopenharmony_ci        {0, 10, 103, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
172cb93a386Sopenharmony_ci        {10, 88, 104, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 117, 85, 85, 149, 85, 5, 0}},
173cb93a386Sopenharmony_ci        {0, 10, 106, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
174cb93a386Sopenharmony_ci        {0, 10, 107, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
175cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
176cb93a386Sopenharmony_ci        {0, 10, 109, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
177cb93a386Sopenharmony_ci        {10, 110, 112, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 85, 85, 85, 229, 85, 5, 0}},
178cb93a386Sopenharmony_ci        {0, 10, 111, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
179cb93a386Sopenharmony_ci        {0, 10, 113, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
180cb93a386Sopenharmony_ci        {0, 10, 114, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
181cb93a386Sopenharmony_ci        {0, 10, 115, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
182cb93a386Sopenharmony_ci        {0, 10, 116, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
183cb93a386Sopenharmony_ci        {0, 10, 119, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 234, 170, 170, 170, 170, 10, 0}},
184cb93a386Sopenharmony_ci        {0, 10, 120, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
185cb93a386Sopenharmony_ci        {0, 10, 121, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
186cb93a386Sopenharmony_ci        {0, 10, 122, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
187cb93a386Sopenharmony_ci        {0, 10, 123, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
188cb93a386Sopenharmony_ci        {0, 10, 125, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
189cb93a386Sopenharmony_ci        {0, 10, 126, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
190cb93a386Sopenharmony_ci        {0, 10, 127, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
191cb93a386Sopenharmony_ci        {0, 10, 128, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
192cb93a386Sopenharmony_ci        {0, 10, 129, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 174, 170, 170, 170, 170, 10, 0}},
193cb93a386Sopenharmony_ci        {0, 10, 131, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
194cb93a386Sopenharmony_ci        {0, 10, 132, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 232, 170, 170, 170, 170, 170, 10, 0}},
195cb93a386Sopenharmony_ci        {0, 10, 133, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
196cb93a386Sopenharmony_ci        {0, 10, 135, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
197cb93a386Sopenharmony_ci        {0, 10, 136, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
198cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 232, 47, 0, 160, 170, 10, 168, 170, 170, 170, 170, 170, 10, 0}},
199cb93a386Sopenharmony_ci        {0, 10, 139, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
200cb93a386Sopenharmony_ci        {0, 10, 140, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
201cb93a386Sopenharmony_ci        {0, 10, 142, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
202cb93a386Sopenharmony_ci        {0, 10, 144, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
203cb93a386Sopenharmony_ci        {0, 10, 145, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
204cb93a386Sopenharmony_ci        {0, 10, 146, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
205cb93a386Sopenharmony_ci        {0, 10, 147, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
206cb93a386Sopenharmony_ci        {0, 10, 148, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
207cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
208cb93a386Sopenharmony_ci        {0, 10, 151, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
209cb93a386Sopenharmony_ci        {0, 10, 152, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
210cb93a386Sopenharmony_ci        {0, 10, 153, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
211cb93a386Sopenharmony_ci        {0, 10, 155, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 234, 10, 0}},
212cb93a386Sopenharmony_ci        {0, 10, 156, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
213cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 174, 170, 170, 170, 170, 10, 0}},
214cb93a386Sopenharmony_ci        {0, 10, 158, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
215cb93a386Sopenharmony_ci        {0, 10, 159, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
216cb93a386Sopenharmony_ci        {0, 10, 161, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
217cb93a386Sopenharmony_ci        {0, 10, 163, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
218cb93a386Sopenharmony_ci        {0, 10, 164, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
219cb93a386Sopenharmony_ci        {10, 166, 168, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 85, 85, 214, 85, 85, 5, 0}},
220cb93a386Sopenharmony_ci        {0, 10, 167, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 172, 170, 170, 170, 170, 170, 10, 0}},
221cb93a386Sopenharmony_ci        {0, 0, 167, {0, 48, 0, 0, 252, 63, 0, 240, 255, 15, 252, 255, 255, 255, 255, 255, 15, 0}},
222cb93a386Sopenharmony_ci        {0, 10, 169, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
223cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 234, 170, 170, 10, 0}},
224cb93a386Sopenharmony_ci        {10, 171, 175, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 85, 101, 85, 85, 93, 5, 0}},
225cb93a386Sopenharmony_ci        {0, 10, 172, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 171, 170, 170, 170, 10, 0}},
226cb93a386Sopenharmony_ci        {0, 10, 173, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 174, 170, 170, 170, 10, 0}},
227cb93a386Sopenharmony_ci        {0, 10, 174, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
228cb93a386Sopenharmony_ci        {0, 10, 176, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
229cb93a386Sopenharmony_ci        {0, 10, 177, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
230cb93a386Sopenharmony_ci        {10, 179, 180, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 149, 85, 117, 85, 85, 5, 0}},
231cb93a386Sopenharmony_ci        {0, 10, 182, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
232cb93a386Sopenharmony_ci        {0, 10, 183, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
233cb93a386Sopenharmony_ci        {0, 10, 184, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
234cb93a386Sopenharmony_ci        {0, 10, 186, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
235cb93a386Sopenharmony_ci        {0, 10, 187, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
236cb93a386Sopenharmony_ci        {0, 10, 189, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
237cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
238cb93a386Sopenharmony_ci        {0, 10, 191, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
239cb93a386Sopenharmony_ci        {0, 10, 192, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
240cb93a386Sopenharmony_ci        {0, 10, 193, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 234, 170, 170, 170, 170, 10, 0}},
241cb93a386Sopenharmony_ci        {0, 10, 194, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
242cb93a386Sopenharmony_ci        {0, 10, 195, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
243cb93a386Sopenharmony_ci        {0, 10, 197, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
244cb93a386Sopenharmony_ci        {0, 10, 198, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
245cb93a386Sopenharmony_ci        {0, 10, 199, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
246cb93a386Sopenharmony_ci        {0, 10, 200, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
247cb93a386Sopenharmony_ci        {0, 10, 201, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
248cb93a386Sopenharmony_ci        {10, 203, 208, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 100, 85, 85, 213, 85, 85, 5, 0}},
249cb93a386Sopenharmony_ci        {0, 10, 204, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 170, 11, 0}},
250cb93a386Sopenharmony_ci        {0, 10, 205, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 234, 170, 170, 10, 0}},
251cb93a386Sopenharmony_ci        {0, 10, 206, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
252cb93a386Sopenharmony_ci        {0, 10, 207, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
253cb93a386Sopenharmony_ci        {10, 209, 210, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 85, 85, 101, 85, 117, 5, 0}},
254cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 171, 170, 170, 170, 10, 0}},
255cb93a386Sopenharmony_ci        {0, 10, 211, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
256cb93a386Sopenharmony_ci        {0, 10, 213, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
257cb93a386Sopenharmony_ci        {0, 10, 214, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 174, 170, 170, 170, 170, 10, 0}},
258cb93a386Sopenharmony_ci        {0, 10, 215, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
259cb93a386Sopenharmony_ci        {0, 10, 216, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
260cb93a386Sopenharmony_ci        {0, 10, 217, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 174, 170, 170, 10, 0}},
261cb93a386Sopenharmony_ci        {0, 10, 218, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
262cb93a386Sopenharmony_ci        {10, 220, 227, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 100, 85, 85, 213, 85, 85, 5, 0}},
263cb93a386Sopenharmony_ci        {0, 10, 221, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 174, 170, 170, 10, 0}},
264cb93a386Sopenharmony_ci        {0, 10, 222, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
265cb93a386Sopenharmony_ci        {0, 10, 223, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
266cb93a386Sopenharmony_ci        {0, 10, 224, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
267cb93a386Sopenharmony_ci        {0, 10, 225, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
268cb93a386Sopenharmony_ci        {0, 10, 226, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
269cb93a386Sopenharmony_ci        {10, 228, 234, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 85, 101, 85, 87, 85, 5, 0}},
270cb93a386Sopenharmony_ci        {0, 10, 229, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
271cb93a386Sopenharmony_ci        {0, 10, 230, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
272cb93a386Sopenharmony_ci        {0, 10, 231, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
273cb93a386Sopenharmony_ci        {0, 10, 232, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
274cb93a386Sopenharmony_ci        {0, 10, 233, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
275cb93a386Sopenharmony_ci        {0, 10, 235, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
276cb93a386Sopenharmony_ci        {0, 10, 236, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
277cb93a386Sopenharmony_ci        {0, 10, 237, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
278cb93a386Sopenharmony_ci        {0, 10, 238, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
279cb93a386Sopenharmony_ci        {0, 10, 239, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
280cb93a386Sopenharmony_ci        {0, 10, 240, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
281cb93a386Sopenharmony_ci        {0, 10, 241, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
282cb93a386Sopenharmony_ci        {0, 10, 242, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
283cb93a386Sopenharmony_ci        {0, 10, 243, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 174, 10, 0}},
284cb93a386Sopenharmony_ci        {0, 10, 244, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
285cb93a386Sopenharmony_ci        {0, 10, 246, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
286cb93a386Sopenharmony_ci        {0, 10, 247, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
287cb93a386Sopenharmony_ci        {0, 10, 248, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
288cb93a386Sopenharmony_ci        {0, 10, 249, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
289cb93a386Sopenharmony_ci        {0, 10, 252, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
290cb93a386Sopenharmony_ci        {0, 10, 253, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 234, 170, 170, 170, 10, 0}},
291cb93a386Sopenharmony_ci        {0, 10, 254, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
292cb93a386Sopenharmony_ci        {0, 10, 256, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
293cb93a386Sopenharmony_ci        {0, 10, 257, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
294cb93a386Sopenharmony_ci        {0, 10, 258, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
295cb93a386Sopenharmony_ci        {0, 10, 259, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
296cb93a386Sopenharmony_ci        {0, 10, 260, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
297cb93a386Sopenharmony_ci        {0, 10, 261, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 234, 170, 170, 10, 0}},
298cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
299cb93a386Sopenharmony_ci        {0, 10, 263, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 232, 170, 170, 170, 170, 170, 10, 0}},
300cb93a386Sopenharmony_ci        {0, 10, 264, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
301cb93a386Sopenharmony_ci        {0, 10, 265, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
302cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
303cb93a386Sopenharmony_ci        {0, 10, 267, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
304cb93a386Sopenharmony_ci        {0, 10, 268, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
305cb93a386Sopenharmony_ci        {0, 10, 269, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
306cb93a386Sopenharmony_ci        {0, 10, 270, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
307cb93a386Sopenharmony_ci        {0, 10, 271, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
308cb93a386Sopenharmony_ci        {0, 10, 274, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 174, 170, 170, 10, 0}},
309cb93a386Sopenharmony_ci        {0, 10, 275, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
310cb93a386Sopenharmony_ci        {0, 10, 276, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
311cb93a386Sopenharmony_ci        {0, 10, 277, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
312cb93a386Sopenharmony_ci        {0, 10, 278, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
313cb93a386Sopenharmony_ci        {0, 10, 280, {0, 32, 0, 0, 168, 42, 0, 160, 171, 10, 168, 170, 170, 170, 170, 170, 10, 0}},
314cb93a386Sopenharmony_ci        {0, 10, 281, {0, 32, 0, 0, 168, 42, 0, 160, 170, 11, 168, 170, 170, 170, 170, 170, 10, 0}},
315cb93a386Sopenharmony_ci        {0, 10, 282, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 174, 170, 170, 170, 10, 0}},
316cb93a386Sopenharmony_ci        {0, 10, 283, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
317cb93a386Sopenharmony_ci        {0, 10, 284, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 174, 170, 170, 170, 170, 10, 0}},
318cb93a386Sopenharmony_ci        {0, 10, 285, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 234, 170, 170, 10, 0}},
319cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 186, 10, 0}},
320cb93a386Sopenharmony_ci        {0, 10, 287, {0, 32, 0, 0, 168, 42, 0, 160, 171, 10, 168, 170, 170, 170, 170, 170, 10, 0}},
321cb93a386Sopenharmony_ci        {10, 281, 288, {0, 16, 0, 0, 84, 21, 0, 80, 213, 6, 84, 85, 85, 85, 85, 85, 5, 0}},
322cb93a386Sopenharmony_ci        {0, 10, 289, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
323cb93a386Sopenharmony_ci        {0, 10, 290, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
324cb93a386Sopenharmony_ci        {0, 10, 291, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
325cb93a386Sopenharmony_ci        {0, 10, 292, {0, 32, 0, 0, 168, 42, 0, 160, 170, 11, 168, 170, 170, 170, 170, 170, 10, 0}},
326cb93a386Sopenharmony_ci        {0, 10, 293, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 174, 170, 170, 170, 10, 0}},
327cb93a386Sopenharmony_ci        {0, 10, 294, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
328cb93a386Sopenharmony_ci        {0, 10, 295, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 174, 170, 170, 170, 170, 10, 0}},
329cb93a386Sopenharmony_ci        {0, 10, 296, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 234, 170, 170, 10, 0}},
330cb93a386Sopenharmony_ci        {0, 10, 298, {0, 32, 0, 0, 168, 42, 0, 160, 171, 10, 168, 170, 170, 170, 170, 170, 10, 0}},
331cb93a386Sopenharmony_ci        {0, 10, 299, {0, 32, 0, 0, 168, 42, 0, 160, 234, 10, 168, 170, 170, 170, 170, 170, 10, 0}},
332cb93a386Sopenharmony_ci        {0, 10, 300, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
333cb93a386Sopenharmony_ci        {0, 10, 301, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
334cb93a386Sopenharmony_ci        {0, 10, 303, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
335cb93a386Sopenharmony_ci        {0, 10, 304, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 232, 170, 170, 170, 170, 170, 10, 0}},
336cb93a386Sopenharmony_ci        {0, 10, 306, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 170, 14, 0}},
337cb93a386Sopenharmony_ci        {0, 10, 307, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
338cb93a386Sopenharmony_ci        {0, 10, 308, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 234, 170, 170, 10, 0}},
339cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 234, 170, 170, 170, 170, 10, 0}},
340cb93a386Sopenharmony_ci        {0, 10, 310, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 172, 170, 170, 170, 170, 170, 10, 0}},
341cb93a386Sopenharmony_ci        {0, 10, 311, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 174, 170, 170, 170, 10, 0}},
342cb93a386Sopenharmony_ci        {0, 10, 312, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
343cb93a386Sopenharmony_ci        {0, 10, 313, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
344cb93a386Sopenharmony_ci        {0, 10, 314, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 172, 170, 170, 170, 170, 170, 10, 0}},
345cb93a386Sopenharmony_ci        {0, 10, 315, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
346cb93a386Sopenharmony_ci        {0, 10, 316, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
347cb93a386Sopenharmony_ci        {0, 10, 317, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 174, 170, 170, 170, 170, 10, 0}},
348cb93a386Sopenharmony_ci        {0, 10, 318, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
349cb93a386Sopenharmony_ci        {0, 10, 319, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 172, 170, 170, 170, 170, 170, 10, 0}},
350cb93a386Sopenharmony_ci        {0, 10, 320, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
351cb93a386Sopenharmony_ci        {0, 10, 321, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 234, 170, 170, 170, 170, 10, 0}},
352cb93a386Sopenharmony_ci        {0, 10, 322, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 234, 170, 170, 170, 170, 10, 0}},
353cb93a386Sopenharmony_ci        {0, 10, 323, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
354cb93a386Sopenharmony_ci        {0, 10, 324, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
355cb93a386Sopenharmony_ci        {0, 10, 325, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
356cb93a386Sopenharmony_ci        {0, 10, 326, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 186, 170, 10, 0}},
357cb93a386Sopenharmony_ci        {10, 328, 331, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 100, 85, 85, 85, 93, 85, 5, 0}},
358cb93a386Sopenharmony_ci        {0, 10, 329, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
359cb93a386Sopenharmony_ci        {0, 10, 330, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
360cb93a386Sopenharmony_ci        {0, 10, 332, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
361cb93a386Sopenharmony_ci        {0, 10, 333, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
362cb93a386Sopenharmony_ci        {0, 10, 334, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
363cb93a386Sopenharmony_ci        {0, 10, 336, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
364cb93a386Sopenharmony_ci        {0, 10, 337, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
365cb93a386Sopenharmony_ci        {0, 10, 338, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
366cb93a386Sopenharmony_ci        {0, 10, 88, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
367cb93a386Sopenharmony_ci        {0, 10, 340, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
368cb93a386Sopenharmony_ci        {0, 10, 341, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
369cb93a386Sopenharmony_ci        {0, 10, 342, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 171, 170, 170, 170, 170, 10, 0}},
370cb93a386Sopenharmony_ci        {0, 10, 343, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 174, 170, 170, 170, 10, 0}},
371cb93a386Sopenharmony_ci        {0, 10, 346, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 174, 170, 170, 10, 0}},
372cb93a386Sopenharmony_ci        {0, 10, 347, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
373cb93a386Sopenharmony_ci        {0, 10, 348, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
374cb93a386Sopenharmony_ci        {0, 10, 349, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
375cb93a386Sopenharmony_ci        {0, 10, 350, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
376cb93a386Sopenharmony_ci        {0, 10, 352, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
377cb93a386Sopenharmony_ci        {0, 10, 354, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 171, 10, 0}},
378cb93a386Sopenharmony_ci        {0, 10, 355, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
379cb93a386Sopenharmony_ci        {0, 10, 357, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 171, 170, 10, 0}},
380cb93a386Sopenharmony_ci        {0, 10, 358, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
381cb93a386Sopenharmony_ci        {0, 10, 359, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 174, 170, 170, 170, 170, 10, 0}},
382cb93a386Sopenharmony_ci        {0, 10, 360, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
383cb93a386Sopenharmony_ci        {10, 362, 374, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 85, 85, 101, 117, 85, 5, 0}},
384cb93a386Sopenharmony_ci        {10, 363, 369, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 85, 101, 85, 117, 85, 5, 0}},
385cb93a386Sopenharmony_ci        {10, 364, 368, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 84, 149, 85, 213, 85, 85, 5, 0}},
386cb93a386Sopenharmony_ci        {0, 10, 365, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 234, 170, 170, 10, 0}},
387cb93a386Sopenharmony_ci        {0, 10, 366, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
388cb93a386Sopenharmony_ci        {0, 10, 367, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 174, 170, 170, 10, 0}},
389cb93a386Sopenharmony_ci        {0, 10, 370, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
390cb93a386Sopenharmony_ci        {0, 10, 371, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 171, 170, 170, 170, 10, 0}},
391cb93a386Sopenharmony_ci        {0, 10, 372, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
392cb93a386Sopenharmony_ci        {0, 10, 373, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
393cb93a386Sopenharmony_ci        {0, 10, 375, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
394cb93a386Sopenharmony_ci        {0, 10, 376, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
395cb93a386Sopenharmony_ci        {10, 378, 383, {0, 16, 0, 0, 84, 21, 0, 80, 85, 5, 100, 85, 85, 213, 85, 85, 5, 0}},
396cb93a386Sopenharmony_ci        {0, 10, 379, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 174, 170, 10, 0}},
397cb93a386Sopenharmony_ci        {0, 10, 380, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 170, 170, 11, 0}},
398cb93a386Sopenharmony_ci        {0, 10, 381, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
399cb93a386Sopenharmony_ci        {0, 10, 382, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 186, 170, 170, 10, 0}},
400cb93a386Sopenharmony_ci        {0, 10, 384, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
401cb93a386Sopenharmony_ci        {0, 10, 385, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 184, 170, 170, 170, 170, 170, 10, 0}},
402cb93a386Sopenharmony_ci        {0, 10, 386, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 170, 234, 170, 10, 0}},
403cb93a386Sopenharmony_ci        {0, 10, 387, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
404cb93a386Sopenharmony_ci        {0, 10, 388, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
405cb93a386Sopenharmony_ci        {0, 10, 390, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 174, 170, 170, 170, 10, 0}},
406cb93a386Sopenharmony_ci        {0, 10, 391, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 186, 170, 170, 170, 10, 0}},
407cb93a386Sopenharmony_ci        {0, 10, 392, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 170, 170, 171, 170, 170, 10, 0}},
408cb93a386Sopenharmony_ci        {0, 10, 393, {0, 32, 0, 0, 168, 42, 0, 160, 170, 10, 168, 186, 170, 170, 170, 170, 10, 0}},
409cb93a386Sopenharmony_ci        {0, 396, 397, {0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 0}},
410cb93a386Sopenharmony_ci};
411cb93a386Sopenharmony_cistatic constexpr IndexEntry kIndices[] = {
412cb93a386Sopenharmony_ci        {0, 0},   {1, 0},   {2, 0},   {2, 0},   {0, 0},   {2, 1},   {0, 0},   {2, 2},   {2, 3},
413cb93a386Sopenharmony_ci        {2, 4},   {2, 5},   {2, 6},   {2, 7},   {2, 5},   {2, 8},   {0, 0},   {2, 9},   {0, 0},
414cb93a386Sopenharmony_ci        {0, 0},   {0, 0},   {0, 0},   {2, 10},  {0, 0},   {2, 11},  {0, 0},   {0, 0},   {0, 0},
415cb93a386Sopenharmony_ci        {2, 12},  {0, 0},   {0, 0},   {0, 0},   {2, 13},  {2, 14},  {2, 15},  {2, 16},  {2, 16},
416cb93a386Sopenharmony_ci        {2, 17},  {2, 18},  {2, 19},  {0, 0},   {2, 20},  {0, 0},   {1, 1},   {2, 21},  {2, 22},
417cb93a386Sopenharmony_ci        {2, 23},  {2, 24},  {2, 24},  {2, 25},  {2, 26},  {2, 26},  {2, 27},  {2, 28},  {2, 29},
418cb93a386Sopenharmony_ci        {2, 29},  {2, 30},  {2, 30},  {2, 27},  {0, 0},   {0, 0},   {2, 31},  {2, 32},  {0, 0},
419cb93a386Sopenharmony_ci        {0, 0},   {2, 33},  {0, 0},   {2, 34},  {0, 0},   {2, 35},  {0, 0},   {0, 0},   {2, 36},
420cb93a386Sopenharmony_ci        {2, 37},  {0, 0},   {2, 38},  {2, 39},  {2, 40},  {2, 41},  {2, 42},  {0, 0},   {2, 5},
421cb93a386Sopenharmony_ci        {0, 0},   {0, 0},   {2, 43},  {0, 0},   {0, 0},   {2, 44},  {2, 45},  {2, 5},   {2, 46},
422cb93a386Sopenharmony_ci        {2, 47},  {2, 48},  {2, 49},  {2, 50},  {2, 51},  {2, 52},  {2, 53},  {2, 54},  {2, 55},
423cb93a386Sopenharmony_ci        {2, 56},  {2, 5},   {1, 2},   {2, 57},  {2, 58},  {2, 5},   {2, 59},  {2, 60},  {2, 61},
424cb93a386Sopenharmony_ci        {2, 62},  {2, 63},  {2, 64},  {2, 5},   {2, 65},  {2, 66},  {2, 67},  {2, 68},  {2, 5},
425cb93a386Sopenharmony_ci        {1, 3},   {2, 69},  {2, 70},  {2, 71},  {2, 72},  {2, 73},  {2, 5},   {2, 74},  {2, 75},
426cb93a386Sopenharmony_ci        {2, 76},  {2, 77},  {2, 78},  {2, 5},   {2, 79},  {2, 80},  {2, 81},  {2, 52},  {2, 82},
427cb93a386Sopenharmony_ci        {2, 83},  {2, 84},  {1, 4},   {2, 85},  {2, 86},  {2, 5},   {2, 87},  {2, 45},  {2, 88},
428cb93a386Sopenharmony_ci        {2, 89},  {2, 90},  {2, 91},  {2, 92},  {2, 93},  {1, 5},   {2, 94},  {2, 95},  {2, 96},
429cb93a386Sopenharmony_ci        {2, 5},   {2, 97},  {2, 98},  {2, 99},  {2, 100}, {2, 101}, {2, 5},   {2, 102}, {2, 5},
430cb93a386Sopenharmony_ci        {2, 103}, {2, 104}, {2, 84},  {2, 105}, {2, 106}, {2, 107}, {2, 108}, {2, 109}, {2, 110},
431cb93a386Sopenharmony_ci        {2, 111}, {2, 112}, {2, 113}, {2, 5},   {2, 114}, {2, 115}, {2, 84},  {2, 116}, {2, 5},
432cb93a386Sopenharmony_ci        {1, 6},   {2, 117}, {2, 118}, {2, 119}, {2, 5},   {2, 120}, {2, 121}, {2, 5},   {2, 122},
433cb93a386Sopenharmony_ci        {2, 123}, {2, 124}, {2, 125}, {2, 126}, {2, 127}, {2, 128}, {2, 52},  {2, 129}, {2, 130},
434cb93a386Sopenharmony_ci        {2, 131}, {2, 132}, {2, 133}, {2, 123}, {2, 134}, {2, 135}, {2, 136}, {2, 137}, {2, 138},
435cb93a386Sopenharmony_ci        {2, 5},   {2, 139}, {2, 140}, {2, 141}, {2, 5},   {2, 142}, {2, 143}, {2, 144}, {2, 145},
436cb93a386Sopenharmony_ci        {2, 146}, {2, 147}, {2, 5},   {2, 148}, {2, 149}, {2, 150}, {2, 151}, {2, 152}, {2, 153},
437cb93a386Sopenharmony_ci        {2, 154}, {2, 52},  {2, 155}, {2, 156}, {2, 157}, {2, 158}, {2, 159}, {2, 160}, {2, 5},
438cb93a386Sopenharmony_ci        {2, 161}, {2, 162}, {2, 163}, {2, 164}, {2, 165}, {2, 166}, {2, 167}, {2, 168}, {2, 169},
439cb93a386Sopenharmony_ci        {2, 170}, {2, 5},   {2, 171}, {2, 172}, {2, 173}, {2, 174}, {2, 123}, {1, 7},   {2, 175},
440cb93a386Sopenharmony_ci        {2, 176}, {2, 177}, {2, 99},  {2, 178}, {2, 179}, {2, 180}, {2, 181}, {2, 182}, {2, 183},
441cb93a386Sopenharmony_ci        {2, 184}, {2, 185}, {2, 186}, {2, 187}, {2, 188}, {2, 189}, {2, 190}, {2, 191}, {2, 192},
442cb93a386Sopenharmony_ci        {2, 193}, {2, 5},   {1, 8},   {2, 194}, {2, 195}, {2, 196}, {2, 197}, {2, 198}, {1, 9},
443cb93a386Sopenharmony_ci        {2, 199}, {2, 200}, {2, 201}, {2, 202}, {2, 203}, {2, 204}, {2, 205}, {2, 206}, {2, 207},
444cb93a386Sopenharmony_ci        {2, 208}, {2, 209}, {2, 210}, {2, 211}, {2, 212}, {2, 213}, {2, 214}, {2, 215}, {2, 205},
445cb93a386Sopenharmony_ci        {2, 216}, {2, 217}, {2, 218}, {2, 219}, {2, 123}, {2, 220}, {2, 221}, {2, 52},  {2, 222},
446cb93a386Sopenharmony_ci        {2, 223}, {2, 224}, {2, 225}, {2, 226}, {2, 227}, {2, 228}, {2, 229}, {2, 230}, {2, 231},
447cb93a386Sopenharmony_ci        {2, 232}, {2, 233}, {2, 234}, {2, 235}, {2, 236}, {2, 237}, {2, 238}, {2, 239}, {2, 240},
448cb93a386Sopenharmony_ci        {2, 241}, {2, 242}, {2, 5},   {2, 243}, {2, 244}, {2, 245}, {2, 188}, {2, 246}, {2, 247},
449cb93a386Sopenharmony_ci        {2, 248}, {2, 5},   {2, 249}, {2, 250}, {2, 251}, {2, 252}, {2, 253}, {2, 254}, {2, 255},
450cb93a386Sopenharmony_ci        {2, 256}, {2, 5},   {1, 10},  {2, 257}, {2, 258}, {2, 259}, {2, 260}, {2, 261}, {2, 52},
451cb93a386Sopenharmony_ci        {2, 262}, {2, 61},  {2, 263}, {2, 264}, {2, 5},   {2, 265}, {2, 266}, {2, 267}, {2, 268},
452cb93a386Sopenharmony_ci        {2, 225}, {2, 269}, {2, 270}, {2, 271}, {2, 272}, {2, 273}, {2, 274}, {2, 5},   {2, 184},
453cb93a386Sopenharmony_ci        {2, 275}, {2, 276}, {2, 277}, {2, 278}, {2, 99},  {2, 279}, {2, 280}, {2, 140}, {2, 281},
454cb93a386Sopenharmony_ci        {2, 282}, {2, 283}, {2, 284}, {2, 285}, {2, 140}, {2, 286}, {2, 287}, {2, 288}, {2, 289},
455cb93a386Sopenharmony_ci        {2, 290}, {2, 52},  {2, 291}, {2, 292}, {2, 293}, {2, 294}, {2, 5},   {0, 0},   {2, 295},
456cb93a386Sopenharmony_ci        {0, 0},   {0, 0},   {0, 0},   {0, 0},
457cb93a386Sopenharmony_ci};
458cb93a386Sopenharmony_ciState get_transition(int transition, int state) {
459cb93a386Sopenharmony_ci    IndexEntry index = kIndices[state];
460cb93a386Sopenharmony_ci    if (index.type == 0) {
461cb93a386Sopenharmony_ci        return 0;
462cb93a386Sopenharmony_ci    }
463cb93a386Sopenharmony_ci    if (index.type == 1) {
464cb93a386Sopenharmony_ci        return kFull[index.pos].data[transition];
465cb93a386Sopenharmony_ci    }
466cb93a386Sopenharmony_ci    const CompactEntry& entry = kCompact[index.pos];
467cb93a386Sopenharmony_ci    int value = entry.data[transition >> 2];
468cb93a386Sopenharmony_ci    value >>= 2 * (transition & 3);
469cb93a386Sopenharmony_ci    value &= 3;
470cb93a386Sopenharmony_ci    State table[] = {0, entry.v0, entry.v1, entry.v2};
471cb93a386Sopenharmony_ci    return table[value];
472cb93a386Sopenharmony_ci}
473cb93a386Sopenharmony_cistatic const int8_t kAccepts[400] = {
474cb93a386Sopenharmony_ci        -1, -1, 84, 84, 87, 62, 67, 87, 37, 36, 36, 36, 36, 34, 52, 76, 57, 61, 81, 38, 39, 50, 74,
475cb93a386Sopenharmony_ci        48, 46, 72, 45, 49, 47, 73, 83, 44, 1,  -1, -1, 1,  51, -1, -1, 86, 85, 75, 2,  1,  1,  -1,
476cb93a386Sopenharmony_ci        -1, 1,  -1, -1, 1,  2,  -1, -1, 1,  -1, 2,  2,  64, 82, 69, 53, 77, 71, 65, 66, 68, 70, 54,
477cb93a386Sopenharmony_ci        78, 63, 87, -1, 6,  -1, -1, -1, -1, -1, 12, 36, 42, 43, 56, 80, 60, 36, 36, 35, 36, 36, 36,
478cb93a386Sopenharmony_ci        36, 36, 36, 36, 36, 36, 36, 36, 15, 36, 36, 36, 13, 36, 36, 36, 36, 36, 36, 23, 36, 36, 36,
479cb93a386Sopenharmony_ci        36, 16, 36, 36, 36, 36, 36, 36, 14, 36, 36, 36, 36, 36, 17, 10, 36, 36, 36, 36, 36, 36, 36,
480cb93a386Sopenharmony_ci        36, 36, 7,  36, 36, 36, 36, 36, 36, 35, 36, 36, 36, 36, 36, 4,  36, 36, 36, 36, 36, 24, 36,
481cb93a386Sopenharmony_ci        8,  36, 36, 36, 36, 36, 35, 36, 36, 36, 36, 36, 36, 31, 36, 36, 36, 36, 5,  19, 36, 36, 36,
482cb93a386Sopenharmony_ci        26, 36, 36, 21, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
483cb93a386Sopenharmony_ci        30, 36, 36, 36, 33, 36, 36, 36, 36, 36, 36, 32, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
484cb93a386Sopenharmony_ci        36, 36, 36, 27, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 25, 36, 36, 20, 36, 36, 36, 36, 36,
485cb93a386Sopenharmony_ci        36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 18, 36, 36, 36, 36,
486cb93a386Sopenharmony_ci        36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
487cb93a386Sopenharmony_ci        36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
488cb93a386Sopenharmony_ci        36, 36, 36, 36, 28, 36, 36, 36, 36, 36, 36, 36, 29, 36, 36, 36, 36, 36, 36, 36, 36, 11, 36,
489cb93a386Sopenharmony_ci        36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 3,  36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 22,
490cb93a386Sopenharmony_ci        36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
491cb93a386Sopenharmony_ci        36, 36, 9,  40, 55, 79, 59, 41, 58,
492cb93a386Sopenharmony_ci};
493cb93a386Sopenharmony_ci
494cb93a386Sopenharmony_ciToken Lexer::next() {
495cb93a386Sopenharmony_ci    // note that we cheat here: normally a lexer needs to worry about the case
496cb93a386Sopenharmony_ci    // where a token has a prefix which is not itself a valid token - for instance,
497cb93a386Sopenharmony_ci    // maybe we have a valid token 'while', but 'w', 'wh', etc. are not valid
498cb93a386Sopenharmony_ci    // tokens. Our grammar doesn't have this property, so we can simplify the logic
499cb93a386Sopenharmony_ci    // a bit.
500cb93a386Sopenharmony_ci    int32_t startOffset = fOffset;
501cb93a386Sopenharmony_ci    if (startOffset == (int32_t)fText.length()) {
502cb93a386Sopenharmony_ci        return Token(Token::Kind::TK_END_OF_FILE, startOffset, 0, fLine);
503cb93a386Sopenharmony_ci    }
504cb93a386Sopenharmony_ci    State state = 1;
505cb93a386Sopenharmony_ci    for (;;) {
506cb93a386Sopenharmony_ci        if (fOffset >= (int32_t)fText.length()) {
507cb93a386Sopenharmony_ci            if (kAccepts[state] == -1) {
508cb93a386Sopenharmony_ci                return Token(Token::Kind::TK_END_OF_FILE, startOffset, 0, fLine);
509cb93a386Sopenharmony_ci            }
510cb93a386Sopenharmony_ci            break;
511cb93a386Sopenharmony_ci        }
512cb93a386Sopenharmony_ci        uint8_t c = (uint8_t)fText[fOffset];
513cb93a386Sopenharmony_ci        if (c <= 8 || c >= 127) {
514cb93a386Sopenharmony_ci            c = INVALID_CHAR;
515cb93a386Sopenharmony_ci        }
516cb93a386Sopenharmony_ci        State newState = get_transition(kMappings[c], state);
517cb93a386Sopenharmony_ci        if (!newState) {
518cb93a386Sopenharmony_ci            break;
519cb93a386Sopenharmony_ci        }
520cb93a386Sopenharmony_ci        state = newState;
521cb93a386Sopenharmony_ci        ++fOffset;
522cb93a386Sopenharmony_ci        if (c == '\n') {
523cb93a386Sopenharmony_ci            ++fLine;
524cb93a386Sopenharmony_ci        }
525cb93a386Sopenharmony_ci    }
526cb93a386Sopenharmony_ci    Token::Kind kind = (Token::Kind)kAccepts[state];
527cb93a386Sopenharmony_ci    return Token(kind, startOffset, fOffset - startOffset, fLine);
528cb93a386Sopenharmony_ci}
529cb93a386Sopenharmony_ci
530cb93a386Sopenharmony_ci}  // namespace SkSL
531