Coverage Report

Created: 2026-09-28 06:51

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/moddable/xs/sources/xsString.c
Line
Count
Source
1
/*
2
 * Copyright (c) 2016-2026  Moddable Tech, Inc.
3
 *
4
 *   This file is part of the Moddable SDK Runtime.
5
 * 
6
 *   The Moddable SDK Runtime is free software: you can redistribute it and/or modify
7
 *   it under the terms of the GNU Lesser General Public License as published by
8
 *   the Free Software Foundation, either version 3 of the License, or
9
 *   (at your option) any later version.
10
 * 
11
 *   The Moddable SDK Runtime is distributed in the hope that it will be useful,
12
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 *   GNU Lesser General Public License for more details.
15
 * 
16
 *   You should have received a copy of the GNU Lesser General Public License
17
 *   along with the Moddable SDK Runtime.  If not, see <http://www.gnu.org/licenses/>.
18
 *
19
 * This file incorporates work covered by the following copyright and  
20
 * permission notice:  
21
 *
22
 *       Copyright (C) 2010-2016 Marvell International Ltd.
23
 *       Copyright (C) 2002-2010 Kinoma, Inc.
24
 *
25
 *       Licensed under the Apache License, Version 2.0 (the "License");
26
 *       you may not use this file except in compliance with the License.
27
 *       You may obtain a copy of the License at
28
 *
29
 *        http://www.apache.org/licenses/LICENSE-2.0
30
 *
31
 *       Unless required by applicable law or agreed to in writing, software
32
 *       distributed under the License is distributed on an "AS IS" BASIS,
33
 *       WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
34
 *       See the License for the specific language governing permissions and
35
 *       limitations under the License.
36
 */
37
38
#include "xsAll.h"
39
40
#if mxStringInfoCacheLength
41
42
typedef struct sxStringInfo txStringInfo;
43
typedef struct sxStringInfoCache txStringInfoCache;
44
45
struct sxStringInfo {
46
  txString string;
47
  txSize unicodeLength;
48
  txSize utf8Length;
49
  txSize unicodeOffset;
50
  txSize utf8Offset;
51
  txBoolean ascii;
52
};
53
54
struct sxStringInfoCache {
55
  txInteger count;
56
  txInteger head;
57
  txInteger tail;
58
  txStringInfo infos[1];
59
};
60
61
static txStringInfo* fxCacheStringInfo(txMachine* the, txString string);
62
63
void fxAllocateStringInfoCache(txMachine* the)
64
6.58k
{
65
6.58k
  txStringInfoCache* cache = c_malloc(sizeof(txStringInfoCache) + ((mxStringInfoCacheLength - 1) * sizeof(txStringInfo)));
66
6.58k
  if (cache == C_NULL)
67
0
    fxAbort(the, XS_NOT_ENOUGH_MEMORY_EXIT);
68
6.58k
  cache->count = mxStringInfoCacheLength;
69
6.58k
  cache->head = 0;
70
6.58k
  cache->tail = 0;
71
6.58k
  the->stringInfoCache = cache;
72
6.58k
}
73
74
void fxFreeStringInfoCache(txMachine* the)
75
6.58k
{
76
6.58k
  txStringInfoCache* cache = the->stringInfoCache;
77
6.58k
  if (cache)
78
6.58k
    c_free(cache);  
79
6.58k
}
80
81
void fxInvalidateStringInfoCache(txMachine* the)
82
4.39k
{
83
4.39k
  txStringInfoCache* cache = the->stringInfoCache;
84
4.39k
  if (cache) {
85
4.39k
    cache->head = 0;
86
4.39k
    cache->tail = 0;
87
4.39k
  }
88
4.39k
}
89
90
txStringInfo* fxCacheStringInfo(txMachine* the, txString string)
91
0
{
92
0
  txStringInfoCache* cache = the->stringInfoCache;
93
0
  txStringInfo* info = C_NULL;
94
0
  if (cache) {
95
0
    txInteger count = cache->count;
96
0
    txInteger head = cache->head;
97
0
    txInteger tail = cache->tail;
98
0
    txInteger i;
99
0
    i = head - 1;
100
0
    info = cache->infos + i;
101
0
    while (i >= 0) {
102
0
      if (info->string == string)
103
0
        return info;
104
0
      i--;
105
0
      info--;
106
0
    }
107
0
    i = tail - 1;
108
0
    info = cache->infos + i;
109
0
    while (i >= head) {
110
0
      if (info->string == string)
111
0
        return info;
112
0
      i--;
113
0
      info--;
114
0
    }
115
0
    if (tail < count)
116
0
      tail++;
117
0
    info = cache->infos + head;
118
0
    head++;
119
0
    if (head == count)
120
0
      head = 0;
121
0
    cache->head = head; 
122
0
    cache->tail = tail; 
123
0
    info->string = string;
124
0
    info->unicodeLength = fxUnicodeLength(string, &info->utf8Length);
125
0
    info->unicodeOffset = 0;
126
0
    info->utf8Offset = 0;
127
0
    info->ascii = (info->unicodeLength == info->utf8Length) ? 1 : 0;
128
0
  }
129
0
  return info;
130
0
}
131
132
txSize fxCacheUTF8Length(txMachine* the, txString string)
133
0
{
134
0
  txStringInfo* info = fxCacheStringInfo(the, string);
135
0
  if (info) 
136
0
    return info->utf8Length;
137
0
  return (txSize)c_strlen(string);
138
0
}
139
140
txSize fxCacheUTF8ToUnicodeOffset(txMachine* the, txString string, txSize offset)
141
0
{
142
0
  txStringInfo* info;
143
0
  if (offset <= 0)
144
0
    return offset ? -1 : 0; 
145
0
  info = fxCacheStringInfo(the, string);
146
0
  if (info) {
147
0
    txSize delta, sign, unicodeOffset, utf8Offset;
148
0
    txU1* p;
149
0
    if (/* (offset < 0) || */ (info->utf8Length < offset))
150
0
      return -1;
151
0
    if ((info->ascii) /* || (offset == 0) */)
152
0
      return offset;
153
0
    if (offset == info->utf8Length)
154
0
      return info->unicodeLength;
155
0
    delta = offset - info->utf8Offset;
156
0
    if (delta == 0)
157
0
      return info->unicodeOffset;
158
0
    if (delta > 0) {
159
0
      if (delta < info->utf8Length - offset) {
160
0
        sign = 1;
161
0
        unicodeOffset = info->unicodeOffset + 1;
162
0
        utf8Offset = info->utf8Offset + 1;
163
0
      }
164
0
      else {
165
0
        sign = -1;
166
0
        unicodeOffset = info->unicodeLength - 1;
167
0
        utf8Offset = info->utf8Length - 1;
168
0
      }
169
0
    }
170
0
    else {
171
0
      if (0 - delta < offset) {
172
0
        sign = -1;
173
0
        unicodeOffset = info->unicodeOffset - 1;
174
0
        utf8Offset = info->utf8Offset - 1;
175
0
      }
176
0
      else {
177
0
        sign = 1;
178
0
        unicodeOffset = 1;
179
0
        utf8Offset = 1;
180
0
      }
181
0
    }
182
0
    p = (txU1*)string + utf8Offset;
183
0
    for (;;) {
184
0
      if ((*p & 0xC0) != 0x80) {
185
0
        if (utf8Offset == offset)
186
0
          break;
187
0
        unicodeOffset += sign;
188
0
      }
189
0
      p += sign;
190
0
      utf8Offset += sign;
191
0
    }
192
0
    info->utf8Offset = utf8Offset;
193
0
    info->unicodeOffset = unicodeOffset;
194
0
    return unicodeOffset;
195
0
  }
196
0
  return fxUTF8ToUnicodeOffset(string, offset);
197
0
}
198
199
txSize fxCacheUnicodeLength(txMachine* the, txString string)
200
0
{
201
0
  txStringInfo* info = fxCacheStringInfo(the, string);
202
0
  if (info) 
203
0
    return info->unicodeLength;
204
0
  return fxUnicodeLength(string, C_NULL);
205
0
}
206
207
txSize fxCacheUnicodeToUTF8Offset(txMachine* the, txString string, txSize offset)
208
0
{
209
0
  txStringInfo* info;
210
0
  if (offset <= 0)
211
0
    return offset ? -1 : 0; 
212
0
  info = fxCacheStringInfo(the, string);
213
0
  if (info) {
214
0
    txSize delta, sign, unicodeOffset, utf8Offset;
215
0
    txU1* p;
216
0
    if ((offset < 0) || (info->unicodeLength < offset))
217
0
      return -1;
218
0
    if ((info->ascii) || (offset == 0))
219
0
      return offset;
220
0
    if (offset == info->unicodeLength)
221
0
      return info->utf8Length;
222
0
    delta = offset - info->unicodeOffset;
223
0
    if (delta == 0)
224
0
      return info->utf8Offset;
225
0
    if (delta > 0) {
226
0
      if (delta < info->unicodeLength - offset) {
227
0
        sign = 1;
228
0
        unicodeOffset = info->unicodeOffset + 1;
229
0
        utf8Offset = info->utf8Offset + 1;
230
0
      }
231
0
      else {
232
0
        sign = -1;
233
0
        unicodeOffset = info->unicodeLength - 1;
234
0
        utf8Offset = info->utf8Length - 1;
235
0
      }
236
0
    }
237
0
    else {
238
0
      if (0 - delta < offset) {
239
0
        sign = -1;
240
0
        unicodeOffset = info->unicodeOffset - 1;
241
0
        utf8Offset = info->utf8Offset - 1;
242
0
      }
243
0
      else {
244
0
        sign = 1;
245
0
        unicodeOffset = 1;
246
0
        utf8Offset = 1;
247
0
      }
248
0
    }
249
0
    p = (txU1*)string + utf8Offset;
250
0
    for (;;) {
251
0
      if ((*p & 0xC0) != 0x80) {
252
0
        if (unicodeOffset == offset)
253
0
          break;
254
0
        unicodeOffset += sign;
255
0
      }
256
0
      p += sign;
257
0
      utf8Offset += sign;
258
0
    }
259
0
    info->utf8Offset = utf8Offset;
260
0
    info->unicodeOffset = unicodeOffset;
261
0
    return utf8Offset;
262
0
  }
263
0
  return fxUnicodeToUTF8Offset(string, offset);
264
0
}
265
#endif
266
267
0
#define mxStringInstanceLength(INSTANCE) ((txIndex)fxUnicodeLength(instance->next->value.string, C_NULL))
268
0
#define mxCacheStringInstanceLength(INSTANCE) ((txIndex)fxCacheUnicodeLength(the, instance->next->value.string))
269
270
static txString fx_String_prototype_includes_aux(txMachine* the, txString string, txSize stringLength, txString searchString, txSize searchLength);
271
static txInteger fx_String_prototype_indexOf_aux(txMachine* the, txString theString, txInteger theLength, txInteger theOffset, txString theSubString, txInteger theSubLength, txInteger* theOffsets);
272
static void fx_String_prototype_replaceAux(txMachine* the, txInteger size, txInteger offset, txSlot* function, txSlot* match, txInteger matchLength, txSlot* replace);
273
static txSlot* fx_String_prototype_split_aux(txMachine* the, txSlot* theString, txSlot* theArray, txSlot* theItem, txInteger theStart, txInteger theStop);
274
275
static txSlot* fxCheckString(txMachine* the, txSlot* it);
276
static txString fxCoerceToString(txMachine* the, txSlot* theSlot);
277
static txInteger fxArgToPosition(txMachine* the, txInteger i, txInteger index, txInteger length);
278
static void fx_String_prototype_pad(txMachine* the, txBoolean flag);
279
static void fx_String_prototype_trimAux(txMachine* the, txBoolean trimStart, txBoolean trimEnd);
280
static txBoolean fx_String_prototype_withRegexp(txMachine* the, txID id, txBoolean global, txInteger count);
281
static void fx_String_prototype_withoutRegexp(txMachine* the, txID id, txBoolean global, txInteger count);
282
283
static txBoolean fxStringDeleteProperty(txMachine* the, txSlot* instance, txID id, txIndex index);
284
static txBoolean fxStringDefineOwnProperty(txMachine* the, txSlot* instance, txID id, txIndex index, txSlot* slot, txFlag mask);
285
static txBoolean fxStringGetOwnProperty(txMachine* the, txSlot* instance, txID id, txIndex index, txSlot* slot);
286
static txSlot* fxStringGetProperty(txMachine* the, txSlot* instance, txID id, txIndex index, txFlag flag);
287
static txBoolean fxStringHasProperty(txMachine* the, txSlot* instance, txID id, txIndex index);
288
static void fxStringOwnKeys(txMachine* the, txSlot* instance, txFlag flag, txSlot* keys);
289
static txSlot* fxStringSetProperty(txMachine* the, txSlot* instance, txID id, txIndex index, txFlag flag);
290
291
#ifdef mxStringNormalize
292
static void fxNormalizeString(txMachine* the, txSlot* string, txFlag form);
293
#endif
294
295
const txBehavior ICACHE_FLASH_ATTR gxStringBehavior = {
296
  fxStringGetProperty,
297
  fxStringSetProperty,
298
  fxOrdinaryCall,
299
  fxOrdinaryConstruct,
300
  fxStringDefineOwnProperty,
301
  fxStringDeleteProperty,
302
  fxStringGetOwnProperty,
303
  fxOrdinaryGetPropertyValue,
304
  fxOrdinaryGetPrototype,
305
  fxStringHasProperty,
306
  fxOrdinaryIsExtensible,
307
  fxStringOwnKeys,
308
  fxOrdinaryPreventExtensions,
309
  fxOrdinarySetPropertyValue,
310
  fxOrdinarySetPrototype,
311
};
312
313
void fxBuildString(txMachine* the)
314
6.58k
{
315
6.58k
  txSlot* instance;
316
6.58k
  txSlot* property;
317
6.58k
  txSlot* slot;
318
  
319
6.58k
  mxPush(mxObjectPrototype);
320
6.58k
  instance = fxNewStringInstance(the);
321
  
322
6.58k
  fxNewHostFunction(the, mxCallback(fxStringAccessorGetter), 0, XS_NO_ID, XS_NO_ID);
323
6.58k
  property = mxFunctionInstanceHome(the->stack->value.reference);
324
6.58k
  property->value.home.object = instance;
325
6.58k
  fxNewHostFunction(the, mxCallback(fxStringAccessorSetter), 1, XS_NO_ID, XS_NO_ID);
326
6.58k
  property = mxFunctionInstanceHome(the->stack->value.reference);
327
6.58k
  property->value.home.object = instance;
328
6.58k
  mxPushUndefined();
329
6.58k
  the->stack->flag = XS_DONT_DELETE_FLAG;
330
6.58k
  the->stack->kind = XS_ACCESSOR_KIND;
331
6.58k
  the->stack->value.accessor.getter = (the->stack + 2)->value.reference;
332
6.58k
  the->stack->value.accessor.setter = (the->stack + 1)->value.reference;
333
6.58k
  mxPull(mxStringAccessor);
334
6.58k
  mxPop();
335
6.58k
  mxPop();
336
  
337
6.58k
  slot = fxLastProperty(the, instance);
338
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_at), 1, mxID(_at), XS_DONT_ENUM_FLAG);
339
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_charAt), 1, mxID(_charAt), XS_DONT_ENUM_FLAG);
340
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_charCodeAt), 1, mxID(_charCodeAt), XS_DONT_ENUM_FLAG);
341
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_codePointAt), 1, mxID(_codePointAt), XS_DONT_ENUM_FLAG);
342
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_compare), 1, mxID(_compare), XS_DONT_ENUM_FLAG);
343
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_concat), 1, mxID(_concat), XS_DONT_ENUM_FLAG);
344
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_endsWith), 1, mxID(_endsWith), XS_DONT_ENUM_FLAG);
345
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_includes), 1, mxID(_includes), XS_DONT_ENUM_FLAG);
346
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_indexOf), 1, mxID(_indexOf), XS_DONT_ENUM_FLAG);
347
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_lastIndexOf), 1, mxID(_lastIndexOf), XS_DONT_ENUM_FLAG);
348
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_localeCompare), 1, mxID(_localeCompare), XS_DONT_ENUM_FLAG);
349
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_normalize), 0, mxID(_normalize), XS_DONT_ENUM_FLAG);
350
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_padEnd), 1, mxID(_padEnd), XS_DONT_ENUM_FLAG);
351
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_padStart), 1, mxID(_padStart), XS_DONT_ENUM_FLAG);
352
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_repeat), 1, mxID(_repeat), XS_DONT_ENUM_FLAG);
353
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_replace), 2, mxID(_replace), XS_DONT_ENUM_FLAG);
354
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_replaceAll), 2, mxID(_replaceAll), XS_DONT_ENUM_FLAG);
355
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_slice), 2, mxID(_slice), XS_DONT_ENUM_FLAG);
356
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_split), 2, mxID(_split), XS_DONT_ENUM_FLAG);
357
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_startsWith), 1, mxID(_startsWith), XS_DONT_ENUM_FLAG);
358
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_substr), 2, mxID(_substr), XS_DONT_ENUM_FLAG);
359
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_substring), 2, mxID(_substring), XS_DONT_ENUM_FLAG);
360
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_toLowerCase), 0, mxID(_toLocaleLowerCase), XS_DONT_ENUM_FLAG);
361
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_toUpperCase), 0, mxID(_toLocaleUpperCase), XS_DONT_ENUM_FLAG);
362
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_toLowerCase), 0, mxID(_toLowerCase), XS_DONT_ENUM_FLAG);
363
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_valueOf), 0, mxID(_toString), XS_DONT_ENUM_FLAG);
364
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_toUpperCase), 0, mxID(_toUpperCase), XS_DONT_ENUM_FLAG);
365
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_trim), 0, mxID(_trim), XS_DONT_ENUM_FLAG);
366
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_trimEnd), 0, mxID(_trimEnd), XS_DONT_ENUM_FLAG);
367
6.58k
  slot = fxNextSlotProperty(the, slot, slot, mxID(_trimRight), XS_DONT_ENUM_FLAG);
368
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_trimStart), 0, mxID(_trimStart), XS_DONT_ENUM_FLAG);
369
6.58k
  slot = fxNextSlotProperty(the, slot, slot, mxID(_trimLeft), XS_DONT_ENUM_FLAG);
370
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_valueOf), 0, mxID(_valueOf), XS_DONT_ENUM_FLAG);
371
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_iterator), 0, mxID(_Symbol_iterator), XS_DONT_ENUM_FLAG);
372
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_match), 1, mxID(_match), XS_DONT_ENUM_FLAG);
373
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_matchAll), 1, mxID(_matchAll), XS_DONT_ENUM_FLAG);
374
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_search), 1, mxID(_search), XS_DONT_ENUM_FLAG);
375
6.58k
#if mxECMAScript2024
376
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_isWellFormed), 0, mxID(_isWellFormed), XS_DONT_ENUM_FLAG);
377
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_toWellFormed), 0, mxID(_toWellFormed), XS_DONT_ENUM_FLAG);
378
6.58k
#endif
379
6.58k
  mxStringPrototype = *the->stack;
380
6.58k
  slot = fxBuildHostConstructor(the, mxCallback(fx_String), 1, mxID(_String));
381
6.58k
  mxStringConstructor = *the->stack;
382
6.58k
  slot = fxLastProperty(the, slot);
383
#ifndef mxCESU8
384
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_fromArrayBuffer), 1, mxID(_fromArrayBuffer), XS_DONT_ENUM_FLAG);
385
#endif
386
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_fromCharCode), 1, mxID(_fromCharCode), XS_DONT_ENUM_FLAG);
387
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_fromCodePoint), 1, mxID(_fromCodePoint), XS_DONT_ENUM_FLAG);
388
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_raw), 1, mxID(_raw), XS_DONT_ENUM_FLAG);
389
6.58k
  mxPop();
390
391
6.58k
  mxPush(mxIteratorPrototype);
392
6.58k
  slot = fxLastProperty(the, fxNewObjectInstance(the));
393
6.58k
  slot = fxNextHostFunctionProperty(the, slot, mxCallback(fx_String_prototype_iterator_next), 0, mxID(_next), XS_NO_FLAG);
394
6.58k
  slot = fxNextStringXProperty(the, slot, "String Iterator", mxID(_Symbol_toStringTag), XS_DONT_ENUM_FLAG | XS_DONT_SET_FLAG);
395
6.58k
  mxPull(mxStringIteratorPrototype);
396
6.58k
}
397
398
txSlot* fxNewStringInstance(txMachine* the)
399
6.58k
{
400
6.58k
  txSlot* instance;
401
6.58k
  instance = fxNewObjectInstance(the);
402
6.58k
  instance->flag |= XS_EXOTIC_FLAG;
403
6.58k
  fxNextSlotProperty(the, instance, &mxEmptyString, XS_STRING_BEHAVIOR, XS_INTERNAL_FLAG);
404
6.58k
  return instance;
405
6.58k
}
406
407
void fxStringAccessorGetter(txMachine* the)
408
0
{
409
0
  txSlot* string = C_NULL;
410
0
  txID id = the->scratch.value.at.id;
411
0
  txIndex index = the->scratch.value.at.index;
412
0
  if ((mxThis->kind == XS_STRING_KIND) || (mxThis->kind == XS_STRING_X_KIND))
413
0
    string = mxThis;
414
0
  else {
415
0
    txSlot* instance = fxToInstance(the, mxThis);
416
0
    while (instance) {
417
0
      if ((instance->flag & XS_EXOTIC_FLAG) && (instance->next->ID == XS_STRING_BEHAVIOR)) {
418
0
        string = instance->next;
419
0
        break;
420
0
      }
421
0
      instance = fxGetPrototype(the, instance);
422
0
    }
423
0
  }
424
0
  if (string) {
425
0
    if (id == mxID(_length)) {
426
0
      mxResult->value.integer = fxCacheUnicodeLength(the, string->value.string);
427
0
      mxResult->kind = XS_INTEGER_KIND;
428
0
    }
429
0
    else {
430
0
      txInteger from = fxCacheUnicodeToUTF8Offset(the, string->value.string, index);
431
0
      if (from >= 0) {
432
0
        txInteger to = fxUnicodeToUTF8Offset(string->value.string + from, 1);
433
0
        if (to >= 0) {
434
0
          to += from;
435
0
          mxResult->value.string = fxNewChunk(the, to - from + 1);
436
0
          c_memcpy(mxResult->value.string, string->value.string + from, to - from);
437
0
          mxResult->value.string[to - from] = 0;
438
0
          mxResult->kind = XS_STRING_KIND;
439
0
        }
440
0
      }
441
0
    }
442
0
  }
443
0
}
444
445
void fxStringAccessorSetter(txMachine* the)
446
0
{
447
0
}
448
449
txBoolean fxStringDefineOwnProperty(txMachine* the, txSlot* instance, txID id, txIndex index, txSlot* slot, txFlag mask)
450
0
{
451
0
  if (id == mxID(_length)) {
452
0
    if ((mask & XS_DONT_DELETE_FLAG) && !(slot->flag & XS_DONT_DELETE_FLAG))
453
0
      return 0;
454
0
    if ((mask & XS_DONT_ENUM_FLAG) && !(slot->flag & XS_DONT_ENUM_FLAG))
455
0
      return 0;
456
0
    if ((mask & XS_DONT_SET_FLAG) && !(slot->flag & XS_DONT_SET_FLAG))
457
0
      return 0;
458
0
    if (slot->kind != XS_UNINITIALIZED_KIND)
459
0
      return 0;
460
0
    return 1;
461
0
  }
462
0
  if (!id && (mxStringInstanceLength(instance) > index)) {
463
0
    if ((mask & XS_DONT_DELETE_FLAG) && !(slot->flag & XS_DONT_DELETE_FLAG))
464
0
      return 0;
465
0
    if ((mask & XS_DONT_ENUM_FLAG) && (slot->flag & XS_DONT_ENUM_FLAG))
466
0
      return 0;
467
0
    if ((mask & XS_DONT_SET_FLAG) && !(slot->flag & XS_DONT_SET_FLAG))
468
0
      return 0;
469
0
    if (slot->kind != XS_UNINITIALIZED_KIND)
470
0
      return 0;
471
0
    return 1;
472
0
  }
473
0
  return fxOrdinaryDefineOwnProperty(the, instance, id, index, slot, mask);
474
0
}
475
476
txBoolean fxStringDeleteProperty(txMachine* the, txSlot* instance, txID id, txIndex index)
477
0
{
478
0
  if ((id == mxID(_length)) || (!id && (mxStringInstanceLength(instance) > index)))
479
0
    return 0;
480
0
  return fxOrdinaryDeleteProperty(the, instance, id, index);
481
0
}
482
483
txBoolean fxStringGetOwnProperty(txMachine* the, txSlot* instance, txID id, txIndex index, txSlot* descriptor)
484
0
{
485
0
  if (id == mxID(_length)) {
486
0
    descriptor->flag = XS_DONT_DELETE_FLAG | XS_DONT_ENUM_FLAG | XS_DONT_SET_FLAG;
487
0
    descriptor->ID = id;
488
0
    descriptor->kind = XS_INTEGER_KIND;
489
0
    descriptor->value.integer = mxStringInstanceLength(instance);
490
0
    return 1;
491
0
  }
492
0
  if (!id && (mxCacheStringInstanceLength(instance) > index)) {
493
0
    txSlot* string = instance->next;
494
0
    txInteger from = fxCacheUnicodeToUTF8Offset(the, string->value.key.string, index);
495
0
    txInteger length = fxUnicodeToUTF8Offset(string->value.key.string + from, 1);
496
0
    descriptor->value.string = fxNewChunk(the, length + 1);
497
0
    c_memcpy(descriptor->value.string, string->value.key.string + from, length);
498
0
    descriptor->value.string[length] = 0;
499
0
    descriptor->kind = XS_STRING_KIND;
500
0
    descriptor->flag = XS_DONT_DELETE_FLAG | XS_DONT_SET_FLAG;
501
0
    return 1;
502
0
  }
503
0
  return fxOrdinaryGetOwnProperty(the, instance, id, index, descriptor);
504
0
}
505
506
txSlot* fxStringGetProperty(txMachine* the, txSlot* instance, txID id, txIndex index, txFlag flag)
507
0
{
508
0
  if ((id == mxID(_length)) || (!id && (mxCacheStringInstanceLength(instance) > index))) {
509
0
    the->scratch.value.at.id = id;
510
0
    the->scratch.value.at.index = index;
511
0
    return &mxStringAccessor;
512
0
  }
513
0
  return fxOrdinaryGetProperty(the, instance, id, index, flag);
514
0
}
515
516
txBoolean fxStringHasProperty(txMachine* the, txSlot* instance, txID id, txIndex index)
517
0
{
518
0
  if ((id == mxID(_length)) || (!id && (mxCacheStringInstanceLength(instance) > index)))
519
0
    return 1;
520
0
  return fxOrdinaryHasProperty(the, instance, id, index);
521
0
}
522
523
void fxStringOwnKeys(txMachine* the, txSlot* instance, txFlag flag, txSlot* keys)
524
0
{
525
0
  txSlot* property = instance->next;
526
0
  if (flag & XS_EACH_NAME_FLAG) {
527
0
    txIndex length = mxStringInstanceLength(instance), index;
528
0
    for (index = 0; index < length; index++)
529
0
      keys = fxQueueKey(the, 0, index, keys);
530
0
  }
531
0
  property = property->next;
532
0
  if (property && (property->kind == XS_ARRAY_KIND)) {
533
0
    keys = fxQueueIndexKeys(the, property, flag, keys);
534
0
    property = property->next;
535
0
  }
536
0
  if (flag & XS_EACH_NAME_FLAG)
537
0
    keys = fxQueueKey(the, mxID(_length), 0, keys);
538
0
  fxQueueIDKeys(the, property, flag, keys);
539
0
}
540
541
txSlot* fxStringSetProperty(txMachine* the, txSlot* instance, txID id, txIndex index, txFlag flag)
542
6.58k
{
543
6.58k
  if ((id == mxID(_length)) || (!id && (mxStringInstanceLength(instance) > index)))
544
0
    return C_NULL;
545
6.58k
  return fxOrdinarySetProperty(the, instance, id, index, flag);
546
6.58k
}
547
548
void fx_String(txMachine* the)
549
0
{
550
0
  txSlot* slot;
551
0
  txSlot* instance;
552
0
  if (mxArgc > 0) {
553
0
    slot = mxArgv(0);
554
0
    if (!mxHasTarget && (slot->kind == XS_SYMBOL_KIND)) {
555
0
      fxSymbolToString(the, slot);
556
0
      *mxResult = *slot;
557
0
      return;
558
0
    }
559
0
    fxToString(the, slot);
560
0
  }
561
0
  else {
562
0
    slot = &mxEmptyString;
563
0
  }
564
0
  if (!mxHasTarget) {
565
0
    *mxResult = *slot;
566
0
    return;
567
0
  }
568
0
  mxPushSlot(mxTarget);
569
0
  fxGetPrototypeFromConstructor(the, &mxStringPrototype);
570
0
  instance = fxNewStringInstance(the);
571
0
  instance->next->kind = slot->kind; // @@
572
0
  instance->next->value.key.string = slot->value.string;
573
0
  mxPullSlot(mxResult);
574
0
}
575
576
#ifndef mxCESU8
577
void fx_String_fromArrayBuffer(txMachine* the)
578
{
579
  txSlot* slot;
580
  txSlot* arrayBuffer = C_NULL, *sharedArrayBuffer = C_NULL;
581
  txSlot* bufferInfo;
582
  txInteger limit, offset;
583
  txInteger inLength, outLength = 0, nulls = 0;
584
  unsigned char *in;
585
  txString string;
586
  if (mxArgc < 1)
587
    mxTypeError("no argument");
588
  slot = mxArgv(0);
589
  if (slot->kind == XS_REFERENCE_KIND) {
590
    slot = slot->value.reference->next;
591
    if (slot) {
592
      bufferInfo = slot->next;
593
      if (slot->kind == XS_ARRAY_BUFFER_KIND)
594
        arrayBuffer = slot;
595
      else if (slot->kind == XS_HOST_KIND) {
596
        if (!(slot->flag & XS_HOST_CHUNK_FLAG) && bufferInfo && (bufferInfo->kind == XS_BUFFER_INFO_KIND))
597
          sharedArrayBuffer = slot;
598
      }
599
    }
600
  }
601
  if (!arrayBuffer && !sharedArrayBuffer)
602
    mxTypeError("argument: not an ArrayBuffer instance");
603
  limit = bufferInfo->value.bufferInfo.length;
604
  offset = fxArgToByteLength(the, 1, 0);
605
  if (limit < offset)
606
    mxRangeError("invalid byteOffset %ld", offset);
607
  inLength = fxArgToByteLength(the, 2, limit - offset);
608
  if ((limit < (offset + inLength)) || ((offset + inLength) < offset))
609
    mxRangeError("invalid byteLength %ld", inLength);
610
611
  in = offset + (unsigned char *)(arrayBuffer ? arrayBuffer->value.arrayBuffer.address : sharedArrayBuffer->value.host.data);
612
  while (inLength > 0) {
613
    unsigned char first = c_read8(in++), clen;
614
    if (first < 0x80){
615
      if (0 == first)
616
        nulls += 1;
617
      inLength -= 1;
618
      outLength += 1;
619
      continue;
620
    }
621
622
    if (0xC0 == (first & 0xE0))
623
      clen = 2;
624
    else if (0xE0 == (first & 0xF0))
625
      clen = 3;
626
    else if (0xF0 == (first & 0xF0))
627
      clen = 4;
628
    else
629
      goto badUTF8;
630
631
    inLength -= clen;
632
    if (inLength < 0)
633
      goto badUTF8;
634
635
    outLength += clen;
636
    clen -= 1;
637
    do {
638
      if (0x80 != (0xc0 & c_read8(in++)))
639
        goto badUTF8;
640
    } while (--clen > 0);
641
  }
642
643
  string = fxNewChunk(the, outLength + nulls + 1);
644
  if (!nulls)
645
    c_memcpy(string, offset + (txString)(arrayBuffer ? arrayBuffer->value.arrayBuffer.address : sharedArrayBuffer->value.host.data), outLength);
646
  else {
647
    txString c = string, end = c + outLength + nulls;
648
    txString buf = offset + (txString)(arrayBuffer ? arrayBuffer->value.arrayBuffer.address : sharedArrayBuffer->value.host.data);
649
    while (c < end) {
650
      txByte b = c_read8(buf++);
651
      if (b)
652
        *c++ = b;
653
      else {
654
        *c++ = 0xC0;
655
        *c++ = 0x80;
656
      }
657
    }
658
  }
659
  string[outLength + nulls] = 0;
660
  mxResult->value.string = string;
661
  mxResult->kind = XS_STRING_KIND;
662
663
  return;
664
665
badUTF8:
666
  mxTypeError("invalid UTF-8");
667
}
668
#endif
669
670
void fx_String_fromCharCode(txMachine* the)
671
0
{
672
0
  txInteger length = 0;
673
0
  txInteger count = mxArgc;
674
0
  txInteger index = 0;
675
0
  txInteger c; 
676
0
  txString p;
677
0
  while (index < count) {
678
0
    txSlot *slot = mxArgv(index);
679
0
    if (XS_INTEGER_KIND != slot->kind) {
680
0
      txNumber number = fxToNumber(the, slot);
681
0
      switch (c_fpclassify(number)) {
682
0
      case C_FP_INFINITE:
683
0
      case C_FP_NAN:
684
0
      case C_FP_ZERO:
685
0
        slot->value.integer = 0;
686
0
        break;
687
0
      default:
688
0
        #define MODULO 65536.0
689
0
        number = c_fmod(c_trunc(number), MODULO);
690
0
        if (number < 0)
691
0
          number += MODULO;
692
0
        slot->value.integer = (txInteger)number;
693
0
        break;
694
0
      }
695
0
      slot->kind = XS_INTEGER_KIND;
696
0
    }
697
0
    else {
698
0
      txInteger integer = slot->value.integer % 65536;
699
0
      if (integer < 0)
700
0
        integer += 65536;
701
0
      slot->value.integer = integer;
702
0
    }
703
0
    index++;
704
0
  }
705
0
  index = 0;
706
0
  while (index < count) {
707
0
    c = mxArgv(index)->value.integer;
708
0
    index++;
709
0
    if (index < count) {
710
0
      txInteger d = mxArgv(index)->value.integer;
711
0
      if ((0x0000D800 <= c) && (c <= 0x0000DBFF) && (0x0000DC00 <= d) && (d <= 0x0000DFFF)) {
712
0
        c = 0x00010000 + ((c & 0x000003FF) << 10) + (d & 0x000003FF);
713
0
        index++;
714
0
      }
715
0
    } 
716
0
    length += mxStringByteLength(c);
717
0
  }   
718
0
  mxMeterSome(count);
719
0
  mxResult->value.string = (txString)fxNewChunk(the, length + 1);
720
0
  mxResult->kind = XS_STRING_KIND;
721
0
  p = mxResult->value.string;
722
0
  index = 0;
723
0
  while (index < count) {
724
0
    c = mxArgv(index)->value.integer;
725
0
    index++;
726
0
    if (index < count) {
727
0
      txInteger d = mxArgv(index)->value.integer;
728
0
      if ((0x0000D800 <= c) && (c <= 0x0000DBFF) && (0x0000DC00 <= d) && (d <= 0x0000DFFF)) {
729
0
        c = 0x00010000 + ((c & 0x000003FF) << 10) + (d & 0x000003FF);
730
0
        index++;
731
0
      }
732
0
    } 
733
0
    p = mxStringByteEncode(p, c);
734
0
  } 
735
0
  *p = 0;
736
0
}
737
738
void fx_String_fromCodePoint(txMachine* the)
739
0
{
740
0
  txInteger length = 0;
741
0
  txInteger count = mxArgc;
742
0
  txInteger index = 0;
743
0
  txInteger character; 
744
0
  txString p;
745
0
  while (index < count) {
746
0
    txNumber number = fxToNumber(the, mxArgv(index));
747
0
    txNumber check = c_trunc(number);
748
0
    if (number != check)
749
0
      mxRangeError("invalid code point %lf", number);
750
0
    if ((number < 0) || (0x10FFFF < number))
751
0
      mxRangeError("invalid code point %lf", number);
752
0
    mxArgv(index)->value.integer = (txInteger)number;
753
0
    mxArgv(index)->kind = XS_INTEGER_KIND;
754
0
    index++;
755
0
  }
756
0
  index = 0;
757
0
  while (index < count) {
758
0
    character = mxArgv(index)->value.integer;
759
0
    length += mxStringByteLength(character);
760
0
    index++;
761
0
  }
762
0
  mxMeterSome(count);
763
0
  mxResult->value.string = (txString)fxNewChunk(the, length + 1);
764
0
  mxResult->kind = XS_STRING_KIND;
765
0
  p = mxResult->value.string;
766
0
  index = 0;
767
0
  while (index < count) {
768
0
    character = mxArgv(index)->value.integer;
769
0
    p = mxStringByteEncode(p, character);
770
0
    index++;
771
0
  } 
772
0
  *p = 0;
773
0
}
774
775
void fx_String_raw(txMachine* the)
776
0
{
777
0
  txInteger argCount = mxArgc;
778
0
  txSlot* raw;
779
0
  txNumber rawCount;
780
0
  if (argCount > 0)
781
0
    fxToInstance(the, mxArgv(0));
782
0
  else
783
0
    mxTypeError("cannot coerce undefined to object");
784
0
  mxPushSlot(mxArgv(0));
785
0
  mxGetID(mxID(_raw));
786
0
  raw = the->stack;
787
0
  mxPushSlot(raw);
788
0
  mxGetID(mxID(_length));
789
0
  rawCount = fxToLength(the, the->stack);
790
0
  mxPop();
791
0
  if (rawCount <= 0) {
792
0
    mxResult->value = mxEmptyString.value;
793
0
    mxResult->kind = mxEmptyString.kind;
794
0
  }
795
0
  else {
796
0
    txSlot* list;
797
0
    txInteger index = 0;
798
0
    txSlot* item;
799
0
    txInteger size;
800
0
    list = item = fxNewInstance(the);
801
0
    mxPushSlot(list);
802
0
    for (;;) {
803
0
      mxPushSlot(raw);
804
0
      mxGetIndex(index);
805
0
      fxToString(the, the->stack);
806
0
      item = item->next = fxNewSlot(the);
807
0
      mxPullSlot(item);
808
0
      index++;
809
0
      if (index == rawCount)
810
0
        break;
811
0
      if (index < argCount) {
812
0
        mxPushSlot(mxArgv(index));
813
0
        fxToString(the, the->stack);
814
0
      }
815
0
      else
816
0
        mxPush(mxEmptyString);
817
0
      item = item->next = fxNewSlot(the);
818
0
      mxPullSlot(item);
819
0
    }
820
0
    size = 0;
821
0
    item = list->next;
822
0
    while (item) {
823
0
      item->value.key.sum = mxStringLength(item->value.string);
824
0
      size = fxAddChunkSizes(the, size, item->value.key.sum);
825
0
      item = item->next;
826
0
    }
827
0
    size++;
828
0
    mxResult->value.string = (txString)fxNewChunk(the, size);
829
0
    size = 0;
830
0
    item = list->next;
831
0
    while (item) {
832
0
      c_memcpy(mxResult->value.string + size, item->value.string, item->value.key.sum);
833
0
      size += item->value.key.sum;
834
0
      item = item->next;
835
0
    }
836
0
    mxResult->value.string[size] = 0;
837
0
    mxPop();
838
0
    mxResult->kind = XS_STRING_KIND;
839
0
  }
840
0
  mxPop();
841
0
}
842
843
void fx_String_prototype_at(txMachine* the)
844
0
{
845
0
  txNumber index;
846
847
0
  fxCoerceToString(the, mxThis);
848
0
  index = (mxArgc > 0) ? c_trunc(fxToNumber(the, mxArgv(0))) : C_NAN;
849
0
  if (c_isnan(index) || (index == 0))
850
0
    index = 0;
851
0
  else if (index < 0) {
852
0
    index += fxCacheUnicodeLength(the, mxThis->value.string);
853
0
    if (index < 0)
854
0
      return;
855
0
  }
856
0
  txInteger from = fxCacheUnicodeToUTF8Offset(the, mxThis->value.string, (txSize)index);
857
0
  if (from >= 0) {
858
0
    txInteger to = fxUnicodeToUTF8Offset(mxThis->value.string + from, 1);
859
0
    if (to >= 0) {
860
0
      to += from;
861
0
      mxResult->value.string = fxNewChunk(the, to - from + 1);
862
0
      c_memcpy(mxResult->value.string, mxThis->value.string + from, to - from);
863
0
      mxResult->value.string[to - from] = 0;
864
0
      mxResult->kind = XS_STRING_KIND;
865
0
    }
866
0
  }
867
0
}
868
869
void fx_String_prototype_charAt(txMachine* the)
870
0
{
871
0
  txInteger anOffset;
872
0
  txInteger aLength;
873
  
874
0
  fxCoerceToString(the, mxThis);
875
0
  if ((mxArgc > 0) && (mxArgv(0)->kind != XS_UNDEFINED_KIND)) {
876
0
    anOffset = fxToInteger(the, mxArgv(0));
877
0
    if (anOffset < 0) goto fail;
878
0
  }
879
0
  else
880
0
    anOffset = 0;
881
882
0
  anOffset = fxCacheUnicodeToUTF8Offset(the, mxThis->value.string, anOffset);
883
0
  if (anOffset < 0) goto fail;
884
885
0
  aLength = fxUnicodeToUTF8Offset(mxThis->value.string + anOffset, 1);
886
0
  if (aLength < 0) goto fail;
887
888
0
  mxResult->value.string = (txString)fxNewChunk(the, aLength + 1);
889
0
  c_memcpy(mxResult->value.string, mxThis->value.string + anOffset, aLength);
890
0
  mxResult->value.string[aLength] = 0;
891
0
  mxResult->kind = XS_STRING_KIND;
892
0
  return;
893
894
0
fail:
895
0
  mxResult->value.string = mxEmptyString.value.string;
896
0
  mxResult->kind = mxEmptyString.kind;
897
0
}
898
899
void fx_String_prototype_charCodeAt(txMachine* the)
900
0
{
901
0
  txInteger anOffset;
902
903
0
  fxCoerceToString(the, mxThis);
904
0
  if ((mxArgc > 0) && (mxArgv(0)->kind != XS_UNDEFINED_KIND)) {
905
0
    anOffset = fxToInteger(the, mxArgv(0));
906
0
    if (anOffset < 0) goto fail;
907
0
  }
908
0
  else
909
0
    anOffset = 0;
910
911
0
  anOffset = fxCacheUnicodeToUTF8Offset(the, mxThis->value.string, anOffset);
912
0
  if (anOffset < 0) goto fail;
913
914
0
  if (fxUnicodeToUTF8Offset(mxThis->value.string + anOffset, 1) < 0)
915
0
    goto fail;
916
917
0
  fxUTF8Decode(mxThis->value.string + anOffset, &mxResult->value.integer);
918
0
  mxResult->kind = XS_INTEGER_KIND;
919
0
  return;
920
921
0
fail:
922
0
  mxResult->value.number = C_NAN;
923
0
  mxResult->kind = XS_NUMBER_KIND;
924
0
}
925
926
void fx_String_prototype_compare(txMachine* the)
927
0
{
928
0
  fxReport(the, "# Use standard String.prototype.localeCompare instead of soon obsolete String.prototype.compare\n");
929
0
  fx_String_prototype_localeCompare(the);
930
0
}
931
932
void fx_String_prototype_codePointAt(txMachine* the)
933
0
{
934
0
  txString string = fxCoerceToString(the, mxThis);
935
0
  txInteger length = fxCacheUnicodeLength(the, string);
936
0
  txNumber at = (mxArgc > 0) ? fxToNumber(the, mxArgv(0)) : 0;
937
0
  if (c_isnan(at))
938
0
    at = 0;
939
0
  if ((0 <= at) && (at < (txNumber)length)) {
940
0
    txInteger offset = fxCacheUnicodeToUTF8Offset(the, mxThis->value.string, (txInteger)at);
941
0
    length = fxUnicodeToUTF8Offset(mxThis->value.string + offset, 1);
942
0
    if ((offset >= 0) && (length > 0)) {
943
0
      mxStringByteDecode(mxThis->value.string + offset, &mxResult->value.integer);
944
0
      mxResult->kind = XS_INTEGER_KIND;
945
0
    }
946
0
  }
947
0
}
948
949
void fx_String_prototype_concat(txMachine* the)
950
0
{
951
0
  txInteger aCount;
952
0
  txInteger aLength;
953
0
  txInteger anIndex;
954
  
955
0
  fxCoerceToString(the, mxThis);
956
0
  aCount = mxArgc;
957
0
  aLength = mxStringLength(mxThis->value.string);
958
0
  for (anIndex = 0; anIndex < aCount; anIndex++)
959
0
    aLength = fxAddChunkSizes(the, aLength, mxStringLength(fxToString(the, mxArgv(anIndex))));
960
0
  mxResult->value.string = (txString)fxNewChunk(the, fxAddChunkSizes(the, aLength, 1));
961
0
  mxResult->kind = XS_STRING_KIND;
962
0
  c_strcpy(mxResult->value.string, mxThis->value.string);
963
0
  for (anIndex = 0; anIndex < aCount; anIndex++)
964
0
    c_strcat(mxResult->value.string, mxArgv(anIndex)->value.string);
965
0
  mxMeterSome(aCount);
966
0
}
967
968
void fx_String_prototype_endsWith(txMachine* the)
969
0
{
970
0
  txString string = fxCoerceToString(the, mxThis);
971
0
  txInteger length = fxCacheUnicodeLength(the, string);
972
0
  txString searchString;
973
0
  txInteger searchLength;
974
0
  txInteger offset;
975
0
  mxResult->kind = XS_BOOLEAN_KIND;
976
0
  mxResult->value.boolean = 0;
977
0
  if (mxArgc < 1)
978
0
    return;
979
0
  if (fxIsRegExp(the, mxArgv(0)))
980
0
    mxTypeError("future editions");
981
0
  searchString = fxToString(the, mxArgv(0));
982
0
  offset = fxArgToPosition(the, 1, length, length);
983
0
  string = mxThis->value.string;
984
0
  searchString = mxArgv(0)->value.string;
985
0
  searchLength = mxStringLength(searchString);
986
0
  offset = fxCacheUnicodeToUTF8Offset(the, string, offset);
987
0
  if (offset < searchLength)
988
0
    return;
989
0
  mxMeterSome(fxUnicodeLength(searchString, C_NULL));
990
0
  if (!c_strncmp(string + offset - searchLength, searchString, searchLength))
991
0
    mxResult->value.boolean = 1;
992
0
}
993
994
void fx_String_prototype_includes(txMachine* the)
995
0
{
996
0
  txString string = fxCoerceToString(the, mxThis);
997
0
  txInteger length = fxCacheUnicodeLength(the, string);
998
0
  txString searchString;
999
0
  txInteger searchLength;
1000
0
  txInteger offset;
1001
0
  mxResult->kind = XS_BOOLEAN_KIND;
1002
0
  mxResult->value.boolean = 0;
1003
0
  if (mxArgc < 1)
1004
0
    return;
1005
0
  if (fxIsRegExp(the, mxArgv(0)))
1006
0
    mxTypeError("future editions");
1007
0
  searchString = fxToString(the, mxArgv(0));
1008
0
  offset = fxArgToPosition(the, 1, 0, length);
1009
0
  string = mxThis->value.string;
1010
0
  length = fxCacheUTF8Length(the, string);
1011
0
  searchString = mxArgv(0)->value.string;
1012
0
  searchLength = mxStringLength(searchString);
1013
0
  offset = fxCacheUnicodeToUTF8Offset(the, string, offset);
1014
0
  if (fx_String_prototype_includes_aux(the, string + offset, length - offset, searchString, searchLength))
1015
0
    mxResult->value.boolean = 1;
1016
0
}
1017
1018
txString fx_String_prototype_includes_aux(txMachine* the, txString string, txSize stringLength, txString searchString, txSize searchLength)
1019
0
{
1020
0
  if (stringLength >= searchLength) {
1021
0
    txString result = string;
1022
0
    txString limit = string + stringLength - searchLength;
1023
0
    while (result <= limit) {
1024
0
      txU1 c;
1025
0
      txU1* p = (txU1*)result;
1026
0
      txU1* q = (txU1*)searchString;
1027
0
      while ((c = c_read8(q)) && (c_read8(p) == c)) {
1028
0
        mxMeterSome(((c & 0xC0) != 0x80) ? 1 : 0);
1029
0
        p++;
1030
0
        q++;
1031
0
      }
1032
0
      if (c)
1033
0
        result++;
1034
0
      else
1035
0
        return result;
1036
0
      mxCheckMetering();
1037
0
    }
1038
0
  }
1039
0
  return C_NULL;
1040
0
}
1041
1042
void fx_String_prototype_indexOf(txMachine* the)
1043
0
{
1044
0
  txString aString;
1045
0
  txString aSubString;
1046
0
  txInteger aLength;
1047
0
  txInteger aSubLength;
1048
0
  txInteger anOffset;
1049
0
  txNumber aNumber;
1050
0
  txInteger aLimit;
1051
  
1052
0
  aString = fxCoerceToString(the, mxThis);
1053
0
  if (mxArgc < 1) {
1054
0
    mxResult->value.integer = -1;
1055
0
    mxResult->kind = XS_INTEGER_KIND;
1056
0
    return;
1057
0
  }
1058
0
  aSubString = fxToString(the, mxArgv(0));
1059
0
  aString = mxThis->value.string;
1060
0
  aLength = fxCacheUnicodeLength(the, aString);
1061
0
  aSubLength = fxUnicodeLength(aSubString, C_NULL);
1062
0
  anOffset = 0;
1063
0
  if ((mxArgc > 1) && (mxArgv(1)->kind != XS_UNDEFINED_KIND)) {
1064
0
    aNumber = fxToNumber(the, mxArgv(1));
1065
0
    anOffset = (c_isnan(aNumber)) ? 0 : (aNumber < 0) ? 0 : (aNumber > aLength) ? aLength : (txInteger)c_floor(aNumber);
1066
1067
0
    aString = mxThis->value.string;
1068
0
    aSubString = mxArgv(0)->value.string;
1069
0
  }
1070
0
  if (anOffset + aSubLength <= aLength) {
1071
0
    anOffset = fxCacheUnicodeToUTF8Offset(the, aString, anOffset);
1072
0
    aLimit = fxCacheUTF8Length(the, aString) - mxStringLength(aSubString);
1073
0
    while (anOffset <= aLimit) {
1074
0
      txU1 c;
1075
0
      txU1* p = (txU1*)aString + anOffset;
1076
0
      txU1* q = (txU1*)aSubString;
1077
0
      while ((c = c_read8(q)) && (c_read8(p) == c)) {
1078
0
        mxMeterSome(((c & 0xC0) != 0x80) ? 1 : 0);
1079
0
        p++;
1080
0
        q++;
1081
0
      }
1082
0
      if (c)
1083
0
        anOffset++;
1084
0
      else
1085
0
        break;
1086
0
      mxCheckMetering();
1087
0
    }
1088
0
    if (anOffset <= aLimit)
1089
0
      anOffset = fxCacheUTF8ToUnicodeOffset(the, aString, anOffset);
1090
0
    else
1091
0
      anOffset = -1;
1092
0
  }
1093
0
  else
1094
0
    anOffset = -1;
1095
0
  mxResult->value.integer = anOffset;
1096
0
  mxResult->kind = XS_INTEGER_KIND;
1097
0
}
1098
1099
static txInteger fx_String_prototype_indexOf_aux(txMachine* the, txString theString, 
1100
    txInteger theLength, txInteger theOffset,
1101
    txString theSubString, txInteger theSubLength, txInteger* theOffsets)
1102
0
{
1103
0
  theOffsets[0] = theOffset;
1104
0
  theOffsets[1] = theOffset + theSubLength;
1105
0
  while (theOffsets[1] <= theLength) {
1106
0
    txU1 c;
1107
0
    txU1* p = (txU1*)theString + theOffsets[0];
1108
0
    txU1* q = (txU1*)theSubString;
1109
0
    while ((c = c_read8(q)) && (c_read8(p) == c)) {
1110
0
      mxMeterSome(((c & 0xC0) != 0x80) ? 1 : 0);
1111
0
      p++;
1112
0
      q++;
1113
0
    }
1114
0
    if (c) {
1115
0
      theOffsets[0]++;
1116
0
      theOffsets[1]++;
1117
0
    }
1118
0
    else
1119
0
      return 1;
1120
0
  }
1121
0
  return 0;
1122
0
}
1123
1124
void fx_String_prototype_isWellFormed(txMachine* the)
1125
0
{
1126
0
  txString p = fxCoerceToString(the, mxThis);
1127
0
  mxResult->kind = XS_BOOLEAN_KIND;
1128
0
  mxResult->value.boolean = 1;
1129
0
  while (c_read8(p)) {
1130
0
    txInteger c;
1131
0
    p = mxStringByteDecode(p, &c);
1132
0
    if ((0x0000D800 <= c) && (c <= 0x0000DFFF)) {
1133
0
      mxResult->value.boolean = 0;
1134
0
      break;
1135
0
    }
1136
0
  }
1137
0
}
1138
1139
void fx_String_prototype_lastIndexOf(txMachine* the)
1140
0
{
1141
0
  txString aString;
1142
0
  txString aSubString;
1143
0
  txInteger aLength;
1144
0
  txInteger aSubLength;
1145
0
  txInteger anOffset;
1146
0
  txNumber aNumber;
1147
1148
0
  aString = fxCoerceToString(the, mxThis);
1149
0
  if (mxArgc < 1) {
1150
0
    mxResult->value.integer = -1;
1151
0
    mxResult->kind = XS_INTEGER_KIND;
1152
0
    return;
1153
0
  }
1154
0
  aSubString = fxToString(the, mxArgv(0));
1155
0
  aString = mxThis->value.string;
1156
0
  aLength = fxCacheUnicodeLength(the, aString);
1157
0
  aSubLength = fxUnicodeLength(aSubString, C_NULL);
1158
0
  anOffset = aLength;
1159
0
  if ((mxArgc > 1) && (mxArgv(1)->kind != XS_UNDEFINED_KIND)) {
1160
0
    aNumber = fxToNumber(the, mxArgv(1));
1161
0
    anOffset = (c_isnan(aNumber)) ? aLength : (aNumber < 0) ? 0 : (aNumber > aLength) ? aLength : (txInteger)c_floor(aNumber);
1162
0
    anOffset += aSubLength;
1163
0
    if (anOffset > aLength)
1164
0
      anOffset = aLength;
1165
1166
0
    aString = mxThis->value.string;
1167
0
    aSubString = mxArgv(0)->value.string;
1168
0
  }
1169
0
  if (anOffset - aSubLength >= 0) {
1170
0
    anOffset = fxCacheUnicodeToUTF8Offset(the, aString, anOffset - aSubLength);
1171
0
    while (anOffset >= 0) {
1172
0
      txU1 c;
1173
0
      txU1* p = (txU1*)aString + anOffset;
1174
0
      txU1* q = (txU1*)aSubString;
1175
0
      while ((c = c_read8(q)) && (c_read8(p) == c)) {
1176
0
        mxMeterSome(((c & 0xC0) != 0x80) ? 1 : 0);
1177
0
        p++;
1178
0
        q++;
1179
0
      }
1180
0
      if (c)
1181
0
        anOffset--;
1182
0
      else
1183
0
        break;
1184
0
      mxCheckMetering();
1185
0
    }    
1186
0
    anOffset = fxCacheUTF8ToUnicodeOffset(the, aString, anOffset);
1187
0
  }
1188
0
  else
1189
0
    anOffset = -1;
1190
0
  mxResult->value.integer = anOffset;
1191
0
  mxResult->kind = XS_INTEGER_KIND;
1192
0
}
1193
1194
void fx_String_prototype_localeCompare(txMachine* the)
1195
0
{
1196
0
  txString aString;
1197
0
  txString bString;
1198
1199
0
  if (mxArgc < 1) {
1200
0
    aString = fxCoerceToString(the, mxThis);
1201
0
    bString = "undefined";
1202
0
  }
1203
0
  else {
1204
0
    fxToString(the, mxArgv(0));
1205
0
    aString = fxCoerceToString(the, mxThis);
1206
0
    bString = mxArgv(0)->value.string;
1207
0
  }
1208
0
#ifdef mxMetering
1209
0
  {
1210
0
    txSize aLength = fxUnicodeLength(aString, C_NULL);
1211
0
    txSize bLength = fxUnicodeLength(bString, C_NULL);
1212
0
    if (aLength < bLength) {
1213
0
      the->meterIndex += aLength * XS_STRING_METERING;
1214
0
    }
1215
0
    else {
1216
0
      the->meterIndex += bLength * XS_STRING_METERING;
1217
0
    }
1218
0
  }
1219
0
#endif  
1220
0
  mxResult->value.integer = fxUTF8Compare(aString, bString);
1221
0
  mxResult->kind = XS_INTEGER_KIND;
1222
0
}
1223
1224
void fx_String_prototype_match(txMachine* the)
1225
0
{ 
1226
0
  if (fx_String_prototype_withRegexp(the, mxID(_Symbol_match), 0, 1))
1227
0
    return;
1228
0
  fx_String_prototype_withoutRegexp(the, mxID(_Symbol_match), 0, 1);
1229
0
}
1230
1231
void fx_String_prototype_matchAll(txMachine* the)
1232
0
{ 
1233
0
  if (fx_String_prototype_withRegexp(the, mxID(_Symbol_matchAll), 1, 1))
1234
0
    return;
1235
0
  fx_String_prototype_withoutRegexp(the, mxID(_Symbol_matchAll), 1, 1);
1236
0
}
1237
1238
void fx_String_prototype_normalize(txMachine* the)
1239
0
{
1240
0
  txFlag form;
1241
0
  fxCoerceToString(the, mxThis);
1242
0
  if ((mxArgc < 1) || (mxArgv(0)->kind == XS_UNDEFINED_KIND))
1243
0
    form = 2;
1244
0
  else {
1245
0
    txString string = fxToString(the, mxArgv(0));
1246
0
    if (!c_strcmp(string, "NFC"))
1247
0
      form = 2;
1248
0
    else if (!c_strcmp(string, "NFD"))
1249
0
      form = 0;
1250
0
    else if (!c_strcmp(string, "NFKC"))
1251
0
      form = 3;
1252
0
    else if (!c_strcmp(string, "NFKD"))
1253
0
      form = 1;
1254
0
    else
1255
0
      mxRangeError("invalid form");
1256
0
  }
1257
0
  mxMeterSome(fxUnicodeLength(mxThis->value.string, C_NULL));
1258
0
  mxResult->value.string = mxThis->value.string;
1259
0
  mxResult->kind = mxThis->kind;
1260
0
#ifdef mxStringNormalize
1261
0
  fxNormalizeString(the, mxResult, form);
1262
#else 
1263
  {
1264
    txInteger max = 0;
1265
    txString string = mxResult->value.string;
1266
    for (;;) {
1267
      txInteger c;
1268
      string = mxStringByteDecode(string, &c);
1269
      if (c == C_EOF)
1270
        break;
1271
      if (max < c)
1272
        max = c;
1273
    }
1274
    if (max < 128) {
1275
    }
1276
    else if ((max < 256) && (form == 2)) {
1277
    }
1278
    else {
1279
      mxRangeError("not built-in");
1280
    }
1281
  }
1282
#endif
1283
0
}
1284
1285
void fx_String_prototype_pad(txMachine* the, txBoolean flag)
1286
0
{
1287
0
  txString string = fxCoerceToString(the, mxThis), filler;
1288
0
  txInteger stringLength = mxStringLength(string), fillerLength;
1289
0
  txInteger stringSize = fxUnicodeLength(string, C_NULL), fillerSize;
1290
0
  txInteger resultSize = (txInteger)fxArgToRange(the, 0, 0, 0, 0x7FFFFFFF);
1291
0
  *mxResult = *mxThis;
1292
0
  if (resultSize > stringSize) {
1293
0
    if ((mxArgc <= 1) || (mxIsUndefined(mxArgv(1))))
1294
0
      mxPushStringX(" ");
1295
0
    else
1296
0
      mxPushSlot(mxArgv(1));
1297
0
    filler = fxToString(the, the->stack);
1298
0
    fillerSize = fxUnicodeLength(filler, &fillerLength);
1299
0
    if (fillerSize > 0) {
1300
0
      txInteger delta = resultSize - stringSize;
1301
0
      txInteger count = delta / fillerSize;
1302
0
      txInteger rest = fxUnicodeToUTF8Offset(filler, delta % fillerSize);
1303
0
      txString result = mxResult->value.string = (txString)fxNewChunk(the, fxAddChunkSizes(the, fxAddChunkSizes(the, stringLength, fxMultiplyChunkSizes(the, fillerLength, count)), rest + 1));
1304
0
      mxResult->kind = XS_STRING_KIND;
1305
0
      string = fxToString(the, mxThis);
1306
0
      filler = fxToString(the, the->stack);
1307
0
      if (flag) {
1308
0
        c_memcpy(result, string, stringLength);
1309
0
        result += stringLength;
1310
0
      }
1311
0
      mxMeterSome(count);
1312
0
      while (count) {
1313
0
        c_memcpy(result, filler, fillerLength);
1314
0
        count--;
1315
0
        result += fillerLength;
1316
0
      }
1317
0
      if (rest) {
1318
0
        mxMeterSome(1);
1319
0
        c_memcpy(result, filler, rest);
1320
0
        result += rest;
1321
0
      }
1322
0
      if (!flag) {
1323
0
        c_memcpy(result, string, stringLength);
1324
0
        result += stringLength;
1325
0
      }
1326
0
      *result = 0;
1327
0
    }
1328
0
    mxPop();
1329
0
  }
1330
0
}
1331
1332
void fx_String_prototype_padEnd(txMachine* the)
1333
0
{
1334
0
  fx_String_prototype_pad(the, 1);
1335
0
}
1336
1337
void fx_String_prototype_padStart(txMachine* the)
1338
0
{
1339
0
  fx_String_prototype_pad(the, 0);
1340
0
}
1341
1342
void fx_String_prototype_repeat(txMachine* the)
1343
0
{
1344
0
  txString string = fxCoerceToString(the, mxThis), result;
1345
0
  txInteger length = mxStringLength(string);
1346
0
  txInteger count = 0;
1347
0
  txSlot *arg = mxArgv(0);
1348
0
  if ((mxArgc > 0) && (arg->kind != XS_UNDEFINED_KIND)) {
1349
0
    if (XS_INTEGER_KIND == arg->kind) {
1350
0
      count = arg->value.integer;
1351
0
      if (count < 0)
1352
0
        mxRangeError("count < 0");
1353
0
    }
1354
0
    else {
1355
0
      txNumber value = c_trunc(fxToNumber(the, arg));
1356
0
      if (c_isnan(value))
1357
0
        count = 0;
1358
0
      else {
1359
0
        if (value < 0)
1360
0
          mxRangeError("count < 0");
1361
0
        if (0x7FFFFFFF < value)
1362
0
          mxRangeError("count too big");
1363
0
        count = (txInteger)value;
1364
0
      }
1365
0
    }
1366
0
  }
1367
0
  mxMeterSome(count);
1368
0
  result = mxResult->value.string = (txString)fxNewChunk(the, fxAddChunkSizes(the, fxMultiplyChunkSizes(the, length, count), 1));
1369
0
  mxResult->kind = XS_STRING_KIND;
1370
0
  string = fxToString(the, mxThis);
1371
0
  if (length) {
1372
0
    while (count) {
1373
0
      c_memcpy(result, string, length);
1374
0
      count--;
1375
0
      result += length;
1376
0
    }
1377
0
  }
1378
0
  *result = 0;
1379
0
}
1380
1381
void fx_String_prototype_replace(txMachine* the)
1382
0
{
1383
0
  txString string;
1384
0
  txSlot* match;
1385
0
  txSize size;
1386
0
  txSize matchLength;
1387
0
  txSlot* function;
1388
0
  txSlot* replace;
1389
1390
0
  if (fx_String_prototype_withRegexp(the, mxID(_Symbol_replace), 0, 2))
1391
0
    return;
1392
0
  fxToString(the, mxThis);
1393
0
  if (mxArgc <= 0)
1394
0
    mxPushUndefined();
1395
0
  else
1396
0
    mxPushSlot(mxArgv(0));
1397
0
  match = the->stack;
1398
0
  fxToString(the, match);
1399
0
  if (mxArgc <= 1)
1400
0
    mxPushUndefined();
1401
0
  else
1402
0
    mxPushSlot(mxArgv(1));
1403
0
  if (mxIsReference(the->stack) && mxIsFunction(the->stack->value.reference)) {
1404
0
    function = the->stack;
1405
0
    replace = C_NULL;
1406
0
  }
1407
0
  else {   
1408
0
    replace = the->stack;
1409
0
    fxToString(the, replace);
1410
0
    function = C_NULL;
1411
0
  }
1412
0
  size = mxStringLength(mxThis->value.string);
1413
0
  matchLength = mxStringLength(match->value.string);
1414
0
  string = fx_String_prototype_includes_aux(the, mxThis->value.string, size, match->value.string, matchLength);
1415
0
  if (string) {
1416
0
    txSize offset = mxPtrDiff(string - mxThis->value.string);
1417
0
    txSize replaceLength;
1418
0
    fx_String_prototype_replaceAux(the, size, offset, function, match, matchLength, replace);
1419
0
    replaceLength = mxStringLength(the->stack->value.string);
1420
0
    mxResult->value.string = (txString)fxNewChunk(the, size - matchLength + replaceLength + 1);
1421
0
    c_memcpy(mxResult->value.string, mxThis->value.string, offset);
1422
0
    c_memcpy(mxResult->value.string + offset, the->stack->value.string, replaceLength);
1423
0
    c_memcpy(mxResult->value.string + offset + replaceLength, mxThis->value.string + offset + matchLength, size - (offset + matchLength));
1424
0
    mxResult->value.string[size - matchLength + replaceLength] = 0;
1425
0
    mxResult->kind = XS_STRING_KIND;
1426
0
    mxPop();
1427
0
  }
1428
0
  else
1429
0
    *mxResult = *mxThis;
1430
0
  mxPop();
1431
0
  mxPop();
1432
0
}
1433
1434
void fx_String_prototype_replaceAll(txMachine* the)
1435
0
{
1436
0
  txSlot* match;
1437
0
  txSlot* function;
1438
0
  txSlot* replace;
1439
0
  txInteger size;
1440
0
  txInteger matchLength;
1441
0
  txInteger resultSize = 0;
1442
0
  txSlot* list;
1443
0
  txSlot* item;
1444
0
  txInteger offset = 0;
1445
0
  txBoolean flag = 0;
1446
1447
0
  if (fx_String_prototype_withRegexp(the, mxID(_Symbol_replace), 1, 2))
1448
0
    return;
1449
0
  fxToString(the, mxThis);
1450
0
  if (mxArgc <= 0)
1451
0
    mxPushUndefined();
1452
0
  else
1453
0
    mxPushSlot(mxArgv(0));
1454
0
  match = the->stack;
1455
0
  fxToString(the, match);
1456
0
  if (mxArgc <= 1)
1457
0
    mxPushUndefined();
1458
0
  else
1459
0
    mxPushSlot(mxArgv(1));
1460
0
  if (mxIsReference(the->stack) && mxIsFunction(the->stack->value.reference)) {
1461
0
    function = the->stack;
1462
0
    replace = C_NULL;
1463
0
  }
1464
0
  else {   
1465
0
    replace = the->stack;
1466
0
    fxToString(the, replace);
1467
0
    function = C_NULL;
1468
0
  }
1469
0
  size = mxStringLength(mxThis->value.string);
1470
0
  matchLength = mxStringLength(match->value.string);
1471
  
1472
0
  list = item = fxNewInstance(the);
1473
0
  mxPushSlot(list);
1474
  
1475
0
  if (!matchLength) {
1476
0
    fx_String_prototype_replaceAux(the, size, offset, function, match, matchLength, replace);
1477
0
    item = item->next = fxNewSlot(the);
1478
0
    mxPullSlot(item);
1479
0
    item->value.key.sum = mxStringLength(item->value.string);
1480
0
    resultSize += item->value.key.sum;
1481
0
    flag = 1;
1482
0
  }
1483
0
  while (offset < size) {
1484
0
    txInteger current;
1485
0
    if (!matchLength) {
1486
0
      current = offset + fxUnicodeToUTF8Offset(mxThis->value.string + offset, 1);
1487
0
    }
1488
0
    else {
1489
0
      txString string = fx_String_prototype_includes_aux(the, mxThis->value.string + offset, size - offset, match->value.string, matchLength);
1490
0
            if (string)
1491
0
        current = mxPtrDiff(string - mxThis->value.string);
1492
0
      else
1493
0
        current = size;
1494
0
    }
1495
0
    if (offset < current) {
1496
0
      txInteger length = current - offset;
1497
0
      item = item->next = fxNewSlot(the);
1498
0
      item->value.dataView.offset = offset;
1499
0
      item->value.dataView.size = length;
1500
0
      item->kind = XS_DATA_VIEW_KIND;
1501
0
      resultSize += length;
1502
0
    }
1503
0
    if ((!matchLength) || (current < size)) {
1504
0
      fx_String_prototype_replaceAux(the, size, current, function, match, matchLength, replace);
1505
0
      item = item->next = fxNewSlot(the);
1506
0
            mxPullSlot(item);
1507
0
      item->value.key.sum = mxStringLength(item->value.string);
1508
0
      resultSize += item->value.key.sum;
1509
0
      flag = 1;
1510
0
    }
1511
0
    offset = current + matchLength;
1512
0
  }   
1513
0
  if (flag) {
1514
0
    resultSize++;
1515
0
    mxResult->value.string = (txString)fxNewChunk(the, resultSize);
1516
0
    offset = 0;
1517
0
    item = list->next;
1518
0
    while (item) {
1519
0
      if (item->kind == XS_DATA_VIEW_KIND) {
1520
0
        c_memcpy(mxResult->value.string + offset, mxThis->value.string + item->value.dataView.offset, item->value.dataView.size);
1521
0
        offset += item->value.dataView.size;
1522
0
      }
1523
0
      else {
1524
0
        c_memcpy(mxResult->value.string + offset, item->value.string, item->value.key.sum);
1525
0
        offset += item->value.key.sum;
1526
0
      }
1527
0
      item = item->next;
1528
0
    }
1529
0
    mxResult->value.string[offset] = 0;
1530
0
    mxResult->kind = XS_STRING_KIND;
1531
0
  }
1532
0
  else {
1533
0
    mxResult->value = mxThis->value;
1534
0
    mxResult->kind = mxThis->kind;
1535
0
  }
1536
  
1537
0
  mxPop();
1538
  
1539
0
  mxPop();
1540
0
  mxPop();
1541
0
}
1542
1543
void fx_String_prototype_replaceAux(txMachine* the, txInteger size, txInteger offset, txSlot* function, txSlot* match, txInteger matchLength, txSlot* replace)
1544
0
{
1545
0
  if (function) {
1546
0
    mxPushUndefined();
1547
0
    mxPushSlot(function);
1548
0
    mxCall();
1549
0
    mxPushSlot(match);
1550
0
    mxPushInteger(fxUTF8ToUnicodeOffset(mxThis->value.string, offset));
1551
0
    mxPushSlot(mxThis);
1552
0
    mxRunCount(3);
1553
0
    fxToString(the, the->stack);
1554
0
  }
1555
0
  else
1556
0
    fxPushSubstitutionString(the, mxThis, size, offset, match, matchLength, 0, C_NULL, C_NULL, replace);
1557
0
}
1558
1559
void fx_String_prototype_search(txMachine* the)
1560
0
{
1561
0
  if (fx_String_prototype_withRegexp(the, mxID(_Symbol_search), 0, 1))
1562
0
    return;
1563
0
  fx_String_prototype_withoutRegexp(the, mxID(_Symbol_search), 0, 1);
1564
0
}
1565
1566
void fx_String_prototype_slice(txMachine* the)
1567
0
{
1568
0
  txString string = fxCoerceToString(the, mxThis);
1569
0
  txInteger length = fxCacheUnicodeLength(the, string);
1570
0
  txNumber start = fxArgToIndex(the, 0, 0, length);
1571
0
  txNumber end = fxArgToIndex(the, 1, length, length);
1572
0
  if (start < end) {
1573
0
    txInteger offset = fxCacheUnicodeToUTF8Offset(the, mxThis->value.string, (txInteger)start);
1574
0
    length = fxUnicodeToUTF8Offset(mxThis->value.string + offset, (txInteger)(end - start));
1575
0
    if ((offset >= 0) && (length > 0)) {
1576
0
      mxResult->value.string = (txString)fxNewChunk(the, length + 1);
1577
0
      c_memcpy(mxResult->value.string, mxThis->value.string + offset, length);
1578
0
      mxResult->value.string[length] = 0;
1579
0
      mxResult->kind = XS_STRING_KIND;
1580
0
      return;
1581
0
    }
1582
0
  }
1583
0
  mxResult->value.string = mxEmptyString.value.string;
1584
0
  mxResult->kind = mxEmptyString.kind;
1585
0
}
1586
1587
void fx_String_prototype_split(txMachine* the)
1588
0
{
1589
0
  txString aString;
1590
0
  txInteger aLength;
1591
0
  txIndex aLimit;
1592
0
  txSlot* anArray;
1593
0
  txSlot* anItem;
1594
0
  txInteger anOffset;
1595
0
  txInteger aCount;
1596
0
  txString aSubString;
1597
0
  txInteger aSubLength;
1598
0
  txInteger aSubOffset;
1599
0
  txInteger subOffsets[2];
1600
1601
0
  if (fx_String_prototype_withRegexp(the, mxID(_Symbol_split), 0, 2))
1602
0
    return;
1603
0
  aString = fxToString(the, mxThis);
1604
0
  aLength = mxStringLength(aString);
1605
0
  aLimit = ((mxArgc > 1) && (!mxIsUndefined(mxArgv(1)))) ? (txIndex)fxToUnsigned(the, mxArgv(1)) : 0xFFFFFFFF;
1606
0
  mxPush(mxArrayPrototype);
1607
0
  anArray = fxNewArrayInstance(the);
1608
0
  mxPullSlot(mxResult);
1609
0
  fxGetInstance(the, mxResult);
1610
0
  anItem = fxLastProperty(the, anArray);
1611
0
  if ((mxArgc < 1) || (mxArgv(0)->kind == XS_UNDEFINED_KIND)) {
1612
0
    if (!aLimit)
1613
0
      goto bail;
1614
0
    fx_String_prototype_split_aux(the, mxThis, anArray, anItem, 0, aLength);
1615
0
    goto bail;
1616
0
  }
1617
0
  aSubString = fxToString(the, mxArgv(0));
1618
0
  aSubLength = mxStringLength(aSubString);
1619
0
  if (!aLimit)
1620
0
    goto bail;
1621
0
  if (aSubLength == 0) {
1622
0
    anOffset = 0;
1623
0
    while (anOffset < aLength) {
1624
0
      aSubOffset = anOffset + fxUnicodeToUTF8Offset(mxThis->value.string + anOffset, 1);
1625
0
      anItem = fx_String_prototype_split_aux(the, mxThis, anArray, anItem, anOffset, aSubOffset);
1626
0
      if (anArray->next->value.array.length >= aLimit)
1627
0
        goto bail;
1628
0
      anOffset = aSubOffset;
1629
0
    }
1630
0
  }
1631
0
  else if (aLength == 0) {
1632
0
    fx_String_prototype_split_aux(the, mxThis, anArray, anItem, 0, 0);
1633
0
  }
1634
0
  else {
1635
0
    anOffset = 0;
1636
0
    for (;;) {
1637
0
      aCount = fx_String_prototype_indexOf_aux(the, mxThis->value.string, aLength, anOffset, mxArgv(0)->value.string, aSubLength, subOffsets);
1638
0
      if (aCount <= 0)
1639
0
        break;
1640
0
      if (anOffset <= subOffsets[0]) {
1641
0
        anItem = fx_String_prototype_split_aux(the, mxThis, anArray, anItem, anOffset, subOffsets[0]);
1642
0
        if (anArray->next->value.array.length >= aLimit)
1643
0
          goto bail;
1644
0
      }
1645
0
      anOffset = subOffsets[1];
1646
0
    }
1647
0
    if (anOffset <= aLength)
1648
0
      fx_String_prototype_split_aux(the, mxThis, anArray, anItem, anOffset, aLength);
1649
0
  }
1650
0
bail:
1651
0
  fxCacheArray(the, anArray);
1652
0
}
1653
1654
txSlot* fx_String_prototype_split_aux(txMachine* the, txSlot* theString, txSlot* theArray, txSlot* theItem, txInteger theStart, txInteger theStop)
1655
0
{
1656
0
  theStop -= theStart;
1657
0
  theItem->next = fxNewSlot(the);
1658
0
  theItem = theItem->next;
1659
0
  theItem->next = C_NULL;
1660
0
  if (theStart >= 0) {
1661
0
    theItem->value.string = (txString)fxNewChunk(the, theStop + 1);
1662
0
    c_memcpy(theItem->value.string, theString->value.string + theStart, theStop);
1663
0
    theItem->value.string[theStop] = 0;
1664
0
    theItem->kind = XS_STRING_KIND;
1665
0
  }
1666
0
  theArray->next->value.array.length++;
1667
0
  return theItem;
1668
0
}
1669
1670
void fx_String_prototype_startsWith(txMachine* the)
1671
0
{
1672
0
  txString string = fxCoerceToString(the, mxThis);
1673
0
  txInteger length = fxCacheUnicodeLength(the, string);
1674
0
  txString searchString;
1675
0
  txInteger searchLength;
1676
0
  txInteger offset;
1677
0
  mxResult->kind = XS_BOOLEAN_KIND;
1678
0
  mxResult->value.boolean = 0;
1679
0
  if (mxArgc < 1)
1680
0
    return;
1681
0
  if (fxIsRegExp(the, mxArgv(0)))
1682
0
    mxTypeError("future editions");
1683
0
  searchString = fxToString(the, mxArgv(0));
1684
0
  offset = fxArgToPosition(the, 1, 0, length);
1685
0
  string = mxThis->value.string;
1686
0
  length = fxCacheUTF8Length(the, string);
1687
0
  searchString = mxArgv(0)->value.string;
1688
0
  searchLength = mxStringLength(searchString);
1689
0
  offset = fxCacheUnicodeToUTF8Offset(the, string, offset);
1690
0
  if (length - offset < searchLength)
1691
0
    return;
1692
0
  mxMeterSome(fxUnicodeLength(searchString, C_NULL));
1693
0
  if (!c_strncmp(string + offset, searchString, searchLength))
1694
0
    mxResult->value.boolean = 1;
1695
0
}
1696
1697
void fx_String_prototype_substr(txMachine* the)
1698
0
{
1699
0
  txString string = fxCoerceToString(the, mxThis);
1700
0
  txInteger size = fxCacheUnicodeLength(the, string);
1701
0
  txInteger start = fxArgToIndexInteger(the, 0, 0, size);
1702
0
  txInteger stop = size;
1703
0
  if ((mxArgc > 1) && (mxArgv(1)->kind != XS_UNDEFINED_KIND)) {
1704
0
    stop = start + fxToInteger(the, mxArgv(1));
1705
0
    if (stop > size)
1706
0
      stop = size;
1707
0
  } 
1708
0
  if (start < stop) {
1709
0
    txInteger length;
1710
0
    start = fxCacheUnicodeToUTF8Offset(the, mxThis->value.string, start);
1711
0
    stop = fxCacheUnicodeToUTF8Offset(the, mxThis->value.string, stop);
1712
0
    length = stop - start;
1713
0
    mxResult->value.string = (txString)fxNewChunk(the, length + 1);
1714
0
    c_memcpy(mxResult->value.string, mxThis->value.string + start, length);
1715
0
    mxResult->value.string[length] = 0;
1716
0
    mxResult->kind = XS_STRING_KIND;
1717
0
  }
1718
0
  else {
1719
0
    mxResult->value.string = mxEmptyString.value.string;
1720
0
    mxResult->kind = mxEmptyString.kind;
1721
0
  }
1722
0
}
1723
1724
void fx_String_prototype_substring(txMachine* the)
1725
0
{
1726
0
  txString aString;
1727
0
  txInteger aLength;
1728
0
  txNumber aNumber;
1729
0
  txInteger aStart;
1730
0
  txInteger aStop;
1731
0
  txInteger anOffset;
1732
1733
0
  aString = fxCoerceToString(the, mxThis);
1734
0
  aLength = fxCacheUnicodeLength(the, aString);
1735
0
  aStart = 0;
1736
0
  aStop = aLength;
1737
0
  if ((mxArgc > 0) && (mxArgv(0)->kind != XS_UNDEFINED_KIND)) {
1738
0
    aNumber = fxToNumber(the, mxArgv(0));
1739
0
    aStart = (c_isnan(aNumber)) ? 0 : (aNumber < 0) ? 0 : (aNumber > aLength) ? aLength : (txInteger)c_floor(aNumber);
1740
0
  }
1741
0
  if ((mxArgc > 1) && (mxArgv(1)->kind != XS_UNDEFINED_KIND)) {
1742
0
    aNumber = fxToNumber(the, mxArgv(1));
1743
0
    aStop = (c_isnan(aNumber)) ? 0 : (aNumber < 0) ? 0 : (aNumber > aLength) ? aLength : (txInteger)c_floor(aNumber);
1744
0
  }
1745
0
  if (aStart > aStop) {
1746
0
    aLength = aStart;
1747
0
    aStart = aStop;
1748
0
    aStop = aLength;
1749
0
  }
1750
0
  if (aStart < aStop) {
1751
0
    anOffset = fxCacheUnicodeToUTF8Offset(the, mxThis->value.string, aStart);
1752
0
    aLength = fxUnicodeToUTF8Offset(mxThis->value.string + anOffset, aStop - aStart);
1753
0
    if ((anOffset >= 0) && (aLength > 0)) {
1754
0
      mxResult->value.string = (txString)fxNewChunk(the, aLength + 1);
1755
0
      c_memcpy(mxResult->value.string, mxThis->value.string + anOffset, aLength);
1756
0
      mxResult->value.string[aLength] = 0;
1757
0
      mxResult->kind = XS_STRING_KIND;
1758
0
    }
1759
0
    else {
1760
0
      mxResult->value.string = mxEmptyString.value.string;
1761
0
      mxResult->kind = mxEmptyString.kind;
1762
0
    }
1763
0
  }
1764
0
  else {
1765
0
    mxResult->value.string = mxEmptyString.value.string;
1766
0
    mxResult->kind = mxEmptyString.kind;
1767
0
  }
1768
0
}
1769
1770
void fx_String_prototype_toLowerCase(txMachine* the)
1771
0
{
1772
0
  fxCoerceToString(the, mxThis);
1773
0
  fx_String_prototype_toCase(the, 0);
1774
0
}
1775
1776
void fx_String_prototype_toUpperCase(txMachine* the)
1777
0
{
1778
0
  fxCoerceToString(the, mxThis);
1779
0
  fx_String_prototype_toCase(the, 1);
1780
0
}
1781
1782
void fx_String_prototype_toWellFormed(txMachine* the)
1783
0
{
1784
0
  txString string = fxCoerceToString(the, mxThis);
1785
0
  txSize length = mxStringLength(string);
1786
0
  mxResult->value.string = (txString)fxNewChunk(the, length + 1);
1787
0
  mxResult->kind = XS_STRING_KIND;
1788
0
  txString p = mxThis->value.string;
1789
0
  txString q = mxResult->value.string;
1790
0
  while (c_read8(p)) {
1791
0
    txInteger c;
1792
0
    p = mxStringByteDecode(p, &c);
1793
0
    if ((0x0000D800 <= c) && (c <= 0x0000DFFF))
1794
0
      c = 0x0000FFFD;
1795
0
    q = mxStringByteEncode(q, c);
1796
0
  }
1797
0
  *q = 0;
1798
0
}
1799
1800
void fx_String_prototype_trim(txMachine* the)
1801
0
{
1802
0
  fx_String_prototype_trimAux(the, 1, 1);
1803
0
}
1804
1805
void fx_String_prototype_trimAux(txMachine* the, txBoolean trimStart, txBoolean trimEnd)
1806
0
{
1807
0
  txString string = fxCoerceToString(the, mxThis), start;
1808
0
  txInteger offset, length, trimmed = 0;
1809
0
  if (trimStart) {
1810
0
    start = fxSkipSpaces(string);
1811
0
    offset = mxPtrDiff(start - string);
1812
0
    mxMeterSome(offset);
1813
0
    trimmed = offset > 0;
1814
0
  }
1815
0
  else {
1816
0
    start = string;
1817
0
    offset = 0;
1818
0
  }
1819
0
  if (trimEnd) {
1820
0
    txString end = start;
1821
0
    txString current = fxSkipSpaces(end);
1822
0
    while (c_read8(current)) {
1823
0
      end = current + 1;
1824
0
      current = fxSkipSpaces(end);
1825
0
    }
1826
0
    length = mxPtrDiff(end - start);
1827
0
    mxMeterSome(length);
1828
0
    trimmed = trimmed || (end < current);
1829
0
  }
1830
0
  else
1831
0
    length = mxStringLength(start);
1832
0
  if (trimmed) {
1833
0
    mxResult->value.string = (txString)fxNewChunk(the, length + 1);
1834
0
    c_memcpy(mxResult->value.string, mxThis->value.string + offset, length);
1835
0
    mxResult->value.string[length] = 0;
1836
0
    mxResult->kind = XS_STRING_KIND;
1837
0
  }
1838
0
  else {
1839
0
    mxResult->value.string = mxThis->value.string;
1840
0
    mxResult->kind = mxThis->kind;
1841
0
  }
1842
0
}
1843
1844
void fx_String_prototype_trimEnd(txMachine* the)
1845
0
{
1846
0
  fx_String_prototype_trimAux(the, 0, 1);
1847
0
}
1848
1849
void fx_String_prototype_trimStart(txMachine* the)
1850
0
{
1851
0
  fx_String_prototype_trimAux(the, 1, 0);
1852
0
}
1853
1854
void fx_String_prototype_valueOf(txMachine* the)
1855
0
{
1856
0
  txSlot* slot = fxCheckString(the, mxThis);
1857
0
  if (!slot) mxTypeError("this: not a string");
1858
0
  mxResult->kind = slot->kind;
1859
0
  mxResult->value = slot->value;
1860
0
}
1861
1862
txBoolean fx_String_prototype_withRegexp(txMachine* the, txID id, txBoolean global, txInteger count)
1863
0
{
1864
0
  if (mxIsUndefined(mxThis))
1865
0
    mxTypeError("this: undefined");
1866
0
  if (mxIsNull(mxThis))
1867
0
    mxTypeError("this: null");
1868
0
  if (mxArgc > 0) {
1869
0
    txSlot* regexp = mxArgv(0);
1870
0
    if (mxIsReference(regexp)) {
1871
0
      if (global && fxIsRegExp(the, regexp)) {
1872
0
        mxPushSlot(regexp);
1873
0
        mxGetID(mxID(_flags));
1874
0
        if (!c_strchr(fxToString(the, the->stack), 'g'))
1875
0
          mxTypeError("regexp has no g flag");
1876
0
        mxPop();
1877
0
      }
1878
0
      mxPushSlot(regexp);
1879
0
      mxPushSlot(regexp);
1880
0
      mxGetID(id);
1881
0
      if (!mxIsUndefined(the->stack) && !mxIsNull(the->stack)) {
1882
0
        mxCall();
1883
0
        mxPushSlot(mxThis);
1884
0
        if (count > 1) {
1885
0
          if (mxArgc > 1)
1886
0
            mxPushSlot(mxArgv(1));
1887
0
          else
1888
0
            mxPushUndefined();
1889
0
        }
1890
0
        mxRunCount(count);
1891
0
        mxPullSlot(mxResult);
1892
0
        return 1;
1893
0
      }
1894
0
      mxPop();
1895
0
      mxPop();
1896
0
    }
1897
0
  }
1898
0
  return 0;
1899
0
}
1900
1901
void fx_String_prototype_withoutRegexp(txMachine* the, txID id, txBoolean global, txInteger count)
1902
0
{
1903
0
  fxToString(the, mxThis);
1904
0
  mxPush(mxRegExpPrototype);
1905
0
  fxNewRegExpInstance(the);
1906
0
  mxPush(mxInitializeRegExpFunction);
1907
0
  mxCall();
1908
0
  if (mxArgc > 0)
1909
0
    mxPushSlot(mxArgv(0));
1910
0
  else
1911
0
    mxPushUndefined();
1912
0
  if (global)
1913
0
    mxPushStringX("g");
1914
0
  else
1915
0
    mxPushUndefined();
1916
0
  mxRunCount(2);
1917
0
  mxDub();
1918
0
  mxGetID(id);
1919
0
  mxCall();
1920
0
  mxPushSlot(mxThis);
1921
0
  if (count > 1) {
1922
0
    if (mxArgc > 1)
1923
0
      mxPushSlot(mxArgv(1));
1924
0
    else
1925
0
      mxPushUndefined();
1926
0
  }
1927
0
  mxRunCount(count);
1928
0
  mxPullSlot(mxResult);
1929
0
}
1930
1931
txSlot* fxCheckString(txMachine* the, txSlot* it)
1932
0
{
1933
0
  txSlot* result = C_NULL;
1934
0
  if ((it->kind == XS_STRING_KIND) || (it->kind == XS_STRING_X_KIND))
1935
0
    result = it;
1936
0
  else if (it->kind == XS_REFERENCE_KIND) {
1937
0
    it = it->value.reference->next;
1938
0
    if (it && (it->flag & XS_INTERNAL_FLAG) && ((it->kind == XS_STRING_KIND) || (it->kind == XS_STRING_X_KIND)))
1939
0
      result = it;
1940
0
  }
1941
0
  return result;
1942
0
}
1943
1944
txString fxCoerceToString(txMachine* the, txSlot* theSlot)
1945
0
{
1946
0
  if (theSlot->kind == XS_UNDEFINED_KIND)
1947
0
    mxTypeError("this: undefined");
1948
0
  if (theSlot->kind == XS_NULL_KIND)
1949
0
    mxTypeError("this: null");
1950
0
  return fxToString(the, theSlot);
1951
0
}
1952
1953
void fx_String_prototype_iterator(txMachine* the)
1954
0
{
1955
0
  txSlot* property;
1956
0
  fxCoerceToString(the, mxThis);
1957
0
  mxPush(mxStringIteratorPrototype);
1958
0
  property = fxLastProperty(the, fxNewIteratorInstance(the, mxThis, mxID(_String)));
1959
0
  property = fxNextIntegerProperty(the, property, (txInteger)c_strlen(mxThis->value.string), XS_NO_ID, XS_INTERNAL_FLAG);
1960
0
  mxPullSlot(mxResult);
1961
0
}
1962
1963
void fx_String_prototype_iterator_next(txMachine* the)
1964
0
{
1965
0
  txSlot* iterator = fxCheckIteratorInstance(the, mxThis, mxID(_String));
1966
0
  txSlot* result = iterator->next;
1967
0
  txSlot* iterable = result->next;
1968
0
  txSlot* index = iterable->next;
1969
0
  txSlot* length = index->next;
1970
0
  txSlot* value = fxCheckIteratorResult(the, result);
1971
0
  txSlot* done = value->next;
1972
0
  if (index->value.integer < length->value.integer) {
1973
0
    txInteger character, size;
1974
0
    txString string = mxStringByteDecode(iterable->value.string + index->value.integer, &character);
1975
0
    index->value.integer = mxPtrDiff(string - iterable->value.string);
1976
0
    size = mxStringByteLength(character);
1977
0
    value->value.string = (txString)fxNewChunk(the, size + 1);
1978
0
    string = mxStringByteEncode(value->value.string, character);
1979
0
    *string = 0;
1980
0
    value->kind = XS_STRING_KIND;
1981
0
  }
1982
0
  else {
1983
0
    value->kind = XS_UNDEFINED_KIND;
1984
0
    done->value.boolean = 1;
1985
0
  }
1986
0
  mxResult->kind = result->kind;
1987
0
  mxResult->value = result->value;
1988
0
}
1989
1990
txInteger fxArgToPosition(txMachine* the, txInteger argi, txInteger index, txInteger length)
1991
0
{
1992
0
  if ((mxArgc > argi) && (mxArgv(argi)->kind != XS_UNDEFINED_KIND)) {
1993
0
    txNumber i = c_trunc(fxToNumber(the, mxArgv(argi)));
1994
0
    if (c_isnan(i))
1995
0
      i = 0;
1996
0
    if (i < 0)
1997
0
      index = 0;
1998
0
    else if (i > (txNumber)length)
1999
0
      index = length;
2000
0
    else
2001
0
      index = (txInteger)i;
2002
0
  }
2003
0
  return index;
2004
0
}
2005
2006
#if __has_builtin(__builtin_add_overflow)
2007
  #define mxAddSize(a, b) \
2008
0
    if (__builtin_add_overflow(a, b, &a)) \
2009
0
      fxAbort(the, XS_NOT_ENOUGH_MEMORY_EXIT)
2010
#else
2011
  #define mxAddSize(a, b) \
2012
    if ((txInteger)((txU4)a + (txU4)b) < a) \
2013
      fxAbort(the, XS_NOT_ENOUGH_MEMORY_EXIT); \
2014
    else \
2015
      a = (txInteger)((txU4)a + (txU4)b)
2016
#endif
2017
2018
void fxPushSubstitutionString(txMachine* the, txSlot* string, txInteger size, txInteger offset, txSlot* match, txInteger length, txInteger count, txSlot* captures, txSlot* groups, txSlot* replace)
2019
0
{
2020
0
  txString r;
2021
0
  txInteger l;
2022
0
  txBoolean flag;
2023
0
  txByte c, d;
2024
0
  txInteger i, j;
2025
0
  txSlot* capture;
2026
0
  txString s;
2027
0
  r = replace->value.string;
2028
0
  l = 0;
2029
0
  flag = 0;
2030
0
  while ((c = c_read8(r++))) {
2031
0
    txInteger delta = 1;
2032
0
    if (c == '$') {
2033
0
      c = c_read8(r++);
2034
0
      switch (c) {
2035
0
      case '$':
2036
0
        flag = 1;
2037
0
        break;
2038
0
      case '&':
2039
0
        delta = length;
2040
0
        flag = 1;
2041
0
        break;
2042
0
      case '`':
2043
0
        delta = offset;
2044
0
        flag = 1;
2045
0
        break;
2046
0
      case '\'':
2047
0
        delta = size - offset - length;
2048
0
        if (delta < 0)
2049
0
          delta = 0;
2050
0
        flag = 1;
2051
0
        break;
2052
0
      case '<':
2053
0
        if (groups && mxIsReference(groups)) {
2054
0
          txString t = r;
2055
0
          while ((d = c_read8(r))) {
2056
0
            if (d == '>')
2057
0
              break;
2058
0
            r++;
2059
0
          }
2060
0
          if (d) {
2061
0
            txInteger n = mxPtrDiff(r - t);
2062
0
            txID name = XS_NO_ID;
2063
0
            if ((size_t)(n + 1) <= sizeof(the->nameBuffer)) {
2064
0
              c_memcpy(the->nameBuffer, t, n);
2065
0
              the->nameBuffer[n] = 0;
2066
0
              name = fxFindName(the, the->nameBuffer);
2067
0
            }
2068
0
            delta = 0;
2069
0
            if (name) {
2070
0
              mxPushSlot(groups);
2071
0
              mxGetID(name);
2072
0
              if (!mxIsUndefined(the->stack)) {
2073
0
                fxToString(the, the->stack);
2074
0
                delta = mxStringLength(the->stack->value.string);
2075
0
              }
2076
0
              mxPop();
2077
0
            }
2078
0
            r++;
2079
0
            flag = 1;
2080
0
          }
2081
0
          else {
2082
0
            r = t;
2083
0
            delta = 2;
2084
0
          }
2085
0
        }
2086
0
        else {
2087
0
          delta = 2;
2088
0
        }
2089
0
        break;
2090
0
      default:
2091
0
        if (('0' <= c) && (c <= '9')) {
2092
0
          i = c - '0';
2093
0
          d = c_read8(r);
2094
0
          if (('0' <= d) && (d <= '9')) {
2095
0
            j = (i * 10) + d - '0';
2096
0
            if ((0 < j) && (j <= count)) {
2097
0
              i = j;
2098
0
              r++;
2099
0
            }
2100
0
            else
2101
0
              d = 0;
2102
0
          }
2103
0
          else
2104
0
            d = 0;
2105
0
          if ((0 < i) && (i <= count)) {
2106
0
            capture = (captures + count - i);
2107
0
            delta = 0;
2108
0
            if (capture->kind != XS_UNDEFINED_KIND)
2109
0
              delta = mxStringLength(capture->value.string);
2110
0
            flag = 1;
2111
0
          }
2112
0
          else
2113
0
            delta = d ? 3 : 2;
2114
0
        }
2115
0
        else {
2116
0
          if (c)
2117
0
            delta = 2;
2118
0
          else
2119
0
            r--;
2120
0
        }
2121
0
        break;
2122
0
      }
2123
0
    }
2124
0
    mxAddSize(l, delta);
2125
0
  }
2126
0
  if (flag) {
2127
0
    mxPushUndefined();
2128
0
    the->stack->value.string = (txString)fxNewChunk(the, fxAddChunkSizes(the, l, 1));
2129
0
    the->stack->kind = XS_STRING_KIND;
2130
0
    r = replace->value.string;
2131
0
    s = the->stack->value.string;
2132
0
    while ((c = c_read8(r++))) {
2133
0
      if (c == '$') {
2134
0
        c = c_read8(r++);
2135
0
        switch (c) {
2136
0
        case '$':
2137
0
          *s++ = c;
2138
0
          break;
2139
0
        case '&':
2140
0
          l = length;
2141
0
          c_memcpy(s, match->value.string, l);
2142
0
          s += l;
2143
0
          break;
2144
0
        case '`':
2145
0
          l = offset;
2146
0
          c_memcpy(s, string->value.string, l);
2147
0
          s += l;
2148
0
          break;
2149
0
        case '\'':
2150
0
          l = size - offset - length;
2151
0
                    if (l > 0) {
2152
0
                        c_memcpy(s, string->value.string + offset + length, l);
2153
0
                        s += l;
2154
0
                    }
2155
0
          break;
2156
0
        case '<':
2157
0
          if (groups && mxIsReference(groups)) {
2158
0
            txString t = r;
2159
0
            while ((d = c_read8(r))) {
2160
0
              if (d == '>')
2161
0
                break;
2162
0
              r++;
2163
0
            }
2164
0
            if (d) {
2165
0
              txInteger n = mxPtrDiff(r - t);
2166
0
              txID name = XS_NO_ID;
2167
0
              if ((size_t)(n + 1) <= sizeof(the->nameBuffer)) {
2168
0
                c_memcpy(the->nameBuffer, t, n);
2169
0
                the->nameBuffer[n] = 0;
2170
0
                name = fxFindName(the, the->nameBuffer);
2171
0
              }
2172
0
              if (name) {
2173
0
                mxPushSlot(groups);
2174
0
                mxGetID(name);
2175
0
                if (!mxIsUndefined(the->stack)) {
2176
0
                  fxToString(the, the->stack);
2177
0
                  l = mxStringLength(the->stack->value.string);
2178
0
                  c_memcpy(s, the->stack->value.string, l);
2179
0
                  s += l;
2180
0
                }
2181
0
                mxPop();
2182
0
              }
2183
0
              r++;
2184
0
            }
2185
0
            else {
2186
0
              r = t;
2187
0
              *s++ = '$';
2188
0
              *s++ = '<';
2189
0
            }
2190
0
          }
2191
0
          else {
2192
0
            *s++ = '$';
2193
0
            *s++ = '<';
2194
0
          }
2195
0
          break;
2196
0
        default:
2197
0
          if (('0' <= c) && (c <= '9')) {
2198
0
            i = c - '0';
2199
0
            d = c_read8(r);
2200
0
            if (('0' <= d) && (d <= '9')) {
2201
0
              j = (i * 10) + d - '0';
2202
0
              if ((0 < j) && (j <= count)) {
2203
0
                i = j;
2204
0
                r++;
2205
0
              }
2206
0
              else
2207
0
                d = 0;
2208
0
            }
2209
0
            else
2210
0
              d = 0;
2211
0
            if ((0 < i) && (i <= count)) {
2212
0
              capture = (captures + count - i);
2213
0
              if (capture->kind != XS_UNDEFINED_KIND) {
2214
0
                l = mxStringLength(capture->value.string);
2215
0
                c_memcpy(s, capture->value.string, l);
2216
0
                s += l;
2217
0
              }
2218
0
            }
2219
0
            else {
2220
0
              *s++ = '$';
2221
0
              *s++ = c;
2222
0
              if (d)
2223
0
                *s++ = d;
2224
0
            }
2225
0
          }
2226
0
          else {
2227
0
            *s++ = '$';
2228
0
            if (c)
2229
0
              *s++ = c;
2230
0
          }
2231
0
          break;
2232
0
        }
2233
0
        if (!c)
2234
0
          break;
2235
0
      }
2236
0
      else
2237
0
        *s++ = c;
2238
0
    }
2239
0
    *s = 0;
2240
0
  }
2241
0
  else
2242
0
    mxPushSlot(replace);
2243
0
}
2244
2245
#ifdef mxStringNormalize
2246
2247
typedef struct {
2248
  txSlot* slot;
2249
  txInteger* address;
2250
  txInteger count;
2251
  txInteger starterIndex;
2252
} txNormalizeBuffer;
2253
2254
typedef struct {
2255
  txU2 code;
2256
  txU1 count;
2257
  txU1 order;
2258
} txCombination;
2259
2260
0
#define mxCombinationCount0 300
2261
static const txCombination gxCombinationIndex0[mxCombinationCount0] ICACHE_XS6RO_ATTR = {
2262
  {0x0300,21,230},{0x0315,1,232},{0x0316,4,220},{0x031A,1,232},{0x031B,1,216},{0x031C,5,220},{0x0321,2,202},{0x0323,4,220},
2263
  {0x0327,2,202},{0x0329,11,220},{0x0334,5,1},{0x0339,4,220},{0x033D,8,230},{0x0345,1,240},{0x0346,1,230},{0x0347,3,220},
2264
  {0x034A,3,230},{0x034D,2,220},{0x0350,3,230},{0x0353,4,220},{0x0357,1,230},{0x0358,1,232},{0x0359,2,220},{0x035B,1,230},
2265
  {0x035C,1,233},{0x035D,2,234},{0x035F,1,233},{0x0360,2,234},{0x0362,1,233},{0x0363,13,230},{0x0483,5,230},{0x0591,1,220},
2266
  {0x0592,4,230},{0x0596,1,220},{0x0597,3,230},{0x059A,1,222},{0x059B,1,220},{0x059C,6,230},{0x05A2,6,220},{0x05A8,2,230},
2267
  {0x05AA,1,220},{0x05AB,2,230},{0x05AD,1,222},{0x05AE,1,228},{0x05AF,1,230},{0x05B0,1,10},{0x05B1,1,11},{0x05B2,1,12},
2268
  {0x05B3,1,13},{0x05B4,1,14},{0x05B5,1,15},{0x05B6,1,16},{0x05B7,1,17},{0x05B8,1,18},{0x05B9,2,19},{0x05BB,1,20},
2269
  {0x05BC,1,21},{0x05BD,1,22},{0x05BF,1,23},{0x05C1,1,24},{0x05C2,1,25},{0x05C4,1,230},{0x05C5,1,220},{0x05C7,1,18},
2270
  {0x0610,8,230},{0x0618,1,30},{0x0619,1,31},{0x061A,1,32},{0x064B,1,27},{0x064C,1,28},{0x064D,1,29},{0x064E,1,30},
2271
  {0x064F,1,31},{0x0650,1,32},{0x0651,1,33},{0x0652,1,34},{0x0653,2,230},{0x0655,2,220},{0x0657,5,230},{0x065C,1,220},
2272
  {0x065D,2,230},{0x065F,1,220},{0x0670,1,35},{0x06D6,7,230},{0x06DF,4,230},{0x06E3,1,220},{0x06E4,1,230},{0x06E7,2,230},
2273
  {0x06EA,1,220},{0x06EB,2,230},{0x06ED,1,220},{0x0711,1,36},{0x0730,1,230},{0x0731,1,220},{0x0732,2,230},{0x0734,1,220},
2274
  {0x0735,2,230},{0x0737,3,220},{0x073A,1,230},{0x073B,2,220},{0x073D,1,230},{0x073E,1,220},{0x073F,3,230},{0x0742,1,220},
2275
  {0x0743,1,230},{0x0744,1,220},{0x0745,1,230},{0x0746,1,220},{0x0747,1,230},{0x0748,1,220},{0x0749,2,230},{0x07EB,7,230},
2276
  {0x07F2,1,220},{0x07F3,1,230},{0x07FD,1,220},{0x0816,4,230},{0x081B,9,230},{0x0825,3,230},{0x0829,5,230},{0x0859,3,220},
2277
  {0x0897,2,230},{0x0899,3,220},{0x089C,4,230},{0x08CA,5,230},{0x08CF,5,220},{0x08D4,14,230},{0x08E3,1,220},{0x08E4,2,230},
2278
  {0x08E6,1,220},{0x08E7,2,230},{0x08E9,1,220},{0x08EA,3,230},{0x08ED,3,220},{0x08F0,1,27},{0x08F1,1,28},{0x08F2,1,29},
2279
  {0x08F3,3,230},{0x08F6,1,220},{0x08F7,2,230},{0x08F9,2,220},{0x08FB,5,230},{0x093C,1,7},{0x094D,1,9},{0x0951,1,230},
2280
  {0x0952,1,220},{0x0953,2,230},{0x09BC,1,7},{0x09CD,1,9},{0x09FE,1,230},{0x0A3C,1,7},{0x0A4D,1,9},{0x0ABC,1,7},
2281
  {0x0ACD,1,9},{0x0B3C,1,7},{0x0B4D,1,9},{0x0BCD,1,9},{0x0C3C,1,7},{0x0C4D,1,9},{0x0C55,1,84},{0x0C56,1,91},
2282
  {0x0CBC,1,7},{0x0CCD,1,9},{0x0D3B,2,9},{0x0D4D,1,9},{0x0DCA,1,9},{0x0E38,2,103},{0x0E3A,1,9},{0x0E48,4,107},
2283
  {0x0EB8,2,118},{0x0EBA,1,9},{0x0EC8,4,122},{0x0F18,2,220},{0x0F35,1,220},{0x0F37,1,220},{0x0F39,1,216},{0x0F71,1,129},
2284
  {0x0F72,1,130},{0x0F74,1,132},{0x0F7A,4,130},{0x0F80,1,130},{0x0F82,2,230},{0x0F84,1,9},{0x0F86,2,230},{0x0FC6,1,220},
2285
  {0x1037,1,7},{0x1039,2,9},{0x108D,1,220},{0x135D,3,230},{0x1714,2,9},{0x1734,1,9},{0x17D2,1,9},{0x17DD,1,230},
2286
  {0x18A9,1,228},{0x1939,1,222},{0x193A,1,230},{0x193B,1,220},{0x1A17,1,230},{0x1A18,1,220},{0x1A60,1,9},{0x1A75,8,230},
2287
  {0x1A7F,1,220},{0x1AB0,5,230},{0x1AB5,6,220},{0x1ABB,2,230},{0x1ABD,1,220},{0x1ABF,2,220},{0x1AC1,2,230},{0x1AC3,2,220},
2288
  {0x1AC5,5,230},{0x1ACA,1,220},{0x1ACB,18,230},{0x1ADD,1,220},{0x1AE0,6,230},{0x1AE6,1,220},{0x1AE7,4,230},{0x1AEB,1,234},
2289
  {0x1B34,1,7},{0x1B44,1,9},{0x1B6B,1,230},{0x1B6C,1,220},{0x1B6D,7,230},{0x1BAA,2,9},{0x1BE6,1,7},{0x1BF2,2,9},
2290
  {0x1C37,1,7},{0x1CD0,3,230},{0x1CD4,1,1},{0x1CD5,5,220},{0x1CDA,2,230},{0x1CDC,4,220},{0x1CE0,1,230},{0x1CE2,7,1},
2291
  {0x1CED,1,220},{0x1CF4,1,230},{0x1CF8,2,230},{0x1DC0,2,230},{0x1DC2,1,220},{0x1DC3,7,230},{0x1DCA,1,220},{0x1DCB,2,230},
2292
  {0x1DCD,1,234},{0x1DCE,1,214},{0x1DCF,1,220},{0x1DD0,1,202},{0x1DD1,37,230},{0x1DF6,1,232},{0x1DF7,2,228},{0x1DF9,1,220},
2293
  {0x1DFA,1,218},{0x1DFB,1,230},{0x1DFC,1,233},{0x1DFD,1,220},{0x1DFE,1,230},{0x1DFF,1,220},{0x20D0,2,230},{0x20D2,2,1},
2294
  {0x20D4,4,230},{0x20D8,3,1},{0x20DB,2,230},{0x20E1,1,230},{0x20E5,2,1},{0x20E7,1,230},{0x20E8,1,220},{0x20E9,1,230},
2295
  {0x20EA,2,1},{0x20EC,4,220},{0x20F0,1,230},{0x2CEF,3,230},{0x2D7F,1,9},{0x2DE0,32,230},{0x302A,1,218},{0x302B,1,228},
2296
  {0x302C,1,232},{0x302D,1,222},{0x302E,2,224},{0x3099,2,8},{0xA66F,1,230},{0xA674,10,230},{0xA69E,2,230},{0xA6F0,2,230},
2297
  {0xA806,1,9},{0xA82C,1,9},{0xA8C4,1,9},{0xA8E0,18,230},{0xA92B,3,220},{0xA953,1,9},{0xA9B3,1,7},{0xA9C0,1,9},
2298
  {0xAAB0,1,230},{0xAAB2,2,230},{0xAAB4,1,220},{0xAAB7,2,230},{0xAABE,2,230},{0xAAC1,1,230},{0xAAF6,1,9},{0xABED,1,9},
2299
  {0xFB1E,1,26},{0xFE20,7,230},{0xFE27,7,220},{0xFE2E,2,230},
2300
};
2301
0
#define mxCombinationCount1 103
2302
static const txCombination gxCombinationIndex1[mxCombinationCount1] ICACHE_XS6RO_ATTR = {
2303
  {0x01FD,1,220},{0x02E0,1,220},{0x0376,5,230},{0x0A0D,1,220},{0x0A0F,1,230},{0x0A38,1,230},{0x0A39,1,1},{0x0A3A,1,220},
2304
  {0x0A3F,1,9},{0x0AE5,1,230},{0x0AE6,1,220},{0x0D24,4,230},{0x0D69,5,230},{0x0EAB,2,230},{0x0EFA,2,220},{0x0EFD,3,220},
2305
  {0x0F46,2,220},{0x0F48,3,230},{0x0F4B,1,220},{0x0F4C,1,230},{0x0F4D,4,220},{0x0F82,1,230},{0x0F83,1,220},{0x0F84,1,230},
2306
  {0x0F85,1,220},{0x1046,1,9},{0x1070,1,9},{0x107F,1,9},{0x10B9,1,9},{0x10BA,1,7},{0x1100,3,230},{0x1133,2,9},
2307
  {0x1173,1,7},{0x11C0,1,9},{0x11CA,1,7},{0x1235,1,9},{0x1236,1,7},{0x12E9,1,7},{0x12EA,1,9},{0x133B,2,7},
2308
  {0x134D,1,9},{0x1366,7,230},{0x1370,5,230},{0x13CE,3,9},{0x1442,1,9},{0x1446,1,7},{0x145E,1,230},{0x14C2,1,9},
2309
  {0x14C3,1,7},{0x15BF,1,9},{0x15C0,1,7},{0x163F,1,9},{0x16B6,1,9},{0x16B7,1,7},{0x172B,1,9},{0x1839,1,9},
2310
  {0x183A,1,7},{0x193D,2,9},{0x1943,1,7},{0x19E0,1,9},{0x1A34,1,9},{0x1A47,1,9},{0x1A99,1,9},{0x1C3F,1,9},
2311
  {0x1D42,1,7},{0x1D44,2,9},{0x1D97,1,9},{0x1F41,2,9},{0x612F,1,9},{0x6AF0,5,1},{0x6B30,7,230},{0x6FF0,2,6},
2312
  {0xBC9E,1,1},{0xD165,2,216},{0xD167,3,1},{0xD16D,1,226},{0xD16E,5,216},{0xD17B,8,220},{0xD185,5,230},{0xD18A,2,220},
2313
  {0xD1AA,4,230},{0xD242,3,230},{0xE000,7,230},{0xE008,17,230},{0xE01B,7,230},{0xE023,2,230},{0xE026,5,230},{0xE08F,1,230},
2314
  {0xE130,7,230},{0xE2AE,1,230},{0xE2EC,4,230},{0xE4EC,2,232},{0xE4EE,1,220},{0xE4EF,1,230},{0xE5EE,1,230},{0xE5EF,1,220},
2315
  {0xE6E3,1,230},{0xE6E6,1,230},{0xE6EE,2,230},{0xE6F5,1,230},{0xE8D0,7,220},{0xE944,6,230},{0xE94A,1,7},
2316
};
2317
#define mxCompositionSize0 1860
2318
static const txU2 gxCompositionData0[mxCompositionSize0] ICACHE_XS6RO_ATTR = {
2319
  0x0041,0x00C0,0x0045,0x00C8,0x0049,0x00CC,0x004E,0x01F8,0x004F,0x00D2,0x0055,0x00D9,0x0057,0x1E80,0x0059,0x1EF2,0x0061,0x00E0,0x0065,0x00E8,0x0069,0x00EC,0x006E,0x01F9,0x006F,0x00F2,0x0075,0x00F9,0x0077,0x1E81,0x0079,0x1EF3,
2320
  0x00A8,0x1FED,0x00C2,0x1EA6,0x00CA,0x1EC0,0x00D4,0x1ED2,0x00DC,0x01DB,0x00E2,0x1EA7,0x00EA,0x1EC1,0x00F4,0x1ED3,0x00FC,0x01DC,0x0102,0x1EB0,0x0103,0x1EB1,0x0112,0x1E14,0x0113,0x1E15,0x014C,0x1E50,0x014D,0x1E51,0x01A0,0x1EDC,
2321
  0x01A1,0x1EDD,0x01AF,0x1EEA,0x01B0,0x1EEB,0x0391,0x1FBA,0x0395,0x1FC8,0x0397,0x1FCA,0x0399,0x1FDA,0x039F,0x1FF8,0x03A5,0x1FEA,0x03A9,0x1FFA,0x03B1,0x1F70,0x03B5,0x1F72,0x03B7,0x1F74,0x03B9,0x1F76,0x03BF,0x1F78,0x03C5,0x1F7A,
2322
  0x03C9,0x1F7C,0x03CA,0x1FD2,0x03CB,0x1FE2,0x0415,0x0400,0x0418,0x040D,0x0435,0x0450,0x0438,0x045D,0x1F00,0x1F02,0x1F01,0x1F03,0x1F08,0x1F0A,0x1F09,0x1F0B,0x1F10,0x1F12,0x1F11,0x1F13,0x1F18,0x1F1A,0x1F19,0x1F1B,0x1F20,0x1F22,
2323
  0x1F21,0x1F23,0x1F28,0x1F2A,0x1F29,0x1F2B,0x1F30,0x1F32,0x1F31,0x1F33,0x1F38,0x1F3A,0x1F39,0x1F3B,0x1F40,0x1F42,0x1F41,0x1F43,0x1F48,0x1F4A,0x1F49,0x1F4B,0x1F50,0x1F52,0x1F51,0x1F53,0x1F59,0x1F5B,0x1F60,0x1F62,0x1F61,0x1F63,
2324
  0x1F68,0x1F6A,0x1F69,0x1F6B,0x1FBF,0x1FCD,0x1FFE,0x1FDD,0x0041,0x00C1,0x0043,0x0106,0x0045,0x00C9,0x0047,0x01F4,0x0049,0x00CD,0x004B,0x1E30,0x004C,0x0139,0x004D,0x1E3E,0x004E,0x0143,0x004F,0x00D3,0x0050,0x1E54,0x0052,0x0154,
2325
  0x0053,0x015A,0x0055,0x00DA,0x0057,0x1E82,0x0059,0x00DD,0x005A,0x0179,0x0061,0x00E1,0x0063,0x0107,0x0065,0x00E9,0x0067,0x01F5,0x0069,0x00ED,0x006B,0x1E31,0x006C,0x013A,0x006D,0x1E3F,0x006E,0x0144,0x006F,0x00F3,0x0070,0x1E55,
2326
  0x0072,0x0155,0x0073,0x015B,0x0075,0x00FA,0x0077,0x1E83,0x0079,0x00FD,0x007A,0x017A,0x00A8,0x0385,0x00C2,0x1EA4,0x00C5,0x01FA,0x00C6,0x01FC,0x00C7,0x1E08,0x00CA,0x1EBE,0x00CF,0x1E2E,0x00D4,0x1ED0,0x00D5,0x1E4C,0x00D8,0x01FE,
2327
  0x00DC,0x01D7,0x00E2,0x1EA5,0x00E5,0x01FB,0x00E6,0x01FD,0x00E7,0x1E09,0x00EA,0x1EBF,0x00EF,0x1E2F,0x00F4,0x1ED1,0x00F5,0x1E4D,0x00F8,0x01FF,0x00FC,0x01D8,0x0102,0x1EAE,0x0103,0x1EAF,0x0112,0x1E16,0x0113,0x1E17,0x014C,0x1E52,
2328
  0x014D,0x1E53,0x0168,0x1E78,0x0169,0x1E79,0x01A0,0x1EDA,0x01A1,0x1EDB,0x01AF,0x1EE8,0x01B0,0x1EE9,0x0391,0x0386,0x0395,0x0388,0x0397,0x0389,0x0399,0x038A,0x039F,0x038C,0x03A5,0x038E,0x03A9,0x038F,0x03B1,0x03AC,0x03B5,0x03AD,
2329
  0x03B7,0x03AE,0x03B9,0x03AF,0x03BF,0x03CC,0x03C5,0x03CD,0x03C9,0x03CE,0x03CA,0x0390,0x03CB,0x03B0,0x03D2,0x03D3,0x0413,0x0403,0x041A,0x040C,0x0433,0x0453,0x043A,0x045C,0x1F00,0x1F04,0x1F01,0x1F05,0x1F08,0x1F0C,0x1F09,0x1F0D,
2330
  0x1F10,0x1F14,0x1F11,0x1F15,0x1F18,0x1F1C,0x1F19,0x1F1D,0x1F20,0x1F24,0x1F21,0x1F25,0x1F28,0x1F2C,0x1F29,0x1F2D,0x1F30,0x1F34,0x1F31,0x1F35,0x1F38,0x1F3C,0x1F39,0x1F3D,0x1F40,0x1F44,0x1F41,0x1F45,0x1F48,0x1F4C,0x1F49,0x1F4D,
2331
  0x1F50,0x1F54,0x1F51,0x1F55,0x1F59,0x1F5D,0x1F60,0x1F64,0x1F61,0x1F65,0x1F68,0x1F6C,0x1F69,0x1F6D,0x1FBF,0x1FCE,0x1FFE,0x1FDE,0x0041,0x00C2,0x0043,0x0108,0x0045,0x00CA,0x0047,0x011C,0x0048,0x0124,0x0049,0x00CE,0x004A,0x0134,
2332
  0x004F,0x00D4,0x0053,0x015C,0x0055,0x00DB,0x0057,0x0174,0x0059,0x0176,0x005A,0x1E90,0x0061,0x00E2,0x0063,0x0109,0x0065,0x00EA,0x0067,0x011D,0x0068,0x0125,0x0069,0x00EE,0x006A,0x0135,0x006F,0x00F4,0x0073,0x015D,0x0075,0x00FB,
2333
  0x0077,0x0175,0x0079,0x0177,0x007A,0x1E91,0x1EA0,0x1EAC,0x1EA1,0x1EAD,0x1EB8,0x1EC6,0x1EB9,0x1EC7,0x1ECC,0x1ED8,0x1ECD,0x1ED9,0x0041,0x00C3,0x0045,0x1EBC,0x0049,0x0128,0x004E,0x00D1,0x004F,0x00D5,0x0055,0x0168,0x0056,0x1E7C,
2334
  0x0059,0x1EF8,0x0061,0x00E3,0x0065,0x1EBD,0x0069,0x0129,0x006E,0x00F1,0x006F,0x00F5,0x0075,0x0169,0x0076,0x1E7D,0x0079,0x1EF9,0x00C2,0x1EAA,0x00CA,0x1EC4,0x00D4,0x1ED6,0x00E2,0x1EAB,0x00EA,0x1EC5,0x00F4,0x1ED7,0x0102,0x1EB4,
2335
  0x0103,0x1EB5,0x01A0,0x1EE0,0x01A1,0x1EE1,0x01AF,0x1EEE,0x01B0,0x1EEF,0x0041,0x0100,0x0045,0x0112,0x0047,0x1E20,0x0049,0x012A,0x004F,0x014C,0x0055,0x016A,0x0059,0x0232,0x0061,0x0101,0x0065,0x0113,0x0067,0x1E21,0x0069,0x012B,
2336
  0x006F,0x014D,0x0075,0x016B,0x0079,0x0233,0x00C4,0x01DE,0x00C6,0x01E2,0x00D5,0x022C,0x00D6,0x022A,0x00DC,0x01D5,0x00E4,0x01DF,0x00E6,0x01E3,0x00F5,0x022D,0x00F6,0x022B,0x00FC,0x01D6,0x01EA,0x01EC,0x01EB,0x01ED,0x0226,0x01E0,
2337
  0x0227,0x01E1,0x022E,0x0230,0x022F,0x0231,0x0391,0x1FB9,0x0399,0x1FD9,0x03A5,0x1FE9,0x03B1,0x1FB1,0x03B9,0x1FD1,0x03C5,0x1FE1,0x0418,0x04E2,0x0423,0x04EE,0x0438,0x04E3,0x0443,0x04EF,0x1E36,0x1E38,0x1E37,0x1E39,0x1E5A,0x1E5C,
2338
  0x1E5B,0x1E5D,0x0041,0x0102,0x0045,0x0114,0x0047,0x011E,0x0049,0x012C,0x004F,0x014E,0x0055,0x016C,0x0061,0x0103,0x0065,0x0115,0x0067,0x011F,0x0069,0x012D,0x006F,0x014F,0x0075,0x016D,0x0228,0x1E1C,0x0229,0x1E1D,0x0391,0x1FB8,
2339
  0x0399,0x1FD8,0x03A5,0x1FE8,0x03B1,0x1FB0,0x03B9,0x1FD0,0x03C5,0x1FE0,0x0410,0x04D0,0x0415,0x04D6,0x0416,0x04C1,0x0418,0x0419,0x0423,0x040E,0x0430,0x04D1,0x0435,0x04D7,0x0436,0x04C2,0x0438,0x0439,0x0443,0x045E,0x1EA0,0x1EB6,
2340
  0x1EA1,0x1EB7,0x0041,0x0226,0x0042,0x1E02,0x0043,0x010A,0x0044,0x1E0A,0x0045,0x0116,0x0046,0x1E1E,0x0047,0x0120,0x0048,0x1E22,0x0049,0x0130,0x004D,0x1E40,0x004E,0x1E44,0x004F,0x022E,0x0050,0x1E56,0x0052,0x1E58,0x0053,0x1E60,
2341
  0x0054,0x1E6A,0x0057,0x1E86,0x0058,0x1E8A,0x0059,0x1E8E,0x005A,0x017B,0x0061,0x0227,0x0062,0x1E03,0x0063,0x010B,0x0064,0x1E0B,0x0065,0x0117,0x0066,0x1E1F,0x0067,0x0121,0x0068,0x1E23,0x006D,0x1E41,0x006E,0x1E45,0x006F,0x022F,
2342
  0x0070,0x1E57,0x0072,0x1E59,0x0073,0x1E61,0x0074,0x1E6B,0x0077,0x1E87,0x0078,0x1E8B,0x0079,0x1E8F,0x007A,0x017C,0x015A,0x1E64,0x015B,0x1E65,0x0160,0x1E66,0x0161,0x1E67,0x017F,0x1E9B,0x1E62,0x1E68,0x1E63,0x1E69,0x05D2,0x05C9,
2343
  0x05DA,0x05E4,0x0041,0x00C4,0x0045,0x00CB,0x0048,0x1E26,0x0049,0x00CF,0x004F,0x00D6,0x0055,0x00DC,0x0057,0x1E84,0x0058,0x1E8C,0x0059,0x0178,0x0061,0x00E4,0x0065,0x00EB,0x0068,0x1E27,0x0069,0x00EF,0x006F,0x00F6,0x0074,0x1E97,
2344
  0x0075,0x00FC,0x0077,0x1E85,0x0078,0x1E8D,0x0079,0x00FF,0x00D5,0x1E4E,0x00F5,0x1E4F,0x016A,0x1E7A,0x016B,0x1E7B,0x0399,0x03AA,0x03A5,0x03AB,0x03B9,0x03CA,0x03C5,0x03CB,0x03D2,0x03D4,0x0406,0x0407,0x0410,0x04D2,0x0415,0x0401,
2345
  0x0416,0x04DC,0x0417,0x04DE,0x0418,0x04E4,0x041E,0x04E6,0x0423,0x04F0,0x0427,0x04F4,0x042B,0x04F8,0x042D,0x04EC,0x0430,0x04D3,0x0435,0x0451,0x0436,0x04DD,0x0437,0x04DF,0x0438,0x04E5,0x043E,0x04E7,0x0443,0x04F1,0x0447,0x04F5,
2346
  0x044B,0x04F9,0x044D,0x04ED,0x0456,0x0457,0x04D8,0x04DA,0x04D9,0x04DB,0x04E8,0x04EA,0x04E9,0x04EB,0x0041,0x1EA2,0x0045,0x1EBA,0x0049,0x1EC8,0x004F,0x1ECE,0x0055,0x1EE6,0x0059,0x1EF6,0x0061,0x1EA3,0x0065,0x1EBB,0x0069,0x1EC9,
2347
  0x006F,0x1ECF,0x0075,0x1EE7,0x0079,0x1EF7,0x00C2,0x1EA8,0x00CA,0x1EC2,0x00D4,0x1ED4,0x00E2,0x1EA9,0x00EA,0x1EC3,0x00F4,0x1ED5,0x0102,0x1EB2,0x0103,0x1EB3,0x01A0,0x1EDE,0x01A1,0x1EDF,0x01AF,0x1EEC,0x01B0,0x1EED,0x0041,0x00C5,
2348
  0x0055,0x016E,0x0061,0x00E5,0x0075,0x016F,0x0077,0x1E98,0x0079,0x1E99,0x004F,0x0150,0x0055,0x0170,0x006F,0x0151,0x0075,0x0171,0x0423,0x04F2,0x0443,0x04F3,0x0041,0x01CD,0x0043,0x010C,0x0044,0x010E,0x0045,0x011A,0x0047,0x01E6,
2349
  0x0048,0x021E,0x0049,0x01CF,0x004B,0x01E8,0x004C,0x013D,0x004E,0x0147,0x004F,0x01D1,0x0052,0x0158,0x0053,0x0160,0x0054,0x0164,0x0055,0x01D3,0x005A,0x017D,0x0061,0x01CE,0x0063,0x010D,0x0064,0x010F,0x0065,0x011B,0x0067,0x01E7,
2350
  0x0068,0x021F,0x0069,0x01D0,0x006A,0x01F0,0x006B,0x01E9,0x006C,0x013E,0x006E,0x0148,0x006F,0x01D2,0x0072,0x0159,0x0073,0x0161,0x0074,0x0165,0x0075,0x01D4,0x007A,0x017E,0x00DC,0x01D9,0x00FC,0x01DA,0x01B7,0x01EE,0x0292,0x01EF,
2351
  0x0041,0x0200,0x0045,0x0204,0x0049,0x0208,0x004F,0x020C,0x0052,0x0210,0x0055,0x0214,0x0061,0x0201,0x0065,0x0205,0x0069,0x0209,0x006F,0x020D,0x0072,0x0211,0x0075,0x0215,0x0474,0x0476,0x0475,0x0477,0x0041,0x0202,0x0045,0x0206,
2352
  0x0049,0x020A,0x004F,0x020E,0x0052,0x0212,0x0055,0x0216,0x0061,0x0203,0x0065,0x0207,0x0069,0x020B,0x006F,0x020F,0x0072,0x0213,0x0075,0x0217,0x0391,0x1F08,0x0395,0x1F18,0x0397,0x1F28,0x0399,0x1F38,0x039F,0x1F48,0x03A9,0x1F68,
2353
  0x03B1,0x1F00,0x03B5,0x1F10,0x03B7,0x1F20,0x03B9,0x1F30,0x03BF,0x1F40,0x03C1,0x1FE4,0x03C5,0x1F50,0x03C9,0x1F60,0x0391,0x1F09,0x0395,0x1F19,0x0397,0x1F29,0x0399,0x1F39,0x039F,0x1F49,0x03A1,0x1FEC,0x03A5,0x1F59,0x03A9,0x1F69,
2354
  0x03B1,0x1F01,0x03B5,0x1F11,0x03B7,0x1F21,0x03B9,0x1F31,0x03BF,0x1F41,0x03C1,0x1FE5,0x03C5,0x1F51,0x03C9,0x1F61,0x004F,0x01A0,0x0055,0x01AF,0x006F,0x01A1,0x0075,0x01B0,0x0041,0x1EA0,0x0042,0x1E04,0x0044,0x1E0C,0x0045,0x1EB8,
2355
  0x0048,0x1E24,0x0049,0x1ECA,0x004B,0x1E32,0x004C,0x1E36,0x004D,0x1E42,0x004E,0x1E46,0x004F,0x1ECC,0x0052,0x1E5A,0x0053,0x1E62,0x0054,0x1E6C,0x0055,0x1EE4,0x0056,0x1E7E,0x0057,0x1E88,0x0059,0x1EF4,0x005A,0x1E92,0x0061,0x1EA1,
2356
  0x0062,0x1E05,0x0064,0x1E0D,0x0065,0x1EB9,0x0068,0x1E25,0x0069,0x1ECB,0x006B,0x1E33,0x006C,0x1E37,0x006D,0x1E43,0x006E,0x1E47,0x006F,0x1ECD,0x0072,0x1E5B,0x0073,0x1E63,0x0074,0x1E6D,0x0075,0x1EE5,0x0076,0x1E7F,0x0077,0x1E89,
2357
  0x0079,0x1EF5,0x007A,0x1E93,0x01A0,0x1EE2,0x01A1,0x1EE3,0x01AF,0x1EF0,0x01B0,0x1EF1,0x0055,0x1E72,0x0075,0x1E73,0x0041,0x1E00,0x0061,0x1E01,0x0053,0x0218,0x0054,0x021A,0x0073,0x0219,0x0074,0x021B,0x0043,0x00C7,0x0044,0x1E10,
2358
  0x0045,0x0228,0x0047,0x0122,0x0048,0x1E28,0x004B,0x0136,0x004C,0x013B,0x004E,0x0145,0x0052,0x0156,0x0053,0x015E,0x0054,0x0162,0x0063,0x00E7,0x0064,0x1E11,0x0065,0x0229,0x0067,0x0123,0x0068,0x1E29,0x006B,0x0137,0x006C,0x013C,
2359
  0x006E,0x0146,0x0072,0x0157,0x0073,0x015F,0x0074,0x0163,0x0041,0x0104,0x0045,0x0118,0x0049,0x012E,0x004F,0x01EA,0x0055,0x0172,0x0061,0x0105,0x0065,0x0119,0x0069,0x012F,0x006F,0x01EB,0x0075,0x0173,0x0044,0x1E12,0x0045,0x1E18,
2360
  0x004C,0x1E3C,0x004E,0x1E4A,0x0054,0x1E70,0x0055,0x1E76,0x0064,0x1E13,0x0065,0x1E19,0x006C,0x1E3D,0x006E,0x1E4B,0x0074,0x1E71,0x0075,0x1E77,0x0048,0x1E2A,0x0068,0x1E2B,0x0045,0x1E1A,0x0049,0x1E2C,0x0055,0x1E74,0x0065,0x1E1B,
2361
  0x0069,0x1E2D,0x0075,0x1E75,0x0042,0x1E06,0x0044,0x1E0E,0x004B,0x1E34,0x004C,0x1E3A,0x004E,0x1E48,0x0052,0x1E5E,0x0054,0x1E6E,0x005A,0x1E94,0x0062,0x1E07,0x0064,0x1E0F,0x0068,0x1E96,0x006B,0x1E35,0x006C,0x1E3B,0x006E,0x1E49,
2362
  0x0072,0x1E5F,0x0074,0x1E6F,0x007A,0x1E95,0x003C,0x226E,0x003D,0x2260,0x003E,0x226F,0x2190,0x219A,0x2192,0x219B,0x2194,0x21AE,0x21D0,0x21CD,0x21D2,0x21CF,0x21D4,0x21CE,0x2203,0x2204,0x2208,0x2209,0x220B,0x220C,0x2223,0x2224,
2363
  0x2225,0x2226,0x223C,0x2241,0x2243,0x2244,0x2245,0x2247,0x2248,0x2249,0x224D,0x226D,0x2261,0x2262,0x2264,0x2270,0x2265,0x2271,0x2272,0x2274,0x2273,0x2275,0x2276,0x2278,0x2277,0x2279,0x227A,0x2280,0x227B,0x2281,0x227C,0x22E0,
2364
  0x227D,0x22E1,0x2282,0x2284,0x2283,0x2285,0x2286,0x2288,0x2287,0x2289,0x2291,0x22E2,0x2292,0x22E3,0x22A2,0x22AC,0x22A8,0x22AD,0x22A9,0x22AE,0x22AB,0x22AF,0x22B2,0x22EA,0x22B3,0x22EB,0x22B4,0x22EC,0x22B5,0x22ED,0x00A8,0x1FC1,
2365
  0x03B1,0x1FB6,0x03B7,0x1FC6,0x03B9,0x1FD6,0x03C5,0x1FE6,0x03C9,0x1FF6,0x03CA,0x1FD7,0x03CB,0x1FE7,0x1F00,0x1F06,0x1F01,0x1F07,0x1F08,0x1F0E,0x1F09,0x1F0F,0x1F20,0x1F26,0x1F21,0x1F27,0x1F28,0x1F2E,0x1F29,0x1F2F,0x1F30,0x1F36,
2366
  0x1F31,0x1F37,0x1F38,0x1F3E,0x1F39,0x1F3F,0x1F50,0x1F56,0x1F51,0x1F57,0x1F59,0x1F5F,0x1F60,0x1F66,0x1F61,0x1F67,0x1F68,0x1F6E,0x1F69,0x1F6F,0x1FBF,0x1FCF,0x1FFE,0x1FDF,0x0391,0x1FBC,0x0397,0x1FCC,0x03A9,0x1FFC,0x03AC,0x1FB4,
2367
  0x03AE,0x1FC4,0x03B1,0x1FB3,0x03B7,0x1FC3,0x03C9,0x1FF3,0x03CE,0x1FF4,0x1F00,0x1F80,0x1F01,0x1F81,0x1F02,0x1F82,0x1F03,0x1F83,0x1F04,0x1F84,0x1F05,0x1F85,0x1F06,0x1F86,0x1F07,0x1F87,0x1F08,0x1F88,0x1F09,0x1F89,0x1F0A,0x1F8A,
2368
  0x1F0B,0x1F8B,0x1F0C,0x1F8C,0x1F0D,0x1F8D,0x1F0E,0x1F8E,0x1F0F,0x1F8F,0x1F20,0x1F90,0x1F21,0x1F91,0x1F22,0x1F92,0x1F23,0x1F93,0x1F24,0x1F94,0x1F25,0x1F95,0x1F26,0x1F96,0x1F27,0x1F97,0x1F28,0x1F98,0x1F29,0x1F99,0x1F2A,0x1F9A,
2369
  0x1F2B,0x1F9B,0x1F2C,0x1F9C,0x1F2D,0x1F9D,0x1F2E,0x1F9E,0x1F2F,0x1F9F,0x1F60,0x1FA0,0x1F61,0x1FA1,0x1F62,0x1FA2,0x1F63,0x1FA3,0x1F64,0x1FA4,0x1F65,0x1FA5,0x1F66,0x1FA6,0x1F67,0x1FA7,0x1F68,0x1FA8,0x1F69,0x1FA9,0x1F6A,0x1FAA,
2370
  0x1F6B,0x1FAB,0x1F6C,0x1FAC,0x1F6D,0x1FAD,0x1F6E,0x1FAE,0x1F6F,0x1FAF,0x1F70,0x1FB2,0x1F74,0x1FC2,0x1F7C,0x1FF2,0x1FB6,0x1FB7,0x1FC6,0x1FC7,0x1FF6,0x1FF7,0x0627,0x0622,0x0627,0x0623,0x0648,0x0624,0x064A,0x0626,0x06C1,0x06C2,
2371
  0x06D2,0x06D3,0x06D5,0x06C0,0x0627,0x0625,0x0928,0x0929,0x0930,0x0931,0x0933,0x0934,0x09C7,0x09CB,0x09C7,0x09CC,0x0B47,0x0B4B,0x0B47,0x0B48,0x0B47,0x0B4C,0x0BC6,0x0BCA,0x0BC7,0x0BCB,0x0B92,0x0B94,0x0BC6,0x0BCC,0x0C46,0x0C48,
2372
  0x0CC6,0x0CCA,0x0CBF,0x0CC0,0x0CC6,0x0CC7,0x0CCA,0x0CCB,0x0CC6,0x0CC8,0x0D46,0x0D4A,0x0D47,0x0D4B,0x0D46,0x0D4C,0x0DD9,0x0DDA,0x0DDC,0x0DDD,0x0DD9,0x0DDC,0x0DD9,0x0DDE,0x1025,0x1026,0x1B05,0x1B06,0x1B07,0x1B08,0x1B09,0x1B0A,
2373
  0x1B0B,0x1B0C,0x1B0D,0x1B0E,0x1B11,0x1B12,0x1B3A,0x1B3B,0x1B3C,0x1B3D,0x1B3E,0x1B40,0x1B3F,0x1B41,0x1B42,0x1B43,0x3046,0x3094,0x304B,0x304C,0x304D,0x304E,0x304F,0x3050,0x3051,0x3052,0x3053,0x3054,0x3055,0x3056,0x3057,0x3058,
2374
  0x3059,0x305A,0x305B,0x305C,0x305D,0x305E,0x305F,0x3060,0x3061,0x3062,0x3064,0x3065,0x3066,0x3067,0x3068,0x3069,0x306F,0x3070,0x3072,0x3073,0x3075,0x3076,0x3078,0x3079,0x307B,0x307C,0x309D,0x309E,0x30A6,0x30F4,0x30AB,0x30AC,
2375
  0x30AD,0x30AE,0x30AF,0x30B0,0x30B1,0x30B2,0x30B3,0x30B4,0x30B5,0x30B6,0x30B7,0x30B8,0x30B9,0x30BA,0x30BB,0x30BC,0x30BD,0x30BE,0x30BF,0x30C0,0x30C1,0x30C2,0x30C4,0x30C5,0x30C6,0x30C7,0x30C8,0x30C9,0x30CF,0x30D0,0x30D2,0x30D3,
2376
  0x30D5,0x30D6,0x30D8,0x30D9,0x30DB,0x30DC,0x30EF,0x30F7,0x30F0,0x30F8,0x30F1,0x30F9,0x30F2,0x30FA,0x30FD,0x30FE,0x306F,0x3071,0x3072,0x3074,0x3075,0x3077,0x3078,0x307A,0x307B,0x307D,0x30CF,0x30D1,0x30D2,0x30D4,0x30D5,0x30D7,
2377
  0x30D8,0x30DA,0x30DB,0x30DD,
2378
};
2379
0
#define mxCompositionCount0 110
2380
static const txU2 gxCompositionIndex0[mxCompositionCount0] ICACHE_XS6RO_ATTR = {
2381
  0x0300,0,0x0301,84,0x0302,201,0x0303,233,0x0304,261,0x0306,305,0x0307,337,0x0308,385,0x0309,439,0x030A,463,0x030B,469,0x030C,475,0x030F,512,0x0311,526,0x0313,538,0x0314,552,
2382
  0x031B,568,0x0323,572,0x0324,614,0x0325,616,0x0326,618,0x0327,622,0x0328,644,0x032D,654,0x032E,666,0x0330,668,0x0331,674,0x0338,691,0x0342,735,0x0345,764,0x0653,827,0x0654,828,
2383
  0x0655,834,0x093C,835,0x09BE,838,0x09D7,839,0x0B3E,840,0x0B56,841,0x0B57,842,0x0BBE,843,0x0BD7,845,0x0C56,847,0x0CC2,848,0x0CD5,849,0x0CD6,852,0x0D3E,853,0x0D57,855,0x0DCA,856,
2384
  0x0DCF,858,0x0DDF,859,0x102E,860,0x1B35,861,0x3099,872,0x309A,920,0xFFFF,930,
2385
};
2386
#define mxCompositionSize1 62
2387
static const txU2 gxCompositionData1[mxCompositionSize1] ICACHE_XS6RO_ATTR = {
2388
  0x1099,0x109A,0x109B,0x109C,0x10A5,0x10AB,0x1131,0x112E,0x1132,0x112F,0x1347,0x134B,0x1347,0x134C,0x13C2,0x13C7,0x1384,0x1385,0x138B,0x138E,0x13C2,0x13C5,0x1382,0x1383,0x1390,0x1391,0x13C2,0x13C8,0x14B9,0x14BC,0x14B9,0x14BB,
2389
  0x14B9,0x14BE,0x15B8,0x15BA,0x15B9,0x15BB,0x1935,0x1938,0x611E,0x6121,0x611E,0x6123,0x6121,0x6126,0x6122,0x6127,0x6129,0x6124,0x611E,0x6125,0x6121,0x6128,0x611E,0x6122,0x6D63,0x6D69,0x6D67,0x6D68,0x6D69,0x6D6A,
2390
};
2391
0
#define mxCompositionCount1 38
2392
static const txU2 gxCompositionIndex1[mxCompositionCount1] ICACHE_XS6RO_ATTR = {
2393
  0x10BA,0,0x1127,3,0x133E,5,0x1357,6,0x13B8,7,0x13BB,8,0x13C2,9,0x13C9,11,0x14B0,14,0x14BA,15,0x14BD,16,0x15AF,17,0x1930,19,0x611E,20,0x611F,21,0x6120,25,
2394
  0x6129,27,0x6D67,28,0xFFFF,31,
2395
};
2396
#define mxDecompositionSize0 13559
2397
const txU1 gxDecompositionData0[mxDecompositionSize0] ICACHE_XS6RO_ATTR = {
2398
  0x20,0x20,0xcc,0x88,0x61,0x20,0xcc,0x84,0x32,0x33,0x20,0xcc,0x81,0xce,0xbc,0x20,0xcc,0xa7,0x31,0x6f,0x31,0xe2,0x81,0x84,0x34,0x31,0xe2,0x81,0x84,0x32,0x33,0xe2,
2399
  0x81,0x84,0x34,0x41,0xcc,0x80,0x41,0xcc,0x81,0x41,0xcc,0x82,0x41,0xcc,0x83,0x41,0xcc,0x88,0x41,0xcc,0x8a,0x43,0xcc,0xa7,0x45,0xcc,0x80,0x45,0xcc,0x81,0x45,0xcc,
2400
  0x82,0x45,0xcc,0x88,0x49,0xcc,0x80,0x49,0xcc,0x81,0x49,0xcc,0x82,0x49,0xcc,0x88,0x4e,0xcc,0x83,0x4f,0xcc,0x80,0x4f,0xcc,0x81,0x4f,0xcc,0x82,0x4f,0xcc,0x83,0x4f,
2401
  0xcc,0x88,0x55,0xcc,0x80,0x55,0xcc,0x81,0x55,0xcc,0x82,0x55,0xcc,0x88,0x59,0xcc,0x81,0x61,0xcc,0x80,0x61,0xcc,0x81,0x61,0xcc,0x82,0x61,0xcc,0x83,0x61,0xcc,0x88,
2402
  0x61,0xcc,0x8a,0x63,0xcc,0xa7,0x65,0xcc,0x80,0x65,0xcc,0x81,0x65,0xcc,0x82,0x65,0xcc,0x88,0x69,0xcc,0x80,0x69,0xcc,0x81,0x69,0xcc,0x82,0x69,0xcc,0x88,0x6e,0xcc,
2403
  0x83,0x6f,0xcc,0x80,0x6f,0xcc,0x81,0x6f,0xcc,0x82,0x6f,0xcc,0x83,0x6f,0xcc,0x88,0x75,0xcc,0x80,0x75,0xcc,0x81,0x75,0xcc,0x82,0x75,0xcc,0x88,0x79,0xcc,0x81,0x79,
2404
  0xcc,0x88,0x41,0xcc,0x84,0x61,0xcc,0x84,0x41,0xcc,0x86,0x61,0xcc,0x86,0x41,0xcc,0xa8,0x61,0xcc,0xa8,0x43,0xcc,0x81,0x63,0xcc,0x81,0x43,0xcc,0x82,0x63,0xcc,0x82,
2405
  0x43,0xcc,0x87,0x63,0xcc,0x87,0x43,0xcc,0x8c,0x63,0xcc,0x8c,0x44,0xcc,0x8c,0x64,0xcc,0x8c,0x45,0xcc,0x84,0x65,0xcc,0x84,0x45,0xcc,0x86,0x65,0xcc,0x86,0x45,0xcc,
2406
  0x87,0x65,0xcc,0x87,0x45,0xcc,0xa8,0x65,0xcc,0xa8,0x45,0xcc,0x8c,0x65,0xcc,0x8c,0x47,0xcc,0x82,0x67,0xcc,0x82,0x47,0xcc,0x86,0x67,0xcc,0x86,0x47,0xcc,0x87,0x67,
2407
  0xcc,0x87,0x47,0xcc,0xa7,0x67,0xcc,0xa7,0x48,0xcc,0x82,0x68,0xcc,0x82,0x49,0xcc,0x83,0x69,0xcc,0x83,0x49,0xcc,0x84,0x69,0xcc,0x84,0x49,0xcc,0x86,0x69,0xcc,0x86,
2408
  0x49,0xcc,0xa8,0x69,0xcc,0xa8,0x49,0xcc,0x87,0x49,0x4a,0x69,0x6a,0x4a,0xcc,0x82,0x6a,0xcc,0x82,0x4b,0xcc,0xa7,0x6b,0xcc,0xa7,0x4c,0xcc,0x81,0x6c,0xcc,0x81,0x4c,
2409
  0xcc,0xa7,0x6c,0xcc,0xa7,0x4c,0xcc,0x8c,0x6c,0xcc,0x8c,0x4c,0xc2,0xb7,0x6c,0xc2,0xb7,0x4e,0xcc,0x81,0x6e,0xcc,0x81,0x4e,0xcc,0xa7,0x6e,0xcc,0xa7,0x4e,0xcc,0x8c,
2410
  0x6e,0xcc,0x8c,0xca,0xbc,0x6e,0x4f,0xcc,0x84,0x6f,0xcc,0x84,0x4f,0xcc,0x86,0x6f,0xcc,0x86,0x4f,0xcc,0x8b,0x6f,0xcc,0x8b,0x52,0xcc,0x81,0x72,0xcc,0x81,0x52,0xcc,
2411
  0xa7,0x72,0xcc,0xa7,0x52,0xcc,0x8c,0x72,0xcc,0x8c,0x53,0xcc,0x81,0x73,0xcc,0x81,0x53,0xcc,0x82,0x73,0xcc,0x82,0x53,0xcc,0xa7,0x73,0xcc,0xa7,0x53,0xcc,0x8c,0x73,
2412
  0xcc,0x8c,0x54,0xcc,0xa7,0x74,0xcc,0xa7,0x54,0xcc,0x8c,0x74,0xcc,0x8c,0x55,0xcc,0x83,0x75,0xcc,0x83,0x55,0xcc,0x84,0x75,0xcc,0x84,0x55,0xcc,0x86,0x75,0xcc,0x86,
2413
  0x55,0xcc,0x8a,0x75,0xcc,0x8a,0x55,0xcc,0x8b,0x75,0xcc,0x8b,0x55,0xcc,0xa8,0x75,0xcc,0xa8,0x57,0xcc,0x82,0x77,0xcc,0x82,0x59,0xcc,0x82,0x79,0xcc,0x82,0x59,0xcc,
2414
  0x88,0x5a,0xcc,0x81,0x7a,0xcc,0x81,0x5a,0xcc,0x87,0x7a,0xcc,0x87,0x5a,0xcc,0x8c,0x7a,0xcc,0x8c,0x73,0x4f,0xcc,0x9b,0x6f,0xcc,0x9b,0x55,0xcc,0x9b,0x75,0xcc,0x9b,
2415
  0x44,0xc5,0xbd,0x44,0xc5,0xbe,0x64,0xc5,0xbe,0x4c,0x4a,0x4c,0x6a,0x6c,0x6a,0x4e,0x4a,0x4e,0x6a,0x6e,0x6a,0x41,0xcc,0x8c,0x61,0xcc,0x8c,0x49,0xcc,0x8c,0x69,0xcc,
2416
  0x8c,0x4f,0xcc,0x8c,0x6f,0xcc,0x8c,0x55,0xcc,0x8c,0x75,0xcc,0x8c,0xc3,0x9c,0xcc,0x84,0xc3,0xbc,0xcc,0x84,0xc3,0x9c,0xcc,0x81,0xc3,0xbc,0xcc,0x81,0xc3,0x9c,0xcc,
2417
  0x8c,0xc3,0xbc,0xcc,0x8c,0xc3,0x9c,0xcc,0x80,0xc3,0xbc,0xcc,0x80,0xc3,0x84,0xcc,0x84,0xc3,0xa4,0xcc,0x84,0xc8,0xa6,0xcc,0x84,0xc8,0xa7,0xcc,0x84,0xc3,0x86,0xcc,
2418
  0x84,0xc3,0xa6,0xcc,0x84,0x47,0xcc,0x8c,0x67,0xcc,0x8c,0x4b,0xcc,0x8c,0x6b,0xcc,0x8c,0x4f,0xcc,0xa8,0x6f,0xcc,0xa8,0xc7,0xaa,0xcc,0x84,0xc7,0xab,0xcc,0x84,0xc6,
2419
  0xb7,0xcc,0x8c,0xca,0x92,0xcc,0x8c,0x6a,0xcc,0x8c,0x44,0x5a,0x44,0x7a,0x64,0x7a,0x47,0xcc,0x81,0x67,0xcc,0x81,0x4e,0xcc,0x80,0x6e,0xcc,0x80,0xc3,0x85,0xcc,0x81,
2420
  0xc3,0xa5,0xcc,0x81,0xc3,0x86,0xcc,0x81,0xc3,0xa6,0xcc,0x81,0xc3,0x98,0xcc,0x81,0xc3,0xb8,0xcc,0x81,0x41,0xcc,0x8f,0x61,0xcc,0x8f,0x41,0xcc,0x91,0x61,0xcc,0x91,
2421
  0x45,0xcc,0x8f,0x65,0xcc,0x8f,0x45,0xcc,0x91,0x65,0xcc,0x91,0x49,0xcc,0x8f,0x69,0xcc,0x8f,0x49,0xcc,0x91,0x69,0xcc,0x91,0x4f,0xcc,0x8f,0x6f,0xcc,0x8f,0x4f,0xcc,
2422
  0x91,0x6f,0xcc,0x91,0x52,0xcc,0x8f,0x72,0xcc,0x8f,0x52,0xcc,0x91,0x72,0xcc,0x91,0x55,0xcc,0x8f,0x75,0xcc,0x8f,0x55,0xcc,0x91,0x75,0xcc,0x91,0x53,0xcc,0xa6,0x73,
2423
  0xcc,0xa6,0x54,0xcc,0xa6,0x74,0xcc,0xa6,0x48,0xcc,0x8c,0x68,0xcc,0x8c,0x41,0xcc,0x87,0x61,0xcc,0x87,0x45,0xcc,0xa7,0x65,0xcc,0xa7,0xc3,0x96,0xcc,0x84,0xc3,0xb6,
2424
  0xcc,0x84,0xc3,0x95,0xcc,0x84,0xc3,0xb5,0xcc,0x84,0x4f,0xcc,0x87,0x6f,0xcc,0x87,0xc8,0xae,0xcc,0x84,0xc8,0xaf,0xcc,0x84,0x59,0xcc,0x84,0x79,0xcc,0x84,0x68,0xc9,
2425
  0xa6,0x6a,0x72,0xc9,0xb9,0xc9,0xbb,0xca,0x81,0x77,0x79,0x20,0xcc,0x86,0x20,0xcc,0x87,0x20,0xcc,0x8a,0x20,0xcc,0xa8,0x20,0xcc,0x83,0x20,0xcc,0x8b,0xc9,0xa3,0x6c,
2426
  0x73,0x78,0xca,0x95,0xcc,0x80,0xcc,0x81,0xcc,0x93,0xcc,0x88,0xcc,0x81,0xca,0xb9,0x20,0xcd,0x85,0x3b,0x20,0xcc,0x81,0xc2,0xa8,0xcc,0x81,0xce,0x91,0xcc,0x81,0xc2,
2427
  0xb7,0xce,0x95,0xcc,0x81,0xce,0x97,0xcc,0x81,0xce,0x99,0xcc,0x81,0xce,0x9f,0xcc,0x81,0xce,0xa5,0xcc,0x81,0xce,0xa9,0xcc,0x81,0xcf,0x8a,0xcc,0x81,0xce,0x99,0xcc,
2428
  0x88,0xce,0xa5,0xcc,0x88,0xce,0xb1,0xcc,0x81,0xce,0xb5,0xcc,0x81,0xce,0xb7,0xcc,0x81,0xce,0xb9,0xcc,0x81,0xcf,0x8b,0xcc,0x81,0xce,0xb9,0xcc,0x88,0xcf,0x85,0xcc,
2429
  0x88,0xce,0xbf,0xcc,0x81,0xcf,0x85,0xcc,0x81,0xcf,0x89,0xcc,0x81,0xce,0xb2,0xce,0xb8,0xce,0xa5,0xcf,0x92,0xcc,0x81,0xcf,0x92,0xcc,0x88,0xcf,0x86,0xcf,0x80,0xce,
2430
  0xba,0xcf,0x81,0xcf,0x82,0xce,0x98,0xce,0xb5,0xce,0xa3,0xd0,0x95,0xcc,0x80,0xd0,0x95,0xcc,0x88,0xd0,0x93,0xcc,0x81,0xd0,0x86,0xcc,0x88,0xd0,0x9a,0xcc,0x81,0xd0,
2431
  0x98,0xcc,0x80,0xd0,0xa3,0xcc,0x86,0xd0,0x98,0xcc,0x86,0xd0,0xb8,0xcc,0x86,0xd0,0xb5,0xcc,0x80,0xd0,0xb5,0xcc,0x88,0xd0,0xb3,0xcc,0x81,0xd1,0x96,0xcc,0x88,0xd0,
2432
  0xba,0xcc,0x81,0xd0,0xb8,0xcc,0x80,0xd1,0x83,0xcc,0x86,0xd1,0xb4,0xcc,0x8f,0xd1,0xb5,0xcc,0x8f,0xd0,0x96,0xcc,0x86,0xd0,0xb6,0xcc,0x86,0xd0,0x90,0xcc,0x86,0xd0,
2433
  0xb0,0xcc,0x86,0xd0,0x90,0xcc,0x88,0xd0,0xb0,0xcc,0x88,0xd0,0x95,0xcc,0x86,0xd0,0xb5,0xcc,0x86,0xd3,0x98,0xcc,0x88,0xd3,0x99,0xcc,0x88,0xd0,0x96,0xcc,0x88,0xd0,
2434
  0xb6,0xcc,0x88,0xd0,0x97,0xcc,0x88,0xd0,0xb7,0xcc,0x88,0xd0,0x98,0xcc,0x84,0xd0,0xb8,0xcc,0x84,0xd0,0x98,0xcc,0x88,0xd0,0xb8,0xcc,0x88,0xd0,0x9e,0xcc,0x88,0xd0,
2435
  0xbe,0xcc,0x88,0xd3,0xa8,0xcc,0x88,0xd3,0xa9,0xcc,0x88,0xd0,0xad,0xcc,0x88,0xd1,0x8d,0xcc,0x88,0xd0,0xa3,0xcc,0x84,0xd1,0x83,0xcc,0x84,0xd0,0xa3,0xcc,0x88,0xd1,
2436
  0x83,0xcc,0x88,0xd0,0xa3,0xcc,0x8b,0xd1,0x83,0xcc,0x8b,0xd0,0xa7,0xcc,0x88,0xd1,0x87,0xcc,0x88,0xd0,0xab,0xcc,0x88,0xd1,0x8b,0xcc,0x88,0xd5,0xa5,0xd6,0x82,0xd8,
2437
  0xa7,0xd9,0x93,0xd8,0xa7,0xd9,0x94,0xd9,0x88,0xd9,0x94,0xd8,0xa7,0xd9,0x95,0xd9,0x8a,0xd9,0x94,0xd8,0xa7,0xd9,0xb4,0xd9,0x88,0xd9,0xb4,0xdb,0x87,0xd9,0xb4,0xd9,
2438
  0x8a,0xd9,0xb4,0xdb,0x95,0xd9,0x94,0xdb,0x81,0xd9,0x94,0xdb,0x92,0xd9,0x94,0xe0,0xa4,0xa8,0xe0,0xa4,0xbc,0xe0,0xa4,0xb0,0xe0,0xa4,0xbc,0xe0,0xa4,0xb3,0xe0,0xa4,
2439
  0xbc,0xe0,0xa4,0x95,0xe0,0xa4,0xbc,0xe0,0xa4,0x96,0xe0,0xa4,0xbc,0xe0,0xa4,0x97,0xe0,0xa4,0xbc,0xe0,0xa4,0x9c,0xe0,0xa4,0xbc,0xe0,0xa4,0xa1,0xe0,0xa4,0xbc,0xe0,
2440
  0xa4,0xa2,0xe0,0xa4,0xbc,0xe0,0xa4,0xab,0xe0,0xa4,0xbc,0xe0,0xa4,0xaf,0xe0,0xa4,0xbc,0xe0,0xa7,0x87,0xe0,0xa6,0xbe,0xe0,0xa7,0x87,0xe0,0xa7,0x97,0xe0,0xa6,0xa1,
2441
  0xe0,0xa6,0xbc,0xe0,0xa6,0xa2,0xe0,0xa6,0xbc,0xe0,0xa6,0xaf,0xe0,0xa6,0xbc,0xe0,0xa8,0xb2,0xe0,0xa8,0xbc,0xe0,0xa8,0xb8,0xe0,0xa8,0xbc,0xe0,0xa8,0x96,0xe0,0xa8,
2442
  0xbc,0xe0,0xa8,0x97,0xe0,0xa8,0xbc,0xe0,0xa8,0x9c,0xe0,0xa8,0xbc,0xe0,0xa8,0xab,0xe0,0xa8,0xbc,0xe0,0xad,0x87,0xe0,0xad,0x96,0xe0,0xad,0x87,0xe0,0xac,0xbe,0xe0,
2443
  0xad,0x87,0xe0,0xad,0x97,0xe0,0xac,0xa1,0xe0,0xac,0xbc,0xe0,0xac,0xa2,0xe0,0xac,0xbc,0xe0,0xae,0x92,0xe0,0xaf,0x97,0xe0,0xaf,0x86,0xe0,0xae,0xbe,0xe0,0xaf,0x87,
2444
  0xe0,0xae,0xbe,0xe0,0xaf,0x86,0xe0,0xaf,0x97,0xe0,0xb1,0x86,0xe0,0xb1,0x96,0xe0,0xb2,0xbf,0xe0,0xb3,0x95,0xe0,0xb3,0x86,0xe0,0xb3,0x95,0xe0,0xb3,0x86,0xe0,0xb3,
2445
  0x96,0xe0,0xb3,0x86,0xe0,0xb3,0x82,0xe0,0xb3,0x8a,0xe0,0xb3,0x95,0xe0,0xb5,0x86,0xe0,0xb4,0xbe,0xe0,0xb5,0x87,0xe0,0xb4,0xbe,0xe0,0xb5,0x86,0xe0,0xb5,0x97,0xe0,
2446
  0xb7,0x99,0xe0,0xb7,0x8a,0xe0,0xb7,0x99,0xe0,0xb7,0x8f,0xe0,0xb7,0x9c,0xe0,0xb7,0x8a,0xe0,0xb7,0x99,0xe0,0xb7,0x9f,0xe0,0xb9,0x8d,0xe0,0xb8,0xb2,0xe0,0xbb,0x8d,
2447
  0xe0,0xba,0xb2,0xe0,0xba,0xab,0xe0,0xba,0x99,0xe0,0xba,0xab,0xe0,0xba,0xa1,0xe0,0xbc,0x8b,0xe0,0xbd,0x82,0xe0,0xbe,0xb7,0xe0,0xbd,0x8c,0xe0,0xbe,0xb7,0xe0,0xbd,
2448
  0x91,0xe0,0xbe,0xb7,0xe0,0xbd,0x96,0xe0,0xbe,0xb7,0xe0,0xbd,0x9b,0xe0,0xbe,0xb7,0xe0,0xbd,0x80,0xe0,0xbe,0xb5,0xe0,0xbd,0xb1,0xe0,0xbd,0xb2,0xe0,0xbd,0xb1,0xe0,
2449
  0xbd,0xb4,0xe0,0xbe,0xb2,0xe0,0xbe,0x80,0xe0,0xbe,0xb2,0xe0,0xbe,0x81,0xe0,0xbe,0xb3,0xe0,0xbe,0x80,0xe0,0xbe,0xb3,0xe0,0xbe,0x81,0xe0,0xbd,0xb1,0xe0,0xbe,0x80,
2450
  0xe0,0xbe,0x92,0xe0,0xbe,0xb7,0xe0,0xbe,0x9c,0xe0,0xbe,0xb7,0xe0,0xbe,0xa1,0xe0,0xbe,0xb7,0xe0,0xbe,0xa6,0xe0,0xbe,0xb7,0xe0,0xbe,0xab,0xe0,0xbe,0xb7,0xe0,0xbe,
2451
  0x90,0xe0,0xbe,0xb5,0xe1,0x80,0xa5,0xe1,0x80,0xae,0xe1,0x83,0x9c,0xe1,0xac,0x85,0xe1,0xac,0xb5,0xe1,0xac,0x87,0xe1,0xac,0xb5,0xe1,0xac,0x89,0xe1,0xac,0xb5,0xe1,
2452
  0xac,0x8b,0xe1,0xac,0xb5,0xe1,0xac,0x8d,0xe1,0xac,0xb5,0xe1,0xac,0x91,0xe1,0xac,0xb5,0xe1,0xac,0xba,0xe1,0xac,0xb5,0xe1,0xac,0xbc,0xe1,0xac,0xb5,0xe1,0xac,0xbe,
2453
  0xe1,0xac,0xb5,0xe1,0xac,0xbf,0xe1,0xac,0xb5,0xe1,0xad,0x82,0xe1,0xac,0xb5,0x41,0xc3,0x86,0x42,0x44,0x45,0xc6,0x8e,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,
2454
  0xc8,0xa2,0x50,0x52,0x54,0x55,0x57,0x61,0xc9,0x90,0xc9,0x91,0xe1,0xb4,0x82,0x62,0x64,0x65,0xc9,0x99,0xc9,0x9b,0xc9,0x9c,0x67,0x6b,0x6d,0xc5,0x8b,0x6f,0xc9,0x94,
2455
  0xe1,0xb4,0x96,0xe1,0xb4,0x97,0x70,0x74,0x75,0xe1,0xb4,0x9d,0xc9,0xaf,0x76,0xe1,0xb4,0xa5,0xce,0xb2,0xce,0xb3,0xce,0xb4,0xcf,0x86,0xcf,0x87,0x69,0x72,0x75,0x76,
2456
  0xce,0xb2,0xce,0xb3,0xcf,0x81,0xcf,0x86,0xcf,0x87,0xd0,0xbd,0xc9,0x92,0x63,0xc9,0x95,0xc3,0xb0,0xc9,0x9c,0x66,0xc9,0x9f,0xc9,0xa1,0xc9,0xa5,0xc9,0xa8,0xc9,0xa9,
2457
  0xc9,0xaa,0xe1,0xb5,0xbb,0xca,0x9d,0xc9,0xad,0xe1,0xb6,0x85,0xca,0x9f,0xc9,0xb1,0xc9,0xb0,0xc9,0xb2,0xc9,0xb3,0xc9,0xb4,0xc9,0xb5,0xc9,0xb8,0xca,0x82,0xca,0x83,
2458
  0xc6,0xab,0xca,0x89,0xca,0x8a,0xe1,0xb4,0x9c,0xca,0x8b,0xca,0x8c,0x7a,0xca,0x90,0xca,0x91,0xca,0x92,0xce,0xb8,0x41,0xcc,0xa5,0x61,0xcc,0xa5,0x42,0xcc,0x87,0x62,
2459
  0xcc,0x87,0x42,0xcc,0xa3,0x62,0xcc,0xa3,0x42,0xcc,0xb1,0x62,0xcc,0xb1,0xc3,0x87,0xcc,0x81,0xc3,0xa7,0xcc,0x81,0x44,0xcc,0x87,0x64,0xcc,0x87,0x44,0xcc,0xa3,0x64,
2460
  0xcc,0xa3,0x44,0xcc,0xb1,0x64,0xcc,0xb1,0x44,0xcc,0xa7,0x64,0xcc,0xa7,0x44,0xcc,0xad,0x64,0xcc,0xad,0xc4,0x92,0xcc,0x80,0xc4,0x93,0xcc,0x80,0xc4,0x92,0xcc,0x81,
2461
  0xc4,0x93,0xcc,0x81,0x45,0xcc,0xad,0x65,0xcc,0xad,0x45,0xcc,0xb0,0x65,0xcc,0xb0,0xc8,0xa8,0xcc,0x86,0xc8,0xa9,0xcc,0x86,0x46,0xcc,0x87,0x66,0xcc,0x87,0x47,0xcc,
2462
  0x84,0x67,0xcc,0x84,0x48,0xcc,0x87,0x68,0xcc,0x87,0x48,0xcc,0xa3,0x68,0xcc,0xa3,0x48,0xcc,0x88,0x68,0xcc,0x88,0x48,0xcc,0xa7,0x68,0xcc,0xa7,0x48,0xcc,0xae,0x68,
2463
  0xcc,0xae,0x49,0xcc,0xb0,0x69,0xcc,0xb0,0xc3,0x8f,0xcc,0x81,0xc3,0xaf,0xcc,0x81,0x4b,0xcc,0x81,0x6b,0xcc,0x81,0x4b,0xcc,0xa3,0x6b,0xcc,0xa3,0x4b,0xcc,0xb1,0x6b,
2464
  0xcc,0xb1,0x4c,0xcc,0xa3,0x6c,0xcc,0xa3,0xe1,0xb8,0xb6,0xcc,0x84,0xe1,0xb8,0xb7,0xcc,0x84,0x4c,0xcc,0xb1,0x6c,0xcc,0xb1,0x4c,0xcc,0xad,0x6c,0xcc,0xad,0x4d,0xcc,
2465
  0x81,0x6d,0xcc,0x81,0x4d,0xcc,0x87,0x6d,0xcc,0x87,0x4d,0xcc,0xa3,0x6d,0xcc,0xa3,0x4e,0xcc,0x87,0x6e,0xcc,0x87,0x4e,0xcc,0xa3,0x6e,0xcc,0xa3,0x4e,0xcc,0xb1,0x6e,
2466
  0xcc,0xb1,0x4e,0xcc,0xad,0x6e,0xcc,0xad,0xc3,0x95,0xcc,0x81,0xc3,0xb5,0xcc,0x81,0xc3,0x95,0xcc,0x88,0xc3,0xb5,0xcc,0x88,0xc5,0x8c,0xcc,0x80,0xc5,0x8d,0xcc,0x80,
2467
  0xc5,0x8c,0xcc,0x81,0xc5,0x8d,0xcc,0x81,0x50,0xcc,0x81,0x70,0xcc,0x81,0x50,0xcc,0x87,0x70,0xcc,0x87,0x52,0xcc,0x87,0x72,0xcc,0x87,0x52,0xcc,0xa3,0x72,0xcc,0xa3,
2468
  0xe1,0xb9,0x9a,0xcc,0x84,0xe1,0xb9,0x9b,0xcc,0x84,0x52,0xcc,0xb1,0x72,0xcc,0xb1,0x53,0xcc,0x87,0x73,0xcc,0x87,0x53,0xcc,0xa3,0x73,0xcc,0xa3,0xc5,0x9a,0xcc,0x87,
2469
  0xc5,0x9b,0xcc,0x87,0xc5,0xa0,0xcc,0x87,0xc5,0xa1,0xcc,0x87,0xe1,0xb9,0xa2,0xcc,0x87,0xe1,0xb9,0xa3,0xcc,0x87,0x54,0xcc,0x87,0x74,0xcc,0x87,0x54,0xcc,0xa3,0x74,
2470
  0xcc,0xa3,0x54,0xcc,0xb1,0x74,0xcc,0xb1,0x54,0xcc,0xad,0x74,0xcc,0xad,0x55,0xcc,0xa4,0x75,0xcc,0xa4,0x55,0xcc,0xb0,0x75,0xcc,0xb0,0x55,0xcc,0xad,0x75,0xcc,0xad,
2471
  0xc5,0xa8,0xcc,0x81,0xc5,0xa9,0xcc,0x81,0xc5,0xaa,0xcc,0x88,0xc5,0xab,0xcc,0x88,0x56,0xcc,0x83,0x76,0xcc,0x83,0x56,0xcc,0xa3,0x76,0xcc,0xa3,0x57,0xcc,0x80,0x77,
2472
  0xcc,0x80,0x57,0xcc,0x81,0x77,0xcc,0x81,0x57,0xcc,0x88,0x77,0xcc,0x88,0x57,0xcc,0x87,0x77,0xcc,0x87,0x57,0xcc,0xa3,0x77,0xcc,0xa3,0x58,0xcc,0x87,0x78,0xcc,0x87,
2473
  0x58,0xcc,0x88,0x78,0xcc,0x88,0x59,0xcc,0x87,0x79,0xcc,0x87,0x5a,0xcc,0x82,0x7a,0xcc,0x82,0x5a,0xcc,0xa3,0x7a,0xcc,0xa3,0x5a,0xcc,0xb1,0x7a,0xcc,0xb1,0x68,0xcc,
2474
  0xb1,0x74,0xcc,0x88,0x77,0xcc,0x8a,0x79,0xcc,0x8a,0x61,0xca,0xbe,0xc5,0xbf,0xcc,0x87,0x41,0xcc,0xa3,0x61,0xcc,0xa3,0x41,0xcc,0x89,0x61,0xcc,0x89,0xc3,0x82,0xcc,
2475
  0x81,0xc3,0xa2,0xcc,0x81,0xc3,0x82,0xcc,0x80,0xc3,0xa2,0xcc,0x80,0xc3,0x82,0xcc,0x89,0xc3,0xa2,0xcc,0x89,0xc3,0x82,0xcc,0x83,0xc3,0xa2,0xcc,0x83,0xe1,0xba,0xa0,
2476
  0xcc,0x82,0xe1,0xba,0xa1,0xcc,0x82,0xc4,0x82,0xcc,0x81,0xc4,0x83,0xcc,0x81,0xc4,0x82,0xcc,0x80,0xc4,0x83,0xcc,0x80,0xc4,0x82,0xcc,0x89,0xc4,0x83,0xcc,0x89,0xc4,
2477
  0x82,0xcc,0x83,0xc4,0x83,0xcc,0x83,0xe1,0xba,0xa0,0xcc,0x86,0xe1,0xba,0xa1,0xcc,0x86,0x45,0xcc,0xa3,0x65,0xcc,0xa3,0x45,0xcc,0x89,0x65,0xcc,0x89,0x45,0xcc,0x83,
2478
  0x65,0xcc,0x83,0xc3,0x8a,0xcc,0x81,0xc3,0xaa,0xcc,0x81,0xc3,0x8a,0xcc,0x80,0xc3,0xaa,0xcc,0x80,0xc3,0x8a,0xcc,0x89,0xc3,0xaa,0xcc,0x89,0xc3,0x8a,0xcc,0x83,0xc3,
2479
  0xaa,0xcc,0x83,0xe1,0xba,0xb8,0xcc,0x82,0xe1,0xba,0xb9,0xcc,0x82,0x49,0xcc,0x89,0x69,0xcc,0x89,0x49,0xcc,0xa3,0x69,0xcc,0xa3,0x4f,0xcc,0xa3,0x6f,0xcc,0xa3,0x4f,
2480
  0xcc,0x89,0x6f,0xcc,0x89,0xc3,0x94,0xcc,0x81,0xc3,0xb4,0xcc,0x81,0xc3,0x94,0xcc,0x80,0xc3,0xb4,0xcc,0x80,0xc3,0x94,0xcc,0x89,0xc3,0xb4,0xcc,0x89,0xc3,0x94,0xcc,
2481
  0x83,0xc3,0xb4,0xcc,0x83,0xe1,0xbb,0x8c,0xcc,0x82,0xe1,0xbb,0x8d,0xcc,0x82,0xc6,0xa0,0xcc,0x81,0xc6,0xa1,0xcc,0x81,0xc6,0xa0,0xcc,0x80,0xc6,0xa1,0xcc,0x80,0xc6,
2482
  0xa0,0xcc,0x89,0xc6,0xa1,0xcc,0x89,0xc6,0xa0,0xcc,0x83,0xc6,0xa1,0xcc,0x83,0xc6,0xa0,0xcc,0xa3,0xc6,0xa1,0xcc,0xa3,0x55,0xcc,0xa3,0x75,0xcc,0xa3,0x55,0xcc,0x89,
2483
  0x75,0xcc,0x89,0xc6,0xaf,0xcc,0x81,0xc6,0xb0,0xcc,0x81,0xc6,0xaf,0xcc,0x80,0xc6,0xb0,0xcc,0x80,0xc6,0xaf,0xcc,0x89,0xc6,0xb0,0xcc,0x89,0xc6,0xaf,0xcc,0x83,0xc6,
2484
  0xb0,0xcc,0x83,0xc6,0xaf,0xcc,0xa3,0xc6,0xb0,0xcc,0xa3,0x59,0xcc,0x80,0x79,0xcc,0x80,0x59,0xcc,0xa3,0x79,0xcc,0xa3,0x59,0xcc,0x89,0x79,0xcc,0x89,0x59,0xcc,0x83,
2485
  0x79,0xcc,0x83,0xce,0xb1,0xcc,0x93,0xce,0xb1,0xcc,0x94,0xe1,0xbc,0x80,0xcc,0x80,0xe1,0xbc,0x81,0xcc,0x80,0xe1,0xbc,0x80,0xcc,0x81,0xe1,0xbc,0x81,0xcc,0x81,0xe1,
2486
  0xbc,0x80,0xcd,0x82,0xe1,0xbc,0x81,0xcd,0x82,0xce,0x91,0xcc,0x93,0xce,0x91,0xcc,0x94,0xe1,0xbc,0x88,0xcc,0x80,0xe1,0xbc,0x89,0xcc,0x80,0xe1,0xbc,0x88,0xcc,0x81,
2487
  0xe1,0xbc,0x89,0xcc,0x81,0xe1,0xbc,0x88,0xcd,0x82,0xe1,0xbc,0x89,0xcd,0x82,0xce,0xb5,0xcc,0x93,0xce,0xb5,0xcc,0x94,0xe1,0xbc,0x90,0xcc,0x80,0xe1,0xbc,0x91,0xcc,
2488
  0x80,0xe1,0xbc,0x90,0xcc,0x81,0xe1,0xbc,0x91,0xcc,0x81,0xce,0x95,0xcc,0x93,0xce,0x95,0xcc,0x94,0xe1,0xbc,0x98,0xcc,0x80,0xe1,0xbc,0x99,0xcc,0x80,0xe1,0xbc,0x98,
2489
  0xcc,0x81,0xe1,0xbc,0x99,0xcc,0x81,0xce,0xb7,0xcc,0x93,0xce,0xb7,0xcc,0x94,0xe1,0xbc,0xa0,0xcc,0x80,0xe1,0xbc,0xa1,0xcc,0x80,0xe1,0xbc,0xa0,0xcc,0x81,0xe1,0xbc,
2490
  0xa1,0xcc,0x81,0xe1,0xbc,0xa0,0xcd,0x82,0xe1,0xbc,0xa1,0xcd,0x82,0xce,0x97,0xcc,0x93,0xce,0x97,0xcc,0x94,0xe1,0xbc,0xa8,0xcc,0x80,0xe1,0xbc,0xa9,0xcc,0x80,0xe1,
2491
  0xbc,0xa8,0xcc,0x81,0xe1,0xbc,0xa9,0xcc,0x81,0xe1,0xbc,0xa8,0xcd,0x82,0xe1,0xbc,0xa9,0xcd,0x82,0xce,0xb9,0xcc,0x93,0xce,0xb9,0xcc,0x94,0xe1,0xbc,0xb0,0xcc,0x80,
2492
  0xe1,0xbc,0xb1,0xcc,0x80,0xe1,0xbc,0xb0,0xcc,0x81,0xe1,0xbc,0xb1,0xcc,0x81,0xe1,0xbc,0xb0,0xcd,0x82,0xe1,0xbc,0xb1,0xcd,0x82,0xce,0x99,0xcc,0x93,0xce,0x99,0xcc,
2493
  0x94,0xe1,0xbc,0xb8,0xcc,0x80,0xe1,0xbc,0xb9,0xcc,0x80,0xe1,0xbc,0xb8,0xcc,0x81,0xe1,0xbc,0xb9,0xcc,0x81,0xe1,0xbc,0xb8,0xcd,0x82,0xe1,0xbc,0xb9,0xcd,0x82,0xce,
2494
  0xbf,0xcc,0x93,0xce,0xbf,0xcc,0x94,0xe1,0xbd,0x80,0xcc,0x80,0xe1,0xbd,0x81,0xcc,0x80,0xe1,0xbd,0x80,0xcc,0x81,0xe1,0xbd,0x81,0xcc,0x81,0xce,0x9f,0xcc,0x93,0xce,
2495
  0x9f,0xcc,0x94,0xe1,0xbd,0x88,0xcc,0x80,0xe1,0xbd,0x89,0xcc,0x80,0xe1,0xbd,0x88,0xcc,0x81,0xe1,0xbd,0x89,0xcc,0x81,0xcf,0x85,0xcc,0x93,0xcf,0x85,0xcc,0x94,0xe1,
2496
  0xbd,0x90,0xcc,0x80,0xe1,0xbd,0x91,0xcc,0x80,0xe1,0xbd,0x90,0xcc,0x81,0xe1,0xbd,0x91,0xcc,0x81,0xe1,0xbd,0x90,0xcd,0x82,0xe1,0xbd,0x91,0xcd,0x82,0xce,0xa5,0xcc,
2497
  0x94,0xe1,0xbd,0x99,0xcc,0x80,0xe1,0xbd,0x99,0xcc,0x81,0xe1,0xbd,0x99,0xcd,0x82,0xcf,0x89,0xcc,0x93,0xcf,0x89,0xcc,0x94,0xe1,0xbd,0xa0,0xcc,0x80,0xe1,0xbd,0xa1,
2498
  0xcc,0x80,0xe1,0xbd,0xa0,0xcc,0x81,0xe1,0xbd,0xa1,0xcc,0x81,0xe1,0xbd,0xa0,0xcd,0x82,0xe1,0xbd,0xa1,0xcd,0x82,0xce,0xa9,0xcc,0x93,0xce,0xa9,0xcc,0x94,0xe1,0xbd,
2499
  0xa8,0xcc,0x80,0xe1,0xbd,0xa9,0xcc,0x80,0xe1,0xbd,0xa8,0xcc,0x81,0xe1,0xbd,0xa9,0xcc,0x81,0xe1,0xbd,0xa8,0xcd,0x82,0xe1,0xbd,0xa9,0xcd,0x82,0xce,0xb1,0xcc,0x80,
2500
  0xce,0xac,0xce,0xb5,0xcc,0x80,0xce,0xad,0xce,0xb7,0xcc,0x80,0xce,0xae,0xce,0xb9,0xcc,0x80,0xce,0xaf,0xce,0xbf,0xcc,0x80,0xcf,0x8c,0xcf,0x85,0xcc,0x80,0xcf,0x8d,
2501
  0xcf,0x89,0xcc,0x80,0xcf,0x8e,0xe1,0xbc,0x80,0xcd,0x85,0xe1,0xbc,0x81,0xcd,0x85,0xe1,0xbc,0x82,0xcd,0x85,0xe1,0xbc,0x83,0xcd,0x85,0xe1,0xbc,0x84,0xcd,0x85,0xe1,
2502
  0xbc,0x85,0xcd,0x85,0xe1,0xbc,0x86,0xcd,0x85,0xe1,0xbc,0x87,0xcd,0x85,0xe1,0xbc,0x88,0xcd,0x85,0xe1,0xbc,0x89,0xcd,0x85,0xe1,0xbc,0x8a,0xcd,0x85,0xe1,0xbc,0x8b,
2503
  0xcd,0x85,0xe1,0xbc,0x8c,0xcd,0x85,0xe1,0xbc,0x8d,0xcd,0x85,0xe1,0xbc,0x8e,0xcd,0x85,0xe1,0xbc,0x8f,0xcd,0x85,0xe1,0xbc,0xa0,0xcd,0x85,0xe1,0xbc,0xa1,0xcd,0x85,
2504
  0xe1,0xbc,0xa2,0xcd,0x85,0xe1,0xbc,0xa3,0xcd,0x85,0xe1,0xbc,0xa4,0xcd,0x85,0xe1,0xbc,0xa5,0xcd,0x85,0xe1,0xbc,0xa6,0xcd,0x85,0xe1,0xbc,0xa7,0xcd,0x85,0xe1,0xbc,
2505
  0xa8,0xcd,0x85,0xe1,0xbc,0xa9,0xcd,0x85,0xe1,0xbc,0xaa,0xcd,0x85,0xe1,0xbc,0xab,0xcd,0x85,0xe1,0xbc,0xac,0xcd,0x85,0xe1,0xbc,0xad,0xcd,0x85,0xe1,0xbc,0xae,0xcd,
2506
  0x85,0xe1,0xbc,0xaf,0xcd,0x85,0xe1,0xbd,0xa0,0xcd,0x85,0xe1,0xbd,0xa1,0xcd,0x85,0xe1,0xbd,0xa2,0xcd,0x85,0xe1,0xbd,0xa3,0xcd,0x85,0xe1,0xbd,0xa4,0xcd,0x85,0xe1,
2507
  0xbd,0xa5,0xcd,0x85,0xe1,0xbd,0xa6,0xcd,0x85,0xe1,0xbd,0xa7,0xcd,0x85,0xe1,0xbd,0xa8,0xcd,0x85,0xe1,0xbd,0xa9,0xcd,0x85,0xe1,0xbd,0xaa,0xcd,0x85,0xe1,0xbd,0xab,
2508
  0xcd,0x85,0xe1,0xbd,0xac,0xcd,0x85,0xe1,0xbd,0xad,0xcd,0x85,0xe1,0xbd,0xae,0xcd,0x85,0xe1,0xbd,0xaf,0xcd,0x85,0xce,0xb1,0xcc,0x86,0xce,0xb1,0xcc,0x84,0xe1,0xbd,
2509
  0xb0,0xcd,0x85,0xce,0xb1,0xcd,0x85,0xce,0xac,0xcd,0x85,0xce,0xb1,0xcd,0x82,0xe1,0xbe,0xb6,0xcd,0x85,0xce,0x91,0xcc,0x86,0xce,0x91,0xcc,0x84,0xce,0x91,0xcc,0x80,
2510
  0xce,0x86,0xce,0x91,0xcd,0x85,0x20,0xcc,0x93,0xce,0xb9,0x20,0xcc,0x93,0x20,0xcd,0x82,0xc2,0xa8,0xcd,0x82,0xe1,0xbd,0xb4,0xcd,0x85,0xce,0xb7,0xcd,0x85,0xce,0xae,
2511
  0xcd,0x85,0xce,0xb7,0xcd,0x82,0xe1,0xbf,0x86,0xcd,0x85,0xce,0x95,0xcc,0x80,0xce,0x88,0xce,0x97,0xcc,0x80,0xce,0x89,0xce,0x97,0xcd,0x85,0xe1,0xbe,0xbf,0xcc,0x80,
2512
  0xe1,0xbe,0xbf,0xcc,0x81,0xe1,0xbe,0xbf,0xcd,0x82,0xce,0xb9,0xcc,0x86,0xce,0xb9,0xcc,0x84,0xcf,0x8a,0xcc,0x80,0xce,0x90,0xce,0xb9,0xcd,0x82,0xcf,0x8a,0xcd,0x82,
2513
  0xce,0x99,0xcc,0x86,0xce,0x99,0xcc,0x84,0xce,0x99,0xcc,0x80,0xce,0x8a,0xe1,0xbf,0xbe,0xcc,0x80,0xe1,0xbf,0xbe,0xcc,0x81,0xe1,0xbf,0xbe,0xcd,0x82,0xcf,0x85,0xcc,
2514
  0x86,0xcf,0x85,0xcc,0x84,0xcf,0x8b,0xcc,0x80,0xce,0xb0,0xcf,0x81,0xcc,0x93,0xcf,0x81,0xcc,0x94,0xcf,0x85,0xcd,0x82,0xcf,0x8b,0xcd,0x82,0xce,0xa5,0xcc,0x86,0xce,
2515
  0xa5,0xcc,0x84,0xce,0xa5,0xcc,0x80,0xce,0x8e,0xce,0xa1,0xcc,0x94,0xc2,0xa8,0xcc,0x80,0xce,0x85,0x60,0xe1,0xbd,0xbc,0xcd,0x85,0xcf,0x89,0xcd,0x85,0xcf,0x8e,0xcd,
2516
  0x85,0xcf,0x89,0xcd,0x82,0xe1,0xbf,0xb6,0xcd,0x85,0xce,0x9f,0xcc,0x80,0xce,0x8c,0xce,0xa9,0xcc,0x80,0xce,0x8f,0xce,0xa9,0xcd,0x85,0xc2,0xb4,0x20,0xcc,0x94,0xe2,
2517
  0x80,0x82,0xe2,0x80,0x83,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xe2,0x80,0x90,0x20,0xcc,0xb3,0x2e,0x2e,0x2e,0x2e,0x2e,0x2e,0x20,0xe2,0x80,0xb2,0xe2,0x80,
2518
  0xb2,0xe2,0x80,0xb2,0xe2,0x80,0xb2,0xe2,0x80,0xb2,0xe2,0x80,0xb5,0xe2,0x80,0xb5,0xe2,0x80,0xb5,0xe2,0x80,0xb5,0xe2,0x80,0xb5,0x21,0x21,0x20,0xcc,0x85,0x3f,0x3f,
2519
  0x3f,0x21,0x21,0x3f,0xe2,0x80,0xb2,0xe2,0x80,0xb2,0xe2,0x80,0xb2,0xe2,0x80,0xb2,0x20,0x30,0x69,0x34,0x35,0x36,0x37,0x38,0x39,0x2b,0xe2,0x88,0x92,0x3d,0x28,0x29,
2520
  0x6e,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x2b,0xe2,0x88,0x92,0x3d,0x28,0x29,0x61,0x65,0x6f,0x78,0xc9,0x99,0x68,0x6b,0x6c,0x6d,0x6e,0x70,0x73,0x74,
2521
  0x52,0x73,0x61,0x2f,0x63,0x61,0x2f,0x73,0x43,0xc2,0xb0,0x43,0x63,0x2f,0x6f,0x63,0x2f,0x75,0xc6,0x90,0xc2,0xb0,0x46,0x67,0x48,0x48,0x48,0x68,0xc4,0xa7,0x49,0x49,
2522
  0x4c,0x6c,0x4e,0x4e,0x6f,0x50,0x51,0x52,0x52,0x52,0x53,0x4d,0x54,0x45,0x4c,0x54,0x4d,0x5a,0xce,0xa9,0x5a,0x4b,0xc3,0x85,0x42,0x43,0x65,0x45,0x46,0x4d,0x6f,0xd7,
2523
  0x90,0xd7,0x91,0xd7,0x92,0xd7,0x93,0x69,0x46,0x41,0x58,0xcf,0x80,0xce,0xb3,0xce,0x93,0xce,0xa0,0xe2,0x88,0x91,0x44,0x64,0x65,0x69,0x6a,0x31,0xe2,0x81,0x84,0x37,
2524
  0x31,0xe2,0x81,0x84,0x39,0x31,0xe2,0x81,0x84,0x31,0x30,0x31,0xe2,0x81,0x84,0x33,0x32,0xe2,0x81,0x84,0x33,0x31,0xe2,0x81,0x84,0x35,0x32,0xe2,0x81,0x84,0x35,0x33,
2525
  0xe2,0x81,0x84,0x35,0x34,0xe2,0x81,0x84,0x35,0x31,0xe2,0x81,0x84,0x36,0x35,0xe2,0x81,0x84,0x36,0x31,0xe2,0x81,0x84,0x38,0x33,0xe2,0x81,0x84,0x38,0x35,0xe2,0x81,
2526
  0x84,0x38,0x37,0xe2,0x81,0x84,0x38,0x31,0xe2,0x81,0x84,0x49,0x49,0x49,0x49,0x49,0x49,0x49,0x56,0x56,0x56,0x49,0x56,0x49,0x49,0x56,0x49,0x49,0x49,0x49,0x58,0x58,
2527
  0x58,0x49,0x58,0x49,0x49,0x4c,0x43,0x44,0x4d,0x69,0x69,0x69,0x69,0x69,0x69,0x69,0x76,0x76,0x76,0x69,0x76,0x69,0x69,0x76,0x69,0x69,0x69,0x69,0x78,0x78,0x78,0x69,
2528
  0x78,0x69,0x69,0x6c,0x63,0x64,0x6d,0x30,0xe2,0x81,0x84,0x33,0xe2,0x86,0x90,0xcc,0xb8,0xe2,0x86,0x92,0xcc,0xb8,0xe2,0x86,0x94,0xcc,0xb8,0xe2,0x87,0x90,0xcc,0xb8,
2529
  0xe2,0x87,0x94,0xcc,0xb8,0xe2,0x87,0x92,0xcc,0xb8,0xe2,0x88,0x83,0xcc,0xb8,0xe2,0x88,0x88,0xcc,0xb8,0xe2,0x88,0x8b,0xcc,0xb8,0xe2,0x88,0xa3,0xcc,0xb8,0xe2,0x88,
2530
  0xa5,0xcc,0xb8,0xe2,0x88,0xab,0xe2,0x88,0xab,0xe2,0x88,0xab,0xe2,0x88,0xab,0xe2,0x88,0xab,0xe2,0x88,0xae,0xe2,0x88,0xae,0xe2,0x88,0xae,0xe2,0x88,0xae,0xe2,0x88,
2531
  0xae,0xe2,0x88,0xbc,0xcc,0xb8,0xe2,0x89,0x83,0xcc,0xb8,0xe2,0x89,0x85,0xcc,0xb8,0xe2,0x89,0x88,0xcc,0xb8,0x3d,0xcc,0xb8,0xe2,0x89,0xa1,0xcc,0xb8,0xe2,0x89,0x8d,
2532
  0xcc,0xb8,0x3c,0xcc,0xb8,0x3e,0xcc,0xb8,0xe2,0x89,0xa4,0xcc,0xb8,0xe2,0x89,0xa5,0xcc,0xb8,0xe2,0x89,0xb2,0xcc,0xb8,0xe2,0x89,0xb3,0xcc,0xb8,0xe2,0x89,0xb6,0xcc,
2533
  0xb8,0xe2,0x89,0xb7,0xcc,0xb8,0xe2,0x89,0xba,0xcc,0xb8,0xe2,0x89,0xbb,0xcc,0xb8,0xe2,0x8a,0x82,0xcc,0xb8,0xe2,0x8a,0x83,0xcc,0xb8,0xe2,0x8a,0x86,0xcc,0xb8,0xe2,
2534
  0x8a,0x87,0xcc,0xb8,0xe2,0x8a,0xa2,0xcc,0xb8,0xe2,0x8a,0xa8,0xcc,0xb8,0xe2,0x8a,0xa9,0xcc,0xb8,0xe2,0x8a,0xab,0xcc,0xb8,0xe2,0x89,0xbc,0xcc,0xb8,0xe2,0x89,0xbd,
2535
  0xcc,0xb8,0xe2,0x8a,0x91,0xcc,0xb8,0xe2,0x8a,0x92,0xcc,0xb8,0xe2,0x8a,0xb2,0xcc,0xb8,0xe2,0x8a,0xb3,0xcc,0xb8,0xe2,0x8a,0xb4,0xcc,0xb8,0xe2,0x8a,0xb5,0xcc,0xb8,
2536
  0xe3,0x80,0x88,0xe3,0x80,0x89,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x31,0x30,0x31,0x31,0x31,0x32,0x31,0x33,0x31,0x34,0x31,0x35,0x31,0x36,0x31,0x37,0x31,
2537
  0x38,0x31,0x39,0x32,0x30,0x28,0x31,0x29,0x28,0x32,0x29,0x28,0x33,0x29,0x28,0x34,0x29,0x28,0x35,0x29,0x28,0x36,0x29,0x28,0x37,0x29,0x28,0x38,0x29,0x28,0x39,0x29,
2538
  0x28,0x31,0x30,0x29,0x28,0x31,0x31,0x29,0x28,0x31,0x32,0x29,0x28,0x31,0x33,0x29,0x28,0x31,0x34,0x29,0x28,0x31,0x35,0x29,0x28,0x31,0x36,0x29,0x28,0x31,0x37,0x29,
2539
  0x28,0x31,0x38,0x29,0x28,0x31,0x39,0x29,0x28,0x32,0x30,0x29,0x31,0x2e,0x32,0x2e,0x33,0x2e,0x34,0x2e,0x35,0x2e,0x36,0x2e,0x37,0x2e,0x38,0x2e,0x39,0x2e,0x31,0x30,
2540
  0x2e,0x31,0x31,0x2e,0x31,0x32,0x2e,0x31,0x33,0x2e,0x31,0x34,0x2e,0x31,0x35,0x2e,0x31,0x36,0x2e,0x31,0x37,0x2e,0x31,0x38,0x2e,0x31,0x39,0x2e,0x32,0x30,0x2e,0x28,
2541
  0x61,0x29,0x28,0x62,0x29,0x28,0x63,0x29,0x28,0x64,0x29,0x28,0x65,0x29,0x28,0x66,0x29,0x28,0x67,0x29,0x28,0x68,0x29,0x28,0x69,0x29,0x28,0x6a,0x29,0x28,0x6b,0x29,
2542
  0x28,0x6c,0x29,0x28,0x6d,0x29,0x28,0x6e,0x29,0x28,0x6f,0x29,0x28,0x70,0x29,0x28,0x71,0x29,0x28,0x72,0x29,0x28,0x73,0x29,0x28,0x74,0x29,0x28,0x75,0x29,0x28,0x76,
2543
  0x29,0x28,0x77,0x29,0x28,0x78,0x29,0x28,0x79,0x29,0x28,0x7a,0x29,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,
2544
  0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,
2545
  0x7a,0x30,0xe2,0x88,0xab,0xe2,0x88,0xab,0xe2,0x88,0xab,0xe2,0x88,0xab,0x3a,0x3a,0x3d,0x3d,0x3d,0x3d,0x3d,0x3d,0xe2,0xab,0x9d,0xcc,0xb8,0x6a,0x56,0xe2,0xb5,0xa1,
2546
  0xe6,0xaf,0x8d,0xe9,0xbe,0x9f,0xe4,0xb8,0x80,0xe4,0xb8,0xa8,0xe4,0xb8,0xb6,0xe4,0xb8,0xbf,0xe4,0xb9,0x99,0xe4,0xba,0x85,0xe4,0xba,0x8c,0xe4,0xba,0xa0,0xe4,0xba,
2547
  0xba,0xe5,0x84,0xbf,0xe5,0x85,0xa5,0xe5,0x85,0xab,0xe5,0x86,0x82,0xe5,0x86,0x96,0xe5,0x86,0xab,0xe5,0x87,0xa0,0xe5,0x87,0xb5,0xe5,0x88,0x80,0xe5,0x8a,0x9b,0xe5,
2548
  0x8b,0xb9,0xe5,0x8c,0x95,0xe5,0x8c,0x9a,0xe5,0x8c,0xb8,0xe5,0x8d,0x81,0xe5,0x8d,0x9c,0xe5,0x8d,0xa9,0xe5,0x8e,0x82,0xe5,0x8e,0xb6,0xe5,0x8f,0x88,0xe5,0x8f,0xa3,
2549
  0xe5,0x9b,0x97,0xe5,0x9c,0x9f,0xe5,0xa3,0xab,0xe5,0xa4,0x82,0xe5,0xa4,0x8a,0xe5,0xa4,0x95,0xe5,0xa4,0xa7,0xe5,0xa5,0xb3,0xe5,0xad,0x90,0xe5,0xae,0x80,0xe5,0xaf,
2550
  0xb8,0xe5,0xb0,0x8f,0xe5,0xb0,0xa2,0xe5,0xb0,0xb8,0xe5,0xb1,0xae,0xe5,0xb1,0xb1,0xe5,0xb7,0x9b,0xe5,0xb7,0xa5,0xe5,0xb7,0xb1,0xe5,0xb7,0xbe,0xe5,0xb9,0xb2,0xe5,
2551
  0xb9,0xba,0xe5,0xb9,0xbf,0xe5,0xbb,0xb4,0xe5,0xbb,0xbe,0xe5,0xbc,0x8b,0xe5,0xbc,0x93,0xe5,0xbd,0x90,0xe5,0xbd,0xa1,0xe5,0xbd,0xb3,0xe5,0xbf,0x83,0xe6,0x88,0x88,
2552
  0xe6,0x88,0xb6,0xe6,0x89,0x8b,0xe6,0x94,0xaf,0xe6,0x94,0xb4,0xe6,0x96,0x87,0xe6,0x96,0x97,0xe6,0x96,0xa4,0xe6,0x96,0xb9,0xe6,0x97,0xa0,0xe6,0x97,0xa5,0xe6,0x9b,
2553
  0xb0,0xe6,0x9c,0x88,0xe6,0x9c,0xa8,0xe6,0xac,0xa0,0xe6,0xad,0xa2,0xe6,0xad,0xb9,0xe6,0xae,0xb3,0xe6,0xaf,0x8b,0xe6,0xaf,0x94,0xe6,0xaf,0x9b,0xe6,0xb0,0x8f,0xe6,
2554
  0xb0,0x94,0xe6,0xb0,0xb4,0xe7,0x81,0xab,0xe7,0x88,0xaa,0xe7,0x88,0xb6,0xe7,0x88,0xbb,0xe7,0x88,0xbf,0xe7,0x89,0x87,0xe7,0x89,0x99,0xe7,0x89,0x9b,0xe7,0x8a,0xac,
2555
  0xe7,0x8e,0x84,0xe7,0x8e,0x89,0xe7,0x93,0x9c,0xe7,0x93,0xa6,0xe7,0x94,0x98,0xe7,0x94,0x9f,0xe7,0x94,0xa8,0xe7,0x94,0xb0,0xe7,0x96,0x8b,0xe7,0x96,0x92,0xe7,0x99,
2556
  0xb6,0xe7,0x99,0xbd,0xe7,0x9a,0xae,0xe7,0x9a,0xbf,0xe7,0x9b,0xae,0xe7,0x9f,0x9b,0xe7,0x9f,0xa2,0xe7,0x9f,0xb3,0xe7,0xa4,0xba,0xe7,0xa6,0xb8,0xe7,0xa6,0xbe,0xe7,
2557
  0xa9,0xb4,0xe7,0xab,0x8b,0xe7,0xab,0xb9,0xe7,0xb1,0xb3,0xe7,0xb3,0xb8,0xe7,0xbc,0xb6,0xe7,0xbd,0x91,0xe7,0xbe,0x8a,0xe7,0xbe,0xbd,0xe8,0x80,0x81,0xe8,0x80,0x8c,
2558
  0xe8,0x80,0x92,0xe8,0x80,0xb3,0xe8,0x81,0xbf,0xe8,0x82,0x89,0xe8,0x87,0xa3,0xe8,0x87,0xaa,0xe8,0x87,0xb3,0xe8,0x87,0xbc,0xe8,0x88,0x8c,0xe8,0x88,0x9b,0xe8,0x88,
2559
  0x9f,0xe8,0x89,0xae,0xe8,0x89,0xb2,0xe8,0x89,0xb8,0xe8,0x99,0x8d,0xe8,0x99,0xab,0xe8,0xa1,0x80,0xe8,0xa1,0x8c,0xe8,0xa1,0xa3,0xe8,0xa5,0xbe,0xe8,0xa6,0x8b,0xe8,
2560
  0xa7,0x92,0xe8,0xa8,0x80,0xe8,0xb0,0xb7,0xe8,0xb1,0x86,0xe8,0xb1,0x95,0xe8,0xb1,0xb8,0xe8,0xb2,0x9d,0xe8,0xb5,0xa4,0xe8,0xb5,0xb0,0xe8,0xb6,0xb3,0xe8,0xba,0xab,
2561
  0xe8,0xbb,0x8a,0xe8,0xbe,0x9b,0xe8,0xbe,0xb0,0xe8,0xbe,0xb5,0xe9,0x82,0x91,0xe9,0x85,0x89,0xe9,0x87,0x86,0xe9,0x87,0x8c,0xe9,0x87,0x91,0xe9,0x95,0xb7,0xe9,0x96,
2562
  0x80,0xe9,0x98,0x9c,0xe9,0x9a,0xb6,0xe9,0x9a,0xb9,0xe9,0x9b,0xa8,0xe9,0x9d,0x91,0xe9,0x9d,0x9e,0xe9,0x9d,0xa2,0xe9,0x9d,0xa9,0xe9,0x9f,0x8b,0xe9,0x9f,0xad,0xe9,
2563
  0x9f,0xb3,0xe9,0xa0,0x81,0xe9,0xa2,0xa8,0xe9,0xa3,0x9b,0xe9,0xa3,0x9f,0xe9,0xa6,0x96,0xe9,0xa6,0x99,0xe9,0xa6,0xac,0xe9,0xaa,0xa8,0xe9,0xab,0x98,0xe9,0xab,0x9f,
2564
  0xe9,0xac,0xa5,0xe9,0xac,0xaf,0xe9,0xac,0xb2,0xe9,0xac,0xbc,0xe9,0xad,0x9a,0xe9,0xb3,0xa5,0xe9,0xb9,0xb5,0xe9,0xb9,0xbf,0xe9,0xba,0xa5,0xe9,0xba,0xbb,0xe9,0xbb,
2565
  0x83,0xe9,0xbb,0x8d,0xe9,0xbb,0x91,0xe9,0xbb,0xb9,0xe9,0xbb,0xbd,0xe9,0xbc,0x8e,0xe9,0xbc,0x93,0xe9,0xbc,0xa0,0xe9,0xbc,0xbb,0xe9,0xbd,0x8a,0xe9,0xbd,0x92,0xe9,
2566
  0xbe,0x8d,0xe9,0xbe,0x9c,0xe9,0xbe,0xa0,0x20,0xe3,0x80,0x92,0xe5,0x8d,0x81,0xe5,0x8d,0x84,0xe5,0x8d,0x85,0xe3,0x81,0x8b,0xe3,0x82,0x99,0xe3,0x81,0x8d,0xe3,0x82,
2567
  0x99,0xe3,0x81,0x8f,0xe3,0x82,0x99,0xe3,0x81,0x91,0xe3,0x82,0x99,0xe3,0x81,0x93,0xe3,0x82,0x99,0xe3,0x81,0x95,0xe3,0x82,0x99,0xe3,0x81,0x97,0xe3,0x82,0x99,0xe3,
2568
  0x81,0x99,0xe3,0x82,0x99,0xe3,0x81,0x9b,0xe3,0x82,0x99,0xe3,0x81,0x9d,0xe3,0x82,0x99,0xe3,0x81,0x9f,0xe3,0x82,0x99,0xe3,0x81,0xa1,0xe3,0x82,0x99,0xe3,0x81,0xa4,
2569
  0xe3,0x82,0x99,0xe3,0x81,0xa6,0xe3,0x82,0x99,0xe3,0x81,0xa8,0xe3,0x82,0x99,0xe3,0x81,0xaf,0xe3,0x82,0x99,0xe3,0x81,0xaf,0xe3,0x82,0x9a,0xe3,0x81,0xb2,0xe3,0x82,
2570
  0x99,0xe3,0x81,0xb2,0xe3,0x82,0x9a,0xe3,0x81,0xb5,0xe3,0x82,0x99,0xe3,0x81,0xb5,0xe3,0x82,0x9a,0xe3,0x81,0xb8,0xe3,0x82,0x99,0xe3,0x81,0xb8,0xe3,0x82,0x9a,0xe3,
2571
  0x81,0xbb,0xe3,0x82,0x99,0xe3,0x81,0xbb,0xe3,0x82,0x9a,0xe3,0x81,0x86,0xe3,0x82,0x99,0x20,0xe3,0x82,0x99,0x20,0xe3,0x82,0x9a,0xe3,0x82,0x9d,0xe3,0x82,0x99,0xe3,
2572
  0x82,0x88,0xe3,0x82,0x8a,0xe3,0x82,0xab,0xe3,0x82,0x99,0xe3,0x82,0xad,0xe3,0x82,0x99,0xe3,0x82,0xaf,0xe3,0x82,0x99,0xe3,0x82,0xb1,0xe3,0x82,0x99,0xe3,0x82,0xb3,
2573
  0xe3,0x82,0x99,0xe3,0x82,0xb5,0xe3,0x82,0x99,0xe3,0x82,0xb7,0xe3,0x82,0x99,0xe3,0x82,0xb9,0xe3,0x82,0x99,0xe3,0x82,0xbb,0xe3,0x82,0x99,0xe3,0x82,0xbd,0xe3,0x82,
2574
  0x99,0xe3,0x82,0xbf,0xe3,0x82,0x99,0xe3,0x83,0x81,0xe3,0x82,0x99,0xe3,0x83,0x84,0xe3,0x82,0x99,0xe3,0x83,0x86,0xe3,0x82,0x99,0xe3,0x83,0x88,0xe3,0x82,0x99,0xe3,
2575
  0x83,0x8f,0xe3,0x82,0x99,0xe3,0x83,0x8f,0xe3,0x82,0x9a,0xe3,0x83,0x92,0xe3,0x82,0x99,0xe3,0x83,0x92,0xe3,0x82,0x9a,0xe3,0x83,0x95,0xe3,0x82,0x99,0xe3,0x83,0x95,
2576
  0xe3,0x82,0x9a,0xe3,0x83,0x98,0xe3,0x82,0x99,0xe3,0x83,0x98,0xe3,0x82,0x9a,0xe3,0x83,0x9b,0xe3,0x82,0x99,0xe3,0x83,0x9b,0xe3,0x82,0x9a,0xe3,0x82,0xa6,0xe3,0x82,
2577
  0x99,0xe3,0x83,0xaf,0xe3,0x82,0x99,0xe3,0x83,0xb0,0xe3,0x82,0x99,0xe3,0x83,0xb1,0xe3,0x82,0x99,0xe3,0x83,0xb2,0xe3,0x82,0x99,0xe3,0x83,0xbd,0xe3,0x82,0x99,0xe3,
2578
  0x82,0xb3,0xe3,0x83,0x88,0xe1,0x84,0x80,0xe1,0x84,0x81,0xe1,0x86,0xaa,0xe1,0x84,0x82,0xe1,0x86,0xac,0xe1,0x86,0xad,0xe1,0x84,0x83,0xe1,0x84,0x84,0xe1,0x84,0x85,
2579
  0xe1,0x86,0xb0,0xe1,0x86,0xb1,0xe1,0x86,0xb2,0xe1,0x86,0xb3,0xe1,0x86,0xb4,0xe1,0x86,0xb5,0xe1,0x84,0x9a,0xe1,0x84,0x86,0xe1,0x84,0x87,0xe1,0x84,0x88,0xe1,0x84,
2580
  0xa1,0xe1,0x84,0x89,0xe1,0x84,0x8a,0xe1,0x84,0x8b,0xe1,0x84,0x8c,0xe1,0x84,0x8d,0xe1,0x84,0x8e,0xe1,0x84,0x8f,0xe1,0x84,0x90,0xe1,0x84,0x91,0xe1,0x84,0x92,0xe1,
2581
  0x85,0xa1,0xe1,0x85,0xa2,0xe1,0x85,0xa3,0xe1,0x85,0xa4,0xe1,0x85,0xa5,0xe1,0x85,0xa6,0xe1,0x85,0xa7,0xe1,0x85,0xa8,0xe1,0x85,0xa9,0xe1,0x85,0xaa,0xe1,0x85,0xab,
2582
  0xe1,0x85,0xac,0xe1,0x85,0xad,0xe1,0x85,0xae,0xe1,0x85,0xaf,0xe1,0x85,0xb0,0xe1,0x85,0xb1,0xe1,0x85,0xb2,0xe1,0x85,0xb3,0xe1,0x85,0xb4,0xe1,0x85,0xb5,0xe1,0x85,
2583
  0xa0,0xe1,0x84,0x94,0xe1,0x84,0x95,0xe1,0x87,0x87,0xe1,0x87,0x88,0xe1,0x87,0x8c,0xe1,0x87,0x8e,0xe1,0x87,0x93,0xe1,0x87,0x97,0xe1,0x87,0x99,0xe1,0x84,0x9c,0xe1,
2584
  0x87,0x9d,0xe1,0x87,0x9f,0xe1,0x84,0x9d,0xe1,0x84,0x9e,0xe1,0x84,0xa0,0xe1,0x84,0xa2,0xe1,0x84,0xa3,0xe1,0x84,0xa7,0xe1,0x84,0xa9,0xe1,0x84,0xab,0xe1,0x84,0xac,
2585
  0xe1,0x84,0xad,0xe1,0x84,0xae,0xe1,0x84,0xaf,0xe1,0x84,0xb2,0xe1,0x84,0xb6,0xe1,0x85,0x80,0xe1,0x85,0x87,0xe1,0x85,0x8c,0xe1,0x87,0xb1,0xe1,0x87,0xb2,0xe1,0x85,
2586
  0x97,0xe1,0x85,0x98,0xe1,0x85,0x99,0xe1,0x86,0x84,0xe1,0x86,0x85,0xe1,0x86,0x88,0xe1,0x86,0x91,0xe1,0x86,0x92,0xe1,0x86,0x94,0xe1,0x86,0x9e,0xe1,0x86,0xa1,0xe4,
2587
  0xb8,0x80,0xe4,0xba,0x8c,0xe4,0xb8,0x89,0xe5,0x9b,0x9b,0xe4,0xb8,0x8a,0xe4,0xb8,0xad,0xe4,0xb8,0x8b,0xe7,0x94,0xb2,0xe4,0xb9,0x99,0xe4,0xb8,0x99,0xe4,0xb8,0x81,
2588
  0xe5,0xa4,0xa9,0xe5,0x9c,0xb0,0xe4,0xba,0xba,0x28,0xe1,0x84,0x80,0x29,0x28,0xe1,0x84,0x82,0x29,0x28,0xe1,0x84,0x83,0x29,0x28,0xe1,0x84,0x85,0x29,0x28,0xe1,0x84,
2589
  0x86,0x29,0x28,0xe1,0x84,0x87,0x29,0x28,0xe1,0x84,0x89,0x29,0x28,0xe1,0x84,0x8b,0x29,0x28,0xe1,0x84,0x8c,0x29,0x28,0xe1,0x84,0x8e,0x29,0x28,0xe1,0x84,0x8f,0x29,
2590
  0x28,0xe1,0x84,0x90,0x29,0x28,0xe1,0x84,0x91,0x29,0x28,0xe1,0x84,0x92,0x29,0x28,0xe1,0x84,0x80,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x82,0xe1,0x85,0xa1,0x29,0x28,
2591
  0xe1,0x84,0x83,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x85,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x86,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x87,0xe1,0x85,0xa1,0x29,0x28,
2592
  0xe1,0x84,0x89,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x8b,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x8c,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x8e,0xe1,0x85,0xa1,0x29,0x28,
2593
  0xe1,0x84,0x8f,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x90,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x91,0xe1,0x85,0xa1,0x29,0x28,0xe1,0x84,0x92,0xe1,0x85,0xa1,0x29,0x28,
2594
  0xe1,0x84,0x8c,0xe1,0x85,0xae,0x29,0x28,0xe1,0x84,0x8b,0xe1,0x85,0xa9,0xe1,0x84,0x8c,0xe1,0x85,0xa5,0xe1,0x86,0xab,0x29,0x28,0xe1,0x84,0x8b,0xe1,0x85,0xa9,0xe1,
2595
  0x84,0x92,0xe1,0x85,0xae,0x29,0x28,0xe4,0xb8,0x80,0x29,0x28,0xe4,0xba,0x8c,0x29,0x28,0xe4,0xb8,0x89,0x29,0x28,0xe5,0x9b,0x9b,0x29,0x28,0xe4,0xba,0x94,0x29,0x28,
2596
  0xe5,0x85,0xad,0x29,0x28,0xe4,0xb8,0x83,0x29,0x28,0xe5,0x85,0xab,0x29,0x28,0xe4,0xb9,0x9d,0x29,0x28,0xe5,0x8d,0x81,0x29,0x28,0xe6,0x9c,0x88,0x29,0x28,0xe7,0x81,
2597
  0xab,0x29,0x28,0xe6,0xb0,0xb4,0x29,0x28,0xe6,0x9c,0xa8,0x29,0x28,0xe9,0x87,0x91,0x29,0x28,0xe5,0x9c,0x9f,0x29,0x28,0xe6,0x97,0xa5,0x29,0x28,0xe6,0xa0,0xaa,0x29,
2598
  0x28,0xe6,0x9c,0x89,0x29,0x28,0xe7,0xa4,0xbe,0x29,0x28,0xe5,0x90,0x8d,0x29,0x28,0xe7,0x89,0xb9,0x29,0x28,0xe8,0xb2,0xa1,0x29,0x28,0xe7,0xa5,0x9d,0x29,0x28,0xe5,
2599
  0x8a,0xb4,0x29,0x28,0xe4,0xbb,0xa3,0x29,0x28,0xe5,0x91,0xbc,0x29,0x28,0xe5,0xad,0xa6,0x29,0x28,0xe7,0x9b,0xa3,0x29,0x28,0xe4,0xbc,0x81,0x29,0x28,0xe8,0xb3,0x87,
2600
  0x29,0x28,0xe5,0x8d,0x94,0x29,0x28,0xe7,0xa5,0xad,0x29,0x28,0xe4,0xbc,0x91,0x29,0x28,0xe8,0x87,0xaa,0x29,0x28,0xe8,0x87,0xb3,0x29,0xe5,0x95,0x8f,0xe5,0xb9,0xbc,
2601
  0xe6,0x96,0x87,0xe7,0xae,0x8f,0x50,0x54,0x45,0x32,0x31,0x32,0x32,0x32,0x33,0x32,0x34,0x32,0x35,0x32,0x36,0x32,0x37,0x32,0x38,0x32,0x39,0x33,0x30,0x33,0x31,0x33,
2602
  0x32,0x33,0x33,0x33,0x34,0x33,0x35,0xe1,0x84,0x80,0xe1,0x84,0x82,0xe1,0x84,0x83,0xe1,0x84,0x85,0xe1,0x84,0x86,0xe1,0x84,0x87,0xe1,0x84,0x89,0xe1,0x84,0x8b,0xe1,
2603
  0x84,0x8c,0xe1,0x84,0x8e,0xe1,0x84,0x8f,0xe1,0x84,0x90,0xe1,0x84,0x91,0xe1,0x84,0x92,0xe1,0x84,0x80,0xe1,0x85,0xa1,0xe1,0x84,0x82,0xe1,0x85,0xa1,0xe1,0x84,0x83,
2604
  0xe1,0x85,0xa1,0xe1,0x84,0x85,0xe1,0x85,0xa1,0xe1,0x84,0x86,0xe1,0x85,0xa1,0xe1,0x84,0x87,0xe1,0x85,0xa1,0xe1,0x84,0x89,0xe1,0x85,0xa1,0xe1,0x84,0x8b,0xe1,0x85,
2605
  0xa1,0xe1,0x84,0x8c,0xe1,0x85,0xa1,0xe1,0x84,0x8e,0xe1,0x85,0xa1,0xe1,0x84,0x8f,0xe1,0x85,0xa1,0xe1,0x84,0x90,0xe1,0x85,0xa1,0xe1,0x84,0x91,0xe1,0x85,0xa1,0xe1,
2606
  0x84,0x92,0xe1,0x85,0xa1,0xe1,0x84,0x8e,0xe1,0x85,0xa1,0xe1,0x86,0xb7,0xe1,0x84,0x80,0xe1,0x85,0xa9,0xe1,0x84,0x8c,0xe1,0x85,0xae,0xe1,0x84,0x8b,0xe1,0x85,0xb4,
2607
  0xe1,0x84,0x8b,0xe1,0x85,0xae,0xe4,0xb8,0x80,0xe4,0xba,0x8c,0xe4,0xb8,0x89,0xe5,0x9b,0x9b,0xe4,0xba,0x94,0xe5,0x85,0xad,0xe4,0xb8,0x83,0xe5,0x85,0xab,0xe4,0xb9,
2608
  0x9d,0xe5,0x8d,0x81,0xe6,0x9c,0x88,0xe7,0x81,0xab,0xe6,0xb0,0xb4,0xe6,0x9c,0xa8,0xe9,0x87,0x91,0xe5,0x9c,0x9f,0xe6,0x97,0xa5,0xe6,0xa0,0xaa,0xe6,0x9c,0x89,0xe7,
2609
  0xa4,0xbe,0xe5,0x90,0x8d,0xe7,0x89,0xb9,0xe8,0xb2,0xa1,0xe7,0xa5,0x9d,0xe5,0x8a,0xb4,0xe7,0xa7,0x98,0xe7,0x94,0xb7,0xe5,0xa5,0xb3,0xe9,0x81,0xa9,0xe5,0x84,0xaa,
2610
  0xe5,0x8d,0xb0,0xe6,0xb3,0xa8,0xe9,0xa0,0x85,0xe4,0xbc,0x91,0xe5,0x86,0x99,0xe6,0xad,0xa3,0xe4,0xb8,0x8a,0xe4,0xb8,0xad,0xe4,0xb8,0x8b,0xe5,0xb7,0xa6,0xe5,0x8f,
2611
  0xb3,0xe5,0x8c,0xbb,0xe5,0xae,0x97,0xe5,0xad,0xa6,0xe7,0x9b,0xa3,0xe4,0xbc,0x81,0xe8,0xb3,0x87,0xe5,0x8d,0x94,0xe5,0xa4,0x9c,0x33,0x36,0x33,0x37,0x33,0x38,0x33,
2612
  0x39,0x34,0x30,0x34,0x31,0x34,0x32,0x34,0x33,0x34,0x34,0x34,0x35,0x34,0x36,0x34,0x37,0x34,0x38,0x34,0x39,0x35,0x30,0x31,0xe6,0x9c,0x88,0x32,0xe6,0x9c,0x88,0x33,
2613
  0xe6,0x9c,0x88,0x34,0xe6,0x9c,0x88,0x35,0xe6,0x9c,0x88,0x36,0xe6,0x9c,0x88,0x37,0xe6,0x9c,0x88,0x38,0xe6,0x9c,0x88,0x39,0xe6,0x9c,0x88,0x31,0x30,0xe6,0x9c,0x88,
2614
  0x31,0x31,0xe6,0x9c,0x88,0x31,0x32,0xe6,0x9c,0x88,0x48,0x67,0x65,0x72,0x67,0x65,0x56,0x4c,0x54,0x44,0xe3,0x82,0xa2,0xe3,0x82,0xa4,0xe3,0x82,0xa6,0xe3,0x82,0xa8,
2615
  0xe3,0x82,0xaa,0xe3,0x82,0xab,0xe3,0x82,0xad,0xe3,0x82,0xaf,0xe3,0x82,0xb1,0xe3,0x82,0xb3,0xe3,0x82,0xb5,0xe3,0x82,0xb7,0xe3,0x82,0xb9,0xe3,0x82,0xbb,0xe3,0x82,
2616
  0xbd,0xe3,0x82,0xbf,0xe3,0x83,0x81,0xe3,0x83,0x84,0xe3,0x83,0x86,0xe3,0x83,0x88,0xe3,0x83,0x8a,0xe3,0x83,0x8b,0xe3,0x83,0x8c,0xe3,0x83,0x8d,0xe3,0x83,0x8e,0xe3,
2617
  0x83,0x8f,0xe3,0x83,0x92,0xe3,0x83,0x95,0xe3,0x83,0x98,0xe3,0x83,0x9b,0xe3,0x83,0x9e,0xe3,0x83,0x9f,0xe3,0x83,0xa0,0xe3,0x83,0xa1,0xe3,0x83,0xa2,0xe3,0x83,0xa4,
2618
  0xe3,0x83,0xa6,0xe3,0x83,0xa8,0xe3,0x83,0xa9,0xe3,0x83,0xaa,0xe3,0x83,0xab,0xe3,0x83,0xac,0xe3,0x83,0xad,0xe3,0x83,0xaf,0xe3,0x83,0xb0,0xe3,0x83,0xb1,0xe3,0x83,
2619
  0xb2,0xe4,0xbb,0xa4,0xe5,0x92,0x8c,0xe3,0x82,0xa2,0xe3,0x83,0x91,0xe3,0x83,0xbc,0xe3,0x83,0x88,0xe3,0x82,0xa2,0xe3,0x83,0xab,0xe3,0x83,0x95,0xe3,0x82,0xa1,0xe3,
2620
  0x82,0xa2,0xe3,0x83,0xb3,0xe3,0x83,0x9a,0xe3,0x82,0xa2,0xe3,0x82,0xa2,0xe3,0x83,0xbc,0xe3,0x83,0xab,0xe3,0x82,0xa4,0xe3,0x83,0x8b,0xe3,0x83,0xb3,0xe3,0x82,0xb0,
2621
  0xe3,0x82,0xa4,0xe3,0x83,0xb3,0xe3,0x83,0x81,0xe3,0x82,0xa6,0xe3,0x82,0xa9,0xe3,0x83,0xb3,0xe3,0x82,0xa8,0xe3,0x82,0xb9,0xe3,0x82,0xaf,0xe3,0x83,0xbc,0xe3,0x83,
2622
  0x89,0xe3,0x82,0xa8,0xe3,0x83,0xbc,0xe3,0x82,0xab,0xe3,0x83,0xbc,0xe3,0x82,0xaa,0xe3,0x83,0xb3,0xe3,0x82,0xb9,0xe3,0x82,0xaa,0xe3,0x83,0xbc,0xe3,0x83,0xa0,0xe3,
2623
  0x82,0xab,0xe3,0x82,0xa4,0xe3,0x83,0xaa,0xe3,0x82,0xab,0xe3,0x83,0xa9,0xe3,0x83,0x83,0xe3,0x83,0x88,0xe3,0x82,0xab,0xe3,0x83,0xad,0xe3,0x83,0xaa,0xe3,0x83,0xbc,
2624
  0xe3,0x82,0xac,0xe3,0x83,0xad,0xe3,0x83,0xb3,0xe3,0x82,0xac,0xe3,0x83,0xb3,0xe3,0x83,0x9e,0xe3,0x82,0xae,0xe3,0x82,0xac,0xe3,0x82,0xae,0xe3,0x83,0x8b,0xe3,0x83,
2625
  0xbc,0xe3,0x82,0xad,0xe3,0x83,0xa5,0xe3,0x83,0xaa,0xe3,0x83,0xbc,0xe3,0x82,0xae,0xe3,0x83,0xab,0xe3,0x83,0x80,0xe3,0x83,0xbc,0xe3,0x82,0xad,0xe3,0x83,0xad,0xe3,
2626
  0x82,0xad,0xe3,0x83,0xad,0xe3,0x82,0xb0,0xe3,0x83,0xa9,0xe3,0x83,0xa0,0xe3,0x82,0xad,0xe3,0x83,0xad,0xe3,0x83,0xa1,0xe3,0x83,0xbc,0xe3,0x83,0x88,0xe3,0x83,0xab,
2627
  0xe3,0x82,0xad,0xe3,0x83,0xad,0xe3,0x83,0xaf,0xe3,0x83,0x83,0xe3,0x83,0x88,0xe3,0x82,0xb0,0xe3,0x83,0xa9,0xe3,0x83,0xa0,0xe3,0x82,0xb0,0xe3,0x83,0xa9,0xe3,0x83,
2628
  0xa0,0xe3,0x83,0x88,0xe3,0x83,0xb3,0xe3,0x82,0xaf,0xe3,0x83,0xab,0xe3,0x82,0xbc,0xe3,0x82,0xa4,0xe3,0x83,0xad,0xe3,0x82,0xaf,0xe3,0x83,0xad,0xe3,0x83,0xbc,0xe3,
2629
  0x83,0x8d,0xe3,0x82,0xb1,0xe3,0x83,0xbc,0xe3,0x82,0xb9,0xe3,0x82,0xb3,0xe3,0x83,0xab,0xe3,0x83,0x8a,0xe3,0x82,0xb3,0xe3,0x83,0xbc,0xe3,0x83,0x9d,0xe3,0x82,0xb5,
2630
  0xe3,0x82,0xa4,0xe3,0x82,0xaf,0xe3,0x83,0xab,0xe3,0x82,0xb5,0xe3,0x83,0xb3,0xe3,0x83,0x81,0xe3,0x83,0xbc,0xe3,0x83,0xa0,0xe3,0x82,0xb7,0xe3,0x83,0xaa,0xe3,0x83,
2631
  0xb3,0xe3,0x82,0xb0,0xe3,0x82,0xbb,0xe3,0x83,0xb3,0xe3,0x83,0x81,0xe3,0x82,0xbb,0xe3,0x83,0xb3,0xe3,0x83,0x88,0xe3,0x83,0x80,0xe3,0x83,0xbc,0xe3,0x82,0xb9,0xe3,
2632
  0x83,0x87,0xe3,0x82,0xb7,0xe3,0x83,0x89,0xe3,0x83,0xab,0xe3,0x83,0x88,0xe3,0x83,0xb3,0xe3,0x83,0x8a,0xe3,0x83,0x8e,0xe3,0x83,0x8e,0xe3,0x83,0x83,0xe3,0x83,0x88,
2633
  0xe3,0x83,0x8f,0xe3,0x82,0xa4,0xe3,0x83,0x84,0xe3,0x83,0x91,0xe3,0x83,0xbc,0xe3,0x82,0xbb,0xe3,0x83,0xb3,0xe3,0x83,0x88,0xe3,0x83,0x91,0xe3,0x83,0xbc,0xe3,0x83,
2634
  0x84,0xe3,0x83,0x90,0xe3,0x83,0xbc,0xe3,0x83,0xac,0xe3,0x83,0xab,0xe3,0x83,0x94,0xe3,0x82,0xa2,0xe3,0x82,0xb9,0xe3,0x83,0x88,0xe3,0x83,0xab,0xe3,0x83,0x94,0xe3,
2635
  0x82,0xaf,0xe3,0x83,0xab,0xe3,0x83,0x94,0xe3,0x82,0xb3,0xe3,0x83,0x93,0xe3,0x83,0xab,0xe3,0x83,0x95,0xe3,0x82,0xa1,0xe3,0x83,0xa9,0xe3,0x83,0x83,0xe3,0x83,0x89,
2636
  0xe3,0x83,0x95,0xe3,0x82,0xa3,0xe3,0x83,0xbc,0xe3,0x83,0x88,0xe3,0x83,0x96,0xe3,0x83,0x83,0xe3,0x82,0xb7,0xe3,0x82,0xa7,0xe3,0x83,0xab,0xe3,0x83,0x95,0xe3,0x83,
2637
  0xa9,0xe3,0x83,0xb3,0xe3,0x83,0x98,0xe3,0x82,0xaf,0xe3,0x82,0xbf,0xe3,0x83,0xbc,0xe3,0x83,0xab,0xe3,0x83,0x9a,0xe3,0x82,0xbd,0xe3,0x83,0x9a,0xe3,0x83,0x8b,0xe3,
2638
  0x83,0x92,0xe3,0x83,0x98,0xe3,0x83,0xab,0xe3,0x83,0x84,0xe3,0x83,0x9a,0xe3,0x83,0xb3,0xe3,0x82,0xb9,0xe3,0x83,0x9a,0xe3,0x83,0xbc,0xe3,0x82,0xb8,0xe3,0x83,0x99,
2639
  0xe3,0x83,0xbc,0xe3,0x82,0xbf,0xe3,0x83,0x9d,0xe3,0x82,0xa4,0xe3,0x83,0xb3,0xe3,0x83,0x88,0xe3,0x83,0x9c,0xe3,0x83,0xab,0xe3,0x83,0x88,0xe3,0x83,0x9b,0xe3,0x83,
2640
  0xb3,0xe3,0x83,0x9d,0xe3,0x83,0xb3,0xe3,0x83,0x89,0xe3,0x83,0x9b,0xe3,0x83,0xbc,0xe3,0x83,0xab,0xe3,0x83,0x9b,0xe3,0x83,0xbc,0xe3,0x83,0xb3,0xe3,0x83,0x9e,0xe3,
2641
  0x82,0xa4,0xe3,0x82,0xaf,0xe3,0x83,0xad,0xe3,0x83,0x9e,0xe3,0x82,0xa4,0xe3,0x83,0xab,0xe3,0x83,0x9e,0xe3,0x83,0x83,0xe3,0x83,0x8f,0xe3,0x83,0x9e,0xe3,0x83,0xab,
2642
  0xe3,0x82,0xaf,0xe3,0x83,0x9e,0xe3,0x83,0xb3,0xe3,0x82,0xb7,0xe3,0x83,0xa7,0xe3,0x83,0xb3,0xe3,0x83,0x9f,0xe3,0x82,0xaf,0xe3,0x83,0xad,0xe3,0x83,0xb3,0xe3,0x83,
2643
  0x9f,0xe3,0x83,0xaa,0xe3,0x83,0x9f,0xe3,0x83,0xaa,0xe3,0x83,0x90,0xe3,0x83,0xbc,0xe3,0x83,0xab,0xe3,0x83,0xa1,0xe3,0x82,0xac,0xe3,0x83,0xa1,0xe3,0x82,0xac,0xe3,
2644
  0x83,0x88,0xe3,0x83,0xb3,0xe3,0x83,0xa1,0xe3,0x83,0xbc,0xe3,0x83,0x88,0xe3,0x83,0xab,0xe3,0x83,0xa4,0xe3,0x83,0xbc,0xe3,0x83,0x89,0xe3,0x83,0xa4,0xe3,0x83,0xbc,
2645
  0xe3,0x83,0xab,0xe3,0x83,0xa6,0xe3,0x82,0xa2,0xe3,0x83,0xb3,0xe3,0x83,0xaa,0xe3,0x83,0x83,0xe3,0x83,0x88,0xe3,0x83,0xab,0xe3,0x83,0xaa,0xe3,0x83,0xa9,0xe3,0x83,
2646
  0xab,0xe3,0x83,0x94,0xe3,0x83,0xbc,0xe3,0x83,0xab,0xe3,0x83,0xbc,0xe3,0x83,0x96,0xe3,0x83,0xab,0xe3,0x83,0xac,0xe3,0x83,0xa0,0xe3,0x83,0xac,0xe3,0x83,0xb3,0xe3,
2647
  0x83,0x88,0xe3,0x82,0xb2,0xe3,0x83,0xb3,0xe3,0x83,0xaf,0xe3,0x83,0x83,0xe3,0x83,0x88,0x30,0xe7,0x82,0xb9,0x31,0xe7,0x82,0xb9,0x32,0xe7,0x82,0xb9,0x33,0xe7,0x82,
2648
  0xb9,0x34,0xe7,0x82,0xb9,0x35,0xe7,0x82,0xb9,0x36,0xe7,0x82,0xb9,0x37,0xe7,0x82,0xb9,0x38,0xe7,0x82,0xb9,0x39,0xe7,0x82,0xb9,0x31,0x30,0xe7,0x82,0xb9,0x31,0x31,
2649
  0xe7,0x82,0xb9,0x31,0x32,0xe7,0x82,0xb9,0x31,0x33,0xe7,0x82,0xb9,0x31,0x34,0xe7,0x82,0xb9,0x31,0x35,0xe7,0x82,0xb9,0x31,0x36,0xe7,0x82,0xb9,0x31,0x37,0xe7,0x82,
2650
  0xb9,0x31,0x38,0xe7,0x82,0xb9,0x31,0x39,0xe7,0x82,0xb9,0x32,0x30,0xe7,0x82,0xb9,0x32,0x31,0xe7,0x82,0xb9,0x32,0x32,0xe7,0x82,0xb9,0x32,0x33,0xe7,0x82,0xb9,0x32,
2651
  0x34,0xe7,0x82,0xb9,0x68,0x50,0x61,0x64,0x61,0x41,0x55,0x62,0x61,0x72,0x6f,0x56,0x70,0x63,0x64,0x6d,0x64,0x6d,0xc2,0xb2,0x64,0x6d,0xc2,0xb3,0x49,0x55,0xe5,0xb9,
2652
  0xb3,0xe6,0x88,0x90,0xe6,0x98,0xad,0xe5,0x92,0x8c,0xe5,0xa4,0xa7,0xe6,0xad,0xa3,0xe6,0x98,0x8e,0xe6,0xb2,0xbb,0xe6,0xa0,0xaa,0xe5,0xbc,0x8f,0xe4,0xbc,0x9a,0xe7,
2653
  0xa4,0xbe,0x70,0x41,0x6e,0x41,0xce,0xbc,0x41,0x6d,0x41,0x6b,0x41,0x4b,0x42,0x4d,0x42,0x47,0x42,0x63,0x61,0x6c,0x6b,0x63,0x61,0x6c,0x70,0x46,0x6e,0x46,0xce,0xbc,
2654
  0x46,0xce,0xbc,0x67,0x6d,0x67,0x6b,0x67,0x48,0x7a,0x6b,0x48,0x7a,0x4d,0x48,0x7a,0x47,0x48,0x7a,0x54,0x48,0x7a,0xce,0xbc,0xe2,0x84,0x93,0x6d,0xe2,0x84,0x93,0x64,
2655
  0xe2,0x84,0x93,0x6b,0xe2,0x84,0x93,0x66,0x6d,0x6e,0x6d,0xce,0xbc,0x6d,0x6d,0x6d,0x63,0x6d,0x6b,0x6d,0x6d,0x6d,0xc2,0xb2,0x63,0x6d,0xc2,0xb2,0x6d,0xc2,0xb2,0x6b,
2656
  0x6d,0xc2,0xb2,0x6d,0x6d,0xc2,0xb3,0x63,0x6d,0xc2,0xb3,0x6d,0xc2,0xb3,0x6b,0x6d,0xc2,0xb3,0x6d,0xe2,0x88,0x95,0x73,0x6d,0xe2,0x88,0x95,0x73,0xc2,0xb2,0x50,0x61,
2657
  0x6b,0x50,0x61,0x4d,0x50,0x61,0x47,0x50,0x61,0x72,0x61,0x64,0x72,0x61,0x64,0xe2,0x88,0x95,0x73,0x72,0x61,0x64,0xe2,0x88,0x95,0x73,0xc2,0xb2,0x70,0x73,0x6e,0x73,
2658
  0xce,0xbc,0x73,0x6d,0x73,0x70,0x56,0x6e,0x56,0xce,0xbc,0x56,0x6d,0x56,0x6b,0x56,0x4d,0x56,0x70,0x57,0x6e,0x57,0xce,0xbc,0x57,0x6d,0x57,0x6b,0x57,0x4d,0x57,0x6b,
2659
  0xce,0xa9,0x4d,0xce,0xa9,0x61,0x2e,0x6d,0x2e,0x42,0x71,0x63,0x63,0x63,0x64,0x43,0xe2,0x88,0x95,0x6b,0x67,0x43,0x6f,0x2e,0x64,0x42,0x47,0x79,0x68,0x61,0x48,0x50,
2660
  0x69,0x6e,0x4b,0x4b,0x4b,0x4d,0x6b,0x74,0x6c,0x6d,0x6c,0x6e,0x6c,0x6f,0x67,0x6c,0x78,0x6d,0x62,0x6d,0x69,0x6c,0x6d,0x6f,0x6c,0x50,0x48,0x70,0x2e,0x6d,0x2e,0x50,
2661
  0x50,0x4d,0x50,0x52,0x73,0x72,0x53,0x76,0x57,0x62,0x56,0xe2,0x88,0x95,0x6d,0x41,0xe2,0x88,0x95,0x6d,0x31,0xe6,0x97,0xa5,0x32,0xe6,0x97,0xa5,0x33,0xe6,0x97,0xa5,
2662
  0x34,0xe6,0x97,0xa5,0x35,0xe6,0x97,0xa5,0x36,0xe6,0x97,0xa5,0x37,0xe6,0x97,0xa5,0x38,0xe6,0x97,0xa5,0x39,0xe6,0x97,0xa5,0x31,0x30,0xe6,0x97,0xa5,0x31,0x31,0xe6,
2663
  0x97,0xa5,0x31,0x32,0xe6,0x97,0xa5,0x31,0x33,0xe6,0x97,0xa5,0x31,0x34,0xe6,0x97,0xa5,0x31,0x35,0xe6,0x97,0xa5,0x31,0x36,0xe6,0x97,0xa5,0x31,0x37,0xe6,0x97,0xa5,
2664
  0x31,0x38,0xe6,0x97,0xa5,0x31,0x39,0xe6,0x97,0xa5,0x32,0x30,0xe6,0x97,0xa5,0x32,0x31,0xe6,0x97,0xa5,0x32,0x32,0xe6,0x97,0xa5,0x32,0x33,0xe6,0x97,0xa5,0x32,0x34,
2665
  0xe6,0x97,0xa5,0x32,0x35,0xe6,0x97,0xa5,0x32,0x36,0xe6,0x97,0xa5,0x32,0x37,0xe6,0x97,0xa5,0x32,0x38,0xe6,0x97,0xa5,0x32,0x39,0xe6,0x97,0xa5,0x33,0x30,0xe6,0x97,
2666
  0xa5,0x33,0x31,0xe6,0x97,0xa5,0x67,0x61,0x6c,0xd1,0x8a,0xd1,0x8c,0xea,0x9d,0xaf,0x53,0x43,0x46,0x51,0xc4,0xa6,0xc5,0x93,0xea,0x9c,0xa7,0xea,0xac,0xb7,0xc9,0xab,
2667
  0xea,0xad,0x92,0xca,0x8d,0xe8,0xb1,0x88,0xe6,0x9b,0xb4,0xe8,0xbb,0x8a,0xe8,0xb3,0x88,0xe6,0xbb,0x91,0xe4,0xb8,0xb2,0xe5,0x8f,0xa5,0xe9,0xbe,0x9c,0xe9,0xbe,0x9c,
2668
  0xe5,0xa5,0x91,0xe9,0x87,0x91,0xe5,0x96,0x87,0xe5,0xa5,0x88,0xe6,0x87,0xb6,0xe7,0x99,0xa9,0xe7,0xbe,0x85,0xe8,0x98,0xbf,0xe8,0x9e,0xba,0xe8,0xa3,0xb8,0xe9,0x82,
2669
  0x8f,0xe6,0xa8,0x82,0xe6,0xb4,0x9b,0xe7,0x83,0x99,0xe7,0x8f,0x9e,0xe8,0x90,0xbd,0xe9,0x85,0xaa,0xe9,0xa7,0xb1,0xe4,0xba,0x82,0xe5,0x8d,0xb5,0xe6,0xac,0x84,0xe7,
2670
  0x88,0x9b,0xe8,0x98,0xad,0xe9,0xb8,0x9e,0xe5,0xb5,0x90,0xe6,0xbf,0xab,0xe8,0x97,0x8d,0xe8,0xa5,0xa4,0xe6,0x8b,0x89,0xe8,0x87,0x98,0xe8,0xa0,0x9f,0xe5,0xbb,0x8a,
2671
  0xe6,0x9c,0x97,0xe6,0xb5,0xaa,0xe7,0x8b,0xbc,0xe9,0x83,0x8e,0xe4,0xbe,0x86,0xe5,0x86,0xb7,0xe5,0x8b,0x9e,0xe6,0x93,0x84,0xe6,0xab,0x93,0xe7,0x88,0x90,0xe7,0x9b,
2672
  0xa7,0xe8,0x80,0x81,0xe8,0x98,0x86,0xe8,0x99,0x9c,0xe8,0xb7,0xaf,0xe9,0x9c,0xb2,0xe9,0xad,0xaf,0xe9,0xb7,0xba,0xe7,0xa2,0x8c,0xe7,0xa5,0xbf,0xe7,0xb6,0xa0,0xe8,
2673
  0x8f,0x89,0xe9,0x8c,0x84,0xe9,0xb9,0xbf,0xe8,0xab,0x96,0xe5,0xa3,0x9f,0xe5,0xbc,0x84,0xe7,0xb1,0xa0,0xe8,0x81,0xbe,0xe7,0x89,0xa2,0xe7,0xa3,0x8a,0xe8,0xb3,0x82,
2674
  0xe9,0x9b,0xb7,0xe5,0xa3,0x98,0xe5,0xb1,0xa2,0xe6,0xa8,0x93,0xe6,0xb7,0x9a,0xe6,0xbc,0x8f,0xe7,0xb4,0xaf,0xe7,0xb8,0xb7,0xe9,0x99,0x8b,0xe5,0x8b,0x92,0xe8,0x82,
2675
  0x8b,0xe5,0x87,0x9c,0xe5,0x87,0x8c,0xe7,0xa8,0x9c,0xe7,0xb6,0xbe,0xe8,0x8f,0xb1,0xe9,0x99,0xb5,0xe8,0xae,0x80,0xe6,0x8b,0x8f,0xe6,0xa8,0x82,0xe8,0xab,0xbe,0xe4,
2676
  0xb8,0xb9,0xe5,0xaf,0xa7,0xe6,0x80,0x92,0xe7,0x8e,0x87,0xe7,0x95,0xb0,0xe5,0x8c,0x97,0xe7,0xa3,0xbb,0xe4,0xbe,0xbf,0xe5,0xbe,0xa9,0xe4,0xb8,0x8d,0xe6,0xb3,0x8c,
2677
  0xe6,0x95,0xb8,0xe7,0xb4,0xa2,0xe5,0x8f,0x83,0xe5,0xa1,0x9e,0xe7,0x9c,0x81,0xe8,0x91,0x89,0xe8,0xaa,0xaa,0xe6,0xae,0xba,0xe8,0xbe,0xb0,0xe6,0xb2,0x88,0xe6,0x8b,
2678
  0xbe,0xe8,0x8b,0xa5,0xe6,0x8e,0xa0,0xe7,0x95,0xa5,0xe4,0xba,0xae,0xe5,0x85,0xa9,0xe5,0x87,0x89,0xe6,0xa2,0x81,0xe7,0xb3,0xa7,0xe8,0x89,0xaf,0xe8,0xab,0x92,0xe9,
2679
  0x87,0x8f,0xe5,0x8b,0xb5,0xe5,0x91,0x82,0xe5,0xa5,0xb3,0xe5,0xbb,0xac,0xe6,0x97,0x85,0xe6,0xbf,0xbe,0xe7,0xa4,0xaa,0xe9,0x96,0xad,0xe9,0xa9,0xaa,0xe9,0xba,0x97,
2680
  0xe9,0xbb,0x8e,0xe5,0x8a,0x9b,0xe6,0x9b,0x86,0xe6,0xad,0xb7,0xe8,0xbd,0xa2,0xe5,0xb9,0xb4,0xe6,0x86,0x90,0xe6,0x88,0x80,0xe6,0x92,0x9a,0xe6,0xbc,0xa3,0xe7,0x85,
2681
  0x89,0xe7,0x92,0x89,0xe7,0xa7,0x8a,0xe7,0xb7,0xb4,0xe8,0x81,0xaf,0xe8,0xbc,0xa6,0xe8,0x93,0xae,0xe9,0x80,0xa3,0xe9,0x8d,0x8a,0xe5,0x88,0x97,0xe5,0x8a,0xa3,0xe5,
2682
  0x92,0xbd,0xe7,0x83,0x88,0xe8,0xa3,0x82,0xe8,0xaa,0xaa,0xe5,0xbb,0x89,0xe5,0xbf,0xb5,0xe6,0x8d,0xbb,0xe6,0xae,0xae,0xe7,0xb0,0xbe,0xe7,0x8d,0xb5,0xe4,0xbb,0xa4,
2683
  0xe5,0x9b,0xb9,0xe5,0xaf,0xa7,0xe5,0xb6,0xba,0xe6,0x80,0x9c,0xe7,0x8e,0xb2,0xe7,0x91,0xa9,0xe7,0xbe,0x9a,0xe8,0x81,0x86,0xe9,0x88,0xb4,0xe9,0x9b,0xb6,0xe9,0x9d,
2684
  0x88,0xe9,0xa0,0x98,0xe4,0xbe,0x8b,0xe7,0xa6,0xae,0xe9,0x86,0xb4,0xe9,0x9a,0xb8,0xe6,0x83,0xa1,0xe4,0xba,0x86,0xe5,0x83,0x9a,0xe5,0xaf,0xae,0xe5,0xb0,0xbf,0xe6,
2685
  0x96,0x99,0xe6,0xa8,0x82,0xe7,0x87,0x8e,0xe7,0x99,0x82,0xe8,0x93,0xbc,0xe9,0x81,0xbc,0xe9,0xbe,0x8d,0xe6,0x9a,0x88,0xe9,0x98,0xae,0xe5,0x8a,0x89,0xe6,0x9d,0xbb,
2686
  0xe6,0x9f,0xb3,0xe6,0xb5,0x81,0xe6,0xba,0x9c,0xe7,0x90,0x89,0xe7,0x95,0x99,0xe7,0xa1,0xab,0xe7,0xb4,0x90,0xe9,0xa1,0x9e,0xe5,0x85,0xad,0xe6,0x88,0xae,0xe9,0x99,
2687
  0xb8,0xe5,0x80,0xab,0xe5,0xb4,0x99,0xe6,0xb7,0xaa,0xe8,0xbc,0xaa,0xe5,0xbe,0x8b,0xe6,0x85,0x84,0xe6,0xa0,0x97,0xe7,0x8e,0x87,0xe9,0x9a,0x86,0xe5,0x88,0xa9,0xe5,
2688
  0x90,0x8f,0xe5,0xb1,0xa5,0xe6,0x98,0x93,0xe6,0x9d,0x8e,0xe6,0xa2,0xa8,0xe6,0xb3,0xa5,0xe7,0x90,0x86,0xe7,0x97,0xa2,0xe7,0xbd,0xb9,0xe8,0xa3,0x8f,0xe8,0xa3,0xa1,
2689
  0xe9,0x87,0x8c,0xe9,0x9b,0xa2,0xe5,0x8c,0xbf,0xe6,0xba,0xba,0xe5,0x90,0x9d,0xe7,0x87,0x90,0xe7,0x92,0x98,0xe8,0x97,0xba,0xe9,0x9a,0xa3,0xe9,0xb1,0x97,0xe9,0xba,
2690
  0x9f,0xe6,0x9e,0x97,0xe6,0xb7,0x8b,0xe8,0x87,0xa8,0xe7,0xab,0x8b,0xe7,0xac,0xa0,0xe7,0xb2,0x92,0xe7,0x8b,0x80,0xe7,0x82,0x99,0xe8,0xad,0x98,0xe4,0xbb,0x80,0xe8,
2691
  0x8c,0xb6,0xe5,0x88,0xba,0xe5,0x88,0x87,0xe5,0xba,0xa6,0xe6,0x8b,0x93,0xe7,0xb3,0x96,0xe5,0xae,0x85,0xe6,0xb4,0x9e,0xe6,0x9a,0xb4,0xe8,0xbc,0xbb,0xe8,0xa1,0x8c,
2692
  0xe9,0x99,0x8d,0xe8,0xa6,0x8b,0xe5,0xbb,0x93,0xe5,0x85,0x80,0xe5,0x97,0x80,0xe5,0xa1,0x9a,0xe6,0x99,0xb4,0xe5,0x87,0x9e,0xe7,0x8c,0xaa,0xe7,0x9b,0x8a,0xe7,0xa4,
2693
  0xbc,0xe7,0xa5,0x9e,0xe7,0xa5,0xa5,0xe7,0xa6,0x8f,0xe9,0x9d,0x96,0xe7,0xb2,0xbe,0xe7,0xbe,0xbd,0xe8,0x98,0x92,0xe8,0xab,0xb8,0xe9,0x80,0xb8,0xe9,0x83,0xbd,0xe9,
2694
  0xa3,0xaf,0xe9,0xa3,0xbc,0xe9,0xa4,0xa8,0xe9,0xb6,0xb4,0xe9,0x83,0x9e,0xe9,0x9a,0xb7,0xe4,0xbe,0xae,0xe5,0x83,0xa7,0xe5,0x85,0x8d,0xe5,0x8b,0x89,0xe5,0x8b,0xa4,
2695
  0xe5,0x8d,0x91,0xe5,0x96,0x9d,0xe5,0x98,0x86,0xe5,0x99,0xa8,0xe5,0xa1,0x80,0xe5,0xa2,0xa8,0xe5,0xb1,0xa4,0xe5,0xb1,0xae,0xe6,0x82,0x94,0xe6,0x85,0xa8,0xe6,0x86,
2696
  0x8e,0xe6,0x87,0xb2,0xe6,0x95,0x8f,0xe6,0x97,0xa2,0xe6,0x9a,0x91,0xe6,0xa2,0x85,0xe6,0xb5,0xb7,0xe6,0xb8,0x9a,0xe6,0xbc,0xa2,0xe7,0x85,0xae,0xe7,0x88,0xab,0xe7,
2697
  0x90,0xa2,0xe7,0xa2,0x91,0xe7,0xa4,0xbe,0xe7,0xa5,0x89,0xe7,0xa5,0x88,0xe7,0xa5,0x90,0xe7,0xa5,0x96,0xe7,0xa5,0x9d,0xe7,0xa6,0x8d,0xe7,0xa6,0x8e,0xe7,0xa9,0x80,
2698
  0xe7,0xaa,0x81,0xe7,0xaf,0x80,0xe7,0xb7,0xb4,0xe7,0xb8,0x89,0xe7,0xb9,0x81,0xe7,0xbd,0xb2,0xe8,0x80,0x85,0xe8,0x87,0xad,0xe8,0x89,0xb9,0xe8,0x89,0xb9,0xe8,0x91,
2699
  0x97,0xe8,0xa4,0x90,0xe8,0xa6,0x96,0xe8,0xac,0x81,0xe8,0xac,0xb9,0xe8,0xb3,0x93,0xe8,0xb4,0x88,0xe8,0xbe,0xb6,0xe9,0x80,0xb8,0xe9,0x9b,0xa3,0xe9,0x9f,0xbf,0xe9,
2700
  0xa0,0xbb,0xe6,0x81,0xb5,0xf0,0xa4,0x8b,0xae,0xe8,0x88,0x98,0xe4,0xb8,0xa6,0xe5,0x86,0xb5,0xe5,0x85,0xa8,0xe4,0xbe,0x80,0xe5,0x85,0x85,0xe5,0x86,0x80,0xe5,0x8b,
2701
  0x87,0xe5,0x8b,0xba,0xe5,0x96,0x9d,0xe5,0x95,0x95,0xe5,0x96,0x99,0xe5,0x97,0xa2,0xe5,0xa1,0x9a,0xe5,0xa2,0xb3,0xe5,0xa5,0x84,0xe5,0xa5,0x94,0xe5,0xa9,0xa2,0xe5,
2702
  0xac,0xa8,0xe5,0xbb,0x92,0xe5,0xbb,0x99,0xe5,0xbd,0xa9,0xe5,0xbe,0xad,0xe6,0x83,0x98,0xe6,0x85,0x8e,0xe6,0x84,0x88,0xe6,0x86,0x8e,0xe6,0x85,0xa0,0xe6,0x87,0xb2,
2703
  0xe6,0x88,0xb4,0xe6,0x8f,0x84,0xe6,0x90,0x9c,0xe6,0x91,0x92,0xe6,0x95,0x96,0xe6,0x99,0xb4,0xe6,0x9c,0x97,0xe6,0x9c,0x9b,0xe6,0x9d,0x96,0xe6,0xad,0xb9,0xe6,0xae,
2704
  0xba,0xe6,0xb5,0x81,0xe6,0xbb,0x9b,0xe6,0xbb,0x8b,0xe6,0xbc,0xa2,0xe7,0x80,0x9e,0xe7,0x85,0xae,0xe7,0x9e,0xa7,0xe7,0x88,0xb5,0xe7,0x8a,0xaf,0xe7,0x8c,0xaa,0xe7,
2705
  0x91,0xb1,0xe7,0x94,0x86,0xe7,0x94,0xbb,0xe7,0x98,0x9d,0xe7,0x98,0x9f,0xe7,0x9b,0x8a,0xe7,0x9b,0x9b,0xe7,0x9b,0xb4,0xe7,0x9d,0x8a,0xe7,0x9d,0x80,0xe7,0xa3,0x8c,
2706
  0xe7,0xaa,0xb1,0xe7,0xaf,0x80,0xe7,0xb1,0xbb,0xe7,0xb5,0x9b,0xe7,0xb7,0xb4,0xe7,0xbc,0xbe,0xe8,0x80,0x85,0xe8,0x8d,0x92,0xe8,0x8f,0xaf,0xe8,0x9d,0xb9,0xe8,0xa5,
2707
  0x81,0xe8,0xa6,0x86,0xe8,0xa6,0x96,0xe8,0xaa,0xbf,0xe8,0xab,0xb8,0xe8,0xab,0x8b,0xe8,0xac,0x81,0xe8,0xab,0xbe,0xe8,0xab,0xad,0xe8,0xac,0xb9,0xe8,0xae,0x8a,0xe8,
2708
  0xb4,0x88,0xe8,0xbc,0xb8,0xe9,0x81,0xb2,0xe9,0x86,0x99,0xe9,0x89,0xb6,0xe9,0x99,0xbc,0xe9,0x9b,0xa3,0xe9,0x9d,0x96,0xe9,0x9f,0x9b,0xe9,0x9f,0xbf,0xe9,0xa0,0x8b,
2709
  0xe9,0xa0,0xbb,0xe9,0xac,0x92,0xe9,0xbe,0x9c,0xf0,0xa2,0xa1,0x8a,0xf0,0xa2,0xa1,0x84,0xf0,0xa3,0x8f,0x95,0xe3,0xae,0x9d,0xe4,0x80,0x98,0xe4,0x80,0xb9,0xf0,0xa5,
2710
  0x89,0x89,0xf0,0xa5,0xb3,0x90,0xf0,0xa7,0xbb,0x93,0xe9,0xbd,0x83,0xe9,0xbe,0x8e,0x66,0x66,0x66,0x69,0x66,0x6c,0x66,0x66,0x69,0x66,0x66,0x6c,0xc5,0xbf,0x74,0x73,
2711
  0x74,0xd5,0xb4,0xd5,0xb6,0xd5,0xb4,0xd5,0xa5,0xd5,0xb4,0xd5,0xab,0xd5,0xbe,0xd5,0xb6,0xd5,0xb4,0xd5,0xad,0xd7,0x99,0xd6,0xb4,0xd7,0xb2,0xd6,0xb7,0xd7,0xa2,0xd7,
2712
  0x90,0xd7,0x93,0xd7,0x94,0xd7,0x9b,0xd7,0x9c,0xd7,0x9d,0xd7,0xa8,0xd7,0xaa,0x2b,0xd7,0xa9,0xd7,0x81,0xd7,0xa9,0xd7,0x82,0xef,0xad,0x89,0xd7,0x81,0xef,0xad,0x89,
2713
  0xd7,0x82,0xd7,0x90,0xd6,0xb7,0xd7,0x90,0xd6,0xb8,0xd7,0x90,0xd6,0xbc,0xd7,0x91,0xd6,0xbc,0xd7,0x92,0xd6,0xbc,0xd7,0x93,0xd6,0xbc,0xd7,0x94,0xd6,0xbc,0xd7,0x95,
2714
  0xd6,0xbc,0xd7,0x96,0xd6,0xbc,0xd7,0x98,0xd6,0xbc,0xd7,0x99,0xd6,0xbc,0xd7,0x9a,0xd6,0xbc,0xd7,0x9b,0xd6,0xbc,0xd7,0x9c,0xd6,0xbc,0xd7,0x9e,0xd6,0xbc,0xd7,0xa0,
2715
  0xd6,0xbc,0xd7,0xa1,0xd6,0xbc,0xd7,0xa3,0xd6,0xbc,0xd7,0xa4,0xd6,0xbc,0xd7,0xa6,0xd6,0xbc,0xd7,0xa7,0xd6,0xbc,0xd7,0xa8,0xd6,0xbc,0xd7,0xa9,0xd6,0xbc,0xd7,0xaa,
2716
  0xd6,0xbc,0xd7,0x95,0xd6,0xb9,0xd7,0x91,0xd6,0xbf,0xd7,0x9b,0xd6,0xbf,0xd7,0xa4,0xd6,0xbf,0xd7,0x90,0xd7,0x9c,0xd9,0xb1,0xd9,0xb1,0xd9,0xbb,0xd9,0xbb,0xd9,0xbb,
2717
  0xd9,0xbb,0xd9,0xbe,0xd9,0xbe,0xd9,0xbe,0xd9,0xbe,0xda,0x80,0xda,0x80,0xda,0x80,0xda,0x80,0xd9,0xba,0xd9,0xba,0xd9,0xba,0xd9,0xba,0xd9,0xbf,0xd9,0xbf,0xd9,0xbf,
2718
  0xd9,0xbf,0xd9,0xb9,0xd9,0xb9,0xd9,0xb9,0xd9,0xb9,0xda,0xa4,0xda,0xa4,0xda,0xa4,0xda,0xa4,0xda,0xa6,0xda,0xa6,0xda,0xa6,0xda,0xa6,0xda,0x84,0xda,0x84,0xda,0x84,
2719
  0xda,0x84,0xda,0x83,0xda,0x83,0xda,0x83,0xda,0x83,0xda,0x86,0xda,0x86,0xda,0x86,0xda,0x86,0xda,0x87,0xda,0x87,0xda,0x87,0xda,0x87,0xda,0x8d,0xda,0x8d,0xda,0x8c,
2720
  0xda,0x8c,0xda,0x8e,0xda,0x8e,0xda,0x88,0xda,0x88,0xda,0x98,0xda,0x98,0xda,0x91,0xda,0x91,0xda,0xa9,0xda,0xa9,0xda,0xa9,0xda,0xa9,0xda,0xaf,0xda,0xaf,0xda,0xaf,
2721
  0xda,0xaf,0xda,0xb3,0xda,0xb3,0xda,0xb3,0xda,0xb3,0xda,0xb1,0xda,0xb1,0xda,0xb1,0xda,0xb1,0xda,0xba,0xda,0xba,0xda,0xbb,0xda,0xbb,0xda,0xbb,0xda,0xbb,0xdb,0x80,
2722
  0xdb,0x80,0xdb,0x81,0xdb,0x81,0xdb,0x81,0xdb,0x81,0xda,0xbe,0xda,0xbe,0xda,0xbe,0xda,0xbe,0xdb,0x92,0xdb,0x92,0xdb,0x93,0xdb,0x93,0xda,0xad,0xda,0xad,0xda,0xad,
2723
  0xda,0xad,0xdb,0x87,0xdb,0x87,0xdb,0x86,0xdb,0x86,0xdb,0x88,0xdb,0x88,0xd9,0xb7,0xdb,0x8b,0xdb,0x8b,0xdb,0x85,0xdb,0x85,0xdb,0x89,0xdb,0x89,0xdb,0x90,0xdb,0x90,
2724
  0xdb,0x90,0xdb,0x90,0xd9,0x89,0xd9,0x89,0xd8,0xa6,0xd8,0xa7,0xd8,0xa6,0xd8,0xa7,0xd8,0xa6,0xdb,0x95,0xd8,0xa6,0xdb,0x95,0xd8,0xa6,0xd9,0x88,0xd8,0xa6,0xd9,0x88,
2725
  0xd8,0xa6,0xdb,0x87,0xd8,0xa6,0xdb,0x87,0xd8,0xa6,0xdb,0x86,0xd8,0xa6,0xdb,0x86,0xd8,0xa6,0xdb,0x88,0xd8,0xa6,0xdb,0x88,0xd8,0xa6,0xdb,0x90,0xd8,0xa6,0xdb,0x90,
2726
  0xd8,0xa6,0xdb,0x90,0xd8,0xa6,0xd9,0x89,0xd8,0xa6,0xd9,0x89,0xd8,0xa6,0xd9,0x89,0xdb,0x8c,0xdb,0x8c,0xdb,0x8c,0xdb,0x8c,0xd8,0xa6,0xd8,0xac,0xd8,0xa6,0xd8,0xad,
2727
  0xd8,0xa6,0xd9,0x85,0xd8,0xa6,0xd9,0x89,0xd8,0xa6,0xd9,0x8a,0xd8,0xa8,0xd8,0xac,0xd8,0xa8,0xd8,0xad,0xd8,0xa8,0xd8,0xae,0xd8,0xa8,0xd9,0x85,0xd8,0xa8,0xd9,0x89,
2728
  0xd8,0xa8,0xd9,0x8a,0xd8,0xaa,0xd8,0xac,0xd8,0xaa,0xd8,0xad,0xd8,0xaa,0xd8,0xae,0xd8,0xaa,0xd9,0x85,0xd8,0xaa,0xd9,0x89,0xd8,0xaa,0xd9,0x8a,0xd8,0xab,0xd8,0xac,
2729
  0xd8,0xab,0xd9,0x85,0xd8,0xab,0xd9,0x89,0xd8,0xab,0xd9,0x8a,0xd8,0xac,0xd8,0xad,0xd8,0xac,0xd9,0x85,0xd8,0xad,0xd8,0xac,0xd8,0xad,0xd9,0x85,0xd8,0xae,0xd8,0xac,
2730
  0xd8,0xae,0xd8,0xad,0xd8,0xae,0xd9,0x85,0xd8,0xb3,0xd8,0xac,0xd8,0xb3,0xd8,0xad,0xd8,0xb3,0xd8,0xae,0xd8,0xb3,0xd9,0x85,0xd8,0xb5,0xd8,0xad,0xd8,0xb5,0xd9,0x85,
2731
  0xd8,0xb6,0xd8,0xac,0xd8,0xb6,0xd8,0xad,0xd8,0xb6,0xd8,0xae,0xd8,0xb6,0xd9,0x85,0xd8,0xb7,0xd8,0xad,0xd8,0xb7,0xd9,0x85,0xd8,0xb8,0xd9,0x85,0xd8,0xb9,0xd8,0xac,
2732
  0xd8,0xb9,0xd9,0x85,0xd8,0xba,0xd8,0xac,0xd8,0xba,0xd9,0x85,0xd9,0x81,0xd8,0xac,0xd9,0x81,0xd8,0xad,0xd9,0x81,0xd8,0xae,0xd9,0x81,0xd9,0x85,0xd9,0x81,0xd9,0x89,
2733
  0xd9,0x81,0xd9,0x8a,0xd9,0x82,0xd8,0xad,0xd9,0x82,0xd9,0x85,0xd9,0x82,0xd9,0x89,0xd9,0x82,0xd9,0x8a,0xd9,0x83,0xd8,0xa7,0xd9,0x83,0xd8,0xac,0xd9,0x83,0xd8,0xad,
2734
  0xd9,0x83,0xd8,0xae,0xd9,0x83,0xd9,0x84,0xd9,0x83,0xd9,0x85,0xd9,0x83,0xd9,0x89,0xd9,0x83,0xd9,0x8a,0xd9,0x84,0xd8,0xac,0xd9,0x84,0xd8,0xad,0xd9,0x84,0xd8,0xae,
2735
  0xd9,0x84,0xd9,0x85,0xd9,0x84,0xd9,0x89,0xd9,0x84,0xd9,0x8a,0xd9,0x85,0xd8,0xac,0xd9,0x85,0xd8,0xad,0xd9,0x85,0xd8,0xae,0xd9,0x85,0xd9,0x85,0xd9,0x85,0xd9,0x89,
2736
  0xd9,0x85,0xd9,0x8a,0xd9,0x86,0xd8,0xac,0xd9,0x86,0xd8,0xad,0xd9,0x86,0xd8,0xae,0xd9,0x86,0xd9,0x85,0xd9,0x86,0xd9,0x89,0xd9,0x86,0xd9,0x8a,0xd9,0x87,0xd8,0xac,
2737
  0xd9,0x87,0xd9,0x85,0xd9,0x87,0xd9,0x89,0xd9,0x87,0xd9,0x8a,0xd9,0x8a,0xd8,0xac,0xd9,0x8a,0xd8,0xad,0xd9,0x8a,0xd8,0xae,0xd9,0x8a,0xd9,0x85,0xd9,0x8a,0xd9,0x89,
2738
  0xd9,0x8a,0xd9,0x8a,0xd8,0xb0,0xd9,0xb0,0xd8,0xb1,0xd9,0xb0,0xd9,0x89,0xd9,0xb0,0x20,0xd9,0x8c,0xd9,0x91,0x20,0xd9,0x8d,0xd9,0x91,0x20,0xd9,0x8e,0xd9,0x91,0x20,
2739
  0xd9,0x8f,0xd9,0x91,0x20,0xd9,0x90,0xd9,0x91,0x20,0xd9,0x91,0xd9,0xb0,0xd8,0xa6,0xd8,0xb1,0xd8,0xa6,0xd8,0xb2,0xd8,0xa6,0xd9,0x85,0xd8,0xa6,0xd9,0x86,0xd8,0xa6,
2740
  0xd9,0x89,0xd8,0xa6,0xd9,0x8a,0xd8,0xa8,0xd8,0xb1,0xd8,0xa8,0xd8,0xb2,0xd8,0xa8,0xd9,0x85,0xd8,0xa8,0xd9,0x86,0xd8,0xa8,0xd9,0x89,0xd8,0xa8,0xd9,0x8a,0xd8,0xaa,
2741
  0xd8,0xb1,0xd8,0xaa,0xd8,0xb2,0xd8,0xaa,0xd9,0x85,0xd8,0xaa,0xd9,0x86,0xd8,0xaa,0xd9,0x89,0xd8,0xaa,0xd9,0x8a,0xd8,0xab,0xd8,0xb1,0xd8,0xab,0xd8,0xb2,0xd8,0xab,
2742
  0xd9,0x85,0xd8,0xab,0xd9,0x86,0xd8,0xab,0xd9,0x89,0xd8,0xab,0xd9,0x8a,0xd9,0x81,0xd9,0x89,0xd9,0x81,0xd9,0x8a,0xd9,0x82,0xd9,0x89,0xd9,0x82,0xd9,0x8a,0xd9,0x83,
2743
  0xd8,0xa7,0xd9,0x83,0xd9,0x84,0xd9,0x83,0xd9,0x85,0xd9,0x83,0xd9,0x89,0xd9,0x83,0xd9,0x8a,0xd9,0x84,0xd9,0x85,0xd9,0x84,0xd9,0x89,0xd9,0x84,0xd9,0x8a,0xd9,0x85,
2744
  0xd8,0xa7,0xd9,0x85,0xd9,0x85,0xd9,0x86,0xd8,0xb1,0xd9,0x86,0xd8,0xb2,0xd9,0x86,0xd9,0x85,0xd9,0x86,0xd9,0x86,0xd9,0x86,0xd9,0x89,0xd9,0x86,0xd9,0x8a,0xd9,0x89,
2745
  0xd9,0xb0,0xd9,0x8a,0xd8,0xb1,0xd9,0x8a,0xd8,0xb2,0xd9,0x8a,0xd9,0x85,0xd9,0x8a,0xd9,0x86,0xd9,0x8a,0xd9,0x89,0xd9,0x8a,0xd9,0x8a,0xd8,0xa6,0xd8,0xac,0xd8,0xa6,
2746
  0xd8,0xad,0xd8,0xa6,0xd8,0xae,0xd8,0xa6,0xd9,0x85,0xd8,0xa6,0xd9,0x87,0xd8,0xa8,0xd8,0xac,0xd8,0xa8,0xd8,0xad,0xd8,0xa8,0xd8,0xae,0xd8,0xa8,0xd9,0x85,0xd8,0xa8,
2747
  0xd9,0x87,0xd8,0xaa,0xd8,0xac,0xd8,0xaa,0xd8,0xad,0xd8,0xaa,0xd8,0xae,0xd8,0xaa,0xd9,0x85,0xd8,0xaa,0xd9,0x87,0xd8,0xab,0xd9,0x85,0xd8,0xac,0xd8,0xad,0xd8,0xac,
2748
  0xd9,0x85,0xd8,0xad,0xd8,0xac,0xd8,0xad,0xd9,0x85,0xd8,0xae,0xd8,0xac,0xd8,0xae,0xd9,0x85,0xd8,0xb3,0xd8,0xac,0xd8,0xb3,0xd8,0xad,0xd8,0xb3,0xd8,0xae,0xd8,0xb3,
2749
  0xd9,0x85,0xd8,0xb5,0xd8,0xad,0xd8,0xb5,0xd8,0xae,0xd8,0xb5,0xd9,0x85,0xd8,0xb6,0xd8,0xac,0xd8,0xb6,0xd8,0xad,0xd8,0xb6,0xd8,0xae,0xd8,0xb6,0xd9,0x85,0xd8,0xb7,
2750
  0xd8,0xad,0xd8,0xb8,0xd9,0x85,0xd8,0xb9,0xd8,0xac,0xd8,0xb9,0xd9,0x85,0xd8,0xba,0xd8,0xac,0xd8,0xba,0xd9,0x85,0xd9,0x81,0xd8,0xac,0xd9,0x81,0xd8,0xad,0xd9,0x81,
2751
  0xd8,0xae,0xd9,0x81,0xd9,0x85,0xd9,0x82,0xd8,0xad,0xd9,0x82,0xd9,0x85,0xd9,0x83,0xd8,0xac,0xd9,0x83,0xd8,0xad,0xd9,0x83,0xd8,0xae,0xd9,0x83,0xd9,0x84,0xd9,0x83,
2752
  0xd9,0x85,0xd9,0x84,0xd8,0xac,0xd9,0x84,0xd8,0xad,0xd9,0x84,0xd8,0xae,0xd9,0x84,0xd9,0x85,0xd9,0x84,0xd9,0x87,0xd9,0x85,0xd8,0xac,0xd9,0x85,0xd8,0xad,0xd9,0x85,
2753
  0xd8,0xae,0xd9,0x85,0xd9,0x85,0xd9,0x86,0xd8,0xac,0xd9,0x86,0xd8,0xad,0xd9,0x86,0xd8,0xae,0xd9,0x86,0xd9,0x85,0xd9,0x86,0xd9,0x87,0xd9,0x87,0xd8,0xac,0xd9,0x87,
2754
  0xd9,0x85,0xd9,0x87,0xd9,0xb0,0xd9,0x8a,0xd8,0xac,0xd9,0x8a,0xd8,0xad,0xd9,0x8a,0xd8,0xae,0xd9,0x8a,0xd9,0x85,0xd9,0x8a,0xd9,0x87,0xd8,0xa6,0xd9,0x85,0xd8,0xa6,
2755
  0xd9,0x87,0xd8,0xa8,0xd9,0x85,0xd8,0xa8,0xd9,0x87,0xd8,0xaa,0xd9,0x85,0xd8,0xaa,0xd9,0x87,0xd8,0xab,0xd9,0x85,0xd8,0xab,0xd9,0x87,0xd8,0xb3,0xd9,0x85,0xd8,0xb3,
2756
  0xd9,0x87,0xd8,0xb4,0xd9,0x85,0xd8,0xb4,0xd9,0x87,0xd9,0x83,0xd9,0x84,0xd9,0x83,0xd9,0x85,0xd9,0x84,0xd9,0x85,0xd9,0x86,0xd9,0x85,0xd9,0x86,0xd9,0x87,0xd9,0x8a,
2757
  0xd9,0x85,0xd9,0x8a,0xd9,0x87,0xd9,0x80,0xd9,0x8e,0xd9,0x91,0xd9,0x80,0xd9,0x8f,0xd9,0x91,0xd9,0x80,0xd9,0x90,0xd9,0x91,0xd8,0xb7,0xd9,0x89,0xd8,0xb7,0xd9,0x8a,
2758
  0xd8,0xb9,0xd9,0x89,0xd8,0xb9,0xd9,0x8a,0xd8,0xba,0xd9,0x89,0xd8,0xba,0xd9,0x8a,0xd8,0xb3,0xd9,0x89,0xd8,0xb3,0xd9,0x8a,0xd8,0xb4,0xd9,0x89,0xd8,0xb4,0xd9,0x8a,
2759
  0xd8,0xad,0xd9,0x89,0xd8,0xad,0xd9,0x8a,0xd8,0xac,0xd9,0x89,0xd8,0xac,0xd9,0x8a,0xd8,0xae,0xd9,0x89,0xd8,0xae,0xd9,0x8a,0xd8,0xb5,0xd9,0x89,0xd8,0xb5,0xd9,0x8a,
2760
  0xd8,0xb6,0xd9,0x89,0xd8,0xb6,0xd9,0x8a,0xd8,0xb4,0xd8,0xac,0xd8,0xb4,0xd8,0xad,0xd8,0xb4,0xd8,0xae,0xd8,0xb4,0xd9,0x85,0xd8,0xb4,0xd8,0xb1,0xd8,0xb3,0xd8,0xb1,
2761
  0xd8,0xb5,0xd8,0xb1,0xd8,0xb6,0xd8,0xb1,0xd8,0xb7,0xd9,0x89,0xd8,0xb7,0xd9,0x8a,0xd8,0xb9,0xd9,0x89,0xd8,0xb9,0xd9,0x8a,0xd8,0xba,0xd9,0x89,0xd8,0xba,0xd9,0x8a,
2762
  0xd8,0xb3,0xd9,0x89,0xd8,0xb3,0xd9,0x8a,0xd8,0xb4,0xd9,0x89,0xd8,0xb4,0xd9,0x8a,0xd8,0xad,0xd9,0x89,0xd8,0xad,0xd9,0x8a,0xd8,0xac,0xd9,0x89,0xd8,0xac,0xd9,0x8a,
2763
  0xd8,0xae,0xd9,0x89,0xd8,0xae,0xd9,0x8a,0xd8,0xb5,0xd9,0x89,0xd8,0xb5,0xd9,0x8a,0xd8,0xb6,0xd9,0x89,0xd8,0xb6,0xd9,0x8a,0xd8,0xb4,0xd8,0xac,0xd8,0xb4,0xd8,0xad,
2764
  0xd8,0xb4,0xd8,0xae,0xd8,0xb4,0xd9,0x85,0xd8,0xb4,0xd8,0xb1,0xd8,0xb3,0xd8,0xb1,0xd8,0xb5,0xd8,0xb1,0xd8,0xb6,0xd8,0xb1,0xd8,0xb4,0xd8,0xac,0xd8,0xb4,0xd8,0xad,
2765
  0xd8,0xb4,0xd8,0xae,0xd8,0xb4,0xd9,0x85,0xd8,0xb3,0xd9,0x87,0xd8,0xb4,0xd9,0x87,0xd8,0xb7,0xd9,0x85,0xd8,0xb3,0xd8,0xac,0xd8,0xb3,0xd8,0xad,0xd8,0xb3,0xd8,0xae,
2766
  0xd8,0xb4,0xd8,0xac,0xd8,0xb4,0xd8,0xad,0xd8,0xb4,0xd8,0xae,0xd8,0xb7,0xd9,0x85,0xd8,0xb8,0xd9,0x85,0xd8,0xa7,0xd9,0x8b,0xd8,0xa7,0xd9,0x8b,0xd8,0xaa,0xd8,0xac,
2767
  0xd9,0x85,0xd8,0xaa,0xd8,0xad,0xd8,0xac,0xd8,0xaa,0xd8,0xad,0xd8,0xac,0xd8,0xaa,0xd8,0xad,0xd9,0x85,0xd8,0xaa,0xd8,0xae,0xd9,0x85,0xd8,0xaa,0xd9,0x85,0xd8,0xac,
2768
  0xd8,0xaa,0xd9,0x85,0xd8,0xad,0xd8,0xaa,0xd9,0x85,0xd8,0xae,0xd8,0xac,0xd9,0x85,0xd8,0xad,0xd8,0xac,0xd9,0x85,0xd8,0xad,0xd8,0xad,0xd9,0x85,0xd9,0x8a,0xd8,0xad,
2769
  0xd9,0x85,0xd9,0x89,0xd8,0xb3,0xd8,0xad,0xd8,0xac,0xd8,0xb3,0xd8,0xac,0xd8,0xad,0xd8,0xb3,0xd8,0xac,0xd9,0x89,0xd8,0xb3,0xd9,0x85,0xd8,0xad,0xd8,0xb3,0xd9,0x85,
2770
  0xd8,0xad,0xd8,0xb3,0xd9,0x85,0xd8,0xac,0xd8,0xb3,0xd9,0x85,0xd9,0x85,0xd8,0xb3,0xd9,0x85,0xd9,0x85,0xd8,0xb5,0xd8,0xad,0xd8,0xad,0xd8,0xb5,0xd8,0xad,0xd8,0xad,
2771
  0xd8,0xb5,0xd9,0x85,0xd9,0x85,0xd8,0xb4,0xd8,0xad,0xd9,0x85,0xd8,0xb4,0xd8,0xad,0xd9,0x85,0xd8,0xb4,0xd8,0xac,0xd9,0x8a,0xd8,0xb4,0xd9,0x85,0xd8,0xae,0xd8,0xb4,
2772
  0xd9,0x85,0xd8,0xae,0xd8,0xb4,0xd9,0x85,0xd9,0x85,0xd8,0xb4,0xd9,0x85,0xd9,0x85,0xd8,0xb6,0xd8,0xad,0xd9,0x89,0xd8,0xb6,0xd8,0xae,0xd9,0x85,0xd8,0xb6,0xd8,0xae,
2773
  0xd9,0x85,0xd8,0xb7,0xd9,0x85,0xd8,0xad,0xd8,0xb7,0xd9,0x85,0xd8,0xad,0xd8,0xb7,0xd9,0x85,0xd9,0x85,0xd8,0xb7,0xd9,0x85,0xd9,0x8a,0xd8,0xb9,0xd8,0xac,0xd9,0x85,
2774
  0xd8,0xb9,0xd9,0x85,0xd9,0x85,0xd8,0xb9,0xd9,0x85,0xd9,0x85,0xd8,0xb9,0xd9,0x85,0xd9,0x89,0xd8,0xba,0xd9,0x85,0xd9,0x85,0xd8,0xba,0xd9,0x85,0xd9,0x8a,0xd8,0xba,
2775
  0xd9,0x85,0xd9,0x89,0xd9,0x81,0xd8,0xae,0xd9,0x85,0xd9,0x81,0xd8,0xae,0xd9,0x85,0xd9,0x82,0xd9,0x85,0xd8,0xad,0xd9,0x82,0xd9,0x85,0xd9,0x85,0xd9,0x84,0xd8,0xad,
2776
  0xd9,0x85,0xd9,0x84,0xd8,0xad,0xd9,0x8a,0xd9,0x84,0xd8,0xad,0xd9,0x89,0xd9,0x84,0xd8,0xac,0xd8,0xac,0xd9,0x84,0xd8,0xac,0xd8,0xac,0xd9,0x84,0xd8,0xae,0xd9,0x85,
2777
  0xd9,0x84,0xd8,0xae,0xd9,0x85,0xd9,0x84,0xd9,0x85,0xd8,0xad,0xd9,0x84,0xd9,0x85,0xd8,0xad,0xd9,0x85,0xd8,0xad,0xd8,0xac,0xd9,0x85,0xd8,0xad,0xd9,0x85,0xd9,0x85,
2778
  0xd8,0xad,0xd9,0x8a,0xd9,0x85,0xd8,0xac,0xd8,0xad,0xd9,0x85,0xd8,0xac,0xd9,0x85,0xd9,0x85,0xd8,0xae,0xd8,0xac,0xd9,0x85,0xd8,0xae,0xd9,0x85,0xd9,0x85,0xd8,0xac,
2779
  0xd8,0xae,0xd9,0x87,0xd9,0x85,0xd8,0xac,0xd9,0x87,0xd9,0x85,0xd9,0x85,0xd9,0x86,0xd8,0xad,0xd9,0x85,0xd9,0x86,0xd8,0xad,0xd9,0x89,0xd9,0x86,0xd8,0xac,0xd9,0x85,
2780
  0xd9,0x86,0xd8,0xac,0xd9,0x85,0xd9,0x86,0xd8,0xac,0xd9,0x89,0xd9,0x86,0xd9,0x85,0xd9,0x8a,0xd9,0x86,0xd9,0x85,0xd9,0x89,0xd9,0x8a,0xd9,0x85,0xd9,0x85,0xd9,0x8a,
2781
  0xd9,0x85,0xd9,0x85,0xd8,0xa8,0xd8,0xae,0xd9,0x8a,0xd8,0xaa,0xd8,0xac,0xd9,0x8a,0xd8,0xaa,0xd8,0xac,0xd9,0x89,0xd8,0xaa,0xd8,0xae,0xd9,0x8a,0xd8,0xaa,0xd8,0xae,
2782
  0xd9,0x89,0xd8,0xaa,0xd9,0x85,0xd9,0x8a,0xd8,0xaa,0xd9,0x85,0xd9,0x89,0xd8,0xac,0xd9,0x85,0xd9,0x8a,0xd8,0xac,0xd8,0xad,0xd9,0x89,0xd8,0xac,0xd9,0x85,0xd9,0x89,
2783
  0xd8,0xb3,0xd8,0xae,0xd9,0x89,0xd8,0xb5,0xd8,0xad,0xd9,0x8a,0xd8,0xb4,0xd8,0xad,0xd9,0x8a,0xd8,0xb6,0xd8,0xad,0xd9,0x8a,0xd9,0x84,0xd8,0xac,0xd9,0x8a,0xd9,0x84,
2784
  0xd9,0x85,0xd9,0x8a,0xd9,0x8a,0xd8,0xad,0xd9,0x8a,0xd9,0x8a,0xd8,0xac,0xd9,0x8a,0xd9,0x8a,0xd9,0x85,0xd9,0x8a,0xd9,0x85,0xd9,0x85,0xd9,0x8a,0xd9,0x82,0xd9,0x85,
2785
  0xd9,0x8a,0xd9,0x86,0xd8,0xad,0xd9,0x8a,0xd9,0x82,0xd9,0x85,0xd8,0xad,0xd9,0x84,0xd8,0xad,0xd9,0x85,0xd8,0xb9,0xd9,0x85,0xd9,0x8a,0xd9,0x83,0xd9,0x85,0xd9,0x8a,
2786
  0xd9,0x86,0xd8,0xac,0xd8,0xad,0xd9,0x85,0xd8,0xae,0xd9,0x8a,0xd9,0x84,0xd8,0xac,0xd9,0x85,0xd9,0x83,0xd9,0x85,0xd9,0x85,0xd9,0x84,0xd8,0xac,0xd9,0x85,0xd9,0x86,
2787
  0xd8,0xac,0xd8,0xad,0xd8,0xac,0xd8,0xad,0xd9,0x8a,0xd8,0xad,0xd8,0xac,0xd9,0x8a,0xd9,0x85,0xd8,0xac,0xd9,0x8a,0xd9,0x81,0xd9,0x85,0xd9,0x8a,0xd8,0xa8,0xd8,0xad,
2788
  0xd9,0x8a,0xd9,0x83,0xd9,0x85,0xd9,0x85,0xd8,0xb9,0xd8,0xac,0xd9,0x85,0xd8,0xb5,0xd9,0x85,0xd9,0x85,0xd8,0xb3,0xd8,0xae,0xd9,0x8a,0xd9,0x86,0xd8,0xac,0xd9,0x8a,
2789
  0xd8,0xb5,0xd9,0x84,0xdb,0x92,0xd9,0x82,0xd9,0x84,0xdb,0x92,0xd8,0xa7,0xd9,0x84,0xd9,0x84,0xd9,0x87,0xd8,0xa7,0xd9,0x83,0xd8,0xa8,0xd8,0xb1,0xd9,0x85,0xd8,0xad,
2790
  0xd9,0x85,0xd8,0xaf,0xd8,0xb5,0xd9,0x84,0xd8,0xb9,0xd9,0x85,0xd8,0xb1,0xd8,0xb3,0xd9,0x88,0xd9,0x84,0xd8,0xb9,0xd9,0x84,0xd9,0x8a,0xd9,0x87,0xd9,0x88,0xd8,0xb3,
2791
  0xd9,0x84,0xd9,0x85,0xd8,0xb5,0xd9,0x84,0xd9,0x89,0xd8,0xb5,0xd9,0x84,0xd9,0x89,0x20,0xd8,0xa7,0xd9,0x84,0xd9,0x84,0xd9,0x87,0x20,0xd8,0xb9,0xd9,0x84,0xd9,0x8a,
2792
  0xd9,0x87,0x20,0xd9,0x88,0xd8,0xb3,0xd9,0x84,0xd9,0x85,0xd8,0xac,0xd9,0x84,0x20,0xd8,0xac,0xd9,0x84,0xd8,0xa7,0xd9,0x84,0xd9,0x87,0xd8,0xb1,0xdb,0x8c,0xd8,0xa7,
2793
  0xd9,0x84,0x2c,0xe3,0x80,0x81,0xe3,0x80,0x82,0x3a,0x3b,0x21,0x3f,0xe3,0x80,0x96,0xe3,0x80,0x97,0xe2,0x80,0xa6,0xe2,0x80,0xa5,0xe2,0x80,0x94,0xe2,0x80,0x93,0x5f,
2794
  0x5f,0x28,0x29,0x7b,0x7d,0xe3,0x80,0x94,0xe3,0x80,0x95,0xe3,0x80,0x90,0xe3,0x80,0x91,0xe3,0x80,0x8a,0xe3,0x80,0x8b,0xe3,0x80,0x88,0xe3,0x80,0x89,0xe3,0x80,0x8c,
2795
  0xe3,0x80,0x8d,0xe3,0x80,0x8e,0xe3,0x80,0x8f,0x5b,0x5d,0xe2,0x80,0xbe,0xe2,0x80,0xbe,0xe2,0x80,0xbe,0xe2,0x80,0xbe,0x5f,0x5f,0x5f,0x2c,0xe3,0x80,0x81,0x2e,0x3b,
2796
  0x3a,0x3f,0x21,0xe2,0x80,0x94,0x28,0x29,0x7b,0x7d,0xe3,0x80,0x94,0xe3,0x80,0x95,0x23,0x26,0x2a,0x2b,0x2d,0x3c,0x3e,0x3d,0x5c,0x24,0x25,0x40,0x20,0xd9,0x8b,0xd9,
2797
  0x80,0xd9,0x8b,0x20,0xd9,0x8c,0x20,0xd9,0x8d,0x20,0xd9,0x8e,0xd9,0x80,0xd9,0x8e,0x20,0xd9,0x8f,0xd9,0x80,0xd9,0x8f,0x20,0xd9,0x90,0xd9,0x80,0xd9,0x90,0x20,0xd9,
2798
  0x91,0xd9,0x80,0xd9,0x91,0x20,0xd9,0x92,0xd9,0x80,0xd9,0x92,0xd8,0xa1,0xd8,0xa2,0xd8,0xa2,0xd8,0xa3,0xd8,0xa3,0xd8,0xa4,0xd8,0xa4,0xd8,0xa5,0xd8,0xa5,0xd8,0xa6,
2799
  0xd8,0xa6,0xd8,0xa6,0xd8,0xa6,0xd8,0xa7,0xd8,0xa7,0xd8,0xa8,0xd8,0xa8,0xd8,0xa8,0xd8,0xa8,0xd8,0xa9,0xd8,0xa9,0xd8,0xaa,0xd8,0xaa,0xd8,0xaa,0xd8,0xaa,0xd8,0xab,
2800
  0xd8,0xab,0xd8,0xab,0xd8,0xab,0xd8,0xac,0xd8,0xac,0xd8,0xac,0xd8,0xac,0xd8,0xad,0xd8,0xad,0xd8,0xad,0xd8,0xad,0xd8,0xae,0xd8,0xae,0xd8,0xae,0xd8,0xae,0xd8,0xaf,
2801
  0xd8,0xaf,0xd8,0xb0,0xd8,0xb0,0xd8,0xb1,0xd8,0xb1,0xd8,0xb2,0xd8,0xb2,0xd8,0xb3,0xd8,0xb3,0xd8,0xb3,0xd8,0xb3,0xd8,0xb4,0xd8,0xb4,0xd8,0xb4,0xd8,0xb4,0xd8,0xb5,
2802
  0xd8,0xb5,0xd8,0xb5,0xd8,0xb5,0xd8,0xb6,0xd8,0xb6,0xd8,0xb6,0xd8,0xb6,0xd8,0xb7,0xd8,0xb7,0xd8,0xb7,0xd8,0xb7,0xd8,0xb8,0xd8,0xb8,0xd8,0xb8,0xd8,0xb8,0xd8,0xb9,
2803
  0xd8,0xb9,0xd8,0xb9,0xd8,0xb9,0xd8,0xba,0xd8,0xba,0xd8,0xba,0xd8,0xba,0xd9,0x81,0xd9,0x81,0xd9,0x81,0xd9,0x81,0xd9,0x82,0xd9,0x82,0xd9,0x82,0xd9,0x82,0xd9,0x83,
2804
  0xd9,0x83,0xd9,0x83,0xd9,0x83,0xd9,0x84,0xd9,0x84,0xd9,0x84,0xd9,0x84,0xd9,0x85,0xd9,0x85,0xd9,0x85,0xd9,0x85,0xd9,0x86,0xd9,0x86,0xd9,0x86,0xd9,0x86,0xd9,0x87,
2805
  0xd9,0x87,0xd9,0x87,0xd9,0x87,0xd9,0x88,0xd9,0x88,0xd9,0x89,0xd9,0x89,0xd9,0x8a,0xd9,0x8a,0xd9,0x8a,0xd9,0x8a,0xd9,0x84,0xd8,0xa2,0xd9,0x84,0xd8,0xa2,0xd9,0x84,
2806
  0xd8,0xa3,0xd9,0x84,0xd8,0xa3,0xd9,0x84,0xd8,0xa5,0xd9,0x84,0xd8,0xa5,0xd9,0x84,0xd8,0xa7,0xd9,0x84,0xd8,0xa7,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29,0x2a,
2807
  0x2b,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,
2808
  0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x5b,0x5c,0x5d,0x5e,0x5f,0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,
2809
  0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x7b,0x7c,0x7d,0x7e,0xe2,0xa6,0x85,0xe2,0xa6,0x86,0xe3,0x80,0x82,0xe3,0x80,0x8c,
2810
  0xe3,0x80,0x8d,0xe3,0x80,0x81,0xe3,0x83,0xbb,0xe3,0x83,0xb2,0xe3,0x82,0xa1,0xe3,0x82,0xa3,0xe3,0x82,0xa5,0xe3,0x82,0xa7,0xe3,0x82,0xa9,0xe3,0x83,0xa3,0xe3,0x83,
2811
  0xa5,0xe3,0x83,0xa7,0xe3,0x83,0x83,0xe3,0x83,0xbc,0xe3,0x82,0xa2,0xe3,0x82,0xa4,0xe3,0x82,0xa6,0xe3,0x82,0xa8,0xe3,0x82,0xaa,0xe3,0x82,0xab,0xe3,0x82,0xad,0xe3,
2812
  0x82,0xaf,0xe3,0x82,0xb1,0xe3,0x82,0xb3,0xe3,0x82,0xb5,0xe3,0x82,0xb7,0xe3,0x82,0xb9,0xe3,0x82,0xbb,0xe3,0x82,0xbd,0xe3,0x82,0xbf,0xe3,0x83,0x81,0xe3,0x83,0x84,
2813
  0xe3,0x83,0x86,0xe3,0x83,0x88,0xe3,0x83,0x8a,0xe3,0x83,0x8b,0xe3,0x83,0x8c,0xe3,0x83,0x8d,0xe3,0x83,0x8e,0xe3,0x83,0x8f,0xe3,0x83,0x92,0xe3,0x83,0x95,0xe3,0x83,
2814
  0x98,0xe3,0x83,0x9b,0xe3,0x83,0x9e,0xe3,0x83,0x9f,0xe3,0x83,0xa0,0xe3,0x83,0xa1,0xe3,0x83,0xa2,0xe3,0x83,0xa4,0xe3,0x83,0xa6,0xe3,0x83,0xa8,0xe3,0x83,0xa9,0xe3,
2815
  0x83,0xaa,0xe3,0x83,0xab,0xe3,0x83,0xac,0xe3,0x83,0xad,0xe3,0x83,0xaf,0xe3,0x83,0xb3,0xe3,0x82,0x99,0xe3,0x82,0x9a,0xe3,0x85,0xa4,0xe3,0x84,0xb1,0xe3,0x84,0xb2,
2816
  0xe3,0x84,0xb3,0xe3,0x84,0xb4,0xe3,0x84,0xb5,0xe3,0x84,0xb6,0xe3,0x84,0xb7,0xe3,0x84,0xb8,0xe3,0x84,0xb9,0xe3,0x84,0xba,0xe3,0x84,0xbb,0xe3,0x84,0xbc,0xe3,0x84,
2817
  0xbd,0xe3,0x84,0xbe,0xe3,0x84,0xbf,0xe3,0x85,0x80,0xe3,0x85,0x81,0xe3,0x85,0x82,0xe3,0x85,0x83,0xe3,0x85,0x84,0xe3,0x85,0x85,0xe3,0x85,0x86,0xe3,0x85,0x87,0xe3,
2818
  0x85,0x88,0xe3,0x85,0x89,0xe3,0x85,0x8a,0xe3,0x85,0x8b,0xe3,0x85,0x8c,0xe3,0x85,0x8d,0xe3,0x85,0x8e,0xe3,0x85,0x8f,0xe3,0x85,0x90,0xe3,0x85,0x91,0xe3,0x85,0x92,
2819
  0xe3,0x85,0x93,0xe3,0x85,0x94,0xe3,0x85,0x95,0xe3,0x85,0x96,0xe3,0x85,0x97,0xe3,0x85,0x98,0xe3,0x85,0x99,0xe3,0x85,0x9a,0xe3,0x85,0x9b,0xe3,0x85,0x9c,0xe3,0x85,
2820
  0x9d,0xe3,0x85,0x9e,0xe3,0x85,0x9f,0xe3,0x85,0xa0,0xe3,0x85,0xa1,0xe3,0x85,0xa2,0xe3,0x85,0xa3,0xc2,0xa2,0xc2,0xa3,0xc2,0xac,0xc2,0xaf,0xc2,0xa6,0xc2,0xa5,0xe2,
2821
  0x82,0xa9,0xe2,0x94,0x82,0xe2,0x86,0x90,0xe2,0x86,0x91,0xe2,0x86,0x92,0xe2,0x86,0x93,0xe2,0x96,0xa0,0xe2,0x97,0x8b,
2822
};
2823
0
#define mxDecompositionCount0 7780
2824
static const txU2 gxDecompositionIndex0[mxDecompositionCount0] ICACHE_XS6RO_ATTR = {
2825
  0x00A0,0x8000,0x00A8,0x8001,0x00AA,0x8004,0x00AF,0x8005,0x00B2,0x8008,0x00B3,0x8009,0x00B4,0x800A,0x00B5,0x800D,0x00B8,0x800F,0x00B9,0x8012,0x00BA,0x8013,0x00BC,0x8014,0x00BD,0x8019,0x00BE,0x801E,0x00C0,0x0023,0x00C1,0x0026,
2826
  0x00C2,0x0029,0x00C3,0x002C,0x00C4,0x002F,0x00C5,0x0032,0x00C7,0x0035,0x00C8,0x0038,0x00C9,0x003B,0x00CA,0x003E,0x00CB,0x0041,0x00CC,0x0044,0x00CD,0x0047,0x00CE,0x004A,0x00CF,0x004D,0x00D1,0x0050,0x00D2,0x0053,0x00D3,0x0056,
2827
  0x00D4,0x0059,0x00D5,0x005C,0x00D6,0x005F,0x00D9,0x0062,0x00DA,0x0065,0x00DB,0x0068,0x00DC,0x006B,0x00DD,0x006E,0x00E0,0x0071,0x00E1,0x0074,0x00E2,0x0077,0x00E3,0x007A,0x00E4,0x007D,0x00E5,0x0080,0x00E7,0x0083,0x00E8,0x0086,
2828
  0x00E9,0x0089,0x00EA,0x008C,0x00EB,0x008F,0x00EC,0x0092,0x00ED,0x0095,0x00EE,0x0098,0x00EF,0x009B,0x00F1,0x009E,0x00F2,0x00A1,0x00F3,0x00A4,0x00F4,0x00A7,0x00F5,0x00AA,0x00F6,0x00AD,0x00F9,0x00B0,0x00FA,0x00B3,0x00FB,0x00B6,
2829
  0x00FC,0x00B9,0x00FD,0x00BC,0x00FF,0x00BF,0x0100,0x00C2,0x0101,0x00C5,0x0102,0x00C8,0x0103,0x00CB,0x0104,0x00CE,0x0105,0x00D1,0x0106,0x00D4,0x0107,0x00D7,0x0108,0x00DA,0x0109,0x00DD,0x010A,0x00E0,0x010B,0x00E3,0x010C,0x00E6,
2830
  0x010D,0x00E9,0x010E,0x00EC,0x010F,0x00EF,0x0112,0x00F2,0x0113,0x00F5,0x0114,0x00F8,0x0115,0x00FB,0x0116,0x00FE,0x0117,0x0101,0x0118,0x0104,0x0119,0x0107,0x011A,0x010A,0x011B,0x010D,0x011C,0x0110,0x011D,0x0113,0x011E,0x0116,
2831
  0x011F,0x0119,0x0120,0x011C,0x0121,0x011F,0x0122,0x0122,0x0123,0x0125,0x0124,0x0128,0x0125,0x012B,0x0128,0x012E,0x0129,0x0131,0x012A,0x0134,0x012B,0x0137,0x012C,0x013A,0x012D,0x013D,0x012E,0x0140,0x012F,0x0143,0x0130,0x0146,
2832
  0x0132,0x8149,0x0133,0x814B,0x0134,0x014D,0x0135,0x0150,0x0136,0x0153,0x0137,0x0156,0x0139,0x0159,0x013A,0x015C,0x013B,0x015F,0x013C,0x0162,0x013D,0x0165,0x013E,0x0168,0x013F,0x816B,0x0140,0x816E,0x0143,0x0171,0x0144,0x0174,
2833
  0x0145,0x0177,0x0146,0x017A,0x0147,0x017D,0x0148,0x0180,0x0149,0x8183,0x014C,0x0186,0x014D,0x0189,0x014E,0x018C,0x014F,0x018F,0x0150,0x0192,0x0151,0x0195,0x0154,0x0198,0x0155,0x019B,0x0156,0x019E,0x0157,0x01A1,0x0158,0x01A4,
2834
  0x0159,0x01A7,0x015A,0x01AA,0x015B,0x01AD,0x015C,0x01B0,0x015D,0x01B3,0x015E,0x01B6,0x015F,0x01B9,0x0160,0x01BC,0x0161,0x01BF,0x0162,0x01C2,0x0163,0x01C5,0x0164,0x01C8,0x0165,0x01CB,0x0168,0x01CE,0x0169,0x01D1,0x016A,0x01D4,
2835
  0x016B,0x01D7,0x016C,0x01DA,0x016D,0x01DD,0x016E,0x01E0,0x016F,0x01E3,0x0170,0x01E6,0x0171,0x01E9,0x0172,0x01EC,0x0173,0x01EF,0x0174,0x01F2,0x0175,0x01F5,0x0176,0x01F8,0x0177,0x01FB,0x0178,0x01FE,0x0179,0x0201,0x017A,0x0204,
2836
  0x017B,0x0207,0x017C,0x020A,0x017D,0x020D,0x017E,0x0210,0x017F,0x8213,0x01A0,0x0214,0x01A1,0x0217,0x01AF,0x021A,0x01B0,0x021D,0x01C4,0x8220,0x01C5,0x8223,0x01C6,0x8226,0x01C7,0x8229,0x01C8,0x822B,0x01C9,0x822D,0x01CA,0x822F,
2837
  0x01CB,0x8231,0x01CC,0x8233,0x01CD,0x0235,0x01CE,0x0238,0x01CF,0x023B,0x01D0,0x023E,0x01D1,0x0241,0x01D2,0x0244,0x01D3,0x0247,0x01D4,0x024A,0x01D5,0x024D,0x01D6,0x0251,0x01D7,0x0255,0x01D8,0x0259,0x01D9,0x025D,0x01DA,0x0261,
2838
  0x01DB,0x0265,0x01DC,0x0269,0x01DE,0x026D,0x01DF,0x0271,0x01E0,0x0275,0x01E1,0x0279,0x01E2,0x027D,0x01E3,0x0281,0x01E6,0x0285,0x01E7,0x0288,0x01E8,0x028B,0x01E9,0x028E,0x01EA,0x0291,0x01EB,0x0294,0x01EC,0x0297,0x01ED,0x029B,
2839
  0x01EE,0x029F,0x01EF,0x02A3,0x01F0,0x02A7,0x01F1,0x82AA,0x01F2,0x82AC,0x01F3,0x82AE,0x01F4,0x02B0,0x01F5,0x02B3,0x01F8,0x02B6,0x01F9,0x02B9,0x01FA,0x02BC,0x01FB,0x02C0,0x01FC,0x02C4,0x01FD,0x02C8,0x01FE,0x02CC,0x01FF,0x02D0,
2840
  0x0200,0x02D4,0x0201,0x02D7,0x0202,0x02DA,0x0203,0x02DD,0x0204,0x02E0,0x0205,0x02E3,0x0206,0x02E6,0x0207,0x02E9,0x0208,0x02EC,0x0209,0x02EF,0x020A,0x02F2,0x020B,0x02F5,0x020C,0x02F8,0x020D,0x02FB,0x020E,0x02FE,0x020F,0x0301,
2841
  0x0210,0x0304,0x0211,0x0307,0x0212,0x030A,0x0213,0x030D,0x0214,0x0310,0x0215,0x0313,0x0216,0x0316,0x0217,0x0319,0x0218,0x031C,0x0219,0x031F,0x021A,0x0322,0x021B,0x0325,0x021E,0x0328,0x021F,0x032B,0x0226,0x032E,0x0227,0x0331,
2842
  0x0228,0x0334,0x0229,0x0337,0x022A,0x033A,0x022B,0x033E,0x022C,0x0342,0x022D,0x0346,0x022E,0x034A,0x022F,0x034D,0x0230,0x0350,0x0231,0x0354,0x0232,0x0358,0x0233,0x035B,0x02B0,0x835E,0x02B1,0x835F,0x02B2,0x8361,0x02B3,0x8362,
2843
  0x02B4,0x8363,0x02B5,0x8365,0x02B6,0x8367,0x02B7,0x8369,0x02B8,0x836A,0x02D8,0x836B,0x02D9,0x836E,0x02DA,0x8371,0x02DB,0x8374,0x02DC,0x8377,0x02DD,0x837A,0x02E0,0x837D,0x02E1,0x837F,0x02E2,0x8380,0x02E3,0x8381,0x02E4,0x8382,
2844
  0x0340,0x0384,0x0341,0x0386,0x0343,0x0388,0x0344,0x038A,0x0374,0x038E,0x037A,0x8390,0x037E,0x0393,0x0384,0x8394,0x0385,0x0397,0x0386,0x039B,0x0387,0x039F,0x0388,0x03A1,0x0389,0x03A5,0x038A,0x03A9,0x038C,0x03AD,0x038E,0x03B1,
2845
  0x038F,0x03B5,0x0390,0x03B9,0x03AA,0x03BD,0x03AB,0x03C1,0x03AC,0x03C5,0x03AD,0x03C9,0x03AE,0x03CD,0x03AF,0x03D1,0x03B0,0x03D5,0x03CA,0x03D9,0x03CB,0x03DD,0x03CC,0x03E1,0x03CD,0x03E5,0x03CE,0x03E9,0x03D0,0x83ED,0x03D1,0x83EF,
2846
  0x03D2,0x83F1,0x03D3,0x03F3,0x03D4,0x03F7,0x03D5,0x83FB,0x03D6,0x83FD,0x03F0,0x83FF,0x03F1,0x8401,0x03F2,0x8403,0x03F4,0x8405,0x03F5,0x8407,0x03F9,0x8409,0x0400,0x040B,0x0401,0x040F,0x0403,0x0413,0x0407,0x0417,0x040C,0x041B,
2847
  0x040D,0x041F,0x040E,0x0423,0x0419,0x0427,0x0439,0x042B,0x0450,0x042F,0x0451,0x0433,0x0453,0x0437,0x0457,0x043B,0x045C,0x043F,0x045D,0x0443,0x045E,0x0447,0x0476,0x044B,0x0477,0x044F,0x04C1,0x0453,0x04C2,0x0457,0x04D0,0x045B,
2848
  0x04D1,0x045F,0x04D2,0x0463,0x04D3,0x0467,0x04D6,0x046B,0x04D7,0x046F,0x04DA,0x0473,0x04DB,0x0477,0x04DC,0x047B,0x04DD,0x047F,0x04DE,0x0483,0x04DF,0x0487,0x04E2,0x048B,0x04E3,0x048F,0x04E4,0x0493,0x04E5,0x0497,0x04E6,0x049B,
2849
  0x04E7,0x049F,0x04EA,0x04A3,0x04EB,0x04A7,0x04EC,0x04AB,0x04ED,0x04AF,0x04EE,0x04B3,0x04EF,0x04B7,0x04F0,0x04BB,0x04F1,0x04BF,0x04F2,0x04C3,0x04F3,0x04C7,0x04F4,0x04CB,0x04F5,0x04CF,0x04F8,0x04D3,0x04F9,0x04D7,0x0587,0x84DB,
2850
  0x0622,0x04DF,0x0623,0x04E3,0x0624,0x04E7,0x0625,0x04EB,0x0626,0x04EF,0x0675,0x84F3,0x0676,0x84F7,0x0677,0x84FB,0x0678,0x84FF,0x06C0,0x0503,0x06C2,0x0507,0x06D3,0x050B,0x0929,0x050F,0x0931,0x0515,0x0934,0x051B,0x0958,0x0521,
2851
  0x0959,0x0527,0x095A,0x052D,0x095B,0x0533,0x095C,0x0539,0x095D,0x053F,0x095E,0x0545,0x095F,0x054B,0x09CB,0x0551,0x09CC,0x0557,0x09DC,0x055D,0x09DD,0x0563,0x09DF,0x0569,0x0A33,0x056F,0x0A36,0x0575,0x0A59,0x057B,0x0A5A,0x0581,
2852
  0x0A5B,0x0587,0x0A5E,0x058D,0x0B48,0x0593,0x0B4B,0x0599,0x0B4C,0x059F,0x0B5C,0x05A5,0x0B5D,0x05AB,0x0B94,0x05B1,0x0BCA,0x05B7,0x0BCB,0x05BD,0x0BCC,0x05C3,0x0C48,0x05C9,0x0CC0,0x05CF,0x0CC7,0x05D5,0x0CC8,0x05DB,0x0CCA,0x05E1,
2853
  0x0CCB,0x05E7,0x0D4A,0x05ED,0x0D4B,0x05F3,0x0D4C,0x05F9,0x0DDA,0x05FF,0x0DDC,0x0605,0x0DDD,0x060B,0x0DDE,0x0611,0x0E33,0x8617,0x0EB3,0x861D,0x0EDC,0x8623,0x0EDD,0x8629,0x0F0C,0x862F,0x0F43,0x0632,0x0F4D,0x0638,0x0F52,0x063E,
2854
  0x0F57,0x0644,0x0F5C,0x064A,0x0F69,0x0650,0x0F73,0x0656,0x0F75,0x065C,0x0F76,0x0662,0x0F77,0x8668,0x0F78,0x066E,0x0F79,0x8674,0x0F81,0x067A,0x0F93,0x0680,0x0F9D,0x0686,0x0FA2,0x068C,0x0FA7,0x0692,0x0FAC,0x0698,0x0FB9,0x069E,
2855
  0x1026,0x06A4,0x10FC,0x86AA,0x1B06,0x06AD,0x1B08,0x06B3,0x1B0A,0x06B9,0x1B0C,0x06BF,0x1B0E,0x06C5,0x1B12,0x06CB,0x1B3B,0x06D1,0x1B3D,0x06D7,0x1B40,0x06DD,0x1B41,0x06E3,0x1B43,0x06E9,0x1D2C,0x86EF,0x1D2D,0x86F0,0x1D2E,0x86F2,
2856
  0x1D30,0x86F3,0x1D31,0x86F4,0x1D32,0x86F5,0x1D33,0x86F7,0x1D34,0x86F8,0x1D35,0x86F9,0x1D36,0x86FA,0x1D37,0x86FB,0x1D38,0x86FC,0x1D39,0x86FD,0x1D3A,0x86FE,0x1D3C,0x86FF,0x1D3D,0x8700,0x1D3E,0x8702,0x1D3F,0x8703,0x1D40,0x8704,
2857
  0x1D41,0x8705,0x1D42,0x8706,0x1D43,0x8707,0x1D44,0x8708,0x1D45,0x870A,0x1D46,0x870C,0x1D47,0x870F,0x1D48,0x8710,0x1D49,0x8711,0x1D4A,0x8712,0x1D4B,0x8714,0x1D4C,0x8716,0x1D4D,0x8718,0x1D4F,0x8719,0x1D50,0x871A,0x1D51,0x871B,
2858
  0x1D52,0x871D,0x1D53,0x871E,0x1D54,0x8720,0x1D55,0x8723,0x1D56,0x8726,0x1D57,0x8727,0x1D58,0x8728,0x1D59,0x8729,0x1D5A,0x872C,0x1D5B,0x872E,0x1D5C,0x872F,0x1D5D,0x8732,0x1D5E,0x8734,0x1D5F,0x8736,0x1D60,0x8738,0x1D61,0x873A,
2859
  0x1D62,0x873C,0x1D63,0x873D,0x1D64,0x873E,0x1D65,0x873F,0x1D66,0x8740,0x1D67,0x8742,0x1D68,0x8744,0x1D69,0x8746,0x1D6A,0x8748,0x1D78,0x874A,0x1D9B,0x874C,0x1D9C,0x874E,0x1D9D,0x874F,0x1D9E,0x8751,0x1D9F,0x8753,0x1DA0,0x8755,
2860
  0x1DA1,0x8756,0x1DA2,0x8758,0x1DA3,0x875A,0x1DA4,0x875C,0x1DA5,0x875E,0x1DA6,0x8760,0x1DA7,0x8762,0x1DA8,0x8765,0x1DA9,0x8767,0x1DAA,0x8769,0x1DAB,0x876C,0x1DAC,0x876E,0x1DAD,0x8770,0x1DAE,0x8772,0x1DAF,0x8774,0x1DB0,0x8776,
2861
  0x1DB1,0x8778,0x1DB2,0x877A,0x1DB3,0x877C,0x1DB4,0x877E,0x1DB5,0x8780,0x1DB6,0x8782,0x1DB7,0x8784,0x1DB8,0x8786,0x1DB9,0x8789,0x1DBA,0x878B,0x1DBB,0x878D,0x1DBC,0x878E,0x1DBD,0x8790,0x1DBE,0x8792,0x1DBF,0x8794,0x1E00,0x0796,
2862
  0x1E01,0x0799,0x1E02,0x079C,0x1E03,0x079F,0x1E04,0x07A2,0x1E05,0x07A5,0x1E06,0x07A8,0x1E07,0x07AB,0x1E08,0x07AE,0x1E09,0x07B2,0x1E0A,0x07B6,0x1E0B,0x07B9,0x1E0C,0x07BC,0x1E0D,0x07BF,0x1E0E,0x07C2,0x1E0F,0x07C5,0x1E10,0x07C8,
2863
  0x1E11,0x07CB,0x1E12,0x07CE,0x1E13,0x07D1,0x1E14,0x07D4,0x1E15,0x07D8,0x1E16,0x07DC,0x1E17,0x07E0,0x1E18,0x07E4,0x1E19,0x07E7,0x1E1A,0x07EA,0x1E1B,0x07ED,0x1E1C,0x07F0,0x1E1D,0x07F4,0x1E1E,0x07F8,0x1E1F,0x07FB,0x1E20,0x07FE,
2864
  0x1E21,0x0801,0x1E22,0x0804,0x1E23,0x0807,0x1E24,0x080A,0x1E25,0x080D,0x1E26,0x0810,0x1E27,0x0813,0x1E28,0x0816,0x1E29,0x0819,0x1E2A,0x081C,0x1E2B,0x081F,0x1E2C,0x0822,0x1E2D,0x0825,0x1E2E,0x0828,0x1E2F,0x082C,0x1E30,0x0830,
2865
  0x1E31,0x0833,0x1E32,0x0836,0x1E33,0x0839,0x1E34,0x083C,0x1E35,0x083F,0x1E36,0x0842,0x1E37,0x0845,0x1E38,0x0848,0x1E39,0x084D,0x1E3A,0x0852,0x1E3B,0x0855,0x1E3C,0x0858,0x1E3D,0x085B,0x1E3E,0x085E,0x1E3F,0x0861,0x1E40,0x0864,
2866
  0x1E41,0x0867,0x1E42,0x086A,0x1E43,0x086D,0x1E44,0x0870,0x1E45,0x0873,0x1E46,0x0876,0x1E47,0x0879,0x1E48,0x087C,0x1E49,0x087F,0x1E4A,0x0882,0x1E4B,0x0885,0x1E4C,0x0888,0x1E4D,0x088C,0x1E4E,0x0890,0x1E4F,0x0894,0x1E50,0x0898,
2867
  0x1E51,0x089C,0x1E52,0x08A0,0x1E53,0x08A4,0x1E54,0x08A8,0x1E55,0x08AB,0x1E56,0x08AE,0x1E57,0x08B1,0x1E58,0x08B4,0x1E59,0x08B7,0x1E5A,0x08BA,0x1E5B,0x08BD,0x1E5C,0x08C0,0x1E5D,0x08C5,0x1E5E,0x08CA,0x1E5F,0x08CD,0x1E60,0x08D0,
2868
  0x1E61,0x08D3,0x1E62,0x08D6,0x1E63,0x08D9,0x1E64,0x08DC,0x1E65,0x08E0,0x1E66,0x08E4,0x1E67,0x08E8,0x1E68,0x08EC,0x1E69,0x08F1,0x1E6A,0x08F6,0x1E6B,0x08F9,0x1E6C,0x08FC,0x1E6D,0x08FF,0x1E6E,0x0902,0x1E6F,0x0905,0x1E70,0x0908,
2869
  0x1E71,0x090B,0x1E72,0x090E,0x1E73,0x0911,0x1E74,0x0914,0x1E75,0x0917,0x1E76,0x091A,0x1E77,0x091D,0x1E78,0x0920,0x1E79,0x0924,0x1E7A,0x0928,0x1E7B,0x092C,0x1E7C,0x0930,0x1E7D,0x0933,0x1E7E,0x0936,0x1E7F,0x0939,0x1E80,0x093C,
2870
  0x1E81,0x093F,0x1E82,0x0942,0x1E83,0x0945,0x1E84,0x0948,0x1E85,0x094B,0x1E86,0x094E,0x1E87,0x0951,0x1E88,0x0954,0x1E89,0x0957,0x1E8A,0x095A,0x1E8B,0x095D,0x1E8C,0x0960,0x1E8D,0x0963,0x1E8E,0x0966,0x1E8F,0x0969,0x1E90,0x096C,
2871
  0x1E91,0x096F,0x1E92,0x0972,0x1E93,0x0975,0x1E94,0x0978,0x1E95,0x097B,0x1E96,0x097E,0x1E97,0x0981,0x1E98,0x0984,0x1E99,0x0987,0x1E9A,0x898A,0x1E9B,0x098D,0x1EA0,0x0991,0x1EA1,0x0994,0x1EA2,0x0997,0x1EA3,0x099A,0x1EA4,0x099D,
2872
  0x1EA5,0x09A1,0x1EA6,0x09A5,0x1EA7,0x09A9,0x1EA8,0x09AD,0x1EA9,0x09B1,0x1EAA,0x09B5,0x1EAB,0x09B9,0x1EAC,0x09BD,0x1EAD,0x09C2,0x1EAE,0x09C7,0x1EAF,0x09CB,0x1EB0,0x09CF,0x1EB1,0x09D3,0x1EB2,0x09D7,0x1EB3,0x09DB,0x1EB4,0x09DF,
2873
  0x1EB5,0x09E3,0x1EB6,0x09E7,0x1EB7,0x09EC,0x1EB8,0x09F1,0x1EB9,0x09F4,0x1EBA,0x09F7,0x1EBB,0x09FA,0x1EBC,0x09FD,0x1EBD,0x0A00,0x1EBE,0x0A03,0x1EBF,0x0A07,0x1EC0,0x0A0B,0x1EC1,0x0A0F,0x1EC2,0x0A13,0x1EC3,0x0A17,0x1EC4,0x0A1B,
2874
  0x1EC5,0x0A1F,0x1EC6,0x0A23,0x1EC7,0x0A28,0x1EC8,0x0A2D,0x1EC9,0x0A30,0x1ECA,0x0A33,0x1ECB,0x0A36,0x1ECC,0x0A39,0x1ECD,0x0A3C,0x1ECE,0x0A3F,0x1ECF,0x0A42,0x1ED0,0x0A45,0x1ED1,0x0A49,0x1ED2,0x0A4D,0x1ED3,0x0A51,0x1ED4,0x0A55,
2875
  0x1ED5,0x0A59,0x1ED6,0x0A5D,0x1ED7,0x0A61,0x1ED8,0x0A65,0x1ED9,0x0A6A,0x1EDA,0x0A6F,0x1EDB,0x0A73,0x1EDC,0x0A77,0x1EDD,0x0A7B,0x1EDE,0x0A7F,0x1EDF,0x0A83,0x1EE0,0x0A87,0x1EE1,0x0A8B,0x1EE2,0x0A8F,0x1EE3,0x0A93,0x1EE4,0x0A97,
2876
  0x1EE5,0x0A9A,0x1EE6,0x0A9D,0x1EE7,0x0AA0,0x1EE8,0x0AA3,0x1EE9,0x0AA7,0x1EEA,0x0AAB,0x1EEB,0x0AAF,0x1EEC,0x0AB3,0x1EED,0x0AB7,0x1EEE,0x0ABB,0x1EEF,0x0ABF,0x1EF0,0x0AC3,0x1EF1,0x0AC7,0x1EF2,0x0ACB,0x1EF3,0x0ACE,0x1EF4,0x0AD1,
2877
  0x1EF5,0x0AD4,0x1EF6,0x0AD7,0x1EF7,0x0ADA,0x1EF8,0x0ADD,0x1EF9,0x0AE0,0x1F00,0x0AE3,0x1F01,0x0AE7,0x1F02,0x0AEB,0x1F03,0x0AF0,0x1F04,0x0AF5,0x1F05,0x0AFA,0x1F06,0x0AFF,0x1F07,0x0B04,0x1F08,0x0B09,0x1F09,0x0B0D,0x1F0A,0x0B11,
2878
  0x1F0B,0x0B16,0x1F0C,0x0B1B,0x1F0D,0x0B20,0x1F0E,0x0B25,0x1F0F,0x0B2A,0x1F10,0x0B2F,0x1F11,0x0B33,0x1F12,0x0B37,0x1F13,0x0B3C,0x1F14,0x0B41,0x1F15,0x0B46,0x1F18,0x0B4B,0x1F19,0x0B4F,0x1F1A,0x0B53,0x1F1B,0x0B58,0x1F1C,0x0B5D,
2879
  0x1F1D,0x0B62,0x1F20,0x0B67,0x1F21,0x0B6B,0x1F22,0x0B6F,0x1F23,0x0B74,0x1F24,0x0B79,0x1F25,0x0B7E,0x1F26,0x0B83,0x1F27,0x0B88,0x1F28,0x0B8D,0x1F29,0x0B91,0x1F2A,0x0B95,0x1F2B,0x0B9A,0x1F2C,0x0B9F,0x1F2D,0x0BA4,0x1F2E,0x0BA9,
2880
  0x1F2F,0x0BAE,0x1F30,0x0BB3,0x1F31,0x0BB7,0x1F32,0x0BBB,0x1F33,0x0BC0,0x1F34,0x0BC5,0x1F35,0x0BCA,0x1F36,0x0BCF,0x1F37,0x0BD4,0x1F38,0x0BD9,0x1F39,0x0BDD,0x1F3A,0x0BE1,0x1F3B,0x0BE6,0x1F3C,0x0BEB,0x1F3D,0x0BF0,0x1F3E,0x0BF5,
2881
  0x1F3F,0x0BFA,0x1F40,0x0BFF,0x1F41,0x0C03,0x1F42,0x0C07,0x1F43,0x0C0C,0x1F44,0x0C11,0x1F45,0x0C16,0x1F48,0x0C1B,0x1F49,0x0C1F,0x1F4A,0x0C23,0x1F4B,0x0C28,0x1F4C,0x0C2D,0x1F4D,0x0C32,0x1F50,0x0C37,0x1F51,0x0C3B,0x1F52,0x0C3F,
2882
  0x1F53,0x0C44,0x1F54,0x0C49,0x1F55,0x0C4E,0x1F56,0x0C53,0x1F57,0x0C58,0x1F59,0x0C5D,0x1F5B,0x0C61,0x1F5D,0x0C66,0x1F5F,0x0C6B,0x1F60,0x0C70,0x1F61,0x0C74,0x1F62,0x0C78,0x1F63,0x0C7D,0x1F64,0x0C82,0x1F65,0x0C87,0x1F66,0x0C8C,
2883
  0x1F67,0x0C91,0x1F68,0x0C96,0x1F69,0x0C9A,0x1F6A,0x0C9E,0x1F6B,0x0CA3,0x1F6C,0x0CA8,0x1F6D,0x0CAD,0x1F6E,0x0CB2,0x1F6F,0x0CB7,0x1F70,0x0CBC,0x1F71,0x0CC0,0x1F72,0x0CC2,0x1F73,0x0CC6,0x1F74,0x0CC8,0x1F75,0x0CCC,0x1F76,0x0CCE,
2884
  0x1F77,0x0CD2,0x1F78,0x0CD4,0x1F79,0x0CD8,0x1F7A,0x0CDA,0x1F7B,0x0CDE,0x1F7C,0x0CE0,0x1F7D,0x0CE4,0x1F80,0x0CE6,0x1F81,0x0CEB,0x1F82,0x0CF0,0x1F83,0x0CF5,0x1F84,0x0CFA,0x1F85,0x0CFF,0x1F86,0x0D04,0x1F87,0x0D09,0x1F88,0x0D0E,
2885
  0x1F89,0x0D13,0x1F8A,0x0D18,0x1F8B,0x0D1D,0x1F8C,0x0D22,0x1F8D,0x0D27,0x1F8E,0x0D2C,0x1F8F,0x0D31,0x1F90,0x0D36,0x1F91,0x0D3B,0x1F92,0x0D40,0x1F93,0x0D45,0x1F94,0x0D4A,0x1F95,0x0D4F,0x1F96,0x0D54,0x1F97,0x0D59,0x1F98,0x0D5E,
2886
  0x1F99,0x0D63,0x1F9A,0x0D68,0x1F9B,0x0D6D,0x1F9C,0x0D72,0x1F9D,0x0D77,0x1F9E,0x0D7C,0x1F9F,0x0D81,0x1FA0,0x0D86,0x1FA1,0x0D8B,0x1FA2,0x0D90,0x1FA3,0x0D95,0x1FA4,0x0D9A,0x1FA5,0x0D9F,0x1FA6,0x0DA4,0x1FA7,0x0DA9,0x1FA8,0x0DAE,
2887
  0x1FA9,0x0DB3,0x1FAA,0x0DB8,0x1FAB,0x0DBD,0x1FAC,0x0DC2,0x1FAD,0x0DC7,0x1FAE,0x0DCC,0x1FAF,0x0DD1,0x1FB0,0x0DD6,0x1FB1,0x0DDA,0x1FB2,0x0DDE,0x1FB3,0x0DE3,0x1FB4,0x0DE7,0x1FB6,0x0DEB,0x1FB7,0x0DEF,0x1FB8,0x0DF4,0x1FB9,0x0DF8,
2888
  0x1FBA,0x0DFC,0x1FBB,0x0E00,0x1FBC,0x0E02,0x1FBD,0x8E06,0x1FBE,0x0E09,0x1FBF,0x8E0B,0x1FC0,0x8E0E,0x1FC1,0x0E11,0x1FC2,0x0E15,0x1FC3,0x0E1A,0x1FC4,0x0E1E,0x1FC6,0x0E22,0x1FC7,0x0E26,0x1FC8,0x0E2B,0x1FC9,0x0E2F,0x1FCA,0x0E31,
2889
  0x1FCB,0x0E35,0x1FCC,0x0E37,0x1FCD,0x0E3B,0x1FCE,0x0E40,0x1FCF,0x0E45,0x1FD0,0x0E4A,0x1FD1,0x0E4E,0x1FD2,0x0E52,0x1FD3,0x0E56,0x1FD6,0x0E58,0x1FD7,0x0E5C,0x1FD8,0x0E60,0x1FD9,0x0E64,0x1FDA,0x0E68,0x1FDB,0x0E6C,0x1FDD,0x0E6E,
2890
  0x1FDE,0x0E73,0x1FDF,0x0E78,0x1FE0,0x0E7D,0x1FE1,0x0E81,0x1FE2,0x0E85,0x1FE3,0x0E89,0x1FE4,0x0E8B,0x1FE5,0x0E8F,0x1FE6,0x0E93,0x1FE7,0x0E97,0x1FE8,0x0E9B,0x1FE9,0x0E9F,0x1FEA,0x0EA3,0x1FEB,0x0EA7,0x1FEC,0x0EA9,0x1FED,0x0EAD,
2891
  0x1FEE,0x0EB1,0x1FEF,0x0EB3,0x1FF2,0x0EB4,0x1FF3,0x0EB9,0x1FF4,0x0EBD,0x1FF6,0x0EC1,0x1FF7,0x0EC5,0x1FF8,0x0ECA,0x1FF9,0x0ECE,0x1FFA,0x0ED0,0x1FFB,0x0ED4,0x1FFC,0x0ED6,0x1FFD,0x0EDA,0x1FFE,0x8EDC,0x2000,0x0EDF,0x2001,0x0EE2,
2892
  0x2002,0x8EE5,0x2003,0x8EE6,0x2004,0x8EE7,0x2005,0x8EE8,0x2006,0x8EE9,0x2007,0x8EEA,0x2008,0x8EEB,0x2009,0x8EEC,0x200A,0x8EED,0x2011,0x8EEE,0x2017,0x8EF1,0x2024,0x8EF4,0x2025,0x8EF5,0x2026,0x8EF7,0x202F,0x8EFA,0x2033,0x8EFB,
2893
  0x2034,0x8F01,0x2036,0x8F0A,0x2037,0x8F10,0x203C,0x8F19,0x203E,0x8F1B,0x2047,0x8F1E,0x2048,0x8F20,0x2049,0x8F22,0x2057,0x8F24,0x205F,0x8F30,0x2070,0x8F31,0x2071,0x8F32,0x2074,0x8F33,0x2075,0x8F34,0x2076,0x8F35,0x2077,0x8F36,
2894
  0x2078,0x8F37,0x2079,0x8F38,0x207A,0x8F39,0x207B,0x8F3A,0x207C,0x8F3D,0x207D,0x8F3E,0x207E,0x8F3F,0x207F,0x8F40,0x2080,0x8F41,0x2081,0x8F42,0x2082,0x8F43,0x2083,0x8F44,0x2084,0x8F45,0x2085,0x8F46,0x2086,0x8F47,0x2087,0x8F48,
2895
  0x2088,0x8F49,0x2089,0x8F4A,0x208A,0x8F4B,0x208B,0x8F4C,0x208C,0x8F4F,0x208D,0x8F50,0x208E,0x8F51,0x2090,0x8F52,0x2091,0x8F53,0x2092,0x8F54,0x2093,0x8F55,0x2094,0x8F56,0x2095,0x8F58,0x2096,0x8F59,0x2097,0x8F5A,0x2098,0x8F5B,
2896
  0x2099,0x8F5C,0x209A,0x8F5D,0x209B,0x8F5E,0x209C,0x8F5F,0x20A8,0x8F60,0x2100,0x8F62,0x2101,0x8F65,0x2102,0x8F68,0x2103,0x8F69,0x2105,0x8F6C,0x2106,0x8F6F,0x2107,0x8F72,0x2109,0x8F74,0x210A,0x8F77,0x210B,0x8F78,0x210C,0x8F79,
2897
  0x210D,0x8F7A,0x210E,0x8F7B,0x210F,0x8F7C,0x2110,0x8F7E,0x2111,0x8F7F,0x2112,0x8F80,0x2113,0x8F81,0x2115,0x8F82,0x2116,0x8F83,0x2119,0x8F85,0x211A,0x8F86,0x211B,0x8F87,0x211C,0x8F88,0x211D,0x8F89,0x2120,0x8F8A,0x2121,0x8F8C,
2898
  0x2122,0x8F8F,0x2124,0x8F91,0x2126,0x0F92,0x2128,0x8F94,0x212A,0x0F95,0x212B,0x0F96,0x212C,0x8F98,0x212D,0x8F99,0x212F,0x8F9A,0x2130,0x8F9B,0x2131,0x8F9C,0x2133,0x8F9D,0x2134,0x8F9E,0x2135,0x8F9F,0x2136,0x8FA1,0x2137,0x8FA3,
2899
  0x2138,0x8FA5,0x2139,0x8FA7,0x213B,0x8FA8,0x213C,0x8FAB,0x213D,0x8FAD,0x213E,0x8FAF,0x213F,0x8FB1,0x2140,0x8FB3,0x2145,0x8FB6,0x2146,0x8FB7,0x2147,0x8FB8,0x2148,0x8FB9,0x2149,0x8FBA,0x2150,0x8FBB,0x2151,0x8FC0,0x2152,0x8FC5,
2900
  0x2153,0x8FCB,0x2154,0x8FD0,0x2155,0x8FD5,0x2156,0x8FDA,0x2157,0x8FDF,0x2158,0x8FE4,0x2159,0x8FE9,0x215A,0x8FEE,0x215B,0x8FF3,0x215C,0x8FF8,0x215D,0x8FFD,0x215E,0x9002,0x215F,0x9007,0x2160,0x900B,0x2161,0x900C,0x2162,0x900E,
2901
  0x2163,0x9011,0x2164,0x9013,0x2165,0x9014,0x2166,0x9016,0x2167,0x9019,0x2168,0x901D,0x2169,0x901F,0x216A,0x9020,0x216B,0x9022,0x216C,0x9025,0x216D,0x9026,0x216E,0x9027,0x216F,0x9028,0x2170,0x9029,0x2171,0x902A,0x2172,0x902C,
2902
  0x2173,0x902F,0x2174,0x9031,0x2175,0x9032,0x2176,0x9034,0x2177,0x9037,0x2178,0x903B,0x2179,0x903D,0x217A,0x903E,0x217B,0x9040,0x217C,0x9043,0x217D,0x9044,0x217E,0x9045,0x217F,0x9046,0x2189,0x9047,0x219A,0x104C,0x219B,0x1051,
2903
  0x21AE,0x1056,0x21CD,0x105B,0x21CE,0x1060,0x21CF,0x1065,0x2204,0x106A,0x2209,0x106F,0x220C,0x1074,0x2224,0x1079,0x2226,0x107E,0x222C,0x9083,0x222D,0x9089,0x222F,0x9092,0x2230,0x9098,0x2241,0x10A1,0x2244,0x10A6,0x2247,0x10AB,
2904
  0x2249,0x10B0,0x2260,0x10B5,0x2262,0x10B8,0x226D,0x10BD,0x226E,0x10C2,0x226F,0x10C5,0x2270,0x10C8,0x2271,0x10CD,0x2274,0x10D2,0x2275,0x10D7,0x2278,0x10DC,0x2279,0x10E1,0x2280,0x10E6,0x2281,0x10EB,0x2284,0x10F0,0x2285,0x10F5,
2905
  0x2288,0x10FA,0x2289,0x10FF,0x22AC,0x1104,0x22AD,0x1109,0x22AE,0x110E,0x22AF,0x1113,0x22E0,0x1118,0x22E1,0x111D,0x22E2,0x1122,0x22E3,0x1127,0x22EA,0x112C,0x22EB,0x1131,0x22EC,0x1136,0x22ED,0x113B,0x2329,0x1140,0x232A,0x1143,
2906
  0x2460,0x9146,0x2461,0x9147,0x2462,0x9148,0x2463,0x9149,0x2464,0x914A,0x2465,0x914B,0x2466,0x914C,0x2467,0x914D,0x2468,0x914E,0x2469,0x914F,0x246A,0x9151,0x246B,0x9153,0x246C,0x9155,0x246D,0x9157,0x246E,0x9159,0x246F,0x915B,
2907
  0x2470,0x915D,0x2471,0x915F,0x2472,0x9161,0x2473,0x9163,0x2474,0x9165,0x2475,0x9168,0x2476,0x916B,0x2477,0x916E,0x2478,0x9171,0x2479,0x9174,0x247A,0x9177,0x247B,0x917A,0x247C,0x917D,0x247D,0x9180,0x247E,0x9184,0x247F,0x9188,
2908
  0x2480,0x918C,0x2481,0x9190,0x2482,0x9194,0x2483,0x9198,0x2484,0x919C,0x2485,0x91A0,0x2486,0x91A4,0x2487,0x91A8,0x2488,0x91AC,0x2489,0x91AE,0x248A,0x91B0,0x248B,0x91B2,0x248C,0x91B4,0x248D,0x91B6,0x248E,0x91B8,0x248F,0x91BA,
2909
  0x2490,0x91BC,0x2491,0x91BE,0x2492,0x91C1,0x2493,0x91C4,0x2494,0x91C7,0x2495,0x91CA,0x2496,0x91CD,0x2497,0x91D0,0x2498,0x91D3,0x2499,0x91D6,0x249A,0x91D9,0x249B,0x91DC,0x249C,0x91DF,0x249D,0x91E2,0x249E,0x91E5,0x249F,0x91E8,
2910
  0x24A0,0x91EB,0x24A1,0x91EE,0x24A2,0x91F1,0x24A3,0x91F4,0x24A4,0x91F7,0x24A5,0x91FA,0x24A6,0x91FD,0x24A7,0x9200,0x24A8,0x9203,0x24A9,0x9206,0x24AA,0x9209,0x24AB,0x920C,0x24AC,0x920F,0x24AD,0x9212,0x24AE,0x9215,0x24AF,0x9218,
2911
  0x24B0,0x921B,0x24B1,0x921E,0x24B2,0x9221,0x24B3,0x9224,0x24B4,0x9227,0x24B5,0x922A,0x24B6,0x922D,0x24B7,0x922E,0x24B8,0x922F,0x24B9,0x9230,0x24BA,0x9231,0x24BB,0x9232,0x24BC,0x9233,0x24BD,0x9234,0x24BE,0x9235,0x24BF,0x9236,
2912
  0x24C0,0x9237,0x24C1,0x9238,0x24C2,0x9239,0x24C3,0x923A,0x24C4,0x923B,0x24C5,0x923C,0x24C6,0x923D,0x24C7,0x923E,0x24C8,0x923F,0x24C9,0x9240,0x24CA,0x9241,0x24CB,0x9242,0x24CC,0x9243,0x24CD,0x9244,0x24CE,0x9245,0x24CF,0x9246,
2913
  0x24D0,0x9247,0x24D1,0x9248,0x24D2,0x9249,0x24D3,0x924A,0x24D4,0x924B,0x24D5,0x924C,0x24D6,0x924D,0x24D7,0x924E,0x24D8,0x924F,0x24D9,0x9250,0x24DA,0x9251,0x24DB,0x9252,0x24DC,0x9253,0x24DD,0x9254,0x24DE,0x9255,0x24DF,0x9256,
2914
  0x24E0,0x9257,0x24E1,0x9258,0x24E2,0x9259,0x24E3,0x925A,0x24E4,0x925B,0x24E5,0x925C,0x24E6,0x925D,0x24E7,0x925E,0x24E8,0x925F,0x24E9,0x9260,0x24EA,0x9261,0x2A0C,0x9262,0x2A74,0x926E,0x2A75,0x9271,0x2A76,0x9273,0x2ADC,0x1276,
2915
  0x2C7C,0x927B,0x2C7D,0x927C,0x2D6F,0x927D,0x2E9F,0x9280,0x2EF3,0x9283,0x2F00,0x9286,0x2F01,0x9289,0x2F02,0x928C,0x2F03,0x928F,0x2F04,0x9292,0x2F05,0x9295,0x2F06,0x9298,0x2F07,0x929B,0x2F08,0x929E,0x2F09,0x92A1,0x2F0A,0x92A4,
2916
  0x2F0B,0x92A7,0x2F0C,0x92AA,0x2F0D,0x92AD,0x2F0E,0x92B0,0x2F0F,0x92B3,0x2F10,0x92B6,0x2F11,0x92B9,0x2F12,0x92BC,0x2F13,0x92BF,0x2F14,0x92C2,0x2F15,0x92C5,0x2F16,0x92C8,0x2F17,0x92CB,0x2F18,0x92CE,0x2F19,0x92D1,0x2F1A,0x92D4,
2917
  0x2F1B,0x92D7,0x2F1C,0x92DA,0x2F1D,0x92DD,0x2F1E,0x92E0,0x2F1F,0x92E3,0x2F20,0x92E6,0x2F21,0x92E9,0x2F22,0x92EC,0x2F23,0x92EF,0x2F24,0x92F2,0x2F25,0x92F5,0x2F26,0x92F8,0x2F27,0x92FB,0x2F28,0x92FE,0x2F29,0x9301,0x2F2A,0x9304,
2918
  0x2F2B,0x9307,0x2F2C,0x930A,0x2F2D,0x930D,0x2F2E,0x9310,0x2F2F,0x9313,0x2F30,0x9316,0x2F31,0x9319,0x2F32,0x931C,0x2F33,0x931F,0x2F34,0x9322,0x2F35,0x9325,0x2F36,0x9328,0x2F37,0x932B,0x2F38,0x932E,0x2F39,0x9331,0x2F3A,0x9334,
2919
  0x2F3B,0x9337,0x2F3C,0x933A,0x2F3D,0x933D,0x2F3E,0x9340,0x2F3F,0x9343,0x2F40,0x9346,0x2F41,0x9349,0x2F42,0x934C,0x2F43,0x934F,0x2F44,0x9352,0x2F45,0x9355,0x2F46,0x9358,0x2F47,0x935B,0x2F48,0x935E,0x2F49,0x9361,0x2F4A,0x9364,
2920
  0x2F4B,0x9367,0x2F4C,0x936A,0x2F4D,0x936D,0x2F4E,0x9370,0x2F4F,0x9373,0x2F50,0x9376,0x2F51,0x9379,0x2F52,0x937C,0x2F53,0x937F,0x2F54,0x9382,0x2F55,0x9385,0x2F56,0x9388,0x2F57,0x938B,0x2F58,0x938E,0x2F59,0x9391,0x2F5A,0x9394,
2921
  0x2F5B,0x9397,0x2F5C,0x939A,0x2F5D,0x939D,0x2F5E,0x93A0,0x2F5F,0x93A3,0x2F60,0x93A6,0x2F61,0x93A9,0x2F62,0x93AC,0x2F63,0x93AF,0x2F64,0x93B2,0x2F65,0x93B5,0x2F66,0x93B8,0x2F67,0x93BB,0x2F68,0x93BE,0x2F69,0x93C1,0x2F6A,0x93C4,
2922
  0x2F6B,0x93C7,0x2F6C,0x93CA,0x2F6D,0x93CD,0x2F6E,0x93D0,0x2F6F,0x93D3,0x2F70,0x93D6,0x2F71,0x93D9,0x2F72,0x93DC,0x2F73,0x93DF,0x2F74,0x93E2,0x2F75,0x93E5,0x2F76,0x93E8,0x2F77,0x93EB,0x2F78,0x93EE,0x2F79,0x93F1,0x2F7A,0x93F4,
2923
  0x2F7B,0x93F7,0x2F7C,0x93FA,0x2F7D,0x93FD,0x2F7E,0x9400,0x2F7F,0x9403,0x2F80,0x9406,0x2F81,0x9409,0x2F82,0x940C,0x2F83,0x940F,0x2F84,0x9412,0x2F85,0x9415,0x2F86,0x9418,0x2F87,0x941B,0x2F88,0x941E,0x2F89,0x9421,0x2F8A,0x9424,
2924
  0x2F8B,0x9427,0x2F8C,0x942A,0x2F8D,0x942D,0x2F8E,0x9430,0x2F8F,0x9433,0x2F90,0x9436,0x2F91,0x9439,0x2F92,0x943C,0x2F93,0x943F,0x2F94,0x9442,0x2F95,0x9445,0x2F96,0x9448,0x2F97,0x944B,0x2F98,0x944E,0x2F99,0x9451,0x2F9A,0x9454,
2925
  0x2F9B,0x9457,0x2F9C,0x945A,0x2F9D,0x945D,0x2F9E,0x9460,0x2F9F,0x9463,0x2FA0,0x9466,0x2FA1,0x9469,0x2FA2,0x946C,0x2FA3,0x946F,0x2FA4,0x9472,0x2FA5,0x9475,0x2FA6,0x9478,0x2FA7,0x947B,0x2FA8,0x947E,0x2FA9,0x9481,0x2FAA,0x9484,
2926
  0x2FAB,0x9487,0x2FAC,0x948A,0x2FAD,0x948D,0x2FAE,0x9490,0x2FAF,0x9493,0x2FB0,0x9496,0x2FB1,0x9499,0x2FB2,0x949C,0x2FB3,0x949F,0x2FB4,0x94A2,0x2FB5,0x94A5,0x2FB6,0x94A8,0x2FB7,0x94AB,0x2FB8,0x94AE,0x2FB9,0x94B1,0x2FBA,0x94B4,
2927
  0x2FBB,0x94B7,0x2FBC,0x94BA,0x2FBD,0x94BD,0x2FBE,0x94C0,0x2FBF,0x94C3,0x2FC0,0x94C6,0x2FC1,0x94C9,0x2FC2,0x94CC,0x2FC3,0x94CF,0x2FC4,0x94D2,0x2FC5,0x94D5,0x2FC6,0x94D8,0x2FC7,0x94DB,0x2FC8,0x94DE,0x2FC9,0x94E1,0x2FCA,0x94E4,
2928
  0x2FCB,0x94E7,0x2FCC,0x94EA,0x2FCD,0x94ED,0x2FCE,0x94F0,0x2FCF,0x94F3,0x2FD0,0x94F6,0x2FD1,0x94F9,0x2FD2,0x94FC,0x2FD3,0x94FF,0x2FD4,0x9502,0x2FD5,0x9505,0x3000,0x9508,0x3036,0x9509,0x3038,0x950C,0x3039,0x950F,0x303A,0x9512,
2929
  0x304C,0x1515,0x304E,0x151B,0x3050,0x1521,0x3052,0x1527,0x3054,0x152D,0x3056,0x1533,0x3058,0x1539,0x305A,0x153F,0x305C,0x1545,0x305E,0x154B,0x3060,0x1551,0x3062,0x1557,0x3065,0x155D,0x3067,0x1563,0x3069,0x1569,0x3070,0x156F,
2930
  0x3071,0x1575,0x3073,0x157B,0x3074,0x1581,0x3076,0x1587,0x3077,0x158D,0x3079,0x1593,0x307A,0x1599,0x307C,0x159F,0x307D,0x15A5,0x3094,0x15AB,0x309B,0x95B1,0x309C,0x95B5,0x309E,0x15B9,0x309F,0x95BF,0x30AC,0x15C5,0x30AE,0x15CB,
2931
  0x30B0,0x15D1,0x30B2,0x15D7,0x30B4,0x15DD,0x30B6,0x15E3,0x30B8,0x15E9,0x30BA,0x15EF,0x30BC,0x15F5,0x30BE,0x15FB,0x30C0,0x1601,0x30C2,0x1607,0x30C5,0x160D,0x30C7,0x1613,0x30C9,0x1619,0x30D0,0x161F,0x30D1,0x1625,0x30D3,0x162B,
2932
  0x30D4,0x1631,0x30D6,0x1637,0x30D7,0x163D,0x30D9,0x1643,0x30DA,0x1649,0x30DC,0x164F,0x30DD,0x1655,0x30F4,0x165B,0x30F7,0x1661,0x30F8,0x1667,0x30F9,0x166D,0x30FA,0x1673,0x30FE,0x1679,0x30FF,0x967F,0x3131,0x9685,0x3132,0x9688,
2933
  0x3133,0x968B,0x3134,0x968E,0x3135,0x9691,0x3136,0x9694,0x3137,0x9697,0x3138,0x969A,0x3139,0x969D,0x313A,0x96A0,0x313B,0x96A3,0x313C,0x96A6,0x313D,0x96A9,0x313E,0x96AC,0x313F,0x96AF,0x3140,0x96B2,0x3141,0x96B5,0x3142,0x96B8,
2934
  0x3143,0x96BB,0x3144,0x96BE,0x3145,0x96C1,0x3146,0x96C4,0x3147,0x96C7,0x3148,0x96CA,0x3149,0x96CD,0x314A,0x96D0,0x314B,0x96D3,0x314C,0x96D6,0x314D,0x96D9,0x314E,0x96DC,0x314F,0x96DF,0x3150,0x96E2,0x3151,0x96E5,0x3152,0x96E8,
2935
  0x3153,0x96EB,0x3154,0x96EE,0x3155,0x96F1,0x3156,0x96F4,0x3157,0x96F7,0x3158,0x96FA,0x3159,0x96FD,0x315A,0x9700,0x315B,0x9703,0x315C,0x9706,0x315D,0x9709,0x315E,0x970C,0x315F,0x970F,0x3160,0x9712,0x3161,0x9715,0x3162,0x9718,
2936
  0x3163,0x971B,0x3164,0x971E,0x3165,0x9721,0x3166,0x9724,0x3167,0x9727,0x3168,0x972A,0x3169,0x972D,0x316A,0x9730,0x316B,0x9733,0x316C,0x9736,0x316D,0x9739,0x316E,0x973C,0x316F,0x973F,0x3170,0x9742,0x3171,0x9745,0x3172,0x9748,
2937
  0x3173,0x974B,0x3174,0x974E,0x3175,0x9751,0x3176,0x9754,0x3177,0x9757,0x3178,0x975A,0x3179,0x975D,0x317A,0x9760,0x317B,0x9763,0x317C,0x9766,0x317D,0x9769,0x317E,0x976C,0x317F,0x976F,0x3180,0x9772,0x3181,0x9775,0x3182,0x9778,
2938
  0x3183,0x977B,0x3184,0x977E,0x3185,0x9781,0x3186,0x9784,0x3187,0x9787,0x3188,0x978A,0x3189,0x978D,0x318A,0x9790,0x318B,0x9793,0x318C,0x9796,0x318D,0x9799,0x318E,0x979C,0x3192,0x979F,0x3193,0x97A2,0x3194,0x97A5,0x3195,0x97A8,
2939
  0x3196,0x97AB,0x3197,0x97AE,0x3198,0x97B1,0x3199,0x97B4,0x319A,0x97B7,0x319B,0x97BA,0x319C,0x97BD,0x319D,0x97C0,0x319E,0x97C3,0x319F,0x97C6,0x3200,0x97C9,0x3201,0x97CE,0x3202,0x97D3,0x3203,0x97D8,0x3204,0x97DD,0x3205,0x97E2,
2940
  0x3206,0x97E7,0x3207,0x97EC,0x3208,0x97F1,0x3209,0x97F6,0x320A,0x97FB,0x320B,0x9800,0x320C,0x9805,0x320D,0x980A,0x320E,0x980F,0x320F,0x9817,0x3210,0x981F,0x3211,0x9827,0x3212,0x982F,0x3213,0x9837,0x3214,0x983F,0x3215,0x9847,
2941
  0x3216,0x984F,0x3217,0x9857,0x3218,0x985F,0x3219,0x9867,0x321A,0x986F,0x321B,0x9877,0x321C,0x987F,0x321D,0x9887,0x321E,0x9898,0x3220,0x98A6,0x3221,0x98AB,0x3222,0x98B0,0x3223,0x98B5,0x3224,0x98BA,0x3225,0x98BF,0x3226,0x98C4,
2942
  0x3227,0x98C9,0x3228,0x98CE,0x3229,0x98D3,0x322A,0x98D8,0x322B,0x98DD,0x322C,0x98E2,0x322D,0x98E7,0x322E,0x98EC,0x322F,0x98F1,0x3230,0x98F6,0x3231,0x98FB,0x3232,0x9900,0x3233,0x9905,0x3234,0x990A,0x3235,0x990F,0x3236,0x9914,
2943
  0x3237,0x9919,0x3238,0x991E,0x3239,0x9923,0x323A,0x9928,0x323B,0x992D,0x323C,0x9932,0x323D,0x9937,0x323E,0x993C,0x323F,0x9941,0x3240,0x9946,0x3241,0x994B,0x3242,0x9950,0x3243,0x9955,0x3244,0x995A,0x3245,0x995D,0x3246,0x9960,
2944
  0x3247,0x9963,0x3250,0x9966,0x3251,0x9969,0x3252,0x996B,0x3253,0x996D,0x3254,0x996F,0x3255,0x9971,0x3256,0x9973,0x3257,0x9975,0x3258,0x9977,0x3259,0x9979,0x325A,0x997B,0x325B,0x997D,0x325C,0x997F,0x325D,0x9981,0x325E,0x9983,
2945
  0x325F,0x9985,0x3260,0x9987,0x3261,0x998A,0x3262,0x998D,0x3263,0x9990,0x3264,0x9993,0x3265,0x9996,0x3266,0x9999,0x3267,0x999C,0x3268,0x999F,0x3269,0x99A2,0x326A,0x99A5,0x326B,0x99A8,0x326C,0x99AB,0x326D,0x99AE,0x326E,0x99B1,
2946
  0x326F,0x99B7,0x3270,0x99BD,0x3271,0x99C3,0x3272,0x99C9,0x3273,0x99CF,0x3274,0x99D5,0x3275,0x99DB,0x3276,0x99E1,0x3277,0x99E7,0x3278,0x99ED,0x3279,0x99F3,0x327A,0x99F9,0x327B,0x99FF,0x327C,0x9A05,0x327D,0x9A14,0x327E,0x9A20,
2947
  0x3280,0x9A26,0x3281,0x9A29,0x3282,0x9A2C,0x3283,0x9A2F,0x3284,0x9A32,0x3285,0x9A35,0x3286,0x9A38,0x3287,0x9A3B,0x3288,0x9A3E,0x3289,0x9A41,0x328A,0x9A44,0x328B,0x9A47,0x328C,0x9A4A,0x328D,0x9A4D,0x328E,0x9A50,0x328F,0x9A53,
2948
  0x3290,0x9A56,0x3291,0x9A59,0x3292,0x9A5C,0x3293,0x9A5F,0x3294,0x9A62,0x3295,0x9A65,0x3296,0x9A68,0x3297,0x9A6B,0x3298,0x9A6E,0x3299,0x9A71,0x329A,0x9A74,0x329B,0x9A77,0x329C,0x9A7A,0x329D,0x9A7D,0x329E,0x9A80,0x329F,0x9A83,
2949
  0x32A0,0x9A86,0x32A1,0x9A89,0x32A2,0x9A8C,0x32A3,0x9A8F,0x32A4,0x9A92,0x32A5,0x9A95,0x32A6,0x9A98,0x32A7,0x9A9B,0x32A8,0x9A9E,0x32A9,0x9AA1,0x32AA,0x9AA4,0x32AB,0x9AA7,0x32AC,0x9AAA,0x32AD,0x9AAD,0x32AE,0x9AB0,0x32AF,0x9AB3,
2950
  0x32B0,0x9AB6,0x32B1,0x9AB9,0x32B2,0x9ABB,0x32B3,0x9ABD,0x32B4,0x9ABF,0x32B5,0x9AC1,0x32B6,0x9AC3,0x32B7,0x9AC5,0x32B8,0x9AC7,0x32B9,0x9AC9,0x32BA,0x9ACB,0x32BB,0x9ACD,0x32BC,0x9ACF,0x32BD,0x9AD1,0x32BE,0x9AD3,0x32BF,0x9AD5,
2951
  0x32C0,0x9AD7,0x32C1,0x9ADB,0x32C2,0x9ADF,0x32C3,0x9AE3,0x32C4,0x9AE7,0x32C5,0x9AEB,0x32C6,0x9AEF,0x32C7,0x9AF3,0x32C8,0x9AF7,0x32C9,0x9AFB,0x32CA,0x9B00,0x32CB,0x9B05,0x32CC,0x9B0A,0x32CD,0x9B0C,0x32CE,0x9B0F,0x32CF,0x9B11,
2952
  0x32D0,0x9B14,0x32D1,0x9B17,0x32D2,0x9B1A,0x32D3,0x9B1D,0x32D4,0x9B20,0x32D5,0x9B23,0x32D6,0x9B26,0x32D7,0x9B29,0x32D8,0x9B2C,0x32D9,0x9B2F,0x32DA,0x9B32,0x32DB,0x9B35,0x32DC,0x9B38,0x32DD,0x9B3B,0x32DE,0x9B3E,0x32DF,0x9B41,
2953
  0x32E0,0x9B44,0x32E1,0x9B47,0x32E2,0x9B4A,0x32E3,0x9B4D,0x32E4,0x9B50,0x32E5,0x9B53,0x32E6,0x9B56,0x32E7,0x9B59,0x32E8,0x9B5C,0x32E9,0x9B5F,0x32EA,0x9B62,0x32EB,0x9B65,0x32EC,0x9B68,0x32ED,0x9B6B,0x32EE,0x9B6E,0x32EF,0x9B71,
2954
  0x32F0,0x9B74,0x32F1,0x9B77,0x32F2,0x9B7A,0x32F3,0x9B7D,0x32F4,0x9B80,0x32F5,0x9B83,0x32F6,0x9B86,0x32F7,0x9B89,0x32F8,0x9B8C,0x32F9,0x9B8F,0x32FA,0x9B92,0x32FB,0x9B95,0x32FC,0x9B98,0x32FD,0x9B9B,0x32FE,0x9B9E,0x32FF,0x9BA1,
2955
  0x3300,0x9BA7,0x3301,0x9BB3,0x3302,0x9BBF,0x3303,0x9BCB,0x3304,0x9BD4,0x3305,0x9BE0,0x3306,0x9BE9,0x3307,0x9BF2,0x3308,0x9C01,0x3309,0x9C0D,0x330A,0x9C16,0x330B,0x9C1F,0x330C,0x9C28,0x330D,0x9C34,0x330E,0x9C40,0x330F,0x9C49,
2956
  0x3310,0x9C52,0x3311,0x9C58,0x3312,0x9C61,0x3313,0x9C6D,0x3314,0x9C79,0x3315,0x9C7F,0x3316,0x9C8E,0x3317,0x9CA0,0x3318,0x9CAF,0x3319,0x9CB8,0x331A,0x9CC7,0x331B,0x9CD6,0x331C,0x9CE2,0x331D,0x9CEB,0x331E,0x9CF4,0x331F,0x9CFD,
2957
  0x3320,0x9D09,0x3321,0x9D18,0x3322,0x9D24,0x3323,0x9D2D,0x3324,0x9D36,0x3325,0x9D3F,0x3326,0x9D45,0x3327,0x9D4B,0x3328,0x9D51,0x3329,0x9D57,0x332A,0x9D60,0x332B,0x9D69,0x332C,0x9D78,0x332D,0x9D81,0x332E,0x9D8D,0x332F,0x9D9C,
2958
  0x3330,0x9DA5,0x3331,0x9DAB,0x3332,0x9DB1,0x3333,0x9DC0,0x3334,0x9DCC,0x3335,0x9DDB,0x3336,0x9DE4,0x3337,0x9DF3,0x3338,0x9DF9,0x3339,0x9E02,0x333A,0x9E0B,0x333B,0x9E14,0x333C,0x9E1D,0x333D,0x9E26,0x333E,0x9E32,0x333F,0x9E3B,
2959
  0x3340,0x9E41,0x3341,0x9E4A,0x3342,0x9E53,0x3343,0x9E5C,0x3344,0x9E68,0x3345,0x9E71,0x3346,0x9E7A,0x3347,0x9E83,0x3348,0x9E92,0x3349,0x9E9E,0x334A,0x9EA4,0x334B,0x9EB3,0x334C,0x9EB9,0x334D,0x9EC5,0x334E,0x9ED1,0x334F,0x9EDA,
2960
  0x3350,0x9EE3,0x3351,0x9EEC,0x3352,0x9EF8,0x3353,0x9EFE,0x3354,0x9F07,0x3355,0x9F13,0x3356,0x9F19,0x3357,0x9F28,0x3358,0x9F31,0x3359,0x9F35,0x335A,0x9F39,0x335B,0x9F3D,0x335C,0x9F41,0x335D,0x9F45,0x335E,0x9F49,0x335F,0x9F4D,
2961
  0x3360,0x9F51,0x3361,0x9F55,0x3362,0x9F59,0x3363,0x9F5E,0x3364,0x9F63,0x3365,0x9F68,0x3366,0x9F6D,0x3367,0x9F72,0x3368,0x9F77,0x3369,0x9F7C,0x336A,0x9F81,0x336B,0x9F86,0x336C,0x9F8B,0x336D,0x9F90,0x336E,0x9F95,0x336F,0x9F9A,
2962
  0x3370,0x9F9F,0x3371,0x9FA4,0x3372,0x9FA7,0x3373,0x9FA9,0x3374,0x9FAB,0x3375,0x9FAE,0x3376,0x9FB0,0x3377,0x9FB2,0x3378,0x9FB4,0x3379,0x9FB8,0x337A,0x9FBC,0x337B,0x9FBE,0x337C,0x9FC4,0x337D,0x9FCA,0x337E,0x9FD0,0x337F,0x9FD6,
2963
  0x3380,0x9FE2,0x3381,0x9FE4,0x3382,0x9FE6,0x3383,0x9FE9,0x3384,0x9FEB,0x3385,0x9FED,0x3386,0x9FEF,0x3387,0x9FF1,0x3388,0x9FF3,0x3389,0x9FF6,0x338A,0x9FFA,0x338B,0x9FFC,0x338C,0x9FFE,0x338D,0xA001,0x338E,0xA004,0x338F,0xA006,
2964
  0x3390,0xA008,0x3391,0xA00A,0x3392,0xA00D,0x3393,0xA010,0x3394,0xA013,0x3395,0xA016,0x3396,0xA01B,0x3397,0xA01F,0x3398,0xA023,0x3399,0xA027,0x339A,0xA029,0x339B,0xA02B,0x339C,0xA02E,0x339D,0xA030,0x339E,0xA032,0x339F,0xA034,
2965
  0x33A0,0xA038,0x33A1,0xA03C,0x33A2,0xA03F,0x33A3,0xA043,0x33A4,0xA047,0x33A5,0xA04B,0x33A6,0xA04E,0x33A7,0xA052,0x33A8,0xA057,0x33A9,0xA05E,0x33AA,0xA060,0x33AB,0xA063,0x33AC,0xA066,0x33AD,0xA069,0x33AE,0xA06C,0x33AF,0xA073,
2966
  0x33B0,0xA07C,0x33B1,0xA07E,0x33B2,0xA080,0x33B3,0xA083,0x33B4,0xA085,0x33B5,0xA087,0x33B6,0xA089,0x33B7,0xA08C,0x33B8,0xA08E,0x33B9,0xA090,0x33BA,0xA092,0x33BB,0xA094,0x33BC,0xA096,0x33BD,0xA099,0x33BE,0xA09B,0x33BF,0xA09D,
2967
  0x33C0,0xA09F,0x33C1,0xA0A2,0x33C2,0xA0A5,0x33C3,0xA0A9,0x33C4,0xA0AB,0x33C5,0xA0AD,0x33C6,0xA0AF,0x33C7,0xA0B5,0x33C8,0xA0B8,0x33C9,0xA0BA,0x33CA,0xA0BC,0x33CB,0xA0BE,0x33CC,0xA0C0,0x33CD,0xA0C2,0x33CE,0xA0C4,0x33CF,0xA0C6,
2968
  0x33D0,0xA0C8,0x33D1,0xA0CA,0x33D2,0xA0CC,0x33D3,0xA0CF,0x33D4,0xA0D1,0x33D5,0xA0D3,0x33D6,0xA0D6,0x33D7,0xA0D9,0x33D8,0xA0DB,0x33D9,0xA0DF,0x33DA,0xA0E2,0x33DB,0xA0E4,0x33DC,0xA0E6,0x33DD,0xA0E8,0x33DE,0xA0EA,0x33DF,0xA0EF,
2969
  0x33E0,0xA0F4,0x33E1,0xA0F8,0x33E2,0xA0FC,0x33E3,0xA100,0x33E4,0xA104,0x33E5,0xA108,0x33E6,0xA10C,0x33E7,0xA110,0x33E8,0xA114,0x33E9,0xA118,0x33EA,0xA11D,0x33EB,0xA122,0x33EC,0xA127,0x33ED,0xA12C,0x33EE,0xA131,0x33EF,0xA136,
2970
  0x33F0,0xA13B,0x33F1,0xA140,0x33F2,0xA145,0x33F3,0xA14A,0x33F4,0xA14F,0x33F5,0xA154,0x33F6,0xA159,0x33F7,0xA15E,0x33F8,0xA163,0x33F9,0xA168,0x33FA,0xA16D,0x33FB,0xA172,0x33FC,0xA177,0x33FD,0xA17C,0x33FE,0xA181,0x33FF,0xA186,
2971
  0xA69C,0xA189,0xA69D,0xA18B,0xA770,0xA18D,0xA7F1,0xA190,0xA7F2,0xA191,0xA7F3,0xA192,0xA7F4,0xA193,0xA7F8,0xA194,0xA7F9,0xA196,0xAB5C,0xA198,0xAB5D,0xA19B,0xAB5E,0xA19E,0xAB5F,0xA1A0,0xAB69,0xA1A3,0xF900,0x21A5,0xF901,0x21A8,
2972
  0xF902,0x21AB,0xF903,0x21AE,0xF904,0x21B1,0xF905,0x21B4,0xF906,0x21B7,0xF907,0x21BA,0xF908,0x21BD,0xF909,0x21C0,0xF90A,0x21C3,0xF90B,0x21C6,0xF90C,0x21C9,0xF90D,0x21CC,0xF90E,0x21CF,0xF90F,0x21D2,0xF910,0x21D5,0xF911,0x21D8,
2973
  0xF912,0x21DB,0xF913,0x21DE,0xF914,0x21E1,0xF915,0x21E4,0xF916,0x21E7,0xF917,0x21EA,0xF918,0x21ED,0xF919,0x21F0,0xF91A,0x21F3,0xF91B,0x21F6,0xF91C,0x21F9,0xF91D,0x21FC,0xF91E,0x21FF,0xF91F,0x2202,0xF920,0x2205,0xF921,0x2208,
2974
  0xF922,0x220B,0xF923,0x220E,0xF924,0x2211,0xF925,0x2214,0xF926,0x2217,0xF927,0x221A,0xF928,0x221D,0xF929,0x2220,0xF92A,0x2223,0xF92B,0x2226,0xF92C,0x2229,0xF92D,0x222C,0xF92E,0x222F,0xF92F,0x2232,0xF930,0x2235,0xF931,0x2238,
2975
  0xF932,0x223B,0xF933,0x223E,0xF934,0x2241,0xF935,0x2244,0xF936,0x2247,0xF937,0x224A,0xF938,0x224D,0xF939,0x2250,0xF93A,0x2253,0xF93B,0x2256,0xF93C,0x2259,0xF93D,0x225C,0xF93E,0x225F,0xF93F,0x2262,0xF940,0x2265,0xF941,0x2268,
2976
  0xF942,0x226B,0xF943,0x226E,0xF944,0x2271,0xF945,0x2274,0xF946,0x2277,0xF947,0x227A,0xF948,0x227D,0xF949,0x2280,0xF94A,0x2283,0xF94B,0x2286,0xF94C,0x2289,0xF94D,0x228C,0xF94E,0x228F,0xF94F,0x2292,0xF950,0x2295,0xF951,0x2298,
2977
  0xF952,0x229B,0xF953,0x229E,0xF954,0x22A1,0xF955,0x22A4,0xF956,0x22A7,0xF957,0x22AA,0xF958,0x22AD,0xF959,0x22B0,0xF95A,0x22B3,0xF95B,0x22B6,0xF95C,0x22B9,0xF95D,0x22BC,0xF95E,0x22BF,0xF95F,0x22C2,0xF960,0x22C5,0xF961,0x22C8,
2978
  0xF962,0x22CB,0xF963,0x22CE,0xF964,0x22D1,0xF965,0x22D4,0xF966,0x22D7,0xF967,0x22DA,0xF968,0x22DD,0xF969,0x22E0,0xF96A,0x22E3,0xF96B,0x22E6,0xF96C,0x22E9,0xF96D,0x22EC,0xF96E,0x22EF,0xF96F,0x22F2,0xF970,0x22F5,0xF971,0x22F8,
2979
  0xF972,0x22FB,0xF973,0x22FE,0xF974,0x2301,0xF975,0x2304,0xF976,0x2307,0xF977,0x230A,0xF978,0x230D,0xF979,0x2310,0xF97A,0x2313,0xF97B,0x2316,0xF97C,0x2319,0xF97D,0x231C,0xF97E,0x231F,0xF97F,0x2322,0xF980,0x2325,0xF981,0x2328,
2980
  0xF982,0x232B,0xF983,0x232E,0xF984,0x2331,0xF985,0x2334,0xF986,0x2337,0xF987,0x233A,0xF988,0x233D,0xF989,0x2340,0xF98A,0x2343,0xF98B,0x2346,0xF98C,0x2349,0xF98D,0x234C,0xF98E,0x234F,0xF98F,0x2352,0xF990,0x2355,0xF991,0x2358,
2981
  0xF992,0x235B,0xF993,0x235E,0xF994,0x2361,0xF995,0x2364,0xF996,0x2367,0xF997,0x236A,0xF998,0x236D,0xF999,0x2370,0xF99A,0x2373,0xF99B,0x2376,0xF99C,0x2379,0xF99D,0x237C,0xF99E,0x237F,0xF99F,0x2382,0xF9A0,0x2385,0xF9A1,0x2388,
2982
  0xF9A2,0x238B,0xF9A3,0x238E,0xF9A4,0x2391,0xF9A5,0x2394,0xF9A6,0x2397,0xF9A7,0x239A,0xF9A8,0x239D,0xF9A9,0x23A0,0xF9AA,0x23A3,0xF9AB,0x23A6,0xF9AC,0x23A9,0xF9AD,0x23AC,0xF9AE,0x23AF,0xF9AF,0x23B2,0xF9B0,0x23B5,0xF9B1,0x23B8,
2983
  0xF9B2,0x23BB,0xF9B3,0x23BE,0xF9B4,0x23C1,0xF9B5,0x23C4,0xF9B6,0x23C7,0xF9B7,0x23CA,0xF9B8,0x23CD,0xF9B9,0x23D0,0xF9BA,0x23D3,0xF9BB,0x23D6,0xF9BC,0x23D9,0xF9BD,0x23DC,0xF9BE,0x23DF,0xF9BF,0x23E2,0xF9C0,0x23E5,0xF9C1,0x23E8,
2984
  0xF9C2,0x23EB,0xF9C3,0x23EE,0xF9C4,0x23F1,0xF9C5,0x23F4,0xF9C6,0x23F7,0xF9C7,0x23FA,0xF9C8,0x23FD,0xF9C9,0x2400,0xF9CA,0x2403,0xF9CB,0x2406,0xF9CC,0x2409,0xF9CD,0x240C,0xF9CE,0x240F,0xF9CF,0x2412,0xF9D0,0x2415,0xF9D1,0x2418,
2985
  0xF9D2,0x241B,0xF9D3,0x241E,0xF9D4,0x2421,0xF9D5,0x2424,0xF9D6,0x2427,0xF9D7,0x242A,0xF9D8,0x242D,0xF9D9,0x2430,0xF9DA,0x2433,0xF9DB,0x2436,0xF9DC,0x2439,0xF9DD,0x243C,0xF9DE,0x243F,0xF9DF,0x2442,0xF9E0,0x2445,0xF9E1,0x2448,
2986
  0xF9E2,0x244B,0xF9E3,0x244E,0xF9E4,0x2451,0xF9E5,0x2454,0xF9E6,0x2457,0xF9E7,0x245A,0xF9E8,0x245D,0xF9E9,0x2460,0xF9EA,0x2463,0xF9EB,0x2466,0xF9EC,0x2469,0xF9ED,0x246C,0xF9EE,0x246F,0xF9EF,0x2472,0xF9F0,0x2475,0xF9F1,0x2478,
2987
  0xF9F2,0x247B,0xF9F3,0x247E,0xF9F4,0x2481,0xF9F5,0x2484,0xF9F6,0x2487,0xF9F7,0x248A,0xF9F8,0x248D,0xF9F9,0x2490,0xF9FA,0x2493,0xF9FB,0x2496,0xF9FC,0x2499,0xF9FD,0x249C,0xF9FE,0x249F,0xF9FF,0x24A2,0xFA00,0x24A5,0xFA01,0x24A8,
2988
  0xFA02,0x24AB,0xFA03,0x24AE,0xFA04,0x24B1,0xFA05,0x24B4,0xFA06,0x24B7,0xFA07,0x24BA,0xFA08,0x24BD,0xFA09,0x24C0,0xFA0A,0x24C3,0xFA0B,0x24C6,0xFA0C,0x24C9,0xFA0D,0x24CC,0xFA10,0x24CF,0xFA12,0x24D2,0xFA15,0x24D5,0xFA16,0x24D8,
2989
  0xFA17,0x24DB,0xFA18,0x24DE,0xFA19,0x24E1,0xFA1A,0x24E4,0xFA1B,0x24E7,0xFA1C,0x24EA,0xFA1D,0x24ED,0xFA1E,0x24F0,0xFA20,0x24F3,0xFA22,0x24F6,0xFA25,0x24F9,0xFA26,0x24FC,0xFA2A,0x24FF,0xFA2B,0x2502,0xFA2C,0x2505,0xFA2D,0x2508,
2990
  0xFA2E,0x250B,0xFA2F,0x250E,0xFA30,0x2511,0xFA31,0x2514,0xFA32,0x2517,0xFA33,0x251A,0xFA34,0x251D,0xFA35,0x2520,0xFA36,0x2523,0xFA37,0x2526,0xFA38,0x2529,0xFA39,0x252C,0xFA3A,0x252F,0xFA3B,0x2532,0xFA3C,0x2535,0xFA3D,0x2538,
2991
  0xFA3E,0x253B,0xFA3F,0x253E,0xFA40,0x2541,0xFA41,0x2544,0xFA42,0x2547,0xFA43,0x254A,0xFA44,0x254D,0xFA45,0x2550,0xFA46,0x2553,0xFA47,0x2556,0xFA48,0x2559,0xFA49,0x255C,0xFA4A,0x255F,0xFA4B,0x2562,0xFA4C,0x2565,0xFA4D,0x2568,
2992
  0xFA4E,0x256B,0xFA4F,0x256E,0xFA50,0x2571,0xFA51,0x2574,0xFA52,0x2577,0xFA53,0x257A,0xFA54,0x257D,0xFA55,0x2580,0xFA56,0x2583,0xFA57,0x2586,0xFA58,0x2589,0xFA59,0x258C,0xFA5A,0x258F,0xFA5B,0x2592,0xFA5C,0x2595,0xFA5D,0x2598,
2993
  0xFA5E,0x259B,0xFA5F,0x259E,0xFA60,0x25A1,0xFA61,0x25A4,0xFA62,0x25A7,0xFA63,0x25AA,0xFA64,0x25AD,0xFA65,0x25B0,0xFA66,0x25B3,0xFA67,0x25B6,0xFA68,0x25B9,0xFA69,0x25BC,0xFA6A,0x25BF,0xFA6B,0x25C2,0xFA6C,0x25C5,0xFA6D,0x25C9,
2994
  0xFA70,0x25CC,0xFA71,0x25CF,0xFA72,0x25D2,0xFA73,0x25D5,0xFA74,0x25D8,0xFA75,0x25DB,0xFA76,0x25DE,0xFA77,0x25E1,0xFA78,0x25E4,0xFA79,0x25E7,0xFA7A,0x25EA,0xFA7B,0x25ED,0xFA7C,0x25F0,0xFA7D,0x25F3,0xFA7E,0x25F6,0xFA7F,0x25F9,
2995
  0xFA80,0x25FC,0xFA81,0x25FF,0xFA82,0x2602,0xFA83,0x2605,0xFA84,0x2608,0xFA85,0x260B,0xFA86,0x260E,0xFA87,0x2611,0xFA88,0x2614,0xFA89,0x2617,0xFA8A,0x261A,0xFA8B,0x261D,0xFA8C,0x2620,0xFA8D,0x2623,0xFA8E,0x2626,0xFA8F,0x2629,
2996
  0xFA90,0x262C,0xFA91,0x262F,0xFA92,0x2632,0xFA93,0x2635,0xFA94,0x2638,0xFA95,0x263B,0xFA96,0x263E,0xFA97,0x2641,0xFA98,0x2644,0xFA99,0x2647,0xFA9A,0x264A,0xFA9B,0x264D,0xFA9C,0x2650,0xFA9D,0x2653,0xFA9E,0x2656,0xFA9F,0x2659,
2997
  0xFAA0,0x265C,0xFAA1,0x265F,0xFAA2,0x2662,0xFAA3,0x2665,0xFAA4,0x2668,0xFAA5,0x266B,0xFAA6,0x266E,0xFAA7,0x2671,0xFAA8,0x2674,0xFAA9,0x2677,0xFAAA,0x267A,0xFAAB,0x267D,0xFAAC,0x2680,0xFAAD,0x2683,0xFAAE,0x2686,0xFAAF,0x2689,
2998
  0xFAB0,0x268C,0xFAB1,0x268F,0xFAB2,0x2692,0xFAB3,0x2695,0xFAB4,0x2698,0xFAB5,0x269B,0xFAB6,0x269E,0xFAB7,0x26A1,0xFAB8,0x26A4,0xFAB9,0x26A7,0xFABA,0x26AA,0xFABB,0x26AD,0xFABC,0x26B0,0xFABD,0x26B3,0xFABE,0x26B6,0xFABF,0x26B9,
2999
  0xFAC0,0x26BC,0xFAC1,0x26BF,0xFAC2,0x26C2,0xFAC3,0x26C5,0xFAC4,0x26C8,0xFAC5,0x26CB,0xFAC6,0x26CE,0xFAC7,0x26D1,0xFAC8,0x26D4,0xFAC9,0x26D7,0xFACA,0x26DA,0xFACB,0x26DD,0xFACC,0x26E0,0xFACD,0x26E3,0xFACE,0x26E6,0xFACF,0x26E9,
3000
  0xFAD0,0x26ED,0xFAD1,0x26F1,0xFAD2,0x26F5,0xFAD3,0x26F8,0xFAD4,0x26FB,0xFAD5,0x26FE,0xFAD6,0x2702,0xFAD7,0x2706,0xFAD8,0x270A,0xFAD9,0x270D,0xFB00,0xA710,0xFB01,0xA712,0xFB02,0xA714,0xFB03,0xA716,0xFB04,0xA719,0xFB05,0xA71C,
3001
  0xFB06,0xA71F,0xFB13,0xA721,0xFB14,0xA725,0xFB15,0xA729,0xFB16,0xA72D,0xFB17,0xA731,0xFB1D,0x2735,0xFB1F,0x2739,0xFB20,0xA73D,0xFB21,0xA73F,0xFB22,0xA741,0xFB23,0xA743,0xFB24,0xA745,0xFB25,0xA747,0xFB26,0xA749,0xFB27,0xA74B,
3002
  0xFB28,0xA74D,0xFB29,0xA74F,0xFB2A,0x2750,0xFB2B,0x2754,0xFB2C,0x2758,0xFB2D,0x275D,0xFB2E,0x2762,0xFB2F,0x2766,0xFB30,0x276A,0xFB31,0x276E,0xFB32,0x2772,0xFB33,0x2776,0xFB34,0x277A,0xFB35,0x277E,0xFB36,0x2782,0xFB38,0x2786,
3003
  0xFB39,0x278A,0xFB3A,0x278E,0xFB3B,0x2792,0xFB3C,0x2796,0xFB3E,0x279A,0xFB40,0x279E,0xFB41,0x27A2,0xFB43,0x27A6,0xFB44,0x27AA,0xFB46,0x27AE,0xFB47,0x27B2,0xFB48,0x27B6,0xFB49,0x27BA,0xFB4A,0x27BE,0xFB4B,0x27C2,0xFB4C,0x27C6,
3004
  0xFB4D,0x27CA,0xFB4E,0x27CE,0xFB4F,0xA7D2,0xFB50,0xA7D6,0xFB51,0xA7D8,0xFB52,0xA7DA,0xFB53,0xA7DC,0xFB54,0xA7DE,0xFB55,0xA7E0,0xFB56,0xA7E2,0xFB57,0xA7E4,0xFB58,0xA7E6,0xFB59,0xA7E8,0xFB5A,0xA7EA,0xFB5B,0xA7EC,0xFB5C,0xA7EE,
3005
  0xFB5D,0xA7F0,0xFB5E,0xA7F2,0xFB5F,0xA7F4,0xFB60,0xA7F6,0xFB61,0xA7F8,0xFB62,0xA7FA,0xFB63,0xA7FC,0xFB64,0xA7FE,0xFB65,0xA800,0xFB66,0xA802,0xFB67,0xA804,0xFB68,0xA806,0xFB69,0xA808,0xFB6A,0xA80A,0xFB6B,0xA80C,0xFB6C,0xA80E,
3006
  0xFB6D,0xA810,0xFB6E,0xA812,0xFB6F,0xA814,0xFB70,0xA816,0xFB71,0xA818,0xFB72,0xA81A,0xFB73,0xA81C,0xFB74,0xA81E,0xFB75,0xA820,0xFB76,0xA822,0xFB77,0xA824,0xFB78,0xA826,0xFB79,0xA828,0xFB7A,0xA82A,0xFB7B,0xA82C,0xFB7C,0xA82E,
3007
  0xFB7D,0xA830,0xFB7E,0xA832,0xFB7F,0xA834,0xFB80,0xA836,0xFB81,0xA838,0xFB82,0xA83A,0xFB83,0xA83C,0xFB84,0xA83E,0xFB85,0xA840,0xFB86,0xA842,0xFB87,0xA844,0xFB88,0xA846,0xFB89,0xA848,0xFB8A,0xA84A,0xFB8B,0xA84C,0xFB8C,0xA84E,
3008
  0xFB8D,0xA850,0xFB8E,0xA852,0xFB8F,0xA854,0xFB90,0xA856,0xFB91,0xA858,0xFB92,0xA85A,0xFB93,0xA85C,0xFB94,0xA85E,0xFB95,0xA860,0xFB96,0xA862,0xFB97,0xA864,0xFB98,0xA866,0xFB99,0xA868,0xFB9A,0xA86A,0xFB9B,0xA86C,0xFB9C,0xA86E,
3009
  0xFB9D,0xA870,0xFB9E,0xA872,0xFB9F,0xA874,0xFBA0,0xA876,0xFBA1,0xA878,0xFBA2,0xA87A,0xFBA3,0xA87C,0xFBA4,0xA87E,0xFBA5,0xA880,0xFBA6,0xA882,0xFBA7,0xA884,0xFBA8,0xA886,0xFBA9,0xA888,0xFBAA,0xA88A,0xFBAB,0xA88C,0xFBAC,0xA88E,
3010
  0xFBAD,0xA890,0xFBAE,0xA892,0xFBAF,0xA894,0xFBB0,0xA896,0xFBB1,0xA898,0xFBD3,0xA89A,0xFBD4,0xA89C,0xFBD5,0xA89E,0xFBD6,0xA8A0,0xFBD7,0xA8A2,0xFBD8,0xA8A4,0xFBD9,0xA8A6,0xFBDA,0xA8A8,0xFBDB,0xA8AA,0xFBDC,0xA8AC,0xFBDD,0xA8AE,
3011
  0xFBDE,0xA8B0,0xFBDF,0xA8B2,0xFBE0,0xA8B4,0xFBE1,0xA8B6,0xFBE2,0xA8B8,0xFBE3,0xA8BA,0xFBE4,0xA8BC,0xFBE5,0xA8BE,0xFBE6,0xA8C0,0xFBE7,0xA8C2,0xFBE8,0xA8C4,0xFBE9,0xA8C6,0xFBEA,0xA8C8,0xFBEB,0xA8CC,0xFBEC,0xA8D0,0xFBED,0xA8D4,
3012
  0xFBEE,0xA8D8,0xFBEF,0xA8DC,0xFBF0,0xA8E0,0xFBF1,0xA8E4,0xFBF2,0xA8E8,0xFBF3,0xA8EC,0xFBF4,0xA8F0,0xFBF5,0xA8F4,0xFBF6,0xA8F8,0xFBF7,0xA8FC,0xFBF8,0xA900,0xFBF9,0xA904,0xFBFA,0xA908,0xFBFB,0xA90C,0xFBFC,0xA910,0xFBFD,0xA912,
3013
  0xFBFE,0xA914,0xFBFF,0xA916,0xFC00,0xA918,0xFC01,0xA91C,0xFC02,0xA920,0xFC03,0xA924,0xFC04,0xA928,0xFC05,0xA92C,0xFC06,0xA930,0xFC07,0xA934,0xFC08,0xA938,0xFC09,0xA93C,0xFC0A,0xA940,0xFC0B,0xA944,0xFC0C,0xA948,0xFC0D,0xA94C,
3014
  0xFC0E,0xA950,0xFC0F,0xA954,0xFC10,0xA958,0xFC11,0xA95C,0xFC12,0xA960,0xFC13,0xA964,0xFC14,0xA968,0xFC15,0xA96C,0xFC16,0xA970,0xFC17,0xA974,0xFC18,0xA978,0xFC19,0xA97C,0xFC1A,0xA980,0xFC1B,0xA984,0xFC1C,0xA988,0xFC1D,0xA98C,
3015
  0xFC1E,0xA990,0xFC1F,0xA994,0xFC20,0xA998,0xFC21,0xA99C,0xFC22,0xA9A0,0xFC23,0xA9A4,0xFC24,0xA9A8,0xFC25,0xA9AC,0xFC26,0xA9B0,0xFC27,0xA9B4,0xFC28,0xA9B8,0xFC29,0xA9BC,0xFC2A,0xA9C0,0xFC2B,0xA9C4,0xFC2C,0xA9C8,0xFC2D,0xA9CC,
3016
  0xFC2E,0xA9D0,0xFC2F,0xA9D4,0xFC30,0xA9D8,0xFC31,0xA9DC,0xFC32,0xA9E0,0xFC33,0xA9E4,0xFC34,0xA9E8,0xFC35,0xA9EC,0xFC36,0xA9F0,0xFC37,0xA9F4,0xFC38,0xA9F8,0xFC39,0xA9FC,0xFC3A,0xAA00,0xFC3B,0xAA04,0xFC3C,0xAA08,0xFC3D,0xAA0C,
3017
  0xFC3E,0xAA10,0xFC3F,0xAA14,0xFC40,0xAA18,0xFC41,0xAA1C,0xFC42,0xAA20,0xFC43,0xAA24,0xFC44,0xAA28,0xFC45,0xAA2C,0xFC46,0xAA30,0xFC47,0xAA34,0xFC48,0xAA38,0xFC49,0xAA3C,0xFC4A,0xAA40,0xFC4B,0xAA44,0xFC4C,0xAA48,0xFC4D,0xAA4C,
3018
  0xFC4E,0xAA50,0xFC4F,0xAA54,0xFC50,0xAA58,0xFC51,0xAA5C,0xFC52,0xAA60,0xFC53,0xAA64,0xFC54,0xAA68,0xFC55,0xAA6C,0xFC56,0xAA70,0xFC57,0xAA74,0xFC58,0xAA78,0xFC59,0xAA7C,0xFC5A,0xAA80,0xFC5B,0xAA84,0xFC5C,0xAA88,0xFC5D,0xAA8C,
3019
  0xFC5E,0xAA90,0xFC5F,0xAA95,0xFC60,0xAA9A,0xFC61,0xAA9F,0xFC62,0xAAA4,0xFC63,0xAAA9,0xFC64,0xAAAE,0xFC65,0xAAB2,0xFC66,0xAAB6,0xFC67,0xAABA,0xFC68,0xAABE,0xFC69,0xAAC2,0xFC6A,0xAAC6,0xFC6B,0xAACA,0xFC6C,0xAACE,0xFC6D,0xAAD2,
3020
  0xFC6E,0xAAD6,0xFC6F,0xAADA,0xFC70,0xAADE,0xFC71,0xAAE2,0xFC72,0xAAE6,0xFC73,0xAAEA,0xFC74,0xAAEE,0xFC75,0xAAF2,0xFC76,0xAAF6,0xFC77,0xAAFA,0xFC78,0xAAFE,0xFC79,0xAB02,0xFC7A,0xAB06,0xFC7B,0xAB0A,0xFC7C,0xAB0E,0xFC7D,0xAB12,
3021
  0xFC7E,0xAB16,0xFC7F,0xAB1A,0xFC80,0xAB1E,0xFC81,0xAB22,0xFC82,0xAB26,0xFC83,0xAB2A,0xFC84,0xAB2E,0xFC85,0xAB32,0xFC86,0xAB36,0xFC87,0xAB3A,0xFC88,0xAB3E,0xFC89,0xAB42,0xFC8A,0xAB46,0xFC8B,0xAB4A,0xFC8C,0xAB4E,0xFC8D,0xAB52,
3022
  0xFC8E,0xAB56,0xFC8F,0xAB5A,0xFC90,0xAB5E,0xFC91,0xAB62,0xFC92,0xAB66,0xFC93,0xAB6A,0xFC94,0xAB6E,0xFC95,0xAB72,0xFC96,0xAB76,0xFC97,0xAB7A,0xFC98,0xAB7E,0xFC99,0xAB82,0xFC9A,0xAB86,0xFC9B,0xAB8A,0xFC9C,0xAB8E,0xFC9D,0xAB92,
3023
  0xFC9E,0xAB96,0xFC9F,0xAB9A,0xFCA0,0xAB9E,0xFCA1,0xABA2,0xFCA2,0xABA6,0xFCA3,0xABAA,0xFCA4,0xABAE,0xFCA5,0xABB2,0xFCA6,0xABB6,0xFCA7,0xABBA,0xFCA8,0xABBE,0xFCA9,0xABC2,0xFCAA,0xABC6,0xFCAB,0xABCA,0xFCAC,0xABCE,0xFCAD,0xABD2,
3024
  0xFCAE,0xABD6,0xFCAF,0xABDA,0xFCB0,0xABDE,0xFCB1,0xABE2,0xFCB2,0xABE6,0xFCB3,0xABEA,0xFCB4,0xABEE,0xFCB5,0xABF2,0xFCB6,0xABF6,0xFCB7,0xABFA,0xFCB8,0xABFE,0xFCB9,0xAC02,0xFCBA,0xAC06,0xFCBB,0xAC0A,0xFCBC,0xAC0E,0xFCBD,0xAC12,
3025
  0xFCBE,0xAC16,0xFCBF,0xAC1A,0xFCC0,0xAC1E,0xFCC1,0xAC22,0xFCC2,0xAC26,0xFCC3,0xAC2A,0xFCC4,0xAC2E,0xFCC5,0xAC32,0xFCC6,0xAC36,0xFCC7,0xAC3A,0xFCC8,0xAC3E,0xFCC9,0xAC42,0xFCCA,0xAC46,0xFCCB,0xAC4A,0xFCCC,0xAC4E,0xFCCD,0xAC52,
3026
  0xFCCE,0xAC56,0xFCCF,0xAC5A,0xFCD0,0xAC5E,0xFCD1,0xAC62,0xFCD2,0xAC66,0xFCD3,0xAC6A,0xFCD4,0xAC6E,0xFCD5,0xAC72,0xFCD6,0xAC76,0xFCD7,0xAC7A,0xFCD8,0xAC7E,0xFCD9,0xAC82,0xFCDA,0xAC86,0xFCDB,0xAC8A,0xFCDC,0xAC8E,0xFCDD,0xAC92,
3027
  0xFCDE,0xAC96,0xFCDF,0xAC9A,0xFCE0,0xAC9E,0xFCE1,0xACA2,0xFCE2,0xACA6,0xFCE3,0xACAA,0xFCE4,0xACAE,0xFCE5,0xACB2,0xFCE6,0xACB6,0xFCE7,0xACBA,0xFCE8,0xACBE,0xFCE9,0xACC2,0xFCEA,0xACC6,0xFCEB,0xACCA,0xFCEC,0xACCE,0xFCED,0xACD2,
3028
  0xFCEE,0xACD6,0xFCEF,0xACDA,0xFCF0,0xACDE,0xFCF1,0xACE2,0xFCF2,0xACE6,0xFCF3,0xACEC,0xFCF4,0xACF2,0xFCF5,0xACF8,0xFCF6,0xACFC,0xFCF7,0xAD00,0xFCF8,0xAD04,0xFCF9,0xAD08,0xFCFA,0xAD0C,0xFCFB,0xAD10,0xFCFC,0xAD14,0xFCFD,0xAD18,
3029
  0xFCFE,0xAD1C,0xFCFF,0xAD20,0xFD00,0xAD24,0xFD01,0xAD28,0xFD02,0xAD2C,0xFD03,0xAD30,0xFD04,0xAD34,0xFD05,0xAD38,0xFD06,0xAD3C,0xFD07,0xAD40,0xFD08,0xAD44,0xFD09,0xAD48,0xFD0A,0xAD4C,0xFD0B,0xAD50,0xFD0C,0xAD54,0xFD0D,0xAD58,
3030
  0xFD0E,0xAD5C,0xFD0F,0xAD60,0xFD10,0xAD64,0xFD11,0xAD68,0xFD12,0xAD6C,0xFD13,0xAD70,0xFD14,0xAD74,0xFD15,0xAD78,0xFD16,0xAD7C,0xFD17,0xAD80,0xFD18,0xAD84,0xFD19,0xAD88,0xFD1A,0xAD8C,0xFD1B,0xAD90,0xFD1C,0xAD94,0xFD1D,0xAD98,
3031
  0xFD1E,0xAD9C,0xFD1F,0xADA0,0xFD20,0xADA4,0xFD21,0xADA8,0xFD22,0xADAC,0xFD23,0xADB0,0xFD24,0xADB4,0xFD25,0xADB8,0xFD26,0xADBC,0xFD27,0xADC0,0xFD28,0xADC4,0xFD29,0xADC8,0xFD2A,0xADCC,0xFD2B,0xADD0,0xFD2C,0xADD4,0xFD2D,0xADD8,
3032
  0xFD2E,0xADDC,0xFD2F,0xADE0,0xFD30,0xADE4,0xFD31,0xADE8,0xFD32,0xADEC,0xFD33,0xADF0,0xFD34,0xADF4,0xFD35,0xADF8,0xFD36,0xADFC,0xFD37,0xAE00,0xFD38,0xAE04,0xFD39,0xAE08,0xFD3A,0xAE0C,0xFD3B,0xAE10,0xFD3C,0xAE14,0xFD3D,0xAE18,
3033
  0xFD50,0xAE1C,0xFD51,0xAE22,0xFD52,0xAE28,0xFD53,0xAE2E,0xFD54,0xAE34,0xFD55,0xAE3A,0xFD56,0xAE40,0xFD57,0xAE46,0xFD58,0xAE4C,0xFD59,0xAE52,0xFD5A,0xAE58,0xFD5B,0xAE5E,0xFD5C,0xAE64,0xFD5D,0xAE6A,0xFD5E,0xAE70,0xFD5F,0xAE76,
3034
  0xFD60,0xAE7C,0xFD61,0xAE82,0xFD62,0xAE88,0xFD63,0xAE8E,0xFD64,0xAE94,0xFD65,0xAE9A,0xFD66,0xAEA0,0xFD67,0xAEA6,0xFD68,0xAEAC,0xFD69,0xAEB2,0xFD6A,0xAEB8,0xFD6B,0xAEBE,0xFD6C,0xAEC4,0xFD6D,0xAECA,0xFD6E,0xAED0,0xFD6F,0xAED6,
3035
  0xFD70,0xAEDC,0xFD71,0xAEE2,0xFD72,0xAEE8,0xFD73,0xAEEE,0xFD74,0xAEF4,0xFD75,0xAEFA,0xFD76,0xAF00,0xFD77,0xAF06,0xFD78,0xAF0C,0xFD79,0xAF12,0xFD7A,0xAF18,0xFD7B,0xAF1E,0xFD7C,0xAF24,0xFD7D,0xAF2A,0xFD7E,0xAF30,0xFD7F,0xAF36,
3036
  0xFD80,0xAF3C,0xFD81,0xAF42,0xFD82,0xAF48,0xFD83,0xAF4E,0xFD84,0xAF54,0xFD85,0xAF5A,0xFD86,0xAF60,0xFD87,0xAF66,0xFD88,0xAF6C,0xFD89,0xAF72,0xFD8A,0xAF78,0xFD8B,0xAF7E,0xFD8C,0xAF84,0xFD8D,0xAF8A,0xFD8E,0xAF90,0xFD8F,0xAF96,
3037
  0xFD92,0xAF9C,0xFD93,0xAFA2,0xFD94,0xAFA8,0xFD95,0xAFAE,0xFD96,0xAFB4,0xFD97,0xAFBA,0xFD98,0xAFC0,0xFD99,0xAFC6,0xFD9A,0xAFCC,0xFD9B,0xAFD2,0xFD9C,0xAFD8,0xFD9D,0xAFDE,0xFD9E,0xAFE4,0xFD9F,0xAFEA,0xFDA0,0xAFF0,0xFDA1,0xAFF6,
3038
  0xFDA2,0xAFFC,0xFDA3,0xB002,0xFDA4,0xB008,0xFDA5,0xB00E,0xFDA6,0xB014,0xFDA7,0xB01A,0xFDA8,0xB020,0xFDA9,0xB026,0xFDAA,0xB02C,0xFDAB,0xB032,0xFDAC,0xB038,0xFDAD,0xB03E,0xFDAE,0xB044,0xFDAF,0xB04A,0xFDB0,0xB050,0xFDB1,0xB056,
3039
  0xFDB2,0xB05C,0xFDB3,0xB062,0xFDB4,0xB068,0xFDB5,0xB06E,0xFDB6,0xB074,0xFDB7,0xB07A,0xFDB8,0xB080,0xFDB9,0xB086,0xFDBA,0xB08C,0xFDBB,0xB092,0xFDBC,0xB098,0xFDBD,0xB09E,0xFDBE,0xB0A4,0xFDBF,0xB0AA,0xFDC0,0xB0B0,0xFDC1,0xB0B6,
3040
  0xFDC2,0xB0BC,0xFDC3,0xB0C2,0xFDC4,0xB0C8,0xFDC5,0xB0CE,0xFDC6,0xB0D4,0xFDC7,0xB0DA,0xFDF0,0xB0E0,0xFDF1,0xB0E6,0xFDF2,0xB0EC,0xFDF3,0xB0F4,0xFDF4,0xB0FC,0xFDF5,0xB104,0xFDF6,0xB10C,0xFDF7,0xB114,0xFDF8,0xB11C,0xFDF9,0xB124,
3041
  0xFDFA,0xB12A,0xFDFB,0xB14B,0xFDFC,0xB15A,0xFE10,0xB162,0xFE11,0xB163,0xFE12,0xB166,0xFE13,0xB169,0xFE14,0xB16A,0xFE15,0xB16B,0xFE16,0xB16C,0xFE17,0xB16D,0xFE18,0xB170,0xFE19,0xB173,0xFE30,0xB176,0xFE31,0xB179,0xFE32,0xB17C,
3042
  0xFE33,0xB17F,0xFE34,0xB180,0xFE35,0xB181,0xFE36,0xB182,0xFE37,0xB183,0xFE38,0xB184,0xFE39,0xB185,0xFE3A,0xB188,0xFE3B,0xB18B,0xFE3C,0xB18E,0xFE3D,0xB191,0xFE3E,0xB194,0xFE3F,0xB197,0xFE40,0xB19A,0xFE41,0xB19D,0xFE42,0xB1A0,
3043
  0xFE43,0xB1A3,0xFE44,0xB1A6,0xFE47,0xB1A9,0xFE48,0xB1AA,0xFE49,0xB1AB,0xFE4A,0xB1AE,0xFE4B,0xB1B1,0xFE4C,0xB1B4,0xFE4D,0xB1B7,0xFE4E,0xB1B8,0xFE4F,0xB1B9,0xFE50,0xB1BA,0xFE51,0xB1BB,0xFE52,0xB1BE,0xFE54,0xB1BF,0xFE55,0xB1C0,
3044
  0xFE56,0xB1C1,0xFE57,0xB1C2,0xFE58,0xB1C3,0xFE59,0xB1C6,0xFE5A,0xB1C7,0xFE5B,0xB1C8,0xFE5C,0xB1C9,0xFE5D,0xB1CA,0xFE5E,0xB1CD,0xFE5F,0xB1D0,0xFE60,0xB1D1,0xFE61,0xB1D2,0xFE62,0xB1D3,0xFE63,0xB1D4,0xFE64,0xB1D5,0xFE65,0xB1D6,
3045
  0xFE66,0xB1D7,0xFE68,0xB1D8,0xFE69,0xB1D9,0xFE6A,0xB1DA,0xFE6B,0xB1DB,0xFE70,0xB1DC,0xFE71,0xB1DF,0xFE72,0xB1E3,0xFE74,0xB1E6,0xFE76,0xB1E9,0xFE77,0xB1EC,0xFE78,0xB1F0,0xFE79,0xB1F3,0xFE7A,0xB1F7,0xFE7B,0xB1FA,0xFE7C,0xB1FE,
3046
  0xFE7D,0xB201,0xFE7E,0xB205,0xFE7F,0xB208,0xFE80,0xB20C,0xFE81,0xB20E,0xFE82,0xB210,0xFE83,0xB212,0xFE84,0xB214,0xFE85,0xB216,0xFE86,0xB218,0xFE87,0xB21A,0xFE88,0xB21C,0xFE89,0xB21E,0xFE8A,0xB220,0xFE8B,0xB222,0xFE8C,0xB224,
3047
  0xFE8D,0xB226,0xFE8E,0xB228,0xFE8F,0xB22A,0xFE90,0xB22C,0xFE91,0xB22E,0xFE92,0xB230,0xFE93,0xB232,0xFE94,0xB234,0xFE95,0xB236,0xFE96,0xB238,0xFE97,0xB23A,0xFE98,0xB23C,0xFE99,0xB23E,0xFE9A,0xB240,0xFE9B,0xB242,0xFE9C,0xB244,
3048
  0xFE9D,0xB246,0xFE9E,0xB248,0xFE9F,0xB24A,0xFEA0,0xB24C,0xFEA1,0xB24E,0xFEA2,0xB250,0xFEA3,0xB252,0xFEA4,0xB254,0xFEA5,0xB256,0xFEA6,0xB258,0xFEA7,0xB25A,0xFEA8,0xB25C,0xFEA9,0xB25E,0xFEAA,0xB260,0xFEAB,0xB262,0xFEAC,0xB264,
3049
  0xFEAD,0xB266,0xFEAE,0xB268,0xFEAF,0xB26A,0xFEB0,0xB26C,0xFEB1,0xB26E,0xFEB2,0xB270,0xFEB3,0xB272,0xFEB4,0xB274,0xFEB5,0xB276,0xFEB6,0xB278,0xFEB7,0xB27A,0xFEB8,0xB27C,0xFEB9,0xB27E,0xFEBA,0xB280,0xFEBB,0xB282,0xFEBC,0xB284,
3050
  0xFEBD,0xB286,0xFEBE,0xB288,0xFEBF,0xB28A,0xFEC0,0xB28C,0xFEC1,0xB28E,0xFEC2,0xB290,0xFEC3,0xB292,0xFEC4,0xB294,0xFEC5,0xB296,0xFEC6,0xB298,0xFEC7,0xB29A,0xFEC8,0xB29C,0xFEC9,0xB29E,0xFECA,0xB2A0,0xFECB,0xB2A2,0xFECC,0xB2A4,
3051
  0xFECD,0xB2A6,0xFECE,0xB2A8,0xFECF,0xB2AA,0xFED0,0xB2AC,0xFED1,0xB2AE,0xFED2,0xB2B0,0xFED3,0xB2B2,0xFED4,0xB2B4,0xFED5,0xB2B6,0xFED6,0xB2B8,0xFED7,0xB2BA,0xFED8,0xB2BC,0xFED9,0xB2BE,0xFEDA,0xB2C0,0xFEDB,0xB2C2,0xFEDC,0xB2C4,
3052
  0xFEDD,0xB2C6,0xFEDE,0xB2C8,0xFEDF,0xB2CA,0xFEE0,0xB2CC,0xFEE1,0xB2CE,0xFEE2,0xB2D0,0xFEE3,0xB2D2,0xFEE4,0xB2D4,0xFEE5,0xB2D6,0xFEE6,0xB2D8,0xFEE7,0xB2DA,0xFEE8,0xB2DC,0xFEE9,0xB2DE,0xFEEA,0xB2E0,0xFEEB,0xB2E2,0xFEEC,0xB2E4,
3053
  0xFEED,0xB2E6,0xFEEE,0xB2E8,0xFEEF,0xB2EA,0xFEF0,0xB2EC,0xFEF1,0xB2EE,0xFEF2,0xB2F0,0xFEF3,0xB2F2,0xFEF4,0xB2F4,0xFEF5,0xB2F6,0xFEF6,0xB2FA,0xFEF7,0xB2FE,0xFEF8,0xB302,0xFEF9,0xB306,0xFEFA,0xB30A,0xFEFB,0xB30E,0xFEFC,0xB312,
3054
  0xFF01,0xB316,0xFF02,0xB317,0xFF03,0xB318,0xFF04,0xB319,0xFF05,0xB31A,0xFF06,0xB31B,0xFF07,0xB31C,0xFF08,0xB31D,0xFF09,0xB31E,0xFF0A,0xB31F,0xFF0B,0xB320,0xFF0C,0xB321,0xFF0D,0xB322,0xFF0E,0xB323,0xFF0F,0xB324,0xFF10,0xB325,
3055
  0xFF11,0xB326,0xFF12,0xB327,0xFF13,0xB328,0xFF14,0xB329,0xFF15,0xB32A,0xFF16,0xB32B,0xFF17,0xB32C,0xFF18,0xB32D,0xFF19,0xB32E,0xFF1A,0xB32F,0xFF1B,0xB330,0xFF1C,0xB331,0xFF1D,0xB332,0xFF1E,0xB333,0xFF1F,0xB334,0xFF20,0xB335,
3056
  0xFF21,0xB336,0xFF22,0xB337,0xFF23,0xB338,0xFF24,0xB339,0xFF25,0xB33A,0xFF26,0xB33B,0xFF27,0xB33C,0xFF28,0xB33D,0xFF29,0xB33E,0xFF2A,0xB33F,0xFF2B,0xB340,0xFF2C,0xB341,0xFF2D,0xB342,0xFF2E,0xB343,0xFF2F,0xB344,0xFF30,0xB345,
3057
  0xFF31,0xB346,0xFF32,0xB347,0xFF33,0xB348,0xFF34,0xB349,0xFF35,0xB34A,0xFF36,0xB34B,0xFF37,0xB34C,0xFF38,0xB34D,0xFF39,0xB34E,0xFF3A,0xB34F,0xFF3B,0xB350,0xFF3C,0xB351,0xFF3D,0xB352,0xFF3E,0xB353,0xFF3F,0xB354,0xFF40,0xB355,
3058
  0xFF41,0xB356,0xFF42,0xB357,0xFF43,0xB358,0xFF44,0xB359,0xFF45,0xB35A,0xFF46,0xB35B,0xFF47,0xB35C,0xFF48,0xB35D,0xFF49,0xB35E,0xFF4A,0xB35F,0xFF4B,0xB360,0xFF4C,0xB361,0xFF4D,0xB362,0xFF4E,0xB363,0xFF4F,0xB364,0xFF50,0xB365,
3059
  0xFF51,0xB366,0xFF52,0xB367,0xFF53,0xB368,0xFF54,0xB369,0xFF55,0xB36A,0xFF56,0xB36B,0xFF57,0xB36C,0xFF58,0xB36D,0xFF59,0xB36E,0xFF5A,0xB36F,0xFF5B,0xB370,0xFF5C,0xB371,0xFF5D,0xB372,0xFF5E,0xB373,0xFF5F,0xB374,0xFF60,0xB377,
3060
  0xFF61,0xB37A,0xFF62,0xB37D,0xFF63,0xB380,0xFF64,0xB383,0xFF65,0xB386,0xFF66,0xB389,0xFF67,0xB38C,0xFF68,0xB38F,0xFF69,0xB392,0xFF6A,0xB395,0xFF6B,0xB398,0xFF6C,0xB39B,0xFF6D,0xB39E,0xFF6E,0xB3A1,0xFF6F,0xB3A4,0xFF70,0xB3A7,
3061
  0xFF71,0xB3AA,0xFF72,0xB3AD,0xFF73,0xB3B0,0xFF74,0xB3B3,0xFF75,0xB3B6,0xFF76,0xB3B9,0xFF77,0xB3BC,0xFF78,0xB3BF,0xFF79,0xB3C2,0xFF7A,0xB3C5,0xFF7B,0xB3C8,0xFF7C,0xB3CB,0xFF7D,0xB3CE,0xFF7E,0xB3D1,0xFF7F,0xB3D4,0xFF80,0xB3D7,
3062
  0xFF81,0xB3DA,0xFF82,0xB3DD,0xFF83,0xB3E0,0xFF84,0xB3E3,0xFF85,0xB3E6,0xFF86,0xB3E9,0xFF87,0xB3EC,0xFF88,0xB3EF,0xFF89,0xB3F2,0xFF8A,0xB3F5,0xFF8B,0xB3F8,0xFF8C,0xB3FB,0xFF8D,0xB3FE,0xFF8E,0xB401,0xFF8F,0xB404,0xFF90,0xB407,
3063
  0xFF91,0xB40A,0xFF92,0xB40D,0xFF93,0xB410,0xFF94,0xB413,0xFF95,0xB416,0xFF96,0xB419,0xFF97,0xB41C,0xFF98,0xB41F,0xFF99,0xB422,0xFF9A,0xB425,0xFF9B,0xB428,0xFF9C,0xB42B,0xFF9D,0xB42E,0xFF9E,0xB431,0xFF9F,0xB434,0xFFA0,0xB437,
3064
  0xFFA1,0xB43A,0xFFA2,0xB43D,0xFFA3,0xB440,0xFFA4,0xB443,0xFFA5,0xB446,0xFFA6,0xB449,0xFFA7,0xB44C,0xFFA8,0xB44F,0xFFA9,0xB452,0xFFAA,0xB455,0xFFAB,0xB458,0xFFAC,0xB45B,0xFFAD,0xB45E,0xFFAE,0xB461,0xFFAF,0xB464,0xFFB0,0xB467,
3065
  0xFFB1,0xB46A,0xFFB2,0xB46D,0xFFB3,0xB470,0xFFB4,0xB473,0xFFB5,0xB476,0xFFB6,0xB479,0xFFB7,0xB47C,0xFFB8,0xB47F,0xFFB9,0xB482,0xFFBA,0xB485,0xFFBB,0xB488,0xFFBC,0xB48B,0xFFBD,0xB48E,0xFFBE,0xB491,0xFFC2,0xB494,0xFFC3,0xB497,
3066
  0xFFC4,0xB49A,0xFFC5,0xB49D,0xFFC6,0xB4A0,0xFFC7,0xB4A3,0xFFCA,0xB4A6,0xFFCB,0xB4A9,0xFFCC,0xB4AC,0xFFCD,0xB4AF,0xFFCE,0xB4B2,0xFFCF,0xB4B5,0xFFD2,0xB4B8,0xFFD3,0xB4BB,0xFFD4,0xB4BE,0xFFD5,0xB4C1,0xFFD6,0xB4C4,0xFFD7,0xB4C7,
3067
  0xFFDA,0xB4CA,0xFFDB,0xB4CD,0xFFDC,0xB4D0,0xFFE0,0xB4D3,0xFFE1,0xB4D5,0xFFE2,0xB4D7,0xFFE3,0xB4D9,0xFFE4,0xB4DB,0xFFE5,0xB4DD,0xFFE6,0xB4DF,0xFFE8,0xB4E2,0xFFE9,0xB4E5,0xFFEA,0xB4E8,0xFFEB,0xB4EB,0xFFEC,0xB4EE,0xFFED,0xB4F1,
3068
  0xFFEE,0xB4F4,0xFFFF,0x34F7,
3069
};
3070
#define mxDecompositionSize1 2640
3071
const txU1 gxDecompositionData1[mxDecompositionSize1] ICACHE_XS6RO_ATTR = {
3072
  0xf0,0x90,0x97,0x92,0xcc,0x87,0xf0,0x90,0x97,0x9a,0xcc,0x87,0xcb,0x90,0xcb,0x91,0xc3,0xa6,0xca,0x99,0xc9,0x93,0xca,0xa3,0xea,0xad,0xa6,0xca,0xa5,0xca,0xa4,0xc9,
3073
  0x96,0xc9,0x97,0xe1,0xb6,0x91,0xc9,0x98,0xc9,0x9e,0xca,0xa9,0xc9,0xa4,0xc9,0xa2,0xc9,0xa0,0xca,0x9b,0xc4,0xa7,0xca,0x9c,0xc9,0xa7,0xca,0x84,0xca,0xaa,0xca,0xab,
3074
  0xc9,0xac,0xf0,0x9d,0xbc,0x84,0xea,0x9e,0x8e,0xc9,0xae,0xf0,0x9d,0xbc,0x85,0xca,0x8e,0xf0,0x9d,0xbc,0x86,0xc3,0xb8,0xc9,0xb6,0xc9,0xb7,0x71,0xc9,0xba,0xf0,0x9d,
3075
  0xbc,0x88,0xc9,0xbd,0xc9,0xbe,0xca,0x80,0xca,0xa8,0xca,0xa6,0xea,0xad,0xa7,0xca,0xa7,0xca,0x88,0xe2,0xb1,0xb1,0xca,0x8f,0xca,0xa1,0xca,0xa2,0xca,0x98,0xc7,0x80,
3076
  0xc7,0x81,0xc7,0x82,0xf0,0x9d,0xbc,0x8a,0xf0,0x9d,0xbc,0x9e,0xf0,0x91,0x82,0x99,0xf0,0x91,0x82,0xba,0xf0,0x91,0x82,0x9b,0xf0,0x91,0x82,0xba,0xf0,0x91,0x82,0xa5,
3077
  0xf0,0x91,0x82,0xba,0xf0,0x91,0x84,0xb1,0xf0,0x91,0x84,0xa7,0xf0,0x91,0x84,0xb2,0xf0,0x91,0x84,0xa7,0xf0,0x91,0x8d,0x87,0xf0,0x91,0x8c,0xbe,0xf0,0x91,0x8d,0x87,
3078
  0xf0,0x91,0x8d,0x97,0xf0,0x91,0x8e,0x82,0xf0,0x91,0x8f,0x89,0xf0,0x91,0x8e,0x84,0xf0,0x91,0x8e,0xbb,0xf0,0x91,0x8e,0x8b,0xf0,0x91,0x8f,0x82,0xf0,0x91,0x8e,0x90,
3079
  0xf0,0x91,0x8f,0x89,0xf0,0x91,0x8f,0x82,0xf0,0x91,0x8f,0x82,0xf0,0x91,0x8f,0x82,0xf0,0x91,0x8e,0xb8,0xf0,0x91,0x8f,0x82,0xf0,0x91,0x8f,0x89,0xf0,0x91,0x92,0xb9,
3080
  0xf0,0x91,0x92,0xba,0xf0,0x91,0x92,0xb9,0xf0,0x91,0x92,0xb0,0xf0,0x91,0x92,0xb9,0xf0,0x91,0x92,0xbd,0xf0,0x91,0x96,0xb8,0xf0,0x91,0x96,0xaf,0xf0,0x91,0x96,0xb9,
3081
  0xf0,0x91,0x96,0xaf,0xf0,0x91,0xa4,0xb5,0xf0,0x91,0xa4,0xb0,0xf0,0x96,0x84,0x9e,0xf0,0x96,0x84,0x9e,0xf0,0x96,0x84,0x9e,0xf0,0x96,0x84,0xa9,0xf0,0x96,0x84,0x9e,
3082
  0xf0,0x96,0x84,0x9f,0xf0,0x96,0x84,0xa9,0xf0,0x96,0x84,0x9f,0xf0,0x96,0x84,0x9e,0xf0,0x96,0x84,0xa0,0xf0,0x96,0x84,0xa1,0xf0,0x96,0x84,0x9f,0xf0,0x96,0x84,0xa2,
3083
  0xf0,0x96,0x84,0x9f,0xf0,0x96,0x84,0xa1,0xf0,0x96,0x84,0xa0,0xf0,0x96,0xb5,0xa7,0xf0,0x96,0xb5,0xa7,0xf0,0x96,0xb5,0xa3,0xf0,0x96,0xb5,0xa7,0xf0,0x96,0xb5,0xa9,
3084
  0xf0,0x96,0xb5,0xa7,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x30,0x31,
3085
  0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0xf0,0x9d,0x85,0x97,0xf0,0x9d,0x85,0xa5,0xf0,0x9d,0x85,0x98,0xf0,0x9d,0x85,0xa5,0xf0,0x9d,0x85,0x9f,0xf0,0x9d,0x85,0xae,
3086
  0xf0,0x9d,0x85,0x9f,0xf0,0x9d,0x85,0xaf,0xf0,0x9d,0x85,0x9f,0xf0,0x9d,0x85,0xb0,0xf0,0x9d,0x85,0x9f,0xf0,0x9d,0x85,0xb1,0xf0,0x9d,0x85,0x9f,0xf0,0x9d,0x85,0xb2,
3087
  0xf0,0x9d,0x86,0xb9,0xf0,0x9d,0x85,0xa5,0xf0,0x9d,0x86,0xba,0xf0,0x9d,0x85,0xa5,0xf0,0x9d,0x86,0xbb,0xf0,0x9d,0x85,0xae,0xf0,0x9d,0x86,0xbc,0xf0,0x9d,0x85,0xae,
3088
  0xf0,0x9d,0x86,0xbb,0xf0,0x9d,0x85,0xaf,0xf0,0x9d,0x86,0xbc,0xf0,0x9d,0x85,0xaf,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,
3089
  0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,
3090
  0x77,0x78,0x79,0x7a,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,
3091
  0x63,0x64,0x65,0x66,0x67,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,
3092
  0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,
3093
  0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x41,0x43,0x44,0x47,0x4a,0x4b,0x4e,0x4f,0x50,0x51,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,
3094
  0x64,0x66,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,
3095
  0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,
3096
  0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x41,0x42,0x44,0x45,0x46,0x47,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x61,0x62,0x63,
3097
  0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x41,0x42,0x44,0x45,0x46,0x47,0x49,0x4a,0x4b,
3098
  0x4c,0x4d,0x4f,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,
3099
  0x77,0x78,0x79,0x7a,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,
3100
  0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,
3101
  0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,
3102
  0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,
3103
  0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,
3104
  0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,
3105
  0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,
3106
  0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,
3107
  0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,
3108
  0x59,0x5a,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0xc4,0xb1,0xc8,0xb7,
3109
  0xce,0x91,0xce,0x92,0xce,0x93,0xce,0x94,0xce,0x95,0xce,0x96,0xce,0x97,0xce,0x98,0xce,0x99,0xce,0x9a,0xce,0x9b,0xce,0x9c,0xce,0x9d,0xce,0x9e,0xce,0x9f,0xce,0xa0,
3110
  0xce,0xa1,0xcf,0xb4,0xce,0xa3,0xce,0xa4,0xce,0xa5,0xce,0xa6,0xce,0xa7,0xce,0xa8,0xce,0xa9,0xe2,0x88,0x87,0xce,0xb1,0xce,0xb2,0xce,0xb3,0xce,0xb4,0xce,0xb5,0xce,
3111
  0xb6,0xce,0xb7,0xce,0xb8,0xce,0xb9,0xce,0xba,0xce,0xbb,0xce,0xbc,0xce,0xbd,0xce,0xbe,0xce,0xbf,0xcf,0x80,0xcf,0x81,0xcf,0x82,0xcf,0x83,0xcf,0x84,0xcf,0x85,0xcf,
3112
  0x86,0xcf,0x87,0xcf,0x88,0xcf,0x89,0xe2,0x88,0x82,0xcf,0xb5,0xcf,0x91,0xcf,0xb0,0xcf,0x95,0xcf,0xb1,0xcf,0x96,0xce,0x91,0xce,0x92,0xce,0x93,0xce,0x94,0xce,0x95,
3113
  0xce,0x96,0xce,0x97,0xce,0x98,0xce,0x99,0xce,0x9a,0xce,0x9b,0xce,0x9c,0xce,0x9d,0xce,0x9e,0xce,0x9f,0xce,0xa0,0xce,0xa1,0xcf,0xb4,0xce,0xa3,0xce,0xa4,0xce,0xa5,
3114
  0xce,0xa6,0xce,0xa7,0xce,0xa8,0xce,0xa9,0xe2,0x88,0x87,0xce,0xb1,0xce,0xb2,0xce,0xb3,0xce,0xb4,0xce,0xb5,0xce,0xb6,0xce,0xb7,0xce,0xb8,0xce,0xb9,0xce,0xba,0xce,
3115
  0xbb,0xce,0xbc,0xce,0xbd,0xce,0xbe,0xce,0xbf,0xcf,0x80,0xcf,0x81,0xcf,0x82,0xcf,0x83,0xcf,0x84,0xcf,0x85,0xcf,0x86,0xcf,0x87,0xcf,0x88,0xcf,0x89,0xe2,0x88,0x82,
3116
  0xcf,0xb5,0xcf,0x91,0xcf,0xb0,0xcf,0x95,0xcf,0xb1,0xcf,0x96,0xce,0x91,0xce,0x92,0xce,0x93,0xce,0x94,0xce,0x95,0xce,0x96,0xce,0x97,0xce,0x98,0xce,0x99,0xce,0x9a,
3117
  0xce,0x9b,0xce,0x9c,0xce,0x9d,0xce,0x9e,0xce,0x9f,0xce,0xa0,0xce,0xa1,0xcf,0xb4,0xce,0xa3,0xce,0xa4,0xce,0xa5,0xce,0xa6,0xce,0xa7,0xce,0xa8,0xce,0xa9,0xe2,0x88,
3118
  0x87,0xce,0xb1,0xce,0xb2,0xce,0xb3,0xce,0xb4,0xce,0xb5,0xce,0xb6,0xce,0xb7,0xce,0xb8,0xce,0xb9,0xce,0xba,0xce,0xbb,0xce,0xbc,0xce,0xbd,0xce,0xbe,0xce,0xbf,0xcf,
3119
  0x80,0xcf,0x81,0xcf,0x82,0xcf,0x83,0xcf,0x84,0xcf,0x85,0xcf,0x86,0xcf,0x87,0xcf,0x88,0xcf,0x89,0xe2,0x88,0x82,0xcf,0xb5,0xcf,0x91,0xcf,0xb0,0xcf,0x95,0xcf,0xb1,
3120
  0xcf,0x96,0xce,0x91,0xce,0x92,0xce,0x93,0xce,0x94,0xce,0x95,0xce,0x96,0xce,0x97,0xce,0x98,0xce,0x99,0xce,0x9a,0xce,0x9b,0xce,0x9c,0xce,0x9d,0xce,0x9e,0xce,0x9f,
3121
  0xce,0xa0,0xce,0xa1,0xcf,0xb4,0xce,0xa3,0xce,0xa4,0xce,0xa5,0xce,0xa6,0xce,0xa7,0xce,0xa8,0xce,0xa9,0xe2,0x88,0x87,0xce,0xb1,0xce,0xb2,0xce,0xb3,0xce,0xb4,0xce,
3122
  0xb5,0xce,0xb6,0xce,0xb7,0xce,0xb8,0xce,0xb9,0xce,0xba,0xce,0xbb,0xce,0xbc,0xce,0xbd,0xce,0xbe,0xce,0xbf,0xcf,0x80,0xcf,0x81,0xcf,0x82,0xcf,0x83,0xcf,0x84,0xcf,
3123
  0x85,0xcf,0x86,0xcf,0x87,0xcf,0x88,0xcf,0x89,0xe2,0x88,0x82,0xcf,0xb5,0xcf,0x91,0xcf,0xb0,0xcf,0x95,0xcf,0xb1,0xcf,0x96,0xce,0x91,0xce,0x92,0xce,0x93,0xce,0x94,
3124
  0xce,0x95,0xce,0x96,0xce,0x97,0xce,0x98,0xce,0x99,0xce,0x9a,0xce,0x9b,0xce,0x9c,0xce,0x9d,0xce,0x9e,0xce,0x9f,0xce,0xa0,0xce,0xa1,0xcf,0xb4,0xce,0xa3,0xce,0xa4,
3125
  0xce,0xa5,0xce,0xa6,0xce,0xa7,0xce,0xa8,0xce,0xa9,0xe2,0x88,0x87,0xce,0xb1,0xce,0xb2,0xce,0xb3,0xce,0xb4,0xce,0xb5,0xce,0xb6,0xce,0xb7,0xce,0xb8,0xce,0xb9,0xce,
3126
  0xba,0xce,0xbb,0xce,0xbc,0xce,0xbd,0xce,0xbe,0xce,0xbf,0xcf,0x80,0xcf,0x81,0xcf,0x82,0xcf,0x83,0xcf,0x84,0xcf,0x85,0xcf,0x86,0xcf,0x87,0xcf,0x88,0xcf,0x89,0xe2,
3127
  0x88,0x82,0xcf,0xb5,0xcf,0x91,0xcf,0xb0,0xcf,0x95,0xcf,0xb1,0xcf,0x96,0xcf,0x9c,0xcf,0x9d,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x30,0x31,0x32,0x33,
3128
  0x34,0x35,0x36,0x37,0x38,0x39,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x30,0x31,0x32,0x33,0x34,0x35,
3129
  0x36,0x37,0x38,0x39,0xd0,0xb0,0xd0,0xb1,0xd0,0xb2,0xd0,0xb3,0xd0,0xb4,0xd0,0xb5,0xd0,0xb6,0xd0,0xb7,0xd0,0xb8,0xd0,0xba,0xd0,0xbb,0xd0,0xbc,0xd0,0xbe,0xd0,0xbf,
3130
  0xd1,0x80,0xd1,0x81,0xd1,0x82,0xd1,0x83,0xd1,0x84,0xd1,0x85,0xd1,0x86,0xd1,0x87,0xd1,0x88,0xd1,0x8b,0xd1,0x8d,0xd1,0x8e,0xea,0x9a,0x89,0xd3,0x99,0xd1,0x96,0xd1,
3131
  0x98,0xd3,0xa9,0xd2,0xaf,0xd3,0x8f,0xd0,0xb0,0xd0,0xb1,0xd0,0xb2,0xd0,0xb3,0xd0,0xb4,0xd0,0xb5,0xd0,0xb6,0xd0,0xb7,0xd0,0xb8,0xd0,0xba,0xd0,0xbb,0xd0,0xbe,0xd0,
3132
  0xbf,0xd1,0x81,0xd1,0x83,0xd1,0x84,0xd1,0x85,0xd1,0x86,0xd1,0x87,0xd1,0x88,0xd1,0x8a,0xd1,0x8b,0xd2,0x91,0xd1,0x96,0xd1,0x95,0xd1,0x9f,0xd2,0xab,0xea,0x99,0x91,
3133
  0xd2,0xb1,0xd8,0xa7,0xd8,0xa8,0xd8,0xac,0xd8,0xaf,0xd9,0x88,0xd8,0xb2,0xd8,0xad,0xd8,0xb7,0xd9,0x8a,0xd9,0x83,0xd9,0x84,0xd9,0x85,0xd9,0x86,0xd8,0xb3,0xd8,0xb9,
3134
  0xd9,0x81,0xd8,0xb5,0xd9,0x82,0xd8,0xb1,0xd8,0xb4,0xd8,0xaa,0xd8,0xab,0xd8,0xae,0xd8,0xb0,0xd8,0xb6,0xd8,0xb8,0xd8,0xba,0xd9,0xae,0xda,0xba,0xda,0xa1,0xd9,0xaf,
3135
  0xd8,0xa8,0xd8,0xac,0xd9,0x87,0xd8,0xad,0xd9,0x8a,0xd9,0x83,0xd9,0x84,0xd9,0x85,0xd9,0x86,0xd8,0xb3,0xd8,0xb9,0xd9,0x81,0xd8,0xb5,0xd9,0x82,0xd8,0xb4,0xd8,0xaa,
3136
  0xd8,0xab,0xd8,0xae,0xd8,0xb6,0xd8,0xba,0xd8,0xac,0xd8,0xad,0xd9,0x8a,0xd9,0x84,0xd9,0x86,0xd8,0xb3,0xd8,0xb9,0xd8,0xb5,0xd9,0x82,0xd8,0xb4,0xd8,0xae,0xd8,0xb6,
3137
  0xd8,0xba,0xda,0xba,0xd9,0xaf,0xd8,0xa8,0xd8,0xac,0xd9,0x87,0xd8,0xad,0xd8,0xb7,0xd9,0x8a,0xd9,0x83,0xd9,0x85,0xd9,0x86,0xd8,0xb3,0xd8,0xb9,0xd9,0x81,0xd8,0xb5,
3138
  0xd9,0x82,0xd8,0xb4,0xd8,0xaa,0xd8,0xab,0xd8,0xae,0xd8,0xb6,0xd8,0xb8,0xd8,0xba,0xd9,0xae,0xda,0xa1,0xd8,0xa7,0xd8,0xa8,0xd8,0xac,0xd8,0xaf,0xd9,0x87,0xd9,0x88,
3139
  0xd8,0xb2,0xd8,0xad,0xd8,0xb7,0xd9,0x8a,0xd9,0x84,0xd9,0x85,0xd9,0x86,0xd8,0xb3,0xd8,0xb9,0xd9,0x81,0xd8,0xb5,0xd9,0x82,0xd8,0xb1,0xd8,0xb4,0xd8,0xaa,0xd8,0xab,
3140
  0xd8,0xae,0xd8,0xb0,0xd8,0xb6,0xd8,0xb8,0xd8,0xba,0xd8,0xa8,0xd8,0xac,0xd8,0xaf,0xd9,0x88,0xd8,0xb2,0xd8,0xad,0xd8,0xb7,0xd9,0x8a,0xd9,0x84,0xd9,0x85,0xd9,0x86,
3141
  0xd8,0xb3,0xd8,0xb9,0xd9,0x81,0xd8,0xb5,0xd9,0x82,0xd8,0xb1,0xd8,0xb4,0xd8,0xaa,0xd8,0xab,0xd8,0xae,0xd8,0xb0,0xd8,0xb6,0xd8,0xb8,0xd8,0xba,0x30,0x2e,0x30,0x2c,
3142
  0x31,0x2c,0x32,0x2c,0x33,0x2c,0x34,0x2c,0x35,0x2c,0x36,0x2c,0x37,0x2c,0x38,0x2c,0x39,0x2c,0x28,0x41,0x29,0x28,0x42,0x29,0x28,0x43,0x29,0x28,0x44,0x29,0x28,0x45,
3143
  0x29,0x28,0x46,0x29,0x28,0x47,0x29,0x28,0x48,0x29,0x28,0x49,0x29,0x28,0x4a,0x29,0x28,0x4b,0x29,0x28,0x4c,0x29,0x28,0x4d,0x29,0x28,0x4e,0x29,0x28,0x4f,0x29,0x28,
3144
  0x50,0x29,0x28,0x51,0x29,0x28,0x52,0x29,0x28,0x53,0x29,0x28,0x54,0x29,0x28,0x55,0x29,0x28,0x56,0x29,0x28,0x57,0x29,0x28,0x58,0x29,0x28,0x59,0x29,0x28,0x5a,0x29,
3145
  0xe3,0x80,0x94,0x53,0xe3,0x80,0x95,0x43,0x52,0x43,0x44,0x57,0x5a,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,0x50,0x51,0x52,0x53,
3146
  0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x48,0x56,0x4d,0x56,0x53,0x44,0x53,0x53,0x50,0x50,0x56,0x57,0x43,0x4d,0x43,0x4d,0x44,0x4d,0x52,0x44,0x4a,0xe3,0x81,0xbb,0xe3,
3147
  0x81,0x8b,0xe3,0x82,0xb3,0xe3,0x82,0xb3,0xe3,0x82,0xb5,0xe6,0x89,0x8b,0xe5,0xad,0x97,0xe5,0x8f,0x8c,0xe3,0x83,0x87,0xe4,0xba,0x8c,0xe5,0xa4,0x9a,0xe8,0xa7,0xa3,
3148
  0xe5,0xa4,0xa9,0xe4,0xba,0xa4,0xe6,0x98,0xa0,0xe7,0x84,0xa1,0xe6,0x96,0x99,0xe5,0x89,0x8d,0xe5,0xbe,0x8c,0xe5,0x86,0x8d,0xe6,0x96,0xb0,0xe5,0x88,0x9d,0xe7,0xb5,
3149
  0x82,0xe7,0x94,0x9f,0xe8,0xb2,0xa9,0xe5,0xa3,0xb0,0xe5,0x90,0xb9,0xe6,0xbc,0x94,0xe6,0x8a,0x95,0xe6,0x8d,0x95,0xe4,0xb8,0x80,0xe4,0xb8,0x89,0xe9,0x81,0x8a,0xe5,
3150
  0xb7,0xa6,0xe4,0xb8,0xad,0xe5,0x8f,0xb3,0xe6,0x8c,0x87,0xe8,0xb5,0xb0,0xe6,0x89,0x93,0xe7,0xa6,0x81,0xe7,0xa9,0xba,0xe5,0x90,0x88,0xe6,0xba,0x80,0xe6,0x9c,0x89,
3151
  0xe6,0x9c,0x88,0xe7,0x94,0xb3,0xe5,0x89,0xb2,0xe5,0x96,0xb6,0xe9,0x85,0x8d,0xe3,0x80,0x94,0xe6,0x9c,0xac,0xe3,0x80,0x95,0xe3,0x80,0x94,0xe4,0xb8,0x89,0xe3,0x80,
3152
  0x95,0xe3,0x80,0x94,0xe4,0xba,0x8c,0xe3,0x80,0x95,0xe3,0x80,0x94,0xe5,0xae,0x89,0xe3,0x80,0x95,0xe3,0x80,0x94,0xe7,0x82,0xb9,0xe3,0x80,0x95,0xe3,0x80,0x94,0xe6,
3153
  0x89,0x93,0xe3,0x80,0x95,0xe3,0x80,0x94,0xe7,0x9b,0x97,0xe3,0x80,0x95,0xe3,0x80,0x94,0xe5,0x8b,0x9d,0xe3,0x80,0x95,0xe3,0x80,0x94,0xe6,0x95,0x97,0xe3,0x80,0x95,
3154
  0xe5,0xbe,0x97,0xe5,0x8f,0xaf,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,
3155
};
3156
0
#define mxDecompositionCount1 2968
3157
static const txU2 gxDecompositionIndex1[mxDecompositionCount1] ICACHE_XS6RO_ATTR = {
3158
  0x05C9,0x0000,0x05E4,0x0006,0x0781,0x800C,0x0782,0x800E,0x0783,0x8010,0x0784,0x8012,0x0785,0x8014,0x0787,0x8016,0x0788,0x8018,0x0789,0x801B,0x078A,0x801D,0x078B,0x801F,0x078C,0x8021,0x078D,0x8023,0x078E,0x8026,0x078F,0x8028,
3159
  0x0790,0x802A,0x0791,0x802C,0x0792,0x802E,0x0793,0x8030,0x0794,0x8032,0x0795,0x8034,0x0796,0x8036,0x0797,0x8038,0x0798,0x803A,0x0799,0x803C,0x079A,0x803E,0x079B,0x8040,0x079C,0x8042,0x079D,0x8046,0x079E,0x8049,0x079F,0x804B,
3160
  0x07A0,0x804F,0x07A1,0x8051,0x07A2,0x8055,0x07A3,0x8057,0x07A4,0x8059,0x07A5,0x805B,0x07A6,0x805C,0x07A7,0x805E,0x07A8,0x8062,0x07A9,0x8064,0x07AA,0x8066,0x07AB,0x8068,0x07AC,0x806A,0x07AD,0x806C,0x07AE,0x806F,0x07AF,0x8071,
3161
  0x07B0,0x8073,0x07B2,0x8076,0x07B3,0x8078,0x07B4,0x807A,0x07B5,0x807C,0x07B6,0x807E,0x07B7,0x8080,0x07B8,0x8082,0x07B9,0x8084,0x07BA,0x8088,0x109A,0x008C,0x109C,0x0094,0x10AB,0x009C,0x112E,0x00A4,0x112F,0x00AC,0x134B,0x00B4,
3162
  0x134C,0x00BC,0x1383,0x00C4,0x1385,0x00CC,0x138E,0x00D4,0x1391,0x00DC,0x13C5,0x00E4,0x13C7,0x00EC,0x13C8,0x00F4,0x14BB,0x00FC,0x14BC,0x0104,0x14BE,0x010C,0x15BA,0x0114,0x15BB,0x011C,0x1938,0x0124,0x6121,0x012C,0x6122,0x0134,
3163
  0x6123,0x013C,0x6124,0x0144,0x6125,0x014C,0x6126,0x0154,0x6127,0x015C,0x6128,0x0164,0x6D68,0x016C,0x6D69,0x0174,0x6D6A,0x017C,0xCCD6,0x8184,0xCCD7,0x8185,0xCCD8,0x8186,0xCCD9,0x8187,0xCCDA,0x8188,0xCCDB,0x8189,0xCCDC,0x818A,
3164
  0xCCDD,0x818B,0xCCDE,0x818C,0xCCDF,0x818D,0xCCE0,0x818E,0xCCE1,0x818F,0xCCE2,0x8190,0xCCE3,0x8191,0xCCE4,0x8192,0xCCE5,0x8193,0xCCE6,0x8194,0xCCE7,0x8195,0xCCE8,0x8196,0xCCE9,0x8197,0xCCEA,0x8198,0xCCEB,0x8199,0xCCEC,0x819A,
3165
  0xCCED,0x819B,0xCCEE,0x819C,0xCCEF,0x819D,0xCCF0,0x819E,0xCCF1,0x819F,0xCCF2,0x81A0,0xCCF3,0x81A1,0xCCF4,0x81A2,0xCCF5,0x81A3,0xCCF6,0x81A4,0xCCF7,0x81A5,0xCCF8,0x81A6,0xCCF9,0x81A7,0xD15E,0x01A8,0xD15F,0x01B0,0xD160,0x01B8,
3166
  0xD161,0x01C0,0xD162,0x01C8,0xD163,0x01D0,0xD164,0x01D8,0xD1BB,0x01E0,0xD1BC,0x01E8,0xD1BD,0x01F0,0xD1BE,0x01F8,0xD1BF,0x0200,0xD1C0,0x0208,0xD400,0x8210,0xD401,0x8211,0xD402,0x8212,0xD403,0x8213,0xD404,0x8214,0xD405,0x8215,
3167
  0xD406,0x8216,0xD407,0x8217,0xD408,0x8218,0xD409,0x8219,0xD40A,0x821A,0xD40B,0x821B,0xD40C,0x821C,0xD40D,0x821D,0xD40E,0x821E,0xD40F,0x821F,0xD410,0x8220,0xD411,0x8221,0xD412,0x8222,0xD413,0x8223,0xD414,0x8224,0xD415,0x8225,
3168
  0xD416,0x8226,0xD417,0x8227,0xD418,0x8228,0xD419,0x8229,0xD41A,0x822A,0xD41B,0x822B,0xD41C,0x822C,0xD41D,0x822D,0xD41E,0x822E,0xD41F,0x822F,0xD420,0x8230,0xD421,0x8231,0xD422,0x8232,0xD423,0x8233,0xD424,0x8234,0xD425,0x8235,
3169
  0xD426,0x8236,0xD427,0x8237,0xD428,0x8238,0xD429,0x8239,0xD42A,0x823A,0xD42B,0x823B,0xD42C,0x823C,0xD42D,0x823D,0xD42E,0x823E,0xD42F,0x823F,0xD430,0x8240,0xD431,0x8241,0xD432,0x8242,0xD433,0x8243,0xD434,0x8244,0xD435,0x8245,
3170
  0xD436,0x8246,0xD437,0x8247,0xD438,0x8248,0xD439,0x8249,0xD43A,0x824A,0xD43B,0x824B,0xD43C,0x824C,0xD43D,0x824D,0xD43E,0x824E,0xD43F,0x824F,0xD440,0x8250,0xD441,0x8251,0xD442,0x8252,0xD443,0x8253,0xD444,0x8254,0xD445,0x8255,
3171
  0xD446,0x8256,0xD447,0x8257,0xD448,0x8258,0xD449,0x8259,0xD44A,0x825A,0xD44B,0x825B,0xD44C,0x825C,0xD44D,0x825D,0xD44E,0x825E,0xD44F,0x825F,0xD450,0x8260,0xD451,0x8261,0xD452,0x8262,0xD453,0x8263,0xD454,0x8264,0xD456,0x8265,
3172
  0xD457,0x8266,0xD458,0x8267,0xD459,0x8268,0xD45A,0x8269,0xD45B,0x826A,0xD45C,0x826B,0xD45D,0x826C,0xD45E,0x826D,0xD45F,0x826E,0xD460,0x826F,0xD461,0x8270,0xD462,0x8271,0xD463,0x8272,0xD464,0x8273,0xD465,0x8274,0xD466,0x8275,
3173
  0xD467,0x8276,0xD468,0x8277,0xD469,0x8278,0xD46A,0x8279,0xD46B,0x827A,0xD46C,0x827B,0xD46D,0x827C,0xD46E,0x827D,0xD46F,0x827E,0xD470,0x827F,0xD471,0x8280,0xD472,0x8281,0xD473,0x8282,0xD474,0x8283,0xD475,0x8284,0xD476,0x8285,
3174
  0xD477,0x8286,0xD478,0x8287,0xD479,0x8288,0xD47A,0x8289,0xD47B,0x828A,0xD47C,0x828B,0xD47D,0x828C,0xD47E,0x828D,0xD47F,0x828E,0xD480,0x828F,0xD481,0x8290,0xD482,0x8291,0xD483,0x8292,0xD484,0x8293,0xD485,0x8294,0xD486,0x8295,
3175
  0xD487,0x8296,0xD488,0x8297,0xD489,0x8298,0xD48A,0x8299,0xD48B,0x829A,0xD48C,0x829B,0xD48D,0x829C,0xD48E,0x829D,0xD48F,0x829E,0xD490,0x829F,0xD491,0x82A0,0xD492,0x82A1,0xD493,0x82A2,0xD494,0x82A3,0xD495,0x82A4,0xD496,0x82A5,
3176
  0xD497,0x82A6,0xD498,0x82A7,0xD499,0x82A8,0xD49A,0x82A9,0xD49B,0x82AA,0xD49C,0x82AB,0xD49E,0x82AC,0xD49F,0x82AD,0xD4A2,0x82AE,0xD4A5,0x82AF,0xD4A6,0x82B0,0xD4A9,0x82B1,0xD4AA,0x82B2,0xD4AB,0x82B3,0xD4AC,0x82B4,0xD4AE,0x82B5,
3177
  0xD4AF,0x82B6,0xD4B0,0x82B7,0xD4B1,0x82B8,0xD4B2,0x82B9,0xD4B3,0x82BA,0xD4B4,0x82BB,0xD4B5,0x82BC,0xD4B6,0x82BD,0xD4B7,0x82BE,0xD4B8,0x82BF,0xD4B9,0x82C0,0xD4BB,0x82C1,0xD4BD,0x82C2,0xD4BE,0x82C3,0xD4BF,0x82C4,0xD4C0,0x82C5,
3178
  0xD4C1,0x82C6,0xD4C2,0x82C7,0xD4C3,0x82C8,0xD4C5,0x82C9,0xD4C6,0x82CA,0xD4C7,0x82CB,0xD4C8,0x82CC,0xD4C9,0x82CD,0xD4CA,0x82CE,0xD4CB,0x82CF,0xD4CC,0x82D0,0xD4CD,0x82D1,0xD4CE,0x82D2,0xD4CF,0x82D3,0xD4D0,0x82D4,0xD4D1,0x82D5,
3179
  0xD4D2,0x82D6,0xD4D3,0x82D7,0xD4D4,0x82D8,0xD4D5,0x82D9,0xD4D6,0x82DA,0xD4D7,0x82DB,0xD4D8,0x82DC,0xD4D9,0x82DD,0xD4DA,0x82DE,0xD4DB,0x82DF,0xD4DC,0x82E0,0xD4DD,0x82E1,0xD4DE,0x82E2,0xD4DF,0x82E3,0xD4E0,0x82E4,0xD4E1,0x82E5,
3180
  0xD4E2,0x82E6,0xD4E3,0x82E7,0xD4E4,0x82E8,0xD4E5,0x82E9,0xD4E6,0x82EA,0xD4E7,0x82EB,0xD4E8,0x82EC,0xD4E9,0x82ED,0xD4EA,0x82EE,0xD4EB,0x82EF,0xD4EC,0x82F0,0xD4ED,0x82F1,0xD4EE,0x82F2,0xD4EF,0x82F3,0xD4F0,0x82F4,0xD4F1,0x82F5,
3181
  0xD4F2,0x82F6,0xD4F3,0x82F7,0xD4F4,0x82F8,0xD4F5,0x82F9,0xD4F6,0x82FA,0xD4F7,0x82FB,0xD4F8,0x82FC,0xD4F9,0x82FD,0xD4FA,0x82FE,0xD4FB,0x82FF,0xD4FC,0x8300,0xD4FD,0x8301,0xD4FE,0x8302,0xD4FF,0x8303,0xD500,0x8304,0xD501,0x8305,
3182
  0xD502,0x8306,0xD503,0x8307,0xD504,0x8308,0xD505,0x8309,0xD507,0x830A,0xD508,0x830B,0xD509,0x830C,0xD50A,0x830D,0xD50D,0x830E,0xD50E,0x830F,0xD50F,0x8310,0xD510,0x8311,0xD511,0x8312,0xD512,0x8313,0xD513,0x8314,0xD514,0x8315,
3183
  0xD516,0x8316,0xD517,0x8317,0xD518,0x8318,0xD519,0x8319,0xD51A,0x831A,0xD51B,0x831B,0xD51C,0x831C,0xD51E,0x831D,0xD51F,0x831E,0xD520,0x831F,0xD521,0x8320,0xD522,0x8321,0xD523,0x8322,0xD524,0x8323,0xD525,0x8324,0xD526,0x8325,
3184
  0xD527,0x8326,0xD528,0x8327,0xD529,0x8328,0xD52A,0x8329,0xD52B,0x832A,0xD52C,0x832B,0xD52D,0x832C,0xD52E,0x832D,0xD52F,0x832E,0xD530,0x832F,0xD531,0x8330,0xD532,0x8331,0xD533,0x8332,0xD534,0x8333,0xD535,0x8334,0xD536,0x8335,
3185
  0xD537,0x8336,0xD538,0x8337,0xD539,0x8338,0xD53B,0x8339,0xD53C,0x833A,0xD53D,0x833B,0xD53E,0x833C,0xD540,0x833D,0xD541,0x833E,0xD542,0x833F,0xD543,0x8340,0xD544,0x8341,0xD546,0x8342,0xD54A,0x8343,0xD54B,0x8344,0xD54C,0x8345,
3186
  0xD54D,0x8346,0xD54E,0x8347,0xD54F,0x8348,0xD550,0x8349,0xD552,0x834A,0xD553,0x834B,0xD554,0x834C,0xD555,0x834D,0xD556,0x834E,0xD557,0x834F,0xD558,0x8350,0xD559,0x8351,0xD55A,0x8352,0xD55B,0x8353,0xD55C,0x8354,0xD55D,0x8355,
3187
  0xD55E,0x8356,0xD55F,0x8357,0xD560,0x8358,0xD561,0x8359,0xD562,0x835A,0xD563,0x835B,0xD564,0x835C,0xD565,0x835D,0xD566,0x835E,0xD567,0x835F,0xD568,0x8360,0xD569,0x8361,0xD56A,0x8362,0xD56B,0x8363,0xD56C,0x8364,0xD56D,0x8365,
3188
  0xD56E,0x8366,0xD56F,0x8367,0xD570,0x8368,0xD571,0x8369,0xD572,0x836A,0xD573,0x836B,0xD574,0x836C,0xD575,0x836D,0xD576,0x836E,0xD577,0x836F,0xD578,0x8370,0xD579,0x8371,0xD57A,0x8372,0xD57B,0x8373,0xD57C,0x8374,0xD57D,0x8375,
3189
  0xD57E,0x8376,0xD57F,0x8377,0xD580,0x8378,0xD581,0x8379,0xD582,0x837A,0xD583,0x837B,0xD584,0x837C,0xD585,0x837D,0xD586,0x837E,0xD587,0x837F,0xD588,0x8380,0xD589,0x8381,0xD58A,0x8382,0xD58B,0x8383,0xD58C,0x8384,0xD58D,0x8385,
3190
  0xD58E,0x8386,0xD58F,0x8387,0xD590,0x8388,0xD591,0x8389,0xD592,0x838A,0xD593,0x838B,0xD594,0x838C,0xD595,0x838D,0xD596,0x838E,0xD597,0x838F,0xD598,0x8390,0xD599,0x8391,0xD59A,0x8392,0xD59B,0x8393,0xD59C,0x8394,0xD59D,0x8395,
3191
  0xD59E,0x8396,0xD59F,0x8397,0xD5A0,0x8398,0xD5A1,0x8399,0xD5A2,0x839A,0xD5A3,0x839B,0xD5A4,0x839C,0xD5A5,0x839D,0xD5A6,0x839E,0xD5A7,0x839F,0xD5A8,0x83A0,0xD5A9,0x83A1,0xD5AA,0x83A2,0xD5AB,0x83A3,0xD5AC,0x83A4,0xD5AD,0x83A5,
3192
  0xD5AE,0x83A6,0xD5AF,0x83A7,0xD5B0,0x83A8,0xD5B1,0x83A9,0xD5B2,0x83AA,0xD5B3,0x83AB,0xD5B4,0x83AC,0xD5B5,0x83AD,0xD5B6,0x83AE,0xD5B7,0x83AF,0xD5B8,0x83B0,0xD5B9,0x83B1,0xD5BA,0x83B2,0xD5BB,0x83B3,0xD5BC,0x83B4,0xD5BD,0x83B5,
3193
  0xD5BE,0x83B6,0xD5BF,0x83B7,0xD5C0,0x83B8,0xD5C1,0x83B9,0xD5C2,0x83BA,0xD5C3,0x83BB,0xD5C4,0x83BC,0xD5C5,0x83BD,0xD5C6,0x83BE,0xD5C7,0x83BF,0xD5C8,0x83C0,0xD5C9,0x83C1,0xD5CA,0x83C2,0xD5CB,0x83C3,0xD5CC,0x83C4,0xD5CD,0x83C5,
3194
  0xD5CE,0x83C6,0xD5CF,0x83C7,0xD5D0,0x83C8,0xD5D1,0x83C9,0xD5D2,0x83CA,0xD5D3,0x83CB,0xD5D4,0x83CC,0xD5D5,0x83CD,0xD5D6,0x83CE,0xD5D7,0x83CF,0xD5D8,0x83D0,0xD5D9,0x83D1,0xD5DA,0x83D2,0xD5DB,0x83D3,0xD5DC,0x83D4,0xD5DD,0x83D5,
3195
  0xD5DE,0x83D6,0xD5DF,0x83D7,0xD5E0,0x83D8,0xD5E1,0x83D9,0xD5E2,0x83DA,0xD5E3,0x83DB,0xD5E4,0x83DC,0xD5E5,0x83DD,0xD5E6,0x83DE,0xD5E7,0x83DF,0xD5E8,0x83E0,0xD5E9,0x83E1,0xD5EA,0x83E2,0xD5EB,0x83E3,0xD5EC,0x83E4,0xD5ED,0x83E5,
3196
  0xD5EE,0x83E6,0xD5EF,0x83E7,0xD5F0,0x83E8,0xD5F1,0x83E9,0xD5F2,0x83EA,0xD5F3,0x83EB,0xD5F4,0x83EC,0xD5F5,0x83ED,0xD5F6,0x83EE,0xD5F7,0x83EF,0xD5F8,0x83F0,0xD5F9,0x83F1,0xD5FA,0x83F2,0xD5FB,0x83F3,0xD5FC,0x83F4,0xD5FD,0x83F5,
3197
  0xD5FE,0x83F6,0xD5FF,0x83F7,0xD600,0x83F8,0xD601,0x83F9,0xD602,0x83FA,0xD603,0x83FB,0xD604,0x83FC,0xD605,0x83FD,0xD606,0x83FE,0xD607,0x83FF,0xD608,0x8400,0xD609,0x8401,0xD60A,0x8402,0xD60B,0x8403,0xD60C,0x8404,0xD60D,0x8405,
3198
  0xD60E,0x8406,0xD60F,0x8407,0xD610,0x8408,0xD611,0x8409,0xD612,0x840A,0xD613,0x840B,0xD614,0x840C,0xD615,0x840D,0xD616,0x840E,0xD617,0x840F,0xD618,0x8410,0xD619,0x8411,0xD61A,0x8412,0xD61B,0x8413,0xD61C,0x8414,0xD61D,0x8415,
3199
  0xD61E,0x8416,0xD61F,0x8417,0xD620,0x8418,0xD621,0x8419,0xD622,0x841A,0xD623,0x841B,0xD624,0x841C,0xD625,0x841D,0xD626,0x841E,0xD627,0x841F,0xD628,0x8420,0xD629,0x8421,0xD62A,0x8422,0xD62B,0x8423,0xD62C,0x8424,0xD62D,0x8425,
3200
  0xD62E,0x8426,0xD62F,0x8427,0xD630,0x8428,0xD631,0x8429,0xD632,0x842A,0xD633,0x842B,0xD634,0x842C,0xD635,0x842D,0xD636,0x842E,0xD637,0x842F,0xD638,0x8430,0xD639,0x8431,0xD63A,0x8432,0xD63B,0x8433,0xD63C,0x8434,0xD63D,0x8435,
3201
  0xD63E,0x8436,0xD63F,0x8437,0xD640,0x8438,0xD641,0x8439,0xD642,0x843A,0xD643,0x843B,0xD644,0x843C,0xD645,0x843D,0xD646,0x843E,0xD647,0x843F,0xD648,0x8440,0xD649,0x8441,0xD64A,0x8442,0xD64B,0x8443,0xD64C,0x8444,0xD64D,0x8445,
3202
  0xD64E,0x8446,0xD64F,0x8447,0xD650,0x8448,0xD651,0x8449,0xD652,0x844A,0xD653,0x844B,0xD654,0x844C,0xD655,0x844D,0xD656,0x844E,0xD657,0x844F,0xD658,0x8450,0xD659,0x8451,0xD65A,0x8452,0xD65B,0x8453,0xD65C,0x8454,0xD65D,0x8455,
3203
  0xD65E,0x8456,0xD65F,0x8457,0xD660,0x8458,0xD661,0x8459,0xD662,0x845A,0xD663,0x845B,0xD664,0x845C,0xD665,0x845D,0xD666,0x845E,0xD667,0x845F,0xD668,0x8460,0xD669,0x8461,0xD66A,0x8462,0xD66B,0x8463,0xD66C,0x8464,0xD66D,0x8465,
3204
  0xD66E,0x8466,0xD66F,0x8467,0xD670,0x8468,0xD671,0x8469,0xD672,0x846A,0xD673,0x846B,0xD674,0x846C,0xD675,0x846D,0xD676,0x846E,0xD677,0x846F,0xD678,0x8470,0xD679,0x8471,0xD67A,0x8472,0xD67B,0x8473,0xD67C,0x8474,0xD67D,0x8475,
3205
  0xD67E,0x8476,0xD67F,0x8477,0xD680,0x8478,0xD681,0x8479,0xD682,0x847A,0xD683,0x847B,0xD684,0x847C,0xD685,0x847D,0xD686,0x847E,0xD687,0x847F,0xD688,0x8480,0xD689,0x8481,0xD68A,0x8482,0xD68B,0x8483,0xD68C,0x8484,0xD68D,0x8485,
3206
  0xD68E,0x8486,0xD68F,0x8487,0xD690,0x8488,0xD691,0x8489,0xD692,0x848A,0xD693,0x848B,0xD694,0x848C,0xD695,0x848D,0xD696,0x848E,0xD697,0x848F,0xD698,0x8490,0xD699,0x8491,0xD69A,0x8492,0xD69B,0x8493,0xD69C,0x8494,0xD69D,0x8495,
3207
  0xD69E,0x8496,0xD69F,0x8497,0xD6A0,0x8498,0xD6A1,0x8499,0xD6A2,0x849A,0xD6A3,0x849B,0xD6A4,0x849C,0xD6A5,0x849E,0xD6A8,0x84A0,0xD6A9,0x84A2,0xD6AA,0x84A4,0xD6AB,0x84A6,0xD6AC,0x84A8,0xD6AD,0x84AA,0xD6AE,0x84AC,0xD6AF,0x84AE,
3208
  0xD6B0,0x84B0,0xD6B1,0x84B2,0xD6B2,0x84B4,0xD6B3,0x84B6,0xD6B4,0x84B8,0xD6B5,0x84BA,0xD6B6,0x84BC,0xD6B7,0x84BE,0xD6B8,0x84C0,0xD6B9,0x84C2,0xD6BA,0x84C4,0xD6BB,0x84C6,0xD6BC,0x84C8,0xD6BD,0x84CA,0xD6BE,0x84CC,0xD6BF,0x84CE,
3209
  0xD6C0,0x84D0,0xD6C1,0x84D2,0xD6C2,0x84D5,0xD6C3,0x84D7,0xD6C4,0x84D9,0xD6C5,0x84DB,0xD6C6,0x84DD,0xD6C7,0x84DF,0xD6C8,0x84E1,0xD6C9,0x84E3,0xD6CA,0x84E5,0xD6CB,0x84E7,0xD6CC,0x84E9,0xD6CD,0x84EB,0xD6CE,0x84ED,0xD6CF,0x84EF,
3210
  0xD6D0,0x84F1,0xD6D1,0x84F3,0xD6D2,0x84F5,0xD6D3,0x84F7,0xD6D4,0x84F9,0xD6D5,0x84FB,0xD6D6,0x84FD,0xD6D7,0x84FF,0xD6D8,0x8501,0xD6D9,0x8503,0xD6DA,0x8505,0xD6DB,0x8507,0xD6DC,0x850A,0xD6DD,0x850C,0xD6DE,0x850E,0xD6DF,0x8510,
3211
  0xD6E0,0x8512,0xD6E1,0x8514,0xD6E2,0x8516,0xD6E3,0x8518,0xD6E4,0x851A,0xD6E5,0x851C,0xD6E6,0x851E,0xD6E7,0x8520,0xD6E8,0x8522,0xD6E9,0x8524,0xD6EA,0x8526,0xD6EB,0x8528,0xD6EC,0x852A,0xD6ED,0x852C,0xD6EE,0x852E,0xD6EF,0x8530,
3212
  0xD6F0,0x8532,0xD6F1,0x8534,0xD6F2,0x8536,0xD6F3,0x8538,0xD6F4,0x853A,0xD6F5,0x853C,0xD6F6,0x853E,0xD6F7,0x8540,0xD6F8,0x8542,0xD6F9,0x8544,0xD6FA,0x8546,0xD6FB,0x8548,0xD6FC,0x854B,0xD6FD,0x854D,0xD6FE,0x854F,0xD6FF,0x8551,
3213
  0xD700,0x8553,0xD701,0x8555,0xD702,0x8557,0xD703,0x8559,0xD704,0x855B,0xD705,0x855D,0xD706,0x855F,0xD707,0x8561,0xD708,0x8563,0xD709,0x8565,0xD70A,0x8567,0xD70B,0x8569,0xD70C,0x856B,0xD70D,0x856D,0xD70E,0x856F,0xD70F,0x8571,
3214
  0xD710,0x8573,0xD711,0x8575,0xD712,0x8577,0xD713,0x8579,0xD714,0x857B,0xD715,0x857D,0xD716,0x8580,0xD717,0x8582,0xD718,0x8584,0xD719,0x8586,0xD71A,0x8588,0xD71B,0x858A,0xD71C,0x858C,0xD71D,0x858E,0xD71E,0x8590,0xD71F,0x8592,
3215
  0xD720,0x8594,0xD721,0x8596,0xD722,0x8598,0xD723,0x859A,0xD724,0x859C,0xD725,0x859E,0xD726,0x85A0,0xD727,0x85A2,0xD728,0x85A4,0xD729,0x85A6,0xD72A,0x85A8,0xD72B,0x85AA,0xD72C,0x85AC,0xD72D,0x85AE,0xD72E,0x85B0,0xD72F,0x85B2,
3216
  0xD730,0x85B4,0xD731,0x85B6,0xD732,0x85B8,0xD733,0x85BA,0xD734,0x85BC,0xD735,0x85BE,0xD736,0x85C1,0xD737,0x85C3,0xD738,0x85C5,0xD739,0x85C7,0xD73A,0x85C9,0xD73B,0x85CB,0xD73C,0x85CD,0xD73D,0x85CF,0xD73E,0x85D1,0xD73F,0x85D3,
3217
  0xD740,0x85D5,0xD741,0x85D7,0xD742,0x85D9,0xD743,0x85DB,0xD744,0x85DD,0xD745,0x85DF,0xD746,0x85E1,0xD747,0x85E3,0xD748,0x85E5,0xD749,0x85E7,0xD74A,0x85E9,0xD74B,0x85EB,0xD74C,0x85ED,0xD74D,0x85EF,0xD74E,0x85F1,0xD74F,0x85F3,
3218
  0xD750,0x85F6,0xD751,0x85F8,0xD752,0x85FA,0xD753,0x85FC,0xD754,0x85FE,0xD755,0x8600,0xD756,0x8602,0xD757,0x8604,0xD758,0x8606,0xD759,0x8608,0xD75A,0x860A,0xD75B,0x860C,0xD75C,0x860E,0xD75D,0x8610,0xD75E,0x8612,0xD75F,0x8614,
3219
  0xD760,0x8616,0xD761,0x8618,0xD762,0x861A,0xD763,0x861C,0xD764,0x861E,0xD765,0x8620,0xD766,0x8622,0xD767,0x8624,0xD768,0x8626,0xD769,0x8628,0xD76A,0x862A,0xD76B,0x862C,0xD76C,0x862E,0xD76D,0x8630,0xD76E,0x8632,0xD76F,0x8634,
3220
  0xD770,0x8637,0xD771,0x8639,0xD772,0x863B,0xD773,0x863D,0xD774,0x863F,0xD775,0x8641,0xD776,0x8643,0xD777,0x8645,0xD778,0x8647,0xD779,0x8649,0xD77A,0x864B,0xD77B,0x864D,0xD77C,0x864F,0xD77D,0x8651,0xD77E,0x8653,0xD77F,0x8655,
3221
  0xD780,0x8657,0xD781,0x8659,0xD782,0x865B,0xD783,0x865D,0xD784,0x865F,0xD785,0x8661,0xD786,0x8663,0xD787,0x8665,0xD788,0x8667,0xD789,0x8669,0xD78A,0x866C,0xD78B,0x866E,0xD78C,0x8670,0xD78D,0x8672,0xD78E,0x8674,0xD78F,0x8676,
3222
  0xD790,0x8678,0xD791,0x867A,0xD792,0x867C,0xD793,0x867E,0xD794,0x8680,0xD795,0x8682,0xD796,0x8684,0xD797,0x8686,0xD798,0x8688,0xD799,0x868A,0xD79A,0x868C,0xD79B,0x868E,0xD79C,0x8690,0xD79D,0x8692,0xD79E,0x8694,0xD79F,0x8696,
3223
  0xD7A0,0x8698,0xD7A1,0x869A,0xD7A2,0x869C,0xD7A3,0x869E,0xD7A4,0x86A0,0xD7A5,0x86A2,0xD7A6,0x86A4,0xD7A7,0x86A6,0xD7A8,0x86A8,0xD7A9,0x86AA,0xD7AA,0x86AD,0xD7AB,0x86AF,0xD7AC,0x86B1,0xD7AD,0x86B3,0xD7AE,0x86B5,0xD7AF,0x86B7,
3224
  0xD7B0,0x86B9,0xD7B1,0x86BB,0xD7B2,0x86BD,0xD7B3,0x86BF,0xD7B4,0x86C1,0xD7B5,0x86C3,0xD7B6,0x86C5,0xD7B7,0x86C7,0xD7B8,0x86C9,0xD7B9,0x86CB,0xD7BA,0x86CD,0xD7BB,0x86CF,0xD7BC,0x86D1,0xD7BD,0x86D3,0xD7BE,0x86D5,0xD7BF,0x86D7,
3225
  0xD7C0,0x86D9,0xD7C1,0x86DB,0xD7C2,0x86DD,0xD7C3,0x86DF,0xD7C4,0x86E2,0xD7C5,0x86E4,0xD7C6,0x86E6,0xD7C7,0x86E8,0xD7C8,0x86EA,0xD7C9,0x86EC,0xD7CA,0x86EE,0xD7CB,0x86F0,0xD7CE,0x86F2,0xD7CF,0x86F3,0xD7D0,0x86F4,0xD7D1,0x86F5,
3226
  0xD7D2,0x86F6,0xD7D3,0x86F7,0xD7D4,0x86F8,0xD7D5,0x86F9,0xD7D6,0x86FA,0xD7D7,0x86FB,0xD7D8,0x86FC,0xD7D9,0x86FD,0xD7DA,0x86FE,0xD7DB,0x86FF,0xD7DC,0x8700,0xD7DD,0x8701,0xD7DE,0x8702,0xD7DF,0x8703,0xD7E0,0x8704,0xD7E1,0x8705,
3227
  0xD7E2,0x8706,0xD7E3,0x8707,0xD7E4,0x8708,0xD7E5,0x8709,0xD7E6,0x870A,0xD7E7,0x870B,0xD7E8,0x870C,0xD7E9,0x870D,0xD7EA,0x870E,0xD7EB,0x870F,0xD7EC,0x8710,0xD7ED,0x8711,0xD7EE,0x8712,0xD7EF,0x8713,0xD7F0,0x8714,0xD7F1,0x8715,
3228
  0xD7F2,0x8716,0xD7F3,0x8717,0xD7F4,0x8718,0xD7F5,0x8719,0xD7F6,0x871A,0xD7F7,0x871B,0xD7F8,0x871C,0xD7F9,0x871D,0xD7FA,0x871E,0xD7FB,0x871F,0xD7FC,0x8720,0xD7FD,0x8721,0xD7FE,0x8722,0xD7FF,0x8723,0xE030,0x8724,0xE031,0x8726,
3229
  0xE032,0x8728,0xE033,0x872A,0xE034,0x872C,0xE035,0x872E,0xE036,0x8730,0xE037,0x8732,0xE038,0x8734,0xE039,0x8736,0xE03A,0x8738,0xE03B,0x873A,0xE03C,0x873C,0xE03D,0x873E,0xE03E,0x8740,0xE03F,0x8742,0xE040,0x8744,0xE041,0x8746,
3230
  0xE042,0x8748,0xE043,0x874A,0xE044,0x874C,0xE045,0x874E,0xE046,0x8750,0xE047,0x8752,0xE048,0x8754,0xE049,0x8756,0xE04A,0x8758,0xE04B,0x875B,0xE04C,0x875D,0xE04D,0x875F,0xE04E,0x8761,0xE04F,0x8763,0xE050,0x8765,0xE051,0x8767,
3231
  0xE052,0x8769,0xE053,0x876B,0xE054,0x876D,0xE055,0x876F,0xE056,0x8771,0xE057,0x8773,0xE058,0x8775,0xE059,0x8777,0xE05A,0x8779,0xE05B,0x877B,0xE05C,0x877D,0xE05D,0x877F,0xE05E,0x8781,0xE05F,0x8783,0xE060,0x8785,0xE061,0x8787,
3232
  0xE062,0x8789,0xE063,0x878B,0xE064,0x878D,0xE065,0x878F,0xE066,0x8791,0xE067,0x8793,0xE068,0x8795,0xE069,0x8797,0xE06A,0x8799,0xE06B,0x879B,0xE06C,0x879D,0xE06D,0x87A0,0xEE00,0x87A2,0xEE01,0x87A4,0xEE02,0x87A6,0xEE03,0x87A8,
3233
  0xEE05,0x87AA,0xEE06,0x87AC,0xEE07,0x87AE,0xEE08,0x87B0,0xEE09,0x87B2,0xEE0A,0x87B4,0xEE0B,0x87B6,0xEE0C,0x87B8,0xEE0D,0x87BA,0xEE0E,0x87BC,0xEE0F,0x87BE,0xEE10,0x87C0,0xEE11,0x87C2,0xEE12,0x87C4,0xEE13,0x87C6,0xEE14,0x87C8,
3234
  0xEE15,0x87CA,0xEE16,0x87CC,0xEE17,0x87CE,0xEE18,0x87D0,0xEE19,0x87D2,0xEE1A,0x87D4,0xEE1B,0x87D6,0xEE1C,0x87D8,0xEE1D,0x87DA,0xEE1E,0x87DC,0xEE1F,0x87DE,0xEE21,0x87E0,0xEE22,0x87E2,0xEE24,0x87E4,0xEE27,0x87E6,0xEE29,0x87E8,
3235
  0xEE2A,0x87EA,0xEE2B,0x87EC,0xEE2C,0x87EE,0xEE2D,0x87F0,0xEE2E,0x87F2,0xEE2F,0x87F4,0xEE30,0x87F6,0xEE31,0x87F8,0xEE32,0x87FA,0xEE34,0x87FC,0xEE35,0x87FE,0xEE36,0x8800,0xEE37,0x8802,0xEE39,0x8804,0xEE3B,0x8806,0xEE42,0x8808,
3236
  0xEE47,0x880A,0xEE49,0x880C,0xEE4B,0x880E,0xEE4D,0x8810,0xEE4E,0x8812,0xEE4F,0x8814,0xEE51,0x8816,0xEE52,0x8818,0xEE54,0x881A,0xEE57,0x881C,0xEE59,0x881E,0xEE5B,0x8820,0xEE5D,0x8822,0xEE5F,0x8824,0xEE61,0x8826,0xEE62,0x8828,
3237
  0xEE64,0x882A,0xEE67,0x882C,0xEE68,0x882E,0xEE69,0x8830,0xEE6A,0x8832,0xEE6C,0x8834,0xEE6D,0x8836,0xEE6E,0x8838,0xEE6F,0x883A,0xEE70,0x883C,0xEE71,0x883E,0xEE72,0x8840,0xEE74,0x8842,0xEE75,0x8844,0xEE76,0x8846,0xEE77,0x8848,
3238
  0xEE79,0x884A,0xEE7A,0x884C,0xEE7B,0x884E,0xEE7C,0x8850,0xEE7E,0x8852,0xEE80,0x8854,0xEE81,0x8856,0xEE82,0x8858,0xEE83,0x885A,0xEE84,0x885C,0xEE85,0x885E,0xEE86,0x8860,0xEE87,0x8862,0xEE88,0x8864,0xEE89,0x8866,0xEE8B,0x8868,
3239
  0xEE8C,0x886A,0xEE8D,0x886C,0xEE8E,0x886E,0xEE8F,0x8870,0xEE90,0x8872,0xEE91,0x8874,0xEE92,0x8876,0xEE93,0x8878,0xEE94,0x887A,0xEE95,0x887C,0xEE96,0x887E,0xEE97,0x8880,0xEE98,0x8882,0xEE99,0x8884,0xEE9A,0x8886,0xEE9B,0x8888,
3240
  0xEEA1,0x888A,0xEEA2,0x888C,0xEEA3,0x888E,0xEEA5,0x8890,0xEEA6,0x8892,0xEEA7,0x8894,0xEEA8,0x8896,0xEEA9,0x8898,0xEEAB,0x889A,0xEEAC,0x889C,0xEEAD,0x889E,0xEEAE,0x88A0,0xEEAF,0x88A2,0xEEB0,0x88A4,0xEEB1,0x88A6,0xEEB2,0x88A8,
3241
  0xEEB3,0x88AA,0xEEB4,0x88AC,0xEEB5,0x88AE,0xEEB6,0x88B0,0xEEB7,0x88B2,0xEEB8,0x88B4,0xEEB9,0x88B6,0xEEBA,0x88B8,0xEEBB,0x88BA,0xF100,0x88BC,0xF101,0x88BE,0xF102,0x88C0,0xF103,0x88C2,0xF104,0x88C4,0xF105,0x88C6,0xF106,0x88C8,
3242
  0xF107,0x88CA,0xF108,0x88CC,0xF109,0x88CE,0xF10A,0x88D0,0xF110,0x88D2,0xF111,0x88D5,0xF112,0x88D8,0xF113,0x88DB,0xF114,0x88DE,0xF115,0x88E1,0xF116,0x88E4,0xF117,0x88E7,0xF118,0x88EA,0xF119,0x88ED,0xF11A,0x88F0,0xF11B,0x88F3,
3243
  0xF11C,0x88F6,0xF11D,0x88F9,0xF11E,0x88FC,0xF11F,0x88FF,0xF120,0x8902,0xF121,0x8905,0xF122,0x8908,0xF123,0x890B,0xF124,0x890E,0xF125,0x8911,0xF126,0x8914,0xF127,0x8917,0xF128,0x891A,0xF129,0x891D,0xF12A,0x8920,0xF12B,0x8927,
3244
  0xF12C,0x8928,0xF12D,0x8929,0xF12E,0x892B,0xF130,0x892D,0xF131,0x892E,0xF132,0x892F,0xF133,0x8930,0xF134,0x8931,0xF135,0x8932,0xF136,0x8933,0xF137,0x8934,0xF138,0x8935,0xF139,0x8936,0xF13A,0x8937,0xF13B,0x8938,0xF13C,0x8939,
3245
  0xF13D,0x893A,0xF13E,0x893B,0xF13F,0x893C,0xF140,0x893D,0xF141,0x893E,0xF142,0x893F,0xF143,0x8940,0xF144,0x8941,0xF145,0x8942,0xF146,0x8943,0xF147,0x8944,0xF148,0x8945,0xF149,0x8946,0xF14A,0x8947,0xF14B,0x8949,0xF14C,0x894B,
3246
  0xF14D,0x894D,0xF14E,0x894F,0xF14F,0x8952,0xF16A,0x8954,0xF16B,0x8956,0xF16C,0x8958,0xF190,0x895A,0xF200,0x895C,0xF201,0x8962,0xF202,0x8968,0xF210,0x896B,0xF211,0x896E,0xF212,0x8971,0xF213,0x8974,0xF214,0x8977,0xF215,0x897A,
3247
  0xF216,0x897D,0xF217,0x8980,0xF218,0x8983,0xF219,0x8986,0xF21A,0x8989,0xF21B,0x898C,0xF21C,0x898F,0xF21D,0x8992,0xF21E,0x8995,0xF21F,0x8998,0xF220,0x899B,0xF221,0x899E,0xF222,0x89A1,0xF223,0x89A4,0xF224,0x89A7,0xF225,0x89AA,
3248
  0xF226,0x89AD,0xF227,0x89B0,0xF228,0x89B3,0xF229,0x89B6,0xF22A,0x89B9,0xF22B,0x89BC,0xF22C,0x89BF,0xF22D,0x89C2,0xF22E,0x89C5,0xF22F,0x89C8,0xF230,0x89CB,0xF231,0x89CE,0xF232,0x89D1,0xF233,0x89D4,0xF234,0x89D7,0xF235,0x89DA,
3249
  0xF236,0x89DD,0xF237,0x89E0,0xF238,0x89E3,0xF239,0x89E6,0xF23A,0x89E9,0xF23B,0x89EC,0xF240,0x89EF,0xF241,0x89F8,0xF242,0x8A01,0xF243,0x8A0A,0xF244,0x8A13,0xF245,0x8A1C,0xF246,0x8A25,0xF247,0x8A2E,0xF248,0x8A37,0xF250,0x8A40,
3250
  0xF251,0x8A43,0xFBF0,0x8A46,0xFBF1,0x8A47,0xFBF2,0x8A48,0xFBF3,0x8A49,0xFBF4,0x8A4A,0xFBF5,0x8A4B,0xFBF6,0x8A4C,0xFBF7,0x8A4D,0xFBF8,0x8A4E,0xFBF9,0x8A4F,0xFFFF,0x0A50,
3251
};
3252
#define mxDecompositionSize2 1731
3253
const txU1 gxDecompositionData2[mxDecompositionSize2] ICACHE_XS6RO_ATTR = {
3254
  0xe4,0xb8,0xbd,0xe4,0xb8,0xb8,0xe4,0xb9,0x81,0xf0,0xa0,0x84,0xa2,0xe4,0xbd,0xa0,0xe4,0xbe,0xae,0xe4,0xbe,0xbb,0xe5,0x80,0x82,0xe5,0x81,0xba,0xe5,0x82,0x99,0xe5,
3255
  0x83,0xa7,0xe5,0x83,0x8f,0xe3,0x92,0x9e,0xf0,0xa0,0x98,0xba,0xe5,0x85,0x8d,0xe5,0x85,0x94,0xe5,0x85,0xa4,0xe5,0x85,0xb7,0xf0,0xa0,0x94,0x9c,0xe3,0x92,0xb9,0xe5,
3256
  0x85,0xa7,0xe5,0x86,0x8d,0xf0,0xa0,0x95,0x8b,0xe5,0x86,0x97,0xe5,0x86,0xa4,0xe4,0xbb,0x8c,0xe5,0x86,0xac,0xe5,0x86,0xb5,0xf0,0xa9,0x87,0x9f,0xe5,0x87,0xb5,0xe5,
3257
  0x88,0x83,0xe3,0x93,0x9f,0xe5,0x88,0xbb,0xe5,0x89,0x86,0xe5,0x89,0xb2,0xe5,0x89,0xb7,0xe3,0x94,0x95,0xe5,0x8b,0x87,0xe5,0x8b,0x89,0xe5,0x8b,0xa4,0xe5,0x8b,0xba,
3258
  0xe5,0x8c,0x85,0xe5,0x8c,0x86,0xe5,0x8c,0x97,0xe5,0x8d,0x89,0xe5,0x8d,0x91,0xe5,0x8d,0x9a,0xe5,0x8d,0xb3,0xe5,0x8d,0xbd,0xe5,0x8d,0xbf,0xe5,0x8d,0xbf,0xe5,0x8d,
3259
  0xbf,0xf0,0xa0,0xa8,0xac,0xe7,0x81,0xb0,0xe5,0x8f,0x8a,0xe5,0x8f,0x9f,0xf0,0xa0,0xad,0xa3,0xe5,0x8f,0xab,0xe5,0x8f,0xb1,0xe5,0x90,0x86,0xe5,0x92,0x9e,0xe5,0x90,
3260
  0xb8,0xe5,0x91,0x88,0xe5,0x91,0xa8,0xe5,0x92,0xa2,0xe5,0x93,0xb6,0xe5,0x94,0x90,0xe5,0x95,0x93,0xe5,0x95,0xa3,0xe5,0x96,0x84,0xe5,0x96,0x84,0xe5,0x96,0x99,0xe5,
3261
  0x96,0xab,0xe5,0x96,0xb3,0xe5,0x97,0x82,0xe5,0x9c,0x96,0xe5,0x98,0x86,0xe5,0x9c,0x97,0xe5,0x99,0x91,0xe5,0x99,0xb4,0xe5,0x88,0x87,0xe5,0xa3,0xae,0xe5,0x9f,0x8e,
3262
  0xe5,0x9f,0xb4,0xe5,0xa0,0x8d,0xe5,0x9e,0x8b,0xe5,0xa0,0xb2,0xe5,0xa0,0xb1,0xe5,0xa2,0xac,0xf0,0xa1,0x93,0xa4,0xe5,0xa3,0xb2,0xe5,0xa3,0xb7,0xe5,0xa4,0x86,0xe5,
3263
  0xa4,0x9a,0xe5,0xa4,0xa2,0xe5,0xa5,0xa2,0xf0,0xa1,0x9a,0xa8,0xf0,0xa1,0x9b,0xaa,0xe5,0xa7,0xac,0xe5,0xa8,0x9b,0xe5,0xa8,0xa7,0xe5,0xa7,0x98,0xe5,0xa9,0xa6,0xe3,
3264
  0x9b,0xae,0xe3,0x9b,0xbc,0xe5,0xac,0x88,0xe5,0xac,0xbe,0xe5,0xac,0xbe,0xf0,0xa1,0xa7,0x88,0xe5,0xaf,0x83,0xe5,0xaf,0x98,0xe5,0xaf,0xa7,0xe5,0xaf,0xb3,0xf0,0xa1,
3265
  0xac,0x98,0xe5,0xaf,0xbf,0xe5,0xb0,0x86,0xe5,0xbd,0x93,0xe5,0xb0,0xa2,0xe3,0x9e,0x81,0xe5,0xb1,0xa0,0xe5,0xb1,0xae,0xe5,0xb3,0x80,0xe5,0xb2,0x8d,0xf0,0xa1,0xb7,
3266
  0xa4,0xe5,0xb5,0x83,0xf0,0xa1,0xb7,0xa6,0xe5,0xb5,0xae,0xe5,0xb5,0xab,0xe5,0xb5,0xbc,0xe5,0xb7,0xa1,0xe5,0xb7,0xa2,0xe3,0xa0,0xaf,0xe5,0xb7,0xbd,0xe5,0xb8,0xa8,
3267
  0xe5,0xb8,0xbd,0xe5,0xb9,0xa9,0xe3,0xa1,0xa2,0xf0,0xa2,0x86,0x83,0xe3,0xa1,0xbc,0xe5,0xba,0xb0,0xe5,0xba,0xb3,0xe5,0xba,0xb6,0xe5,0xbb,0x8a,0xf0,0xaa,0x8e,0x92,
3268
  0xe5,0xbb,0xbe,0xf0,0xa2,0x8c,0xb1,0xf0,0xa2,0x8c,0xb1,0xe8,0x88,0x81,0xe5,0xbc,0xa2,0xe5,0xbc,0xa2,0xe3,0xa3,0x87,0xf0,0xa3,0x8a,0xb8,0xf0,0xa6,0x87,0x9a,0xe5,
3269
  0xbd,0xa2,0xe5,0xbd,0xab,0xe3,0xa3,0xa3,0xe5,0xbe,0x9a,0xe5,0xbf,0x8d,0xe5,0xbf,0x97,0xe5,0xbf,0xb9,0xe6,0x82,0x81,0xe3,0xa4,0xba,0xe3,0xa4,0x9c,0xe6,0x82,0x94,
3270
  0xf0,0xa2,0x9b,0x94,0xe6,0x83,0x87,0xe6,0x85,0x88,0xe6,0x85,0x8c,0xe6,0x85,0x8e,0xe6,0x85,0x8c,0xe6,0x85,0xba,0xe6,0x86,0x8e,0xe6,0x86,0xb2,0xe6,0x86,0xa4,0xe6,
3271
  0x86,0xaf,0xe6,0x87,0x9e,0xe6,0x87,0xb2,0xe6,0x87,0xb6,0xe6,0x88,0x90,0xe6,0x88,0x9b,0xe6,0x89,0x9d,0xe6,0x8a,0xb1,0xe6,0x8b,0x94,0xe6,0x8d,0x90,0xf0,0xa2,0xac,
3272
  0x8c,0xe6,0x8c,0xbd,0xe6,0x8b,0xbc,0xe6,0x8d,0xa8,0xe6,0x8e,0x83,0xe6,0x8f,0xa4,0xf0,0xa2,0xaf,0xb1,0xe6,0x90,0xa2,0xe6,0x8f,0x85,0xe6,0x8e,0xa9,0xe3,0xa8,0xae,
3273
  0xe6,0x91,0xa9,0xe6,0x91,0xbe,0xe6,0x92,0x9d,0xe6,0x91,0xb7,0xe3,0xa9,0xac,0xe6,0x95,0x8f,0xe6,0x95,0xac,0xf0,0xa3,0x80,0x8a,0xe6,0x97,0xa3,0xe6,0x9b,0xb8,0xe6,
3274
  0x99,0x89,0xe3,0xac,0x99,0xe6,0x9a,0x91,0xe3,0xac,0x88,0xe3,0xab,0xa4,0xe5,0x86,0x92,0xe5,0x86,0x95,0xe6,0x9c,0x80,0xe6,0x9a,0x9c,0xe8,0x82,0xad,0xe4,0x8f,0x99,
3275
  0xe6,0x9c,0x97,0xe6,0x9c,0x9b,0xe6,0x9c,0xa1,0xe6,0x9d,0x9e,0xe6,0x9d,0x93,0xf0,0xa3,0x8f,0x83,0xe3,0xad,0x89,0xe6,0x9f,0xba,0xe6,0x9e,0x85,0xe6,0xa1,0x92,0xe6,
3276
  0xa2,0x85,0xf0,0xa3,0x91,0xad,0xe6,0xa2,0x8e,0xe6,0xa0,0x9f,0xe6,0xa4,0x94,0xe3,0xae,0x9d,0xe6,0xa5,0x82,0xe6,0xa6,0xa3,0xe6,0xa7,0xaa,0xe6,0xaa,0xa8,0xf0,0xa3,
3277
  0x9a,0xa3,0xe6,0xab,0x9b,0xe3,0xb0,0x98,0xe6,0xac,0xa1,0xf0,0xa3,0xa2,0xa7,0xe6,0xad,0x94,0xe3,0xb1,0x8e,0xe6,0xad,0xb2,0xe6,0xae,0x9f,0xe6,0xae,0xba,0xe6,0xae,
3278
  0xbb,0xf0,0xa3,0xaa,0x8d,0xf0,0xa1,0xb4,0x8b,0xf0,0xa3,0xab,0xba,0xe6,0xb1,0x8e,0xf0,0xa3,0xb2,0xbc,0xe6,0xb2,0xbf,0xe6,0xb3,0x8d,0xe6,0xb1,0xa7,0xe6,0xb4,0x96,
3279
  0xe6,0xb4,0xbe,0xe6,0xb5,0xb7,0xe6,0xb5,0x81,0xe6,0xb5,0xa9,0xe6,0xb5,0xb8,0xe6,0xb6,0x85,0xf0,0xa3,0xb4,0x9e,0xe6,0xb4,0xb4,0xe6,0xb8,0xaf,0xe6,0xb9,0xae,0xe3,
3280
  0xb4,0xb3,0xe6,0xbb,0x8b,0xe6,0xbb,0x87,0xf0,0xa3,0xbb,0x91,0xe6,0xb7,0xb9,0xe6,0xbd,0xae,0xf0,0xa3,0xbd,0x9e,0xf0,0xa3,0xbe,0x8e,0xe6,0xbf,0x86,0xe7,0x80,0xb9,
3281
  0xe7,0x80,0x9e,0xe7,0x80,0x9b,0xe3,0xb6,0x96,0xe7,0x81,0x8a,0xe7,0x81,0xbd,0xe7,0x81,0xb7,0xe7,0x82,0xad,0xf0,0xa0,0x94,0xa5,0xe7,0x85,0x85,0xf0,0xa4,0x89,0xa3,
3282
  0xe7,0x86,0x9c,0xf0,0xa4,0x8e,0xab,0xe7,0x88,0xa8,0xe7,0x88,0xb5,0xe7,0x89,0x90,0xf0,0xa4,0x98,0x88,0xe7,0x8a,0x80,0xe7,0x8a,0x95,0xf0,0xa4,0x9c,0xb5,0xf0,0xa4,
3283
  0xa0,0x94,0xe7,0x8d,0xba,0xe7,0x8e,0x8b,0xe3,0xba,0xac,0xe7,0x8e,0xa5,0xe3,0xba,0xb8,0xe3,0xba,0xb8,0xe7,0x91,0x87,0xe7,0x91,0x9c,0xe7,0x91,0xb1,0xe7,0x92,0x85,
3284
  0xe7,0x93,0x8a,0xe3,0xbc,0x9b,0xe7,0x94,0xa4,0xf0,0xa4,0xb0,0xb6,0xe7,0x94,0xbe,0xf0,0xa4,0xb2,0x92,0xe7,0x95,0xb0,0xf0,0xa2,0x86,0x9f,0xe7,0x98,0x90,0xf0,0xa4,
3285
  0xbe,0xa1,0xf0,0xa4,0xbe,0xb8,0xf0,0xa5,0x81,0x84,0xe3,0xbf,0xbc,0xe4,0x80,0x88,0xe7,0x9b,0xb4,0xf0,0xa5,0x83,0xb3,0xf0,0xa5,0x83,0xb2,0xf0,0xa5,0x84,0x99,0xf0,
3286
  0xa5,0x84,0xb3,0xe7,0x9c,0x9e,0xe7,0x9c,0x9f,0xe7,0x9c,0x9f,0xe7,0x9d,0x8a,0xe4,0x80,0xb9,0xe7,0x9e,0x8b,0xe4,0x81,0x86,0xe4,0x82,0x96,0xf0,0xa5,0x90,0x9d,0xe7,
3287
  0xa1,0x8e,0xe7,0xa2,0x8c,0xe7,0xa3,0x8c,0xe4,0x83,0xa3,0xf0,0xa5,0x98,0xa6,0xe7,0xa5,0x96,0xf0,0xa5,0x9a,0x9a,0xf0,0xa5,0x9b,0x85,0xe7,0xa6,0x8f,0xe7,0xa7,0xab,
3288
  0xe4,0x84,0xaf,0xe7,0xa9,0x80,0xe7,0xa9,0x8a,0xe7,0xa9,0x8f,0xf0,0xa5,0xa5,0xbc,0xf0,0xa5,0xaa,0xa7,0xf0,0xa5,0xaa,0xa7,0xe7,0xab,0xae,0xe4,0x88,0x82,0xf0,0xa5,
3289
  0xae,0xab,0xe7,0xaf,0x86,0xe7,0xaf,0x89,0xe4,0x88,0xa7,0xf0,0xa5,0xb2,0x80,0xe7,0xb3,0x92,0xe4,0x8a,0xa0,0xe7,0xb3,0xa8,0xe7,0xb3,0xa3,0xe7,0xb4,0x80,0xf0,0xa5,
3290
  0xbe,0x86,0xe7,0xb5,0xa3,0xe4,0x8c,0x81,0xe7,0xb7,0x87,0xe7,0xb8,0x82,0xe7,0xb9,0x85,0xe4,0x8c,0xb4,0xf0,0xa6,0x88,0xa8,0xf0,0xa6,0x89,0x87,0xe4,0x8d,0x99,0xf0,
3291
  0xa6,0x8b,0x99,0xe7,0xbd,0xba,0xf0,0xa6,0x8c,0xbe,0xe7,0xbe,0x95,0xe7,0xbf,0xba,0xe8,0x80,0x85,0xf0,0xa6,0x93,0x9a,0xf0,0xa6,0x94,0xa3,0xe8,0x81,0xa0,0xf0,0xa6,
3292
  0x96,0xa8,0xe8,0x81,0xb0,0xf0,0xa3,0x8d,0x9f,0xe4,0x8f,0x95,0xe8,0x82,0xb2,0xe8,0x84,0x83,0xe4,0x90,0x8b,0xe8,0x84,0xbe,0xe5,0xaa,0xb5,0xf0,0xa6,0x9e,0xa7,0xf0,
3293
  0xa6,0x9e,0xb5,0xf0,0xa3,0x8e,0x93,0xf0,0xa3,0x8e,0x9c,0xe8,0x88,0x81,0xe8,0x88,0x84,0xe8,0xbe,0x9e,0xe4,0x91,0xab,0xe8,0x8a,0x91,0xe8,0x8a,0x8b,0xe8,0x8a,0x9d,
3294
  0xe5,0x8a,0xb3,0xe8,0x8a,0xb1,0xe8,0x8a,0xb3,0xe8,0x8a,0xbd,0xe8,0x8b,0xa6,0xf0,0xa6,0xac,0xbc,0xe8,0x8b,0xa5,0xe8,0x8c,0x9d,0xe8,0x8d,0xa3,0xe8,0x8e,0xad,0xe8,
3295
  0x8c,0xa3,0xe8,0x8e,0xbd,0xe8,0x8f,0xa7,0xe8,0x91,0x97,0xe8,0x8d,0x93,0xe8,0x8f,0x8a,0xe8,0x8f,0x8c,0xe8,0x8f,0x9c,0xf0,0xa6,0xb0,0xb6,0xf0,0xa6,0xb5,0xab,0xf0,
3296
  0xa6,0xb3,0x95,0xe4,0x94,0xab,0xe8,0x93,0xb1,0xe8,0x93,0xb3,0xe8,0x94,0x96,0xf0,0xa7,0x8f,0x8a,0xe8,0x95,0xa4,0xf0,0xa6,0xbc,0xac,0xe4,0x95,0x9d,0xe4,0x95,0xa1,
3297
  0xf0,0xa6,0xbe,0xb1,0xf0,0xa7,0x83,0x92,0xe4,0x95,0xab,0xe8,0x99,0x90,0xe8,0x99,0x9c,0xe8,0x99,0xa7,0xe8,0x99,0xa9,0xe8,0x9a,0xa9,0xe8,0x9a,0x88,0xe8,0x9c,0x8e,
3298
  0xe8,0x9b,0xa2,0xe8,0x9d,0xb9,0xe8,0x9c,0xa8,0xe8,0x9d,0xab,0xe8,0x9e,0x86,0xe4,0x97,0x97,0xe8,0x9f,0xa1,0xe8,0xa0,0x81,0xe4,0x97,0xb9,0xe8,0xa1,0xa0,0xe8,0xa1,
3299
  0xa3,0xf0,0xa7,0x99,0xa7,0xe8,0xa3,0x97,0xe8,0xa3,0x9e,0xe4,0x98,0xb5,0xe8,0xa3,0xba,0xe3,0x92,0xbb,0xf0,0xa7,0xa2,0xae,0xf0,0xa7,0xa5,0xa6,0xe4,0x9a,0xbe,0xe4,
3300
  0x9b,0x87,0xe8,0xaa,0xa0,0xe8,0xab,0xad,0xe8,0xae,0x8a,0xe8,0xb1,0x95,0xf0,0xa7,0xb2,0xa8,0xe8,0xb2,0xab,0xe8,0xb3,0x81,0xe8,0xb4,0x9b,0xe8,0xb5,0xb7,0xf0,0xa7,
3301
  0xbc,0xaf,0xf0,0xa0,0xa0,0x84,0xe8,0xb7,0x8b,0xe8,0xb6,0xbc,0xe8,0xb7,0xb0,0xf0,0xa0,0xa3,0x9e,0xe8,0xbb,0x94,0xe8,0xbc,0xb8,0xf0,0xa8,0x97,0x92,0xf0,0xa8,0x97,
3302
  0xad,0xe9,0x82,0x94,0xe9,0x83,0xb1,0xe9,0x84,0x91,0xf0,0xa8,0x9c,0xae,0xe9,0x84,0x9b,0xe9,0x88,0xb8,0xe9,0x8b,0x97,0xe9,0x8b,0x98,0xe9,0x89,0xbc,0xe9,0x8f,0xb9,
3303
  0xe9,0x90,0x95,0xf0,0xa8,0xaf,0xba,0xe9,0x96,0x8b,0xe4,0xa6,0x95,0xe9,0x96,0xb7,0xf0,0xa8,0xb5,0xb7,0xe4,0xa7,0xa6,0xe9,0x9b,0x83,0xe5,0xb6,0xb2,0xe9,0x9c,0xa3,
3304
  0xf0,0xa9,0x85,0x85,0xf0,0xa9,0x88,0x9a,0xe4,0xa9,0xae,0xe4,0xa9,0xb6,0xe9,0x9f,0xa0,0xf0,0xa9,0x90,0x8a,0xe4,0xaa,0xb2,0xf0,0xa9,0x92,0x96,0xe9,0xa0,0x8b,0xe9,
3305
  0xa0,0x8b,0xe9,0xa0,0xa9,0xf0,0xa9,0x96,0xb6,0xe9,0xa3,0xa2,0xe4,0xac,0xb3,0xe9,0xa4,0xa9,0xe9,0xa6,0xa7,0xe9,0xa7,0x82,0xe9,0xa7,0xbe,0xe4,0xaf,0x8e,0xf0,0xa9,
3306
  0xac,0xb0,0xe9,0xac,0x92,0xe9,0xb1,0x80,0xe9,0xb3,0xbd,0xe4,0xb3,0x8e,0xe4,0xb3,0xad,0xe9,0xb5,0xa7,0xf0,0xaa,0x83,0x8e,0xe4,0xb3,0xb8,0xf0,0xaa,0x84,0x85,0xf0,
3307
  0xaa,0x88,0x8e,0xf0,0xaa,0x8a,0x91,0xe9,0xba,0xbb,0xe4,0xb5,0x96,0xe9,0xbb,0xb9,0xe9,0xbb,0xbe,0xe9,0xbc,0x85,0xe9,0xbc,0x8f,0xe9,0xbc,0x96,0xe9,0xbc,0xbb,0xf0,
3308
  0xaa,0x98,0x80,
3309
};
3310
0
#define mxDecompositionCount2 1086
3311
static const txU2 gxDecompositionIndex2[mxDecompositionCount2] ICACHE_XS6RO_ATTR = {
3312
  0xF800,0x0000,0xF801,0x0003,0xF802,0x0006,0xF803,0x0009,0xF804,0x000D,0xF805,0x0010,0xF806,0x0013,0xF807,0x0016,0xF808,0x0019,0xF809,0x001C,0xF80A,0x001F,0xF80B,0x0022,0xF80C,0x0025,0xF80D,0x0028,0xF80E,0x002C,0xF80F,0x002F,
3313
  0xF810,0x0032,0xF811,0x0035,0xF812,0x0038,0xF813,0x003C,0xF814,0x003F,0xF815,0x0042,0xF816,0x0045,0xF817,0x0049,0xF818,0x004C,0xF819,0x004F,0xF81A,0x0052,0xF81B,0x0055,0xF81C,0x0058,0xF81D,0x005C,0xF81E,0x005F,0xF81F,0x0062,
3314
  0xF820,0x0065,0xF821,0x0068,0xF822,0x006B,0xF823,0x006E,0xF824,0x0071,0xF825,0x0074,0xF826,0x0077,0xF827,0x007A,0xF828,0x007D,0xF829,0x0080,0xF82A,0x0083,0xF82B,0x0086,0xF82C,0x0089,0xF82D,0x008C,0xF82E,0x008F,0xF82F,0x0092,
3315
  0xF830,0x0095,0xF831,0x0098,0xF832,0x009B,0xF833,0x009E,0xF834,0x00A1,0xF835,0x00A5,0xF836,0x00A8,0xF837,0x00AB,0xF838,0x00AE,0xF839,0x00B2,0xF83A,0x00B5,0xF83B,0x00B8,0xF83C,0x00BB,0xF83D,0x00BE,0xF83E,0x00C1,0xF83F,0x00C4,
3316
  0xF840,0x00C7,0xF841,0x00CA,0xF842,0x00CD,0xF843,0x00D0,0xF844,0x00D3,0xF845,0x00D6,0xF846,0x00D9,0xF847,0x00DC,0xF848,0x00DF,0xF849,0x00E2,0xF84A,0x00E5,0xF84B,0x00E8,0xF84C,0x00EB,0xF84D,0x00EE,0xF84E,0x00F1,0xF84F,0x00F4,
3317
  0xF850,0x00F7,0xF851,0x00FA,0xF852,0x00FD,0xF853,0x0100,0xF854,0x0103,0xF855,0x0106,0xF856,0x0109,0xF857,0x010C,0xF858,0x010F,0xF859,0x0112,0xF85A,0x0116,0xF85B,0x0119,0xF85C,0x011C,0xF85D,0x011F,0xF85E,0x0122,0xF85F,0x0125,
3318
  0xF860,0x0128,0xF861,0x012C,0xF862,0x0130,0xF863,0x0133,0xF864,0x0136,0xF865,0x0139,0xF866,0x013C,0xF867,0x013F,0xF868,0x0142,0xF869,0x0145,0xF86A,0x0148,0xF86B,0x014B,0xF86C,0x014E,0xF86D,0x0152,0xF86E,0x0155,0xF86F,0x0158,
3319
  0xF870,0x015B,0xF871,0x015E,0xF872,0x0162,0xF873,0x0165,0xF874,0x0168,0xF875,0x016B,0xF876,0x016E,0xF877,0x0171,0xF878,0x0174,0xF879,0x0177,0xF87A,0x017A,0xF87B,0x017D,0xF87C,0x0181,0xF87D,0x0184,0xF87E,0x0188,0xF87F,0x018B,
3320
  0xF880,0x018E,0xF881,0x0191,0xF882,0x0194,0xF883,0x0197,0xF884,0x019A,0xF885,0x019D,0xF886,0x01A0,0xF887,0x01A3,0xF888,0x01A6,0xF889,0x01A9,0xF88A,0x01AD,0xF88B,0x01B0,0xF88C,0x01B3,0xF88D,0x01B6,0xF88E,0x01B9,0xF88F,0x01BC,
3321
  0xF890,0x01C0,0xF891,0x01C3,0xF892,0x01C7,0xF893,0x01CB,0xF894,0x01CE,0xF895,0x01D1,0xF896,0x01D4,0xF897,0x01D7,0xF898,0x01DB,0xF899,0x01DF,0xF89A,0x01E2,0xF89B,0x01E5,0xF89C,0x01E8,0xF89D,0x01EB,0xF89E,0x01EE,0xF89F,0x01F1,
3322
  0xF8A0,0x01F4,0xF8A1,0x01F7,0xF8A2,0x01FA,0xF8A3,0x01FD,0xF8A4,0x0200,0xF8A5,0x0204,0xF8A6,0x0207,0xF8A7,0x020A,0xF8A8,0x020D,0xF8A9,0x0210,0xF8AA,0x0213,0xF8AB,0x0216,0xF8AC,0x0219,0xF8AD,0x021C,0xF8AE,0x021F,0xF8AF,0x0222,
3323
  0xF8B0,0x0225,0xF8B1,0x0228,0xF8B2,0x022B,0xF8B3,0x022E,0xF8B4,0x0231,0xF8B5,0x0234,0xF8B6,0x0237,0xF8B7,0x023A,0xF8B8,0x023D,0xF8B9,0x0241,0xF8BA,0x0244,0xF8BB,0x0247,0xF8BC,0x024A,0xF8BD,0x024D,0xF8BE,0x0250,0xF8BF,0x0254,
3324
  0xF8C0,0x0257,0xF8C1,0x025A,0xF8C2,0x025D,0xF8C3,0x0260,0xF8C4,0x0263,0xF8C5,0x0266,0xF8C6,0x0269,0xF8C7,0x026C,0xF8C8,0x026F,0xF8C9,0x0272,0xF8CA,0x0275,0xF8CB,0x0279,0xF8CC,0x027C,0xF8CD,0x027F,0xF8CE,0x0282,0xF8CF,0x0285,
3325
  0xF8D0,0x0288,0xF8D1,0x028B,0xF8D2,0x028E,0xF8D3,0x0291,0xF8D4,0x0294,0xF8D5,0x0297,0xF8D6,0x029A,0xF8D7,0x029D,0xF8D8,0x02A0,0xF8D9,0x02A3,0xF8DA,0x02A6,0xF8DB,0x02A9,0xF8DC,0x02AC,0xF8DD,0x02AF,0xF8DE,0x02B3,0xF8DF,0x02B6,
3326
  0xF8E0,0x02B9,0xF8E1,0x02BC,0xF8E2,0x02BF,0xF8E3,0x02C2,0xF8E4,0x02C6,0xF8E5,0x02C9,0xF8E6,0x02CC,0xF8E7,0x02CF,0xF8E8,0x02D2,0xF8E9,0x02D5,0xF8EA,0x02D8,0xF8EB,0x02DB,0xF8EC,0x02DE,0xF8ED,0x02E2,0xF8EE,0x02E5,0xF8EF,0x02E8,
3327
  0xF8F0,0x02EB,0xF8F1,0x02EF,0xF8F2,0x02F2,0xF8F3,0x02F5,0xF8F4,0x02F8,0xF8F5,0x02FB,0xF8F6,0x02FE,0xF8F7,0x0301,0xF8F8,0x0305,0xF8F9,0x0309,0xF8FA,0x030D,0xF8FB,0x0310,0xF8FC,0x0314,0xF8FD,0x0317,0xF8FE,0x031A,0xF8FF,0x031D,
3328
  0xF900,0x0320,0xF901,0x0323,0xF902,0x0326,0xF903,0x0329,0xF904,0x032C,0xF905,0x032F,0xF906,0x0332,0xF907,0x0336,0xF908,0x0339,0xF909,0x033C,0xF90A,0x033F,0xF90B,0x0342,0xF90C,0x0345,0xF90D,0x0348,0xF90E,0x034C,0xF90F,0x034F,
3329
  0xF910,0x0352,0xF911,0x0356,0xF912,0x035A,0xF913,0x035D,0xF914,0x0360,0xF915,0x0363,0xF916,0x0366,0xF917,0x0369,0xF918,0x036C,0xF919,0x036F,0xF91A,0x0372,0xF91B,0x0375,0xF91C,0x0379,0xF91D,0x037C,0xF91E,0x0380,0xF91F,0x0383,
3330
  0xF920,0x0387,0xF921,0x038A,0xF922,0x038D,0xF923,0x0390,0xF924,0x0394,0xF925,0x0397,0xF926,0x039A,0xF927,0x039E,0xF928,0x03A2,0xF929,0x03A5,0xF92A,0x03A8,0xF92B,0x03AB,0xF92C,0x03AE,0xF92D,0x03B1,0xF92E,0x03B4,0xF92F,0x03B7,
3331
  0xF930,0x03BA,0xF931,0x03BD,0xF932,0x03C0,0xF933,0x03C3,0xF934,0x03C6,0xF935,0x03C9,0xF936,0x03CD,0xF937,0x03D0,0xF938,0x03D4,0xF939,0x03D7,0xF93A,0x03DB,0xF93B,0x03DE,0xF93C,0x03E2,0xF93D,0x03E6,0xF93E,0x03EA,0xF93F,0x03ED,
3332
  0xF940,0x03F0,0xF941,0x03F3,0xF942,0x03F7,0xF943,0x03FB,0xF944,0x03FF,0xF945,0x0403,0xF946,0x0406,0xF947,0x0409,0xF948,0x040C,0xF949,0x040F,0xF94A,0x0412,0xF94B,0x0415,0xF94C,0x0418,0xF94D,0x041B,0xF94E,0x041F,0xF94F,0x0422,
3333
  0xF950,0x0425,0xF951,0x0428,0xF952,0x042B,0xF953,0x042F,0xF954,0x0432,0xF955,0x0436,0xF956,0x043A,0xF957,0x043D,0xF958,0x0440,0xF959,0x0443,0xF95A,0x0446,0xF95B,0x0449,0xF95C,0x044C,0xF95D,0x0450,0xF95E,0x0454,0xF95F,0x0458,
3334
  0xF960,0x045B,0xF961,0x045E,0xF962,0x0462,0xF963,0x0465,0xF964,0x0468,0xF965,0x046B,0xF966,0x046F,0xF967,0x0472,0xF968,0x0475,0xF969,0x0478,0xF96A,0x047B,0xF96B,0x047E,0xF96C,0x0482,0xF96D,0x0485,0xF96E,0x0488,0xF96F,0x048B,
3335
  0xF970,0x048E,0xF971,0x0491,0xF972,0x0494,0xF973,0x0498,0xF974,0x049C,0xF975,0x049F,0xF976,0x04A3,0xF977,0x04A6,0xF978,0x04AA,0xF979,0x04AD,0xF97A,0x04B0,0xF97B,0x04B3,0xF97C,0x04B7,0xF97D,0x04BB,0xF97E,0x04BE,0xF97F,0x04C2,
3336
  0xF980,0x04C5,0xF981,0x04C9,0xF982,0x04CC,0xF983,0x04CF,0xF984,0x04D2,0xF985,0x04D5,0xF986,0x04D8,0xF987,0x04DB,0xF988,0x04DF,0xF989,0x04E3,0xF98A,0x04E7,0xF98B,0x04EB,0xF98C,0x04EE,0xF98D,0x04F1,0xF98E,0x04F4,0xF98F,0x04F7,
3337
  0xF990,0x04FA,0xF991,0x04FD,0xF992,0x0500,0xF993,0x0503,0xF994,0x0506,0xF995,0x0509,0xF996,0x050C,0xF997,0x050F,0xF998,0x0513,0xF999,0x0516,0xF99A,0x0519,0xF99B,0x051C,0xF99C,0x051F,0xF99D,0x0522,0xF99E,0x0525,0xF99F,0x0528,
3338
  0xF9A0,0x052B,0xF9A1,0x052E,0xF9A2,0x0531,0xF9A3,0x0534,0xF9A4,0x0537,0xF9A5,0x053B,0xF9A6,0x053F,0xF9A7,0x0543,0xF9A8,0x0546,0xF9A9,0x0549,0xF9AA,0x054C,0xF9AB,0x054F,0xF9AC,0x0553,0xF9AD,0x0556,0xF9AE,0x055A,0xF9AF,0x055D,
3339
  0xF9B0,0x0560,0xF9B1,0x0564,0xF9B2,0x0568,0xF9B3,0x056B,0xF9B4,0x056E,0xF9B5,0x0571,0xF9B6,0x0574,0xF9B7,0x0577,0xF9B8,0x057A,0xF9B9,0x057D,0xF9BA,0x0580,0xF9BB,0x0583,0xF9BC,0x0586,0xF9BD,0x0589,0xF9BE,0x058C,0xF9BF,0x058F,
3340
  0xF9C0,0x0592,0xF9C1,0x0595,0xF9C2,0x0598,0xF9C3,0x059B,0xF9C4,0x059E,0xF9C5,0x05A1,0xF9C6,0x05A5,0xF9C7,0x05A8,0xF9C8,0x05AB,0xF9C9,0x05AE,0xF9CA,0x05B1,0xF9CB,0x05B4,0xF9CC,0x05B8,0xF9CD,0x05BC,0xF9CE,0x05BF,0xF9CF,0x05C2,
3341
  0xF9D0,0x05C5,0xF9D1,0x05C8,0xF9D2,0x05CB,0xF9D3,0x05CE,0xF9D4,0x05D2,0xF9D5,0x05D5,0xF9D6,0x05D8,0xF9D7,0x05DB,0xF9D8,0x05DE,0xF9D9,0x05E2,0xF9DA,0x05E6,0xF9DB,0x05E9,0xF9DC,0x05EC,0xF9DD,0x05EF,0xF9DE,0x05F3,0xF9DF,0x05F6,
3342
  0xF9E0,0x05F9,0xF9E1,0x05FD,0xF9E2,0x0601,0xF9E3,0x0604,0xF9E4,0x0607,0xF9E5,0x060A,0xF9E6,0x060E,0xF9E7,0x0611,0xF9E8,0x0614,0xF9E9,0x0617,0xF9EA,0x061A,0xF9EB,0x061D,0xF9EC,0x0620,0xF9ED,0x0623,0xF9EE,0x0627,0xF9EF,0x062A,
3343
  0xF9F0,0x062D,0xF9F1,0x0630,0xF9F2,0x0634,0xF9F3,0x0637,0xF9F4,0x063A,0xF9F5,0x063D,0xF9F6,0x0640,0xF9F7,0x0644,0xF9F8,0x0648,0xF9F9,0x064B,0xF9FA,0x064E,0xF9FB,0x0651,0xF9FC,0x0655,0xF9FD,0x0658,0xF9FE,0x065C,0xF9FF,0x065F,
3344
  0xFA00,0x0662,0xFA01,0x0665,0xFA02,0x0669,0xFA03,0x066C,0xFA04,0x066F,0xFA05,0x0672,0xFA06,0x0675,0xFA07,0x0678,0xFA08,0x067B,0xFA09,0x067E,0xFA0A,0x0682,0xFA0B,0x0685,0xFA0C,0x0688,0xFA0D,0x068B,0xFA0E,0x068E,0xFA0F,0x0691,
3345
  0xFA10,0x0694,0xFA11,0x0698,0xFA12,0x069B,0xFA13,0x069F,0xFA14,0x06A3,0xFA15,0x06A7,0xFA16,0x06AA,0xFA17,0x06AD,0xFA18,0x06B0,0xFA19,0x06B3,0xFA1A,0x06B6,0xFA1B,0x06B9,0xFA1C,0x06BC,0xFA1D,0x06BF,0xFFFF,0x06C3,
3346
};
3347
#define mxDecompositionBufferCount 18
3348
3349
0
#define mxSourceBufferCount 32
3350
3351
0
#define mxHangulSBase 0xAC00
3352
0
#define mxHangulSCount 11172
3353
0
#define mxHangulLBase 0x1100
3354
0
#define mxHangulLCount 19
3355
0
#define mxHangulVBase 0x1161
3356
0
#define mxHangulVCount 21
3357
0
#define mxHangulTBase 0x11A7
3358
0
#define mxHangulTCount 28
3359
0
#define mxHangulNCount 588
3360
3361
static int fxCompareCombination(const void *p1, const void *p2);
3362
static int fxCompareComposition(const void *p1, const void *p2);
3363
static txInteger fxGetCombinationOrder(txInteger character);
3364
static txInteger fxGetCompositionPairs(txInteger character, txU2** pairs, txInteger* pairCount);
3365
static txInteger fxGetCompositionStarterCode(txInteger character, txU2* pairs, txInteger pairCount);
3366
static txInteger fxGetDecompositionBuffer(txInteger character, txInteger* buffer, txFlag compatible);
3367
static void fxInsertDecomposition(txMachine* the, txNormalizeBuffer* buffer, txInteger at, txInteger code);
3368
static void fxNormalizeComposition(txMachine* the, txNormalizeBuffer* buffer);
3369
static void fxNormalizeDecomposition(txMachine* the, txNormalizeBuffer* buffer, txInteger* source, txInteger c, txFlag compatible);
3370
3371
int fxCompareCombination(const void *p1, const void *p2)
3372
0
{
3373
0
  txCombination* c1 = (txCombination*)p1;
3374
0
  txCombination* c2 = (txCombination*)p2;
3375
0
  if (c1->code + c1->count <= c2->code)
3376
0
    return -1;
3377
0
  if (c1->code >= c2->code + c2->count)
3378
0
    return 1;
3379
0
  return 0;
3380
0
}
3381
3382
int fxCompareComposition(const void *p1, const void *p2)
3383
0
{
3384
0
  txU2 c1 = *((txU2*)p1);
3385
0
  txU2 c2 = *((txU2*)p2);
3386
0
  if (c1 < c2)
3387
0
    return -1;
3388
0
  if (c1 > c2)
3389
0
    return 1;
3390
0
  return 0;
3391
0
}
3392
3393
txInteger fxGetCombinationOrder(txInteger character)
3394
0
{
3395
0
  txInteger count;
3396
0
  txCombination *index, *it;
3397
0
  txCombination combination;
3398
0
  if (character < 0x10000) {
3399
0
    count = mxCombinationCount0;
3400
0
    index = (txCombination*)gxCombinationIndex0;
3401
0
    combination.code = (txU2)character;
3402
0
  }
3403
0
  else {
3404
0
    count = mxCombinationCount1;
3405
0
    index = (txCombination*)gxCombinationIndex1;
3406
0
    combination.code = (txU2)(character & 0xFFFF);
3407
0
  }
3408
0
  combination.count = 1;
3409
0
  combination.order = 0;
3410
0
  it = (txCombination*)c_bsearch(&combination, index, count, sizeof(txCombination), fxCompareCombination);
3411
0
  if (it)
3412
0
    return it->order;
3413
0
  return 0;
3414
0
}
3415
3416
txInteger fxGetCompositionPairs(txInteger character, txU2** pairs, txInteger* pairCount)
3417
0
{
3418
0
  txInteger count;
3419
0
  txU2 *index, *data, code, *it;
3420
0
  if (character < 0x10000) {
3421
0
    count = mxCompositionCount0;
3422
0
    index = (txU2*)gxCompositionIndex0;
3423
0
    data = (txU2*)gxCompositionData0;
3424
0
    code = (txU2)character;
3425
0
  }
3426
0
  else {
3427
0
    count = mxCompositionCount1;
3428
0
    index =(txU2*)gxCompositionIndex1;
3429
0
    data = (txU2*)gxCompositionData1;
3430
0
    code = (txU2)(character & 0xFFFF);
3431
0
  }
3432
0
  it = (txU2*)c_bsearch(&code, index, (count - 1) >> 1, sizeof(txU2) << 1, fxCompareComposition);
3433
0
  if (it) {
3434
0
    *pairs = data + (it[1] << 1);
3435
0
    *pairCount = it[3] - it[1];
3436
0
    return 1;
3437
0
  }
3438
0
  return 0;
3439
0
}
3440
3441
txInteger fxGetCompositionStarterCode(txInteger character, txU2* pairs, txInteger pairCount)
3442
0
{
3443
0
  txU2 code, *it;
3444
0
  txInteger plane;
3445
0
  if (character < 0x10000) {
3446
0
    code = (txU2)character;
3447
0
    plane = 0;
3448
0
  }
3449
0
  else {
3450
0
    code = (txU2)(character & 0xFFFF);
3451
0
    plane = 0x10000;
3452
0
  }
3453
0
  it = (txU2*)c_bsearch(&code, pairs, pairCount, sizeof(txU2) << 1, fxCompareComposition);
3454
0
  if (it)
3455
0
    return ((txInteger)it[1]) | plane;
3456
0
  return 0;
3457
0
}
3458
3459
txInteger fxGetDecompositionBuffer(txInteger character, txInteger* buffer, txFlag compatible)
3460
0
{
3461
0
  txInteger count;
3462
0
  txU2 *index, code, *it;
3463
0
  txString data;
3464
0
  if (character < 0x10000) {
3465
0
    count = mxDecompositionCount0;
3466
0
    index = (txU2*)gxDecompositionIndex0;
3467
0
    data = (txString)gxDecompositionData0;
3468
0
    code = (txU2)character;
3469
0
  }
3470
0
  else if (character < 0x20000) {
3471
0
    count = mxDecompositionCount1;
3472
0
    index = (txU2*)gxDecompositionIndex1;
3473
0
    data = (txString)gxDecompositionData1;
3474
0
    code = (txU2)(character & 0xFFFF);
3475
0
  }
3476
0
  else {
3477
0
    count = mxDecompositionCount2;
3478
0
    index = (txU2*)gxDecompositionIndex2;
3479
0
    data = (txString)gxDecompositionData2;
3480
0
    code = (txU2)(character & 0xFFFF);
3481
0
  }
3482
0
  it = (txU2*)c_bsearch(&code, index, (count - 1) >> 1, sizeof(txU2) << 1, fxCompareComposition);
3483
0
  if (it) {
3484
0
    txInteger offset = it[1];
3485
0
    txString p, q;
3486
0
    txInteger* r;
3487
0
    if (offset & 0x8000) {
3488
0
      if (!compatible)
3489
0
        return 0;
3490
0
      offset &= 0x7FFF;
3491
0
    }
3492
0
    p = data + offset;
3493
0
    q = p + ((it[3] & 0x7FFF) - offset);
3494
0
    r = buffer;
3495
0
    while (p < q)
3496
0
      p = fxUTF8Decode(p, r++);
3497
0
    return mxPtrDiff(r - buffer);
3498
0
  }
3499
0
  return 0;
3500
0
}
3501
3502
void fxInsertDecomposition(txMachine* the, txNormalizeBuffer* buffer, txInteger at, txInteger code)
3503
0
{
3504
0
  txInteger resultLength = fxGetArrayBufferLength(the, buffer->slot);
3505
0
  if (buffer->count == resultLength >> 2) {
3506
0
    fxSetArrayBufferLength(the, the->stack, resultLength + 64);
3507
0
    buffer->address = fxToArrayBuffer(the, the->stack);
3508
0
  }
3509
0
  if (at < buffer->count)
3510
0
    c_memmove(buffer->address + at + 1, buffer->address + at, (buffer->count - at) << 2);
3511
0
  buffer->address[at] = code;
3512
0
  buffer->count++;
3513
0
}
3514
3515
void fxNormalizeComposition(txMachine* the, txNormalizeBuffer* buffer)
3516
0
{
3517
0
  txInteger fromIndex = 1;
3518
0
  txInteger toIndex = 1;
3519
0
  if (buffer->count < 2)
3520
0
    return;
3521
0
  while (fromIndex < buffer->count) {
3522
0
    txBoolean flag = 1;
3523
0
    txInteger code = buffer->address[fromIndex];
3524
0
    txU2* pairs;
3525
0
    txInteger pairCount;
3526
0
    txInteger pairFlag;
3527
0
    if ((mxHangulVBase <= code) && (code < mxHangulVBase + mxHangulVCount))
3528
0
      pairFlag = 3;
3529
0
    else if ((mxHangulTBase <= code) && (code < mxHangulTBase + mxHangulTCount))
3530
0
      pairFlag = 2;
3531
0
    else
3532
0
      pairFlag = fxGetCompositionPairs(code, &pairs, &pairCount);
3533
0
    if (pairFlag) {
3534
0
      txInteger order = fxGetCombinationOrder(code);
3535
0
      txInteger starterIndex = toIndex - 1;
3536
0
      while (starterIndex >= 0) {
3537
0
        txInteger starterCode = buffer->address[starterIndex];
3538
0
        txInteger starterOrder = fxGetCombinationOrder(starterCode);
3539
0
        if (starterOrder == 0) {
3540
0
          if (pairFlag == 3) {
3541
0
            if ((mxHangulLBase <= starterCode) && (starterCode < mxHangulLBase + mxHangulLCount)) {
3542
0
              starterCode -= mxHangulLBase;
3543
0
              code -= mxHangulVBase;
3544
0
              buffer->address[starterIndex] = mxHangulSBase + (starterCode * mxHangulNCount) + (code * mxHangulTCount);
3545
0
              flag = 0;
3546
0
            }
3547
0
          }
3548
0
          else if (pairFlag == 2) {
3549
0
            if ((mxHangulSBase <= starterCode) && (starterCode < mxHangulSBase + mxHangulSCount) 
3550
0
                && ((starterCode - mxHangulSBase) % mxHangulTCount == 0)) {
3551
0
              buffer->address[starterIndex] = starterCode + code - mxHangulTBase;
3552
0
              flag = 0;
3553
0
            }
3554
0
          }
3555
0
          else {
3556
0
            starterCode = fxGetCompositionStarterCode(starterCode, pairs, pairCount);
3557
0
            if (starterCode) {
3558
0
              buffer->address[starterIndex] = starterCode;
3559
0
              flag = 0;
3560
0
            }
3561
0
          }
3562
0
          break;
3563
0
        }
3564
0
        if (starterOrder >= order)
3565
0
          break;
3566
0
        starterIndex--;
3567
0
      }
3568
0
    }
3569
0
    if (flag) {
3570
0
      buffer->address[toIndex] = code;
3571
0
      toIndex++;
3572
0
    }
3573
0
    fromIndex++;
3574
0
  }
3575
0
  buffer->count = toIndex;
3576
0
}
3577
3578
void fxNormalizeDecomposition(txMachine* the, txNormalizeBuffer* buffer, txInteger* source, txInteger c, txFlag compatible)
3579
0
{
3580
0
  txInteger i;
3581
0
  for (i = 0; i < c; i++) {
3582
0
    txInteger code = source[i];
3583
0
    if ((mxHangulSBase <= code) && (code < mxHangulSBase + mxHangulSCount)) {
3584
0
      txInteger sIndex = code - mxHangulSBase;
3585
0
      txInteger lIndex = sIndex / mxHangulNCount;
3586
0
      txInteger vIndex = (sIndex % mxHangulNCount) / mxHangulTCount;
3587
0
      txInteger tIndex = sIndex % mxHangulTCount;
3588
0
      fxInsertDecomposition(the, buffer, buffer->count, mxHangulLBase + lIndex);
3589
0
      fxInsertDecomposition(the, buffer, buffer->count, mxHangulVBase + vIndex);
3590
0
      if (tIndex > 0)
3591
0
        fxInsertDecomposition(the, buffer, buffer->count, mxHangulTBase + tIndex);
3592
0
      buffer->starterIndex = buffer->count;
3593
0
    }
3594
0
    else {
3595
0
      txInteger decompositionBuffer[mxDecompositionBufferCount];
3596
0
      txInteger decompositionCount = fxGetDecompositionBuffer(code, decompositionBuffer, compatible);
3597
0
      if (decompositionCount == 0) {
3598
0
        txInteger order = fxGetCombinationOrder(code);
3599
0
        if (order == 0) {
3600
0
          fxInsertDecomposition(the, buffer, buffer->count, code);
3601
0
          buffer->starterIndex = buffer->count;
3602
0
        }
3603
0
        else {
3604
0
          txInteger bufferIndex = buffer->count - 1;
3605
0
          txInteger starterIndex = buffer->starterIndex - 1;
3606
0
          while (bufferIndex > starterIndex) {
3607
0
            txInteger starterCode = buffer->address[bufferIndex];
3608
0
            txInteger starterOrder = fxGetCombinationOrder(starterCode);
3609
0
            if (starterOrder <= order) {
3610
0
              fxInsertDecomposition(the, buffer, bufferIndex + 1, code);
3611
0
              break;
3612
0
            }
3613
0
            bufferIndex--;
3614
0
          }
3615
0
          if (bufferIndex == starterIndex)
3616
0
            fxInsertDecomposition(the, buffer, bufferIndex + 1, code);
3617
0
        }
3618
0
      }
3619
0
      else
3620
0
        fxNormalizeDecomposition(the, buffer, decompositionBuffer, decompositionCount, compatible);
3621
0
    }
3622
0
  }
3623
0
}
3624
3625
void fxNormalizeString(txMachine* the, txSlot* string, txFlag form)
3626
0
{
3627
0
  txNormalizeBuffer _buffer;
3628
0
  txNormalizeBuffer* buffer = &_buffer;
3629
0
  txInteger source[mxSourceBufferCount];
3630
0
  txString p;
3631
3632
0
  mxPushUndefined();
3633
0
  buffer->slot = the->stack;
3634
0
  buffer->address = fxArrayBuffer(the, the->stack, C_NULL, 64, 0x7FFFFFFF);
3635
0
  buffer->count = 0;
3636
0
  buffer->starterIndex = 0;
3637
3638
0
  p = string->value.string;
3639
0
  for (;;) {
3640
0
    txInteger* sourceAddress = source;
3641
0
    txInteger sourceIndex = 0;
3642
0
    while (sourceIndex < mxSourceBufferCount) {
3643
0
      p = mxStringByteDecode(p, sourceAddress);
3644
0
      if (*sourceAddress == C_EOF)
3645
0
        break;
3646
0
      sourceAddress++;
3647
0
      sourceIndex++;
3648
0
    }
3649
0
    if (sourceIndex) {
3650
0
      txInteger offset = mxPtrDiff(p - string->value.string);
3651
0
      fxNormalizeDecomposition(the, buffer, source, sourceIndex, form & 1);
3652
0
      p = string->value.string + offset;
3653
0
    }
3654
0
    if (sourceIndex < mxSourceBufferCount)
3655
0
      break;
3656
0
  }
3657
0
  if (form & 2)
3658
0
    fxNormalizeComposition(the, buffer);
3659
0
  if (buffer->count) {
3660
0
    txInteger resultIndex;
3661
0
    txInteger stringLength = 0;
3662
0
    for (resultIndex = 0; resultIndex < buffer->count; resultIndex++)
3663
0
      stringLength += mxStringByteLength(buffer->address[resultIndex]);
3664
0
    stringLength++;
3665
0
    p = string->value.string = fxNewChunk(the, stringLength);
3666
0
    buffer->address = fxToArrayBuffer(the, the->stack);
3667
0
    for (resultIndex = 0; resultIndex < buffer->count; resultIndex++)
3668
0
      p = mxStringByteEncode(p, buffer->address[resultIndex]);
3669
0
    *p = 0;
3670
0
  }
3671
  
3672
0
  mxPop();
3673
0
}
3674
3675
#endif