xref: /aosp_15_r20/external/skia/src/sksl/SkSLLexer.cpp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1 /*
2  * Copyright 2017 Google Inc.
3  *
4  * Use of this source code is governed by a BSD-style license that can be
5  * found in the LICENSE file.
6  */
7 /*****************************************************************************************
8  ******************** This file was generated by sksllex. Do not edit. *******************
9  *****************************************************************************************/
10 #include "src/sksl/SkSLLexer.h"
11 
12 namespace SkSL {
13 
14 using State = uint16_t;
15 static constexpr uint8_t kInvalidChar = 18;
16 static constexpr uint8_t kMappings[118] = {
17         1,  2,  3,  3,  1,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,
18         3,  3,  3,  1,  4,  3,  5,  6,  7,  8,  3,  9,  10, 11, 12, 13, 14, 15, 16, 17,
19         18, 19, 20, 21, 22, 22, 22, 23, 23, 24, 25, 26, 27, 28, 29, 3,  30, 31, 32, 33,
20         34, 35, 36, 36, 37, 36, 36, 36, 38, 36, 36, 36, 36, 39, 40, 36, 41, 36, 36, 42,
21         36, 36, 43, 3,  44, 45, 46, 3,  47, 48, 49, 50, 51, 52, 53, 54, 55, 36, 56, 57,
22         58, 59, 60, 61, 36, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
23 };
24 using IndexEntry = int16_t;
25 struct FullEntry {
26     State data[75];
27 };
28 struct CompactEntry {
29     uint32_t values;
30     uint8_t data[19];
31 };
32 static constexpr FullEntry kFull[] = {
33         {
34                 0,   2,   3,   4,   5,   7,   9,   23,  25,  28,  29,  30,  32,  35,  36,
35                 39,  44,  50,  69,  69,  69,  69,  69,  69,  71,  72,  73,  77,  79,  83,
36                 84,  84,  84,  84,  84,  84,  84,  84,  84,  84,  84,  84,  84,  86,  87,
37                 88,  84,  91,  104, 114, 130, 155, 167, 183, 188, 196, 84,  287, 297, 304,
38                 330, 335, 361, 373, 484, 527, 558, 570, 84,  84,  84,  591, 592, 595, 596,
39         },
40         {
41                 0,  0,  0,  0,  0,  0, 0, 0, 0,  0, 0, 0,  0, 0,  0, 51, 0, 59, 59,
42                 59, 59, 59, 59, 60, 0, 0, 0, 0,  0, 0, 0,  0, 0,  0, 61, 0, 0,  0,
43                 0,  0,  0,  66, 67, 0, 0, 0, 0,  0, 0, 0,  0, 61, 0, 0,  0, 0,  0,
44                 0,  0,  0,  0,  0,  0, 0, 0, 66, 0, 0, 67, 0, 0,  0, 0,  0, 0,
45         },
46         {
47                 0,  0,  0,  0,  0,  0, 0, 0, 0,  0, 0, 0, 0, 0,  0, 51, 0, 59, 59,
48                 59, 59, 59, 59, 60, 0, 0, 0, 0,  0, 0, 0, 0, 0,  0, 61, 0, 0,  0,
49                 0,  0,  0,  65, 0,  0, 0, 0, 0,  0, 0, 0, 0, 61, 0, 0,  0, 0,  0,
50                 0,  0,  0,  0,  0,  0, 0, 0, 65, 0, 0, 0, 0, 0,  0, 0,  0, 0,
51         },
52         {
53                 0,  0,  0,  0,  0,  0, 0, 0, 0,  0, 0, 0, 0, 0,  0, 51, 0, 60, 60,
54                 60, 60, 60, 60, 60, 0, 0, 0, 0,  0, 0, 0, 0, 0,  0, 61, 0, 0,  0,
55                 0,  0,  0,  64, 0,  0, 0, 0, 0,  0, 0, 0, 0, 61, 0, 0,  0, 0,  0,
56                 0,  0,  0,  0,  0,  0, 0, 0, 64, 0, 0, 0, 0, 0,  0, 0,  0, 0,
57         },
58         {
59                 0,  0,  0,  0,  0,  0, 0, 0, 0,  0, 0, 0, 0, 0,  0, 51, 0, 70, 70,
60                 70, 70, 70, 70, 70, 0, 0, 0, 0,  0, 0, 0, 0, 0,  0, 61, 0, 0,  0,
61                 0,  0,  0,  66, 0,  0, 0, 0, 0,  0, 0, 0, 0, 61, 0, 0,  0, 0,  0,
62                 0,  0,  0,  0,  0,  0, 0, 0, 66, 0, 0, 0, 0, 0,  0, 0,  0, 0,
63         },
64         {
65                 0,   0,  0,  0,   0,  0,  0,  0,  0,  0,   0,  0,  0,  0,  0,  0,  0,  85, 85,
66                 85,  85, 85, 85,  85, 0,  0,  0,  0,  0,   0,  85, 85, 85, 85, 85, 85, 85, 85,
67                 85,  85, 85, 85,  85, 0,  0,  0,  85, 115, 85, 85, 85, 85, 85, 85, 85, 85, 85,
68                 118, 85, 85, 121, 85, 85, 85, 85, 85, 85,  85, 85, 85, 85, 0,  0,  0,  0,
69         },
70         {
71                 0,  0,   0,  0,   0,  0,  0,  0,  0,  0,   0,  0,  0,  0,   0,  0,  0,  85,  85,
72                 85, 85,  85, 85,  85, 0,  0,  0,  0,  0,   0,  85, 85, 85,  85, 85, 85, 85,  85,
73                 85, 85,  85, 85,  85, 0,  0,  0,  85, 85,  85, 85, 85, 131, 85, 85, 85, 137, 85,
74                 85, 143, 85, 148, 85, 85, 85, 85, 85, 152, 85, 85, 85, 85,  0,  0,  0,  0,
75         },
76         {
77                 0,   0,  0,   0,  0,  0,  0,  0,  0,  0,  0,  0,   0,  0,  0,  0,  0,  85, 85,
78                 85,  85, 85,  85, 85, 0,  0,  0,  0,  0,  0,  85,  85, 85, 85, 85, 85, 85, 85,
79                 85,  85, 85,  85, 85, 0,  0,  0,  85, 85, 85, 85,  85, 85, 85, 85, 85, 85, 85,
80                 156, 85, 159, 85, 85, 85, 85, 85, 85, 85, 85, 161, 85, 85, 0,  0,  0,  0,
81         },
82         {
83                 0,   0,  0,  0,   0,  0,  0,  0,  0,  0,   0,  0,  0,  0,  0,  0,  0,  85,  85,
84                 85,  85, 85, 85,  85, 0,  0,  0,  0,  0,   0,  85, 85, 85, 85, 85, 85, 85,  85,
85                 85,  85, 85, 85,  85, 0,  0,  0,  85, 168, 85, 85, 85, 85, 85, 85, 85, 172, 85,
86                 175, 85, 85, 178, 85, 85, 85, 85, 85, 180, 85, 85, 85, 85, 0,  0,  0,  0,
87         },
88         {
89                 0,  0,   0,   0,  0,  0,  0,   0,   0,  0,  0,  0,  0,  0,  0,   0,  0,  85,  85,
90                 85, 85,  85,  85, 85, 0,  0,   0,   0,  0,  0,  85, 85, 85, 85,  85, 85, 85,  85,
91                 85, 85,  85,  85, 85, 0,  0,   0,   85, 85, 85, 85, 85, 85, 197, 85, 85, 198, 85,
92                 85, 238, 241, 85, 85, 85, 263, 281, 85, 85, 85, 85, 85, 85, 0,   0,  0,  0,
93         },
94         {
95                 0,   0,   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,   0,   0,  0,  0,  85, 203,
96                 209, 224, 85, 85, 85, 0,  0,  0,  0,  0,  0,  85, 225, 230, 85, 85, 85, 85, 85,
97                 85,  85,  85, 85, 85, 0,  0,  0,  85, 85, 85, 85, 85,  85,  85, 85, 85, 85, 85,
98                 85,  85,  85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,  85,  0,  0,  0,  0,
99         },
100         {
101                 0,   0,   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,   0,  0,  0,  0,  0,  85, 85,
102                 85,  85,  85, 85, 85, 0,  0,  0,  0,  0,  0,  211, 85, 85, 85, 85, 85, 85, 85,
103                 215, 221, 85, 85, 85, 0,  0,  0,  85, 85, 85, 85,  85, 85, 85, 85, 85, 85, 85,
104                 85,  85,  85, 85, 85, 85, 85, 85, 85, 85, 85, 85,  85, 85, 0,  0,  0,  0,
105         },
106         {
107                 0,   0,  0,  0,   0,   0,  0,  0,   0,  0,   0,  0,  0,  0,  0,  0,  0,  85, 85,
108                 85,  85, 85, 85,  85,  0,  0,  0,   0,  0,   0,  85, 85, 85, 85, 85, 85, 85, 85,
109                 85,  85, 85, 85,  85,  0,  0,  0,   85, 85,  85, 85, 85, 85, 85, 85, 85, 85, 85,
110                 242, 85, 85, 246, 249, 85, 85, 251, 85, 257, 85, 85, 85, 85, 0,  0,  0,  0,
111         },
112         {
113                 0,  0,  0,  0,  0,  0,   0,  0,  0,   0,   0,  0,  0,  0,  0,  0,  0,  85,  85,
114                 85, 85, 85, 85, 85, 0,   0,  0,  0,   0,   0,  85, 85, 85, 85, 85, 85, 85,  85,
115                 85, 85, 85, 85, 85, 0,   0,  0,  85,  336, 85, 85, 85, 85, 85, 85, 85, 340, 85,
116                 85, 85, 85, 85, 85, 350, 85, 85, 357, 85,  85, 85, 85, 85, 0,  0,  0,  0,
117         },
118         {
119                 0,  0,  0,  0,  0,  0,  0,  0,   0,   0,   0,   0,  0,  0,  0,  0,  0,  85,  85,
120                 85, 85, 85, 85, 85, 0,  0,  0,   0,   0,   0,   85, 85, 85, 85, 85, 85, 85,  85,
121                 85, 85, 85, 85, 85, 0,  0,  0,   85,  374, 85,  85, 85, 85, 85, 85, 85, 463, 85,
122                 85, 85, 85, 85, 85, 85, 85, 467, 475, 85,  479, 85, 85, 85, 0,  0,  0,  0,
123         },
124         {
125                 0,   0,   0,   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,   0,   0,  0,  0,  85, 380,
126                 397, 429, 85,  85, 85, 0,  0,  0,  0,  0,  0,  85, 434, 439, 85, 85, 85, 85, 85,
127                 85,  85,  458, 85, 85, 0,  0,  0,  85, 85, 85, 85, 85,  85,  85, 85, 85, 85, 85,
128                 85,  85,  85,  85, 85, 85, 85, 85, 85, 85, 85, 85, 85,  85,  0,  0,  0,  0,
129         },
130         {
131                 0,   0,   0,   0,  0,  0,  0,  0,  0,  0,  0,  0,   0,  0,  0,  0,  0,  85, 85,
132                 85,  85,  85,  85, 85, 0,  0,  0,  0,  0,  0,  399, 85, 85, 85, 85, 85, 85, 85,
133                 409, 415, 424, 85, 85, 0,  0,  0,  85, 85, 85, 85,  85, 85, 85, 85, 85, 85, 85,
134                 85,  85,  85,  85, 85, 85, 85, 85, 85, 85, 85, 85,  85, 85, 0,  0,  0,  0,
135         },
136         {
137                 0,  0,  0,  0,  0,  0,   0,  0,  0,  0,  0,  0,  0,   0,   0,  0,  0,   85, 85,
138                 85, 85, 85, 85, 85, 0,   0,  0,  0,  0,  0,  85, 85,  85,  85, 85, 85,  85, 85,
139                 85, 85, 85, 85, 85, 0,   0,  0,  85, 85, 85, 85, 85,  485, 85, 85, 517, 85, 85,
140                 85, 85, 85, 85, 85, 519, 85, 85, 85, 85, 85, 85, 522, 85,  0,  0,  0,   0,
141         },
142         {
143                 0,   0,   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,   0,   0,  0,  0,  85, 496,
144                 502, 508, 85, 85, 85, 0,  0,  0,  0,  0,  0,  85, 434, 509, 85, 85, 85, 85, 85,
145                 85,  85,  85, 85, 85, 0,  0,  0,  85, 85, 85, 85, 85,  85,  85, 85, 85, 85, 85,
146                 85,  85,  85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,  85,  0,  0,  0,  0,
147         },
148         {
149                 0,  0,  0,   0,  0,  0,  0,   0,   0,  0,  0,  0,  0,  0,  0,  0,  0,  85,  85,
150                 85, 85, 85,  85, 85, 0,  0,   0,   0,  0,  0,  85, 85, 85, 85, 85, 85, 85,  85,
151                 85, 85, 85,  85, 85, 0,  0,   0,   85, 85, 85, 85, 85, 85, 85, 85, 85, 528, 85,
152                 85, 85, 532, 85, 85, 85, 544, 552, 85, 85, 85, 85, 85, 85, 0,  0,  0,  0,
153         },
154         {
155                 0,  0,  0,  0,  0,  0,  0,  0,  0,   0,   0,  0,  0,  0,  0,  0,  0,  85,  85,
156                 85, 85, 85, 85, 85, 0,  0,  0,  0,   0,   0,  85, 85, 85, 85, 85, 85, 85,  85,
157                 85, 85, 85, 85, 85, 0,  0,  0,  85,  545, 85, 85, 85, 85, 85, 85, 85, 550, 85,
158                 85, 85, 85, 85, 85, 85, 85, 85, 269, 85,  85, 85, 85, 85, 0,  0,  0,  0,
159         },
160         {
161                 0,  0,  0,  0,   0,  0,   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,   85, 85,
162                 85, 85, 85, 85,  85, 0,   0,  0,  0,  0,  0,  85, 85, 85, 85, 85, 85,  85, 85,
163                 85, 85, 85, 85,  85, 0,   0,  0,  85, 85, 85, 85, 85, 85, 85, 85, 571, 85, 85,
164                 85, 85, 85, 575, 85, 583, 85, 85, 85, 85, 85, 85, 85, 85, 0,  0,  0,   0,
165         },
166 };
167 static constexpr CompactEntry kCompact[] = {
168         {0,
169          {255,
170           255,
171           255,
172           255,
173           255,
174           255,
175           255,
176           255,
177           255,
178           255,
179           255,
180           255,
181           255,
182           255,
183           255,
184           255,
185           255,
186           255,
187           63}},
188         {3,
189          {195,
190           255,
191           255,
192           255,
193           255,
194           255,
195           255,
196           255,
197           255,
198           255,
199           255,
200           255,
201           255,
202           255,
203           255,
204           255,
205           255,
206           255,
207           63}},
208         {6,
209          {255,
210           255,
211           255,
212           255,
213           255,
214           255,
215           63,
216           255,
217           255,
218           255,
219           255,
220           255,
221           255,
222           255,
223           255,
224           255,
225           255,
226           255,
227           63}},
228         {8, {255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 192, 15, 0, 0, 0, 0, 0, 192, 63}},
229         {8, {255, 255, 255, 255, 3, 0, 255, 15, 0, 0, 192, 15, 0, 0, 0, 0, 0, 192, 63}},
230         {19 | (11 << 10) | (10 << 20),
231          {255,
232           255,
233           255,
234           255,
235           171,
236           170,
237           255,
238           175,
239           170,
240           170,
241           234,
242           175,
243           106,
244           170,
245           170,
246           162,
247           170,
248           234,
249           63}},
250         {10, {255, 255, 255, 255, 3, 0, 255, 15, 0, 0, 192, 15, 0, 0, 0, 0, 0, 192, 63}},
251         {14 | (12 << 10) | (10 << 20),
252          {255,
253           255,
254           255,
255           255,
256           171,
257           170,
258           255,
259           175,
260           170,
261           170,
262           234,
263           175,
264           170,
265           170,
266           170,
267           106,
268           170,
269           232,
270           63}},
271         {13 | (10 << 10),
272          {255, 255, 255, 255, 87, 84, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
273         {15 | (10 << 10),
274          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
275         {16 | (10 << 10),
276          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
277         {17 | (10 << 10),
278          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
279         {18 | (10 << 10),
280          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
281         {20 | (10 << 10),
282          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
283         {21 | (10 << 10),
284          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
285         {22 | (10 << 10),
286          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
287         {24,
288          {255,
289           255,
290           255,
291           255,
292           255,
293           255,
294           63,
295           255,
296           255,
297           255,
298           255,
299           255,
300           255,
301           255,
302           255,
303           255,
304           255,
305           255,
306           63}},
307         {27 | (26 << 10),
308          {255,
309           255,
310           253,
311           255,
312           255,
313           255,
314           63,
315           255,
316           255,
317           255,
318           255,
319           255,
320           255,
321           255,
322           255,
323           255,
324           255,
325           255,
326           63}},
327         {31,
328          {255,
329           255,
330           255,
331           255,
332           255,
333           255,
334           63,
335           255,
336           255,
337           255,
338           255,
339           255,
340           255,
341           255,
342           255,
343           255,
344           255,
345           255,
346           63}},
347         {34 | (33 << 10),
348          {255,
349           255,
350           255,
351           253,
352           255,
353           255,
354           63,
355           255,
356           255,
357           255,
358           255,
359           255,
360           255,
361           255,
362           255,
363           255,
364           255,
365           255,
366           63}},
367         {38 | (37 << 10),
368          {255,
369           255,
370           255,
371           223,
372           255,
373           255,
374           63,
375           255,
376           255,
377           255,
378           255,
379           255,
380           255,
381           255,
382           255,
383           255,
384           255,
385           255,
386           63}},
387         {40,
388          {255,
389           255,
390           255,
391           255,
392           3,
393           0,
394           255,
395           255,
396           255,
397           255,
398           255,
399           255,
400           255,
401           255,
402           255,
403           255,
404           255,
405           255,
406           63}},
407         {41 | (40 << 10),
408          {255,
409           255,
410           255,
411           255,
412           87,
413           85,
414           255,
415           255,
416           207,
417           255,
418           255,
419           255,
420           63,
421           255,
422           255,
423           255,
424           255,
425           255,
426           63}},
427         {43 | (42 << 10),
428          {255,
429           255,
430           255,
431           221,
432           3,
433           0,
434           255,
435           255,
436           255,
437           255,
438           255,
439           255,
440           255,
441           255,
442           255,
443           255,
444           255,
445           255,
446           63}},
447         {43,
448          {255,
449           255,
450           255,
451           255,
452           3,
453           0,
454           255,
455           255,
456           255,
457           255,
458           255,
459           255,
460           255,
461           255,
462           255,
463           255,
464           255,
465           255,
466           63}},
467         {49 | (48 << 10) | (45 << 20),
468          {255,
469           255,
470           191,
471           255,
472           253,
473           255,
474           63,
475           255,
476           255,
477           255,
478           255,
479           255,
480           255,
481           255,
482           255,
483           255,
484           255,
485           255,
486           63}},
487         {46 | (45 << 10),
488          {87, 85, 21, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 21}},
489         {47 | (45 << 10),
490          {87, 85, 85, 85, 84, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 21}},
491         {48, {51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
492         {56 | (52 << 10),
493          {255,
494           255,
495           255,
496           255,
497           87,
498           85,
499           255,
500           255,
501           207,
502           255,
503           255,
504           255,
505           63,
506           255,
507           255,
508           255,
509           255,
510           255,
511           63}},
512         {53 | (52 << 10),
513          {255,
514           255,
515           255,
516           255,
517           87,
518           85,
519           255,
520           255,
521           207,
522           255,
523           255,
524           255,
525           63,
526           255,
527           255,
528           255,
529           255,
530           255,
531           63}},
532         {55 | (54 << 10),
533          {255,
534           255,
535           255,
536           221,
537           3,
538           0,
539           255,
540           255,
541           255,
542           255,
543           255,
544           255,
545           255,
546           255,
547           255,
548           255,
549           255,
550           255,
551           63}},
552         {55,
553          {255,
554           255,
555           255,
556           255,
557           3,
558           0,
559           255,
560           255,
561           255,
562           255,
563           255,
564           255,
565           255,
566           255,
567           255,
568           255,
569           255,
570           255,
571           63}},
572         {58 | (57 << 10),
573          {255,
574           255,
575           255,
576           221,
577           3,
578           0,
579           255,
580           255,
581           255,
582           255,
583           255,
584           255,
585           255,
586           255,
587           255,
588           255,
589           255,
590           255,
591           63}},
592         {58,
593          {255,
594           255,
595           255,
596           255,
597           3,
598           0,
599           255,
600           255,
601           255,
602           255,
603           255,
604           255,
605           255,
606           255,
607           255,
608           255,
609           255,
610           255,
611           63}},
612         {63 | (62 << 10),
613          {255,
614           255,
615           255,
616           221,
617           3,
618           0,
619           255,
620           255,
621           255,
622           255,
623           255,
624           255,
625           255,
626           255,
627           255,
628           255,
629           255,
630           255,
631           63}},
632         {63,
633          {255,
634           255,
635           255,
636           255,
637           3,
638           0,
639           255,
640           255,
641           255,
642           255,
643           255,
644           255,
645           255,
646           255,
647           255,
648           255,
649           255,
650           255,
651           63}},
652         {68, {255, 255, 255, 255, 3, 0, 255, 15, 0, 255, 255, 63, 0, 252, 255, 255, 255, 255, 63}},
653         {68 | (66 << 10),
654          {255, 255, 255, 255, 3, 0, 255, 15, 0, 255, 247, 63, 0, 252, 255, 255, 247, 255, 63}},
655         {76 | (74 << 10),
656          {255,
657           255,
658           255,
659           255,
660           255,
661           255,
662           31,
663           255,
664           255,
665           255,
666           255,
667           255,
668           255,
669           255,
670           255,
671           255,
672           255,
673           255,
674           63}},
675         {75,
676          {255,
677           255,
678           255,
679           255,
680           255,
681           255,
682           63,
683           255,
684           255,
685           255,
686           255,
687           255,
688           255,
689           255,
690           255,
691           255,
692           255,
693           255,
694           63}},
695         {78,
696          {255,
697           255,
698           255,
699           255,
700           255,
701           255,
702           63,
703           255,
704           255,
705           255,
706           255,
707           255,
708           255,
709           255,
710           255,
711           255,
712           255,
713           255,
714           63}},
715         {81 | (80 << 10),
716          {255,
717           255,
718           255,
719           255,
720           255,
721           255,
722           127,
723           252,
724           255,
725           255,
726           255,
727           255,
728           255,
729           255,
730           255,
731           255,
732           255,
733           255,
734           63}},
735         {82,
736          {255,
737           255,
738           255,
739           255,
740           255,
741           255,
742           63,
743           255,
744           255,
745           255,
746           255,
747           255,
748           255,
749           255,
750           255,
751           255,
752           255,
753           255,
754           63}},
755         {85, {255, 255, 255, 255, 3, 0, 255, 15, 0, 0, 192, 15, 0, 0, 0, 0, 0, 192, 63}},
756         {90 | (89 << 10),
757          {255,
758           255,
759           255,
760           255,
761           255,
762           255,
763           127,
764           255,
765           255,
766           255,
767           255,
768           243,
769           255,
770           255,
771           255,
772           255,
773           255,
774           255,
775           63}},
776         {94 | (92 << 10) | (85 << 20),
777          {255,
778           255,
779           255,
780           255,
781           171,
782           170,
783           255,
784           175,
785           170,
786           170,
787           234,
788           175,
789           170,
790           170,
791           170,
792           106,
793           168,
794           234,
795           63}},
796         {93 | (85 << 10),
797          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
798         {98 | (95 << 10) | (85 << 20),
799          {255,
800           255,
801           255,
802           255,
803           171,
804           170,
805           255,
806           175,
807           170,
808           170,
809           234,
810           175,
811           170,
812           170,
813           170,
814           169,
815           168,
816           234,
817           63}},
818         {96 | (85 << 10),
819          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
820         {97 | (85 << 10),
821          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
822         {93 | (85 << 10),
823          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
824         {99 | (85 << 10),
825          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
826         {100 | (85 << 10),
827          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
828         {101 | (85 << 10),
829          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 84, 85, 85, 85, 85, 213, 63}},
830         {102 | (85 << 10),
831          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
832         {103 | (85 << 10),
833          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
834         {93 | (85 << 10),
835          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
836         {109 | (105 << 10) | (85 << 20),
837          {255,
838           255,
839           255,
840           255,
841           171,
842           170,
843           255,
844           175,
845           170,
846           170,
847           234,
848           175,
849           170,
850           170,
851           170,
852           154,
853           162,
854           234,
855           63}},
856         {106 | (85 << 10),
857          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
858         {107 | (85 << 10),
859          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
860         {108 | (85 << 10),
861          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 84, 85, 85, 213, 63}},
862         {110 | (85 << 10),
863          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 84, 85, 85, 85, 213, 63}},
864         {111 | (85 << 10),
865          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 84, 85, 85, 85, 213, 63}},
866         {112 | (85 << 10),
867          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
868         {113 | (85 << 10),
869          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
870         {116 | (85 << 10),
871          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
872         {117 | (93 << 10) | (85 << 20),
873          {255,
874           255,
875           255,
876           255,
877           171,
878           170,
879           255,
880           175,
881           170,
882           170,
883           234,
884           175,
885           42,
886           170,
887           170,
888           170,
889           169,
890           234,
891           63}},
892         {119 | (85 << 10),
893          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
894         {120 | (85 << 10),
895          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
896         {93 | (85 << 10),
897          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
898         {122 | (85 << 10),
899          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
900         {125 | (123 << 10) | (85 << 20),
901          {255,
902           255,
903           255,
904           255,
905           171,
906           170,
907           255,
908           175,
909           170,
910           170,
911           234,
912           175,
913           170,
914           170,
915           170,
916           106,
917           168,
918           234,
919           63}},
920         {124 | (85 << 10),
921          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
922         {126 | (85 << 10),
923          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
924         {127 | (85 << 10),
925          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
926         {128 | (85 << 10),
927          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
928         {129 | (85 << 10),
929          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
930         {132 | (85 << 10),
931          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 84, 85, 85, 85, 213, 63}},
932         {133 | (85 << 10),
933          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
934         {134 | (85 << 10),
935          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
936         {135 | (85 << 10),
937          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
938         {136 | (85 << 10),
939          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
940         {138 | (85 << 10),
941          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
942         {139 | (85 << 10),
943          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
944         {140 | (85 << 10),
945          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
946         {141 | (85 << 10),
947          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
948         {142 | (85 << 10),
949          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
950         {144 | (85 << 10),
951          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
952         {145 | (85 << 10),
953          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
954         {146 | (85 << 10),
955          {255, 255, 255, 255, 23, 80, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
956         {147 | (85 << 10),
957          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 212, 63}},
958         {93 | (85 << 10),
959          {255, 255, 255, 255, 23, 80, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
960         {149 | (85 << 10),
961          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
962         {150 | (85 << 10),
963          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 84, 85, 85, 85, 85, 213, 63}},
964         {151 | (85 << 10),
965          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
966         {153 | (85 << 10),
967          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
968         {154 | (85 << 10),
969          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
970         {157 | (85 << 10),
971          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
972         {158 | (85 << 10),
973          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
974         {160 | (85 << 10),
975          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
976         {162 | (85 << 10),
977          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
978         {163 | (85 << 10),
979          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
980         {164 | (85 << 10),
981          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
982         {165 | (85 << 10),
983          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
984         {166 | (85 << 10),
985          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
986         {93 | (85 << 10),
987          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
988         {169 | (85 << 10),
989          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
990         {170 | (85 << 10),
991          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
992         {171 | (85 << 10),
993          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
994         {173 | (85 << 10),
995          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 212, 63}},
996         {174 | (85 << 10),
997          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
998         {93 | (85 << 10),
999          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1000         {176 | (85 << 10),
1001          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1002         {177 | (85 << 10),
1003          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1004         {179 | (85 << 10),
1005          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1006         {181 | (85 << 10),
1007          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1008         {182 | (85 << 10),
1009          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1010         {186 | (184 << 10) | (85 << 20),
1011          {255,
1012           255,
1013           255,
1014           255,
1015           171,
1016           170,
1017           255,
1018           175,
1019           170,
1020           170,
1021           234,
1022           175,
1023           170,
1024           170,
1025           166,
1026           168,
1027           170,
1028           234,
1029           63}},
1030         {185 | (85 << 10),
1031          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 79, 85, 85, 85, 85, 85, 213, 63}},
1032         {185, {255, 255, 255, 255, 3, 0, 255, 15, 0, 0, 192, 15, 0, 0, 0, 0, 0, 192, 63}},
1033         {187 | (85 << 10),
1034          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1035         {93 | (85 << 10),
1036          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1037         {193 | (189 << 10) | (85 << 20),
1038          {255,
1039           255,
1040           255,
1041           255,
1042           171,
1043           170,
1044           255,
1045           175,
1046           170,
1047           170,
1048           234,
1049           175,
1050           170,
1051           106,
1052           170,
1053           170,
1054           138,
1055           234,
1056           63}},
1057         {190 | (85 << 10),
1058          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 81, 85, 85, 85, 213, 63}},
1059         {191 | (85 << 10),
1060          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1061         {192 | (85 << 10),
1062          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1063         {194 | (85 << 10),
1064          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1065         {195 | (85 << 10),
1066          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1067         {199 | (85 << 10),
1068          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
1069         {200 | (85 << 10),
1070          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1071         {201 | (85 << 10),
1072          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 81, 85, 85, 85, 213, 63}},
1073         {202 | (85 << 10),
1074          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1075         {204 | (85 << 10),
1076          {255, 255, 255, 255, 87, 85, 255, 95, 81, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1077         {205 | (85 << 10),
1078          {255, 255, 255, 255, 87, 85, 255, 79, 85, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1079         {206 | (85 << 10),
1080          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1081         {207 | (85 << 10),
1082          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1083         {208 | (85 << 10),
1084          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1085         {93 | (85 << 10),
1086          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 209, 63}},
1087         {210 | (85 << 10),
1088          {255, 255, 255, 255, 87, 85, 255, 95, 81, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1089         {212 | (85 << 10),
1090          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1091         {213 | (85 << 10),
1092          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1093         {214 | (85 << 10),
1094          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1095         {216 | (85 << 10),
1096          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 212, 95, 85, 85, 85, 85, 85, 213, 63}},
1097         {217 | (85 << 10),
1098          {255, 255, 255, 255, 87, 85, 255, 79, 85, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1099         {218 | (85 << 10),
1100          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1101         {219 | (85 << 10),
1102          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1103         {220 | (85 << 10),
1104          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1105         {222 | (85 << 10),
1106          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1107         {223 | (85 << 10),
1108          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1109         {93 | (85 << 10),
1110          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1111         {93 | (85 << 10),
1112          {255, 255, 255, 255, 87, 85, 255, 95, 81, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1113         {226 | (85 << 10),
1114          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1115         {227 | (85 << 10),
1116          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 84, 85, 85, 85, 213, 63}},
1117         {228 | (85 << 10),
1118          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 84, 85, 85, 85, 213, 63}},
1119         {229 | (85 << 10),
1120          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1121         {93 | (85 << 10),
1122          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1123         {231 | (85 << 10),
1124          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1125         {232 | (85 << 10),
1126          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 84, 85, 85, 85, 85, 213, 63}},
1127         {233 | (85 << 10),
1128          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1129         {234 | (85 << 10),
1130          {255, 255, 255, 255, 87, 85, 255, 79, 85, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1131         {235 | (85 << 10),
1132          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1133         {236 | (85 << 10),
1134          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1135         {237 | (85 << 10),
1136          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1137         {239 | (85 << 10),
1138          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1139         {240 | (85 << 10),
1140          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 81, 85, 85, 85, 213, 63}},
1141         {243 | (85 << 10),
1142          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1143         {244 | (85 << 10),
1144          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1145         {245 | (85 << 10),
1146          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1147         {247 | (85 << 10),
1148          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1149         {248 | (85 << 10),
1150          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1151         {250 | (85 << 10),
1152          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1153         {252 | (85 << 10),
1154          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1155         {253 | (85 << 10),
1156          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1157         {254 | (85 << 10),
1158          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 84, 85, 85, 85, 213, 63}},
1159         {255 | (85 << 10),
1160          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1161         {256 | (85 << 10),
1162          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1163         {258 | (85 << 10),
1164          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1165         {259 | (85 << 10),
1166          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1167         {260 | (85 << 10),
1168          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1169         {261 | (85 << 10),
1170          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1171         {262 | (85 << 10),
1172          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1173         {269 | (264 << 10) | (85 << 20),
1174          {255,
1175           255,
1176           255,
1177           255,
1178           171,
1179           170,
1180           255,
1181           175,
1182           170,
1183           170,
1184           234,
1185           111,
1186           170,
1187           170,
1188           170,
1189           170,
1190           162,
1191           234,
1192           63}},
1193         {265 | (85 << 10),
1194          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
1195         {266 | (85 << 10),
1196          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1197         {267 | (85 << 10),
1198          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1199         {268 | (85 << 10),
1200          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1201         {202 | (85 << 10),
1202          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1203         {270 | (85 << 10),
1204          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 84, 85, 85, 85, 85, 213, 63}},
1205         {271 | (85 << 10),
1206          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1207         {272 | (85 << 10),
1208          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1209         {273 | (85 << 10),
1210          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
1211         {274 | (85 << 10),
1212          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
1213         {275 | (85 << 10),
1214          {255, 255, 255, 255, 87, 85, 255, 95, 85, 81, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1215         {276 | (85 << 10),
1216          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1217         {277 | (85 << 10),
1218          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1219         {278 | (85 << 10),
1220          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1221         {279 | (85 << 10),
1222          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1223         {280 | (85 << 10),
1224          {255, 255, 255, 255, 87, 85, 255, 95, 85, 69, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1225         {93 | (85 << 10),
1226          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 212, 95, 85, 85, 85, 85, 85, 213, 63}},
1227         {282 | (85 << 10),
1228          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1229         {283 | (85 << 10),
1230          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 212, 63}},
1231         {284 | (85 << 10),
1232          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1233         {285 | (85 << 10),
1234          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1235         {286 | (85 << 10),
1236          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1237         {293 | (288 << 10) | (85 << 20),
1238          {255,
1239           255,
1240           255,
1241           255,
1242           171,
1243           170,
1244           255,
1245           175,
1246           170,
1247           170,
1248           234,
1249           111,
1250           170,
1251           170,
1252           170,
1253           168,
1254           170,
1255           234,
1256           63}},
1257         {289 | (85 << 10),
1258          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 209, 63}},
1259         {290 | (85 << 10),
1260          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1261         {291 | (85 << 10),
1262          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1263         {292 | (85 << 10),
1264          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1265         {295 | (294 << 10) | (85 << 20),
1266          {255,
1267           255,
1268           255,
1269           255,
1270           171,
1271           170,
1272           255,
1273           175,
1274           170,
1275           170,
1276           234,
1277           175,
1278           170,
1279           170,
1280           106,
1281           170,
1282           42,
1283           234,
1284           63}},
1285         {93 | (85 << 10),
1286          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 81, 85, 85, 85, 213, 63}},
1287         {296 | (85 << 10),
1288          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1289         {298 | (85 << 10),
1290          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1291         {299 | (85 << 10),
1292          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1293         {300 | (85 << 10),
1294          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1295         {301 | (85 << 10),
1296          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1297         {302 | (85 << 10),
1298          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
1299         {303 | (85 << 10),
1300          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1301         {312 | (305 << 10) | (85 << 20),
1302          {255,
1303           255,
1304           255,
1305           255,
1306           171,
1307           170,
1308           255,
1309           175,
1310           170,
1311           170,
1312           234,
1313           111,
1314           170,
1315           170,
1316           170,
1317           168,
1318           170,
1319           234,
1320           63}},
1321         {306 | (85 << 10),
1322          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
1323         {307 | (85 << 10),
1324          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1325         {308 | (85 << 10),
1326          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
1327         {309 | (85 << 10),
1328          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1329         {310 | (85 << 10),
1330          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1331         {311 | (85 << 10),
1332          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1333         {319 | (313 << 10) | (85 << 20),
1334          {255,
1335           255,
1336           255,
1337           255,
1338           171,
1339           170,
1340           255,
1341           175,
1342           170,
1343           170,
1344           234,
1345           175,
1346           170,
1347           106,
1348           170,
1349           162,
1350           170,
1351           234,
1352           63}},
1353         {314 | (85 << 10),
1354          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1355         {315 | (85 << 10),
1356          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1357         {316 | (85 << 10),
1358          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1359         {317 | (85 << 10),
1360          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1361         {318 | (85 << 10),
1362          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1363         {320 | (85 << 10),
1364          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1365         {321 | (85 << 10),
1366          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1367         {322 | (85 << 10),
1368          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
1369         {323 | (85 << 10),
1370          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1371         {324 | (85 << 10),
1372          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1373         {325 | (85 << 10),
1374          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1375         {326 | (85 << 10),
1376          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1377         {327 | (85 << 10),
1378          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1379         {328 | (85 << 10),
1380          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 69, 213, 63}},
1381         {329 | (85 << 10),
1382          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1383         {331 | (85 << 10),
1384          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1385         {332 | (85 << 10),
1386          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1387         {333 | (85 << 10),
1388          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1389         {334 | (85 << 10),
1390          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1391         {337 | (85 << 10),
1392          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1393         {338 | (85 << 10),
1394          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 84, 85, 85, 213, 63}},
1395         {339 | (85 << 10),
1396          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1397         {341 | (85 << 10),
1398          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 212, 63}},
1399         {342 | (85 << 10),
1400          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1401         {343 | (85 << 10),
1402          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1403         {344 | (85 << 10),
1404          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 79, 85, 85, 85, 85, 85, 213, 63}},
1405         {345 | (85 << 10),
1406          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1407         {346 | (85 << 10),
1408          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1409         {347 | (85 << 10),
1410          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1411         {348 | (85 << 10),
1412          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1413         {349 | (85 << 10),
1414          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1415         {351 | (85 << 10),
1416          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1417         {352 | (85 << 10),
1418          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1419         {353 | (85 << 10),
1420          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1421         {354 | (85 << 10),
1422          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 21, 85, 213, 63}},
1423         {355 | (85 << 10),
1424          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1425         {356 | (85 << 10),
1426          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1427         {93 | (85 << 10),
1428          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1429         {358 | (85 << 10),
1430          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 84, 85, 85, 85, 85, 213, 63}},
1431         {359 | (85 << 10),
1432          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1433         {360 | (85 << 10),
1434          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1435         {362 | (85 << 10),
1436          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1437         {369 | (363 << 10) | (85 << 20),
1438          {255,
1439           255,
1440           255,
1441           255,
1442           171,
1443           170,
1444           255,
1445           175,
1446           170,
1447           170,
1448           234,
1449           111,
1450           170,
1451           170,
1452           170,
1453           170,
1454           168,
1455           234,
1456           63}},
1457         {364 | (85 << 10),
1458          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1459         {365 | (85 << 10),
1460          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1461         {366 | (85 << 10),
1462          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1463         {367 | (85 << 10),
1464          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1465         {368 | (85 << 10),
1466          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 209, 63}},
1467         {370 | (85 << 10),
1468          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1469         {371 | (85 << 10),
1470          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1471         {372 | (85 << 10),
1472          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1473         {375 | (85 << 10),
1474          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
1475         {376 | (85 << 10),
1476          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1477         {377 | (85 << 10),
1478          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1479         {378 | (85 << 10),
1480          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1481         {379 | (85 << 10),
1482          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1483         {381 | (85 << 10),
1484          {255, 255, 255, 255, 87, 85, 255, 95, 81, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1485         {392 | (382 << 10) | (85 << 20),
1486          {255,
1487           255,
1488           255,
1489           255,
1490           171,
1491           170,
1492           255,
1493           159,
1494           170,
1495           170,
1496           232,
1497           175,
1498           170,
1499           170,
1500           170,
1501           170,
1502           170,
1503           234,
1504           63}},
1505         {383 | (85 << 10),
1506          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1507         {384 | (85 << 10),
1508          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1509         {385 | (85 << 10),
1510          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1511         {386 | (85 << 10),
1512          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 209, 63}},
1513         {387 | (85 << 10),
1514          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 212, 95, 85, 85, 85, 85, 85, 213, 63}},
1515         {388 | (85 << 10),
1516          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1517         {389 | (85 << 10),
1518          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1519         {390 | (85 << 10),
1520          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1521         {391 | (85 << 10),
1522          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1523         {93 | (85 << 10),
1524          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 21, 213, 63}},
1525         {393 | (85 << 10),
1526          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1527         {394 | (85 << 10),
1528          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1529         {395 | (85 << 10),
1530          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1531         {396 | (85 << 10),
1532          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1533         {398 | (85 << 10),
1534          {255, 255, 255, 255, 87, 85, 255, 95, 81, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1535         {400 | (85 << 10),
1536          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1537         {401 | (85 << 10),
1538          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1539         {402 | (85 << 10),
1540          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1541         {403 | (85 << 10),
1542          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 209, 63}},
1543         {404 | (85 << 10),
1544          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 212, 95, 85, 85, 85, 85, 85, 213, 63}},
1545         {405 | (85 << 10),
1546          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1547         {406 | (85 << 10),
1548          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1549         {407 | (85 << 10),
1550          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1551         {408 | (85 << 10),
1552          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1553         {410 | (85 << 10),
1554          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 212, 95, 85, 85, 85, 85, 85, 213, 63}},
1555         {411 | (85 << 10),
1556          {255, 255, 255, 255, 87, 85, 255, 79, 85, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1557         {412 | (85 << 10),
1558          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1559         {413 | (85 << 10),
1560          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1561         {414 | (85 << 10),
1562          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1563         {416 | (85 << 10),
1564          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1565         {417 | (85 << 10),
1566          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1567         {418 | (85 << 10),
1568          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1569         {419 | (85 << 10),
1570          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 212, 95, 85, 85, 85, 85, 85, 213, 63}},
1571         {420 | (85 << 10),
1572          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1573         {421 | (85 << 10),
1574          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1575         {422 | (85 << 10),
1576          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1577         {423 | (85 << 10),
1578          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1579         {425 | (85 << 10),
1580          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1581         {426 | (85 << 10),
1582          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1583         {427 | (85 << 10),
1584          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1585         {428 | (85 << 10),
1586          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1587         {430 | (85 << 10),
1588          {255, 255, 255, 255, 87, 85, 255, 95, 81, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1589         {431 | (85 << 10),
1590          {255, 255, 255, 255, 87, 85, 255, 95, 85, 21, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1591         {432 | (85 << 10),
1592          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1593         {433 | (85 << 10),
1594          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1595         {435 | (85 << 10),
1596          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1597         {436 | (85 << 10),
1598          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 84, 85, 85, 85, 213, 63}},
1599         {437 | (85 << 10),
1600          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 84, 85, 85, 85, 213, 63}},
1601         {438 | (85 << 10),
1602          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1603         {440 | (85 << 10),
1604          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1605         {441 | (85 << 10),
1606          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 84, 85, 85, 85, 85, 213, 63}},
1607         {442 | (85 << 10),
1608          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1609         {453 | (443 << 10) | (85 << 20),
1610          {255,
1611           255,
1612           255,
1613           255,
1614           171,
1615           170,
1616           255,
1617           159,
1618           170,
1619           170,
1620           232,
1621           175,
1622           170,
1623           170,
1624           170,
1625           170,
1626           170,
1627           234,
1628           63}},
1629         {444 | (85 << 10),
1630          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1631         {445 | (85 << 10),
1632          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1633         {446 | (85 << 10),
1634          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1635         {447 | (85 << 10),
1636          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 209, 63}},
1637         {448 | (85 << 10),
1638          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 212, 95, 85, 85, 85, 85, 85, 213, 63}},
1639         {449 | (85 << 10),
1640          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1641         {450 | (85 << 10),
1642          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1643         {451 | (85 << 10),
1644          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1645         {452 | (85 << 10),
1646          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1647         {454 | (85 << 10),
1648          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1649         {455 | (85 << 10),
1650          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1651         {456 | (85 << 10),
1652          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1653         {457 | (85 << 10),
1654          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1655         {459 | (85 << 10),
1656          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1657         {460 | (85 << 10),
1658          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1659         {461 | (85 << 10),
1660          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1661         {462 | (85 << 10),
1662          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1663         {464 | (85 << 10),
1664          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 197, 63}},
1665         {465 | (85 << 10),
1666          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1667         {466 | (85 << 10),
1668          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1669         {93 | (85 << 10),
1670          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 84, 85, 85, 85, 213, 63}},
1671         {471 | (468 << 10) | (85 << 20),
1672          {255,
1673           255,
1674           255,
1675           255,
1676           171,
1677           170,
1678           255,
1679           175,
1680           170,
1681           170,
1682           234,
1683           111,
1684           170,
1685           170,
1686           170,
1687           138,
1688           170,
1689           234,
1690           63}},
1691         {469 | (85 << 10),
1692          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1693         {470 | (85 << 10),
1694          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1695         {472 | (85 << 10),
1696          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1697         {473 | (85 << 10),
1698          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1699         {474 | (85 << 10),
1700          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1701         {476 | (85 << 10),
1702          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1703         {477 | (85 << 10),
1704          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1705         {478 | (85 << 10),
1706          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1707         {93 | (85 << 10),
1708          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1709         {480 | (85 << 10),
1710          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1711         {481 | (85 << 10),
1712          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1713         {482 | (85 << 10),
1714          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 81, 85, 85, 85, 85, 213, 63}},
1715         {483 | (85 << 10),
1716          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 69, 85, 85, 85, 213, 63}},
1717         {491 | (486 << 10) | (85 << 20),
1718          {255,
1719           255,
1720           255,
1721           255,
1722           171,
1723           170,
1724           255,
1725           175,
1726           170,
1727           170,
1728           234,
1729           175,
1730           170,
1731           170,
1732           154,
1733           170,
1734           170,
1735           232,
1736           63}},
1737         {487 | (85 << 10),
1738          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1739         {488 | (85 << 10),
1740          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1741         {489 | (85 << 10),
1742          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1743         {490 | (85 << 10),
1744          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1745         {492 | (85 << 10),
1746          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1747         {493 | (85 << 10),
1748          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1749         {494 | (85 << 10),
1750          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1751         {495 | (85 << 10),
1752          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1753         {497 | (85 << 10),
1754          {255, 255, 255, 255, 87, 85, 255, 95, 81, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1755         {498 | (85 << 10),
1756          {255, 255, 255, 255, 87, 85, 255, 79, 85, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1757         {499 | (85 << 10),
1758          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1759         {500 | (85 << 10),
1760          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1761         {501 | (85 << 10),
1762          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1763         {503 | (85 << 10),
1764          {255, 255, 255, 255, 87, 85, 255, 95, 81, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1765         {504 | (409 << 10) | (85 << 20),
1766          {255,
1767           255,
1768           255,
1769           255,
1770           171,
1771           170,
1772           255,
1773           143,
1774           170,
1775           154,
1776           234,
1777           175,
1778           170,
1779           170,
1780           170,
1781           170,
1782           170,
1783           234,
1784           63}},
1785         {505 | (85 << 10),
1786          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1787         {506 | (85 << 10),
1788          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1789         {507 | (85 << 10),
1790          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1791         {510 | (85 << 10),
1792          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1793         {511 | (85 << 10),
1794          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 84, 85, 85, 85, 85, 213, 63}},
1795         {512 | (85 << 10),
1796          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1797         {513 | (85 << 10),
1798          {255, 255, 255, 255, 87, 85, 255, 79, 85, 85, 213, 95, 85, 85, 85, 85, 85, 213, 63}},
1799         {514 | (85 << 10),
1800          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1801         {515 | (85 << 10),
1802          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1803         {516 | (85 << 10),
1804          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1805         {518 | (85 << 10),
1806          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1807         {520 | (85 << 10),
1808          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1809         {521 | (85 << 10),
1810          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1811         {523 | (85 << 10),
1812          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1813         {524 | (85 << 10),
1814          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1815         {525 | (85 << 10),
1816          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 69, 85, 85, 85, 85, 213, 63}},
1817         {526 | (85 << 10),
1818          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1819         {529 | (85 << 10),
1820          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
1821         {530 | (85 << 10),
1822          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1823         {531 | (85 << 10),
1824          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 81, 85, 85, 85, 213, 63}},
1825         {539 | (533 << 10) | (85 << 20),
1826          {255,
1827           255,
1828           255,
1829           255,
1830           171,
1831           170,
1832           255,
1833           175,
1834           170,
1835           170,
1836           234,
1837           175,
1838           170,
1839           106,
1840           170,
1841           42,
1842           170,
1843           234,
1844           63}},
1845         {538 | (534 << 10) | (85 << 20),
1846          {255,
1847           255,
1848           255,
1849           255,
1850           171,
1851           170,
1852           255,
1853           175,
1854           170,
1855           170,
1856           234,
1857           175,
1858           170,
1859           169,
1860           170,
1861           168,
1862           170,
1863           234,
1864           63}},
1865         {535 | (85 << 10),
1866          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1867         {536 | (85 << 10),
1868          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1869         {537 | (85 << 10),
1870          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
1871         {540 | (85 << 10),
1872          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1873         {541 | (85 << 10),
1874          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 81, 85, 85, 85, 213, 63}},
1875         {542 | (85 << 10),
1876          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1877         {543 | (85 << 10),
1878          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1879         {546 | (85 << 10),
1880          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 69, 85, 85, 213, 63}},
1881         {547 | (85 << 10),
1882          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1883         {548 | (85 << 10),
1884          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1885         {549 | (85 << 10),
1886          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1887         {551 | (85 << 10),
1888          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1889         {553 | (85 << 10),
1890          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1891         {554 | (85 << 10),
1892          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 212, 63}},
1893         {555 | (85 << 10),
1894          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1895         {556 | (85 << 10),
1896          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1897         {557 | (85 << 10),
1898          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1899         {564 | (559 << 10) | (85 << 20),
1900          {255,
1901           255,
1902           255,
1903           255,
1904           171,
1905           170,
1906           255,
1907           175,
1908           170,
1909           170,
1910           234,
1911           111,
1912           170,
1913           170,
1914           170,
1915           168,
1916           170,
1917           234,
1918           63}},
1919         {560 | (85 << 10),
1920          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1921         {561 | (85 << 10),
1922          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 209, 63}},
1923         {562 | (85 << 10),
1924          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1925         {563 | (85 << 10),
1926          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1927         {565 | (85 << 10),
1928          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1929         {566 | (85 << 10),
1930          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 31, 85, 85, 85, 85, 85, 213, 63}},
1931         {567 | (85 << 10),
1932          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1933         {568 | (85 << 10),
1934          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1935         {569 | (85 << 10),
1936          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1937         {572 | (85 << 10),
1938          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1939         {573 | (85 << 10),
1940          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1941         {574 | (85 << 10),
1942          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1943         {576 | (85 << 10),
1944          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1945         {577 | (85 << 10),
1946          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 84, 85, 85, 213, 63}},
1947         {578 | (85 << 10),
1948          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 81, 85, 85, 85, 213, 63}},
1949         {579 | (85 << 10),
1950          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 69, 85, 213, 63}},
1951         {580 | (85 << 10),
1952          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1953         {581 | (85 << 10),
1954          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 81, 213, 63}},
1955         {582 | (85 << 10),
1956          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 81, 85, 213, 63}},
1957         {584 | (85 << 10),
1958          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 21, 85, 85, 85, 213, 63}},
1959         {585 | (85 << 10),
1960          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 84, 213, 63}},
1961         {586 | (85 << 10),
1962          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 21, 85, 85, 85, 85, 213, 63}},
1963         {587 | (85 << 10),
1964          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 84, 85, 213, 63}},
1965         {588 | (85 << 10),
1966          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 21, 85, 85, 213, 63}},
1967         {589 | (85 << 10),
1968          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 81, 85, 85, 213, 63}},
1969         {590 | (85 << 10),
1970          {255, 255, 255, 255, 87, 85, 255, 95, 85, 85, 213, 95, 85, 85, 85, 85, 85, 209, 63}},
1971         {594 | (593 << 10),
1972          {255,
1973           255,
1974           255,
1975           255,
1976           255,
1977           255,
1978           127,
1979           255,
1980           255,
1981           255,
1982           255,
1983           255,
1984           255,
1985           255,
1986           255,
1987           255,
1988           255,
1989           255,
1990           60}},
1991 };
1992 static constexpr IndexEntry kIndices[] = {
1993         0,   -1,  1,   1,   0,   2,   0,   3,   4,   5,   6,   7,   8,   6,   9,   10,  11,  12,
1994         6,   13,  14,  15,  6,   16,  0,   17,  0,   0,   0,   0,   18,  0,   19,  0,   0,   0,
1995         20,  0,   0,   21,  22,  23,  24,  24,  25,  26,  27,  0,   28,  0,   -2,  29,  30,  31,
1996         32,  32,  33,  34,  34,  -3,  -4,  35,  36,  36,  0,   0,   0,   37,  38,  -5,  -5,  0,
1997         0,   39,  40,  0,   0,   41,  0,   42,  0,   43,  0,   0,   44,  44,  0,   0,   45,  0,
1998         0,   46,  47,  44,  48,  49,  50,  51,  52,  53,  54,  55,  56,  57,  58,  59,  60,  61,
1999         44,  62,  63,  64,  65,  44,  -6,  66,  67,  44,  68,  69,  70,  71,  72,  73,  44,  74,
2000         75,  76,  77,  44,  -7,  78,  79,  80,  81,  82,  44,  83,  84,  85,  86,  87,  44,  88,
2001         89,  90,  91,  92,  93,  94,  95,  57,  96,  97,  92,  -8,  98,  99,  44,  100, 47,  101,
2002         102, 103, 104, 105, 106, -9,  107, 108, 109, 44,  110, 111, 112, 113, 114, 44,  115, 44,
2003         116, 117, 92,  118, 119, 120, 121, 122, 123, 124, 125, 126, 44,  127, 128, 92,  -10, 44,
2004         129, 130, 131, 132, -11, 133, 134, 135, 136, 137, 138, 139, -12, 140, 141, 142, 138, 143,
2005         144, 145, 146, 147, 138, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
2006         161, 162, 163, 138, 164, 165, 132, -13, 166, 167, 168, 44,  169, 170, 44,  171, 150, 172,
2007         173, 174, 175, 176, 57,  177, 178, 179, 180, 181, 150, 182, 183, 184, 185, 186, 187, 188,
2008         189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 132, 205,
2009         206, 207, 208, 209, 44,  210, 211, 212, 44,  213, 214, 215, 216, 217, 218, 44,  219, 220,
2010         221, 222, 223, 224, 225, 57,  226, 227, 228, 229, 230, 231, 44,  232, 233, 234, 235, 236,
2011         237, 238, 239, 240, 241, 44,  242, 243, 244, 245, 150, -14, 246, 247, 248, 112, 249, 250,
2012         251, 252, 253, 254, 255, 256, 257, 44,  258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
2013         51,  268, 269, 270, 271, 272, 273, 274, 44,  275, 276, 277, 44,  -15, 278, 279, 280, 281,
2014         282, -16, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
2015         294, 299, -17, 300, 301, 302, 303, 304, 305, 306, 307, 308, 294, 309, 310, 311, 312, 313,
2016         138, 314, 315, 316, 317, 318, 319, 320, 321, 294, 322, 323, 324, 325, 294, 326, 327, 328,
2017         329, 150, 330, 331, 332, 333, 156, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
2018         345, 346, 294, 347, 348, 349, 350, 294, 351, 352, 353, 354, 294, 355, 356, 357, 358, 359,
2019         360, 361, 51,  362, 363, 364, 44,  365, 366, 367, 368, 369, 370, 371, 372, 44,  -18, 373,
2020         374, 375, 376, 377, 57,  378, 379, 380, 381, -19, 382, 383, 384, 385, 386, 138, 387, 388,
2021         389, 390, 391, 138, 151, 392, 393, 394, 395, 396, 397, 398, 138, 399, 70,  400, 401, 44,
2022         402, 403, 404, 405, 358, -20, 406, 407, 408, 132, 409, 410, 411, 412, 413, 44,  264, 414,
2023         415, 416, 417, 112, -21, 418, 419, 420, 421, 187, 422, 211, 423, 424, 425, 426, 427, 132,
2024         428, 429, 430, 431, 432, 211, 433, 434, 435, 436, 437, 57,  -22, 438, 439, 440, 44,  441,
2025         442, 443, 444, 445, 446, 447, 44,  448, 449, 450, 451, 452, 453, 454, 44,  0,   455, 0,
2026         0,   0,   0,
2027 };
get_transition(uint8_t transition,State state)2028 static State get_transition(uint8_t transition, State state) {
2029     IndexEntry index = kIndices[state];
2030     if (index < 0) {
2031         return kFull[~index].data[transition];
2032     }
2033     const CompactEntry& entry = kCompact[index];
2034     int v = entry.data[transition >> 2];
2035     v >>= 2 * (transition & 3);
2036     v &= 3;
2037     v *= 10;
2038     return (entry.values >> v) & 1023;
2039 }
2040 static const uint8_t kAccepts[597] = {
2041         255, 255, 89,  89, 92, 68,  73,  92,  43, 41, 41, 41, 41, 36,  41,  41, 41,  41,  37, 41,
2042         41,  41,  27,  58, 82, 63,  67,  87,  44, 45, 56, 80, 54, 52,  78,  51, 55,  53,  79, 50,
2043         1,   255, 255, 1,  57, 255, 255, 91,  90, 81, 2,  1,  1,  255, 255, 1,  255, 255, 1,  2,
2044         3,   255, 255, 1,  3,  2,   2,   255, 2,  2,  2,  70, 88, 75,  59,  83, 77,  71,  72, 74,
2045         76,  60,  84,  69, 42, 42,  48,  49,  62, 86, 66, 42, 42, 40,  42,  42, 42,  42,  42, 42,
2046         42,  42,  42,  42, 42, 42,  42,  42,  14, 42, 42, 42, 42, 30,  42,  42, 42,  12,  42, 42,
2047         42,  42,  42,  42, 22, 42,  42,  42,  42, 15, 42, 42, 42, 42,  42,  42, 13,  42,  42, 42,
2048         42,  42,  16,  42, 42, 42,  40,  42,  10, 42, 42, 42, 42, 42,  42,  42, 42,  42,  7,  42,
2049         42,  42,  42,  42, 42, 40,  42,  42,  42, 42, 42, 5,  42, 42,  42,  42, 42,  23,  42, 8,
2050         42,  42,  42,  42, 42, 40,  42,  42,  42, 42, 42, 42, 33, 42,  42,  42, 42,  6,   42, 42,
2051         42,  42,  42,  42, 40, 42,  42,  42,  42, 42, 40, 42, 42, 42,  42,  42, 40,  42,  42, 42,
2052         42,  42,  42,  42, 42, 42,  42,  42,  42, 42, 42, 42, 42, 40,  42,  42, 42,  42,  42, 42,
2053         42,  18,  42,  42, 42, 25,  42,  42,  20, 42, 42, 42, 42, 42,  42,  42, 42,  42,  42, 42,
2054         42,  42,  42,  42, 42, 42,  42,  42,  42, 42, 42, 42, 42, 42,  42,  42, 42,  42,  42, 40,
2055         42,  42,  42,  42, 42, 42,  42,  42,  42, 42, 42, 42, 32, 42,  42,  42, 35,  42,  42, 42,
2056         42,  42,  42,  34, 42, 42,  42,  42,  42, 42, 42, 42, 42, 42,  42,  42, 42,  42,  26, 42,
2057         42,  42,  42,  42, 42, 42,  42,  42,  42, 24, 42, 42, 19, 42,  42,  42, 42,  42,  42, 42,
2058         42,  42,  42,  42, 42, 42,  42,  42,  42, 39, 42, 42, 42, 42,  42,  42, 42,  42,  42, 42,
2059         42,  42,  42,  42, 42, 42,  42,  42,  28, 42, 42, 42, 17, 42,  42,  42, 42,  42,  42, 42,
2060         42,  40,  42,  42, 42, 42,  40,  42,  42, 42, 42, 42, 42, 42,  42,  42, 42,  42,  42, 42,
2061         42,  42,  42,  40, 42, 42,  42,  42,  42, 42, 40, 42, 42, 42,  42,  42, 42,  42,  42, 42,
2062         42,  42,  42,  42, 42, 42,  42,  42,  42, 42, 40, 42, 42, 42,  42,  42, 42,  42,  42, 42,
2063         42,  42,  40,  42, 42, 42,  42,  40,  42, 42, 42, 42, 42, 42,  42,  42, 42,  42,  42, 42,
2064         42,  42,  42,  42, 42, 42,  42,  42,  42, 42, 42, 42, 42, 42,  31,  42, 42,  42,  42, 42,
2065         42,  42,  42,  11, 42, 42,  42,  42,  42, 42, 42, 42, 42, 42,  42,  42, 42,  40,  42, 42,
2066         42,  42,  42,  42, 42, 42,  42,  42,  42, 42, 42, 42, 40, 42,  42,  42, 42,  42,  42, 42,
2067         42,  4,   42,  42, 42, 42,  42,  42,  42, 42, 42, 42, 42, 42,  42,  42, 42,  21,  42, 42,
2068         42,  42,  42,  42, 42, 42,  42,  42,  42, 42, 42, 42, 42, 42,  42,  42, 42,  42,  42, 42,
2069         42,  42,  42,  42, 42, 42,  42,  42,  42, 42, 42, 42, 42, 42,  9,   42, 42,  42,  42, 42,
2070         42,  42,  38,  42, 42, 42,  42,  42,  42, 42, 29, 46, 61, 85,  65,  47, 64,
2071 };
2072 
next()2073 Token Lexer::next() {
2074     // Note that we cheat here: normally a lexer needs to worry about the case
2075     // where a token has a prefix which is not itself a valid token - for instance,
2076     // maybe we have a valid token 'while', but 'w', 'wh', etc. are not valid
2077     // tokens. Our grammar doesn't have this property, so we can simplify the logic
2078     // a bit.
2079     int32_t startOffset = fOffset;
2080     State state = 1;
2081     for (;;) {
2082         if (fOffset >= (int32_t)fText.length()) {
2083             if (startOffset == (int32_t)fText.length() || kAccepts[state] == 255) {
2084                 return Token(Token::Kind::TK_END_OF_FILE, startOffset, 0);
2085             }
2086             break;
2087         }
2088         uint8_t c = (uint8_t)(fText[fOffset] - 9);
2089         if (c >= 118) {
2090             c = kInvalidChar;
2091         }
2092         State newState = get_transition(kMappings[c], state);
2093         if (!newState) {
2094             break;
2095         }
2096         state = newState;
2097         ++fOffset;
2098     }
2099     Token::Kind kind = (Token::Kind)kAccepts[state];
2100     return Token(kind, startOffset, fOffset - startOffset);
2101 }
2102 
2103 }  // namespace SkSL
2104