Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
CharUnicodeInfo.cs
Go to the documentation of this file.
3using System.Text;
6
8
9public static class CharUnicodeInfo
10{
11 private static ReadOnlySpan<byte> CategoryCasingLevel1Index => new byte[2176]
12 {
13 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
14 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
15 20, 21, 22, 23, 24, 25, 26, 26, 26, 26,
16 26, 26, 26, 26, 26, 26, 26, 26, 27, 26,
17 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
18 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
19 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
20 26, 26, 26, 26, 26, 26, 26, 26, 26, 28,
21 29, 26, 30, 31, 32, 33, 26, 26, 26, 26,
22 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
23 26, 26, 26, 26, 26, 26, 26, 34, 35, 35,
24 35, 35, 36, 36, 36, 36, 36, 36, 36, 36,
25 36, 36, 36, 36, 37, 38, 39, 40, 41, 42,
26 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
27 53, 54, 55, 56, 26, 57, 58, 59, 59, 59,
28 59, 59, 26, 26, 60, 59, 59, 59, 59, 59,
29 59, 59, 26, 61, 59, 59, 59, 59, 59, 59,
30 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
31 26, 62, 59, 63, 26, 26, 26, 26, 26, 26,
32 26, 26, 26, 26, 26, 64, 26, 26, 65, 59,
33 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
34 59, 59, 59, 59, 59, 59, 66, 67, 59, 59,
35 59, 59, 68, 59, 59, 59, 59, 59, 59, 59,
36 59, 59, 69, 70, 71, 72, 73, 74, 59, 59,
37 75, 76, 59, 59, 77, 78, 79, 80, 81, 82,
38 83, 84, 85, 86, 59, 87, 26, 26, 26, 26,
39 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
40 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
41 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
42 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
43 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
44 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
45 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
46 26, 26, 26, 26, 26, 26, 26, 26, 26, 88,
47 26, 26, 26, 26, 26, 26, 26, 89, 90, 26,
48 26, 26, 26, 26, 26, 26, 26, 26, 26, 91,
49 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
50 26, 26, 26, 92, 59, 59, 59, 59, 59, 59,
51 26, 93, 59, 87, 26, 26, 26, 26, 26, 26,
52 26, 26, 26, 94, 59, 59, 59, 59, 59, 59,
53 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
54 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
55 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
56 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
57 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
58 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
59 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
60 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
61 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
62 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
63 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
64 59, 87, 59, 59, 59, 59, 59, 59, 59, 59,
65 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
66 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
67 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
68 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
69 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
70 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
71 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
72 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
73 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
74 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
75 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
76 59, 59, 59, 59, 59, 59, 59, 59, 59, 87,
77 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
78 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
79 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
80 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
81 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
82 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
83 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
84 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
85 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
86 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
87 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
88 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
89 59, 59, 59, 59, 59, 59, 59, 87, 59, 59,
90 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
91 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
92 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
93 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
94 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
95 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
96 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
97 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
98 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
99 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
100 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
101 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
102 59, 59, 59, 59, 59, 87, 59, 59, 59, 59,
103 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
104 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
105 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
106 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
107 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
108 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
109 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
110 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
111 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
112 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
113 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
114 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
115 59, 59, 59, 87, 59, 59, 59, 59, 59, 59,
116 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
117 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
118 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
119 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
120 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
121 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
122 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
123 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
124 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
125 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
126 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
127 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
128 59, 87, 59, 59, 59, 59, 59, 59, 59, 59,
129 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
130 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
131 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
132 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
133 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
134 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
135 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
136 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
137 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
138 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
139 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
140 59, 59, 59, 59, 59, 59, 59, 59, 59, 87,
141 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
142 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
143 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
144 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
145 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
146 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
147 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
148 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
149 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
150 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
151 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
152 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
153 59, 59, 59, 59, 59, 59, 59, 87, 59, 59,
154 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
155 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
156 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
157 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
158 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
159 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
160 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
161 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
162 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
163 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
164 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
165 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
166 59, 59, 59, 59, 59, 87, 59, 59, 59, 59,
167 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
168 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
169 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
170 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
171 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
172 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
173 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
174 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
175 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
176 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
177 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
178 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
179 59, 59, 59, 87, 59, 59, 59, 59, 59, 59,
180 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
181 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
182 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
183 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
184 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
185 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
186 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
187 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
188 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
189 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
190 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
191 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
192 59, 87, 95, 96, 96, 96, 96, 96, 96, 96,
193 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
194 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
195 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
196 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
197 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
198 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
199 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
200 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
201 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
202 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
203 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
204 59, 59, 59, 59, 59, 59, 59, 59, 59, 87,
205 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
206 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
207 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
208 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
209 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
210 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
211 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
212 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
213 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
214 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
215 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
216 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
217 36, 36, 36, 36, 36, 36, 36, 97, 36, 36,
218 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
219 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
220 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
221 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
222 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
223 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
224 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
225 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
226 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
227 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
228 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
229 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
230 36, 36, 36, 36, 36, 97
231 };
232
233 private static ReadOnlySpan<byte> CategoryCasingLevel2Index => new byte[6272]
234 {
235 0, 0, 1, 0, 2, 0, 3, 0, 4, 0,
236 5, 0, 6, 0, 7, 0, 8, 0, 1, 0,
237 9, 0, 10, 0, 11, 0, 12, 0, 13, 0,
238 14, 0, 15, 0, 15, 0, 15, 0, 16, 0,
239 17, 0, 15, 0, 15, 0, 18, 0, 19, 0,
240 20, 0, 21, 0, 22, 0, 23, 0, 24, 0,
241 15, 0, 25, 0, 15, 0, 15, 0, 26, 0,
242 27, 0, 28, 0, 29, 0, 30, 0, 31, 0,
243 32, 0, 33, 0, 34, 0, 35, 0, 36, 0,
244 37, 0, 38, 0, 39, 0, 40, 0, 40, 0,
245 40, 0, 40, 0, 41, 0, 40, 0, 40, 0,
246 42, 0, 43, 0, 44, 0, 45, 0, 46, 0,
247 47, 0, 48, 0, 15, 0, 49, 0, 50, 0,
248 11, 0, 11, 0, 13, 0, 13, 0, 51, 0,
249 15, 0, 15, 0, 52, 0, 15, 0, 15, 0,
250 15, 0, 53, 0, 15, 0, 15, 0, 15, 0,
251 15, 0, 15, 0, 15, 0, 54, 0, 55, 0,
252 56, 0, 57, 0, 58, 0, 59, 0, 60, 0,
253 40, 0, 61, 0, 62, 0, 63, 0, 64, 0,
254 65, 0, 66, 0, 67, 0, 63, 0, 63, 0,
255 68, 0, 40, 0, 69, 0, 70, 0, 63, 0,
256 63, 0, 63, 0, 63, 0, 63, 0, 71, 0,
257 72, 0, 73, 0, 74, 0, 75, 0, 63, 0,
258 40, 0, 76, 0, 63, 0, 63, 0, 63, 0,
259 63, 0, 63, 0, 77, 0, 78, 0, 79, 0,
260 63, 0, 80, 0, 81, 0, 63, 0, 82, 0,
261 83, 0, 84, 0, 63, 0, 85, 0, 86, 0,
262 87, 0, 87, 0, 87, 0, 63, 0, 88, 0,
263 89, 0, 90, 0, 91, 0, 40, 0, 92, 0,
264 93, 0, 93, 0, 94, 0, 95, 0, 96, 0,
265 97, 0, 98, 0, 99, 0, 100, 0, 101, 0,
266 102, 0, 103, 0, 104, 0, 105, 0, 106, 0,
267 107, 0, 100, 0, 101, 0, 108, 0, 109, 0,
268 110, 0, 111, 0, 112, 0, 113, 0, 114, 0,
269 101, 0, 115, 0, 116, 0, 117, 0, 105, 0,
270 118, 0, 119, 0, 100, 0, 101, 0, 120, 0,
271 121, 0, 122, 0, 105, 0, 123, 0, 124, 0,
272 125, 0, 126, 0, 127, 0, 128, 0, 129, 0,
273 111, 0, 130, 0, 131, 0, 132, 0, 101, 0,
274 133, 0, 134, 0, 135, 0, 105, 0, 136, 0,
275 137, 0, 132, 0, 101, 0, 138, 0, 139, 0,
276 140, 0, 105, 0, 141, 0, 142, 0, 132, 0,
277 93, 0, 143, 0, 144, 0, 145, 0, 105, 0,
278 146, 0, 147, 0, 148, 0, 93, 0, 149, 0,
279 150, 0, 151, 0, 111, 0, 152, 0, 153, 0,
280 93, 0, 93, 0, 154, 0, 155, 0, 156, 0,
281 157, 0, 157, 0, 158, 0, 93, 0, 159, 0,
282 160, 0, 161, 0, 162, 0, 157, 0, 157, 0,
283 163, 0, 164, 0, 165, 0, 166, 0, 167, 0,
284 93, 0, 168, 0, 169, 0, 170, 0, 171, 0,
285 40, 0, 172, 0, 173, 0, 174, 0, 157, 0,
286 157, 0, 93, 0, 93, 0, 175, 0, 176, 0,
287 177, 0, 178, 0, 179, 0, 180, 0, 181, 0,
288 182, 0, 183, 0, 183, 0, 184, 0, 185, 0,
289 185, 0, 186, 0, 93, 0, 93, 0, 93, 0,
290 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
291 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
292 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
293 93, 0, 93, 0, 187, 0, 188, 0, 93, 0,
294 93, 0, 187, 0, 93, 0, 93, 0, 189, 0,
295 190, 0, 191, 0, 93, 0, 93, 0, 93, 0,
296 190, 0, 93, 0, 93, 0, 93, 0, 192, 0,
297 193, 0, 194, 0, 93, 0, 195, 0, 196, 0,
298 196, 0, 196, 0, 196, 0, 196, 0, 197, 0,
299 198, 0, 93, 0, 93, 0, 93, 0, 93, 0,
300 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
301 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
302 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
303 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
304 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
305 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
306 93, 0, 93, 0, 93, 0, 199, 0, 93, 0,
307 200, 0, 201, 0, 93, 0, 93, 0, 93, 0,
308 93, 0, 202, 0, 203, 0, 204, 0, 205, 0,
309 93, 0, 206, 0, 93, 0, 207, 0, 204, 0,
310 208, 0, 93, 0, 93, 0, 93, 0, 209, 0,
311 210, 0, 211, 0, 212, 0, 213, 0, 214, 0,
312 212, 0, 93, 0, 93, 0, 215, 0, 93, 0,
313 93, 0, 216, 0, 217, 0, 93, 0, 218, 0,
314 93, 0, 93, 0, 93, 0, 93, 0, 219, 0,
315 93, 0, 220, 0, 221, 0, 222, 0, 223, 0,
316 93, 0, 224, 0, 225, 0, 93, 0, 93, 0,
317 226, 0, 93, 0, 227, 0, 228, 0, 229, 0,
318 229, 0, 93, 0, 230, 0, 93, 0, 93, 0,
319 93, 0, 231, 0, 232, 0, 233, 0, 212, 0,
320 212, 0, 234, 0, 235, 0, 236, 0, 157, 0,
321 157, 0, 157, 0, 237, 0, 93, 0, 93, 0,
322 238, 0, 239, 0, 177, 0, 240, 0, 241, 0,
323 242, 0, 93, 0, 243, 0, 244, 0, 93, 0,
324 93, 0, 245, 0, 246, 0, 93, 0, 93, 0,
325 247, 0, 248, 0, 249, 0, 244, 0, 93, 0,
326 250, 0, 251, 0, 252, 0, 252, 0, 253, 0,
327 254, 0, 255, 0, 0, 1, 1, 1, 34, 0,
328 34, 0, 2, 1, 3, 1, 3, 1, 3, 1,
329 4, 1, 5, 1, 6, 1, 7, 1, 3, 1,
330 3, 1, 40, 0, 40, 0, 40, 0, 8, 1,
331 15, 0, 15, 0, 15, 0, 15, 0, 15, 0,
332 15, 0, 15, 0, 15, 0, 15, 0, 9, 1,
333 15, 0, 15, 0, 15, 0, 15, 0, 15, 0,
334 15, 0, 10, 1, 11, 1, 10, 1, 10, 1,
335 11, 1, 12, 1, 10, 1, 13, 1, 14, 1,
336 14, 1, 14, 1, 15, 1, 16, 1, 17, 1,
337 18, 1, 19, 1, 20, 1, 21, 1, 22, 1,
338 23, 1, 24, 1, 25, 1, 26, 1, 27, 1,
339 28, 1, 29, 1, 30, 1, 30, 1, 31, 1,
340 32, 1, 33, 1, 236, 0, 34, 1, 35, 1,
341 36, 1, 37, 1, 38, 1, 39, 1, 40, 1,
342 41, 1, 42, 1, 43, 1, 44, 1, 229, 0,
343 45, 1, 46, 1, 229, 0, 47, 1, 48, 1,
344 48, 1, 48, 1, 48, 1, 48, 1, 48, 1,
345 48, 1, 48, 1, 48, 1, 48, 1, 48, 1,
346 48, 1, 48, 1, 48, 1, 48, 1, 48, 1,
347 49, 1, 229, 0, 50, 1, 51, 1, 52, 1,
348 52, 1, 52, 1, 53, 1, 229, 0, 54, 1,
349 48, 1, 55, 1, 229, 0, 56, 1, 57, 1,
350 229, 0, 229, 0, 229, 0, 58, 1, 157, 0,
351 59, 1, 157, 0, 39, 1, 39, 1, 39, 1,
352 60, 1, 52, 1, 61, 1, 62, 1, 63, 1,
353 64, 1, 39, 1, 229, 0, 229, 0, 229, 0,
354 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
355 229, 0, 229, 0, 229, 0, 65, 1, 66, 1,
356 229, 0, 229, 0, 67, 1, 229, 0, 229, 0,
357 229, 0, 229, 0, 229, 0, 229, 0, 68, 1,
358 229, 0, 229, 0, 229, 0, 69, 1, 229, 0,
359 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
360 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
361 70, 1, 71, 1, 39, 1, 72, 1, 229, 0,
362 229, 0, 73, 1, 48, 1, 74, 1, 48, 1,
363 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
364 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
365 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
366 52, 1, 48, 1, 48, 1, 48, 1, 48, 1,
367 48, 1, 48, 1, 48, 1, 48, 1, 75, 1,
368 76, 1, 48, 1, 48, 1, 48, 1, 77, 1,
369 48, 1, 78, 1, 48, 1, 48, 1, 48, 1,
370 48, 1, 48, 1, 48, 1, 48, 1, 48, 1,
371 48, 1, 48, 1, 48, 1, 48, 1, 48, 1,
372 48, 1, 48, 1, 48, 1, 229, 0, 229, 0,
373 229, 0, 48, 1, 79, 1, 229, 0, 229, 0,
374 80, 1, 229, 0, 81, 1, 229, 0, 229, 0,
375 229, 0, 229, 0, 229, 0, 229, 0, 55, 0,
376 55, 0, 82, 1, 58, 0, 58, 0, 83, 1,
377 84, 1, 85, 1, 15, 0, 15, 0, 15, 0,
378 15, 0, 15, 0, 15, 0, 86, 1, 87, 1,
379 88, 1, 88, 1, 89, 1, 93, 0, 93, 0,
380 93, 0, 90, 1, 91, 1, 93, 0, 92, 1,
381 93, 1, 93, 1, 93, 1, 93, 1, 40, 0,
382 40, 0, 94, 1, 95, 1, 96, 1, 97, 1,
383 98, 1, 99, 1, 157, 0, 157, 0, 229, 0,
384 100, 1, 229, 0, 229, 0, 229, 0, 229, 0,
385 229, 0, 101, 1, 229, 0, 229, 0, 229, 0,
386 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
387 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
388 102, 1, 157, 0, 103, 1, 104, 1, 105, 1,
389 106, 1, 107, 1, 153, 0, 93, 0, 93, 0,
390 93, 0, 93, 0, 108, 1, 198, 0, 93, 0,
391 93, 0, 93, 0, 93, 0, 109, 1, 110, 1,
392 93, 0, 93, 0, 153, 0, 93, 0, 93, 0,
393 93, 0, 93, 0, 220, 0, 111, 1, 93, 0,
394 93, 0, 229, 0, 229, 0, 101, 1, 93, 0,
395 52, 1, 112, 1, 113, 1, 52, 1, 114, 1,
396 115, 1, 52, 1, 116, 1, 113, 1, 52, 1,
397 52, 1, 117, 1, 118, 1, 52, 1, 52, 1,
398 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
399 52, 1, 52, 1, 52, 1, 119, 1, 52, 1,
400 52, 1, 52, 1, 52, 1, 52, 1, 120, 1,
401 52, 1, 121, 1, 93, 0, 93, 0, 93, 0,
402 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
403 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
404 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
405 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
406 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
407 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
408 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
409 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
410 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
411 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
412 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
413 93, 0, 93, 0, 229, 0, 229, 0, 229, 0,
414 229, 0, 93, 0, 93, 0, 93, 0, 93, 0,
415 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
416 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
417 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
418 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
419 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
420 93, 0, 93, 0, 168, 0, 93, 0, 122, 1,
421 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
422 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
423 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
424 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
425 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
426 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
427 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
428 93, 0, 93, 0, 93, 0, 168, 0, 229, 0,
429 229, 0, 229, 0, 58, 1, 93, 0, 93, 0,
430 250, 0, 93, 0, 93, 0, 93, 0, 93, 0,
431 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
432 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
433 93, 0, 93, 0, 123, 1, 93, 0, 124, 1,
434 157, 0, 15, 0, 15, 0, 125, 1, 126, 1,
435 15, 0, 127, 1, 93, 0, 93, 0, 93, 0,
436 93, 0, 128, 1, 129, 1, 39, 0, 130, 1,
437 131, 1, 132, 1, 15, 0, 15, 0, 15, 0,
438 133, 1, 134, 1, 135, 1, 136, 1, 137, 1,
439 138, 1, 157, 0, 157, 0, 139, 1, 140, 1,
440 93, 0, 141, 1, 142, 1, 93, 0, 93, 0,
441 93, 0, 143, 1, 144, 1, 93, 0, 93, 0,
442 145, 1, 146, 1, 212, 0, 40, 0, 147, 1,
443 244, 0, 93, 0, 148, 1, 93, 0, 149, 1,
444 150, 1, 93, 0, 168, 0, 92, 0, 93, 0,
445 93, 0, 151, 1, 152, 1, 153, 1, 154, 1,
446 155, 1, 93, 0, 93, 0, 156, 1, 157, 1,
447 158, 1, 159, 1, 93, 0, 160, 1, 93, 0,
448 93, 0, 93, 0, 161, 1, 162, 1, 163, 1,
449 164, 1, 165, 1, 166, 1, 167, 1, 93, 1,
450 34, 0, 34, 0, 168, 1, 169, 1, 170, 1,
451 170, 1, 170, 1, 170, 1, 170, 1, 93, 0,
452 93, 0, 171, 1, 212, 0, 93, 0, 93, 0,
453 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
454 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
455 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
456 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
457 93, 0, 93, 0, 93, 0, 93, 0, 172, 1,
458 93, 0, 173, 1, 93, 0, 93, 0, 226, 0,
459 174, 1, 174, 1, 174, 1, 174, 1, 174, 1,
460 174, 1, 174, 1, 174, 1, 174, 1, 174, 1,
461 174, 1, 174, 1, 174, 1, 174, 1, 174, 1,
462 174, 1, 174, 1, 174, 1, 174, 1, 174, 1,
463 174, 1, 174, 1, 174, 1, 174, 1, 174, 1,
464 174, 1, 174, 1, 174, 1, 174, 1, 174, 1,
465 174, 1, 174, 1, 175, 1, 175, 1, 175, 1,
466 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
467 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
468 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
469 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
470 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
471 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
472 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
473 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
474 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
475 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
476 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
477 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
478 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
479 93, 0, 93, 0, 224, 0, 93, 0, 93, 0,
480 93, 0, 93, 0, 93, 0, 93, 0, 227, 0,
481 157, 0, 157, 0, 176, 1, 177, 1, 178, 1,
482 179, 1, 180, 1, 63, 0, 63, 0, 63, 0,
483 63, 0, 63, 0, 63, 0, 181, 1, 182, 1,
484 183, 1, 63, 0, 63, 0, 63, 0, 63, 0,
485 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
486 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
487 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
488 63, 0, 63, 0, 184, 1, 87, 0, 63, 0,
489 63, 0, 63, 0, 63, 0, 185, 1, 63, 0,
490 63, 0, 89, 0, 31, 1, 31, 1, 186, 1,
491 40, 0, 187, 1, 40, 0, 188, 1, 189, 1,
492 190, 1, 191, 1, 88, 0, 63, 0, 63, 0,
493 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
494 192, 1, 193, 1, 3, 0, 4, 0, 5, 0,
495 6, 0, 194, 1, 195, 1, 196, 1, 93, 0,
496 197, 1, 93, 0, 220, 0, 198, 1, 199, 1,
497 200, 1, 201, 1, 202, 1, 93, 0, 191, 0,
498 203, 1, 224, 0, 224, 0, 157, 0, 157, 0,
499 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
500 93, 0, 93, 0, 204, 1, 205, 1, 206, 1,
501 206, 1, 207, 1, 208, 1, 208, 1, 208, 1,
502 209, 1, 210, 1, 211, 1, 212, 1, 157, 0,
503 157, 0, 52, 1, 52, 1, 213, 1, 157, 0,
504 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
505 157, 0, 157, 0, 93, 0, 168, 0, 93, 0,
506 93, 0, 93, 0, 117, 0, 214, 1, 215, 1,
507 93, 0, 93, 0, 216, 1, 93, 0, 217, 1,
508 93, 0, 93, 0, 218, 1, 93, 0, 219, 1,
509 93, 0, 93, 0, 220, 1, 221, 1, 157, 0,
510 157, 0, 222, 1, 222, 1, 223, 1, 224, 1,
511 224, 1, 93, 0, 93, 0, 93, 0, 93, 0,
512 224, 0, 212, 0, 222, 1, 222, 1, 225, 1,
513 224, 1, 226, 1, 93, 0, 93, 0, 227, 1,
514 93, 0, 93, 0, 93, 0, 228, 1, 157, 0,
515 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
516 157, 0, 157, 0, 157, 0, 93, 0, 93, 0,
517 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
518 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
519 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
520 93, 0, 93, 0, 92, 1, 93, 0, 219, 0,
521 227, 1, 157, 0, 157, 0, 157, 0, 157, 0,
522 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
523 229, 1, 63, 0, 63, 0, 230, 1, 63, 0,
524 231, 1, 63, 0, 232, 1, 63, 0, 233, 1,
525 234, 1, 87, 0, 87, 0, 87, 0, 63, 0,
526 235, 1, 63, 0, 236, 1, 63, 0, 237, 1,
527 87, 0, 87, 0, 87, 0, 87, 0, 63, 0,
528 63, 0, 63, 0, 238, 1, 239, 1, 240, 1,
529 239, 1, 239, 1, 241, 1, 242, 1, 63, 0,
530 243, 1, 244, 1, 245, 1, 63, 0, 246, 1,
531 63, 0, 247, 1, 87, 0, 87, 0, 248, 1,
532 63, 0, 249, 1, 250, 1, 63, 0, 63, 0,
533 63, 0, 251, 1, 63, 0, 252, 1, 63, 0,
534 253, 1, 63, 0, 254, 1, 255, 1, 87, 0,
535 87, 0, 87, 0, 87, 0, 87, 0, 63, 0,
536 63, 0, 63, 0, 63, 0, 0, 2, 87, 0,
537 87, 0, 87, 0, 1, 2, 1, 2, 1, 2,
538 2, 2, 3, 2, 3, 2, 3, 2, 4, 2,
539 63, 0, 63, 0, 5, 2, 6, 2, 87, 0,
540 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
541 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
542 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
543 87, 0, 87, 0, 39, 1, 7, 2, 63, 0,
544 63, 0, 8, 2, 9, 2, 87, 0, 87, 0,
545 87, 0, 87, 0, 63, 0, 247, 1, 10, 2,
546 63, 0, 77, 0, 11, 2, 87, 0, 87, 0,
547 87, 0, 87, 0, 87, 0, 63, 0, 12, 2,
548 87, 0, 63, 0, 13, 2, 14, 2, 93, 0,
549 93, 0, 15, 2, 16, 2, 17, 2, 18, 2,
550 19, 2, 242, 0, 93, 0, 93, 0, 20, 2,
551 21, 2, 93, 0, 216, 0, 212, 0, 22, 2,
552 93, 0, 23, 2, 24, 2, 25, 2, 93, 0,
553 93, 0, 26, 2, 242, 0, 93, 0, 93, 0,
554 27, 2, 28, 2, 29, 2, 30, 2, 31, 2,
555 93, 0, 114, 0, 32, 2, 33, 2, 157, 0,
556 157, 0, 157, 0, 157, 0, 34, 2, 35, 2,
557 36, 2, 93, 0, 93, 0, 37, 2, 38, 2,
558 212, 0, 39, 2, 100, 0, 101, 0, 40, 2,
559 41, 2, 42, 2, 43, 2, 44, 2, 157, 0,
560 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
561 157, 0, 157, 0, 93, 0, 93, 0, 93, 0,
562 45, 2, 46, 2, 47, 2, 48, 2, 157, 0,
563 93, 0, 93, 0, 93, 0, 49, 2, 50, 2,
564 212, 0, 157, 0, 157, 0, 157, 0, 157, 0,
565 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
566 157, 0, 93, 0, 93, 0, 51, 2, 52, 2,
567 53, 2, 54, 2, 157, 0, 157, 0, 93, 0,
568 93, 0, 93, 0, 55, 2, 56, 2, 212, 0,
569 57, 2, 157, 0, 93, 0, 93, 0, 58, 2,
570 59, 2, 212, 0, 157, 0, 157, 0, 157, 0,
571 93, 0, 192, 0, 60, 2, 61, 2, 157, 0,
572 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
573 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
574 157, 0, 93, 0, 93, 0, 32, 2, 62, 2,
575 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
576 157, 0, 11, 0, 11, 0, 13, 0, 13, 0,
577 165, 0, 63, 2, 64, 2, 65, 2, 93, 0,
578 66, 2, 67, 2, 212, 0, 157, 0, 157, 0,
579 157, 0, 157, 0, 68, 2, 93, 0, 93, 0,
580 69, 2, 70, 2, 157, 0, 71, 2, 93, 0,
581 93, 0, 72, 2, 73, 2, 74, 2, 93, 0,
582 93, 0, 75, 2, 76, 2, 77, 2, 157, 0,
583 93, 0, 93, 0, 93, 0, 216, 0, 157, 0,
584 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
585 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
586 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
587 101, 0, 93, 0, 51, 2, 78, 2, 79, 2,
588 165, 0, 194, 0, 80, 2, 93, 0, 81, 2,
589 82, 2, 83, 2, 157, 0, 157, 0, 157, 0,
590 157, 0, 84, 2, 93, 0, 93, 0, 85, 2,
591 86, 2, 212, 0, 87, 2, 93, 0, 88, 2,
592 89, 2, 212, 0, 157, 0, 157, 0, 157, 0,
593 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
594 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
595 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
596 157, 0, 93, 0, 90, 2, 157, 0, 157, 0,
597 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
598 157, 0, 157, 0, 157, 0, 157, 0, 117, 0,
599 206, 1, 91, 2, 92, 2, 93, 2, 93, 0,
600 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
601 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
602 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
603 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
604 93, 0, 93, 0, 93, 0, 93, 0, 227, 0,
605 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
606 157, 0, 94, 2, 94, 2, 94, 2, 94, 2,
607 94, 2, 94, 2, 95, 2, 96, 2, 93, 0,
608 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
609 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
610 93, 0, 172, 1, 157, 0, 157, 0, 157, 0,
611 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
612 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
613 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
614 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
615 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
616 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
617 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
618 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
619 93, 0, 93, 0, 220, 0, 97, 2, 157, 0,
620 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
621 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
622 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
623 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
624 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
625 157, 0, 157, 0, 93, 0, 93, 0, 93, 0,
626 93, 0, 92, 1, 157, 0, 157, 0, 157, 0,
627 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
628 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
629 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
630 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
631 157, 0, 157, 0, 157, 0, 157, 0, 93, 0,
632 93, 0, 93, 0, 216, 0, 93, 0, 220, 0,
633 153, 1, 157, 0, 157, 0, 157, 0, 157, 0,
634 157, 0, 157, 0, 93, 0, 224, 0, 98, 2,
635 93, 0, 93, 0, 93, 0, 99, 2, 100, 2,
636 101, 2, 102, 2, 103, 2, 93, 0, 157, 0,
637 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
638 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
639 11, 0, 11, 0, 13, 0, 13, 0, 206, 1,
640 104, 2, 157, 0, 157, 0, 157, 0, 157, 0,
641 157, 0, 157, 0, 93, 0, 93, 0, 93, 0,
642 93, 0, 105, 2, 106, 2, 107, 2, 107, 2,
643 108, 2, 109, 2, 157, 0, 157, 0, 157, 0,
644 157, 0, 110, 2, 111, 2, 93, 0, 93, 0,
645 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
646 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
647 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
648 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
649 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
650 93, 0, 93, 0, 93, 0, 93, 0, 227, 1,
651 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
652 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
653 93, 0, 93, 0, 93, 0, 219, 0, 157, 0,
654 157, 0, 216, 0, 157, 0, 157, 0, 157, 0,
655 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
656 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
657 157, 0, 157, 0, 93, 0, 93, 0, 93, 0,
658 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
659 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
660 93, 0, 93, 0, 93, 0, 93, 0, 220, 0,
661 157, 0, 157, 0, 157, 0, 112, 2, 113, 2,
662 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
663 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
664 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
665 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
666 93, 0, 93, 0, 93, 0, 93, 0, 226, 0,
667 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
668 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
669 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
670 157, 0, 93, 0, 93, 0, 93, 0, 93, 0,
671 93, 0, 93, 0, 204, 1, 168, 0, 216, 0,
672 114, 2, 115, 2, 157, 0, 157, 0, 157, 0,
673 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
674 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
675 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
676 157, 0, 157, 0, 157, 0, 52, 1, 52, 1,
677 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
678 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
679 52, 1, 52, 1, 52, 1, 116, 2, 52, 1,
680 52, 1, 117, 2, 52, 1, 52, 1, 52, 1,
681 118, 2, 119, 2, 120, 2, 52, 1, 121, 2,
682 52, 1, 52, 1, 52, 1, 122, 2, 157, 0,
683 229, 0, 229, 0, 229, 0, 229, 0, 123, 2,
684 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
685 157, 0, 157, 0, 157, 0, 157, 0, 206, 1,
686 124, 2, 229, 0, 229, 0, 229, 0, 229, 0,
687 229, 0, 58, 1, 206, 1, 125, 2, 157, 0,
688 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
689 157, 0, 157, 0, 126, 2, 127, 2, 34, 0,
690 128, 2, 129, 2, 130, 2, 131, 2, 126, 2,
691 132, 2, 133, 2, 134, 2, 135, 2, 136, 2,
692 126, 2, 127, 2, 34, 0, 137, 2, 138, 2,
693 34, 0, 139, 2, 140, 2, 141, 2, 142, 2,
694 126, 2, 143, 2, 34, 0, 126, 2, 127, 2,
695 34, 0, 128, 2, 129, 2, 34, 0, 131, 2,
696 126, 2, 132, 2, 142, 2, 126, 2, 143, 2,
697 34, 0, 126, 2, 127, 2, 34, 0, 144, 2,
698 126, 2, 145, 2, 146, 2, 147, 2, 148, 2,
699 34, 0, 149, 2, 126, 2, 150, 2, 151, 2,
700 152, 2, 153, 2, 34, 0, 154, 2, 126, 2,
701 155, 2, 34, 0, 156, 2, 157, 2, 157, 2,
702 157, 2, 52, 1, 52, 1, 52, 1, 52, 1,
703 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
704 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
705 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
706 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
707 52, 1, 52, 1, 52, 1, 52, 1, 52, 1,
708 52, 1, 52, 1, 52, 1, 40, 0, 40, 0,
709 40, 0, 158, 2, 40, 0, 40, 0, 159, 2,
710 160, 2, 161, 2, 162, 2, 163, 2, 157, 0,
711 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
712 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
713 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
714 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
715 164, 2, 165, 2, 166, 2, 157, 0, 157, 0,
716 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
717 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
718 157, 0, 93, 0, 93, 0, 168, 0, 167, 2,
719 168, 2, 157, 0, 157, 0, 157, 0, 157, 0,
720 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
721 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
722 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
723 157, 0, 157, 0, 157, 0, 157, 0, 93, 0,
724 93, 0, 169, 2, 170, 2, 157, 0, 157, 0,
725 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
726 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
727 157, 0, 157, 0, 157, 0, 157, 0, 63, 0,
728 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
729 63, 0, 63, 0, 63, 0, 63, 0, 63, 0,
730 63, 0, 171, 2, 172, 2, 87, 0, 87, 0,
731 173, 2, 173, 2, 174, 2, 175, 2, 176, 2,
732 177, 2, 87, 0, 87, 0, 87, 0, 87, 0,
733 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
734 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
735 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
736 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
737 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
738 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
739 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
740 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
741 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
742 178, 2, 239, 1, 239, 1, 179, 2, 180, 2,
743 87, 0, 87, 0, 87, 0, 87, 0, 178, 2,
744 239, 1, 181, 2, 182, 2, 87, 0, 87, 0,
745 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
746 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
747 183, 2, 63, 0, 184, 2, 185, 2, 186, 2,
748 187, 2, 188, 2, 189, 2, 190, 2, 191, 2,
749 192, 2, 191, 2, 87, 0, 87, 0, 87, 0,
750 193, 2, 87, 0, 87, 0, 87, 0, 87, 0,
751 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
752 87, 0, 87, 0, 87, 0, 87, 0, 87, 0,
753 87, 0, 87, 0, 229, 0, 229, 0, 103, 1,
754 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
755 229, 0, 101, 1, 194, 2, 195, 2, 195, 2,
756 195, 2, 229, 0, 102, 1, 196, 2, 52, 1,
757 121, 1, 52, 1, 52, 1, 52, 1, 197, 2,
758 52, 1, 52, 1, 52, 1, 198, 2, 157, 0,
759 157, 0, 157, 0, 199, 2, 52, 1, 200, 2,
760 52, 1, 52, 1, 201, 2, 122, 2, 202, 2,
761 102, 1, 157, 0, 157, 0, 157, 0, 157, 0,
762 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
763 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
764 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
765 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
766 203, 2, 229, 0, 229, 0, 229, 0, 229, 0,
767 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
768 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
769 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
770 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
771 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
772 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
773 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
774 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
775 229, 0, 204, 2, 211, 1, 211, 1, 229, 0,
776 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
777 229, 0, 101, 1, 229, 0, 229, 0, 229, 0,
778 229, 0, 229, 0, 205, 2, 103, 1, 157, 0,
779 103, 1, 229, 0, 229, 0, 229, 0, 204, 2,
780 195, 0, 229, 0, 229, 0, 204, 2, 229, 0,
781 206, 2, 207, 2, 157, 0, 157, 0, 157, 0,
782 157, 0, 229, 0, 229, 0, 229, 0, 229, 0,
783 229, 0, 229, 0, 229, 0, 208, 2, 229, 0,
784 229, 0, 229, 0, 229, 0, 209, 2, 229, 0,
785 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
786 229, 0, 229, 0, 101, 1, 206, 2, 210, 2,
787 58, 1, 229, 0, 205, 2, 58, 1, 211, 2,
788 58, 1, 157, 0, 157, 0, 229, 0, 229, 0,
789 229, 0, 229, 0, 229, 0, 229, 0, 229, 0,
790 229, 0, 229, 0, 212, 2, 229, 0, 229, 0,
791 59, 1, 157, 0, 157, 0, 213, 2, 157, 0,
792 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
793 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
794 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
795 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
796 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
797 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
798 214, 2, 93, 0, 93, 0, 93, 0, 93, 0,
799 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
800 93, 0, 93, 0, 93, 0, 93, 0, 224, 0,
801 157, 0, 157, 0, 93, 0, 93, 0, 93, 0,
802 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
803 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
804 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
805 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
806 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
807 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
808 93, 0, 93, 0, 225, 0, 93, 0, 93, 0,
809 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
810 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
811 93, 0, 224, 0, 93, 0, 93, 0, 93, 0,
812 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
813 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
814 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
815 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
816 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
817 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
818 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
819 93, 0, 93, 0, 48, 2, 93, 0, 93, 0,
820 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
821 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
822 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
823 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
824 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
825 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
826 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
827 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
828 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
829 93, 0, 93, 0, 93, 0, 93, 0, 117, 0,
830 157, 0, 93, 0, 224, 0, 157, 0, 157, 0,
831 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
832 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
833 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
834 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
835 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
836 157, 0, 157, 0, 157, 0, 93, 0, 93, 0,
837 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
838 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
839 93, 0, 93, 0, 93, 0, 93, 0, 93, 0,
840 93, 0, 93, 0, 93, 0, 204, 1, 157, 0,
841 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
842 157, 0, 157, 0, 157, 0, 157, 0, 157, 0,
843 215, 2, 31, 1, 216, 2, 216, 2, 216, 2,
844 216, 2, 216, 2, 216, 2, 31, 1, 31, 1,
845 31, 1, 31, 1, 31, 1, 31, 1, 31, 1,
846 31, 1, 40, 0, 40, 0, 40, 0, 40, 0,
847 40, 0, 40, 0, 40, 0, 40, 0, 40, 0,
848 40, 0, 40, 0, 40, 0, 40, 0, 40, 0,
849 40, 0, 31, 1, 31, 1, 31, 1, 31, 1,
850 31, 1, 31, 1, 31, 1, 31, 1, 31, 1,
851 31, 1, 31, 1, 31, 1, 31, 1, 31, 1,
852 31, 1, 31, 1, 31, 1, 31, 1, 31, 1,
853 31, 1, 31, 1, 31, 1, 31, 1, 31, 1,
854 31, 1, 31, 1, 31, 1, 31, 1, 31, 1,
855 31, 1, 31, 1, 31, 1, 31, 1, 175, 1,
856 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
857 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
858 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
859 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
860 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
861 175, 1, 175, 1, 175, 1, 175, 1, 175, 1,
862 217, 2
863 };
864
865 private static ReadOnlySpan<byte> CategoryCasingLevel3Index => new byte[11680]
866 {
867 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
868 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,
869 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
870 0, 0, 2, 3, 3, 3, 4, 3, 3, 3,
871 5, 6, 3, 7, 3, 8, 3, 3, 9, 9,
872 9, 9, 9, 9, 9, 9, 9, 9, 3, 3,
873 7, 7, 7, 3, 3, 10, 10, 10, 10, 10,
874 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
875 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
876 10, 5, 3, 6, 11, 12, 11, 13, 13, 13,
877 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
878 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
879 13, 13, 13, 5, 7, 6, 7, 0, 0, 0,
880 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
881 0, 0, 0, 0, 2, 3, 4, 4, 4, 4,
882 14, 3, 11, 14, 15, 16, 7, 17, 14, 11,
883 14, 7, 18, 18, 11, 19, 3, 3, 11, 18,
884 15, 20, 18, 18, 18, 3, 10, 10, 10, 10,
885 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
886 10, 10, 10, 10, 10, 10, 10, 10, 10, 7,
887 10, 10, 10, 10, 10, 10, 10, 21, 13, 13,
888 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
889 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
890 13, 7, 13, 13, 13, 13, 13, 13, 13, 22,
891 23, 24, 23, 24, 23, 24, 23, 24, 23, 24,
892 23, 24, 23, 24, 23, 24, 25, 21, 23, 24,
893 23, 24, 23, 24, 21, 23, 24, 23, 24, 23,
894 24, 23, 24, 23, 24, 23, 24, 23, 24, 23,
895 24, 21, 23, 24, 23, 24, 23, 24, 23, 24,
896 23, 24, 23, 24, 23, 24, 26, 23, 24, 23,
897 24, 23, 24, 21, 27, 28, 23, 24, 23, 24,
898 29, 23, 24, 30, 30, 23, 24, 21, 31, 32,
899 33, 23, 24, 30, 34, 35, 36, 37, 23, 24,
900 38, 21, 36, 39, 40, 41, 23, 24, 23, 24,
901 23, 24, 42, 23, 24, 42, 21, 21, 23, 24,
902 42, 23, 24, 43, 43, 23, 24, 23, 24, 44,
903 23, 24, 21, 15, 23, 24, 21, 45, 15, 15,
904 15, 15, 46, 47, 48, 46, 47, 48, 46, 47,
905 48, 23, 24, 23, 24, 23, 24, 23, 24, 23,
906 24, 23, 24, 23, 24, 23, 24, 49, 23, 24,
907 21, 46, 47, 48, 23, 24, 50, 51, 23, 24,
908 23, 24, 23, 24, 23, 24, 52, 21, 23, 24,
909 23, 24, 23, 24, 23, 24, 23, 24, 23, 24,
910 23, 24, 23, 24, 23, 24, 21, 21, 21, 21,
911 21, 21, 53, 23, 24, 54, 55, 56, 56, 23,
912 24, 57, 58, 59, 23, 24, 23, 24, 23, 24,
913 23, 24, 23, 24, 60, 61, 62, 63, 64, 21,
914 65, 65, 21, 66, 21, 67, 68, 21, 21, 21,
915 65, 69, 21, 70, 21, 71, 72, 21, 73, 74,
916 72, 75, 76, 21, 21, 74, 21, 77, 78, 21,
917 21, 79, 21, 21, 21, 21, 21, 21, 21, 80,
918 21, 21, 81, 21, 82, 81, 21, 21, 21, 83,
919 81, 84, 85, 85, 86, 21, 21, 21, 21, 21,
920 87, 21, 15, 21, 21, 21, 21, 21, 21, 21,
921 21, 88, 89, 21, 21, 21, 21, 21, 21, 21,
922 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
923 90, 90, 90, 90, 90, 90, 90, 90, 90, 91,
924 91, 90, 90, 90, 90, 90, 90, 90, 11, 11,
925 11, 11, 91, 91, 91, 91, 91, 91, 91, 91,
926 91, 91, 90, 90, 11, 11, 11, 11, 11, 11,
927 11, 11, 11, 11, 11, 11, 11, 11, 90, 90,
928 90, 90, 90, 11, 11, 11, 11, 11, 11, 11,
929 91, 11, 90, 11, 11, 11, 11, 11, 11, 11,
930 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
931 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
932 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
933 92, 93, 92, 92, 92, 92, 92, 92, 92, 92,
934 92, 92, 23, 24, 23, 24, 91, 11, 23, 24,
935 94, 94, 90, 40, 40, 40, 3, 95, 94, 94,
936 94, 94, 11, 11, 96, 3, 97, 97, 97, 94,
937 98, 94, 99, 99, 21, 10, 10, 10, 10, 10,
938 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
939 10, 10, 94, 10, 10, 10, 10, 10, 10, 10,
940 10, 10, 100, 101, 101, 101, 21, 13, 13, 13,
941 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
942 13, 13, 13, 13, 102, 13, 13, 13, 13, 13,
943 13, 13, 13, 13, 103, 104, 104, 105, 106, 107,
944 25, 25, 25, 108, 109, 110, 23, 24, 23, 24,
945 23, 24, 23, 24, 111, 112, 113, 114, 115, 116,
946 7, 23, 24, 117, 23, 24, 21, 52, 52, 52,
947 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
948 118, 118, 118, 118, 118, 118, 119, 119, 119, 119,
949 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
950 119, 119, 23, 24, 120, 92, 92, 92, 92, 92,
951 121, 121, 23, 24, 23, 24, 23, 24, 122, 23,
952 24, 23, 24, 23, 24, 23, 24, 23, 24, 23,
953 24, 23, 24, 123, 94, 124, 124, 124, 124, 124,
954 124, 124, 124, 124, 124, 124, 124, 124, 124, 124,
955 124, 124, 124, 124, 124, 124, 124, 124, 124, 124,
956 124, 124, 124, 124, 124, 124, 124, 124, 124, 124,
957 124, 124, 124, 94, 94, 90, 125, 125, 125, 125,
958 125, 125, 21, 126, 126, 126, 126, 126, 126, 126,
959 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
960 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
961 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
962 126, 21, 21, 125, 8, 94, 94, 14, 14, 4,
963 127, 92, 92, 92, 92, 92, 92, 92, 92, 92,
964 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
965 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
966 128, 92, 129, 92, 92, 129, 92, 92, 129, 92,
967 127, 127, 127, 127, 127, 127, 127, 127, 130, 130,
968 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
969 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
970 130, 130, 130, 130, 130, 127, 127, 127, 127, 130,
971 130, 130, 130, 129, 129, 127, 127, 127, 127, 127,
972 127, 127, 127, 127, 127, 127, 17, 17, 17, 17,
973 17, 17, 7, 7, 131, 3, 3, 132, 3, 129,
974 14, 14, 92, 92, 92, 92, 92, 92, 92, 92,
975 92, 92, 92, 129, 133, 127, 129, 129, 134, 130,
976 130, 130, 130, 130, 130, 130, 130, 130, 130, 92,
977 92, 92, 92, 92, 9, 9, 9, 9, 9, 9,
978 9, 9, 9, 9, 3, 3, 3, 129, 130, 130,
979 92, 130, 130, 130, 130, 130, 130, 130, 130, 130,
980 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
981 129, 130, 92, 92, 92, 92, 92, 92, 92, 17,
982 14, 92, 92, 92, 92, 92, 92, 134, 134, 92,
983 92, 14, 92, 92, 92, 92, 130, 130, 9, 9,
984 9, 9, 9, 9, 9, 9, 9, 9, 130, 130,
985 130, 135, 135, 130, 129, 129, 129, 129, 129, 129,
986 129, 129, 129, 129, 129, 129, 129, 129, 127, 133,
987 130, 92, 130, 130, 130, 130, 130, 130, 130, 130,
988 130, 130, 130, 130, 130, 130, 92, 92, 92, 92,
989 92, 92, 92, 92, 92, 92, 92, 127, 127, 130,
990 130, 130, 130, 130, 130, 130, 130, 130, 92, 92,
991 92, 92, 92, 92, 92, 92, 92, 92, 92, 130,
992 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
993 127, 127, 127, 127, 136, 136, 136, 136, 136, 136,
994 136, 136, 136, 136, 130, 130, 130, 130, 130, 130,
995 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
996 130, 92, 92, 92, 92, 92, 92, 92, 92, 92,
997 134, 134, 14, 3, 3, 3, 134, 127, 127, 92,
998 132, 132, 130, 130, 130, 130, 130, 130, 92, 92,
999 92, 92, 134, 92, 92, 92, 92, 92, 92, 92,
1000 92, 92, 134, 92, 92, 92, 134, 92, 92, 92,
1001 92, 92, 127, 127, 129, 129, 129, 129, 129, 129,
1002 129, 129, 129, 129, 129, 129, 129, 129, 129, 127,
1003 130, 130, 130, 130, 130, 130, 130, 130, 130, 92,
1004 92, 92, 127, 127, 129, 127, 130, 130, 130, 130,
1005 130, 130, 130, 130, 130, 130, 130, 127, 127, 127,
1006 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
1007 127, 127, 127, 127, 127, 127, 127, 127, 130, 130,
1008 130, 130, 130, 127, 130, 130, 130, 130, 130, 130,
1009 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1010 130, 130, 127, 127, 127, 127, 127, 127, 127, 127,
1011 127, 127, 127, 92, 92, 92, 92, 92, 92, 92,
1012 92, 92, 92, 92, 92, 92, 92, 92, 17, 92,
1013 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1014 92, 92, 92, 92, 92, 137, 15, 15, 15, 15,
1015 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1016 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1017 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1018 15, 15, 15, 15, 92, 137, 92, 15, 137, 137,
1019 137, 92, 92, 92, 92, 92, 92, 92, 92, 137,
1020 137, 137, 137, 92, 137, 137, 15, 92, 92, 92,
1021 92, 92, 92, 92, 15, 15, 15, 15, 15, 15,
1022 15, 15, 15, 15, 92, 92, 125, 125, 138, 138,
1023 138, 138, 138, 138, 138, 138, 138, 138, 125, 90,
1024 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1025 15, 15, 15, 15, 15, 92, 137, 137, 94, 15,
1026 15, 15, 15, 15, 15, 15, 15, 94, 94, 15,
1027 15, 94, 94, 15, 15, 15, 15, 15, 15, 15,
1028 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1029 15, 15, 15, 15, 15, 94, 15, 15, 15, 15,
1030 15, 15, 15, 94, 15, 94, 94, 94, 15, 15,
1031 15, 15, 94, 94, 92, 15, 137, 137, 137, 92,
1032 92, 92, 92, 94, 94, 137, 137, 94, 94, 137,
1033 137, 92, 15, 94, 94, 94, 94, 94, 94, 94,
1034 94, 137, 94, 94, 94, 94, 15, 15, 94, 15,
1035 15, 15, 92, 92, 94, 94, 138, 138, 138, 138,
1036 138, 138, 138, 138, 138, 138, 15, 15, 4, 4,
1037 139, 139, 139, 139, 139, 139, 120, 4, 15, 125,
1038 92, 94, 94, 92, 92, 137, 94, 15, 15, 15,
1039 15, 15, 15, 94, 94, 94, 94, 15, 15, 94,
1040 15, 15, 94, 15, 15, 94, 15, 15, 94, 94,
1041 92, 94, 137, 137, 137, 92, 92, 94, 94, 94,
1042 94, 92, 92, 94, 94, 92, 92, 92, 94, 94,
1043 94, 92, 94, 94, 94, 94, 94, 94, 94, 15,
1044 15, 15, 15, 94, 15, 94, 94, 94, 94, 94,
1045 94, 94, 138, 138, 138, 138, 138, 138, 138, 138,
1046 138, 138, 92, 92, 15, 15, 15, 92, 125, 94,
1047 94, 94, 94, 94, 94, 94, 94, 94, 94, 92,
1048 92, 137, 94, 15, 15, 15, 15, 15, 15, 15,
1049 15, 15, 94, 15, 15, 15, 94, 15, 15, 15,
1050 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1051 15, 94, 15, 15, 94, 15, 15, 15, 15, 15,
1052 94, 94, 92, 15, 137, 137, 137, 92, 92, 92,
1053 92, 92, 94, 92, 92, 137, 94, 137, 137, 92,
1054 94, 94, 15, 94, 94, 94, 94, 94, 94, 94,
1055 94, 94, 94, 94, 94, 94, 94, 94, 125, 4,
1056 94, 94, 94, 94, 94, 94, 94, 15, 92, 92,
1057 92, 92, 92, 92, 94, 92, 137, 137, 94, 15,
1058 15, 15, 15, 15, 15, 15, 15, 94, 94, 15,
1059 15, 94, 15, 15, 94, 15, 15, 15, 15, 15,
1060 94, 94, 92, 15, 137, 92, 137, 92, 92, 92,
1061 92, 94, 94, 137, 137, 94, 94, 137, 137, 92,
1062 94, 94, 94, 94, 94, 94, 94, 92, 92, 137,
1063 94, 94, 94, 94, 15, 15, 94, 15, 120, 15,
1064 139, 139, 139, 139, 139, 139, 94, 94, 94, 94,
1065 94, 94, 94, 94, 94, 94, 92, 15, 94, 15,
1066 15, 15, 15, 15, 15, 94, 94, 94, 15, 15,
1067 15, 94, 15, 15, 15, 15, 94, 94, 94, 15,
1068 15, 94, 15, 94, 15, 15, 94, 94, 94, 15,
1069 15, 94, 94, 94, 15, 15, 15, 94, 94, 94,
1070 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1071 15, 15, 94, 94, 94, 94, 137, 137, 92, 137,
1072 137, 94, 94, 94, 137, 137, 137, 94, 137, 137,
1073 137, 92, 94, 94, 15, 94, 94, 94, 94, 94,
1074 94, 137, 94, 94, 94, 94, 94, 94, 94, 94,
1075 139, 139, 139, 14, 14, 14, 14, 14, 14, 4,
1076 14, 94, 94, 94, 94, 94, 92, 137, 137, 137,
1077 92, 15, 15, 15, 15, 15, 15, 15, 15, 94,
1078 15, 15, 15, 94, 15, 15, 15, 15, 15, 15,
1079 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1080 15, 15, 15, 15, 15, 15, 15, 15, 94, 94,
1081 94, 15, 92, 92, 92, 137, 137, 137, 137, 94,
1082 92, 92, 92, 94, 92, 92, 92, 92, 94, 94,
1083 94, 94, 94, 94, 94, 92, 92, 94, 15, 15,
1084 15, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1085 94, 94, 94, 125, 18, 18, 18, 18, 18, 18,
1086 18, 120, 15, 92, 137, 137, 125, 15, 15, 15,
1087 15, 15, 15, 15, 15, 94, 15, 15, 15, 15,
1088 15, 15, 94, 15, 15, 15, 15, 15, 94, 94,
1089 92, 15, 137, 140, 137, 137, 137, 137, 137, 94,
1090 140, 137, 137, 94, 137, 137, 92, 92, 94, 94,
1091 94, 94, 94, 94, 94, 137, 137, 94, 94, 94,
1092 94, 94, 94, 94, 15, 94, 94, 15, 15, 94,
1093 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1094 94, 94, 92, 92, 137, 137, 15, 15, 15, 15,
1095 15, 15, 15, 15, 15, 94, 15, 15, 15, 15,
1096 15, 15, 15, 15, 15, 15, 15, 15, 15, 92,
1097 92, 15, 137, 137, 137, 92, 92, 92, 92, 94,
1098 137, 137, 137, 94, 137, 137, 137, 92, 15, 120,
1099 94, 94, 94, 94, 15, 15, 15, 137, 139, 139,
1100 139, 139, 139, 139, 139, 15, 139, 139, 139, 139,
1101 139, 139, 139, 139, 139, 120, 15, 15, 15, 15,
1102 15, 15, 94, 92, 137, 137, 94, 15, 15, 15,
1103 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1104 15, 15, 15, 15, 15, 94, 94, 94, 15, 15,
1105 15, 15, 15, 15, 15, 15, 94, 15, 15, 15,
1106 15, 15, 15, 15, 15, 15, 94, 15, 94, 94,
1107 15, 15, 15, 15, 15, 15, 15, 94, 94, 94,
1108 92, 94, 94, 94, 94, 137, 137, 137, 92, 92,
1109 92, 94, 92, 94, 137, 137, 137, 137, 137, 137,
1110 137, 137, 94, 94, 137, 137, 125, 94, 94, 94,
1111 94, 94, 94, 94, 94, 94, 94, 94, 94, 15,
1112 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1113 15, 15, 15, 15, 15, 92, 15, 15, 92, 92,
1114 92, 92, 92, 92, 92, 94, 94, 94, 94, 4,
1115 15, 15, 15, 15, 15, 15, 90, 92, 92, 92,
1116 92, 92, 92, 92, 92, 125, 138, 138, 138, 138,
1117 138, 138, 138, 138, 138, 138, 125, 125, 94, 94,
1118 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1119 94, 94, 94, 94, 94, 94, 94, 94, 94, 15,
1120 15, 94, 15, 94, 15, 15, 15, 15, 15, 94,
1121 15, 15, 15, 15, 15, 15, 15, 15, 94, 15,
1122 94, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1123 15, 92, 15, 15, 92, 92, 92, 92, 92, 92,
1124 92, 92, 92, 15, 94, 94, 15, 15, 15, 15,
1125 15, 94, 90, 94, 92, 92, 92, 92, 92, 92,
1126 94, 94, 138, 138, 138, 138, 138, 138, 138, 138,
1127 138, 138, 94, 94, 15, 15, 15, 15, 15, 120,
1128 120, 120, 125, 125, 125, 125, 125, 125, 125, 125,
1129 125, 125, 125, 125, 125, 125, 125, 120, 125, 120,
1130 120, 120, 92, 92, 120, 120, 120, 120, 120, 120,
1131 138, 138, 138, 138, 138, 138, 138, 138, 138, 138,
1132 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
1133 120, 92, 120, 92, 120, 92, 5, 6, 5, 6,
1134 137, 137, 15, 15, 15, 15, 15, 15, 15, 15,
1135 94, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1136 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1137 15, 94, 94, 94, 94, 92, 92, 92, 92, 92,
1138 92, 92, 92, 92, 92, 92, 92, 92, 92, 137,
1139 92, 92, 92, 92, 92, 125, 92, 92, 15, 15,
1140 15, 15, 15, 92, 92, 92, 92, 92, 92, 92,
1141 92, 92, 92, 92, 94, 92, 92, 92, 92, 92,
1142 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1143 92, 92, 92, 92, 92, 94, 120, 120, 120, 120,
1144 120, 120, 120, 120, 92, 120, 120, 120, 120, 120,
1145 120, 94, 120, 120, 125, 125, 125, 125, 125, 120,
1146 120, 120, 120, 125, 125, 94, 94, 94, 94, 94,
1147 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1148 15, 137, 137, 92, 92, 92, 92, 137, 92, 92,
1149 92, 92, 92, 92, 137, 92, 92, 137, 137, 92,
1150 92, 15, 138, 138, 138, 138, 138, 138, 138, 138,
1151 138, 138, 125, 125, 125, 125, 125, 125, 15, 15,
1152 15, 15, 15, 15, 137, 137, 92, 92, 15, 15,
1153 15, 15, 92, 92, 92, 15, 137, 137, 137, 15,
1154 15, 137, 137, 137, 137, 137, 137, 137, 15, 15,
1155 15, 92, 92, 92, 92, 15, 15, 15, 15, 15,
1156 15, 15, 15, 15, 15, 15, 15, 15, 92, 137,
1157 137, 92, 92, 137, 137, 137, 137, 137, 137, 92,
1158 15, 137, 138, 138, 138, 138, 138, 138, 138, 138,
1159 138, 138, 137, 137, 137, 92, 120, 120, 141, 141,
1160 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1161 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
1162 94, 141, 94, 94, 94, 94, 94, 141, 94, 94,
1163 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
1164 142, 142, 142, 142, 142, 142, 142, 142, 142, 142,
1165 142, 142, 142, 142, 142, 142, 142, 125, 90, 142,
1166 142, 142, 15, 15, 15, 15, 15, 15, 15, 15,
1167 15, 94, 15, 15, 15, 15, 94, 94, 15, 15,
1168 15, 15, 15, 15, 15, 94, 15, 94, 15, 15,
1169 15, 15, 94, 94, 15, 94, 15, 15, 15, 15,
1170 94, 94, 15, 15, 15, 15, 15, 15, 15, 94,
1171 15, 94, 15, 15, 15, 15, 94, 94, 15, 15,
1172 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1173 15, 15, 15, 94, 15, 15, 15, 15, 15, 15,
1174 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1175 15, 15, 15, 94, 94, 92, 92, 92, 125, 125,
1176 125, 125, 125, 125, 125, 125, 125, 139, 139, 139,
1177 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
1178 139, 139, 139, 139, 139, 139, 139, 94, 94, 94,
1179 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1180 94, 94, 94, 94, 94, 94, 143, 143, 143, 143,
1181 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
1182 143, 143, 144, 144, 144, 144, 144, 144, 94, 94,
1183 145, 145, 145, 145, 145, 145, 94, 94, 8, 15,
1184 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1185 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1186 15, 15, 15, 15, 15, 15, 15, 120, 125, 15,
1187 2, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1188 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1189 15, 15, 15, 15, 15, 15, 15, 5, 6, 94,
1190 94, 94, 15, 15, 15, 15, 15, 15, 15, 15,
1191 15, 15, 15, 125, 125, 125, 146, 146, 146, 15,
1192 15, 15, 15, 15, 15, 15, 15, 94, 94, 94,
1193 94, 94, 94, 94, 15, 15, 15, 15, 15, 15,
1194 15, 15, 15, 15, 15, 15, 15, 94, 15, 15,
1195 15, 15, 92, 92, 92, 94, 94, 94, 94, 94,
1196 94, 94, 94, 94, 94, 94, 15, 15, 92, 92,
1197 92, 125, 125, 94, 94, 94, 94, 94, 94, 94,
1198 94, 94, 15, 15, 92, 92, 94, 94, 94, 94,
1199 94, 94, 94, 94, 94, 94, 94, 94, 15, 94,
1200 92, 92, 94, 94, 94, 94, 94, 94, 94, 94,
1201 94, 94, 94, 94, 15, 15, 15, 15, 92, 92,
1202 137, 92, 92, 92, 92, 92, 92, 92, 137, 137,
1203 137, 137, 137, 137, 137, 137, 92, 137, 137, 92,
1204 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1205 125, 125, 125, 90, 125, 125, 125, 4, 15, 92,
1206 94, 94, 138, 138, 138, 138, 138, 138, 138, 138,
1207 138, 138, 94, 94, 94, 94, 94, 94, 18, 18,
1208 18, 18, 18, 18, 18, 18, 18, 18, 94, 94,
1209 94, 94, 94, 94, 3, 3, 3, 3, 3, 3,
1210 8, 3, 3, 3, 3, 92, 92, 92, 17, 94,
1211 15, 15, 15, 90, 15, 15, 15, 15, 15, 15,
1212 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1213 15, 15, 15, 15, 15, 94, 94, 94, 94, 94,
1214 94, 94, 15, 15, 15, 15, 15, 92, 92, 15,
1215 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1216 15, 15, 15, 15, 15, 15, 15, 92, 15, 94,
1217 94, 94, 94, 94, 15, 15, 15, 15, 15, 15,
1218 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1219 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1220 15, 15, 15, 15, 15, 94, 92, 92, 92, 137,
1221 137, 137, 137, 92, 92, 137, 137, 137, 94, 94,
1222 94, 94, 137, 137, 92, 137, 137, 137, 137, 137,
1223 137, 92, 92, 92, 94, 94, 94, 94, 14, 94,
1224 94, 94, 3, 3, 138, 138, 138, 138, 138, 138,
1225 138, 138, 138, 138, 15, 15, 15, 15, 15, 15,
1226 15, 15, 15, 15, 15, 15, 15, 15, 94, 94,
1227 15, 15, 15, 15, 15, 94, 94, 94, 94, 94,
1228 94, 94, 94, 94, 94, 94, 15, 15, 15, 15,
1229 15, 15, 15, 15, 15, 15, 15, 15, 94, 94,
1230 94, 94, 15, 15, 15, 15, 15, 15, 15, 15,
1231 15, 15, 94, 94, 94, 94, 94, 94, 138, 138,
1232 138, 138, 138, 138, 138, 138, 138, 138, 139, 94,
1233 94, 94, 14, 14, 14, 14, 14, 14, 14, 14,
1234 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1235 15, 15, 15, 15, 15, 15, 15, 92, 92, 137,
1236 137, 92, 94, 94, 125, 125, 15, 15, 15, 15,
1237 15, 137, 92, 137, 92, 92, 92, 92, 92, 92,
1238 92, 94, 92, 137, 92, 137, 137, 92, 92, 92,
1239 92, 92, 92, 92, 92, 137, 137, 137, 137, 137,
1240 137, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1241 92, 94, 94, 92, 125, 125, 125, 125, 125, 125,
1242 125, 90, 125, 125, 125, 125, 125, 125, 94, 94,
1243 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1244 92, 92, 92, 92, 121, 92, 92, 94, 94, 94,
1245 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1246 94, 94, 92, 92, 92, 92, 137, 15, 15, 15,
1247 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1248 15, 15, 92, 137, 92, 92, 92, 92, 92, 137,
1249 92, 137, 137, 137, 137, 137, 92, 137, 137, 15,
1250 15, 15, 15, 15, 15, 15, 94, 94, 94, 94,
1251 125, 120, 120, 120, 120, 120, 120, 120, 120, 120,
1252 120, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1253 120, 120, 120, 120, 120, 120, 120, 120, 120, 94,
1254 94, 94, 92, 92, 137, 15, 15, 15, 15, 15,
1255 15, 15, 15, 15, 15, 15, 15, 15, 15, 137,
1256 92, 92, 92, 92, 137, 137, 92, 92, 137, 92,
1257 92, 92, 15, 15, 138, 138, 138, 138, 138, 138,
1258 138, 138, 138, 138, 15, 15, 15, 15, 15, 15,
1259 15, 15, 15, 15, 15, 15, 92, 137, 92, 92,
1260 137, 137, 137, 92, 137, 92, 92, 92, 137, 137,
1261 94, 94, 94, 94, 94, 94, 94, 94, 125, 125,
1262 125, 125, 15, 15, 15, 15, 137, 137, 137, 137,
1263 137, 137, 137, 137, 92, 92, 92, 92, 92, 92,
1264 92, 92, 137, 137, 92, 92, 94, 94, 94, 125,
1265 125, 125, 125, 125, 138, 138, 138, 138, 138, 138,
1266 138, 138, 138, 138, 94, 94, 94, 15, 15, 15,
1267 15, 15, 15, 15, 15, 15, 15, 15, 90, 90,
1268 90, 90, 90, 90, 125, 125, 147, 148, 149, 150,
1269 150, 151, 152, 153, 154, 94, 94, 94, 94, 94,
1270 94, 94, 155, 155, 155, 155, 155, 155, 155, 155,
1271 155, 155, 155, 155, 155, 155, 155, 155, 155, 155,
1272 155, 155, 155, 155, 155, 155, 155, 155, 155, 94,
1273 94, 155, 155, 155, 125, 125, 125, 125, 125, 125,
1274 125, 125, 94, 94, 94, 94, 94, 94, 94, 94,
1275 92, 92, 92, 125, 92, 92, 92, 92, 92, 92,
1276 92, 92, 92, 92, 92, 92, 92, 137, 92, 92,
1277 92, 92, 92, 92, 92, 15, 15, 15, 15, 92,
1278 15, 15, 15, 15, 15, 15, 92, 15, 15, 137,
1279 92, 92, 15, 94, 94, 94, 94, 94, 21, 21,
1280 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1281 90, 90, 90, 90, 90, 90, 90, 90, 90, 90,
1282 90, 90, 90, 90, 90, 90, 90, 90, 90, 90,
1283 90, 90, 90, 90, 90, 90, 90, 90, 90, 90,
1284 90, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1285 21, 21, 21, 21, 90, 156, 21, 21, 21, 157,
1286 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1287 21, 21, 21, 21, 21, 21, 158, 21, 21, 21,
1288 21, 21, 21, 21, 21, 21, 21, 21, 21, 90,
1289 90, 90, 90, 90, 92, 92, 92, 92, 92, 92,
1290 92, 92, 92, 92, 94, 92, 92, 92, 92, 92,
1291 23, 24, 23, 24, 23, 24, 21, 21, 21, 21,
1292 21, 159, 21, 21, 160, 21, 161, 161, 161, 161,
1293 161, 161, 161, 161, 162, 162, 162, 162, 162, 162,
1294 162, 162, 161, 161, 161, 161, 161, 161, 94, 94,
1295 162, 162, 162, 162, 162, 162, 94, 94, 21, 161,
1296 21, 161, 21, 161, 21, 161, 94, 162, 94, 162,
1297 94, 162, 94, 162, 163, 163, 164, 164, 164, 164,
1298 165, 165, 166, 166, 167, 167, 168, 168, 94, 94,
1299 161, 161, 161, 161, 161, 161, 161, 161, 169, 169,
1300 169, 169, 169, 169, 169, 169, 161, 161, 21, 170,
1301 21, 94, 21, 21, 162, 162, 171, 171, 172, 11,
1302 173, 11, 11, 11, 21, 170, 21, 94, 21, 21,
1303 174, 174, 174, 174, 172, 11, 11, 11, 161, 161,
1304 21, 21, 94, 94, 21, 21, 162, 162, 175, 175,
1305 94, 11, 11, 11, 161, 161, 21, 21, 21, 113,
1306 21, 21, 162, 162, 176, 176, 117, 11, 11, 11,
1307 94, 94, 21, 170, 21, 94, 21, 21, 177, 177,
1308 178, 178, 172, 11, 11, 94, 2, 2, 2, 2,
1309 2, 2, 2, 2, 2, 2, 2, 17, 17, 17,
1310 179, 133, 8, 8, 8, 8, 8, 8, 3, 3,
1311 16, 20, 5, 16, 16, 20, 5, 16, 3, 3,
1312 3, 3, 3, 3, 3, 3, 180, 181, 17, 17,
1313 17, 17, 17, 2, 3, 3, 3, 3, 3, 3,
1314 3, 3, 3, 16, 20, 3, 3, 3, 3, 12,
1315 12, 3, 3, 3, 7, 5, 6, 3, 3, 3,
1316 3, 3, 3, 3, 3, 3, 3, 3, 7, 3,
1317 12, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1318 3, 2, 17, 17, 17, 17, 17, 182, 17, 17,
1319 17, 17, 17, 17, 17, 17, 17, 17, 18, 90,
1320 94, 94, 18, 18, 18, 18, 18, 18, 7, 7,
1321 7, 5, 6, 90, 18, 18, 18, 18, 18, 18,
1322 18, 18, 18, 18, 7, 7, 7, 5, 6, 94,
1323 90, 90, 90, 90, 90, 90, 90, 90, 90, 90,
1324 90, 90, 90, 94, 94, 94, 4, 4, 4, 4,
1325 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1326 4, 4, 182, 182, 182, 182, 182, 182, 182, 182,
1327 182, 182, 182, 182, 182, 182, 182, 182, 92, 92,
1328 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1329 92, 121, 121, 121, 121, 92, 121, 121, 121, 92,
1330 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1331 14, 14, 25, 14, 14, 14, 14, 25, 14, 14,
1332 21, 25, 25, 25, 21, 21, 25, 25, 25, 21,
1333 14, 25, 14, 14, 7, 25, 25, 25, 25, 25,
1334 14, 14, 14, 14, 14, 14, 25, 14, 183, 14,
1335 25, 14, 184, 185, 25, 25, 14, 21, 25, 25,
1336 186, 25, 21, 15, 15, 15, 15, 21, 14, 14,
1337 21, 21, 25, 25, 7, 7, 7, 7, 7, 25,
1338 21, 21, 21, 21, 14, 7, 14, 14, 187, 120,
1339 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1340 18, 18, 18, 18, 18, 18, 188, 188, 188, 188,
1341 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
1342 188, 188, 189, 189, 189, 189, 189, 189, 189, 189,
1343 189, 189, 189, 189, 189, 189, 189, 189, 146, 146,
1344 146, 23, 24, 146, 146, 146, 146, 18, 14, 14,
1345 94, 94, 94, 94, 7, 7, 7, 7, 7, 14,
1346 14, 14, 14, 14, 7, 7, 14, 14, 14, 14,
1347 7, 14, 14, 7, 14, 14, 7, 14, 14, 14,
1348 14, 14, 14, 14, 7, 14, 14, 14, 14, 14,
1349 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1350 7, 7, 14, 14, 7, 14, 7, 14, 14, 14,
1351 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1352 14, 14, 7, 7, 7, 7, 7, 7, 7, 7,
1353 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1354 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1355 14, 14, 14, 14, 14, 14, 14, 14, 5, 6,
1356 5, 6, 14, 14, 14, 14, 7, 7, 14, 14,
1357 14, 14, 14, 14, 14, 5, 6, 14, 14, 14,
1358 14, 14, 14, 14, 14, 14, 14, 14, 120, 120,
1359 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
1360 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
1361 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
1362 120, 120, 120, 120, 120, 14, 7, 14, 14, 14,
1363 14, 14, 14, 14, 14, 120, 14, 14, 14, 14,
1364 14, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1365 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1366 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1367 14, 14, 14, 14, 7, 7, 7, 7, 7, 7,
1368 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1369 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1370 14, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1371 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1372 14, 94, 94, 94, 94, 94, 18, 18, 18, 18,
1373 18, 18, 18, 18, 18, 18, 18, 18, 120, 120,
1374 120, 120, 120, 120, 120, 120, 120, 120, 190, 190,
1375 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
1376 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
1377 190, 190, 190, 190, 191, 191, 191, 191, 191, 191,
1378 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
1379 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
1380 18, 18, 18, 18, 18, 18, 14, 14, 14, 14,
1381 14, 14, 14, 7, 14, 14, 14, 14, 14, 14,
1382 14, 14, 14, 7, 14, 14, 14, 14, 14, 14,
1383 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1384 14, 14, 14, 14, 14, 14, 7, 7, 7, 7,
1385 7, 7, 7, 7, 14, 14, 14, 14, 14, 14,
1386 14, 14, 14, 14, 14, 14, 14, 14, 14, 7,
1387 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1388 14, 14, 120, 14, 14, 14, 14, 14, 14, 14,
1389 14, 14, 14, 14, 5, 6, 5, 6, 5, 6,
1390 5, 6, 5, 6, 5, 6, 5, 6, 18, 18,
1391 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1392 18, 18, 14, 14, 14, 14, 14, 14, 14, 14,
1393 14, 14, 14, 14, 7, 7, 7, 7, 7, 5,
1394 6, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1395 7, 7, 7, 7, 7, 7, 5, 6, 5, 6,
1396 5, 6, 5, 6, 5, 6, 7, 7, 7, 5,
1397 6, 5, 6, 5, 6, 5, 6, 5, 6, 5,
1398 6, 5, 6, 5, 6, 5, 6, 5, 6, 5,
1399 6, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1400 7, 7, 7, 7, 7, 7, 5, 6, 5, 6,
1401 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
1402 7, 7, 7, 7, 7, 7, 5, 6, 7, 7,
1403 7, 7, 7, 7, 7, 14, 14, 7, 7, 7,
1404 7, 7, 7, 14, 14, 14, 14, 14, 14, 14,
1405 94, 94, 14, 14, 14, 14, 14, 14, 14, 14,
1406 14, 14, 14, 14, 14, 14, 14, 14, 94, 14,
1407 14, 14, 14, 14, 14, 14, 14, 14, 124, 124,
1408 124, 124, 124, 124, 124, 124, 124, 124, 124, 124,
1409 124, 124, 124, 94, 126, 126, 126, 126, 126, 126,
1410 126, 126, 126, 126, 126, 126, 126, 126, 126, 94,
1411 23, 24, 192, 193, 194, 195, 196, 23, 24, 23,
1412 24, 23, 24, 197, 198, 199, 200, 21, 23, 24,
1413 21, 23, 24, 21, 21, 21, 21, 21, 90, 90,
1414 201, 201, 23, 24, 23, 24, 21, 14, 14, 14,
1415 14, 14, 14, 23, 24, 23, 24, 92, 92, 92,
1416 23, 24, 94, 94, 94, 94, 94, 3, 3, 3,
1417 3, 18, 3, 3, 202, 202, 202, 202, 202, 202,
1418 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
1419 202, 202, 202, 202, 202, 202, 94, 202, 94, 94,
1420 94, 94, 94, 202, 94, 94, 15, 15, 15, 15,
1421 15, 15, 15, 15, 94, 94, 94, 94, 94, 94,
1422 94, 90, 125, 94, 94, 94, 94, 94, 94, 94,
1423 94, 94, 94, 94, 94, 94, 94, 92, 15, 15,
1424 15, 15, 15, 15, 15, 94, 94, 94, 94, 94,
1425 94, 94, 94, 94, 15, 15, 15, 15, 15, 15,
1426 15, 94, 15, 15, 15, 15, 15, 15, 15, 94,
1427 3, 3, 16, 20, 16, 20, 3, 3, 3, 16,
1428 20, 3, 16, 20, 3, 3, 3, 3, 3, 3,
1429 3, 3, 3, 8, 3, 3, 8, 3, 16, 20,
1430 3, 3, 16, 20, 5, 6, 5, 6, 5, 6,
1431 5, 6, 3, 3, 3, 3, 3, 91, 3, 3,
1432 3, 3, 3, 3, 3, 3, 3, 3, 8, 8,
1433 3, 3, 3, 3, 8, 3, 5, 3, 3, 3,
1434 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1435 14, 14, 3, 94, 94, 94, 94, 94, 94, 94,
1436 94, 94, 94, 94, 94, 94, 14, 14, 14, 14,
1437 14, 14, 14, 14, 14, 14, 94, 14, 14, 14,
1438 14, 14, 14, 14, 14, 14, 94, 94, 94, 94,
1439 94, 94, 94, 94, 94, 94, 94, 94, 14, 14,
1440 14, 14, 14, 14, 94, 94, 94, 94, 94, 94,
1441 94, 94, 94, 94, 14, 14, 14, 14, 14, 14,
1442 14, 14, 14, 14, 14, 14, 94, 94, 94, 94,
1443 2, 3, 3, 3, 14, 90, 15, 146, 5, 6,
1444 5, 6, 5, 6, 5, 6, 5, 6, 14, 14,
1445 5, 6, 5, 6, 5, 6, 5, 6, 8, 5,
1446 6, 6, 14, 146, 146, 146, 146, 146, 146, 146,
1447 146, 146, 92, 92, 92, 92, 137, 137, 8, 90,
1448 90, 90, 90, 90, 14, 14, 146, 146, 146, 90,
1449 15, 3, 14, 14, 15, 15, 15, 15, 15, 15,
1450 15, 94, 94, 92, 92, 11, 11, 90, 90, 15,
1451 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1452 15, 3, 90, 90, 90, 15, 94, 94, 94, 94,
1453 94, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1454 15, 15, 120, 120, 139, 139, 139, 139, 120, 120,
1455 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
1456 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
1457 120, 14, 14, 94, 139, 139, 139, 139, 139, 139,
1458 139, 139, 139, 139, 120, 120, 120, 120, 120, 120,
1459 120, 120, 120, 120, 120, 120, 120, 120, 139, 139,
1460 139, 139, 139, 139, 139, 139, 14, 18, 18, 18,
1461 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1462 18, 18, 120, 120, 120, 120, 120, 120, 120, 120,
1463 120, 120, 120, 120, 14, 14, 14, 120, 120, 18,
1464 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1465 18, 18, 18, 18, 120, 120, 120, 120, 120, 120,
1466 120, 120, 120, 120, 120, 120, 14, 14, 14, 14,
1467 120, 120, 120, 120, 120, 120, 120, 14, 14, 14,
1468 14, 120, 120, 120, 120, 120, 120, 120, 120, 120,
1469 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
1470 14, 14, 120, 120, 120, 120, 120, 120, 120, 120,
1471 120, 120, 120, 120, 120, 120, 120, 14, 15, 15,
1472 15, 15, 15, 90, 15, 15, 15, 15, 15, 15,
1473 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1474 15, 15, 15, 15, 15, 15, 90, 3, 3, 3,
1475 138, 138, 138, 138, 138, 138, 138, 138, 138, 138,
1476 15, 15, 94, 94, 94, 94, 23, 24, 23, 24,
1477 23, 24, 23, 24, 23, 24, 23, 24, 23, 24,
1478 15, 92, 121, 121, 121, 3, 92, 92, 92, 92,
1479 92, 92, 92, 92, 92, 92, 3, 91, 23, 24,
1480 23, 24, 23, 24, 23, 24, 23, 24, 23, 24,
1481 90, 90, 92, 92, 15, 15, 15, 15, 15, 15,
1482 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
1483 92, 92, 125, 125, 125, 125, 125, 125, 94, 94,
1484 94, 94, 94, 94, 94, 94, 11, 11, 11, 11,
1485 11, 11, 11, 91, 91, 91, 91, 91, 91, 91,
1486 91, 91, 11, 11, 23, 24, 23, 24, 23, 24,
1487 23, 24, 23, 24, 23, 24, 23, 24, 21, 21,
1488 23, 24, 23, 24, 23, 24, 23, 24, 23, 24,
1489 23, 24, 23, 24, 90, 21, 21, 21, 21, 21,
1490 21, 21, 21, 23, 24, 23, 24, 203, 23, 24,
1491 23, 24, 23, 24, 23, 24, 23, 24, 91, 204,
1492 204, 23, 24, 205, 21, 15, 23, 24, 23, 24,
1493 206, 21, 23, 24, 23, 24, 23, 24, 23, 24,
1494 23, 24, 23, 24, 23, 24, 23, 24, 23, 24,
1495 23, 24, 207, 208, 209, 210, 207, 21, 211, 212,
1496 213, 214, 23, 24, 23, 24, 23, 24, 23, 24,
1497 23, 24, 23, 24, 94, 94, 23, 24, 215, 216,
1498 217, 23, 24, 23, 24, 94, 94, 94, 94, 94,
1499 94, 94, 94, 94, 94, 23, 24, 15, 90, 90,
1500 21, 15, 15, 15, 15, 15, 15, 15, 92, 15,
1501 15, 15, 92, 15, 15, 15, 15, 92, 15, 15,
1502 15, 15, 15, 15, 15, 137, 137, 92, 92, 137,
1503 14, 14, 14, 14, 92, 94, 94, 94, 139, 139,
1504 139, 139, 139, 139, 120, 120, 4, 14, 94, 94,
1505 94, 94, 94, 94, 15, 15, 15, 15, 3, 3,
1506 3, 3, 94, 94, 94, 94, 94, 94, 94, 94,
1507 137, 137, 15, 15, 15, 15, 15, 15, 15, 15,
1508 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1509 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
1510 137, 137, 137, 137, 137, 137, 92, 92, 94, 94,
1511 94, 94, 94, 94, 94, 94, 125, 125, 92, 92,
1512 15, 15, 15, 15, 15, 15, 125, 125, 125, 15,
1513 125, 15, 15, 92, 15, 15, 15, 15, 15, 15,
1514 92, 92, 92, 92, 92, 92, 92, 92, 125, 125,
1515 15, 15, 15, 15, 15, 15, 15, 92, 92, 92,
1516 92, 92, 92, 92, 92, 92, 92, 92, 137, 137,
1517 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1518 94, 125, 15, 15, 15, 92, 137, 137, 92, 92,
1519 92, 92, 137, 137, 92, 92, 137, 137, 137, 125,
1520 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
1521 125, 125, 94, 90, 138, 138, 138, 138, 138, 138,
1522 138, 138, 138, 138, 94, 94, 94, 94, 125, 125,
1523 15, 15, 15, 15, 15, 92, 90, 15, 15, 15,
1524 15, 15, 15, 15, 15, 15, 138, 138, 138, 138,
1525 138, 138, 138, 138, 138, 138, 15, 15, 15, 15,
1526 15, 94, 15, 15, 15, 15, 15, 15, 15, 15,
1527 15, 92, 92, 92, 92, 92, 92, 137, 137, 92,
1528 92, 137, 137, 92, 92, 94, 94, 94, 94, 94,
1529 94, 94, 94, 94, 15, 15, 15, 92, 15, 15,
1530 15, 15, 15, 15, 15, 15, 92, 137, 94, 94,
1531 138, 138, 138, 138, 138, 138, 138, 138, 138, 138,
1532 94, 94, 125, 125, 125, 125, 90, 15, 15, 15,
1533 15, 15, 15, 120, 120, 120, 15, 137, 92, 137,
1534 15, 15, 92, 15, 92, 92, 92, 15, 15, 92,
1535 92, 15, 15, 15, 15, 15, 92, 92, 15, 92,
1536 15, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1537 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1538 94, 94, 94, 94, 94, 15, 15, 90, 125, 125,
1539 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1540 15, 137, 92, 92, 137, 137, 125, 125, 15, 90,
1541 90, 137, 92, 94, 94, 94, 94, 94, 94, 94,
1542 94, 94, 94, 15, 15, 15, 15, 15, 15, 94,
1543 94, 15, 15, 15, 15, 15, 15, 94, 94, 15,
1544 15, 15, 15, 15, 15, 94, 94, 94, 94, 94,
1545 94, 94, 94, 94, 21, 21, 21, 218, 21, 21,
1546 21, 21, 21, 21, 21, 204, 90, 90, 90, 90,
1547 21, 21, 21, 21, 21, 21, 21, 21, 21, 90,
1548 11, 11, 94, 94, 94, 94, 219, 219, 219, 219,
1549 219, 219, 219, 219, 219, 219, 219, 219, 219, 219,
1550 219, 219, 15, 15, 15, 137, 137, 92, 137, 137,
1551 92, 137, 137, 125, 137, 92, 94, 94, 15, 15,
1552 15, 15, 94, 94, 94, 94, 94, 94, 94, 94,
1553 94, 94, 94, 94, 15, 15, 15, 15, 15, 15,
1554 15, 94, 94, 94, 94, 15, 15, 15, 15, 15,
1555 220, 220, 220, 220, 220, 220, 220, 220, 220, 220,
1556 220, 220, 220, 220, 220, 220, 221, 221, 221, 221,
1557 221, 221, 221, 221, 221, 221, 221, 221, 221, 221,
1558 221, 221, 21, 21, 21, 21, 21, 21, 21, 94,
1559 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1560 94, 21, 21, 21, 21, 21, 94, 94, 94, 94,
1561 94, 130, 92, 130, 130, 130, 130, 130, 130, 130,
1562 130, 130, 130, 7, 130, 130, 130, 130, 130, 130,
1563 130, 130, 130, 130, 130, 130, 130, 127, 130, 130,
1564 130, 130, 130, 127, 130, 127, 130, 130, 127, 130,
1565 130, 127, 130, 130, 130, 130, 130, 130, 130, 130,
1566 130, 130, 130, 130, 222, 222, 222, 222, 222, 222,
1567 222, 222, 222, 222, 222, 222, 222, 222, 222, 222,
1568 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
1569 127, 127, 127, 127, 127, 127, 127, 130, 130, 130,
1570 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1571 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1572 130, 130, 130, 130, 6, 5, 127, 127, 130, 130,
1573 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1574 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1575 130, 130, 130, 130, 132, 14, 127, 127, 3, 3,
1576 3, 3, 3, 3, 3, 5, 6, 3, 94, 94,
1577 94, 94, 94, 94, 3, 8, 8, 12, 12, 5,
1578 6, 5, 6, 5, 6, 5, 6, 5, 6, 5,
1579 6, 5, 6, 5, 6, 3, 3, 5, 6, 3,
1580 3, 3, 3, 12, 12, 12, 3, 3, 3, 94,
1581 3, 3, 3, 3, 8, 5, 6, 5, 6, 5,
1582 6, 3, 3, 3, 7, 8, 7, 7, 7, 94,
1583 3, 4, 3, 3, 94, 94, 94, 94, 130, 130,
1584 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1585 130, 127, 127, 17, 94, 3, 3, 3, 4, 3,
1586 3, 3, 5, 6, 3, 7, 3, 8, 3, 3,
1587 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1588 13, 5, 7, 6, 7, 5, 6, 3, 5, 6,
1589 3, 3, 15, 15, 15, 15, 15, 15, 15, 15,
1590 15, 15, 90, 15, 15, 15, 15, 15, 15, 15,
1591 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1592 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1593 15, 15, 90, 90, 94, 94, 15, 15, 15, 15,
1594 15, 15, 94, 94, 15, 15, 15, 15, 15, 15,
1595 94, 94, 15, 15, 15, 15, 15, 15, 94, 94,
1596 15, 15, 15, 94, 94, 94, 4, 4, 7, 11,
1597 14, 4, 4, 94, 14, 7, 7, 7, 7, 14,
1598 14, 94, 182, 182, 182, 182, 182, 182, 182, 182,
1599 182, 17, 17, 17, 14, 14, 182, 182, 15, 15,
1600 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1601 94, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1602 15, 15, 15, 15, 15, 94, 15, 15, 94, 15,
1603 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1604 15, 94, 94, 94, 94, 94, 125, 3, 125, 94,
1605 94, 94, 94, 139, 139, 139, 139, 139, 139, 139,
1606 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
1607 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
1608 139, 139, 94, 94, 94, 120, 120, 120, 120, 120,
1609 120, 120, 120, 120, 223, 223, 223, 223, 223, 223,
1610 223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
1611 223, 223, 223, 223, 223, 18, 18, 18, 18, 14,
1612 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1613 14, 14, 14, 14, 14, 14, 18, 18, 14, 120,
1614 120, 94, 14, 14, 14, 14, 14, 14, 14, 14,
1615 14, 14, 14, 14, 14, 94, 94, 94, 14, 94,
1616 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1617 94, 94, 94, 94, 120, 120, 120, 120, 120, 120,
1618 120, 120, 120, 120, 120, 120, 120, 92, 94, 94,
1619 92, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1620 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1621 18, 18, 18, 18, 18, 18, 18, 18, 94, 94,
1622 94, 94, 139, 139, 139, 139, 94, 94, 94, 94,
1623 94, 94, 94, 94, 94, 15, 15, 15, 15, 146,
1624 15, 15, 15, 15, 15, 15, 15, 15, 146, 94,
1625 94, 94, 94, 94, 15, 15, 15, 15, 15, 15,
1626 92, 92, 92, 92, 92, 94, 94, 94, 94, 94,
1627 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1628 15, 15, 15, 15, 94, 125, 15, 15, 15, 15,
1629 94, 94, 94, 94, 15, 15, 15, 15, 15, 15,
1630 15, 15, 125, 146, 146, 146, 146, 146, 94, 94,
1631 94, 94, 94, 94, 94, 94, 94, 94, 224, 224,
1632 224, 224, 224, 224, 224, 224, 224, 224, 224, 224,
1633 224, 224, 224, 224, 224, 224, 224, 224, 224, 224,
1634 224, 224, 225, 225, 225, 225, 225, 225, 225, 225,
1635 225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
1636 225, 225, 225, 225, 225, 225, 224, 224, 224, 224,
1637 94, 94, 94, 94, 225, 225, 225, 225, 225, 225,
1638 225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
1639 225, 225, 225, 225, 94, 94, 94, 94, 15, 15,
1640 15, 15, 15, 15, 15, 15, 94, 94, 94, 94,
1641 94, 94, 94, 94, 15, 15, 15, 15, 94, 94,
1642 94, 94, 94, 94, 94, 94, 94, 94, 94, 125,
1643 130, 130, 130, 130, 130, 130, 127, 127, 130, 127,
1644 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1645 130, 130, 127, 130, 130, 127, 127, 127, 130, 127,
1646 127, 130, 130, 130, 130, 130, 130, 130, 127, 129,
1647 226, 226, 226, 226, 226, 226, 226, 226, 130, 130,
1648 130, 130, 130, 130, 130, 135, 135, 226, 226, 226,
1649 226, 226, 226, 226, 130, 130, 130, 130, 130, 130,
1650 130, 130, 130, 130, 130, 130, 130, 130, 130, 127,
1651 127, 127, 127, 127, 127, 127, 127, 226, 226, 226,
1652 226, 226, 226, 226, 226, 226, 130, 130, 130, 127,
1653 130, 130, 127, 127, 127, 127, 127, 226, 226, 226,
1654 226, 226, 130, 130, 130, 130, 130, 130, 226, 226,
1655 226, 226, 226, 226, 127, 127, 127, 3, 130, 130,
1656 130, 130, 130, 130, 130, 130, 130, 130, 127, 127,
1657 127, 127, 127, 129, 130, 130, 130, 130, 130, 130,
1658 130, 130, 127, 127, 127, 127, 226, 226, 130, 130,
1659 226, 226, 226, 226, 226, 226, 226, 226, 226, 226,
1660 226, 226, 226, 226, 226, 226, 127, 127, 226, 226,
1661 226, 226, 226, 226, 226, 226, 226, 226, 226, 226,
1662 226, 226, 130, 92, 92, 92, 127, 92, 92, 127,
1663 127, 127, 127, 127, 92, 92, 92, 92, 130, 130,
1664 130, 130, 127, 130, 130, 130, 127, 130, 130, 130,
1665 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1666 127, 127, 92, 92, 92, 127, 127, 127, 127, 92,
1667 226, 226, 226, 226, 226, 226, 226, 226, 226, 127,
1668 127, 127, 127, 127, 127, 127, 129, 129, 129, 129,
1669 129, 129, 129, 129, 129, 127, 127, 127, 127, 127,
1670 127, 127, 130, 130, 130, 130, 130, 130, 130, 130,
1671 130, 130, 130, 130, 130, 226, 226, 129, 130, 130,
1672 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1673 130, 226, 226, 226, 130, 130, 130, 130, 130, 130,
1674 130, 130, 135, 130, 130, 130, 130, 130, 130, 130,
1675 130, 130, 130, 130, 130, 92, 92, 127, 127, 127,
1676 127, 226, 226, 226, 226, 226, 129, 129, 129, 129,
1677 129, 129, 129, 127, 127, 127, 127, 127, 127, 127,
1678 127, 127, 130, 130, 130, 130, 130, 130, 127, 127,
1679 127, 3, 3, 3, 3, 3, 3, 3, 130, 130,
1680 130, 130, 130, 130, 127, 127, 226, 226, 226, 226,
1681 226, 226, 226, 226, 130, 130, 130, 127, 127, 127,
1682 127, 127, 226, 226, 226, 226, 226, 226, 226, 226,
1683 130, 130, 127, 127, 127, 127, 127, 127, 127, 129,
1684 129, 129, 129, 127, 127, 127, 127, 127, 127, 127,
1685 127, 127, 127, 127, 127, 226, 226, 226, 226, 226,
1686 226, 226, 130, 130, 130, 130, 130, 130, 130, 130,
1687 130, 127, 127, 127, 127, 127, 127, 127, 227, 227,
1688 227, 227, 227, 227, 227, 227, 227, 227, 227, 227,
1689 227, 227, 227, 227, 227, 227, 227, 127, 127, 127,
1690 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
1691 228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
1692 228, 228, 228, 228, 228, 228, 228, 228, 228, 127,
1693 127, 127, 127, 127, 127, 127, 226, 226, 226, 226,
1694 226, 226, 130, 130, 130, 130, 92, 92, 92, 92,
1695 127, 127, 127, 127, 127, 127, 127, 127, 9, 9,
1696 9, 9, 9, 9, 9, 9, 9, 9, 127, 127,
1697 127, 127, 127, 127, 18, 18, 18, 18, 18, 18,
1698 18, 18, 18, 18, 18, 18, 18, 18, 18, 127,
1699 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1700 127, 92, 92, 128, 127, 127, 130, 130, 127, 127,
1701 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
1702 127, 127, 226, 226, 226, 226, 226, 226, 226, 130,
1703 127, 127, 127, 127, 127, 127, 127, 127, 92, 226,
1704 226, 226, 226, 129, 129, 129, 129, 129, 127, 127,
1705 127, 127, 127, 127, 130, 130, 130, 130, 130, 226,
1706 226, 226, 226, 226, 226, 226, 127, 127, 127, 127,
1707 130, 130, 130, 130, 130, 130, 130, 127, 127, 127,
1708 127, 127, 127, 127, 127, 127, 137, 92, 137, 15,
1709 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1710 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1711 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1712 92, 92, 92, 92, 92, 125, 125, 125, 125, 125,
1713 125, 125, 94, 94, 94, 94, 18, 18, 18, 18,
1714 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
1715 18, 18, 18, 18, 18, 18, 138, 138, 138, 138,
1716 138, 138, 138, 138, 138, 138, 94, 94, 94, 94,
1717 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1718 94, 92, 137, 137, 137, 92, 92, 92, 92, 137,
1719 137, 92, 92, 125, 125, 179, 125, 125, 125, 125,
1720 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1721 94, 179, 94, 94, 92, 92, 92, 15, 15, 15,
1722 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1723 15, 15, 15, 15, 15, 15, 15, 92, 92, 92,
1724 92, 92, 137, 92, 92, 92, 92, 92, 92, 92,
1725 92, 94, 138, 138, 138, 138, 138, 138, 138, 138,
1726 138, 138, 125, 125, 125, 125, 15, 137, 137, 15,
1727 94, 94, 94, 94, 94, 94, 94, 94, 15, 15,
1728 15, 92, 125, 125, 15, 94, 94, 94, 94, 94,
1729 94, 94, 94, 94, 15, 15, 15, 137, 137, 137,
1730 92, 92, 92, 92, 92, 92, 92, 92, 92, 137,
1731 137, 15, 15, 15, 15, 125, 125, 125, 125, 92,
1732 92, 92, 92, 125, 137, 92, 138, 138, 138, 138,
1733 138, 138, 138, 138, 138, 138, 15, 125, 15, 125,
1734 125, 125, 94, 139, 139, 139, 139, 139, 139, 139,
1735 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
1736 139, 139, 139, 94, 94, 94, 94, 94, 94, 94,
1737 94, 94, 94, 94, 15, 15, 15, 15, 15, 15,
1738 15, 15, 15, 15, 15, 15, 137, 137, 137, 92,
1739 92, 92, 137, 137, 92, 137, 92, 92, 125, 125,
1740 125, 125, 125, 125, 92, 94, 15, 15, 15, 15,
1741 15, 15, 15, 94, 15, 94, 15, 15, 15, 15,
1742 94, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1743 15, 15, 15, 15, 15, 15, 94, 15, 15, 15,
1744 15, 15, 15, 15, 15, 15, 15, 125, 94, 94,
1745 94, 94, 94, 94, 15, 15, 15, 15, 15, 15,
1746 15, 15, 15, 15, 15, 15, 15, 15, 15, 92,
1747 137, 137, 137, 92, 92, 92, 92, 92, 92, 92,
1748 92, 94, 94, 94, 94, 94, 92, 92, 137, 137,
1749 94, 15, 15, 15, 15, 15, 15, 15, 15, 94,
1750 94, 15, 15, 94, 15, 15, 94, 15, 15, 15,
1751 15, 15, 94, 92, 92, 15, 137, 137, 92, 137,
1752 137, 137, 137, 94, 94, 137, 137, 94, 94, 137,
1753 137, 137, 94, 94, 15, 94, 94, 94, 94, 94,
1754 94, 137, 94, 94, 94, 94, 94, 15, 15, 15,
1755 15, 15, 137, 137, 94, 94, 92, 92, 92, 92,
1756 92, 92, 92, 94, 94, 94, 92, 92, 92, 92,
1757 92, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1758 94, 94, 15, 15, 15, 15, 15, 137, 137, 137,
1759 92, 92, 92, 92, 92, 92, 92, 92, 137, 137,
1760 92, 92, 92, 137, 92, 15, 15, 15, 15, 125,
1761 125, 125, 125, 125, 138, 138, 138, 138, 138, 138,
1762 138, 138, 138, 138, 125, 125, 94, 125, 92, 15,
1763 15, 15, 94, 94, 94, 94, 94, 94, 94, 94,
1764 94, 94, 94, 94, 94, 94, 137, 137, 137, 92,
1765 92, 92, 92, 92, 92, 137, 92, 137, 137, 137,
1766 137, 92, 92, 137, 92, 92, 15, 15, 125, 15,
1767 94, 94, 94, 94, 94, 94, 94, 94, 15, 15,
1768 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1769 15, 15, 15, 137, 137, 137, 92, 92, 92, 92,
1770 94, 94, 137, 137, 137, 137, 92, 92, 137, 92,
1771 92, 125, 125, 125, 125, 125, 125, 125, 125, 125,
1772 125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
1773 125, 125, 125, 125, 15, 15, 15, 15, 92, 92,
1774 94, 94, 137, 137, 137, 92, 92, 92, 92, 92,
1775 92, 92, 92, 137, 137, 92, 137, 92, 92, 125,
1776 125, 125, 15, 94, 94, 94, 94, 94, 94, 94,
1777 94, 94, 94, 94, 3, 3, 3, 3, 3, 3,
1778 3, 3, 3, 3, 3, 3, 3, 94, 94, 94,
1779 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1780 15, 92, 137, 92, 137, 137, 92, 92, 92, 92,
1781 92, 92, 137, 92, 15, 94, 94, 94, 94, 94,
1782 94, 94, 137, 137, 92, 92, 92, 92, 137, 92,
1783 92, 92, 92, 92, 94, 94, 94, 94, 138, 138,
1784 138, 138, 138, 138, 138, 138, 138, 138, 139, 139,
1785 125, 125, 125, 120, 92, 92, 92, 92, 92, 92,
1786 92, 92, 137, 92, 92, 125, 94, 94, 94, 94,
1787 139, 139, 139, 94, 94, 94, 94, 94, 94, 94,
1788 94, 94, 94, 94, 94, 15, 15, 15, 15, 15,
1789 15, 15, 15, 94, 94, 15, 94, 94, 15, 15,
1790 15, 15, 15, 15, 15, 15, 94, 15, 15, 94,
1791 15, 15, 15, 15, 15, 15, 15, 15, 137, 137,
1792 137, 137, 137, 137, 94, 137, 137, 94, 94, 92,
1793 92, 137, 92, 15, 137, 15, 137, 92, 125, 125,
1794 125, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1795 15, 15, 15, 15, 15, 15, 15, 15, 94, 94,
1796 15, 15, 15, 15, 15, 15, 15, 137, 137, 137,
1797 92, 92, 92, 92, 94, 94, 92, 92, 137, 137,
1798 137, 137, 92, 15, 125, 15, 137, 94, 94, 94,
1799 94, 94, 94, 94, 94, 94, 94, 94, 15, 92,
1800 92, 92, 92, 92, 92, 140, 140, 92, 92, 15,
1801 15, 15, 15, 15, 15, 15, 15, 92, 92, 92,
1802 92, 92, 92, 137, 15, 92, 92, 92, 92, 125,
1803 125, 125, 125, 125, 125, 125, 125, 92, 94, 94,
1804 94, 94, 94, 94, 94, 94, 15, 92, 92, 92,
1805 92, 92, 92, 137, 137, 92, 92, 92, 15, 15,
1806 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1807 15, 15, 92, 92, 92, 92, 92, 92, 92, 92,
1808 92, 92, 92, 92, 92, 137, 92, 92, 125, 125,
1809 125, 15, 125, 125, 125, 125, 125, 94, 94, 94,
1810 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1811 92, 92, 92, 92, 92, 92, 92, 94, 92, 92,
1812 92, 92, 92, 92, 137, 140, 15, 125, 125, 125,
1813 125, 125, 94, 94, 94, 94, 94, 94, 94, 94,
1814 94, 94, 125, 125, 15, 15, 15, 15, 15, 15,
1815 15, 15, 15, 15, 15, 15, 15, 15, 94, 94,
1816 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1817 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1818 92, 92, 94, 137, 92, 92, 92, 92, 92, 92,
1819 92, 137, 92, 92, 137, 92, 92, 94, 94, 94,
1820 94, 94, 94, 94, 94, 94, 15, 15, 15, 15,
1821 15, 15, 15, 94, 15, 15, 94, 15, 15, 15,
1822 15, 15, 15, 92, 92, 92, 92, 92, 92, 94,
1823 94, 94, 92, 94, 92, 92, 94, 92, 92, 92,
1824 92, 92, 92, 92, 15, 92, 94, 94, 94, 94,
1825 94, 94, 94, 94, 15, 15, 15, 15, 15, 15,
1826 94, 15, 15, 94, 15, 15, 15, 15, 15, 15,
1827 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1828 137, 137, 137, 137, 137, 94, 92, 92, 94, 137,
1829 137, 92, 137, 92, 15, 94, 94, 94, 94, 94,
1830 94, 94, 15, 15, 15, 92, 92, 137, 137, 125,
1831 125, 94, 94, 94, 94, 94, 94, 94, 139, 139,
1832 139, 139, 139, 14, 14, 14, 14, 14, 14, 14,
1833 14, 4, 4, 4, 4, 14, 14, 14, 14, 14,
1834 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1835 14, 14, 94, 94, 94, 94, 94, 94, 94, 94,
1836 94, 94, 94, 94, 94, 125, 146, 146, 146, 146,
1837 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
1838 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
1839 146, 146, 146, 146, 146, 146, 146, 94, 125, 125,
1840 125, 125, 125, 94, 94, 94, 94, 94, 94, 94,
1841 94, 94, 94, 94, 179, 179, 179, 179, 179, 179,
1842 179, 179, 179, 94, 94, 94, 94, 94, 94, 94,
1843 92, 92, 92, 92, 92, 125, 94, 94, 94, 94,
1844 94, 94, 94, 94, 94, 94, 92, 92, 92, 92,
1845 92, 92, 92, 125, 125, 125, 125, 125, 120, 120,
1846 120, 120, 90, 90, 90, 90, 125, 120, 94, 94,
1847 94, 94, 94, 94, 94, 94, 94, 94, 138, 138,
1848 138, 138, 138, 138, 138, 138, 138, 138, 94, 139,
1849 139, 139, 139, 139, 139, 139, 94, 15, 15, 15,
1850 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1851 15, 15, 15, 15, 15, 15, 15, 15, 94, 94,
1852 94, 94, 94, 15, 15, 15, 139, 139, 139, 139,
1853 139, 139, 139, 125, 125, 125, 125, 94, 94, 94,
1854 94, 94, 15, 15, 15, 15, 15, 15, 15, 15,
1855 15, 15, 15, 94, 94, 94, 94, 92, 15, 137,
1856 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
1857 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
1858 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
1859 137, 137, 137, 137, 137, 137, 137, 137, 94, 94,
1860 94, 94, 94, 94, 94, 92, 92, 92, 92, 90,
1861 90, 90, 90, 90, 90, 90, 90, 90, 90, 90,
1862 90, 90, 90, 90, 3, 90, 92, 94, 94, 94,
1863 94, 94, 94, 94, 94, 94, 94, 94, 137, 137,
1864 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1865 94, 94, 94, 94, 15, 15, 15, 94, 94, 94,
1866 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1867 94, 94, 94, 94, 15, 15, 15, 15, 94, 94,
1868 94, 94, 94, 94, 94, 94, 15, 15, 15, 15,
1869 15, 15, 15, 15, 15, 15, 94, 94, 120, 92,
1870 92, 125, 17, 17, 17, 17, 94, 94, 94, 94,
1871 94, 94, 94, 94, 94, 94, 94, 94, 120, 120,
1872 120, 120, 120, 120, 94, 94, 94, 94, 94, 94,
1873 94, 94, 94, 94, 120, 120, 120, 120, 120, 120,
1874 120, 94, 94, 120, 120, 120, 120, 120, 120, 120,
1875 120, 120, 120, 120, 120, 137, 137, 92, 92, 92,
1876 120, 120, 120, 137, 137, 137, 137, 137, 137, 17,
1877 17, 17, 17, 17, 17, 17, 17, 92, 92, 92,
1878 92, 92, 92, 92, 92, 120, 120, 92, 92, 92,
1879 92, 92, 92, 92, 120, 120, 120, 120, 120, 120,
1880 120, 120, 120, 120, 120, 120, 120, 120, 92, 92,
1881 92, 92, 120, 120, 120, 120, 120, 120, 120, 120,
1882 120, 120, 120, 94, 94, 94, 94, 94, 94, 94,
1883 14, 14, 92, 92, 92, 14, 94, 94, 94, 94,
1884 94, 94, 94, 94, 94, 94, 139, 139, 139, 139,
1885 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1886 94, 94, 139, 139, 139, 139, 139, 139, 139, 139,
1887 139, 94, 94, 94, 94, 94, 94, 94, 25, 25,
1888 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1889 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1890 25, 25, 25, 25, 21, 21, 21, 21, 21, 21,
1891 21, 21, 21, 21, 25, 25, 25, 25, 25, 25,
1892 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1893 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1894 21, 21, 21, 21, 21, 21, 21, 94, 21, 21,
1895 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1896 21, 21, 21, 21, 21, 21, 25, 25, 25, 25,
1897 25, 25, 25, 25, 25, 25, 21, 21, 21, 21,
1898 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1899 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1900 21, 21, 25, 94, 25, 25, 94, 94, 25, 94,
1901 94, 25, 25, 94, 94, 25, 25, 25, 25, 94,
1902 25, 25, 25, 25, 25, 25, 25, 25, 21, 21,
1903 21, 21, 94, 21, 94, 21, 21, 21, 21, 21,
1904 21, 21, 94, 21, 21, 21, 21, 21, 21, 21,
1905 21, 21, 21, 21, 21, 21, 21, 21, 25, 25,
1906 94, 25, 25, 25, 25, 94, 94, 25, 25, 25,
1907 25, 25, 25, 25, 25, 94, 25, 25, 25, 25,
1908 25, 25, 25, 94, 21, 21, 21, 21, 21, 21,
1909 21, 21, 21, 21, 25, 25, 94, 25, 25, 25,
1910 25, 94, 25, 25, 25, 25, 25, 94, 25, 94,
1911 94, 94, 25, 25, 25, 25, 25, 25, 25, 94,
1912 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1913 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1914 21, 21, 21, 21, 21, 21, 25, 25, 25, 25,
1915 25, 25, 25, 25, 25, 25, 21, 21, 21, 21,
1916 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1917 21, 21, 94, 94, 25, 25, 25, 25, 25, 25,
1918 25, 25, 25, 229, 21, 21, 21, 21, 21, 21,
1919 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1920 21, 21, 21, 21, 21, 21, 21, 21, 21, 7,
1921 21, 21, 21, 21, 21, 21, 25, 25, 25, 25,
1922 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1923 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1924 25, 229, 21, 21, 21, 21, 21, 21, 21, 21,
1925 21, 7, 21, 21, 21, 21, 21, 21, 25, 25,
1926 25, 25, 25, 25, 25, 25, 25, 229, 21, 21,
1927 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1928 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1929 21, 21, 21, 7, 21, 21, 21, 21, 21, 21,
1930 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1931 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1932 25, 25, 25, 25, 25, 229, 21, 21, 21, 21,
1933 21, 21, 21, 21, 21, 7, 21, 21, 21, 21,
1934 21, 21, 25, 25, 25, 25, 25, 25, 25, 25,
1935 25, 229, 21, 21, 21, 21, 21, 21, 21, 21,
1936 21, 7, 21, 21, 21, 21, 21, 21, 25, 21,
1937 94, 94, 9, 9, 9, 9, 9, 9, 9, 9,
1938 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
1939 92, 92, 92, 92, 92, 92, 92, 120, 120, 120,
1940 120, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1941 92, 92, 92, 92, 92, 92, 92, 92, 92, 120,
1942 120, 120, 120, 120, 120, 120, 120, 92, 120, 120,
1943 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
1944 120, 120, 92, 120, 120, 125, 125, 125, 125, 125,
1945 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
1946 94, 94, 94, 94, 94, 92, 92, 92, 92, 92,
1947 94, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1948 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1949 92, 92, 92, 94, 92, 92, 92, 92, 92, 92,
1950 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1951 92, 94, 94, 92, 92, 92, 92, 92, 92, 92,
1952 94, 92, 92, 94, 92, 92, 92, 92, 92, 94,
1953 94, 94, 94, 94, 92, 92, 92, 92, 92, 92,
1954 92, 90, 90, 90, 90, 90, 90, 90, 94, 94,
1955 138, 138, 138, 138, 138, 138, 138, 138, 138, 138,
1956 94, 94, 94, 94, 15, 120, 15, 15, 15, 15,
1957 15, 15, 15, 15, 15, 15, 15, 15, 92, 92,
1958 92, 92, 138, 138, 138, 138, 138, 138, 138, 138,
1959 138, 138, 94, 94, 94, 94, 94, 4, 130, 130,
1960 130, 130, 130, 127, 127, 226, 226, 226, 226, 226,
1961 226, 226, 226, 226, 92, 92, 92, 92, 92, 92,
1962 92, 127, 127, 127, 127, 127, 127, 127, 127, 127,
1963 230, 230, 230, 230, 230, 230, 230, 230, 230, 230,
1964 230, 230, 230, 230, 230, 230, 230, 230, 231, 231,
1965 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
1966 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
1967 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
1968 231, 231, 92, 92, 92, 92, 92, 92, 92, 134,
1969 127, 127, 127, 127, 136, 136, 136, 136, 136, 136,
1970 136, 136, 136, 136, 127, 127, 127, 127, 129, 129,
1971 127, 226, 226, 226, 226, 226, 226, 226, 226, 226,
1972 226, 226, 226, 226, 226, 226, 226, 226, 226, 226,
1973 226, 226, 226, 226, 226, 226, 226, 226, 135, 226,
1974 226, 226, 132, 226, 226, 226, 226, 127, 127, 127,
1975 127, 127, 127, 127, 127, 127, 127, 127, 226, 226,
1976 226, 226, 226, 226, 226, 226, 226, 226, 226, 226,
1977 226, 226, 135, 226, 226, 226, 226, 226, 226, 226,
1978 226, 226, 226, 226, 226, 226, 226, 226, 127, 127,
1979 130, 130, 130, 130, 127, 130, 130, 130, 130, 130,
1980 130, 130, 130, 130, 130, 130, 127, 130, 130, 127,
1981 130, 127, 127, 130, 127, 130, 130, 130, 130, 130,
1982 130, 130, 130, 130, 130, 127, 130, 130, 130, 130,
1983 127, 130, 127, 130, 127, 127, 127, 127, 127, 127,
1984 130, 127, 127, 127, 127, 130, 127, 130, 127, 130,
1985 127, 130, 130, 130, 127, 130, 130, 127, 130, 127,
1986 127, 130, 127, 130, 127, 130, 127, 130, 127, 130,
1987 127, 130, 130, 127, 130, 127, 127, 130, 130, 130,
1988 130, 127, 130, 130, 130, 130, 130, 130, 130, 127,
1989 130, 130, 130, 130, 127, 130, 130, 130, 130, 127,
1990 130, 127, 130, 130, 130, 130, 130, 130, 130, 130,
1991 130, 130, 127, 130, 130, 130, 130, 130, 130, 130,
1992 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
1993 127, 127, 127, 127, 127, 130, 130, 130, 127, 130,
1994 130, 130, 130, 130, 127, 130, 130, 130, 130, 130,
1995 7, 7, 127, 127, 127, 127, 127, 127, 127, 127,
1996 127, 127, 127, 127, 127, 127, 14, 14, 14, 14,
1997 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1998 14, 94, 94, 14, 14, 14, 14, 14, 14, 14,
1999 14, 14, 14, 14, 14, 14, 14, 14, 18, 18,
2000 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
2001 18, 14, 14, 14, 120, 120, 120, 120, 120, 120,
2002 120, 120, 120, 120, 14, 14, 14, 14, 14, 14,
2003 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
2004 120, 120, 120, 14, 94, 94, 94, 94, 94, 94,
2005 94, 94, 120, 120, 120, 120, 120, 120, 120, 120,
2006 120, 120, 120, 120, 120, 94, 94, 94, 94, 94,
2007 94, 94, 94, 94, 94, 94, 94, 94, 120, 120,
2008 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
2009 94, 94, 94, 94, 120, 120, 94, 94, 94, 94,
2010 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
2011 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
2012 14, 11, 11, 11, 11, 11, 14, 14, 14, 14,
2013 14, 14, 14, 14, 94, 94, 94, 94, 94, 94,
2014 94, 94, 14, 14, 14, 14, 14, 14, 14, 14,
2015 14, 94, 94, 94, 94, 94, 94, 94, 14, 14,
2016 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
2017 14, 14, 94, 94, 14, 14, 94, 94, 94, 94,
2018 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
2019 14, 14, 14, 14, 14, 14, 14, 14, 14, 94,
2020 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
2021 14, 14, 14, 14, 14, 14, 14, 14, 94, 14,
2022 14, 14, 14, 14, 14, 14, 14, 94, 94, 94,
2023 14, 14, 14, 94, 94, 94, 94, 94, 14, 14,
2024 14, 94, 94, 94, 94, 94, 94, 94, 94, 94,
2025 94, 94, 94, 94, 14, 14, 14, 94, 14, 14,
2026 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
2027 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
2028 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
2029 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
2030 182, 182, 182, 17, 182, 182, 182, 182, 182, 182,
2031 182, 182, 182, 182, 182, 182, 182, 182, 17, 17,
2032 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
2033 17, 17, 17, 17, 221, 221, 221, 221, 221, 221,
2034 221, 221, 221, 221, 221, 221, 221, 221, 182, 182
2035 };
2036
2037 private static ReadOnlySpan<byte> CategoriesValues => new byte[232]
2038 {
2039 14, 142, 139, 24, 26, 20, 21, 25, 19, 8,
2040 32, 27, 18, 33, 28, 36, 22, 15, 10, 33,
2041 23, 33, 33, 32, 33, 32, 32, 33, 32, 32,
2042 32, 32, 32, 32, 32, 33, 32, 32, 33, 32,
2043 33, 32, 32, 32, 32, 33, 32, 34, 33, 33,
2044 32, 32, 32, 32, 32, 32, 33, 32, 32, 32,
2045 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
2046 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
2047 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
2048 35, 3, 5, 5, 61, 32, 32, 32, 32, 32,
2049 33, 33, 33, 33, 33, 32, 33, 33, 33, 33,
2050 33, 33, 33, 33, 33, 32, 33, 32, 32, 33,
2051 60, 7, 32, 33, 32, 56, 33, 93, 83, 88,
2052 68, 89, 90, 79, 67, 92, 72, 38, 40, 42,
2053 37, 32, 33, 32, 32, 33, 41, 33, 33, 33,
2054 33, 33, 33, 33, 33, 32, 33, 33, 33, 33,
2055 32, 33, 32, 33, 33, 33, 33, 33, 33, 34,
2056 33, 32, 34, 33, 32, 32, 32, 32, 32, 47,
2057 140, 141, 29, 32, 32, 32, 32, 33, 41, 41,
2058 60, 60, 32, 32, 32, 33, 33, 32, 32, 32,
2059 32, 32, 33, 32, 59, 32, 33, 32, 32, 32,
2060 32, 32, 32, 32, 32, 32, 32, 32, 33, 33,
2061 48, 49, 91, 9, 32, 33, 74, 64, 65, 57,
2062 64, 65
2063 };
2064
2065 private static ReadOnlySpan<byte> UppercaseValues => new byte[464]
2066 {
2067 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2068 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2069 0, 0, 0, 0, 0, 0, 224, 255, 0, 0,
2070 0, 0, 0, 0, 0, 0, 0, 0, 231, 2,
2071 0, 0, 0, 0, 121, 0, 0, 0, 255, 255,
2072 0, 0, 0, 0, 195, 0, 0, 0, 0, 0,
2073 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2074 97, 0, 0, 0, 0, 0, 163, 0, 0, 0,
2075 130, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2076 56, 0, 0, 0, 255, 255, 254, 255, 177, 255,
2077 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2078 0, 0, 63, 42, 0, 0, 0, 0, 0, 0,
2079 31, 42, 28, 42, 30, 42, 46, 255, 50, 255,
2080 51, 255, 54, 255, 53, 255, 79, 165, 75, 165,
2081 49, 255, 40, 165, 68, 165, 47, 255, 45, 255,
2082 247, 41, 65, 165, 253, 41, 43, 255, 42, 255,
2083 231, 41, 38, 255, 67, 165, 42, 165, 187, 255,
2084 39, 255, 185, 255, 37, 255, 21, 165, 18, 165,
2085 0, 0, 0, 0, 0, 0, 84, 0, 0, 0,
2086 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2087 218, 255, 219, 255, 225, 255, 192, 255, 193, 255,
2088 0, 0, 194, 255, 199, 255, 209, 255, 202, 255,
2089 248, 255, 170, 255, 176, 255, 7, 0, 140, 255,
2090 0, 0, 160, 255, 0, 0, 0, 0, 176, 255,
2091 0, 0, 0, 0, 0, 0, 241, 255, 0, 0,
2092 0, 0, 208, 255, 0, 0, 0, 0, 0, 0,
2093 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2094 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2095 0, 0, 0, 0, 192, 11, 0, 0, 0, 0,
2096 248, 255, 0, 0, 146, 231, 147, 231, 156, 231,
2097 158, 231, 157, 231, 164, 231, 219, 231, 194, 137,
2098 0, 0, 4, 138, 230, 14, 56, 138, 197, 255,
2099 0, 0, 8, 0, 0, 0, 74, 0, 86, 0,
2100 100, 0, 128, 0, 112, 0, 126, 0, 0, 0,
2101 9, 0, 0, 0, 0, 0, 219, 227, 0, 0,
2102 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2103 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2104 0, 0, 0, 0, 228, 255, 0, 0, 240, 255,
2105 0, 0, 230, 255, 0, 0, 0, 0, 0, 0,
2106 213, 213, 216, 213, 0, 0, 0, 0, 0, 0,
2107 0, 0, 0, 0, 160, 227, 0, 0, 0, 0,
2108 0, 0, 48, 0, 0, 0, 0, 0, 0, 0,
2109 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2110 0, 0, 0, 0, 0, 0, 96, 252, 48, 104,
2111 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2112 216, 255, 0, 0, 0, 0, 192, 255, 0, 0,
2113 0, 0, 222, 255
2114 };
2115
2116 private static ReadOnlySpan<byte> LowercaseValues => new byte[464]
2117 {
2118 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2119 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2120 32, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2121 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2122 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
2123 0, 0, 135, 255, 0, 0, 210, 0, 206, 0,
2124 205, 0, 79, 0, 202, 0, 203, 0, 207, 0,
2125 0, 0, 211, 0, 209, 0, 0, 0, 213, 0,
2126 0, 0, 214, 0, 218, 0, 217, 0, 219, 0,
2127 0, 0, 2, 0, 1, 0, 0, 0, 0, 0,
2128 159, 255, 200, 255, 126, 255, 43, 42, 93, 255,
2129 40, 42, 0, 0, 61, 255, 69, 0, 71, 0,
2130 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2131 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2132 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2133 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2134 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2135 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2136 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2137 116, 0, 38, 0, 37, 0, 64, 0, 63, 0,
2138 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2139 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2140 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2141 196, 255, 0, 0, 249, 255, 80, 0, 0, 0,
2142 0, 0, 0, 0, 15, 0, 0, 0, 48, 0,
2143 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2144 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2145 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2146 0, 0, 96, 28, 0, 0, 208, 151, 8, 0,
2147 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2148 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2149 64, 244, 0, 0, 0, 0, 0, 0, 0, 0,
2150 65, 226, 0, 0, 248, 255, 0, 0, 0, 0,
2151 0, 0, 0, 0, 0, 0, 0, 0, 248, 255,
2152 0, 0, 182, 255, 247, 255, 0, 0, 170, 255,
2153 156, 255, 144, 255, 128, 255, 130, 255, 0, 0,
2154 0, 0, 0, 0, 0, 0, 163, 226, 65, 223,
2155 186, 223, 28, 0, 0, 0, 16, 0, 0, 0,
2156 26, 0, 0, 0, 9, 214, 26, 241, 25, 214,
2157 0, 0, 0, 0, 228, 213, 3, 214, 225, 213,
2158 226, 213, 193, 213, 0, 0, 252, 117, 0, 0,
2159 216, 90, 0, 0, 188, 90, 177, 90, 181, 90,
2160 191, 90, 238, 90, 214, 90, 235, 90, 160, 3,
2161 208, 255, 189, 90, 200, 117, 0, 0, 0, 0,
2162 0, 0, 0, 0, 0, 0, 0, 0, 40, 0,
2163 0, 0, 0, 0, 64, 0, 0, 0, 0, 0,
2164 34, 0, 0, 0
2165 };
2166
2167 private static ReadOnlySpan<byte> NumericGraphemeLevel1Index => new byte[2176]
2168 {
2169 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
2170 10, 11, 12, 13, 14, 10, 15, 16, 17, 18,
2171 19, 20, 21, 10, 22, 23, 10, 10, 10, 10,
2172 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2173 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2174 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2175 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2176 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2177 10, 10, 10, 24, 25, 26, 27, 28, 29, 30,
2178 31, 32, 33, 27, 28, 29, 30, 31, 32, 33,
2179 27, 28, 29, 30, 31, 32, 33, 34, 10, 10,
2180 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2181 10, 10, 10, 10, 35, 36, 10, 37, 38, 39,
2182 40, 10, 41, 42, 43, 44, 45, 46, 47, 48,
2183 49, 50, 51, 52, 10, 10, 53, 10, 10, 10,
2184 10, 10, 10, 10, 54, 10, 10, 10, 10, 10,
2185 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2186 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2187 10, 55, 10, 56, 10, 10, 10, 10, 10, 10,
2188 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2189 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2190 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2191 10, 10, 57, 10, 10, 10, 10, 10, 10, 10,
2192 10, 10, 58, 59, 10, 60, 10, 61, 10, 10,
2193 62, 63, 10, 10, 64, 10, 65, 10, 66, 67,
2194 68, 69, 70, 71, 72, 73, 10, 10, 10, 10,
2195 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2196 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2197 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2198 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2199 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2200 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2201 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2202 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2203 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2204 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2205 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2206 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2207 74, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2208 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2209 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2210 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2211 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2212 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2213 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2214 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2215 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2216 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2217 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2218 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2219 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2220 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2221 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2222 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2223 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2224 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2225 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2226 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2227 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2228 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2229 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2230 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2231 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2232 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2233 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2234 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2235 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2236 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2237 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2238 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2239 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2240 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2241 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2242 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2243 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2244 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2245 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2246 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2247 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2248 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2249 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2250 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2251 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2252 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2253 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2254 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2255 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2256 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2257 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2258 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2259 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2260 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2261 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2262 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2263 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2264 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2265 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2266 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2267 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2268 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2269 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2270 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2271 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2272 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2273 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2274 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2275 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2276 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2277 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2278 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2279 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2280 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2281 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2282 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2283 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2284 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2285 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2286 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2287 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2288 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2289 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2290 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2291 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2292 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2293 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2294 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2295 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2296 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2297 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2298 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2299 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2300 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2301 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2302 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2303 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2304 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2305 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2306 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2307 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2308 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2309 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2310 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2311 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2312 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2313 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2314 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2315 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2316 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2317 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2318 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2319 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2320 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2321 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2322 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2323 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2324 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2325 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2326 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2327 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2328 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2329 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2330 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2331 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2332 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2333 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2334 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2335 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2336 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2337 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2338 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2339 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2340 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2341 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2342 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2343 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2344 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2345 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2346 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2347 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2348 10, 10, 75, 76, 76, 76, 76, 76, 76, 76,
2349 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2350 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2351 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2352 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2353 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2354 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2355 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2356 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2357 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2358 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2359 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2360 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2361 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2362 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2363 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2364 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2365 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2366 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2367 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2368 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2369 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2370 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2371 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2372 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2373 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2374 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2375 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2376 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2377 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2378 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2379 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2380 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2381 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2382 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2383 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2384 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2385 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
2386 10, 10, 10, 10, 10, 10
2387 };
2388
2389 private static ReadOnlySpan<byte> NumericGraphemeLevel2Index => new byte[4928]
2390 {
2391 0, 0, 1, 0, 2, 0, 3, 0, 2, 0,
2392 2, 0, 2, 0, 4, 0, 1, 0, 1, 0,
2393 5, 0, 6, 0, 2, 0, 2, 0, 2, 0,
2394 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2395 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2396 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2397 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2398 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2399 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2400 2, 0, 2, 0, 2, 0, 7, 0, 7, 0,
2401 7, 0, 7, 0, 7, 0, 7, 0, 7, 0,
2402 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2403 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2404 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2405 2, 0, 2, 0, 8, 0, 2, 0, 2, 0,
2406 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2407 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2408 2, 0, 2, 0, 2, 0, 2, 0, 9, 0,
2409 7, 0, 10, 0, 11, 0, 2, 0, 2, 0,
2410 2, 0, 12, 0, 13, 0, 2, 0, 2, 0,
2411 14, 0, 7, 0, 3, 0, 15, 0, 2, 0,
2412 2, 0, 2, 0, 2, 0, 2, 0, 16, 0,
2413 17, 0, 3, 0, 18, 0, 19, 0, 2, 0,
2414 7, 0, 20, 0, 2, 0, 2, 0, 2, 0,
2415 2, 0, 2, 0, 21, 0, 15, 0, 3, 0,
2416 2, 0, 14, 0, 22, 0, 2, 0, 23, 0,
2417 24, 0, 2, 0, 2, 0, 25, 0, 2, 0,
2418 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2419 2, 0, 26, 0, 27, 0, 7, 0, 28, 0,
2420 2, 0, 2, 0, 29, 0, 30, 0, 31, 0,
2421 32, 0, 2, 0, 33, 0, 2, 0, 2, 0,
2422 34, 0, 35, 0, 36, 0, 32, 0, 37, 0,
2423 38, 0, 2, 0, 2, 0, 39, 0, 40, 0,
2424 19, 0, 41, 0, 42, 0, 38, 0, 2, 0,
2425 2, 0, 39, 0, 43, 0, 2, 0, 32, 0,
2426 44, 0, 33, 0, 2, 0, 2, 0, 45, 0,
2427 35, 0, 46, 0, 32, 0, 47, 0, 48, 0,
2428 2, 0, 2, 0, 49, 0, 50, 0, 36, 0,
2429 41, 0, 51, 0, 52, 0, 2, 0, 2, 0,
2430 53, 0, 54, 0, 55, 0, 32, 0, 56, 0,
2431 33, 0, 2, 0, 2, 0, 57, 0, 58, 0,
2432 55, 0, 32, 0, 2, 0, 59, 0, 2, 0,
2433 2, 0, 60, 0, 61, 0, 62, 0, 32, 0,
2434 63, 0, 33, 0, 2, 0, 2, 0, 2, 0,
2435 64, 0, 65, 0, 41, 0, 66, 0, 2, 0,
2436 2, 0, 2, 0, 67, 0, 68, 0, 3, 0,
2437 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2438 69, 0, 70, 0, 3, 0, 2, 0, 2, 0,
2439 2, 0, 71, 0, 72, 0, 73, 0, 2, 0,
2440 2, 0, 2, 0, 74, 0, 75, 0, 76, 0,
2441 7, 0, 77, 0, 78, 0, 2, 0, 2, 0,
2442 2, 0, 2, 0, 2, 0, 79, 0, 80, 0,
2443 3, 0, 81, 0, 15, 0, 82, 0, 83, 0,
2444 84, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2445 2, 0, 2, 0, 85, 0, 85, 0, 85, 0,
2446 85, 0, 85, 0, 85, 0, 86, 0, 86, 0,
2447 86, 0, 86, 0, 87, 0, 88, 0, 88, 0,
2448 88, 0, 88, 0, 88, 0, 2, 0, 2, 0,
2449 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2450 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2451 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2452 2, 0, 2, 0, 2, 0, 2, 0, 79, 0,
2453 89, 0, 90, 0, 2, 0, 2, 0, 2, 0,
2454 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2455 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2456 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2457 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2458 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2459 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2460 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2461 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2462 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2463 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2464 2, 0, 91, 0, 92, 0, 2, 0, 93, 0,
2465 2, 0, 93, 0, 2, 0, 94, 0, 2, 0,
2466 94, 0, 2, 0, 2, 0, 2, 0, 95, 0,
2467 96, 0, 22, 0, 3, 0, 97, 0, 98, 0,
2468 3, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2469 2, 0, 2, 0, 55, 0, 2, 0, 99, 0,
2470 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2471 2, 0, 2, 0, 100, 0, 101, 0, 41, 0,
2472 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2473 2, 0, 2, 0, 2, 0, 102, 0, 2, 0,
2474 2, 0, 2, 0, 103, 0, 2, 0, 2, 0,
2475 2, 0, 104, 0, 105, 0, 106, 0, 3, 0,
2476 3, 0, 2, 0, 7, 0, 15, 0, 2, 0,
2477 2, 0, 2, 0, 107, 0, 2, 0, 2, 0,
2478 108, 0, 109, 0, 3, 0, 14, 0, 110, 0,
2479 111, 0, 2, 0, 112, 0, 3, 0, 2, 0,
2480 2, 0, 113, 0, 59, 0, 2, 0, 2, 0,
2481 114, 0, 115, 0, 3, 0, 3, 0, 2, 0,
2482 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2483 2, 0, 116, 0, 117, 0, 118, 0, 2, 0,
2484 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2485 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2486 2, 0, 7, 0, 7, 0, 7, 0, 119, 0,
2487 120, 0, 2, 0, 121, 0, 122, 0, 123, 0,
2488 2, 0, 1, 0, 124, 0, 125, 0, 2, 0,
2489 2, 0, 2, 0, 2, 0, 7, 0, 7, 0,
2490 15, 0, 2, 0, 2, 0, 126, 0, 123, 0,
2491 2, 0, 127, 0, 128, 0, 128, 0, 129, 0,
2492 130, 0, 131, 0, 2, 0, 2, 0, 2, 0,
2493 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2494 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2495 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2496 2, 0, 2, 0, 2, 0, 2, 0, 132, 0,
2497 133, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2498 2, 0, 133, 0, 2, 0, 2, 0, 2, 0,
2499 134, 0, 2, 0, 135, 0, 136, 0, 2, 0,
2500 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2501 137, 0, 138, 0, 139, 0, 140, 0, 2, 0,
2502 2, 0, 126, 0, 2, 0, 141, 0, 142, 0,
2503 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2504 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2505 132, 0, 143, 0, 144, 0, 2, 0, 2, 0,
2506 145, 0, 146, 0, 147, 0, 148, 0, 148, 0,
2507 148, 0, 148, 0, 148, 0, 148, 0, 149, 0,
2508 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2509 148, 0, 148, 0, 150, 0, 151, 0, 152, 0,
2510 153, 0, 154, 0, 155, 0, 156, 0, 157, 0,
2511 158, 0, 159, 0, 160, 0, 161, 0, 2, 0,
2512 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2513 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2514 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2515 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2516 2, 0, 2, 0, 162, 0, 2, 0, 2, 0,
2517 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2518 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2519 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2520 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2521 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2522 2, 0, 163, 0, 164, 0, 2, 0, 2, 0,
2523 2, 0, 165, 0, 2, 0, 2, 0, 2, 0,
2524 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2525 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2526 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2527 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2528 2, 0, 166, 0, 167, 0, 2, 0, 2, 0,
2529 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2530 166, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2531 2, 0, 2, 0, 7, 0, 7, 0, 168, 0,
2532 2, 0, 169, 0, 170, 0, 2, 0, 2, 0,
2533 2, 0, 2, 0, 2, 0, 171, 0, 2, 0,
2534 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2535 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2536 2, 0, 2, 0, 2, 0, 2, 0, 172, 0,
2537 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2538 2, 0, 2, 0, 2, 0, 173, 0, 2, 0,
2539 174, 0, 175, 0, 2, 0, 2, 0, 173, 0,
2540 176, 0, 2, 0, 177, 0, 2, 0, 2, 0,
2541 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2542 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2543 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2544 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2545 3, 0, 2, 0, 2, 0, 2, 0, 166, 0,
2546 178, 0, 2, 0, 53, 0, 2, 0, 2, 0,
2547 2, 0, 2, 0, 179, 0, 180, 0, 2, 0,
2548 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2549 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2550 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2551 181, 0, 2, 0, 182, 0, 183, 0, 2, 0,
2552 2, 0, 2, 0, 2, 0, 184, 0, 2, 0,
2553 2, 0, 185, 0, 186, 0, 3, 0, 7, 0,
2554 187, 0, 3, 0, 2, 0, 188, 0, 2, 0,
2555 189, 0, 59, 0, 85, 0, 190, 0, 28, 0,
2556 2, 0, 2, 0, 191, 0, 192, 0, 3, 0,
2557 193, 0, 3, 0, 2, 0, 2, 0, 194, 0,
2558 195, 0, 196, 0, 3, 0, 2, 0, 197, 0,
2559 2, 0, 2, 0, 2, 0, 198, 0, 19, 0,
2560 2, 0, 199, 0, 200, 0, 2, 0, 2, 0,
2561 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2562 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2563 2, 0, 2, 0, 201, 0, 3, 0, 202, 0,
2564 203, 0, 204, 0, 205, 0, 204, 0, 206, 0,
2565 204, 0, 202, 0, 203, 0, 204, 0, 205, 0,
2566 204, 0, 206, 0, 204, 0, 202, 0, 203, 0,
2567 204, 0, 205, 0, 204, 0, 206, 0, 204, 0,
2568 202, 0, 203, 0, 204, 0, 205, 0, 204, 0,
2569 206, 0, 204, 0, 202, 0, 203, 0, 204, 0,
2570 205, 0, 204, 0, 206, 0, 204, 0, 202, 0,
2571 203, 0, 204, 0, 205, 0, 204, 0, 206, 0,
2572 204, 0, 202, 0, 203, 0, 204, 0, 205, 0,
2573 204, 0, 206, 0, 204, 0, 202, 0, 203, 0,
2574 204, 0, 205, 0, 204, 0, 206, 0, 204, 0,
2575 202, 0, 203, 0, 204, 0, 205, 0, 204, 0,
2576 206, 0, 204, 0, 202, 0, 203, 0, 204, 0,
2577 205, 0, 204, 0, 206, 0, 204, 0, 202, 0,
2578 203, 0, 204, 0, 205, 0, 204, 0, 206, 0,
2579 204, 0, 202, 0, 203, 0, 204, 0, 205, 0,
2580 204, 0, 206, 0, 204, 0, 202, 0, 203, 0,
2581 204, 0, 205, 0, 204, 0, 206, 0, 204, 0,
2582 202, 0, 203, 0, 204, 0, 205, 0, 204, 0,
2583 206, 0, 204, 0, 202, 0, 203, 0, 204, 0,
2584 205, 0, 204, 0, 206, 0, 204, 0, 202, 0,
2585 203, 0, 204, 0, 205, 0, 204, 0, 206, 0,
2586 204, 0, 202, 0, 203, 0, 204, 0, 205, 0,
2587 204, 0, 206, 0, 204, 0, 202, 0, 203, 0,
2588 204, 0, 205, 0, 204, 0, 206, 0, 204, 0,
2589 202, 0, 203, 0, 204, 0, 205, 0, 204, 0,
2590 206, 0, 204, 0, 202, 0, 203, 0, 204, 0,
2591 205, 0, 204, 0, 206, 0, 204, 0, 202, 0,
2592 203, 0, 204, 0, 205, 0, 204, 0, 206, 0,
2593 204, 0, 202, 0, 203, 0, 204, 0, 205, 0,
2594 204, 0, 206, 0, 204, 0, 202, 0, 203, 0,
2595 204, 0, 205, 0, 204, 0, 206, 0, 204, 0,
2596 202, 0, 203, 0, 204, 0, 205, 0, 204, 0,
2597 206, 0, 204, 0, 202, 0, 203, 0, 204, 0,
2598 205, 0, 204, 0, 206, 0, 204, 0, 202, 0,
2599 203, 0, 204, 0, 205, 0, 204, 0, 206, 0,
2600 204, 0, 202, 0, 203, 0, 204, 0, 205, 0,
2601 204, 0, 206, 0, 204, 0, 202, 0, 203, 0,
2602 204, 0, 205, 0, 204, 0, 206, 0, 204, 0,
2603 202, 0, 203, 0, 204, 0, 205, 0, 204, 0,
2604 206, 0, 204, 0, 202, 0, 203, 0, 204, 0,
2605 205, 0, 204, 0, 206, 0, 204, 0, 202, 0,
2606 203, 0, 204, 0, 205, 0, 204, 0, 206, 0,
2607 204, 0, 202, 0, 203, 0, 204, 0, 205, 0,
2608 204, 0, 206, 0, 204, 0, 202, 0, 203, 0,
2609 204, 0, 205, 0, 204, 0, 206, 0, 204, 0,
2610 202, 0, 203, 0, 204, 0, 205, 0, 204, 0,
2611 206, 0, 204, 0, 202, 0, 203, 0, 204, 0,
2612 205, 0, 204, 0, 206, 0, 204, 0, 202, 0,
2613 203, 0, 204, 0, 205, 0, 204, 0, 207, 0,
2614 86, 0, 208, 0, 88, 0, 88, 0, 209, 0,
2615 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2616 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2617 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2618 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2619 2, 0, 2, 0, 210, 0, 211, 0, 2, 0,
2620 2, 0, 2, 0, 212, 0, 2, 0, 213, 0,
2621 2, 0, 214, 0, 2, 0, 2, 0, 2, 0,
2622 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2623 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2624 2, 0, 2, 0, 2, 0, 2, 0, 215, 0,
2625 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2626 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2627 2, 0, 2, 0, 2, 0, 2, 0, 7, 0,
2628 2, 0, 7, 0, 2, 0, 2, 0, 2, 0,
2629 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2630 2, 0, 2, 0, 2, 0, 2, 0, 4, 0,
2631 2, 0, 3, 0, 2, 0, 2, 0, 2, 0,
2632 2, 0, 2, 0, 2, 0, 2, 0, 53, 0,
2633 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2634 216, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2635 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2636 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2637 2, 0, 2, 0, 217, 0, 218, 0, 219, 0,
2638 220, 0, 221, 0, 222, 0, 223, 0, 224, 0,
2639 225, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2640 2, 0, 2, 0, 226, 0, 2, 0, 2, 0,
2641 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2642 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2643 2, 0, 2, 0, 227, 0, 228, 0, 2, 0,
2644 2, 0, 229, 0, 2, 0, 230, 0, 2, 0,
2645 2, 0, 231, 0, 2, 0, 2, 0, 2, 0,
2646 2, 0, 2, 0, 232, 0, 2, 0, 2, 0,
2647 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2648 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2649 3, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2650 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2651 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2652 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2653 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2654 2, 0, 2, 0, 233, 0, 2, 0, 234, 0,
2655 2, 0, 2, 0, 235, 0, 2, 0, 2, 0,
2656 2, 0, 2, 0, 236, 0, 2, 0, 237, 0,
2657 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2658 2, 0, 2, 0, 2, 0, 2, 0, 238, 0,
2659 239, 0, 240, 0, 241, 0, 242, 0, 243, 0,
2660 2, 0, 2, 0, 244, 0, 245, 0, 2, 0,
2661 2, 0, 246, 0, 2, 0, 247, 0, 2, 0,
2662 2, 0, 2, 0, 2, 0, 248, 0, 2, 0,
2663 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2664 249, 0, 2, 0, 249, 0, 2, 0, 2, 0,
2665 250, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2666 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2667 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2668 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2669 2, 0, 251, 0, 2, 0, 2, 0, 252, 0,
2670 3, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2671 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2672 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2673 2, 0, 2, 0, 2, 0, 2, 0, 253, 0,
2674 254, 0, 2, 0, 2, 0, 255, 0, 2, 0,
2675 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2676 0, 1, 1, 1, 2, 0, 21, 0, 2, 1,
2677 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2678 2, 0, 3, 1, 2, 0, 2, 0, 2, 0,
2679 4, 1, 2, 0, 2, 0, 5, 1, 6, 1,
2680 7, 1, 8, 1, 166, 0, 111, 0, 2, 0,
2681 2, 0, 9, 1, 10, 1, 2, 0, 2, 0,
2682 3, 0, 11, 1, 2, 0, 12, 1, 13, 1,
2683 14, 1, 2, 0, 2, 0, 15, 1, 111, 0,
2684 2, 0, 2, 0, 16, 1, 17, 1, 3, 0,
2685 18, 1, 19, 1, 2, 0, 2, 0, 20, 1,
2686 21, 1, 2, 0, 2, 0, 2, 0, 2, 0,
2687 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2688 166, 0, 22, 1, 3, 0, 59, 0, 2, 0,
2689 2, 0, 60, 0, 23, 1, 36, 0, 24, 1,
2690 25, 1, 2, 0, 2, 0, 2, 0, 2, 0,
2691 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2692 2, 0, 2, 0, 26, 1, 27, 1, 28, 1,
2693 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2694 29, 1, 30, 1, 3, 0, 2, 0, 2, 0,
2695 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2696 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2697 166, 0, 31, 1, 15, 0, 32, 1, 2, 0,
2698 2, 0, 2, 0, 2, 0, 2, 0, 33, 1,
2699 15, 0, 3, 0, 2, 0, 2, 0, 2, 0,
2700 2, 0, 34, 1, 35, 1, 3, 0, 2, 0,
2701 2, 0, 2, 0, 2, 0, 79, 0, 36, 1,
2702 37, 1, 2, 0, 2, 0, 2, 0, 2, 0,
2703 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2704 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2705 20, 1, 38, 1, 2, 0, 2, 0, 2, 0,
2706 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2707 2, 0, 2, 0, 39, 1, 40, 1, 2, 0,
2708 2, 0, 2, 0, 41, 1, 42, 1, 3, 0,
2709 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2710 2, 0, 2, 0, 43, 1, 44, 1, 2, 0,
2711 45, 1, 2, 0, 2, 0, 46, 1, 36, 0,
2712 47, 1, 2, 0, 2, 0, 48, 1, 49, 1,
2713 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2714 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2715 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2716 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2717 2, 0, 2, 0, 2, 0, 2, 0, 50, 1,
2718 51, 1, 2, 0, 52, 1, 53, 1, 2, 0,
2719 2, 0, 54, 1, 55, 1, 56, 1, 2, 0,
2720 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2721 2, 0, 57, 1, 58, 1, 3, 0, 2, 0,
2722 2, 0, 59, 1, 60, 1, 3, 0, 2, 0,
2723 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2724 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2725 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2726 2, 0, 2, 0, 2, 0, 2, 0, 61, 1,
2727 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2728 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2729 2, 0, 2, 0, 62, 1, 63, 1, 2, 0,
2730 2, 0, 64, 1, 65, 1, 66, 1, 67, 1,
2731 68, 1, 69, 1, 70, 1, 2, 0, 2, 0,
2732 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2733 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2734 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2735 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2736 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2737 2, 0, 71, 1, 2, 0, 2, 0, 2, 0,
2738 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2739 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2740 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2741 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2742 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2743 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2744 2, 0, 3, 0, 2, 0, 2, 0, 2, 0,
2745 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2746 25, 1, 2, 0, 2, 0, 2, 0, 6, 1,
2747 2, 0, 72, 1, 73, 1, 2, 0, 2, 0,
2748 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2749 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2750 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2751 74, 1, 75, 1, 2, 0, 2, 0, 2, 0,
2752 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2753 2, 0, 2, 0, 166, 0, 76, 1, 77, 1,
2754 77, 1, 78, 1, 11, 1, 2, 0, 2, 0,
2755 2, 0, 2, 0, 79, 1, 184, 0, 2, 0,
2756 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2757 2, 0, 2, 0, 2, 0, 80, 1, 81, 1,
2758 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2759 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2760 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2761 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2762 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2763 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2764 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2765 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2766 2, 0, 2, 0, 2, 0, 82, 1, 83, 1,
2767 84, 1, 2, 0, 85, 1, 2, 0, 2, 0,
2768 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2769 2, 0, 2, 0, 93, 0, 2, 0, 2, 0,
2770 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2771 2, 0, 2, 0, 74, 1, 86, 1, 2, 0,
2772 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2773 239, 0, 87, 1, 2, 0, 2, 0, 2, 0,
2774 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2775 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2776 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2777 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2778 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2779 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2780 2, 0, 2, 0, 2, 0, 88, 1, 89, 1,
2781 90, 1, 91, 1, 7, 0, 7, 0, 7, 0,
2782 92, 1, 7, 0, 7, 0, 77, 0, 193, 0,
2783 79, 1, 14, 0, 9, 0, 2, 0, 2, 0,
2784 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2785 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2786 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2787 2, 0, 2, 0, 2, 0, 2, 0, 93, 1,
2788 94, 1, 95, 1, 2, 0, 2, 0, 2, 0,
2789 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2790 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2791 2, 0, 2, 0, 2, 0, 6, 1, 3, 0,
2792 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2793 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2794 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2795 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2796 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2797 96, 1, 3, 0, 2, 0, 2, 0, 2, 0,
2798 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2799 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2800 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2801 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2802 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2803 217, 0, 6, 1, 2, 0, 2, 0, 2, 0,
2804 2, 0, 2, 0, 2, 0, 97, 1, 3, 0,
2805 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2806 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2807 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2808 2, 0, 2, 0, 18, 1, 98, 1, 99, 1,
2809 100, 1, 101, 1, 2, 0, 2, 0, 2, 0,
2810 2, 0, 18, 1, 98, 1, 102, 1, 103, 1,
2811 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2812 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2813 2, 0, 2, 0, 148, 0, 148, 0, 148, 0,
2814 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2815 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2816 148, 0, 148, 0, 148, 0, 104, 1, 2, 0,
2817 134, 0, 2, 0, 2, 0, 2, 0, 105, 1,
2818 106, 1, 107, 1, 108, 1, 109, 1, 148, 0,
2819 148, 0, 148, 0, 110, 1, 111, 1, 112, 1,
2820 113, 1, 134, 0, 114, 1, 135, 0, 148, 0,
2821 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2822 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2823 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2824 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2825 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2826 115, 1, 148, 0, 148, 0, 148, 0, 148, 0,
2827 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2828 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2829 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2830 116, 1, 117, 1, 148, 0, 148, 0, 148, 0,
2831 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2832 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2833 148, 0, 148, 0, 148, 0, 2, 0, 2, 0,
2834 2, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2835 148, 0, 148, 0, 148, 0, 148, 0, 2, 0,
2836 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2837 2, 0, 118, 1, 2, 0, 2, 0, 2, 0,
2838 2, 0, 2, 0, 119, 1, 148, 0, 148, 0,
2839 105, 1, 2, 0, 2, 0, 2, 0, 120, 1,
2840 121, 1, 2, 0, 2, 0, 120, 1, 2, 0,
2841 122, 1, 148, 0, 148, 0, 148, 0, 148, 0,
2842 148, 0, 105, 1, 148, 0, 148, 0, 123, 1,
2843 146, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2844 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2845 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2846 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2847 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2848 148, 0, 148, 0, 148, 0, 2, 0, 2, 0,
2849 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2850 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2851 2, 0, 2, 0, 2, 0, 3, 0, 148, 0,
2852 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2853 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2854 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2855 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2856 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2857 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2858 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2859 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2860 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2861 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2862 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2863 148, 0, 148, 0, 148, 0, 148, 0, 148, 0,
2864 148, 0, 148, 0, 116, 1, 2, 0, 2, 0,
2865 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2866 2, 0, 2, 0, 124, 1, 2, 0, 2, 0,
2867 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2868 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2869 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2870 2, 0, 2, 0, 2, 0, 2, 0, 2, 0,
2871 1, 0, 1, 0, 7, 0, 7, 0, 7, 0,
2872 7, 0, 7, 0, 7, 0, 1, 0, 1, 0,
2873 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
2874 1, 0, 7, 0, 7, 0, 7, 0, 7, 0,
2875 7, 0, 7, 0, 7, 0, 7, 0, 7, 0,
2876 7, 0, 7, 0, 7, 0, 7, 0, 7, 0,
2877 7, 0, 1, 0, 1, 0, 1, 0, 1, 0,
2878 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
2879 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
2880 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
2881 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
2882 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
2883 1, 0, 1, 0, 1, 0, 1, 0
2884 };
2885
2886 private static ReadOnlySpan<byte> NumericGraphemeLevel3Index => new byte[6096]
2887 {
2888 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2889 1, 0, 0, 2, 0, 0, 0, 0, 0, 0,
2890 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2891 0, 0, 3, 3, 3, 3, 3, 3, 3, 3,
2892 3, 3, 3, 3, 3, 3, 3, 3, 4, 5,
2893 6, 7, 8, 9, 10, 11, 12, 13, 3, 3,
2894 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2895 3, 3, 3, 3, 3, 3, 3, 3, 3, 0,
2896 3, 3, 3, 3, 3, 3, 3, 3, 3, 14,
2897 3, 3, 3, 0, 14, 3, 3, 3, 15, 16,
2898 3, 3, 3, 3, 3, 17, 3, 3, 18, 19,
2899 20, 3, 21, 21, 21, 21, 21, 21, 21, 21,
2900 21, 21, 21, 21, 21, 21, 21, 21, 3, 3,
2901 3, 21, 21, 21, 21, 21, 21, 21, 3, 3,
2902 3, 3, 3, 3, 3, 21, 21, 21, 21, 21,
2903 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
2904 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
2905 21, 21, 21, 21, 3, 21, 3, 21, 21, 3,
2906 21, 21, 3, 21, 3, 3, 3, 3, 3, 3,
2907 3, 3, 22, 22, 22, 22, 22, 22, 3, 3,
2908 3, 3, 3, 3, 3, 3, 3, 3, 21, 21,
2909 21, 21, 21, 21, 21, 21, 21, 21, 21, 3,
2910 0, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2911 3, 3, 3, 3, 3, 21, 21, 21, 21, 21,
2912 21, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2913 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2914 3, 3, 21, 21, 21, 21, 21, 21, 21, 22,
2915 3, 21, 21, 21, 21, 21, 21, 3, 3, 21,
2916 21, 3, 21, 21, 21, 21, 3, 3, 3, 3,
2917 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2918 3, 3, 3, 22, 3, 21, 3, 3, 3, 3,
2919 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2920 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
2921 21, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2922 3, 3, 21, 21, 21, 21, 21, 21, 21, 21,
2923 21, 21, 21, 21, 21, 21, 3, 3, 3, 3,
2924 3, 3, 3, 3, 3, 21, 3, 3, 3, 3,
2925 3, 3, 3, 3, 21, 21, 21, 21, 3, 21,
2926 21, 21, 21, 21, 21, 21, 21, 21, 3, 21,
2927 21, 21, 3, 21, 21, 21, 21, 21, 3, 3,
2928 3, 3, 3, 3, 3, 3, 3, 3, 3, 21,
2929 21, 21, 3, 3, 3, 3, 3, 3, 3, 21,
2930 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
2931 21, 21, 21, 21, 22, 21, 21, 21, 21, 21,
2932 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
2933 21, 23, 3, 3, 3, 3, 3, 3, 3, 3,
2934 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2935 3, 3, 3, 3, 21, 23, 21, 3, 23, 23,
2936 23, 21, 21, 21, 21, 21, 21, 21, 21, 23,
2937 23, 23, 23, 21, 23, 23, 3, 21, 21, 21,
2938 21, 21, 21, 21, 3, 3, 3, 3, 3, 3,
2939 3, 3, 3, 3, 21, 21, 3, 3, 4, 5,
2940 6, 7, 8, 9, 10, 11, 12, 13, 3, 21,
2941 23, 23, 3, 3, 3, 3, 3, 3, 3, 3,
2942 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2943 3, 3, 3, 3, 3, 3, 21, 3, 21, 23,
2944 23, 21, 21, 21, 21, 3, 3, 23, 23, 3,
2945 3, 23, 23, 21, 3, 3, 3, 3, 3, 3,
2946 3, 3, 3, 21, 3, 3, 3, 3, 3, 3,
2947 3, 3, 3, 3, 3, 3, 24, 25, 26, 18,
2948 20, 27, 3, 3, 3, 3, 21, 3, 3, 21,
2949 21, 23, 3, 3, 3, 3, 3, 3, 3, 3,
2950 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2951 3, 3, 3, 3, 3, 3, 21, 3, 23, 23,
2952 23, 21, 21, 3, 3, 3, 3, 21, 21, 3,
2953 3, 21, 21, 21, 3, 3, 3, 3, 3, 3,
2954 3, 3, 4, 5, 6, 7, 8, 9, 10, 11,
2955 12, 13, 21, 21, 3, 3, 3, 21, 3, 3,
2956 3, 3, 3, 3, 3, 3, 3, 3, 23, 21,
2957 21, 21, 21, 21, 3, 21, 21, 23, 3, 23,
2958 23, 21, 3, 3, 3, 3, 3, 3, 3, 3,
2959 3, 3, 3, 3, 21, 21, 21, 21, 21, 21,
2960 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2961 3, 3, 21, 3, 21, 21, 3, 3, 3, 3,
2962 3, 21, 21, 21, 3, 3, 3, 3, 3, 3,
2963 3, 3, 3, 3, 18, 19, 20, 24, 25, 26,
2964 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2965 21, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2966 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2967 3, 3, 3, 3, 3, 3, 3, 3, 21, 23,
2968 21, 23, 23, 3, 3, 3, 23, 23, 23, 3,
2969 23, 23, 23, 21, 3, 3, 28, 29, 30, 3,
2970 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2971 3, 3, 21, 23, 23, 23, 21, 3, 3, 3,
2972 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2973 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2974 3, 3, 21, 21, 21, 23, 23, 23, 23, 3,
2975 21, 21, 21, 3, 21, 21, 21, 21, 3, 3,
2976 3, 3, 3, 3, 3, 21, 21, 3, 3, 3,
2977 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2978 3, 3, 3, 3, 31, 32, 33, 34, 32, 33,
2979 34, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2980 3, 3, 3, 3, 21, 3, 23, 21, 23, 23,
2981 21, 23, 23, 3, 21, 23, 23, 3, 23, 23,
2982 21, 21, 3, 3, 21, 21, 23, 23, 3, 3,
2983 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2984 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2985 3, 21, 21, 3, 21, 23, 23, 21, 21, 21,
2986 21, 3, 23, 23, 23, 3, 23, 23, 23, 21,
2987 22, 3, 3, 3, 3, 3, 3, 3, 3, 21,
2988 35, 36, 37, 38, 39, 40, 41, 3, 28, 29,
2989 30, 18, 19, 20, 24, 25, 26, 3, 3, 3,
2990 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2991 3, 3, 3, 3, 21, 3, 3, 3, 3, 21,
2992 23, 23, 21, 21, 21, 3, 21, 3, 23, 23,
2993 23, 23, 23, 23, 23, 21, 3, 3, 23, 23,
2994 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2995 3, 3, 3, 21, 3, 23, 21, 21, 21, 21,
2996 21, 21, 21, 3, 3, 3, 3, 3, 3, 3,
2997 3, 3, 3, 3, 3, 21, 21, 21, 21, 21,
2998 21, 21, 21, 3, 3, 21, 3, 23, 21, 21,
2999 21, 21, 21, 21, 21, 21, 21, 3, 3, 3,
3000 3, 3, 3, 3, 3, 3, 3, 3, 21, 21,
3001 21, 21, 21, 21, 3, 3, 3, 3, 3, 3,
3002 3, 3, 3, 3, 21, 21, 3, 3, 3, 3,
3003 3, 3, 4, 5, 6, 7, 8, 9, 10, 11,
3004 12, 13, 19, 42, 43, 44, 45, 46, 47, 48,
3005 49, 50, 3, 21, 3, 21, 3, 21, 3, 3,
3006 3, 3, 23, 23, 3, 21, 21, 21, 21, 21,
3007 21, 21, 21, 21, 21, 21, 21, 21, 21, 23,
3008 21, 21, 21, 21, 21, 3, 21, 21, 3, 3,
3009 3, 3, 3, 21, 21, 21, 21, 21, 21, 21,
3010 21, 21, 21, 21, 3, 21, 21, 21, 21, 21,
3011 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
3012 21, 21, 21, 21, 21, 3, 3, 3, 3, 3,
3013 3, 3, 3, 3, 21, 3, 3, 3, 3, 3,
3014 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3015 3, 3, 3, 3, 3, 3, 3, 21, 21, 21,
3016 21, 23, 21, 21, 21, 21, 21, 21, 3, 21,
3017 21, 23, 23, 21, 21, 3, 3, 3, 3, 3,
3018 3, 3, 23, 23, 21, 21, 3, 3, 3, 3,
3019 21, 21, 3, 21, 21, 21, 21, 3, 3, 3,
3020 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3021 21, 3, 23, 21, 21, 3, 3, 3, 3, 3,
3022 3, 21, 3, 3, 4, 5, 6, 7, 8, 9,
3023 10, 11, 12, 13, 3, 3, 3, 21, 3, 3,
3024 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
3025 51, 51, 51, 51, 51, 51, 52, 52, 52, 52,
3026 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
3027 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
3028 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
3029 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
3030 53, 53, 53, 53, 3, 3, 3, 3, 3, 3,
3031 3, 3, 3, 17, 15, 16, 54, 55, 56, 57,
3032 58, 59, 28, 60, 61, 62, 63, 64, 65, 66,
3033 67, 29, 68, 3, 3, 3, 3, 3, 3, 3,
3034 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3035 69, 70, 71, 3, 3, 3, 3, 3, 3, 3,
3036 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3037 21, 21, 21, 3, 3, 3, 3, 3, 3, 3,
3038 3, 3, 3, 3, 3, 3, 21, 21, 3, 3,
3039 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3040 3, 3, 3, 3, 21, 21, 23, 21, 21, 21,
3041 21, 21, 21, 21, 23, 23, 23, 23, 23, 23,
3042 23, 23, 21, 23, 23, 21, 21, 21, 21, 21,
3043 21, 21, 31, 32, 33, 34, 72, 73, 74, 75,
3044 76, 77, 3, 3, 3, 3, 3, 3, 3, 3,
3045 3, 3, 3, 3, 3, 3, 3, 3, 3, 21,
3046 21, 21, 0, 3, 3, 3, 3, 3, 3, 3,
3047 3, 3, 3, 21, 3, 3, 3, 3, 3, 3,
3048 21, 21, 21, 23, 23, 23, 23, 21, 21, 23,
3049 23, 23, 3, 3, 3, 3, 23, 23, 21, 23,
3050 23, 23, 23, 23, 23, 21, 21, 21, 3, 3,
3051 3, 3, 4, 5, 6, 7, 8, 9, 10, 11,
3052 12, 13, 17, 3, 3, 3, 3, 3, 3, 3,
3053 3, 3, 3, 3, 3, 21, 21, 23, 23, 21,
3054 3, 3, 3, 3, 3, 3, 3, 3, 3, 23,
3055 21, 23, 21, 21, 21, 21, 21, 21, 21, 3,
3056 21, 3, 21, 3, 3, 21, 21, 21, 21, 21,
3057 21, 21, 21, 23, 23, 23, 23, 23, 23, 21,
3058 21, 21, 21, 21, 21, 21, 21, 21, 21, 3,
3059 3, 21, 21, 21, 21, 21, 23, 3, 3, 3,
3060 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3061 3, 3, 21, 21, 21, 21, 21, 21, 21, 23,
3062 21, 23, 23, 23, 23, 23, 21, 23, 23, 3,
3063 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3064 21, 21, 21, 21, 3, 3, 3, 3, 3, 3,
3065 3, 3, 3, 3, 3, 3, 21, 21, 23, 3,
3066 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3067 3, 3, 3, 23, 21, 21, 21, 21, 23, 23,
3068 21, 21, 23, 21, 21, 21, 3, 3, 3, 3,
3069 3, 3, 3, 3, 21, 23, 21, 21, 23, 23,
3070 23, 21, 23, 21, 3, 3, 3, 3, 23, 23,
3071 23, 23, 23, 23, 23, 23, 21, 21, 21, 21,
3072 21, 21, 21, 21, 23, 23, 21, 21, 3, 3,
3073 3, 3, 3, 3, 3, 3, 21, 21, 21, 3,
3074 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
3075 21, 21, 21, 23, 21, 21, 21, 21, 21, 21,
3076 21, 3, 3, 3, 3, 21, 3, 3, 3, 3,
3077 3, 3, 21, 3, 3, 23, 21, 21, 3, 3,
3078 3, 3, 3, 3, 21, 21, 21, 21, 21, 21,
3079 21, 21, 21, 21, 3, 21, 21, 21, 21, 21,
3080 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3081 3, 0, 21, 78, 0, 0, 3, 3, 3, 3,
3082 3, 3, 3, 3, 0, 0, 0, 0, 0, 0,
3083 0, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3084 3, 3, 3, 3, 14, 3, 3, 3, 3, 3,
3085 3, 3, 3, 3, 3, 3, 3, 14, 3, 3,
3086 3, 3, 3, 3, 79, 3, 3, 3, 54, 55,
3087 56, 57, 58, 59, 3, 3, 3, 3, 3, 3,
3088 79, 17, 15, 16, 54, 55, 56, 57, 58, 59,
3089 3, 3, 3, 3, 3, 3, 3, 3, 14, 3,
3090 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3091 3, 3, 80, 81, 39, 82, 83, 41, 84, 85,
3092 86, 87, 88, 25, 89, 90, 91, 32, 32, 33,
3093 34, 72, 73, 74, 75, 76, 77, 28, 92, 93,
3094 63, 29, 94, 30, 30, 95, 68, 3, 3, 74,
3095 63, 96, 97, 31, 3, 3, 3, 3, 3, 3,
3096 3, 3, 3, 3, 14, 14, 14, 14, 14, 14,
3097 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3098 3, 3, 3, 3, 3, 14, 14, 3, 3, 3,
3099 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3100 3, 3, 14, 14, 3, 3, 3, 3, 3, 3,
3101 3, 3, 3, 3, 3, 3, 14, 3, 3, 3,
3102 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3103 3, 3, 3, 3, 3, 3, 3, 3, 3, 14,
3104 3, 3, 3, 3, 3, 3, 3, 3, 3, 14,
3105 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
3106 3, 3, 3, 3, 14, 14, 14, 3, 3, 3,
3107 3, 3, 17, 15, 16, 54, 55, 56, 57, 58,
3108 59, 28, 92, 93, 98, 99, 100, 27, 69, 70,
3109 71, 60, 17, 15, 16, 54, 55, 56, 57, 58,
3110 59, 28, 92, 93, 98, 99, 100, 27, 69, 70,
3111 71, 60, 17, 15, 16, 54, 55, 56, 57, 58,
3112 59, 28, 92, 93, 98, 99, 100, 27, 69, 70,
3113 71, 60, 3, 3, 3, 3, 3, 3, 3, 3,
3114 3, 3, 3, 3, 3, 3, 79, 92, 93, 98,
3115 99, 100, 27, 69, 70, 71, 60, 17, 15, 16,
3116 54, 55, 56, 57, 58, 59, 28, 79, 3, 3,
3117 3, 3, 3, 3, 14, 3, 3, 3, 3, 3,
3118 3, 3, 3, 3, 14, 3, 3, 3, 3, 3,
3119 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3120 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3121 3, 14, 14, 14, 14, 3, 14, 14, 14, 14,
3122 14, 14, 3, 14, 14, 14, 14, 14, 14, 14,
3123 14, 14, 14, 14, 14, 3, 14, 14, 14, 14,
3124 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
3125 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
3126 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
3127 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3128 14, 14, 14, 14, 14, 14, 3, 3, 14, 14,
3129 14, 14, 14, 14, 14, 14, 14, 14, 14, 3,
3130 14, 3, 14, 3, 3, 3, 3, 3, 3, 14,
3131 3, 3, 3, 14, 3, 3, 3, 3, 3, 3,
3132 14, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3133 3, 14, 14, 3, 3, 3, 3, 3, 3, 3,
3134 3, 3, 3, 3, 3, 3, 3, 3, 14, 3,
3135 3, 14, 3, 3, 3, 3, 14, 3, 14, 3,
3136 3, 3, 3, 14, 14, 14, 3, 14, 3, 3,
3137 3, 3, 3, 3, 3, 3, 3, 3, 3, 14,
3138 14, 14, 14, 14, 3, 3, 3, 3, 3, 3,
3139 3, 3, 3, 3, 3, 3, 3, 3, 17, 15,
3140 16, 54, 55, 56, 57, 58, 59, 28, 17, 15,
3141 16, 54, 55, 56, 57, 58, 59, 28, 17, 15,
3142 16, 54, 55, 56, 57, 58, 59, 28, 3, 14,
3143 14, 14, 3, 3, 3, 3, 3, 3, 3, 3,
3144 3, 14, 3, 3, 3, 3, 3, 3, 3, 3,
3145 3, 3, 3, 3, 3, 3, 14, 3, 3, 3,
3146 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3147 3, 14, 3, 3, 3, 3, 14, 14, 3, 3,
3148 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3149 3, 3, 3, 14, 14, 14, 3, 3, 3, 3,
3150 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3151 3, 3, 3, 3, 3, 14, 14, 3, 3, 3,
3152 14, 3, 3, 3, 3, 14, 3, 3, 3, 3,
3153 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3154 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3155 3, 21, 21, 21, 3, 3, 3, 3, 3, 3,
3156 3, 3, 3, 3, 3, 19, 3, 3, 3, 3,
3157 3, 3, 3, 3, 3, 31, 3, 3, 3, 3,
3158 3, 3, 3, 3, 3, 32, 33, 34, 72, 73,
3159 74, 75, 76, 77, 21, 21, 21, 21, 21, 21,
3160 14, 3, 3, 3, 3, 3, 3, 3, 28, 60,
3161 61, 3, 3, 14, 3, 3, 3, 3, 3, 3,
3162 3, 3, 3, 3, 3, 21, 21, 3, 3, 3,
3163 3, 3, 3, 3, 32, 33, 34, 72, 3, 3,
3164 3, 3, 3, 3, 3, 3, 3, 3, 32, 33,
3165 34, 72, 73, 74, 75, 76, 77, 28, 3, 3,
3166 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3167 3, 3, 28, 60, 61, 62, 63, 64, 65, 66,
3168 3, 101, 102, 103, 104, 105, 106, 107, 108, 109,
3169 61, 110, 111, 112, 113, 114, 3, 3, 3, 3,
3170 3, 3, 3, 14, 3, 14, 3, 3, 3, 3,
3171 3, 3, 3, 115, 116, 117, 118, 62, 119, 120,
3172 121, 122, 123, 124, 125, 126, 127, 63, 21, 21,
3173 21, 3, 21, 21, 21, 21, 21, 21, 21, 21,
3174 21, 21, 3, 3, 3, 3, 3, 3, 3, 3,
3175 32, 33, 34, 72, 73, 74, 75, 76, 77, 31,
3176 21, 21, 3, 3, 3, 3, 3, 3, 3, 3,
3177 3, 3, 3, 3, 3, 3, 3, 3, 21, 3,
3178 3, 3, 21, 3, 3, 3, 3, 21, 3, 3,
3179 3, 3, 3, 3, 3, 23, 23, 21, 21, 23,
3180 3, 3, 3, 3, 21, 3, 3, 3, 18, 19,
3181 20, 24, 25, 26, 3, 3, 3, 3, 3, 3,
3182 3, 3, 3, 3, 23, 23, 3, 3, 3, 3,
3183 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3184 3, 3, 3, 3, 23, 23, 23, 23, 23, 23,
3185 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
3186 21, 21, 3, 3, 3, 3, 3, 3, 3, 3,
3187 3, 3, 21, 21, 3, 3, 3, 3, 3, 3,
3188 3, 3, 3, 3, 3, 3, 3, 21, 3, 3,
3189 3, 3, 3, 3, 21, 21, 21, 21, 21, 21,
3190 21, 21, 3, 3, 3, 3, 3, 3, 3, 3,
3191 3, 21, 21, 21, 21, 21, 21, 21, 21, 21,
3192 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
3193 51, 51, 51, 3, 3, 3, 3, 3, 3, 21,
3194 23, 23, 21, 21, 21, 21, 23, 23, 21, 21,
3195 23, 23, 23, 3, 3, 3, 3, 3, 3, 3,
3196 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3197 3, 3, 3, 21, 3, 3, 3, 3, 3, 3,
3198 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3199 3, 3, 3, 21, 21, 21, 21, 21, 21, 23,
3200 23, 21, 21, 23, 23, 21, 21, 3, 3, 3,
3201 3, 3, 3, 3, 3, 3, 3, 3, 3, 21,
3202 3, 3, 3, 3, 3, 3, 3, 3, 21, 23,
3203 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3204 3, 3, 3, 3, 21, 3, 3, 3, 21, 3,
3205 21, 21, 21, 3, 3, 21, 21, 3, 3, 3,
3206 3, 3, 21, 21, 3, 3, 3, 3, 3, 3,
3207 3, 3, 3, 3, 3, 23, 21, 21, 23, 23,
3208 3, 3, 3, 3, 3, 23, 21, 3, 3, 3,
3209 3, 3, 3, 3, 3, 3, 3, 3, 3, 23,
3210 23, 21, 23, 23, 21, 23, 23, 3, 23, 21,
3211 3, 3, 128, 129, 129, 129, 129, 129, 129, 129,
3212 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
3213 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
3214 128, 129, 129, 129, 129, 129, 129, 129, 129, 129,
3215 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
3216 129, 129, 129, 129, 129, 129, 129, 129, 128, 129,
3217 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
3218 128, 129, 129, 129, 129, 129, 129, 129, 129, 129,
3219 129, 129, 129, 129, 129, 129, 3, 3, 3, 3,
3220 3, 3, 3, 3, 3, 3, 3, 3, 52, 52,
3221 52, 52, 52, 52, 52, 3, 3, 3, 3, 53,
3222 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
3223 53, 53, 53, 53, 53, 53, 3, 3, 3, 3,
3224 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3225 3, 34, 3, 3, 3, 3, 3, 3, 3, 28,
3226 3, 3, 3, 3, 33, 3, 3, 3, 3, 3,
3227 3, 3, 3, 3, 31, 3, 3, 3, 3, 3,
3228 3, 3, 3, 3, 3, 3, 3, 3, 3, 74,
3229 3, 74, 3, 3, 3, 3, 3, 3, 3, 3,
3230 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3231 3, 3, 3, 3, 3, 3, 3, 28, 3, 3,
3232 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3233 3, 3, 3, 3, 21, 3, 0, 0, 0, 0,
3234 0, 0, 0, 0, 0, 0, 0, 0, 3, 3,
3235 3, 3, 3, 3, 3, 3, 3, 3, 3, 32,
3236 33, 34, 72, 73, 74, 75, 76, 77, 28, 60,
3237 61, 62, 63, 64, 65, 66, 67, 29, 130, 131,
3238 132, 94, 133, 134, 135, 136, 30, 137, 138, 139,
3239 95, 140, 141, 142, 143, 68, 144, 145, 146, 96,
3240 147, 148, 149, 150, 3, 3, 3, 3, 3, 3,
3241 3, 3, 3, 3, 3, 3, 18, 19, 32, 73,
3242 63, 94, 95, 96, 73, 28, 63, 29, 94, 30,
3243 95, 73, 28, 63, 29, 94, 30, 68, 96, 28,
3244 32, 32, 32, 33, 33, 33, 33, 73, 28, 28,
3245 28, 28, 28, 61, 63, 63, 63, 63, 29, 131,
3246 94, 94, 94, 94, 94, 30, 95, 73, 63, 19,
3247 19, 83, 20, 3, 3, 3, 3, 3, 3, 3,
3248 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3249 31, 18, 3, 3, 3, 3, 3, 3, 3, 3,
3250 3, 3, 3, 3, 3, 3, 3, 3, 3, 21,
3251 3, 3, 21, 32, 33, 34, 72, 73, 74, 75,
3252 76, 77, 28, 60, 61, 62, 63, 64, 65, 66,
3253 67, 29, 130, 131, 132, 94, 133, 134, 135, 136,
3254 3, 3, 3, 3, 32, 73, 28, 63, 3, 3,
3255 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3256 3, 67, 3, 3, 3, 3, 3, 3, 3, 3,
3257 136, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3258 3, 3, 21, 21, 21, 21, 21, 3, 3, 3,
3259 3, 3, 3, 32, 33, 28, 60, 29, 3, 3,
3260 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3261 3, 3, 3, 3, 3, 3, 32, 33, 34, 28,
3262 60, 29, 30, 68, 3, 3, 3, 3, 3, 3,
3263 3, 3, 3, 32, 33, 34, 72, 73, 28, 60,
3264 3, 3, 3, 3, 3, 3, 3, 32, 33, 34,
3265 72, 72, 73, 28, 60, 29, 3, 3, 3, 3,
3266 3, 3, 3, 3, 3, 3, 3, 32, 73, 28,
3267 60, 29, 3, 3, 3, 3, 3, 3, 32, 28,
3268 60, 29, 33, 34, 3, 3, 3, 3, 3, 3,
3269 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3270 151, 19, 3, 3, 32, 33, 34, 72, 73, 74,
3271 75, 76, 77, 28, 60, 61, 62, 63, 64, 65,
3272 3, 3, 29, 130, 131, 132, 94, 133, 134, 135,
3273 136, 30, 137, 138, 139, 95, 140, 141, 142, 143,
3274 68, 144, 145, 146, 96, 147, 148, 149, 150, 97,
3275 152, 153, 154, 155, 156, 157, 158, 159, 160, 87,
3276 18, 82, 161, 19, 162, 83, 20, 88, 3, 21,
3277 21, 21, 3, 21, 21, 3, 3, 3, 3, 3,
3278 21, 21, 21, 21, 3, 3, 3, 3, 3, 3,
3279 3, 3, 21, 21, 21, 3, 3, 3, 3, 21,
3280 17, 15, 16, 54, 28, 60, 29, 30, 19, 3,
3281 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3282 3, 3, 3, 3, 3, 3, 3, 3, 3, 32,
3283 63, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3284 3, 3, 3, 3, 3, 32, 28, 60, 3, 3,
3285 3, 3, 3, 21, 21, 3, 3, 3, 3, 32,
3286 73, 28, 60, 29, 3, 3, 3, 3, 3, 3,
3287 3, 3, 32, 33, 34, 72, 28, 60, 29, 30,
3288 3, 3, 3, 3, 3, 3, 3, 3, 3, 32,
3289 33, 34, 72, 28, 60, 29, 3, 3, 3, 3,
3290 3, 3, 3, 3, 3, 3, 32, 73, 28, 63,
3291 29, 30, 3, 3, 3, 3, 21, 21, 21, 21,
3292 3, 3, 3, 3, 3, 3, 3, 3, 17, 15,
3293 16, 54, 55, 56, 57, 58, 59, 28, 60, 61,
3294 62, 63, 64, 65, 66, 67, 29, 130, 131, 132,
3295 94, 133, 134, 135, 136, 19, 18, 82, 83, 3,
3296 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3297 3, 21, 21, 3, 3, 3, 3, 3, 3, 3,
3298 3, 3, 3, 3, 3, 3, 3, 3, 3, 32,
3299 33, 34, 72, 73, 28, 60, 61, 29, 19, 3,
3300 3, 3, 3, 3, 3, 3, 3, 3, 21, 32,
3301 28, 60, 29, 3, 3, 3, 3, 3, 3, 3,
3302 3, 3, 3, 3, 3, 3, 3, 3, 3, 32,
3303 33, 34, 72, 28, 60, 29, 3, 3, 3, 3,
3304 23, 21, 23, 3, 3, 3, 3, 3, 3, 3,
3305 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3306 3, 3, 3, 3, 21, 21, 21, 21, 21, 21,
3307 21, 21, 21, 21, 21, 21, 21, 21, 21, 3,
3308 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3309 17, 15, 16, 54, 55, 56, 57, 58, 59, 28,
3310 60, 61, 62, 63, 64, 65, 66, 67, 29, 30,
3311 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
3312 23, 23, 23, 21, 21, 21, 21, 23, 23, 21,
3313 21, 3, 3, 22, 3, 3, 3, 3, 3, 3,
3314 3, 3, 3, 3, 3, 3, 3, 3, 3, 22,
3315 3, 3, 21, 21, 21, 3, 3, 3, 3, 3,
3316 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3317 3, 3, 3, 3, 3, 21, 21, 21, 21, 21,
3318 23, 21, 21, 21, 21, 21, 21, 21, 21, 3,
3319 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
3320 3, 3, 3, 3, 3, 23, 23, 3, 3, 3,
3321 3, 3, 3, 3, 3, 3, 3, 3, 3, 21,
3322 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3323 3, 3, 3, 3, 3, 23, 23, 23, 21, 21,
3324 21, 21, 21, 21, 21, 21, 21, 23, 23, 3,
3325 22, 22, 3, 3, 3, 3, 3, 21, 21, 21,
3326 21, 3, 23, 21, 3, 32, 33, 34, 72, 73,
3327 74, 75, 76, 77, 28, 60, 61, 62, 63, 64,
3328 65, 66, 67, 29, 30, 3, 3, 3, 3, 3,
3329 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3330 3, 3, 3, 3, 3, 3, 3, 3, 23, 23,
3331 23, 21, 21, 21, 23, 23, 21, 23, 21, 21,
3332 3, 3, 3, 3, 3, 3, 21, 3, 23, 23,
3333 23, 21, 21, 21, 21, 21, 21, 21, 21, 3,
3334 3, 3, 3, 3, 21, 23, 23, 23, 23, 3,
3335 3, 23, 23, 3, 3, 23, 23, 23, 3, 3,
3336 3, 3, 23, 23, 3, 3, 21, 21, 21, 21,
3337 21, 21, 21, 3, 3, 3, 21, 21, 21, 21,
3338 21, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3339 3, 3, 3, 3, 3, 3, 3, 23, 23, 23,
3340 21, 21, 21, 21, 21, 21, 21, 21, 23, 23,
3341 21, 21, 21, 23, 21, 3, 3, 3, 3, 3,
3342 3, 3, 3, 3, 4, 5, 6, 7, 8, 9,
3343 10, 11, 12, 13, 3, 3, 3, 3, 21, 3,
3344 21, 23, 23, 21, 21, 21, 21, 21, 21, 23,
3345 21, 23, 23, 21, 23, 21, 21, 23, 21, 21,
3346 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3347 3, 3, 23, 23, 21, 21, 21, 21, 3, 3,
3348 23, 23, 23, 23, 21, 21, 23, 21, 3, 3,
3349 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3350 21, 21, 3, 3, 23, 23, 23, 21, 21, 21,
3351 21, 21, 21, 21, 21, 23, 23, 21, 23, 21,
3352 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3353 3, 21, 23, 21, 23, 23, 21, 21, 21, 21,
3354 21, 21, 23, 21, 3, 3, 3, 3, 3, 3,
3355 3, 3, 23, 23, 21, 21, 21, 21, 23, 21,
3356 21, 21, 21, 21, 3, 3, 3, 3, 4, 5,
3357 6, 7, 8, 9, 10, 11, 12, 13, 28, 60,
3358 3, 3, 3, 3, 21, 21, 21, 21, 21, 21,
3359 21, 21, 23, 21, 21, 3, 3, 3, 3, 3,
3360 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
3361 28, 60, 61, 62, 63, 64, 65, 66, 67, 3,
3362 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3363 3, 3, 21, 23, 23, 23, 23, 23, 3, 23,
3364 23, 3, 3, 21, 21, 23, 21, 22, 23, 22,
3365 23, 21, 3, 3, 3, 3, 3, 3, 3, 3,
3366 3, 3, 3, 3, 3, 23, 23, 23, 21, 21,
3367 21, 21, 3, 3, 21, 21, 23, 23, 23, 23,
3368 21, 3, 3, 3, 23, 3, 3, 3, 3, 3,
3369 3, 3, 3, 3, 3, 3, 3, 21, 21, 21,
3370 21, 21, 21, 21, 21, 21, 21, 3, 3, 3,
3371 3, 3, 3, 3, 3, 21, 21, 21, 21, 21,
3372 21, 23, 22, 21, 21, 21, 21, 3, 3, 21,
3373 21, 21, 21, 21, 21, 23, 23, 21, 21, 21,
3374 3, 3, 3, 3, 3, 3, 3, 3, 22, 22,
3375 22, 22, 22, 22, 21, 21, 21, 21, 21, 21,
3376 21, 21, 21, 21, 21, 21, 21, 23, 21, 21,
3377 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3378 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3379 3, 23, 21, 21, 21, 21, 21, 21, 21, 3,
3380 21, 21, 21, 21, 21, 21, 23, 21, 4, 5,
3381 6, 7, 8, 9, 10, 11, 12, 13, 32, 33,
3382 34, 72, 73, 74, 75, 76, 77, 28, 60, 61,
3383 62, 63, 64, 65, 66, 67, 29, 3, 3, 3,
3384 3, 3, 21, 21, 21, 21, 21, 21, 21, 21,
3385 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
3386 21, 21, 21, 21, 3, 23, 21, 21, 21, 21,
3387 21, 21, 21, 23, 21, 21, 23, 21, 21, 3,
3388 3, 3, 3, 3, 3, 3, 3, 3, 3, 21,
3389 21, 21, 21, 21, 21, 3, 3, 3, 21, 3,
3390 21, 21, 3, 21, 21, 21, 21, 21, 21, 21,
3391 22, 21, 3, 3, 3, 3, 3, 3, 3, 3,
3392 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3393 23, 23, 23, 23, 23, 3, 21, 21, 3, 23,
3394 23, 21, 23, 21, 3, 3, 3, 3, 3, 3,
3395 3, 3, 3, 3, 3, 21, 21, 23, 23, 3,
3396 3, 3, 3, 3, 3, 3, 3, 3, 163, 35,
3397 164, 165, 36, 166, 37, 167, 38, 24, 24, 39,
3398 25, 40, 26, 41, 18, 19, 19, 20, 163, 3,
3399 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3400 33, 34, 72, 73, 74, 75, 76, 77, 34, 72,
3401 73, 74, 75, 76, 77, 72, 73, 74, 75, 76,
3402 77, 32, 33, 34, 72, 73, 74, 75, 76, 77,
3403 32, 33, 34, 72, 73, 33, 34, 34, 72, 73,
3404 74, 75, 76, 77, 32, 33, 34, 34, 72, 73,
3405 168, 169, 32, 33, 34, 34, 72, 73, 34, 34,
3406 72, 72, 72, 72, 74, 75, 75, 75, 76, 76,
3407 77, 77, 77, 77, 33, 34, 72, 73, 74, 32,
3408 33, 34, 72, 72, 73, 73, 33, 34, 32, 33,
3409 82, 83, 88, 82, 83, 25, 18, 87, 18, 18,
3410 19, 82, 83, 62, 63, 72, 73, 74, 75, 76,
3411 77, 3, 0, 0, 0, 0, 0, 0, 0, 0,
3412 0, 3, 3, 3, 3, 3, 3, 3, 4, 5,
3413 6, 7, 8, 9, 10, 11, 12, 13, 3, 28,
3414 29, 68, 170, 171, 172, 173, 3, 3, 3, 3,
3415 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3416 31, 32, 33, 34, 72, 73, 74, 75, 76, 77,
3417 28, 92, 93, 98, 99, 100, 27, 69, 70, 71,
3418 32, 33, 34, 3, 3, 3, 3, 3, 3, 3,
3419 3, 3, 3, 23, 23, 23, 23, 23, 23, 23,
3420 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
3421 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
3422 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
3423 23, 23, 3, 3, 3, 3, 3, 3, 3, 21,
3424 3, 3, 3, 3, 21, 3, 3, 3, 3, 3,
3425 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3426 3, 3, 3, 3, 3, 3, 3, 3, 3, 21,
3427 21, 3, 0, 0, 0, 0, 3, 3, 3, 3,
3428 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3429 3, 3, 3, 21, 23, 21, 21, 21, 3, 3,
3430 3, 23, 21, 21, 21, 21, 21, 0, 0, 0,
3431 0, 0, 0, 0, 0, 21, 21, 21, 21, 21,
3432 21, 21, 21, 3, 3, 21, 21, 21, 21, 21,
3433 21, 21, 3, 3, 3, 3, 3, 3, 3, 3,
3434 3, 3, 3, 3, 3, 3, 21, 21, 21, 21,
3435 3, 3, 27, 69, 70, 71, 3, 3, 3, 3,
3436 3, 3, 3, 3, 3, 3, 3, 3, 66, 67,
3437 32, 33, 34, 72, 73, 32, 73, 3, 3, 3,
3438 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3439 3, 3, 3, 3, 3, 3, 3, 3, 4, 5,
3440 6, 7, 8, 9, 10, 11, 12, 13, 4, 5,
3441 6, 7, 8, 9, 10, 11, 12, 13, 4, 5,
3442 6, 7, 8, 9, 10, 11, 12, 13, 4, 5,
3443 6, 7, 8, 9, 10, 11, 12, 13, 4, 5,
3444 6, 7, 8, 9, 10, 11, 12, 13, 21, 21,
3445 21, 21, 21, 21, 21, 3, 3, 3, 3, 21,
3446 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
3447 21, 3, 21, 21, 21, 21, 21, 21, 21, 21,
3448 21, 21, 21, 21, 21, 21, 21, 21, 21, 3,
3449 3, 21, 21, 21, 21, 21, 21, 21, 3, 21,
3450 21, 3, 21, 21, 21, 21, 21, 3, 3, 3,
3451 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3452 3, 3, 3, 3, 21, 21, 21, 21, 3, 3,
3453 3, 3, 21, 21, 21, 21, 21, 21, 21, 3,
3454 3, 3, 3, 3, 65, 66, 67, 29, 130, 131,
3455 132, 94, 133, 134, 135, 136, 30, 137, 138, 139,
3456 95, 140, 141, 142, 143, 68, 144, 145, 146, 96,
3457 147, 148, 149, 150, 97, 152, 97, 174, 175, 32,
3458 33, 34, 72, 73, 74, 75, 76, 77, 3, 18,
3459 19, 20, 3, 32, 33, 68, 97, 3, 3, 3,
3460 3, 3, 3, 3, 3, 3, 3, 3, 95, 140,
3461 141, 142, 143, 68, 144, 145, 146, 96, 147, 148,
3462 149, 150, 3, 33, 34, 72, 73, 74, 75, 76,
3463 77, 28, 132, 133, 137, 68, 19, 87, 3, 3,
3464 79, 79, 17, 15, 16, 54, 55, 56, 57, 58,
3465 59, 31, 31, 14, 14, 14, 3, 3, 3, 3,
3466 3, 3, 3, 3, 3, 3, 3, 3, 14, 14,
3467 14, 14, 14, 14, 3, 3, 3, 3, 3, 3,
3468 3, 3, 3, 3, 3, 3, 14, 14, 3, 3,
3469 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3470 3, 3, 14, 3, 3, 14, 14, 14, 14, 14,
3471 14, 14, 14, 14, 14, 3, 3, 3, 3, 3,
3472 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3473 3, 3, 3, 14, 14, 14, 14, 14, 14, 14,
3474 14, 14, 176, 176, 176, 176, 176, 176, 176, 176,
3475 176, 176, 176, 176, 176, 176, 176, 176, 176, 176,
3476 176, 176, 176, 176, 176, 176, 176, 176, 3, 14,
3477 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
3478 14, 14, 14, 14, 3, 3, 3, 3, 3, 3,
3479 3, 3, 3, 3, 14, 3, 3, 3, 3, 3,
3480 3, 3, 14, 14, 14, 14, 14, 14, 14, 14,
3481 14, 3, 14, 14, 14, 14, 14, 14, 14, 14,
3482 14, 14, 14, 14, 14, 14, 14, 21, 21, 21,
3483 21, 21, 14, 14, 14, 14, 14, 14, 14, 14,
3484 14, 14, 14, 14, 14, 14, 3, 3, 3, 3,
3485 3, 3, 3, 3, 14, 14, 14, 14, 14, 14,
3486 14, 14, 14, 14, 3, 3, 3, 3, 14, 14,
3487 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
3488 3, 3, 3, 3, 3, 14, 14, 14, 14, 14,
3489 14, 14, 14, 14, 14, 14, 3, 3, 3, 3,
3490 3, 3, 3, 3, 14, 14, 14, 14, 14, 14,
3491 14, 14, 3, 3, 3, 3, 3, 3, 3, 3,
3492 3, 3, 14, 14, 14, 14, 14, 14, 3, 3,
3493 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3494 3, 3, 14, 14, 14, 14, 14, 14, 14, 14,
3495 14, 14, 14, 14, 14, 3, 14, 14, 14, 14,
3496 77, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3497 3, 3, 3, 3, 3, 3
3498 };
3499
3500 private static ReadOnlySpan<byte> DigitValues => new byte[177]
3501 {
3502 0, 0, 0, 0, 17, 34, 51, 68, 85, 102,
3503 119, 136, 153, 170, 0, 3, 4, 2, 0, 0,
3504 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3505 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3506 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3507 0, 0, 0, 0, 5, 6, 7, 8, 9, 10,
3508 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3509 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
3510 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3511 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3512 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3513 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3514 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3515 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3516 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3517 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3518 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3519 0, 0, 0, 0, 0, 0, 0
3520 };
3521
3522 private static ReadOnlySpan<byte> NumericValues => new byte[1416]
3523 {
3524 0, 0, 0, 0, 0, 0, 240, 191, 0, 0,
3525 0, 0, 0, 0, 240, 191, 0, 0, 0, 0,
3526 0, 0, 240, 191, 0, 0, 0, 0, 0, 0,
3527 240, 191, 0, 0, 0, 0, 0, 0, 0, 0,
3528 0, 0, 0, 0, 0, 0, 240, 63, 0, 0,
3529 0, 0, 0, 0, 0, 64, 0, 0, 0, 0,
3530 0, 0, 8, 64, 0, 0, 0, 0, 0, 0,
3531 16, 64, 0, 0, 0, 0, 0, 0, 20, 64,
3532 0, 0, 0, 0, 0, 0, 24, 64, 0, 0,
3533 0, 0, 0, 0, 28, 64, 0, 0, 0, 0,
3534 0, 0, 32, 64, 0, 0, 0, 0, 0, 0,
3535 34, 64, 0, 0, 0, 0, 0, 0, 240, 191,
3536 0, 0, 0, 0, 0, 0, 0, 64, 0, 0,
3537 0, 0, 0, 0, 8, 64, 0, 0, 0, 0,
3538 0, 0, 240, 63, 0, 0, 0, 0, 0, 0,
3539 208, 63, 0, 0, 0, 0, 0, 0, 224, 63,
3540 0, 0, 0, 0, 0, 0, 232, 63, 0, 0,
3541 0, 0, 0, 0, 240, 191, 0, 0, 0, 0,
3542 0, 0, 240, 191, 0, 0, 0, 0, 0, 0,
3543 240, 191, 0, 0, 0, 0, 0, 0, 176, 63,
3544 0, 0, 0, 0, 0, 0, 192, 63, 0, 0,
3545 0, 0, 0, 0, 200, 63, 0, 0, 0, 0,
3546 0, 0, 48, 64, 0, 0, 0, 0, 0, 0,
3547 36, 64, 0, 0, 0, 0, 0, 0, 89, 64,
3548 0, 0, 0, 0, 0, 64, 143, 64, 0, 0,
3549 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3550 0, 0, 240, 63, 0, 0, 0, 0, 0, 0,
3551 0, 64, 0, 0, 0, 0, 0, 0, 8, 64,
3552 154, 153, 153, 153, 153, 153, 121, 63, 154, 153,
3553 153, 153, 153, 153, 153, 63, 51, 51, 51, 51,
3554 51, 51, 163, 63, 154, 153, 153, 153, 153, 153,
3555 169, 63, 154, 153, 153, 153, 153, 153, 185, 63,
3556 51, 51, 51, 51, 51, 51, 195, 63, 154, 153,
3557 153, 153, 153, 153, 201, 63, 0, 0, 0, 0,
3558 0, 0, 248, 63, 0, 0, 0, 0, 0, 0,
3559 4, 64, 0, 0, 0, 0, 0, 0, 12, 64,
3560 0, 0, 0, 0, 0, 0, 18, 64, 0, 0,
3561 0, 0, 0, 0, 22, 64, 0, 0, 0, 0,
3562 0, 0, 26, 64, 0, 0, 0, 0, 0, 0,
3563 30, 64, 0, 0, 0, 0, 0, 0, 33, 64,
3564 0, 0, 0, 0, 0, 0, 224, 191, 0, 0,
3565 0, 0, 0, 0, 240, 191, 0, 0, 0, 0,
3566 0, 0, 240, 191, 0, 0, 0, 0, 0, 0,
3567 240, 191, 0, 0, 0, 0, 0, 0, 16, 64,
3568 0, 0, 0, 0, 0, 0, 20, 64, 0, 0,
3569 0, 0, 0, 0, 24, 64, 0, 0, 0, 0,
3570 0, 0, 28, 64, 0, 0, 0, 0, 0, 0,
3571 32, 64, 0, 0, 0, 0, 0, 0, 34, 64,
3572 0, 0, 0, 0, 0, 0, 52, 64, 0, 0,
3573 0, 0, 0, 0, 62, 64, 0, 0, 0, 0,
3574 0, 0, 68, 64, 0, 0, 0, 0, 0, 0,
3575 73, 64, 0, 0, 0, 0, 0, 0, 78, 64,
3576 0, 0, 0, 0, 0, 128, 81, 64, 0, 0,
3577 0, 0, 0, 0, 84, 64, 0, 0, 0, 0,
3578 0, 128, 86, 64, 0, 0, 0, 0, 0, 136,
3579 195, 64, 0, 0, 0, 0, 0, 0, 49, 64,
3580 0, 0, 0, 0, 0, 0, 50, 64, 0, 0,
3581 0, 0, 0, 0, 51, 64, 0, 0, 0, 0,
3582 0, 0, 16, 64, 0, 0, 0, 0, 0, 0,
3583 20, 64, 0, 0, 0, 0, 0, 0, 24, 64,
3584 0, 0, 0, 0, 0, 0, 28, 64, 0, 0,
3585 0, 0, 0, 0, 32, 64, 0, 0, 0, 0,
3586 0, 0, 34, 64, 0, 0, 0, 0, 0, 0,
3587 240, 191, 0, 0, 0, 0, 0, 0, 0, 0,
3588 146, 36, 73, 146, 36, 73, 194, 63, 28, 199,
3589 113, 28, 199, 113, 188, 63, 85, 85, 85, 85,
3590 85, 85, 213, 63, 85, 85, 85, 85, 85, 85,
3591 229, 63, 154, 153, 153, 153, 153, 153, 217, 63,
3592 51, 51, 51, 51, 51, 51, 227, 63, 154, 153,
3593 153, 153, 153, 153, 233, 63, 85, 85, 85, 85,
3594 85, 85, 197, 63, 171, 170, 170, 170, 170, 170,
3595 234, 63, 0, 0, 0, 0, 0, 0, 216, 63,
3596 0, 0, 0, 0, 0, 0, 228, 63, 0, 0,
3597 0, 0, 0, 0, 236, 63, 0, 0, 0, 0,
3598 0, 0, 38, 64, 0, 0, 0, 0, 0, 0,
3599 40, 64, 0, 0, 0, 0, 0, 64, 127, 64,
3600 0, 0, 0, 0, 0, 136, 179, 64, 0, 0,
3601 0, 0, 0, 106, 232, 64, 0, 0, 0, 0,
3602 0, 106, 248, 64, 0, 0, 0, 0, 0, 0,
3603 42, 64, 0, 0, 0, 0, 0, 0, 44, 64,
3604 0, 0, 0, 0, 0, 0, 46, 64, 0, 0,
3605 0, 0, 0, 0, 53, 64, 0, 0, 0, 0,
3606 0, 0, 54, 64, 0, 0, 0, 0, 0, 0,
3607 55, 64, 0, 0, 0, 0, 0, 0, 56, 64,
3608 0, 0, 0, 0, 0, 0, 57, 64, 0, 0,
3609 0, 0, 0, 0, 58, 64, 0, 0, 0, 0,
3610 0, 0, 59, 64, 0, 0, 0, 0, 0, 0,
3611 60, 64, 0, 0, 0, 0, 0, 0, 61, 64,
3612 0, 0, 0, 0, 0, 0, 63, 64, 0, 0,
3613 0, 0, 0, 0, 64, 64, 0, 0, 0, 0,
3614 0, 128, 64, 64, 0, 0, 0, 0, 0, 0,
3615 65, 64, 0, 0, 0, 0, 0, 128, 65, 64,
3616 0, 0, 0, 0, 0, 0, 66, 64, 0, 0,
3617 0, 0, 0, 128, 66, 64, 0, 0, 0, 0,
3618 0, 0, 67, 64, 0, 0, 0, 0, 0, 128,
3619 67, 64, 0, 0, 0, 0, 0, 128, 68, 64,
3620 0, 0, 0, 0, 0, 0, 69, 64, 0, 0,
3621 0, 0, 0, 128, 69, 64, 0, 0, 0, 0,
3622 0, 0, 70, 64, 0, 0, 0, 0, 0, 128,
3623 70, 64, 0, 0, 0, 0, 0, 0, 71, 64,
3624 0, 0, 0, 0, 0, 128, 71, 64, 0, 0,
3625 0, 0, 0, 0, 72, 64, 0, 0, 0, 0,
3626 0, 128, 72, 64, 0, 0, 0, 0, 0, 0,
3627 240, 191, 0, 0, 0, 0, 0, 0, 240, 191,
3628 0, 0, 0, 0, 0, 0, 105, 64, 0, 0,
3629 0, 0, 0, 192, 114, 64, 0, 0, 0, 0,
3630 0, 0, 121, 64, 0, 0, 0, 0, 0, 192,
3631 130, 64, 0, 0, 0, 0, 0, 224, 133, 64,
3632 0, 0, 0, 0, 0, 0, 137, 64, 0, 0,
3633 0, 0, 0, 32, 140, 64, 0, 0, 0, 0,
3634 0, 64, 159, 64, 0, 0, 0, 0, 0, 112,
3635 167, 64, 0, 0, 0, 0, 0, 64, 175, 64,
3636 0, 0, 0, 0, 0, 112, 183, 64, 0, 0,
3637 0, 0, 0, 88, 187, 64, 0, 0, 0, 0,
3638 0, 64, 191, 64, 0, 0, 0, 0, 0, 148,
3639 193, 64, 0, 0, 0, 0, 0, 136, 211, 64,
3640 0, 0, 0, 0, 0, 76, 221, 64, 0, 0,
3641 0, 0, 0, 136, 227, 64, 0, 0, 0, 0,
3642 0, 76, 237, 64, 0, 0, 0, 0, 0, 23,
3643 241, 64, 0, 0, 0, 0, 0, 136, 243, 64,
3644 0, 0, 0, 0, 0, 249, 245, 64, 85, 85,
3645 85, 85, 85, 85, 237, 63, 0, 0, 0, 0,
3646 0, 106, 8, 65, 0, 0, 0, 0, 128, 79,
3647 18, 65, 0, 0, 0, 0, 0, 106, 24, 65,
3648 0, 0, 0, 0, 128, 132, 30, 65, 0, 0,
3649 0, 0, 128, 79, 34, 65, 0, 0, 0, 0,
3650 192, 92, 37, 65, 0, 0, 0, 0, 0, 106,
3651 40, 65, 0, 0, 0, 0, 64, 119, 43, 65,
3652 85, 85, 85, 85, 85, 85, 181, 63, 171, 170,
3653 170, 170, 170, 170, 218, 63, 171, 170, 170, 170,
3654 170, 170, 226, 63, 154, 153, 153, 153, 153, 153,
3655 105, 63, 154, 153, 153, 153, 153, 153, 137, 63,
3656 0, 0, 0, 0, 0, 0, 144, 63, 0, 0,
3657 0, 0, 0, 0, 160, 63, 0, 0, 0, 0,
3658 0, 0, 168, 63, 0, 0, 0, 0, 0, 94,
3659 10, 65, 0, 0, 0, 0, 0, 94, 26, 65,
3660 0, 0, 0, 0, 128, 132, 46, 65, 0, 0,
3661 0, 0, 132, 215, 151, 65, 0, 0, 0, 32,
3662 95, 160, 2, 66, 0, 0, 0, 162, 148, 26,
3663 109, 66, 0, 0, 0, 0, 208, 18, 99, 65,
3664 0, 0, 0, 0, 208, 18, 115, 65, 0, 0,
3665 0, 0, 0, 0, 240, 191
3666 };
3667
3668 private static ReadOnlySpan<byte> GraphemeSegmentationValues => new byte[177]
3669 {
3670 3, 2, 1, 0, 0, 0, 0, 0, 0, 0,
3671 0, 0, 0, 0, 14, 0, 0, 0, 0, 0,
3672 0, 4, 7, 8, 0, 0, 0, 0, 0, 0,
3673 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3674 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3675 0, 9, 10, 11, 0, 0, 0, 0, 0, 0,
3676 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3677 0, 0, 0, 0, 0, 0, 0, 0, 5, 0,
3678 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3679 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3680 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3681 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3682 0, 0, 0, 0, 0, 0, 0, 0, 12, 13,
3683 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3684 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3685 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3686 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3687 0, 0, 0, 0, 0, 0, 6
3688 };
3689
3690 internal static StrongBidiCategory GetBidiCategory(string s, int index)
3691 {
3692 if (s == null)
3693 {
3695 }
3696 if ((uint)index >= (uint)s.Length)
3697 {
3699 }
3701 }
3702
3704 {
3705 int num = s[index];
3706 if (index < s.Length - 1)
3707 {
3708 int num2 = num - 55296;
3709 if ((uint)num2 <= 1023u)
3710 {
3711 int num3 = s[index + 1] - 56320;
3712 if ((uint)num3 <= 1023u)
3713 {
3714 num = (num2 << 10) + num3 + 65536;
3715 }
3716 }
3717 }
3718 return GetBidiCategoryNoBoundsChecks((uint)num);
3719 }
3720
3722 {
3723 nuint categoryCasingTableOffsetNoBoundsChecks = GetCategoryCasingTableOffsetNoBoundsChecks(codePoint);
3724 return (StrongBidiCategory)(Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(CategoriesValues), categoryCasingTableOffsetNoBoundsChecks) & 0x60);
3725 }
3726
3727 public static int GetDecimalDigitValue(char ch)
3728 {
3730 }
3731
3732 public static int GetDecimalDigitValue(string s, int index)
3733 {
3734 if (s == null)
3735 {
3737 }
3738 if ((uint)index >= (uint)s.Length)
3739 {
3741 }
3743 }
3744
3746 {
3747 nuint numericGraphemeTableOffsetNoBoundsChecks = GetNumericGraphemeTableOffsetNoBoundsChecks(codePoint);
3748 uint num = Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(DigitValues), numericGraphemeTableOffsetNoBoundsChecks);
3749 return (int)((num >> 4) - 1);
3750 }
3751
3752 public static int GetDigitValue(char ch)
3753 {
3755 }
3756
3757 public static int GetDigitValue(string s, int index)
3758 {
3759 if (s == null)
3760 {
3762 }
3763 if ((uint)index >= (uint)s.Length)
3764 {
3766 }
3768 }
3769
3771 {
3772 nuint numericGraphemeTableOffsetNoBoundsChecks = GetNumericGraphemeTableOffsetNoBoundsChecks(codePoint);
3773 int num = Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(DigitValues), numericGraphemeTableOffsetNoBoundsChecks);
3774 return (num & 0xF) - 1;
3775 }
3776
3778 {
3779 nuint numericGraphemeTableOffsetNoBoundsChecks = GetNumericGraphemeTableOffsetNoBoundsChecks((uint)rune.Value);
3780 return (GraphemeClusterBreakType)Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(GraphemeSegmentationValues), numericGraphemeTableOffsetNoBoundsChecks);
3781 }
3782
3783 internal static bool GetIsWhiteSpace(char ch)
3784 {
3785 nuint categoryCasingTableOffsetNoBoundsChecks = GetCategoryCasingTableOffsetNoBoundsChecks(ch);
3786 return (sbyte)Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(CategoriesValues), categoryCasingTableOffsetNoBoundsChecks) < 0;
3787 }
3788
3789 public static double GetNumericValue(char ch)
3790 {
3792 }
3793
3794 internal static double GetNumericValue(int codePoint)
3795 {
3797 {
3799 }
3801 }
3802
3803 public static double GetNumericValue(string s, int index)
3804 {
3805 if (s == null)
3806 {
3808 }
3809 if ((uint)index >= (uint)s.Length)
3810 {
3812 }
3814 }
3815
3816 [MethodImpl(MethodImplOptions.AggressiveInlining)]
3817 internal static double GetNumericValueInternal(string s, int index)
3818 {
3820 }
3821
3822 private static double GetNumericValueNoBoundsCheck(uint codePoint)
3823 {
3824 nuint numericGraphemeTableOffsetNoBoundsChecks = GetNumericGraphemeTableOffsetNoBoundsChecks(codePoint);
3825 ref byte source = ref Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(NumericValues), numericGraphemeTableOffsetNoBoundsChecks * 8);
3827 return Unsafe.ReadUnaligned<double>(ref source);
3828 }
3829
3830 [MethodImpl(MethodImplOptions.AggressiveInlining)]
3831 internal static char ToUpper(char codePoint)
3832 {
3833 nuint categoryCasingTableOffsetNoBoundsChecks = GetCategoryCasingTableOffsetNoBoundsChecks(codePoint);
3834 ref short reference = ref Unsafe.Add(ref Unsafe.As<byte, short>(ref MemoryMarshal.GetReference(UppercaseValues)), (nint)categoryCasingTableOffsetNoBoundsChecks);
3836 {
3837 }
3838 int num = reference;
3839 return (char)(num + codePoint);
3840 }
3841
3842 [MethodImpl(MethodImplOptions.AggressiveInlining)]
3843 internal static uint ToUpper(uint codePoint)
3844 {
3846 {
3848 }
3849 nuint categoryCasingTableOffsetNoBoundsChecks = GetCategoryCasingTableOffsetNoBoundsChecks(codePoint);
3850 ref short reference = ref Unsafe.Add(ref Unsafe.As<byte, short>(ref MemoryMarshal.GetReference(UppercaseValues)), (nint)categoryCasingTableOffsetNoBoundsChecks);
3852 {
3853 }
3854 int num = reference;
3855 return (uint)num + codePoint;
3856 }
3857
3858 [MethodImpl(MethodImplOptions.AggressiveInlining)]
3859 internal static char ToLower(char codePoint)
3860 {
3861 nuint categoryCasingTableOffsetNoBoundsChecks = GetCategoryCasingTableOffsetNoBoundsChecks(codePoint);
3862 ref short reference = ref Unsafe.Add(ref Unsafe.As<byte, short>(ref MemoryMarshal.GetReference(LowercaseValues)), (nint)categoryCasingTableOffsetNoBoundsChecks);
3864 {
3865 }
3866 int num = reference;
3867 return (char)(num + codePoint);
3868 }
3869
3870 [MethodImpl(MethodImplOptions.AggressiveInlining)]
3871 internal static uint ToLower(uint codePoint)
3872 {
3874 {
3876 }
3877 nuint categoryCasingTableOffsetNoBoundsChecks = GetCategoryCasingTableOffsetNoBoundsChecks(codePoint);
3878 ref short reference = ref Unsafe.Add(ref Unsafe.As<byte, short>(ref MemoryMarshal.GetReference(LowercaseValues)), (nint)categoryCasingTableOffsetNoBoundsChecks);
3880 {
3881 }
3882 int num = reference;
3883 return (uint)num + codePoint;
3884 }
3885
3887 {
3889 }
3890
3899
3900 public static UnicodeCategory GetUnicodeCategory(string s, int index)
3901 {
3902 if (s == null)
3903 {
3905 }
3906 if ((uint)index >= (uint)s.Length)
3907 {
3909 }
3911 }
3912
3917
3918 internal static UnicodeCategory GetUnicodeCategoryInternal(string str, int index, out int charLength)
3919 {
3920 uint codePointFromString = (uint)GetCodePointFromString(str, index);
3921 charLength = ((codePointFromString < 65536) ? 1 : 2);
3922 return GetUnicodeCategoryNoBoundsChecks(codePointFromString);
3923 }
3924
3926 {
3927 nuint categoryCasingTableOffsetNoBoundsChecks = GetCategoryCasingTableOffsetNoBoundsChecks(codePoint);
3928 return (UnicodeCategory)(Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(CategoriesValues), categoryCasingTableOffsetNoBoundsChecks) & 0x1F);
3929 }
3930
3931 private static int GetCodePointFromString(string s, int index)
3932 {
3933 int num = 0;
3934 if ((uint)index < (uint)s.Length)
3935 {
3936 num = s[index];
3937 int num2 = num - 55296;
3938 if ((uint)num2 <= 1023u)
3939 {
3940 index++;
3941 if ((uint)index < (uint)s.Length)
3942 {
3943 int num3 = s[index] - 56320;
3944 if ((uint)num3 <= 1023u)
3945 {
3946 num = (num2 << 10) + num3 + 65536;
3947 }
3948 }
3949 }
3950 }
3951 return num;
3952 }
3953
3955 {
3956 uint num = Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(CategoryCasingLevel1Index), codePoint >> 9);
3957 ref byte source = ref Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(CategoryCasingLevel2Index), (num << 6) + ((codePoint >> 3) & 0x3E));
3959 num = Unsafe.ReadUnaligned<ushort>(ref source);
3960 return Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(CategoryCasingLevel3Index), (num << 4) + (codePoint & 0xF));
3961 }
3962
3964 {
3965 uint num = Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(NumericGraphemeLevel1Index), codePoint >> 9);
3966 ref byte source = ref Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(NumericGraphemeLevel2Index), (num << 6) + ((codePoint >> 3) & 0x3E));
3968 num = Unsafe.ReadUnaligned<ushort>(ref source);
3969 return Unsafe.AddByteOffset(ref MemoryMarshal.GetReference(NumericGraphemeLevel3Index), (num << 4) + (codePoint & 0xF));
3970 }
3971}
static readonly bool IsLittleEndian
static UnicodeCategory GetUnicodeCategory(char ch)
static int GetDecimalDigitValueInternalNoBoundsCheck(uint codePoint)
static char ToLower(char codePoint)
static ReadOnlySpan< byte > UppercaseValues
static double GetNumericValueNoBoundsCheck(uint codePoint)
static GraphemeClusterBreakType GetGraphemeClusterBreakType(Rune rune)
static uint ToLower(uint codePoint)
static UnicodeCategory GetUnicodeCategoryNoBoundsChecks(uint codePoint)
static int GetCodePointFromString(string s, int index)
static StrongBidiCategory GetBidiCategoryNoBoundsChecks(uint codePoint)
static StrongBidiCategory GetBidiCategory(string s, int index)
static ReadOnlySpan< byte > CategoryCasingLevel1Index
static StrongBidiCategory GetBidiCategory(StringBuilder s, int index)
static UnicodeCategory GetUnicodeCategory(int codePoint)
static ReadOnlySpan< byte > CategoriesValues
static double GetNumericValue(string s, int index)
static ReadOnlySpan< byte > NumericGraphemeLevel3Index
static double GetNumericValue(int codePoint)
static nuint GetCategoryCasingTableOffsetNoBoundsChecks(uint codePoint)
static ReadOnlySpan< byte > DigitValues
static UnicodeCategory GetUnicodeCategoryInternal(string str, int index, out int charLength)
static UnicodeCategory GetUnicodeCategoryInternal(string value, int index)
static int GetDecimalDigitValue(string s, int index)
static uint ToUpper(uint codePoint)
static ReadOnlySpan< byte > CategoryCasingLevel2Index
static int GetDigitValue(string s, int index)
static int GetDigitValueInternalNoBoundsCheck(uint codePoint)
static ReadOnlySpan< byte > NumericGraphemeLevel1Index
static ReadOnlySpan< byte > NumericValues
static nuint GetNumericGraphemeTableOffsetNoBoundsChecks(uint codePoint)
static ReadOnlySpan< byte > CategoryCasingLevel3Index
static UnicodeCategory GetUnicodeCategory(string s, int index)
static ReadOnlySpan< byte > NumericGraphemeLevel2Index
static ReadOnlySpan< byte > GraphemeSegmentationValues
static double GetNumericValueInternal(string s, int index)
static ReadOnlySpan< byte > LowercaseValues
static char ToUpper(char codePoint)
static bool IsValidCodePoint(uint codePoint)
static void ThrowArgumentOutOfRangeException(System.ExceptionArgument argument)
static void ThrowArgumentNullException(string name)