diff --git a/backend/CMakeLists.txt b/backend/CMakeLists.txt index d4b9356d..19c47dd3 100644 --- a/backend/CMakeLists.txt +++ b/backend/CMakeLists.txt @@ -4,7 +4,7 @@ project(zint) find_package(PNG) -set(zint_COMMON_SRCS common.c library.c render.c large.c reedsol.c gs1.c eci.c general_field.c) +set(zint_COMMON_SRCS common.c library.c large.c reedsol.c gs1.c eci.c general_field.c sjis.c) set(zint_ONEDIM_SRCS code.c code128.c 2of5.c upcean.c telepen.c medical.c plessey.c rss.c) set(zint_POSTAL_SRCS postal.c auspost.c imail.c mailmark.c) set(zint_TWODIM_SRCS code16k.c codablock.c dmatrix.c pdf417.c qr.c maxicode.c composite.c aztec.c code49.c code1.c gridmtx.c hanxin.c dotcode.c ultra.c) diff --git a/backend/aztec.c b/backend/aztec.c index 9ed059c1..2d334bdd 100644 --- a/backend/aztec.c +++ b/backend/aztec.c @@ -29,6 +29,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include #include @@ -987,7 +988,7 @@ int aztec(struct zint_symbol *symbol, unsigned char source[], const size_t lengt memset(binary_string, 0, 20000); memset(adjusted_string, 0, 20000); - if (symbol->input_mode == GS1_MODE) { + if ((symbol->input_mode & 0x07) == GS1_MODE) { gs1 = 1; } else { gs1 = 0; diff --git a/backend/codablock.c b/backend/codablock.c index 2f49ea28..ea35a2d8 100644 --- a/backend/codablock.c +++ b/backend/codablock.c @@ -29,6 +29,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include #include @@ -660,7 +661,7 @@ int codablock(struct zint_symbol *symbol,const unsigned char source[], const siz return ZINT_ERROR_INVALID_OPTION; } /* GS1 not implemented */ - if (symbol->input_mode == GS1_MODE) { + if ((symbol->input_mode & 0x07) == GS1_MODE) { strcpy(symbol->errtxt, "412: GS1 mode not supported"); return ZINT_ERROR_INVALID_OPTION; } diff --git a/backend/code1.c b/backend/code1.c index 62b09a66..a7a186b0 100644 --- a/backend/code1.c +++ b/backend/code1.c @@ -29,6 +29,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include "common.h" #include "code1.h" @@ -369,7 +370,7 @@ int c1_encode(struct zint_symbol *symbol, unsigned char source[], unsigned int t edi_p = 0; strcpy(decimal_binary, ""); - if (symbol->input_mode == GS1_MODE) { + if ((symbol->input_mode & 0x07) == GS1_MODE) { gs1 = 1; } else { gs1 = 0; diff --git a/backend/code16k.c b/backend/code16k.c index 86fd6c25..58ac43c8 100644 --- a/backend/code16k.c +++ b/backend/code16k.c @@ -29,6 +29,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ /* Updated to comply with BS EN 12323:2005 */ @@ -273,7 +274,7 @@ int code16k(struct zint_symbol *symbol, unsigned char source[], const size_t len strcpy(width_pattern, ""); input_length = length; - if (symbol->input_mode == GS1_MODE) { + if ((symbol->input_mode & 0x07) == GS1_MODE) { gs1 = 1; } else { gs1 = 0; diff --git a/backend/code49.c b/backend/code49.c index 4ffcdb35..42142db6 100644 --- a/backend/code49.c +++ b/backend/code49.c @@ -29,6 +29,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include #include @@ -55,7 +56,7 @@ int code_49(struct zint_symbol *symbol, unsigned char source[], const int length strcpy(symbol->errtxt, "430: Input too long"); return ZINT_ERROR_TOO_LONG; } - if (symbol->input_mode == GS1_MODE) { + if ((symbol->input_mode & 0x07) == GS1_MODE) { gs1 = 1; strcpy(intermediate, "*"); /* FNC1 */ } else { diff --git a/backend/common.c b/backend/common.c index ac302214..69e4ce64 100644 --- a/backend/common.c +++ b/backend/common.c @@ -260,56 +260,81 @@ int istwodigits(const unsigned char source[], const size_t position) { return 0; } +/* State machine to decode UTF-8 to Unicode codepoints (state 0 means done, state 12 means error) */ +unsigned int decode_utf8(unsigned int* state, unsigned int* codep, const unsigned char byte) { + /* + Copyright (c) 2008-2009 Bjoern Hoehrmann + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation + files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, + modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + + See https://bjoern.hoehrmann.de/utf-8/decoder/dfa/ for details. + */ + + static const unsigned char utf8d[] = { + /* The first part of the table maps bytes to character classes that + * reduce the size of the transition table and create bitmasks. */ + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 8,8,2,2,2,2,2,2,2,2,2,2,2,2,2,2, 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2, + 10,3,3,3,3,3,3,3,3,3,3,3,3,4,3,3, 11,6,6,6,5,8,8,8,8,8,8,8,8,8,8,8, + + /* The second part is a transition table that maps a combination + * of a state of the automaton and a character class to a state. */ + 0,12,24,36,60,96,84,12,12,12,48,72, 12,12,12,12,12,12,12,12,12,12,12,12, + 12, 0,12,12,12,12,12, 0,12, 0,12,12, 12,24,12,12,12,12,12,24,12,24,12,12, + 12,12,12,12,12,12,12,24,12,12,12,12, 12,24,12,12,12,12,12,12,12,24,12,12, + 12,12,12,12,12,12,12,36,12,36,12,12, 12,36,12,12,12,12,12,36,12,36,12,12, + 12,36,12,12,12,12,12,12,12,12,12,12, + }; + + unsigned int type = utf8d[byte]; + + *codep = *state != 0 ? (byte & 0x3fu) | (*codep << 6) : (0xff >> type) & byte; + + *state = utf8d[256 + *state + type]; + + return *state; +} + +/* Convert UTF-8 to UTF-16 for codepoints <= U+FFFF (ie four-byte sequences (requiring UTF-16 surrogates) not allowed) */ int utf8toutf16(struct zint_symbol *symbol, const unsigned char source[], int vals[], size_t *length) { size_t bpos; - int jpos, error_number; - int next; + int jpos; + unsigned int codepoint, state = 0; bpos = 0; jpos = 0; - error_number = 0; - next = 0; - do { - if (source[bpos] <= 0x7f) { - /* 1 byte mode (7-bit ASCII) */ - vals[jpos] = source[bpos]; - next = bpos + 1; - jpos++; - } else { - if ((source[bpos] >= 0x80) && (source[bpos] <= 0xbf)) { - strcpy(symbol->errtxt, "240: Corrupt Unicode data"); - return ZINT_ERROR_INVALID_DATA; - } - if ((source[bpos] >= 0xc0) && (source[bpos] <= 0xc1)) { - strcpy(symbol->errtxt, "241: Overlong encoding not supported"); - return ZINT_ERROR_INVALID_DATA; - } + while (bpos < *length) { + do { + decode_utf8(&state, &codepoint, source[bpos++]); + } while (bpos < *length && state != 0 && state != 12); - if ((source[bpos] >= 0xc2) && (source[bpos] <= 0xdf)) { - /* 2 byte mode */ - vals[jpos] = ((source[bpos] & 0x1f) << 6) + (source[bpos + 1] & 0x3f); - next = bpos + 2; - jpos++; - } else - if ((source[bpos] >= 0xe0) && (source[bpos] <= 0xef)) { - /* 3 byte mode */ - vals[jpos] = ((source[bpos] & 0x0f) << 12) + ((source[bpos + 1] & 0x3f) << 6) + (source[bpos + 2] & 0x3f); - next = bpos + 3; - jpos++; - } else - if (source[bpos] >= 0xf0) { - strcpy(symbol->errtxt, "242: Unicode sequences of more than 3 bytes not supported"); - return ZINT_ERROR_INVALID_DATA; - } + if (state != 0) { + strcpy(symbol->errtxt, "240: Corrupt Unicode data"); + return ZINT_ERROR_INVALID_DATA; + } + if (codepoint > 0xffff) { + strcpy(symbol->errtxt, "242: Unicode sequences of more than 3 bytes not supported"); + return ZINT_ERROR_INVALID_DATA; } - bpos = next; + vals[jpos] = codepoint; + jpos++; - } while (bpos < *length); + } *length = jpos; - return error_number; + return 0; } diff --git a/backend/common.h b/backend/common.h index 3bb535d8..a359916f 100644 --- a/backend/common.h +++ b/backend/common.h @@ -73,6 +73,7 @@ extern "C" { extern int is_stackable(const int symbology); extern int is_extendable(const int symbology); extern int is_composite(const int symbology); + extern unsigned int decode_utf8(unsigned int* state, unsigned int* codep, const unsigned char byte); extern int utf8toutf16(struct zint_symbol *symbol, const unsigned char source[], int vals[], size_t *length); extern void set_minimum_height(struct zint_symbol *symbol, const int min_height); #ifdef __cplusplus diff --git a/backend/dmatrix.c b/backend/dmatrix.c index bec48d60..ed894577 100644 --- a/backend/dmatrix.c +++ b/backend/dmatrix.c @@ -37,6 +37,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include #include @@ -528,7 +529,7 @@ static int look_ahead_test(const unsigned char inputData[], const size_t sourcel /* Encodes data using ASCII, C40, Text, X12, EDIFACT or Base 256 modes as appropriate Supports encoding FNC1 in supporting systems */ -static int dm200encode(struct zint_symbol *symbol, const unsigned char source[], unsigned char target[], int *last_mode, size_t *length_p, int process_buffer[], int *process_p) { +static int dm200encode(struct zint_symbol *symbol, const unsigned char source[], unsigned char target[], int *last_mode, size_t *length_p, int process_buffer[], int *process_p, int *binlen_p) { size_t sp; int tp, i, gs1; @@ -536,9 +537,9 @@ static int dm200encode(struct zint_symbol *symbol, const unsigned char source[], size_t inputlen = *length_p; int debug = symbol->debug; #ifndef _MSC_VER - char binary[2 * inputlen]; + char binary[2 * inputlen + 1 + 4 + 1]; /* Allow for GS1/READER_INIT, ECI and nul chars overhead */ #else - char* binary = (char*) _alloca(2 * inputlen); + char* binary = (char*) _alloca(2 * inputlen + 1 + 4 + 1); #endif sp = 0; @@ -552,7 +553,7 @@ static int dm200encode(struct zint_symbol *symbol, const unsigned char source[], next_mode = DM_ASCII; /* gs1 flag values: 0: no gs1, 1: gs1 with FNC1 serparator, 2: GS separator */ - if (symbol->input_mode == GS1_MODE) { + if ((symbol->input_mode & 0x07) == GS1_MODE) { if (symbol->output_options & GS1_GS_SEPARATOR) { gs1 = 2; } else { @@ -971,7 +972,8 @@ static int dm200encode(struct zint_symbol *symbol, const unsigned char source[], } if (tp > 1558) { - return 0; + strcpy(symbol->errtxt, "520: Data too long to fit in symbol"); + return ZINT_ERROR_TOO_LONG; } } /* while */ @@ -1018,7 +1020,8 @@ static int dm200encode(struct zint_symbol *symbol, const unsigned char source[], } *(last_mode) = current_mode; - return tp; + *binlen_p = tp; + return 0; } static int dm200encode_remainder(unsigned char target[], int target_length, const unsigned char source[], const size_t inputlen, const int last_mode, const int process_buffer[], const int process_p, const int symbols_left) { @@ -1162,8 +1165,8 @@ static void add_tail(unsigned char target[], int tp, const int tail_length) { } int data_matrix_200(struct zint_symbol *symbol,const unsigned char source[], const size_t in_length) { - int i, skew = 0; - size_t inputlen=in_length; + int i, skew = 0; + size_t inputlen = in_length; unsigned char binary[2200]; int binlen; int process_buffer[8]; /* holds remaining data to finalised */ @@ -1175,11 +1178,9 @@ int data_matrix_200(struct zint_symbol *symbol,const unsigned char source[], con int symbols_left; /* inputlen may be decremented by 2 if macro character is used */ - binlen = dm200encode(symbol, source, binary, &last_mode, &inputlen, process_buffer, &process_p); - - if (binlen == 0) { - strcpy(symbol->errtxt, "520: Data too long to fit in symbol"); - return ZINT_ERROR_TOO_LONG; + error_number = dm200encode(symbol, source, binary, &last_mode, &inputlen, process_buffer, &process_p, &binlen); + if (error_number != 0) { + return error_number; } if ((symbol->option_2 >= 1) && (symbol->option_2 <= DMSIZESCOUNT)) { diff --git a/backend/dotcode.c b/backend/dotcode.c index c1407c47..904f1c6e 100644 --- a/backend/dotcode.c +++ b/backend/dotcode.c @@ -29,6 +29,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ /* * Attempts to encode DotCode according to AIMD013 Rev 1.34a, dated Feb 19, 2009 @@ -475,7 +476,7 @@ int dotcode_encode_message(struct zint_symbol *symbol, const unsigned char sourc array_length++; } - if (symbol->input_mode != GS1_MODE) { + if ((symbol->input_mode & 0x07) != GS1_MODE) { if (length > 2) { if (((source[input_position] >= '0') && (source[input_position] <= '9')) && ((source[input_position + 1] >= '0') && (source[input_position + 1] <= '9'))) { @@ -650,7 +651,7 @@ int dotcode_encode_message(struct zint_symbol *symbol, const unsigned char sourc } if ((!done) && (encoding_mode == 'C')) { - if (datum_c(source, input_position, length) || ((source[input_position] == '[') && (symbol->input_mode == GS1_MODE))) { + if (datum_c(source, input_position, length) || ((source[input_position] == '[') && ((symbol->input_mode & 0x07) == GS1_MODE))) { if (source[input_position] == '[') { codeword_array[array_length] = 107; // FNC1 input_position++; @@ -751,7 +752,7 @@ int dotcode_encode_message(struct zint_symbol *symbol, const unsigned char sourc /* Step C2 */ if ((!done) && (encoding_mode == 'B')) { - if ((source[input_position] == '[') && (symbol->input_mode == GS1_MODE)) { + if ((source[input_position] == '[') && ((symbol->input_mode & 0x07) == GS1_MODE)) { codeword_array[array_length] = 107; // FNC1 array_length++; input_position++; @@ -879,7 +880,7 @@ int dotcode_encode_message(struct zint_symbol *symbol, const unsigned char sourc /* Step D2 */ if ((!done) && (encoding_mode == 'A')) { - if ((source[input_position] == '[') && (symbol->input_mode == GS1_MODE)) { + if ((source[input_position] == '[') && ((symbol->input_mode & 0x07) == GS1_MODE)) { codeword_array[array_length] = 107; // FNC1 array_length++; input_position++; diff --git a/backend/hanxin.c b/backend/hanxin.c index b055cf5b..41d2eb40 100644 --- a/backend/hanxin.c +++ b/backend/hanxin.c @@ -28,6 +28,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ /* This code attempts to implement Han Xin Code according to AIMD-015:2010 (Rev 0.8) */ @@ -368,6 +369,7 @@ static void calculate_binary(char binary[], char mode[], int source[], const siz printf("Numeric\n"); } + count = 0; /* Suppress gcc -Wmaybe-uninitialized */ i = 0; while (i < block_length) { @@ -1131,8 +1133,8 @@ int hx_apply_bitmask(unsigned char *grid, int size) { unsigned char p; #ifndef _MSC_VER - unsigned char mask[size * size]; - unsigned char eval[size * size]; + unsigned char mask[(unsigned int)(size * size)]; /* Cast to suppress gcc -Walloc-size-larger-than */ + unsigned char eval[(unsigned int)(size * size)]; #else unsigned char* mask = (unsigned char *) _alloca((size * size) * sizeof (unsigned char)); unsigned char* eval = (unsigned char *) _alloca((size * size) * sizeof (unsigned char)); @@ -1249,7 +1251,7 @@ int han_xin(struct zint_symbol *symbol, const unsigned char source[], size_t len unsigned char *grid; #endif - if ((symbol->input_mode == DATA_MODE) || (symbol->eci != 0)) { + if (((symbol->input_mode & 0x07) == DATA_MODE) || (symbol->eci != 0)) { for (i = 0; i < length; i++) { gbdata[i] = (int) source[i]; } diff --git a/backend/library.c b/backend/library.c index 48a9c62d..8e225548 100644 --- a/backend/library.c +++ b/backend/library.c @@ -640,11 +640,13 @@ int ZBarcode_ValidID(int symbol_id) { return result; } -static int extended_charset(struct zint_symbol *symbol, const unsigned char *source, const int length) { +static int reduced_charset(struct zint_symbol *symbol, const unsigned char *source, size_t in_length); + +static int extended_or_reduced_charset(struct zint_symbol *symbol, const unsigned char *source, const int length) { int error_number = 0; - - /* These are the "elite" standards which can support multiple character sets */ + switch (symbol->symbology) { + /* These are the "elite" standards which have support for specific character sets */ case BARCODE_QRCODE: error_number = qr_code(symbol, source, length); break; case BARCODE_MICROQR: error_number = microqr(symbol, source, length); @@ -655,13 +657,15 @@ static int extended_charset(struct zint_symbol *symbol, const unsigned char *sou break; case BARCODE_UPNQR: error_number = upnqr(symbol, source, length); break; + default: error_number = reduced_charset(symbol, source, length); + break; } return error_number; } static int reduced_charset(struct zint_symbol *symbol, const unsigned char *source, size_t in_length) { - /* These are the "norm" standards which only support Latin-1 at most */ + /* These are the "norm" standards which only support Latin-1 at most, though a few support ECI */ int error_number = 0; #ifndef _MSC_VER @@ -693,7 +697,8 @@ static int reduced_charset(struct zint_symbol *symbol, const unsigned char *sour preprocessed[in_length] = '\0'; break; case UNICODE_MODE: - error_number = utf_to_eci(symbol->eci, source, preprocessed, &in_length); + /* Prior check ensures ECI only set for those that support it */ + error_number = utf_to_eci(symbol->eci && symbol->eci <= 899 ? symbol->eci : 3, source, preprocessed, &in_length); if (error_number != 0) { strcpy(symbol->errtxt, "204: Invalid characters in input data"); return error_number; @@ -941,7 +946,7 @@ int escape_char_process(struct zint_symbol *symbol, unsigned char *input_string, hex1 = ctoi(input_string[in_posn + 2]); hex2 = ctoi(input_string[in_posn + 3]); if ((hex1 >= 0) && (hex2 >= 0)) { - if (hex1 > 7 && (symbol->input_mode & UNICODE_MODE) != 0) { + if (hex1 > 7 && (symbol->input_mode & 0x07) == UNICODE_MODE) { // Convert to UTF-8 escaped_string[out_posn] = 0xc0 + (hex1 >> 2); out_posn++; @@ -980,7 +985,6 @@ int escape_char_process(struct zint_symbol *symbol, unsigned char *input_string, int ZBarcode_Encode(struct zint_symbol *symbol, const unsigned char *source, int in_length) { int error_number, error_buffer, i; - int input_mode = symbol->input_mode; #ifdef _MSC_VER unsigned char* local_source; #endif @@ -1146,6 +1150,10 @@ int ZBarcode_Encode(struct zint_symbol *symbol, const unsigned char *source, int error_number = ZINT_ERROR_INVALID_OPTION; } + if ((symbol->input_mode & 0x07) > 2) { + symbol->input_mode = DATA_MODE; /* Reset completely */ + } + if (error_number > 4) { error_tag(symbol->errtxt, error_number); return error_number; @@ -1157,16 +1165,19 @@ int ZBarcode_Encode(struct zint_symbol *symbol, const unsigned char *source, int local_source[in_length] = '\0'; /* Start acting on input mode */ - if (input_mode & ESCAPE_MODE) { + if (symbol->input_mode & ESCAPE_MODE) { error_number = escape_char_process(symbol, local_source, &in_length); if (error_number != 0) { error_tag(symbol->errtxt, error_number); return error_number; } - input_mode -= ESCAPE_MODE; } - if ((input_mode == GS1_MODE) || (check_force_gs1(symbol->symbology))) { + if ((symbol->input_mode & 0x07) == UNICODE_MODE) { + strip_bom(local_source, &in_length); + } + + if (((symbol->input_mode & 0x07) == GS1_MODE) || (check_force_gs1(symbol->symbology))) { if (gs1_compliant(symbol->symbology) == 1) { // Reduce input for composite and non-forced symbologies, others (EAN128 and RSS_EXP based) will handle it themselves if (is_composite(symbol->symbology) || !check_force_gs1(symbol->symbology)) { @@ -1190,68 +1201,21 @@ int ZBarcode_Encode(struct zint_symbol *symbol, const unsigned char *source, int } } - if ((input_mode < 0) || (input_mode > 2)) { - input_mode = DATA_MODE; - } - - if ((symbol->eci != 0) && (symbol->eci != 26)) { - input_mode = DATA_MODE; - } + error_number = extended_or_reduced_charset(symbol, local_source, in_length); - if (input_mode == UNICODE_MODE) { - strip_bom(local_source, &in_length); - } - - switch (symbol->symbology) { - case BARCODE_QRCODE: - case BARCODE_MICROQR: - case BARCODE_GRIDMATRIX: - case BARCODE_HANXIN: - case BARCODE_UPNQR: - error_number = extended_charset(symbol, local_source, in_length); - break; - default: - error_number = reduced_charset(symbol, local_source, in_length); - break; - } - - if ((error_number == ZINT_ERROR_INVALID_DATA) && (supports_eci(symbol->symbology) - && (input_mode == UNICODE_MODE))) { + if ((error_number == ZINT_ERROR_INVALID_DATA) && symbol->eci == 0 && supports_eci(symbol->symbology) + && (symbol->input_mode & 0x07) == UNICODE_MODE) { /* Try another ECI mode */ symbol->eci = get_best_eci(local_source, in_length); - switch (symbol->symbology) { - case BARCODE_QRCODE: - case BARCODE_MICROQR: - case BARCODE_GRIDMATRIX: - case BARCODE_HANXIN: - { -#ifndef _MSC_VER - unsigned char temp[in_length + 1]; -#else - unsigned char *temp = (unsigned char*) _alloca(in_length + 1); -#endif - size_t temp_len = in_length; - memcpy(temp, local_source, temp_len); - temp[temp_len] = '\0'; - error_number = utf_to_eci(symbol->eci, local_source, temp, &temp_len); - if (error_number == 0) { - in_length = (int) temp_len; - memcpy(local_source, temp, in_length); - local_source[in_length] = '\0'; - error_number = extended_charset(symbol, local_source, in_length); - } - } - break; - default: - error_number = reduced_charset(symbol, local_source, in_length); - break; - } - + error_number = extended_or_reduced_charset(symbol, local_source, in_length); + if (error_number == 0) { error_number = ZINT_WARN_USES_ECI; - strcpy(symbol->errtxt, "222: Encoded data includes ECI"); - if (symbol->debug) printf("Data ECI %d\n", symbol->eci); + if (!(symbol->debug & ZINT_DEBUG_TEST)) { + strcpy(symbol->errtxt, "222: Encoded data includes ECI"); + } + if (symbol->debug & ZINT_DEBUG_PRINT) printf("Data ECI %d\n", symbol->eci); } } @@ -1269,7 +1233,7 @@ int ZBarcode_Encode(struct zint_symbol *symbol, const unsigned char *source, int } error_tag(symbol->errtxt, error_number); - if (error_number <= 5) { + if (error_number < 5) { check_row_heights(symbol); } diff --git a/backend/postal.c b/backend/postal.c index 08f0dbf9..1f48a892 100644 --- a/backend/postal.c +++ b/backend/postal.c @@ -30,6 +30,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include #include @@ -582,11 +583,9 @@ int japan_post(struct zint_symbol *symbol, unsigned char source[], int length) { } if (check <= 9) { check_char = check + '0'; - } - if (check == 10) { + } else if (check == 10) { check_char = '-'; - } - if (check >= 11) { + } else { check_char = (check - 11) + 'a'; } strcat(pattern, JapanTable[posn(KASUTSET, check_char)]); diff --git a/backend/qr.c b/backend/qr.c index 6793d6fd..224f9f25 100644 --- a/backend/qr.c +++ b/backend/qr.c @@ -29,6 +29,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include #ifdef _MSC_VER @@ -47,15 +48,14 @@ extern int utf_to_eci(const int eci, const unsigned char source[], unsigned char /* Returns true if input glyph is in the Alphanumeric set */ static int in_alpha(const int glyph) { int retval = 0; - char cglyph = (char) glyph; - if ((cglyph >= '0') && (cglyph <= '9')) { + if ((glyph >= '0') && (glyph <= '9')) { retval = 1; } - if ((cglyph >= 'A') && (cglyph <= 'Z')) { + if ((glyph >= 'A') && (glyph <= 'Z')) { retval = 1; } - switch (cglyph) { + switch (glyph) { case ' ': case '$': case '%': @@ -72,7 +72,7 @@ static int in_alpha(const int glyph) { return retval; } -static void define_mode(char mode[],const int jisdata[], const size_t length,const int gs1) { +static void define_mode(char mode[], const unsigned int jisdata[], const size_t length, const int gs1) { /* Values placed into mode[] are: K = Kanji, B = Binary, A = Alphanumeric, N = Numeric */ size_t i; int mlen, j; @@ -95,16 +95,18 @@ static void define_mode(char mode[],const int jisdata[], const size_t length,con } /* If less than 6 numeric digits together then don't use numeric mode */ - for (i = 0; i < length; i++) { - if (mode[i] == 'N') { - if (((i != 0) && (mode[i - 1] != 'N')) || (i == 0)) { - mlen = 0; - while (((mlen + i) < length) && (mode[mlen + i] == 'N')) { - mlen++; - }; - if (mlen < 6) { - for (j = 0; j < mlen; j++) { - mode[i + j] = 'A'; + if (ustrchr_cnt((unsigned char*) mode, length, 'N') != length) { + for (i = 0; i < length; i++) { + if (mode[i] == 'N') { + if (((i != 0) && (mode[i - 1] != 'N')) || (i == 0)) { + mlen = 0; + while (((mlen + i) < length) && (mode[mlen + i] == 'N')) { + mlen++; + }; + if (mlen < 6) { + for (j = 0; j < mlen; j++) { + mode[i + j] = 'A'; + } } } } @@ -112,16 +114,18 @@ static void define_mode(char mode[],const int jisdata[], const size_t length,con } /* If less than 4 alphanumeric characters together then don't use alphanumeric mode */ - for (i = 0; i < length; i++) { - if (mode[i] == 'A') { - if (((i != 0) && (mode[i - 1] != 'A')) || (i == 0)) { - mlen = 0; - while (((mlen + i) < length) && (mode[mlen + i] == 'A')) { - mlen++; - }; - if (mlen < 4) { - for (j = 0; j < mlen; j++) { - mode[i + j] = 'B'; + if (ustrchr_cnt((unsigned char*) mode, length, 'A') != length) { + for (i = 0; i < length; i++) { + if (mode[i] == 'A') { + if (((i != 0) && (mode[i - 1] != 'A')) || (i == 0)) { + mlen = 0; + while (((mlen + i) < length) && (mode[mlen + i] == 'A')) { + mlen++; + }; + if (mlen < 4) { + for (j = 0; j < mlen; j++) { + mode[i + j] = 'B'; + } } } } @@ -147,7 +151,8 @@ static int tribus(const int version,const int a,const int b,const int c) { } /* Convert input data to a binary stream and add padding */ -static void qr_binary(int datastream[], const int version, const int target_binlen, const char mode[], const int jisdata[], const size_t length, const int gs1, const int eci, const int est_binlen,const int debug) { +static void qr_binary(unsigned char datastream[], const int version, const int target_binlen, const char mode[], const unsigned int jisdata[], const size_t length, + const int gs1, const int eci, const int est_binlen, const int debug) { int position = 0; int i; char padbits; @@ -177,7 +182,7 @@ static void qr_binary(int datastream[], const int version, const int target_binl } } - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { for (i = 0; i < length; i++) { printf("%c", mode[i]); } @@ -189,7 +194,11 @@ static void qr_binary(int datastream[], const int version, const int target_binl do { char data_block = mode[position]; int short_data_block_length = 0; + int double_byte = 0; do { + if (data_block == 'B' && jisdata[position + short_data_block_length] > 0xFF) { + double_byte++; + } short_data_block_length++; } while (((short_data_block_length + position) < length) && (mode[position + short_data_block_length] == data_block)); @@ -203,13 +212,13 @@ static void qr_binary(int datastream[], const int version, const int target_binl /* Character count indicator */ bin_append(short_data_block_length, tribus(version, 8, 10, 12), binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("Kanji block (length %d)\n\t", short_data_block_length); } /* Character representation */ for (i = 0; i < short_data_block_length; i++) { - int jis = jisdata[position + i]; + unsigned int jis = jisdata[position + i]; int prod; if (jis >= 0x8140 && jis <= 0x9ffc) @@ -222,12 +231,12 @@ static void qr_binary(int datastream[], const int version, const int target_binl bin_append(prod, 13, binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("0x%4X ", prod); } } - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("\n"); } @@ -238,28 +247,28 @@ static void qr_binary(int datastream[], const int version, const int target_binl strcat(binary, "0100"); /* Character count indicator */ - bin_append(short_data_block_length, tribus(version, 8, 16, 16), binary); + bin_append(short_data_block_length + double_byte, tribus(version, 8, 16, 16), binary); - if (debug) { - printf("Byte block (length %d)\n\t", short_data_block_length); + if (debug & ZINT_DEBUG_PRINT) { + printf("Byte block (length %d)\n\t", short_data_block_length + double_byte); } /* Character representation */ for (i = 0; i < short_data_block_length; i++) { - int byte = jisdata[position + i]; + unsigned int byte = jisdata[position + i]; if (gs1 && (byte == '[')) { byte = 0x1d; /* FNC1 */ } - bin_append(byte, 8, binary); + bin_append(byte, byte > 0xFF ? 16 : 8, binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("0x%2X(%d) ", byte, byte); } } - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("\n"); } @@ -275,11 +284,11 @@ static void qr_binary(int datastream[], const int version, const int target_binl percent_count++; } } - + /* Character count indicator */ bin_append(short_data_block_length + percent_count, tribus(version, 9, 11, 13), binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("Alpha block (length %d)\n\t", short_data_block_length + percent_count); } @@ -352,12 +361,12 @@ static void qr_binary(int datastream[], const int version, const int target_binl bin_append(prod, 1 + (5 * count), binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("0x%4X ", prod); } }; - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("\n"); } @@ -370,7 +379,7 @@ static void qr_binary(int datastream[], const int version, const int target_binl /* Character count indicator */ bin_append(short_data_block_length, tribus(version, 10, 12, 14), binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("Number block (length %d)\n\t", short_data_block_length); } @@ -398,14 +407,14 @@ static void qr_binary(int datastream[], const int version, const int target_binl bin_append(prod, 1 + (3 * count), binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("0x%4X (%d)", prod, prod); } i += count; }; - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("\n"); } @@ -453,7 +462,7 @@ static void qr_binary(int datastream[], const int version, const int target_binl } } - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("Resulting codewords:\n\t"); for (i = 0; i < target_binlen; i++) { printf("0x%2X ", datastream[i]); @@ -463,25 +472,24 @@ static void qr_binary(int datastream[], const int version, const int target_binl } /* Split data into blocks, add error correction and then interleave the blocks and error correction data */ -static void add_ecc(int fullstream[],const int datastream[],const int version,const int data_cw,const int blocks) { +static void add_ecc(unsigned char fullstream[], const unsigned char datastream[], const int version, const int data_cw, const int blocks, int debug) { int ecc_cw = qr_total_codewords[version - 1] - data_cw; int short_data_block_length = data_cw / blocks; int qty_long_blocks = data_cw % blocks; int qty_short_blocks = blocks - qty_long_blocks; int ecc_block_length = ecc_cw / blocks; - int i, j, length_this_block, posn, debug = 0; - + int i, j, length_this_block, posn; #ifndef _MSC_VER unsigned char data_block[short_data_block_length + 2]; unsigned char ecc_block[ecc_block_length + 2]; - int interleaved_data[data_cw + 2]; - int interleaved_ecc[ecc_cw + 2]; + unsigned char interleaved_data[data_cw + 2]; + unsigned char interleaved_ecc[ecc_cw + 2]; #else unsigned char* data_block = (unsigned char *) _alloca(short_data_block_length + 2); unsigned char* ecc_block = (unsigned char *) _alloca(ecc_block_length + 2); - int* interleaved_data = (int *) _alloca((data_cw + 2) * sizeof (int)); - int* interleaved_ecc = (int *) _alloca((ecc_cw + 2) * sizeof (int)); + unsigned char* interleaved_data = (unsigned char *) _alloca(data_cw + 2); + unsigned char* interleaved_ecc = (unsigned char *) _alloca(ecc_cw + 2); #endif posn = 0; @@ -498,7 +506,7 @@ static void add_ecc(int fullstream[],const int datastream[],const int version,co } for (j = 0; j < length_this_block; j++) { - data_block[j] = (unsigned char) datastream[posn + j]; + data_block[j] = datastream[posn + j]; } rs_init_gf(0x11d); @@ -506,7 +514,7 @@ static void add_ecc(int fullstream[],const int datastream[],const int version,co rs_encode(length_this_block, data_block, ecc_block); rs_free(); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("Block %d: ", i + 1); for (j = 0; j < length_this_block; j++) { printf("%2X ", data_block[j]); @@ -522,15 +530,15 @@ static void add_ecc(int fullstream[],const int datastream[],const int version,co } for (j = 0; j < short_data_block_length; j++) { - interleaved_data[(j * blocks) + i] = (int) data_block[j]; + interleaved_data[(j * blocks) + i] = data_block[j]; } if (i >= qty_short_blocks) { - interleaved_data[(short_data_block_length * blocks) + (i - qty_short_blocks)] = (int) data_block[short_data_block_length]; + interleaved_data[(short_data_block_length * blocks) + (i - qty_short_blocks)] = data_block[short_data_block_length]; } for (j = 0; j < ecc_block_length; j++) { - interleaved_ecc[(j * blocks) + i] = (int) ecc_block[ecc_block_length - j - 1]; + interleaved_ecc[(j * blocks) + i] = ecc_block[ecc_block_length - j - 1]; } posn += length_this_block; @@ -543,7 +551,7 @@ static void add_ecc(int fullstream[],const int datastream[],const int version,co fullstream[j + data_cw] = interleaved_ecc[j]; } - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("\nData Stream: \n"); for (j = 0; j < (data_cw + ecc_cw); j++) { printf("%2X ", fullstream[j]); @@ -660,7 +668,7 @@ static void setup_grid(unsigned char* grid,const int size,const int version) { } } -static int cwbit(const int* fullstream,const int i) { +static int cwbit(const unsigned char* fullstream, const int i) { int resultant = 0; if (fullstream[(i / 8)] & (0x80 >> (i % 8))) { @@ -670,7 +678,7 @@ static int cwbit(const int* fullstream,const int i) { return resultant; } -static void populate_grid(unsigned char* grid,const int size,const int* fullstream,const int cw) { +static void populate_grid(unsigned char* grid, const int size, const unsigned char* fullstream, const int cw) { int direction = 1; /* up */ int row = 0; /* right hand side */ @@ -681,6 +689,7 @@ static void populate_grid(unsigned char* grid,const int size,const int* fullstre i = 0; do { int x = (size - 2) - (row * 2); + if (x < 6) x--; /* skip over vertical timing pattern */ @@ -1321,7 +1330,7 @@ static size_t blockLength(const size_t start,const char inputMode[],const size_t return count; } -static int getBinaryLength(const int version,char inputMode[],const int inputData[],const size_t inputLength,const int gs1,const int eci) { +static int getBinaryLength(const int version, char inputMode[], const unsigned int inputData[], const size_t inputLength, const int gs1, const int eci) { /* Calculate the actual bitlength of the proposed binary string */ size_t i; char currentMode; @@ -1339,7 +1348,14 @@ static int getBinaryLength(const int version,char inputMode[],const int inputDat } if (eci != 0) { - count += 12; + count += 4; + if (eci <= 127) { + count += 8; + } else if (eci <= 16383) { + count += 16; + } else { + count += 24; + } } for (i = 0; i < inputLength; i++) { @@ -1404,6 +1420,14 @@ static int getBinaryLength(const int version,char inputMode[],const int inputDat return count; } +static void qr_test_codeword_dump(struct zint_symbol *symbol, unsigned char* codewords, int length) { + int i; + for (i = 0; i < length && i < 33; i++) { // 33*3 < errtxt 100 chars + sprintf(symbol->errtxt + i * 3, "%02X ", codewords[i]); + } + symbol->errtxt[strlen(symbol->errtxt) - 1] = '\0'; +} + int qr_code(struct zint_symbol *symbol, const unsigned char source[], size_t length) { int i, j, est_binlen; int ecc_level, autosize, version, max_cw, target_binlen, blocks, size; @@ -1411,48 +1435,37 @@ int qr_code(struct zint_symbol *symbol, const unsigned char source[], size_t len int canShrink; #ifndef _MSC_VER - int utfdata[length + 1]; - int jisdata[length + 1]; + unsigned int jisdata[length + 1]; char mode[length + 1]; #else - int* datastream; - int* fullstream; + unsigned char* datastream; + unsigned char* fullstream; unsigned char* grid; - int* utfdata = (int *) _alloca((length + 1) * sizeof (int)); - int* jisdata = (int *) _alloca((length + 1) * sizeof (int)); + unsigned int* jisdata = (unsigned int *) _alloca((length + 1) * sizeof (unsigned int)); char* mode = (char *) _alloca(length + 1); #endif - gs1 = (symbol->input_mode == GS1_MODE); + gs1 = ((symbol->input_mode & 0x07) == GS1_MODE); - if ((symbol->input_mode == DATA_MODE) || (symbol->eci != 0)) { - for (i = 0; i < length; i++) { - jisdata[i] = (int) source[i]; - } + if ((symbol->input_mode & 0x07) == DATA_MODE) { + sjis_cpy(source, &length, jisdata); } else { - /* Convert Unicode input to Shift-JIS */ - int error_number = utf8toutf16(symbol, source, utfdata, &length); - if (error_number != 0) { - return error_number; + int done = 0; + if (symbol->eci != 20) { /* Unless ECI 20 (Shift JIS) */ + /* Try single byte (Latin) conversion first */ + int error_number = sjis_utf8tosb(symbol->eci && symbol->eci <= 899 ? symbol->eci : 3, source, &length, jisdata); + if (error_number == 0) { + done = 1; + } else if (symbol->eci && symbol->eci <= 899) { + strcpy(symbol->errtxt, "575: Invalid characters in input data"); + return error_number; + } } - - for (i = 0; i < length; i++) { - if (utfdata[i] <= 0xff) { - jisdata[i] = utfdata[i]; - } else { - int glyph = 0; - j = 0; - do { - if (sjis_lookup[j * 2] == utfdata[i]) { - glyph = sjis_lookup[(j * 2) + 1]; - } - j++; - } while ((j < 6843) && (glyph == 0)); - if (glyph == 0) { - strcpy(symbol->errtxt, "560: Invalid character in input data"); - return ZINT_ERROR_INVALID_DATA; - } - jisdata[i] = glyph; + if (!done) { + /* Try Shift-JIS */ + int error_number = sjis_utf8tomb(symbol, source, &length, jisdata); + if (error_number != 0) { + return error_number; } } } @@ -1569,7 +1582,7 @@ int qr_code(struct zint_symbol *symbol, const unsigned char source[], size_t len return ZINT_ERROR_TOO_LONG; } } - + /* Ensure maxium error correction capacity */ if (est_binlen <= qr_data_codewords_M[version - 1] * 8) { ecc_level = LEVEL_M; @@ -1596,15 +1609,16 @@ int qr_code(struct zint_symbol *symbol, const unsigned char source[], size_t len } #ifndef _MSC_VER - int datastream[target_binlen + 1]; - int fullstream[qr_total_codewords[version - 1] + 1]; + unsigned char datastream[target_binlen + 1]; + unsigned char fullstream[qr_total_codewords[version - 1] + 1]; #else - datastream = (int *) _alloca((target_binlen + 1) * sizeof (int)); - fullstream = (int *) _alloca((qr_total_codewords[version - 1] + 1) * sizeof (int)); + datastream = (unsigned char *) _alloca(target_binlen + 1); + fullstream = (unsigned char *) _alloca(qr_total_codewords[version - 1] + 1); #endif qr_binary(datastream, version, target_binlen, mode, jisdata, length, gs1, symbol->eci, est_binlen, symbol->debug); - add_ecc(fullstream, datastream, version, target_binlen, blocks); + if (symbol->debug & ZINT_DEBUG_TEST) qr_test_codeword_dump(symbol, datastream, target_binlen); + add_ecc(fullstream, datastream, version, target_binlen, blocks, symbol->debug); size = qr_sizes[version - 1]; #ifndef _MSC_VER @@ -1647,9 +1661,7 @@ int qr_code(struct zint_symbol *symbol, const unsigned char source[], size_t len return 0; } -/* NOTE: From this point forward concerns Micro QR Code only */ - -static int micro_qr_intermediate(char binary[], const int jisdata[], const char mode[], const size_t length, int *kanji_used, int *alphanum_used, int *byte_used,const int debug) { +static int micro_qr_intermediate(char binary[], const unsigned int jisdata[], const char mode[], const size_t length, int *kanji_used, int *alphanum_used, int *byte_used, const int debug) { /* Convert input data to an "intermediate stage" where data is binary encoded but control information is not */ int position = 0; @@ -1658,7 +1670,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char strcpy(binary, ""); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { for (i = 0; i < length; i++) { printf("%c", mode[i]); } @@ -1668,12 +1680,16 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char do { char data_block; int short_data_block_length = 0; + int double_byte = 0; if (strlen(binary) > 128) { return ZINT_ERROR_TOO_LONG; } data_block = mode[position]; do { + if (data_block == 'B' && jisdata[position + short_data_block_length] > 0xFF) { + double_byte++; + } short_data_block_length++; } while (((short_data_block_length + position) < length) && (mode[position + short_data_block_length] == data_block)); @@ -1689,7 +1705,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char buffer[1] = '\0'; strcat(binary, buffer); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("Kanji block (length %d)\n\t", short_data_block_length); } @@ -1708,7 +1724,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char bin_append(prod, 13, binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("0x%4X ", prod); } @@ -1717,7 +1733,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char } } - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("\n"); } @@ -1729,21 +1745,21 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char *byte_used = 1; /* Character count indicator */ - buffer[0] = short_data_block_length; + buffer[0] = short_data_block_length + double_byte; buffer[1] = '\0'; strcat(binary, buffer); - if (debug) { - printf("Byte block (length %d)\n\t", short_data_block_length); + if (debug & ZINT_DEBUG_PRINT) { + printf("Byte block (length %d)\n\t", short_data_block_length + double_byte); } /* Character representation */ for (i = 0; i < short_data_block_length; i++) { int byte = jisdata[position + i]; - bin_append(byte, 8, binary); + bin_append(byte, byte > 0xFF ? 16 : 8, binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("0x%4X ", byte); } @@ -1752,7 +1768,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char } } - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("\n"); } @@ -1768,7 +1784,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char buffer[1] = '\0'; strcat(binary, buffer); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("Alpha block (length %d)\n\t", short_data_block_length); } @@ -1790,7 +1806,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char bin_append(prod, 1 + (5 * count), binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("0x%4X ", prod); } @@ -1801,7 +1817,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char i += 2; }; - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("\n"); } @@ -1816,7 +1832,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char buffer[1] = '\0'; strcat(binary, buffer); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("Number block (length %d)\n\t", short_data_block_length); } @@ -1844,7 +1860,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char bin_append(prod, 1 + (3 * count), binary); - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("0x%4X (%d)", prod, prod); } @@ -1855,7 +1871,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char i += 3; }; - if (debug) { + if (debug & ZINT_DEBUG_PRINT) { printf("\n"); } @@ -1863,7 +1879,7 @@ static int micro_qr_intermediate(char binary[], const int jisdata[], const char } position += short_data_block_length; - } while (position < length - 1); + } while (position < length); return 0; } @@ -2000,7 +2016,7 @@ static void microqr_expand_binary(const char binary_stream[], char full_stream[] } while (i < length); } -static void micro_qr_m1(char binary_data[]) { +static void micro_qr_m1(struct zint_symbol *symbol, char binary_data[]) { int i, j, latch; int bits_total, bits_left; int data_codewords, ecc_codewords; @@ -2071,6 +2087,8 @@ static void micro_qr_m1(char binary_data[]) { } } + if (symbol->debug & ZINT_DEBUG_TEST) qr_test_codeword_dump(symbol, data_blocks, data_codewords); + /* Calculate Reed-Solomon error codewords */ rs_init_gf(0x11d); rs_init_code(ecc_codewords, 0); @@ -2083,7 +2101,7 @@ static void micro_qr_m1(char binary_data[]) { } } -static void micro_qr_m2(char binary_data[],const int ecc_mode) { +static void micro_qr_m2(struct zint_symbol *symbol, char binary_data[], const int ecc_mode) { int i, j, latch; int bits_total=0, bits_left; int data_codewords=0, ecc_codewords=0; @@ -2149,6 +2167,8 @@ static void micro_qr_m2(char binary_data[],const int ecc_mode) { } } + if (symbol->debug & ZINT_DEBUG_TEST) qr_test_codeword_dump(symbol, data_blocks, data_codewords); + /* Calculate Reed-Solomon error codewords */ rs_init_gf(0x11d); rs_init_code(ecc_codewords, 0); @@ -2163,7 +2183,7 @@ static void micro_qr_m2(char binary_data[],const int ecc_mode) { return; } -static void micro_qr_m3(char binary_data[],const int ecc_mode) { +static void micro_qr_m3(struct zint_symbol *symbol, char binary_data[], const int ecc_mode) { int i, j, latch; int bits_total=0, bits_left; int data_codewords=0, ecc_codewords=0; @@ -2261,6 +2281,8 @@ static void micro_qr_m3(char binary_data[],const int ecc_mode) { } } + if (symbol->debug & ZINT_DEBUG_TEST) qr_test_codeword_dump(symbol, data_blocks, data_codewords); + /* Calculate Reed-Solomon error codewords */ rs_init_gf(0x11d); rs_init_code(ecc_codewords, 0); @@ -2275,7 +2297,7 @@ static void micro_qr_m3(char binary_data[],const int ecc_mode) { return; } -static void micro_qr_m4(char binary_data[],const int ecc_mode) { +static void micro_qr_m4(struct zint_symbol *symbol, char binary_data[], const int ecc_mode) { int i, j, latch; int bits_total=0, bits_left; int data_codewords=0, ecc_codewords=0; @@ -2348,6 +2370,8 @@ static void micro_qr_m4(char binary_data[],const int ecc_mode) { } } + if (symbol->debug & ZINT_DEBUG_TEST) qr_test_codeword_dump(symbol, data_blocks, data_codewords); + /* Calculate Reed-Solomon error codewords */ rs_init_gf(0x11d); rs_init_code(ecc_codewords, 0); @@ -2568,9 +2592,8 @@ int microqr(struct zint_symbol *symbol, const unsigned char source[], size_t len int j, size; char binary_stream[200]; char full_stream[200]; - int utfdata[40]; - int jisdata[40]; + unsigned int jisdata[40]; char mode[40]; int error_number, kanji_used = 0, alphanum_used = 0, byte_used = 0; int version_valid[4]; @@ -2610,34 +2633,16 @@ int microqr(struct zint_symbol *symbol, const unsigned char source[], size_t len version_valid[i] = 1; } - if (symbol->input_mode == DATA_MODE) { - for (i = 0; i < length; i++) { - jisdata[i] = (int) source[i]; - } + if ((symbol->input_mode & 0x07) == DATA_MODE) { + sjis_cpy(source, &length, jisdata); } else { - /* Convert Unicode input to Shift-JIS */ - error_number = utf8toutf16(symbol, source, utfdata, &length); + /* Try ISO 8859-1 conversion first */ + int error_number = sjis_utf8tosb(3, source, &length, jisdata); if (error_number != 0) { - return error_number; - } - - for (i = 0; i < length; i++) { - if (utfdata[i] <= 0xff) { - jisdata[i] = utfdata[i]; - } else { - int glyph = 0; - j = 0; - do { - if (sjis_lookup[j * 2] == utfdata[i]) { - glyph = sjis_lookup[(j * 2) + 1]; - } - j++; - } while ((j < 6843) && (glyph == 0)); - if (glyph == 0) { - strcpy(symbol->errtxt, "563: Invalid character in input data"); - return ZINT_ERROR_INVALID_DATA; - } - jisdata[i] = glyph; + /* Try Shift-JIS */ + int error_number = sjis_utf8tomb(symbol, source, &length, jisdata); + if (error_number != 0) { + return error_number; } } } @@ -2677,7 +2682,7 @@ int microqr(struct zint_symbol *symbol, const unsigned char source[], size_t len get_bitlength(binary_count, binary_stream); - /* Eliminate possivle versions depending on type of content */ + /* Eliminate possible versions depending on type of content */ if (byte_used) { version_valid[0] = 0; version_valid[1] = 0; @@ -2780,13 +2785,13 @@ int microqr(struct zint_symbol *symbol, const unsigned char source[], size_t len microqr_expand_binary(binary_stream, full_stream, version); switch (version) { - case 0: micro_qr_m1(full_stream); + case 0: micro_qr_m1(symbol, full_stream); break; - case 1: micro_qr_m2(full_stream, ecc_level); + case 1: micro_qr_m2(symbol, full_stream, ecc_level); break; - case 2: micro_qr_m3(full_stream, ecc_level); + case 2: micro_qr_m3(symbol, full_stream, ecc_level); break; - case 3: micro_qr_m4(full_stream, ecc_level); + case 3: micro_qr_m4(symbol, full_stream, ecc_level); break; } @@ -2905,13 +2910,13 @@ int upnqr(struct zint_symbol *symbol, const unsigned char source[], size_t lengt int bitmask, error_number; #ifndef _MSC_VER - int jisdata[length + 1]; + unsigned int jisdata[length + 1]; char mode[length + 1]; #else - int* datastream; - int* fullstream; + unsigned char* datastream; + unsigned char* fullstream; unsigned char* grid; - int* jisdata = (int *) _alloca((length + 1) * sizeof (int)); + unsigned int* jisdata = (unsigned int *) _alloca((length + 1) * sizeof (unsigned int)); char* mode = (char *) _alloca(length + 1); #endif @@ -2921,11 +2926,13 @@ int upnqr(struct zint_symbol *symbol, const unsigned char source[], size_t lengt unsigned char* preprocessed = (unsigned char*) _alloca(length + 1); #endif - switch(symbol->input_mode) { + symbol->eci = 4; /* Set before any processing */ + + switch (symbol->input_mode & 0x07) { case DATA_MODE: /* Input is already in ISO-8859-2 format */ for (i = 0; i < length; i++) { - jisdata[i] = (int) source[i]; + jisdata[i] = source[i]; mode[i] = 'B'; } break; @@ -2940,13 +2947,12 @@ int upnqr(struct zint_symbol *symbol, const unsigned char source[], size_t lengt return error_number; } for (i = 0; i < length; i++) { - jisdata[i] = (int) preprocessed[i]; + jisdata[i] = preprocessed[i]; mode[i] = 'B'; } break; } - symbol->eci = 4; est_binlen = getBinaryLength(15, mode, jisdata, length, 0, symbol->eci); ecc_level = LEVEL_M; @@ -2962,15 +2968,16 @@ int upnqr(struct zint_symbol *symbol, const unsigned char source[], size_t lengt blocks = qr_blocks_M[version - 1]; #ifndef _MSC_VER - int datastream[target_binlen + 1]; - int fullstream[qr_total_codewords[version - 1] + 1]; + unsigned char datastream[target_binlen + 1]; + unsigned char fullstream[qr_total_codewords[version - 1] + 1]; #else - datastream = (int *) _alloca((target_binlen + 1) * sizeof (int)); - fullstream = (int *) _alloca((qr_total_codewords[version - 1] + 1) * sizeof (int)); + datastream = (unsigned char *) _alloca(target_binlen + 1); + fullstream = (unsigned char *) _alloca(qr_total_codewords[version - 1] + 1); #endif qr_binary(datastream, version, target_binlen, mode, jisdata, length, 0, symbol->eci, est_binlen, symbol->debug); - add_ecc(fullstream, datastream, version, target_binlen, blocks); + if (symbol->debug & ZINT_DEBUG_TEST) qr_test_codeword_dump(symbol, datastream, target_binlen); + add_ecc(fullstream, datastream, version, target_binlen, blocks, symbol->debug); size = qr_sizes[version - 1]; #ifndef _MSC_VER diff --git a/backend/sjis.c b/backend/sjis.c new file mode 100644 index 00000000..e8b4456c --- /dev/null +++ b/backend/sjis.c @@ -0,0 +1,1610 @@ +/* + libzint - the open source barcode library + Copyright (C) 2008-2019 Robin Stuart + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the project nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + */ +/* vim: set ts=4 sw=4 et : */ +/* + * Adapted from the GNU LIBICONV library and patched to make compatible with + * https://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/SHIFTJIS.TXT + * with the exception of one duplicate mapping to reverse solidus 0x815F + * and the mapping of user-defined PUA codepoints U+E000..E757. + */ +/* + * Copyright (C) 1999-2002, 2016 Free Software Foundation, Inc. + * This file is part of the GNU LIBICONV Library. + * + * The GNU LIBICONV Library is free software; you can redistribute it + * and/or modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * The GNU LIBICONV Library is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the GNU LIBICONV Library; see the file COPYING.LIB. + * If not, see . + */ +#include +#include +#include +#include "common.h" +#include "sjis.h" + +extern int utf_to_eci(const int eci, const unsigned char source[], unsigned char dest[], size_t *length); /* Convert Unicode to other encodings */ + +/* + * JISX0201.1976-0 (libiconv-1.16/lib/jisx0201.h) + */ + +static int jisx0201_wctomb(unsigned char* r, unsigned int wc, size_t n) { + if (wc < 0x0080 && !(wc == 0x005c || wc == 0x007e)) { + if (n < 1) { + return -1; + } + *r = wc; + return 1; + } + if (wc == 0x00a5) { + if (n < 1) { + return -1; + } + *r = 0x5c; + return 1; + } + if (wc == 0x203e) { + if (n < 1) { + return -1; + } + *r = 0x7e; + return 1; + } + if (wc >= 0xff61 && wc < 0xffa0) { + if (n < 1) { + return -1; + } + *r = wc - 0xfec0; + return 1; + } + return 0; +} + +/* + * JISX0208.1990-0 (libiconv-1.16/lib/jisx0208.h) + */ + +/* ZINT: Table converted from JIS X 0208 to Shift JIS values using php: + * +while ($line = fgets(STDIN)) { + echo preg_replace_callback('/0x([0-9a-f]{4})/', function ($matches) { + $dec = hexdec($matches[1]); + $c1 = $dec >> 8; + $c2 = ($dec & 0xFF); + $t1 = ($c1 - 0x21) >> 1; + $t2 = ((($c1 - 0x21) & 1) ? 0x5e : 0) + ($c2 - 0x21); + $r = (($t1 < 0x1f ? ($t1 + 0x81) : ($t1 + 0xc1)) << 8) | ($t2 < 0x3f ? ($t2 + 0x40) : ($t2 + 0x41)); + return '0x' . dechex($r); + }, $line); +} + */ +static const unsigned short jisx0208_2charset[6879] = { + 0x8191, 0x8192, 0x8198, 0x814e, 0x81ca, 0x818b, 0x817d, 0x814c, + 0x81f7, 0x817e, 0x8180, 0x839f, 0x83a0, 0x83a1, 0x83a2, 0x83a3, + 0x83a4, 0x83a5, 0x83a6, 0x83a7, 0x83a8, 0x83a9, 0x83aa, 0x83ab, + 0x83ac, 0x83ad, 0x83ae, 0x83af, 0x83b0, 0x83b1, 0x83b2, 0x83b3, + 0x83b4, 0x83b5, 0x83b6, 0x83bf, 0x83c0, 0x83c1, 0x83c2, 0x83c3, + 0x83c4, 0x83c5, 0x83c6, 0x83c7, 0x83c8, 0x83c9, 0x83ca, 0x83cb, + 0x83cc, 0x83cd, 0x83ce, 0x83cf, 0x83d0, 0x83d1, 0x83d2, 0x83d3, + 0x83d4, 0x83d5, 0x83d6, 0x8446, 0x8440, 0x8441, 0x8442, 0x8443, + 0x8444, 0x8445, 0x8447, 0x8448, 0x8449, 0x844a, 0x844b, 0x844c, + 0x844d, 0x844e, 0x844f, 0x8450, 0x8451, 0x8452, 0x8453, 0x8454, + 0x8455, 0x8456, 0x8457, 0x8458, 0x8459, 0x845a, 0x845b, 0x845c, + 0x845d, 0x845e, 0x845f, 0x8460, 0x8470, 0x8471, 0x8472, 0x8473, + 0x8474, 0x8475, 0x8477, 0x8478, 0x8479, 0x847a, 0x847b, 0x847c, + 0x847d, 0x847e, 0x8480, 0x8481, 0x8482, 0x8483, 0x8484, 0x8485, + 0x8486, 0x8487, 0x8488, 0x8489, 0x848a, 0x848b, 0x848c, 0x848d, + 0x848e, 0x848f, 0x8490, 0x8491, 0x8476, 0x815d, 0x815c, 0x8161, + 0x8165, 0x8166, 0x8167, 0x8168, 0x81f5, 0x81f6, 0x8164, 0x8163, + 0x81f1, 0x818c, 0x818d, 0x81a6, 0x818e, 0x81f0, 0x81a9, 0x81aa, + 0x81a8, 0x81ab, 0x81cb, 0x81cc, 0x81cd, 0x81dd, 0x81ce, 0x81de, + 0x81b8, 0x81b9, 0x817c, 0x81e3, 0x81e5, 0x8187, 0x81da, 0x81c8, + 0x81c9, 0x81bf, 0x81be, 0x81e7, 0x81e8, 0x8188, 0x81e6, 0x81e4, + 0x81e0, 0x8182, 0x81df, 0x8185, 0x8186, 0x81e1, 0x81e2, 0x81bc, + 0x81bd, 0x81ba, 0x81bb, 0x81db, 0x81dc, 0x849f, 0x84aa, 0x84a0, + 0x84ab, 0x84a1, 0x84ac, 0x84a2, 0x84ad, 0x84a4, 0x84af, 0x84a3, + 0x84ae, 0x84a5, 0x84ba, 0x84b5, 0x84b0, 0x84a7, 0x84bc, 0x84b7, + 0x84b2, 0x84a6, 0x84b6, 0x84bb, 0x84b1, 0x84a8, 0x84b8, 0x84bd, + 0x84b3, 0x84a9, 0x84b9, 0x84be, 0x84b4, 0x81a1, 0x81a0, 0x81a3, + 0x81a2, 0x81a5, 0x81a4, 0x819f, 0x819e, 0x819b, 0x819d, 0x819c, + 0x81fc, 0x819a, 0x8199, 0x818a, 0x8189, 0x81f4, 0x81f3, 0x81f2, + 0x8140, 0x8141, 0x8142, 0x8156, 0x8158, 0x8159, 0x815a, 0x8171, + 0x8172, 0x8173, 0x8174, 0x8175, 0x8176, 0x8177, 0x8178, 0x8179, + 0x817a, 0x81a7, 0x81ac, 0x816b, 0x816c, 0x8160, 0x829f, 0x82a0, + 0x82a1, 0x82a2, 0x82a3, 0x82a4, 0x82a5, 0x82a6, 0x82a7, 0x82a8, + 0x82a9, 0x82aa, 0x82ab, 0x82ac, 0x82ad, 0x82ae, 0x82af, 0x82b0, + 0x82b1, 0x82b2, 0x82b3, 0x82b4, 0x82b5, 0x82b6, 0x82b7, 0x82b8, + 0x82b9, 0x82ba, 0x82bb, 0x82bc, 0x82bd, 0x82be, 0x82bf, 0x82c0, + 0x82c1, 0x82c2, 0x82c3, 0x82c4, 0x82c5, 0x82c6, 0x82c7, 0x82c8, + 0x82c9, 0x82ca, 0x82cb, 0x82cc, 0x82cd, 0x82ce, 0x82cf, 0x82d0, + 0x82d1, 0x82d2, 0x82d3, 0x82d4, 0x82d5, 0x82d6, 0x82d7, 0x82d8, + 0x82d9, 0x82da, 0x82db, 0x82dc, 0x82dd, 0x82de, 0x82df, 0x82e0, + 0x82e1, 0x82e2, 0x82e3, 0x82e4, 0x82e5, 0x82e6, 0x82e7, 0x82e8, + 0x82e9, 0x82ea, 0x82eb, 0x82ec, 0x82ed, 0x82ee, 0x82ef, 0x82f0, + 0x82f1, 0x814a, 0x814b, 0x8154, 0x8155, 0x8340, 0x8341, 0x8342, + 0x8343, 0x8344, 0x8345, 0x8346, 0x8347, 0x8348, 0x8349, 0x834a, + 0x834b, 0x834c, 0x834d, 0x834e, 0x834f, 0x8350, 0x8351, 0x8352, + 0x8353, 0x8354, 0x8355, 0x8356, 0x8357, 0x8358, 0x8359, 0x835a, + 0x835b, 0x835c, 0x835d, 0x835e, 0x835f, 0x8360, 0x8361, 0x8362, + 0x8363, 0x8364, 0x8365, 0x8366, 0x8367, 0x8368, 0x8369, 0x836a, + 0x836b, 0x836c, 0x836d, 0x836e, 0x836f, 0x8370, 0x8371, 0x8372, + 0x8373, 0x8374, 0x8375, 0x8376, 0x8377, 0x8378, 0x8379, 0x837a, + 0x837b, 0x837c, 0x837d, 0x837e, 0x8380, 0x8381, 0x8382, 0x8383, + 0x8384, 0x8385, 0x8386, 0x8387, 0x8388, 0x8389, 0x838a, 0x838b, + 0x838c, 0x838d, 0x838e, 0x838f, 0x8390, 0x8391, 0x8392, 0x8393, + 0x8394, 0x8395, 0x8396, 0x8145, 0x815b, 0x8152, 0x8153, 0x88ea, + 0x929a, 0x8eb5, 0x969c, 0x8fe4, 0x8e4f, 0x8fe3, 0x89ba, 0x9573, + 0x975e, 0x98a0, 0x894e, 0x8a8e, 0x98a1, 0x90a2, 0x99c0, 0x8b75, + 0x95b8, 0x8fe5, 0x97bc, 0x95c0, 0x98a2, 0x9286, 0x98a3, 0x8bf8, + 0x98a4, 0x8adb, 0x924f, 0x8ee5, 0x98a5, 0x98a6, 0x98a7, 0x9454, + 0x8b76, 0x9456, 0x93e1, 0x8cc1, 0x9652, 0xe568, 0x98a8, 0x8fe6, + 0x98a9, 0x89b3, 0x8be3, 0x8cee, 0x96e7, 0x9ba4, 0x9790, 0x93fb, + 0x8aa3, 0x8b54, 0x98aa, 0x98ab, 0x97b9, 0x975c, 0x9188, 0x98ad, + 0x8e96, 0x93f1, 0x98b0, 0x895d, 0x8cdd, 0x8cdc, 0x88e4, 0x986a, + 0x9869, 0x8db1, 0x889f, 0x98b1, 0x98b2, 0x98b3, 0x9653, 0x98b4, + 0x8cf0, 0x88e5, 0x9692, 0x8b9c, 0x8b9d, 0x8b9e, 0x92e0, 0x97ba, + 0x98b5, 0x98b6, 0x98b7, 0x906c, 0x8f59, 0x906d, 0x98bc, 0x98ba, + 0x98bb, 0x8b77, 0x8da1, 0x89ee, 0x98b9, 0x98b8, 0x95a7, 0x8e65, + 0x8e64, 0x91bc, 0x98bd, 0x9574, 0x90e5, 0x8157, 0x98be, 0x98c0, + 0x91e3, 0x97df, 0x88c8, 0x98bf, 0x89bc, 0x8bc2, 0x9287, 0x8c8f, + 0x98c1, 0x9443, 0x8ae9, 0x98c2, 0x88c9, 0x8cde, 0x8aea, 0x959a, + 0x94b0, 0x8b78, 0x89ef, 0x98e5, 0x9360, 0x948c, 0x98c4, 0x94ba, + 0x97e0, 0x904c, 0x8e66, 0x8e97, 0x89be, 0x92cf, 0x9241, 0x98c8, + 0x88ca, 0x92e1, 0x8f5a, 0x8db2, 0x9743, 0x91cc, 0x89bd, 0x98c7, + 0x975d, 0x98c3, 0x98c5, 0x8dec, 0x98c6, 0x9b43, 0x98ce, 0x98d1, + 0x98cf, 0x89c0, 0x95b9, 0x98c9, 0x98cd, 0x8cf1, 0x8e67, 0x8aa4, + 0x98d2, 0x98ca, 0x97e1, 0x8e98, 0x98cb, 0x98d0, 0x98d3, 0x98cc, + 0x8b9f, 0x88cb, 0x8ba0, 0x89bf, 0x9b44, 0x9699, 0x958e, 0x8cf2, + 0x904e, 0x97b5, 0x95d6, 0x8c57, 0x91a3, 0x89e2, 0x8f72, 0x98d7, + 0x98dc, 0x98da, 0x98d5, 0x91ad, 0x98d8, 0x98db, 0x98d9, 0x95db, + 0x98d6, 0x904d, 0x9693, 0x98dd, 0x98de, 0x8f43, 0x98eb, 0x946f, + 0x9555, 0x98e6, 0x95ee, 0x89b4, 0x98ea, 0x98e4, 0x98ed, 0x9171, + 0x8cc2, 0x947b, 0xe0c5, 0x98ec, 0x937c, 0x98e1, 0x8cf4, 0x8cf3, + 0x98df, 0x8ed8, 0x98e7, 0x95ed, 0x926c, 0x98e3, 0x8c91, 0x98e0, + 0x98e8, 0x98e2, 0x97cf, 0x98e9, 0x9860, 0x8be4, 0x8c90, 0x98ee, + 0x98ef, 0x98f3, 0x88cc, 0x95ce, 0x98f2, 0x98f1, 0x98f5, 0x98f4, + 0x92e2, 0x8c92, 0x98f6, 0x8ec3, 0x91a4, 0x92e3, 0x8bf4, 0x98f7, + 0x8b55, 0x98f8, 0x98fa, 0x9654, 0x8c86, 0x8e50, 0x94f5, 0x98f9, + 0x8dc3, 0x9762, 0x98fc, 0x9942, 0x98fb, 0x8dc2, 0x8f9d, 0x8c58, + 0x9943, 0x8bcd, 0x9940, 0x9941, 0x93ad, 0x919c, 0x8ba1, 0x966c, + 0x9944, 0x97bb, 0x9945, 0x9948, 0x9946, 0x916d, 0x9947, 0x9949, + 0x994b, 0x994a, 0x95c6, 0x8b56, 0x994d, 0x994e, 0x89ad, 0x994c, + 0x8ef2, 0x9951, 0x9950, 0x994f, 0x98d4, 0x9952, 0x8f9e, 0x9953, + 0x9744, 0x96d7, 0x9955, 0x9954, 0x9957, 0x9956, 0x9958, 0x9959, + 0x88f2, 0x8cb3, 0x8c5a, 0x8f5b, 0x929b, 0x8ba2, 0x90e6, 0x8cf5, + 0x8d8e, 0x995b, 0x96c6, 0x9365, 0x8e99, 0x995a, 0x995c, 0x937d, + 0x8a95, 0x995d, 0x93fc, 0x9153, 0x995f, 0x9960, 0x94aa, 0x8cf6, + 0x985a, 0x9961, 0x8ba4, 0x95ba, 0x91b4, 0x8bef, 0x9354, 0x8c93, + 0x9962, 0x9963, 0x93e0, 0x897e, 0x9966, 0x8dfb, 0x9965, 0x8dc4, + 0x9967, 0xe3ec, 0x9968, 0x9660, 0x9969, 0x996a, 0x996b, 0x8fe7, + 0x8eca, 0x8aa5, 0x996e, 0x996c, 0x96bb, 0x996d, 0x9579, 0x996f, + 0x9970, 0x9971, 0x937e, 0x9975, 0x9973, 0x9974, 0x9972, 0x8de1, + 0x9976, 0x96e8, 0x97e2, 0x9977, 0x90a6, 0x9978, 0x8f79, 0x9979, + 0x929c, 0x97bd, 0x9380, 0x99c3, 0x997a, 0xeaa3, 0x8bc3, 0x997b, + 0x967d, 0x8f88, 0x91fa, 0x997d, 0x93e2, 0x997e, 0x9980, 0x8a4d, + 0x9981, 0x8ba5, 0x93ca, 0x899a, 0x8f6f, 0x949f, 0x9982, 0x9381, + 0x906e, 0x9983, 0x95aa, 0x90d8, 0x8aa0, 0x8aa7, 0x9984, 0x9986, + 0x8c59, 0x9985, 0x97f1, 0x8f89, 0x94bb, 0x95ca, 0x9987, 0x9798, + 0x9988, 0x9989, 0x939e, 0x998a, 0x90a7, 0x8dfc, 0x8c94, 0x998b, + 0x8e68, 0x8d8f, 0x92e4, 0x998d, 0x91a5, 0x8ded, 0x998e, 0x998f, + 0x914f, 0x998c, 0x9991, 0x9655, 0x8d84, 0x9990, 0x8c95, 0x8ddc, + 0x948d, 0x9994, 0x9992, 0x959b, 0x8fe8, 0x999b, 0x8a84, 0x9995, + 0x9993, 0x916e, 0x9997, 0x9996, 0x8a63, 0x8c80, 0x999c, 0x97ab, + 0x9998, 0x999d, 0x999a, 0x9999, 0x97cd, 0x8cf7, 0x89c1, 0x97f2, + 0x8f95, 0x9377, 0x8d85, 0x99a0, 0x99a1, 0x97e3, 0x984a, 0x99a3, + 0x8cf8, 0x99a2, 0x8a4e, 0x99a4, 0x9675, 0x92ba, 0x9745, 0x95d7, + 0x99a5, 0xe8d3, 0x93ae, 0x99a6, 0x8aa8, 0x96b1, 0x8f9f, 0x99a7, + 0x95e5, 0x99ab, 0x90a8, 0x99a8, 0x8bce, 0x99a9, 0x8aa9, 0x8c4d, + 0x99ac, 0x99ad, 0x99ae, 0x99af, 0x8ed9, 0x8cf9, 0x96dc, 0x96e6, + 0x93f5, 0x95ef, 0x99b0, 0x99b1, 0x99b3, 0x99b5, 0x99b4, 0x99b6, + 0x89bb, 0x966b, 0x8dfa, 0x99b7, 0x9178, 0x8fa0, 0x8ba7, 0x99b8, + 0x94d9, 0x99b9, 0x99ba, 0x99bb, 0x99bc, 0x9543, 0x8be6, 0x88e3, + 0x93bd, 0x99bd, 0x8f5c, 0x90e7, 0x99bf, 0x99be, 0x8fa1, 0x8cdf, + 0x99c1, 0x94bc, 0x99c2, 0x94da, 0x91b2, 0x91ec, 0x8ba6, 0x93ec, + 0x9250, 0x948e, 0x966d, 0x99c4, 0x90e8, 0x8c54, 0x99c5, 0x99c6, + 0x894b, 0x88f3, 0x8aeb, 0x91a6, 0x8b70, 0x9791, 0x99c9, 0x89b5, + 0x99c8, 0x8ba8, 0x99ca, 0x96ef, 0x99cb, 0x97d0, 0x8cfa, 0x8cb4, + 0x99cc, 0x99ce, 0x99cd, 0x907e, 0x8958, 0x897d, 0x99cf, 0x99d0, + 0x8cb5, 0x99d1, 0x8b8e, 0x8e51, 0x99d2, 0x9694, 0x8db3, 0x8b79, + 0x9746, 0x916f, 0x94bd, 0x8efb, 0x8f66, 0x8ee6, 0x8ef3, 0x8f96, + 0x94be, 0x99d5, 0x8962, 0x9170, 0x8cfb, 0x8cc3, 0x8be5, 0x99d9, + 0x9240, 0x91fc, 0x8ba9, 0x8fa2, 0x99da, 0x99d8, 0x89c2, 0x91e4, + 0x8eb6, 0x8e6a, 0x8945, 0x8a90, 0x8d86, 0x8e69, 0x99db, 0x99dc, + 0x8b68, 0x8a65, 0x8d87, 0x8b67, 0x92dd, 0x8944, 0x93af, 0x96bc, + 0x8d40, 0x9799, 0x9366, 0x8cfc, 0x8c4e, 0x99e5, 0x8be1, 0x9669, + 0x94db, 0x99e4, 0x8adc, 0x99df, 0x99e0, 0x99e2, 0x99e3, 0x8b7a, + 0x9081, 0x95ab, 0x99e1, 0x99dd, 0x8ce1, 0x99de, 0x9843, 0x95f0, + 0x92e6, 0x8ce0, 0x8d90, 0x99e6, 0x93db, 0x99ea, 0x8efc, 0x8ef4, + 0x99ed, 0x99eb, 0x96a1, 0x99e8, 0x99f1, 0x99ec, 0x99ef, 0x8cc4, + 0x96bd, 0x99f0, 0x99f2, 0x99f4, 0x8dee, 0x9861, 0x99e9, 0x99e7, + 0x99f3, 0x99ee, 0x99f6, 0x9a42, 0x99f8, 0x99fc, 0x9a40, 0x99f9, + 0x9a5d, 0x8de7, 0x8a50, 0x99f7, 0x9a44, 0x88f4, 0x9a43, 0x88a3, + 0x9569, 0x9a41, 0x99fa, 0x99f5, 0x99fb, 0x8dc6, 0x9a45, 0x88f5, + 0x9a4e, 0x9a46, 0x9a47, 0x8fa3, 0x9689, 0x9a4c, 0x9a4b, 0x934e, + 0x9a4d, 0x9a4a, 0x8953, 0x8db4, 0x904f, 0x9a48, 0x9382, 0x9a49, + 0x88a0, 0x9a53, 0x9742, 0x8fa5, 0x9a59, 0x9a58, 0x9a4f, 0x91c1, + 0x9a50, 0x91ed, 0x9a55, 0x8fa4, 0x9a52, 0x96e2, 0x8c5b, 0x9a56, + 0x9a57, 0x9a54, 0x9a5a, 0x9a51, 0x9a60, 0x9a65, 0x9a61, 0x9a5c, + 0x9a66, 0x9150, 0x9a68, 0x8d41, 0x9a5e, 0x929d, 0x9a62, 0x9a5b, + 0x8aab, 0x8aec, 0x8a85, 0x9a63, 0x9a5f, 0x8c96, 0x9a69, 0x9a67, + 0x9172, 0x8b69, 0x8baa, 0x9a64, 0x8bf2, 0x8963, 0x9a6d, 0x9a6b, + 0x9aa5, 0x9a70, 0x9a6a, 0x9a6e, 0x9a6c, 0x8e6b, 0x9a6f, 0x9a72, + 0x9a77, 0x9a75, 0x9a74, 0x9251, 0x89c3, 0x9a71, 0x9a73, 0x8fa6, + 0x8952, 0x9a76, 0x89dc, 0x9a82, 0x8ffa, 0x9a7d, 0x9a7b, 0x9a7c, + 0x9a7e, 0x895c, 0x9158, 0x9a78, 0x9a79, 0x8a9a, 0x9a81, 0x8aed, + 0x9a84, 0x9a80, 0x9a83, 0x95ac, 0x93d3, 0x94b6, 0x9a86, 0x9a85, + 0x8a64, 0x9a87, 0x9a8a, 0x9a89, 0x9a88, 0x9458, 0x9a8b, 0x9a8c, + 0x9a8e, 0x9a8d, 0x9a90, 0x9a93, 0x9a91, 0x9a8f, 0x9a92, 0x9a94, + 0x9a95, 0x9a96, 0x9a97, 0x9a98, 0x9964, 0x8efa, 0x8e6c, 0x89f1, + 0x88f6, 0x9263, 0x9a99, 0x8da2, 0x88cd, 0x907d, 0x9a9a, 0x8cc5, + 0x8d91, 0x9a9c, 0x9a9b, 0x95de, 0x9a9d, 0x9a9f, 0x9a9e, 0x9aa0, + 0x9aa1, 0x8c97, 0x8980, 0x9aa2, 0x9aa4, 0x9aa3, 0x9aa6, 0x9379, + 0x9aa7, 0x88b3, 0x8ddd, 0x8c5c, 0x926e, 0x9aa8, 0x9aa9, 0x9aab, + 0x9aac, 0x8de2, 0x8bcf, 0x9656, 0x9aaa, 0x9aad, 0x8dbf, 0x8d42, + 0x9ab1, 0x8da3, 0x9252, 0x9aae, 0x92d8, 0x9ab2, 0x9082, 0x9ab0, + 0x9ab3, 0x8c5e, 0x9ab4, 0x9ab5, 0x8d43, 0x8a5f, 0x9ab7, 0x9ab8, + 0x9ab9, 0x9ab6, 0x9aaf, 0x9aba, 0x9abb, 0x9684, 0x8fe9, 0x9abd, + 0x9abe, 0x9abc, 0x9ac0, 0x9457, 0x88e6, 0x9575, 0x9ac1, 0x8ffb, + 0x8eb7, 0x947c, 0x8aee, 0x8de9, 0x9678, 0x93b0, 0x8c98, 0x91cd, + 0x9abf, 0x9ac2, 0x91c2, 0x9ac3, 0x9ac4, 0x9ac6, 0x92e7, 0x8aac, + 0xea9f, 0x8981, 0x95f1, 0x8fea, 0x9367, 0x8de4, 0x9acc, 0x95bb, + 0x97db, 0x89f2, 0x9ac8, 0x9159, 0x9acb, 0x9383, 0x9368, 0x9384, + 0x94b7, 0x92cb, 0x8dc7, 0x9ac7, 0x8996, 0x9355, 0x9ac9, 0x9ac5, + 0x906f, 0x9acd, 0x8f6d, 0x8bab, 0x9ace, 0x95e6, 0x919d, 0x92c4, + 0x9ad0, 0x966e, 0x9ad1, 0x9ad6, 0x95ad, 0x9ad5, 0x9acf, 0x9ad2, + 0x9ad4, 0x8da4, 0x95c7, 0x9ad7, 0x9264, 0x89f3, 0x8feb, 0x9ad9, + 0x9ad8, 0x8d88, 0x9ada, 0x9adc, 0x9adb, 0x9ade, 0x9ad3, 0x9ae0, + 0x9adf, 0x9add, 0x8e6d, 0x9070, 0x9173, 0x9ae1, 0x90ba, 0x88eb, + 0x9484, 0x92d9, 0x9ae3, 0x9ae2, 0x9ae4, 0x9ae5, 0x9ae6, 0x9ae7, + 0x95cf, 0x9ae8, 0x89c4, 0x9ae9, 0x975b, 0x8a4f, 0x99c7, 0x8f67, + 0x91bd, 0x9aea, 0x96e9, 0x96b2, 0x9aec, 0x91e5, 0x9356, 0x91be, + 0x9576, 0x9aed, 0x9aee, 0x899b, 0x8eb8, 0x9aef, 0x88ce, 0x9af0, + 0x9af1, 0x8982, 0x8aef, 0x93de, 0x95f2, 0x9af5, 0x9174, 0x9af4, + 0x8c5f, 0x967a, 0x9af3, 0x9385, 0x9af7, 0x9af6, 0x9af9, 0x9af8, + 0x899c, 0x9afa, 0x8fa7, 0x9afc, 0x9244, 0x9afb, 0x95b1, 0x8f97, + 0x937a, 0x9b40, 0x8d44, 0x9b41, 0x9440, 0x94dc, 0x96cf, 0x9444, + 0x9b4a, 0x8b57, 0x9764, 0x96ad, 0x9baa, 0x9b42, 0x9b45, 0x91c3, + 0x9657, 0x9369, 0x9b46, 0x9685, 0x8dc8, 0x8fa8, 0x9b47, 0x8e6f, + 0x8e6e, 0x88b7, 0x8cc6, 0x90a9, 0x88cf, 0x9b4b, 0x9b4c, 0x9b49, + 0x8957, 0x8aad, 0x9b48, 0x96c3, 0x9550, 0x88a6, 0x88f7, 0x8e70, + 0x88d0, 0x88a1, 0x9b51, 0x9b4f, 0x96ba, 0x9b52, 0x9b50, 0x9b4e, + 0x9050, 0x9b4d, 0x95d8, 0x8ce2, 0x9b56, 0x9b57, 0x8fa9, 0x9b53, + 0x984b, 0x946b, 0x9b55, 0x8da5, 0x9b58, 0x9577, 0x9b59, 0x9b54, + 0x96b9, 0x947d, 0x9b5a, 0x9551, 0x9b5b, 0x9b5f, 0x9b5c, 0x89c5, + 0x9b5e, 0x8eb9, 0x9b5d, 0x8c99, 0x9b6b, 0x9b64, 0x9b61, 0x9284, + 0x9b60, 0x9b62, 0x9b63, 0x9b65, 0x9b66, 0x8af0, 0x9b68, 0x9b67, + 0x9b69, 0x8fec, 0x9b6c, 0x92da, 0x8964, 0x9b6a, 0x9b6d, 0x9b6e, + 0x9b71, 0x9b6f, 0x9b70, 0x8e71, 0x9b72, 0x8d45, 0x9b73, 0x8e9a, + 0x91b6, 0x9b74, 0x9b75, 0x8e79, 0x8d46, 0x96d0, 0x8b47, 0x8cc7, + 0x9b76, 0x8a77, 0x9b77, 0x91b7, 0x9b78, 0x9ba1, 0x9b79, 0x9b7a, + 0x9b7b, 0x9b7d, 0x9b7e, 0x9b80, 0x91ee, 0x8946, 0x8ee7, 0x88c0, + 0x9176, 0x8aae, 0x8eb3, 0x8d47, 0x9386, 0x8f40, 0x8aaf, 0x9288, + 0x92e8, 0x88b6, 0x8b58, 0x95f3, 0x8ec0, 0x8b71, 0x90e9, 0x8eba, + 0x9747, 0x9b81, 0x8b7b, 0x8dc9, 0x8a51, 0x8983, 0x8faa, 0x89c6, + 0x9b82, 0x9765, 0x8f68, 0x8ee2, 0x9b83, 0x8af1, 0x93d0, 0x96a7, + 0x9b84, 0x9b85, 0x9578, 0x9b87, 0x8aa6, 0x8bf5, 0x9b86, 0x8ab0, + 0x9051, 0x9b8b, 0x8e40, 0x89c7, 0x9b8a, 0x9b88, 0x9b8c, 0x9b89, + 0x944a, 0x9ecb, 0x9052, 0x9b8d, 0x97be, 0x9b8e, 0x9b90, 0x929e, + 0x9b8f, 0x90a1, 0x8e9b, 0x91ce, 0x8ef5, 0x9595, 0x90ea, 0x8ecb, + 0x9b91, 0x8fab, 0x9b92, 0x9b93, 0x88d1, 0x91b8, 0x9071, 0x9b94, + 0x93b1, 0x8fac, 0x8fad, 0x9b95, 0x90eb, 0x8fae, 0x9b96, 0x9b97, + 0x96de, 0x9b98, 0x8bc4, 0x8f41, 0x9b99, 0x9b9a, 0x8eda, 0x904b, + 0x93f2, 0x9073, 0x94f6, 0x9441, 0x8bc7, 0x9b9b, 0x8b8f, 0x9b9c, + 0x8bfc, 0x93cd, 0x89ae, 0x8e72, 0x9b9d, 0x9ba0, 0x9b9f, 0x8bfb, + 0x9b9e, 0x9357, 0x91ae, 0x936a, 0x8ec6, 0x9177, 0x979a, 0x9ba2, + 0x9ba3, 0x93d4, 0x8e52, 0x9ba5, 0x9ba6, 0x9ba7, 0x8af2, 0x9ba8, + 0x9ba9, 0x89aa, 0x915a, 0x8ae2, 0x9bab, 0x96a6, 0x91d0, 0x8a78, + 0x9bad, 0x9baf, 0x8add, 0x9bac, 0x9bae, 0x9bb1, 0x9bb0, 0x9bb2, + 0x9bb3, 0x93bb, 0x8bac, 0x89e3, 0x9bb4, 0x9bb9, 0x9bb7, 0x95f5, + 0x95f4, 0x9387, 0x9bb6, 0x8f73, 0x9bb5, 0x9092, 0x9bba, 0x8de8, + 0x9bc0, 0x9bc1, 0x9bbb, 0x8a52, 0x9bbc, 0x9bc5, 0x9bc4, 0x9bc3, + 0x9bbf, 0x9bbe, 0x9bc2, 0x95f6, 0x9bc9, 0x9bc6, 0x9bc8, 0x9792, + 0x9bc7, 0x9bbd, 0x9093, 0x9bca, 0x8db5, 0x9bcb, 0x9bcc, 0x9bcf, + 0x9bce, 0x9bcd, 0x9388, 0x9bb8, 0x9bd5, 0x9bd1, 0x9bd0, 0x9bd2, + 0x9bd3, 0x9bd6, 0x97e4, 0x9bd7, 0x9bd4, 0x9bd8, 0x8ade, 0x9bd9, + 0x9bdb, 0x9bda, 0x9bdc, 0x9bdd, 0x90ec, 0x8f42, 0x8f84, 0x9183, + 0x8d48, 0x8db6, 0x8d49, 0x8b90, 0x9bde, 0x8db7, 0x8cc8, 0x9bdf, + 0x96a4, 0x9462, 0x9be0, 0x8d4a, 0x8aaa, 0x9246, 0x8bd0, 0x8e73, + 0x957a, 0x94bf, 0x9be1, 0x8af3, 0x9be4, 0x929f, 0x9be3, 0x9be2, + 0x9be5, 0x92e9, 0x9083, 0x8e74, 0x90c8, 0x91d1, 0x8b41, 0x92a0, + 0x9be6, 0x9be7, 0x8fed, 0x9658, 0x9bea, 0x9be9, 0x9be8, 0x959d, + 0x9bf1, 0x9679, 0x9beb, 0x9bed, 0x968b, 0x9bec, 0x9bee, 0x94a6, + 0x9bef, 0x95bc, 0x9bf0, 0x8ab1, 0x95bd, 0x944e, 0x9bf2, 0x9bf3, + 0x8d4b, 0x8ab2, 0x9bf4, 0x8cb6, 0x9763, 0x9748, 0x8af4, 0x9bf6, + 0x92a1, 0x8d4c, 0x8faf, 0x94dd, 0x8fb0, 0x8f98, 0x92ea, 0x95f7, + 0x9358, 0x8d4d, 0x957b, 0x9bf7, 0x9378, 0x8dc0, 0x8cc9, 0x92eb, + 0x88c1, 0x8f8e, 0x8d4e, 0x9766, 0x9bf8, 0x9bf9, 0x9470, 0x9bfa, + 0x97f5, 0x984c, 0x9bfc, 0x9bfb, 0x8a66, 0x9c40, 0x9c43, 0x9c44, + 0x9c42, 0x955f, 0x8fb1, 0x9c46, 0x9c45, 0x9c41, 0x9c47, 0x9c48, + 0x9c49, 0x9c4c, 0x9c4a, 0x9c4b, 0x9c4d, 0x8984, 0x92ec, 0x9c4e, + 0x8c9a, 0x89f4, 0x9455, 0x9c4f, 0x93f9, 0x95d9, 0x9c50, 0x984d, + 0x9c51, 0x95be, 0x9c54, 0x989f, 0x98af, 0x8eae, 0x93f3, 0x9c55, + 0x8b7c, 0x92a2, 0x88f8, 0x9c56, 0x95a4, 0x8d4f, 0x926f, 0x92ed, + 0x96ed, 0x8cb7, 0x8cca, 0x9c57, 0x9c58, 0x9c5e, 0x8ee3, 0x92a3, + 0x8bad, 0x9c59, 0x954a, 0x9265, 0x9c5a, 0x9c5b, 0x8bae, 0x9c5c, + 0x9c5d, 0x9c5f, 0x9396, 0x9c60, 0x9c61, 0x9c62, 0x9c53, 0x9c52, + 0x9c63, 0x8c60, 0x9546, 0x8dca, 0x9556, 0x92a4, 0x956a, 0x9c64, + 0x8fb2, 0x8965, 0x9c65, 0x9c66, 0x96f0, 0x94de, 0x9c69, 0x899d, + 0x90aa, 0x9c68, 0x9c67, 0x8c61, 0x91d2, 0x9c6d, 0x9c6b, 0x9c6a, + 0x97a5, 0x8ce3, 0x8f99, 0x9c6c, 0x936b, 0x8f5d, 0x93be, 0x9c70, + 0x9c6f, 0x9c6e, 0x9c71, 0x8ce4, 0x9c72, 0x959c, 0x8f7a, 0x9c73, + 0x94f7, 0x93bf, 0x92a5, 0x934f, 0x9c74, 0x8b4a, 0x9053, 0x954b, + 0x8af5, 0x9445, 0x9c75, 0x8e75, 0x9659, 0x965a, 0x899e, 0x9c7a, + 0x9289, 0x9c77, 0x89f5, 0x9cab, 0x9c79, 0x944f, 0x9c78, 0x9c76, + 0x8d9a, 0x9c7c, 0x9c83, 0x9c89, 0x9c81, 0x937b, 0x9c86, 0x957c, + 0x9c80, 0x9c85, 0x97e5, 0x8e76, 0x91d3, 0x9c7d, 0x8b7d, 0x9c88, + 0x90ab, 0x8985, 0x9c82, 0x89f6, 0x9c87, 0x8baf, 0x9c84, 0x9c8a, + 0x9c8c, 0x9c96, 0x9c94, 0x9c91, 0x9c90, 0x97f6, 0x9c92, 0x8bb0, + 0x8d50, 0x8f9a, 0x9c99, 0x9c8b, 0x9c8f, 0x9c7e, 0x89f8, 0x9c93, + 0x9c95, 0x9270, 0x8da6, 0x89b6, 0x9c8d, 0x9c98, 0x9c97, 0x8bb1, + 0x91a7, 0x8a86, 0x8c62, 0x9c8e, 0x9c9a, 0x9c9d, 0x9c9f, 0x8ebb, + 0x9ca5, 0x92ee, 0x9c9b, 0x9ca3, 0x89f7, 0x9ca1, 0x9ca2, 0x9c9e, + 0x9ca0, 0x8ce5, 0x9749, 0x8ab3, 0x8978, 0x9ca4, 0x9459, 0x88ab, + 0x94df, 0x9c7b, 0x9caa, 0x9cae, 0x96e3, 0x9ca7, 0x9389, 0x9cac, + 0x8fee, 0x9cad, 0x93d5, 0x9866, 0x9ca9, 0x9caf, 0x8d9b, 0x90c9, + 0x88d2, 0x9ca8, 0x9ca6, 0x9179, 0x9c9c, 0x8e53, 0x91c4, 0x9cbb, + 0x917a, 0x9cb6, 0x9cb3, 0x9cb4, 0x8ee4, 0x9cb7, 0x9cba, 0x9cb5, + 0x8f44, 0x9cb8, 0x9cb2, 0x96fa, 0x96f9, 0x9cbc, 0x9cbd, 0x88d3, + 0x9cb1, 0x8bf0, 0x88a4, 0x8ab4, 0x9cb9, 0x9cc1, 0x9cc0, 0x9cc5, + 0x9cc6, 0x9cc4, 0x9cc7, 0x9cbf, 0x9cc3, 0x9cc8, 0x9cc9, 0x9cbe, + 0x8e9c, 0x9cc2, 0x91d4, 0x8d51, 0x9cb0, 0x9054, 0x9cd6, 0x95e7, + 0x9ccc, 0x9ccd, 0x9cce, 0x9cd5, 0x9cd4, 0x969d, 0x8ab5, 0x9cd2, + 0x8c64, 0x8a53, 0x9ccf, 0x97b6, 0x9cd1, 0x88d4, 0x9cd3, 0x9cca, + 0x9cd0, 0x9cd7, 0x8c63, 0x9ccb, 0x977c, 0x974a, 0x9cda, 0x9cde, + 0x919e, 0x97f7, 0x9cdf, 0x9cdc, 0x9cd9, 0x9cd8, 0x9cdd, 0x95ae, + 0x93b2, 0x8c65, 0x9ce0, 0x9cdb, 0x9ce1, 0x8c9b, 0x89af, 0x9ce9, + 0x8ab6, 0x9ce7, 0x9ce8, 0x8da7, 0x9ce6, 0x9ce4, 0x9ce3, 0x9cea, + 0x9ce2, 0x9cec, 0x89f9, 0x9cee, 0x9ced, 0x92a6, 0x9cf1, 0x9cef, + 0x9ce5, 0x8c9c, 0x9cf0, 0x9cf4, 0x9cf3, 0x9cf5, 0x9cf2, 0x9cf6, + 0x9cf7, 0x9cf8, 0x95e8, 0x9cfa, 0x9cf9, 0x8f5e, 0x90ac, 0x89e4, + 0x89fa, 0x9cfb, 0x88bd, 0x90ca, 0x9cfc, 0xe6c1, 0x9d40, 0x8c81, + 0x9d41, 0x90ed, 0x9d42, 0x9d43, 0x8b59, 0x9d44, 0x9d45, 0x9d46, + 0x91d5, 0x8ccb, 0x96df, 0x965b, 0x8f8a, 0x9d47, 0x90ee, 0xe7bb, + 0x94e0, 0x8ee8, 0x8dcb, 0x9d48, 0x91c5, 0x95a5, 0x91ef, 0x9d4b, + 0x9d49, 0x9d4c, 0x9d4a, 0x9d4d, 0x95af, 0x88b5, 0x957d, 0x94e1, + 0x9d4e, 0x9d51, 0x8fb3, 0x8b5a, 0x9d4f, 0x9d56, 0x8fb4, 0x9d50, + 0x9463, 0x977d, 0x9d52, 0x9d53, 0x9d57, 0x938a, 0x9d54, 0x8d52, + 0x90dc, 0x9d65, 0x94b2, 0x91f0, 0x94e2, 0x9dab, 0x95f8, 0x92ef, + 0x9695, 0x9d5a, 0x899f, 0x928a, 0x9d63, 0x9253, 0x9d5d, 0x9d64, + 0x9d5f, 0x9d66, 0x9d62, 0x9d61, 0x948f, 0x9d5b, 0x89fb, 0x9d59, + 0x8b91, 0x91f1, 0x9d55, 0x9d58, 0x8d53, 0x90d9, 0x8fb5, 0x9d60, + 0x9471, 0x8b92, 0x8a67, 0x8a87, 0x9040, 0x9d68, 0x9d6d, 0x9d69, + 0x8c9d, 0x9d6e, 0x8e41, 0x8d89, 0x8f45, 0x9d5c, 0x8e9d, 0x9d6b, + 0x8e77, 0x9d6c, 0x88c2, 0x9d67, 0x92a7, 0x8b93, 0x8bb2, 0x9d6a, + 0x88a5, 0x8dc1, 0x9055, 0x92f0, 0x94d2, 0x9d70, 0x917d, 0x91a8, + 0x8e4a, 0x9d71, 0x9d73, 0x9d6f, 0x95df, 0x92bb, 0x917b, 0x95f9, + 0x8ecc, 0x9d80, 0x9d7e, 0x9098, 0x8c9e, 0x9d78, 0x8fb7, 0x93e6, + 0x9450, 0x9d76, 0x917c, 0x8ef6, 0x9d7b, 0x8fb6, 0x9d75, 0x9d7a, + 0x9472, 0x9d74, 0x8c40, 0x8a7c, 0x9d7c, 0x97a9, 0x8dcc, 0x9254, + 0x9d79, 0x90da, 0x8d54, 0x9084, 0x8986, 0x915b, 0x9d77, 0x8b64, + 0x8c66, 0x92cd, 0x9d7d, 0x917e, 0x9d81, 0x9d83, 0x91b5, 0x9d89, + 0x9d84, 0x9d86, 0x9560, 0x92f1, 0x9d87, 0x974b, 0x9767, 0x8ab7, + 0x88ac, 0x9d85, 0x9d82, 0x8af6, 0x8987, 0x9d88, 0x9768, 0x9d8c, + 0x91b9, 0x9d93, 0x9d8d, 0x9d8a, 0x9d91, 0x9d72, 0x9d8e, 0x9d92, + 0x94c0, 0x938b, 0x9d8b, 0x9d8f, 0x8c67, 0x8def, 0x90db, 0x9d97, + 0x9345, 0x9d94, 0x9680, 0x9d95, 0x9d96, 0x96cc, 0x90a0, 0x8c82, + 0x9d9d, 0x8e54, 0x9d9a, 0x9d99, 0x9451, 0x93b3, 0x9350, 0x9d9b, + 0x9d9c, 0x958f, 0x9464, 0x8e42, 0x90ef, 0x966f, 0x8a68, 0x9da3, + 0x9d9e, 0x9769, 0x9da5, 0x9da1, 0x9da2, 0x9180, 0x9da0, 0x9d5e, + 0x9da4, 0x9d9f, 0x9da9, 0x9daa, 0x9346, 0x9dac, 0x8e43, 0x9da7, + 0x8b5b, 0x9dad, 0x9da6, 0x9db1, 0x9db0, 0x9daf, 0x9db2, 0x9db4, + 0x8fef, 0x9db3, 0x9db7, 0x9db5, 0x9db6, 0x9d90, 0x9db9, 0x9db8, + 0x9d98, 0x9dba, 0x9dae, 0x8e78, 0x9dbb, 0x9dbc, 0x9dbe, 0x9dbd, + 0x9dbf, 0x89fc, 0x8d55, 0x95fa, 0x90ad, 0x8ccc, 0x9dc1, 0x9dc4, + 0x9571, 0x8b7e, 0x9dc3, 0x9dc2, 0x9473, 0x9dc5, 0x8bb3, 0x9dc7, + 0x9dc6, 0x8ab8, 0x8e55, 0x93d6, 0x8c68, 0x9094, 0x9dc8, 0x90ae, + 0x9347, 0x957e, 0x9dc9, 0x9dca, 0x9dcb, 0x95b6, 0x9b7c, 0x90c4, + 0x956b, 0x8dd6, 0x94e3, 0x94c1, 0x936c, 0x97bf, 0x9dcd, 0x8ece, + 0x9dce, 0x88b4, 0x8bd2, 0x90cb, 0x9580, 0x9dcf, 0x8e61, 0x9266, + 0x8e7a, 0x9056, 0x9dd0, 0x95fb, 0x8997, 0x8e7b, 0x9dd3, 0x9dd1, + 0x9dd4, 0x97b7, 0x9dd2, 0x90f9, 0x9dd5, 0x91b0, 0x9dd6, 0x8af8, + 0x9dd8, 0x9dd7, 0x9dd9, 0x9dda, 0x8af9, 0x93fa, 0x9255, 0x8b8c, + 0x8e7c, 0x9181, 0x8f7b, 0x88ae, 0x9ddb, 0x89a0, 0x9ddf, 0x8d56, + 0x9dde, 0x8da9, 0x8fb8, 0x9ddd, 0x8fb9, 0x96be, 0x8da8, 0x88d5, + 0x90cc, 0x9de4, 0x90af, 0x8966, 0x8f74, 0x9686, 0x8df0, 0x8fba, + 0x90a5, 0x9de3, 0x9de1, 0x9de2, 0x928b, 0x9e45, 0x9de8, 0x8e9e, + 0x8d57, 0x9de6, 0x9de7, 0x9057, 0x9de5, 0x8e4e, 0x9dea, 0x9de9, + 0x9dee, 0x9def, 0x9deb, 0x8a41, 0x9dec, 0x9ded, 0x94d3, 0x9581, + 0x8c69, 0x9df0, 0x90b0, 0x8fbb, 0x9271, 0x8bc5, 0x9df1, 0x9df5, + 0x89c9, 0x9df2, 0x9df4, 0x9df3, 0x8f8b, 0x9267, 0x88c3, 0x9df6, + 0x9df7, 0x92a8, 0x97ef, 0x8e62, 0x95e9, 0x965c, 0x9e41, 0x9df9, + 0x9dfc, 0x9dfb, 0x9df8, 0x9e40, 0x93dc, 0x9dfa, 0x9e42, 0x8f8c, + 0x9e43, 0x976a, 0x9498, 0x9e44, 0x9e46, 0x9e47, 0x9e48, 0x8bc8, + 0x8967, 0x8d58, 0x9e49, 0x9e4a, 0x8f91, 0x9182, 0x99d6, 0x915d, + 0x915c, 0x91d6, 0x8dc5, 0x98f0, 0x8c8e, 0x974c, 0x95fc, 0x959e, + 0x9e4b, 0x8df1, 0x92bd, 0x9e4c, 0x984e, 0x965d, 0x92a9, 0x9e4d, + 0x8afa, 0x9e4e, 0x9e4f, 0x96d8, 0x96a2, 0x9696, 0x967b, 0x8e44, + 0x9e51, 0x8ee9, 0x9670, 0x9e53, 0x9e56, 0x9e55, 0x8af7, 0x8b80, + 0x9e52, 0x9e54, 0x9e57, 0x9099, 0x979b, 0x88c7, 0x8dde, 0x91ba, + 0x8edb, 0x8ff1, 0x9e5a, 0x936d, 0x9e58, 0x91a9, 0x9e59, 0x8ff0, + 0x96db, 0x9e5b, 0x9e5c, 0x9788, 0x9e61, 0x8d59, 0x9474, 0x9e5e, + 0x938c, 0x9ddc, 0x9de0, 0x8b6e, 0x9466, 0x9e60, 0x8fbc, 0x94c2, + 0x9e66, 0x94f8, 0x9e5d, 0x9e63, 0x9e62, 0x90cd, 0x968d, 0x97d1, + 0x9687, 0x89ca, 0x8e7d, 0x9867, 0x9e65, 0x9095, 0x9e64, 0x9e5f, + 0x8ccd, 0x9e6b, 0x9e69, 0x89cb, 0x9e67, 0x9e6d, 0x9e73, 0x91c6, + 0x95bf, 0x9e75, 0x9541, 0x9e74, 0x9490, 0x965e, 0x8ab9, 0x90f5, + 0x8f5f, 0x92d1, 0x974d, 0x9e70, 0x9e6f, 0x9e71, 0x9e6e, 0x9e76, + 0x9e6c, 0x9e6a, 0x9e72, 0x9e68, 0x928c, 0x96f6, 0x8ec4, 0x8df2, + 0x8db8, 0x968f, 0x8a60, 0x92cc, 0x93c8, 0x8968, 0x90f0, 0x90b2, + 0x8c49, 0x9e78, 0x8d5a, 0x8a9c, 0x9e7a, 0x8a94, 0x9e81, 0x9e7d, + 0x90f1, 0x8a6a, 0x8daa, 0x8a69, 0x8dcd, 0x9e7b, 0x8c85, 0x8c6a, + 0x938d, 0x9e79, 0x88c4, 0x9e7c, 0x9e7e, 0x8bcb, 0x8c4b, 0x8aba, + 0x8b6a, 0x9e82, 0x8df7, 0x9691, 0x8e56, 0x9e83, 0x954f, 0x9e8f, + 0x89b1, 0x9e84, 0x9e95, 0x9e85, 0x97c0, 0x9e8c, 0x947e, 0x9e94, + 0x9e87, 0x88b2, 0x9e89, 0x8d5b, 0x9e8b, 0x9e8a, 0x9e86, 0x9e91, + 0x8fbd, 0x9aeb, 0x8ce6, 0x979c, 0x9e88, 0x92f2, 0x8a42, 0x8dab, + 0x9e80, 0x9e90, 0x8a81, 0x9e8e, 0x9e92, 0x938e, 0x8afc, 0x9eb0, + 0x96c7, 0x9e97, 0x8afb, 0x9e9e, 0x965f, 0x9e9f, 0x9ea1, 0x9ea5, + 0x9e99, 0x9249, 0x938f, 0x9ea9, 0x9e9c, 0x9ea6, 0x9ea0, 0x9058, + 0x9eaa, 0x90b1, 0x9ea8, 0x8abb, 0x986f, 0x9e96, 0x9ea4, 0x88d6, + 0x9e98, 0x96b8, 0x9e9d, 0x9041, 0x92c5, 0x9e93, 0x9ea3, 0x909a, + 0x9ead, 0x8a91, 0x8c9f, 0x9eaf, 0x9e9a, 0x9eae, 0x9ea7, 0x9e9b, + 0x9eab, 0x9eac, 0x9ebd, 0x93cc, 0x9ea2, 0x9eb9, 0x9ebb, 0x92d6, + 0x976b, 0x9596, 0x9eb6, 0x91c8, 0x9ebc, 0x915e, 0x9eb3, 0x9ec0, + 0x9ebf, 0x93ed, 0x9ebe, 0x93e8, 0x9ec2, 0x9eb5, 0x8bc6, 0x9eb8, + 0x8f7c, 0x9480, 0x9eba, 0x8bc9, 0x9eb2, 0x9eb4, 0x9eb1, 0x984f, + 0x8a79, 0x9eb7, 0x9ec1, 0x8a54, 0x8de5, 0x897c, 0x9ed2, 0x9850, + 0x9ed5, 0x9059, 0x9ed4, 0x9ed3, 0x9ed0, 0x9ec4, 0x9ee1, 0x9ec3, + 0x9ed6, 0x9ece, 0x9ec9, 0x9ec6, 0x9ec7, 0x9ecf, 0xeaa0, 0x9ecc, + 0x8d5c, 0x92c6, 0x9184, 0x9eca, 0x9ec5, 0x9ec8, 0x976c, 0x968a, + 0x9ecd, 0x9ed7, 0x9edf, 0x9ed8, 0x9ee5, 0x9ee3, 0x9ede, 0x9edd, + 0x92ce, 0x9185, 0x9edb, 0x9ed9, 0x9ee0, 0x9ee6, 0x94f3, 0x9eec, + 0x9ee7, 0x9eea, 0x9ee4, 0x9294, 0x9557, 0x9eda, 0x9ee2, 0x8fbe, + 0x96cd, 0x9ef6, 0x9ee9, 0x8ca0, 0x89a1, 0x8a7e, 0x9ed1, 0x8fbf, + 0x9eee, 0x9ef5, 0x8ef7, 0x8a92, 0x924d, 0x9eeb, 0x9ef0, 0x9ef4, + 0x8bb4, 0x8b6b, 0x9ef2, 0x8b40, 0x93c9, 0x9ef1, 0x9ef3, 0x9eed, + 0x9eef, 0x8a80, 0x9268, 0x9efa, 0x9ef8, 0x8ce7, 0x9ef7, 0x9f40, + 0x9e77, 0x9ef9, 0x9efb, 0x9efc, 0x9f4b, 0x9f47, 0x9e8d, 0x9f46, + 0x9f45, 0x9f42, 0x9ee8, 0x9f44, 0x9f43, 0x9f49, 0x9845, 0x9f4c, + 0x8bf9, 0x9f48, 0x9f4a, 0x94a5, 0x9f4d, 0x9f51, 0x9f4e, 0x9793, + 0x9f4f, 0x9edc, 0x9f52, 0x9f53, 0x8954, 0x9f55, 0x8c87, 0x8e9f, + 0x8bd3, 0x89a2, 0x977e, 0x9f57, 0x9f56, 0x9f59, 0x8b5c, 0x8bd4, + 0x8abc, 0x9f5c, 0x9f5b, 0x9f5d, 0x89cc, 0x9256, 0x9f5e, 0x8abd, + 0x9f60, 0x9f5f, 0x9f61, 0x9f62, 0x9f63, 0x8e7e, 0x90b3, 0x8d9f, + 0x9590, 0x95e0, 0x9863, 0x8e95, 0x8dce, 0x97f0, 0x9f64, 0x9f65, + 0x8e80, 0x9f66, 0x9f67, 0x9f69, 0x9f68, 0x9677, 0x8f7d, 0x8eea, + 0x8e63, 0x9f6a, 0x9f6c, 0x9042, 0x9f6b, 0x9f6d, 0x9f6e, 0x9f6f, + 0x9f70, 0x9f71, 0x9f73, 0x9f72, 0x9f74, 0x89a3, 0x9269, 0x9f75, + 0x8e45, 0x8a6b, 0x9f76, 0x9361, 0x9aca, 0x8b42, 0x9f77, 0x9f78, + 0x95ea, 0x9688, 0x93c5, 0x9f79, 0x94e4, 0x94f9, 0x96d1, 0x9f7a, + 0x9f7c, 0x9f7b, 0x9f7e, 0x9f7d, 0x9f81, 0x8e81, 0x96af, 0x9f82, + 0x9f83, 0x8b43, 0x9f84, 0x9f86, 0x9f85, 0x9085, 0x9558, 0x8969, + 0x94c3, 0x92f3, 0x8f60, 0x8b81, 0x94c4, 0x8eac, 0x9f88, 0x8abe, + 0x8998, 0x93f0, 0x9f87, 0x8d5d, 0x9272, 0x9f89, 0x9f91, 0x9f8a, + 0x91bf, 0x8b82, 0x9f92, 0x8c88, 0x8b44, 0x9f90, 0x9f8e, 0x9f8b, + 0x9780, 0x92be, 0x93d7, 0x9f8c, 0x9f94, 0x9f93, 0x8c42, 0x89ab, + 0x8db9, 0x9f8d, 0x9f8f, 0x9676, 0x91f2, 0x9697, 0x9f9c, 0x9f9d, + 0x89cd, 0x95a6, 0x96fb, 0x9f9f, 0x8ea1, 0x8fc0, 0x9f98, 0x9f9e, + 0x8988, 0x8bb5, 0x9f95, 0x9f9a, 0x90f2, 0x9491, 0x94e5, 0x9f97, + 0x9640, 0x9f99, 0x9fa2, 0x9fa0, 0x9f9b, 0x9641, 0x9467, 0x8b83, + 0x9344, 0x928d, 0x9fa3, 0x9fa1, 0x91d7, 0x9f96, 0x896a, 0x976d, + 0x9fae, 0x9fad, 0x90f4, 0x9faa, 0x978c, 0x93b4, 0x9fa4, 0x92c3, + 0x896b, 0x8d5e, 0x9fa7, 0x8f46, 0x9fac, 0x9fab, 0x9fa6, 0x9fa9, + 0x8a88, 0x9fa8, 0x9468, 0x97ac, 0x8ff2, 0x90f3, 0x9fb4, 0x9fb2, + 0x956c, 0x9faf, 0x9fb1, 0x8959, 0x8d5f, 0x9851, 0x8a5c, 0x9582, + 0x9781, 0x8a43, 0x905a, 0x9fb3, 0x9fb8, 0x8fc1, 0x974f, 0x9fb5, + 0x9fb0, 0x9fb6, 0x97dc, 0x9393, 0x93c0, 0x8a55, 0x8974, 0x9fbc, + 0x9fbf, 0x97c1, 0x9784, 0x9fc6, 0x9fc0, 0x9fbd, 0x97d2, 0x9fc3, + 0x8f69, 0x9fc5, 0x9fca, 0x9391, 0x9fc8, 0x9fc2, 0x9257, 0x9fc9, + 0x9fbe, 0x9fc4, 0x9fcb, 0x88fa, 0x9fc1, 0x9fcc, 0x905b, 0x8f7e, + 0x95a3, 0x8dac, 0x9fb9, 0x9fc7, 0x9359, 0x90b4, 0x8a89, 0x8dcf, + 0x8fc2, 0x9fbb, 0x8f61, 0x8c6b, 0x9fba, 0x9fd0, 0x8f8d, 0x8cb8, + 0x9fdf, 0x9fd9, 0x8b94, 0x936e, 0x9fd4, 0x9fdd, 0x88ad, 0x8951, + 0x89b7, 0x9fd6, 0x91aa, 0x9fcd, 0x9fcf, 0x8d60, 0x9fe0, 0x9fdb, + 0x9fd3, 0x9fda, 0x96a9, 0x9fd8, 0x9fdc, 0x8cce, 0x8fc3, 0x9258, + 0x9fd2, 0x974e, 0x9fd5, 0x9fce, 0x9392, 0x9fd1, 0x9fd7, 0x9870, + 0x8ebc, 0x969e, 0x9fe1, 0x94ac, 0x9fed, 0x8cb9, 0x8f80, 0x9fe3, + 0x97ad, 0x8d61, 0x9ff0, 0x88ec, 0x9fee, 0x9fe2, 0x9fe8, 0x9fea, + 0x976e, 0x9fe5, 0x934d, 0x9fe7, 0x9fef, 0x9fe9, 0x96c5, 0x9fe4, + 0x8ea0, 0x9ffc, 0x8a8a, 0x9fe6, 0x9feb, 0x9fec, 0x91ea, 0x91d8, + 0x9ff4, 0x9ffa, 0x9ff8, 0x9348, 0xe042, 0x9ff5, 0x9ff6, 0x9fde, + 0x8b99, 0x9559, 0x8ebd, 0x8d97, 0x9852, 0x9ff2, 0xe041, 0x8989, + 0x9186, 0x9499, 0x8abf, 0x97f8, 0x969f, 0x92d0, 0x9ff9, 0x9ffb, + 0x9151, 0xe040, 0x9ff7, 0x9ff1, 0x8ac1, 0x8c89, 0xe04e, 0xe049, + 0x90f6, 0x8a83, 0x8f81, 0xe052, 0xe04b, 0x92aa, 0xe048, 0x92d7, + 0xe06b, 0xe045, 0xe044, 0xe04d, 0xe047, 0xe046, 0xe04c, 0x909f, + 0xe043, 0xe04f, 0xe050, 0x8ac0, 0xe055, 0xe054, 0xe056, 0xe059, + 0x9362, 0xe053, 0xe057, 0x8c83, 0x91f7, 0xe051, 0x945a, 0xe058, + 0xe05d, 0xe05b, 0xe05e, 0xe061, 0xe05a, 0x8d8a, 0x9447, 0x9fb7, + 0x9794, 0xe05c, 0xe060, 0x91f3, 0xe05f, 0xe04a, 0xe889, 0xe064, + 0xe068, 0xe066, 0xe062, 0xe063, 0xe067, 0xe065, 0x956d, 0xe06d, + 0xe06a, 0xe069, 0xe06c, 0x93d2, 0xe06e, 0x9295, 0x91eb, 0x90a3, + 0xe06f, 0xe071, 0xe070, 0x9ff3, 0xe072, 0x93e5, 0xe073, 0x89ce, + 0x9394, 0x8a44, 0x8b84, 0x8edc, 0x8dd0, 0x9846, 0x9086, 0x898a, + 0xe075, 0xe074, 0xe078, 0x9259, 0xe07b, 0xe076, 0xe07a, 0xe079, + 0x935f, 0x88d7, 0x97f3, 0xe07d, 0x8947, 0xe080, 0xe07e, 0xe07c, + 0xe077, 0x9642, 0xe082, 0xe081, 0x898b, 0xe084, 0x95b0, 0xe083, + 0x96b3, 0x8fc5, 0x9152, 0x8fc4, 0x97f9, 0xe08a, 0x90f7, 0xe086, + 0xe08b, 0x898c, 0xe089, 0x9481, 0xe085, 0xe088, 0x8fc6, 0x94cf, + 0xe08c, 0x8ecf, 0x90f8, 0xe08f, 0xe087, 0x8c46, 0xe08d, 0x976f, + 0xe090, 0xeaa4, 0x8f6e, 0xe091, 0xe092, 0x944d, 0xe094, 0xe095, + 0x9452, 0x9395, 0xe097, 0xe099, 0x97d3, 0xe096, 0xe098, 0x898d, + 0xe093, 0x9a7a, 0xe09a, 0x9187, 0x8e57, 0xe09c, 0xe09b, 0x9043, + 0x99d7, 0xe09d, 0xe09f, 0xe08e, 0xe09e, 0xe0a0, 0x949a, 0xe0a1, + 0xe0a2, 0xe0a3, 0xe0a4, 0x92dc, 0xe0a6, 0xe0a5, 0xe0a7, 0xe0a8, + 0x8edd, 0x9583, 0x96ea, 0xe0a9, 0xe0aa, 0x9175, 0x8ea2, 0xe0ab, + 0xe0ac, 0xe0ad, 0x95d0, 0x94c5, 0xe0ae, 0x9476, 0x92ab, 0xe0af, + 0x89e5, 0x8b8d, 0x96c4, 0x96b4, 0x89b2, 0x9853, 0x9671, 0x95a8, + 0x90b5, 0xe0b0, 0x93c1, 0x8ca1, 0xe0b1, 0x8dd2, 0xe0b3, 0xe0b2, + 0xe0b4, 0xe0b5, 0xe0b6, 0x8b5d, 0xe0b7, 0xe0b8, 0x8ca2, 0x94c6, + 0xe0ba, 0x8ff3, 0xe0b9, 0x8bb6, 0xe0bb, 0xe0bd, 0xe0bc, 0xe0be, + 0x8ccf, 0xe0bf, 0x8be7, 0x915f, 0x8d9d, 0xe0c1, 0xe0c2, 0xe0c0, + 0x8eeb, 0x93c6, 0x8bb7, 0xe0c4, 0x924b, 0xe0c3, 0x9854, 0x9482, + 0xe0c7, 0xe0c9, 0xe0c6, 0x96d2, 0xe0c8, 0xe0ca, 0x97c2, 0xe0ce, + 0xe0cd, 0x9296, 0x944c, 0x8ca3, 0xe0cc, 0xe0cb, 0x9750, 0x9751, + 0xe0cf, 0x898e, 0x8d96, 0x8e82, 0xe0d0, 0xe0d1, 0xe0d3, 0x8f62, + 0xe0d5, 0xe0d4, 0xe0d6, 0x8a6c, 0xe0d8, 0xe0d7, 0xe0da, 0xe0d9, + 0x8cba, 0x97a6, 0x8bca, 0x89a4, 0x8be8, 0x8adf, 0x97e6, 0xe0dc, + 0xe0de, 0xe0df, 0x89cf, 0xe0db, 0x8e58, 0x92bf, 0xe0dd, 0xe0e2, + 0x8eec, 0xe0e0, 0x8c5d, 0x94c7, 0xe0e1, 0xe0fc, 0xe0e7, 0x8cbb, + 0x8b85, 0xe0e4, 0x979d, 0x97ae, 0x91f4, 0xe0e6, 0xe0e8, 0x97d4, + 0x8bd5, 0x94fa, 0x9469, 0xe0e9, 0xe0eb, 0xe0ee, 0xe0ea, 0xe0ed, + 0x8ce8, 0x896c, 0xe0ef, 0x9090, 0xe0ec, 0x97da, 0xe0f2, 0xeaa2, + 0xe0f0, 0xe0f3, 0xe0e5, 0xe0f1, 0x8dba, 0xe0f4, 0xe0f5, 0x979e, + 0xe0f6, 0xe0f7, 0xe0e3, 0xe0f8, 0x8ac2, 0x8ea3, 0xe0f9, 0xe0fa, + 0xe0fb, 0x895a, 0xe140, 0x955a, 0xe141, 0x8aa2, 0xe142, 0xe143, + 0xe144, 0xe146, 0xe147, 0xe145, 0x9572, 0xe149, 0xe148, 0xe14b, + 0xe14a, 0xe14c, 0xe14d, 0xe14f, 0xe14e, 0x8d99, 0xe151, 0xe150, + 0x8ac3, 0x9072, 0x935b, 0xe152, 0x90b6, 0x8e59, 0x8999, 0xe153, + 0x9770, 0x95e1, 0xe154, 0x9363, 0x9752, 0x8d62, 0x905c, 0x926a, + 0x99b2, 0x92ac, 0x89e6, 0xe155, 0xe156, 0xe15b, 0xe159, 0xe158, + 0x9dc0, 0x8a45, 0xe157, 0x88d8, 0x94a8, 0x94c8, 0x97af, 0xe15c, + 0xe15a, 0x927b, 0x90a4, 0x94a9, 0x954c, 0xe15e, 0x97aa, 0x8c6c, + 0xe15f, 0xe15d, 0x94d4, 0xe160, 0xe161, 0x88d9, 0x8ff4, 0xe166, + 0xe163, 0x93eb, 0xe162, 0x8b45, 0xe169, 0xe164, 0xe165, 0xe168, + 0xe167, 0x9544, 0x9161, 0x9160, 0x8b5e, 0xe16a, 0xe16b, 0xe16c, + 0xe16e, 0xe16d, 0x8975, 0xe176, 0x94e6, 0xe170, 0xe172, 0xe174, + 0x905d, 0xe175, 0xe173, 0x8ebe, 0xe16f, 0xe171, 0x9561, 0x8fc7, + 0xe178, 0xe177, 0xe179, 0x8ea4, 0x8dad, 0x9397, 0xe17a, 0x92c9, + 0xe17c, 0x979f, 0xe17b, 0x9189, 0xe182, 0xe184, 0xe185, 0x9273, + 0xe183, 0xe180, 0xe17d, 0xe17e, 0xe181, 0xe188, 0xe186, 0xe187, + 0xe189, 0xe18b, 0xe18c, 0xe18d, 0xe18e, 0xe18a, 0xe190, 0xe18f, + 0xe191, 0x97c3, 0xe194, 0xe192, 0xe193, 0x8ae0, 0x96fc, 0x95c8, + 0xe196, 0xe195, 0xe197, 0xe198, 0xe19c, 0xe199, 0xe19a, 0xe19b, + 0xe19d, 0xe19e, 0xe19f, 0xe1a0, 0xe1a1, 0x94ad, 0x936f, 0xe1a2, + 0x9492, 0x9553, 0xe1a3, 0xe1a4, 0x9349, 0x8a46, 0x8d63, 0xe1a5, + 0xe1a6, 0xe1a7, 0x8e48, 0xe1a9, 0xe1a8, 0xe1aa, 0xe1ab, 0x94e7, + 0xe1ac, 0xe1ad, 0xea89, 0xe1ae, 0xe1af, 0xe1b0, 0x8e4d, 0xe1b1, + 0x9475, 0x967e, 0x896d, 0x8976, 0xe1b2, 0xe1b4, 0xe1b3, 0x9390, + 0x90b7, 0x9f58, 0xe1b5, 0x96bf, 0xe1b6, 0x8ac4, 0x94d5, 0xe1b7, + 0xe1b8, 0xe1b9, 0x96da, 0x96d3, 0x92bc, 0x918a, 0xe1bb, 0x8f82, + 0x8fc8, 0xe1be, 0xe1bd, 0xe1bc, 0x94fb, 0x8ac5, 0x8ca7, 0xe1c4, + 0xe1c1, 0x905e, 0x96b0, 0xe1c0, 0xe1c2, 0xe1c3, 0xe1bf, 0xe1c5, + 0xe1c6, 0x92ad, 0x8ae1, 0x9285, 0xe1c7, 0xe1c8, 0xe1cb, 0x9087, + 0x93c2, 0xe1cc, 0x9672, 0xe1c9, 0xe1ca, 0xe1cf, 0xe1ce, 0xe1cd, + 0xe1d1, 0xe1d0, 0xe1d2, 0xe1d4, 0xe1d3, 0x95cb, 0x8f75, 0x97c4, + 0xe1d5, 0x93b5, 0xe1d6, 0xe1d7, 0xe1db, 0xe1d9, 0xe1da, 0xe1d8, + 0xe1dc, 0xe1dd, 0xe1de, 0xe1df, 0x96b5, 0xe1e0, 0x96ee, 0xe1e1, + 0x926d, 0x948a, 0x8be9, 0x925a, 0xe1e2, 0x8bb8, 0x90ce, 0xe1e3, + 0x8dbb, 0xe1e4, 0xe1e5, 0x8ca4, 0x8dd3, 0xe1e7, 0x9375, 0x8dd4, + 0x8b6d, 0x9643, 0x946a, 0x9376, 0x8d7b, 0xe1e9, 0x8fc9, 0x97b0, + 0x8d64, 0x8ca5, 0x94a1, 0xe1eb, 0xe1ed, 0x8ce9, 0xe1ec, 0x92f4, + 0xe1ef, 0x8a56, 0xe1ea, 0x94e8, 0x894f, 0x8dea, 0x9871, 0xe1ee, + 0xe1f0, 0x95c9, 0x90d7, 0xe1f2, 0xe1f3, 0xe1f1, 0x8a6d, 0xe1f9, + 0xe1f8, 0x8ea5, 0xe1fa, 0xe1f5, 0xe1fb, 0xe1f6, 0x94d6, 0xe1f4, + 0xe1f7, 0xe241, 0xe240, 0x9681, 0xe1fc, 0x88e9, 0xe243, 0xe242, + 0x8fca, 0xe244, 0x9162, 0xe246, 0xe245, 0xe247, 0xe1e6, 0xe1e8, + 0xe249, 0xe248, 0x8ea6, 0x97e7, 0x8ed0, 0xe24a, 0x8c56, 0x8b5f, + 0x8b46, 0x8e83, 0x9753, 0xe250, 0xe24f, 0x9163, 0xe24c, 0xe24e, + 0x8f6a, 0x905f, 0xe24d, 0xe24b, 0x9449, 0x8fcb, 0x955b, 0x8dd5, + 0x9398, 0xe251, 0xe252, 0xe268, 0x8bd6, 0x985c, 0x9154, 0xe253, + 0x89d0, 0x92f5, 0x959f, 0xe254, 0x8b9a, 0xe255, 0xe257, 0xe258, + 0x9448, 0xe259, 0xe25a, 0xe25b, 0x8bd7, 0x89d1, 0x93c3, 0x8f47, + 0x8e84, 0xe25c, 0x8f48, 0x89c8, 0x9562, 0xe25d, 0x94e9, 0x9164, + 0xe260, 0xe261, 0x9489, 0x9060, 0xe25e, 0x9281, 0xe25f, 0x8fcc, + 0x88da, 0x8b48, 0xe262, 0x92f6, 0xe263, 0x90c5, 0x96ab, 0x9542, + 0xe264, 0xe265, 0x9274, 0x97c5, 0xe267, 0xe266, 0x8eed, 0xe269, + 0x88ee, 0xe26c, 0xe26a, 0x89d2, 0x8c6d, 0xe26b, 0x8d65, 0x8d92, + 0x95e4, 0xe26d, 0x9673, 0xe26f, 0x90cf, 0x896e, 0x89b8, 0x88aa, + 0xe26e, 0xe270, 0xe271, 0x8ff5, 0xe272, 0x8a6e, 0xe274, 0x8c8a, + 0x8b86, 0xe275, 0x8bf3, 0xe276, 0x90fa, 0x93cb, 0x90de, 0x8df3, + 0xe277, 0x9282, 0x918b, 0xe279, 0xe27b, 0xe278, 0xe27a, 0x8c41, + 0xe27c, 0x8c45, 0x8b87, 0x9771, 0xe27e, 0xe280, 0x894d, 0xe283, + 0x8a96, 0xe282, 0xe281, 0xe285, 0xe27d, 0xe286, 0x97a7, 0xe287, + 0xe288, 0x9af2, 0xe28a, 0xe289, 0xe28b, 0xe28c, 0x97b3, 0xe28d, + 0xe8ed, 0x8fcd, 0xe28e, 0xe28f, 0x8f76, 0x93b6, 0xe290, 0x9247, + 0xe291, 0x925b, 0xe292, 0x8ba3, 0x995e, 0x927c, 0x8eb1, 0x8ac6, + 0xe293, 0xe2a0, 0xe296, 0x8b88, 0xe295, 0xe2a2, 0xe294, 0x8fce, + 0xe298, 0xe299, 0x934a, 0xe29a, 0x8a7d, 0x9079, 0x9584, 0xe29c, + 0x91e6, 0xe297, 0xe29b, 0xe29d, 0x8df9, 0xe2a4, 0x954d, 0x94a4, + 0x9399, 0x8bd8, 0xe2a3, 0xe2a1, 0x94b3, 0xe29e, 0x927d, 0x939b, + 0x939a, 0x8df4, 0xe2b6, 0xe2a6, 0xe2a8, 0xe2ab, 0xe2ac, 0xe2a9, + 0xe2aa, 0xe2a7, 0xe2a5, 0xe29f, 0x95cd, 0x89d3, 0xe2b3, 0xe2b0, + 0xe2b5, 0xe2b4, 0x9493, 0x96a5, 0x8e5a, 0xe2ae, 0xe2b7, 0xe2b2, + 0xe2b1, 0xe2ad, 0xe2af, 0x8ac7, 0x925c, 0x90fb, 0x94a0, 0xe2bc, + 0x94a2, 0x90df, 0xe2b9, 0x94cd, 0xe2bd, 0x95d1, 0x927a, 0xe2b8, + 0xe2ba, 0xe2bb, 0xe2be, 0x8ec2, 0x93c4, 0xe2c3, 0xe2c2, 0xe2bf, + 0x9855, 0xe2c8, 0xe2cc, 0xe2c9, 0xe2c5, 0xe2c6, 0xe2cb, 0xe2c0, + 0x99d3, 0xe2c7, 0xe2c1, 0xe2ca, 0xe2d0, 0x8ac8, 0xe2cd, 0xe2ce, + 0xe2cf, 0xe2d2, 0xe2d1, 0x94f4, 0xe2d3, 0x97fa, 0x95eb, 0xe2d8, + 0xe2d5, 0xe2d4, 0x90d0, 0xe2d7, 0xe2d9, 0xe2d6, 0xe2dd, 0xe2da, + 0xe2db, 0xe2c4, 0xe2dc, 0xe2de, 0xe2df, 0x95c4, 0xe2e0, 0x96e0, + 0x8bcc, 0x8c48, 0xe2e1, 0x95b2, 0x9088, 0x96ae, 0xe2e2, 0x97b1, + 0x9494, 0x9165, 0x9453, 0x8f6c, 0x88be, 0xe2e7, 0xe2e5, 0xe2e3, + 0x8a9f, 0x8fcf, 0xe2e8, 0xe2e6, 0xe2e4, 0xe2ec, 0xe2eb, 0xe2ea, + 0xe2e9, 0xe2ed, 0xe2ee, 0x90b8, 0xe2ef, 0xe2f1, 0xe2f0, 0x8cd0, + 0x9157, 0xe2f3, 0x939c, 0xe2f2, 0xe2f4, 0x95b3, 0x918c, 0x8d66, + 0xe2f5, 0x97c6, 0xe2f7, 0xe2f8, 0xe2f9, 0xe2fa, 0x8e85, 0xe2fb, + 0x8c6e, 0x8b8a, 0x8b49, 0xe340, 0x96f1, 0x8d67, 0xe2fc, 0xe343, + 0x96e4, 0x945b, 0x9552, 0x8f83, 0xe342, 0x8ed1, 0x8d68, 0x8e86, + 0x8b89, 0x95b4, 0xe341, 0x9166, 0x9661, 0x8df5, 0x8e87, 0x92db, + 0xe346, 0x97dd, 0x8dd7, 0xe347, 0x9061, 0xe349, 0x8fd0, 0x8dae, + 0xe348, 0x8f49, 0x8cbc, 0x9167, 0xe344, 0xe34a, 0xe345, 0x8c6f, + 0xe34d, 0xe351, 0x8c8b, 0xe34c, 0xe355, 0x8d69, 0x978d, 0x88ba, + 0xe352, 0x8b8b, 0xe34f, 0xe350, 0x939d, 0xe34e, 0xe34b, 0x8a47, + 0x90e2, 0x8ca6, 0xe357, 0xe354, 0xe356, 0xe353, 0x8c70, 0x91b1, + 0xe358, 0x918e, 0xe365, 0xe361, 0xe35b, 0xe35f, 0x8ef8, 0x88db, + 0xe35a, 0xe362, 0xe366, 0x8d6a, 0x96d4, 0x92d4, 0xe35c, 0xe364, + 0xe359, 0x925d, 0xe35e, 0x88bb, 0x96c8, 0xe35d, 0x8bd9, 0x94ea, + 0x918d, 0x97ce, 0x8f8f, 0xe38e, 0xe367, 0x90fc, 0xe363, 0xe368, + 0xe36a, 0x92f7, 0xe36d, 0xe369, 0x95d2, 0x8ac9, 0x96c9, 0x88dc, + 0xe36c, 0x97fb, 0xe36b, 0x898f, 0x93ea, 0xe36e, 0xe375, 0xe36f, + 0xe376, 0xe372, 0x949b, 0x8ec8, 0xe374, 0xe371, 0xe377, 0xe370, + 0x8f63, 0x9644, 0x8f6b, 0xe373, 0xe380, 0xe37b, 0xe37e, 0xe37c, + 0xe381, 0xe37a, 0xe360, 0x90d1, 0x94c9, 0xe37d, 0xe378, 0x9140, + 0x8c71, 0x8f4a, 0x9044, 0x9155, 0xe384, 0xe386, 0xe387, 0xe383, + 0xe385, 0xe379, 0xe382, 0xe38a, 0xe389, 0x969a, 0x8c4a, 0xe388, + 0xe38c, 0xe38b, 0xe38f, 0xe391, 0x8e5b, 0xe38d, 0xe392, 0xe393, + 0xe394, 0xe39a, 0x935a, 0xe396, 0xe395, 0xe397, 0xe398, 0xe399, + 0xe39b, 0xe39c, 0x8aca, 0xe39d, 0xe39e, 0xe39f, 0xe3a0, 0xe3a1, + 0xe3a2, 0xe3a3, 0xe3a4, 0xe3a6, 0xe3a5, 0xe3a7, 0xe3a8, 0xe3a9, + 0xe3ac, 0xe3aa, 0xe3ab, 0x8ddf, 0x8c72, 0x9275, 0x94b1, 0x8f90, + 0x946c, 0x94eb, 0xe3ad, 0x9ceb, 0xe3ae, 0xe3b0, 0x9785, 0xe3af, + 0xe3b2, 0xe3b1, 0x9772, 0xe3b3, 0x94fc, 0xe3b4, 0xe3b7, 0xe3b6, + 0xe3b5, 0xe3b8, 0x8c51, 0x9141, 0x8b60, 0xe3bc, 0xe3b9, 0xe3ba, + 0xe3bd, 0xe3be, 0xe3bb, 0x8948, 0x89a5, 0xe3c0, 0xe3c1, 0xe3c2, + 0x9782, 0x8f4b, 0xe3c4, 0xe3c3, 0x9089, 0xe3c5, 0xe3c6, 0xe3c7, + 0x8ae3, 0x8acb, 0xe3c8, 0xe3c9, 0x967c, 0x9783, 0x9773, 0x9856, + 0x8d6c, 0xe3cc, 0x8ed2, 0xe3cb, 0xe3cd, 0x8ea7, 0x91cf, 0xe3ce, + 0x8d6b, 0x96d5, 0xe3cf, 0xe3d0, 0xe3d1, 0xe3d2, 0xe3d3, 0x8ea8, + 0x96eb, 0xe3d5, 0x925e, 0xe3d4, 0xe3d7, 0xe3d6, 0xe3d8, 0x90b9, + 0xe3d9, 0xe3da, 0x95b7, 0xe3db, 0x918f, 0xe3dc, 0xe3dd, 0x97fc, + 0xe3e0, 0xe3df, 0xe3de, 0x92ae, 0xe3e1, 0x9045, 0xe3e2, 0xe3e3, + 0x9857, 0xe3e4, 0xe3e5, 0xe3e7, 0xe3e6, 0x94a3, 0x93f7, 0x985d, + 0x94a7, 0xe3e9, 0x8fd1, 0x9549, 0xe3ea, 0xe3e8, 0x8acc, 0x8cd2, + 0x8e88, 0x94ec, 0x8ca8, 0x9662, 0xe3ed, 0xe3eb, 0x8d6d, 0x8d6e, + 0x88e7, 0x8de6, 0x9478, 0x88dd, 0xe3f2, 0x925f, 0x9477, 0x91d9, + 0xe3f4, 0xe3f0, 0xe3f3, 0xe3ee, 0xe3f1, 0x9645, 0x8cd3, 0x88fb, + 0xe3ef, 0xe3f6, 0xe3f7, 0x93b7, 0x8bb9, 0xe445, 0x945c, 0x8e89, + 0x8bba, 0x90c6, 0x9865, 0x96ac, 0xe3f5, 0x90d2, 0x8b72, 0xe3f8, + 0xe3fa, 0xe3f9, 0xe3fb, 0x9245, 0x945d, 0x92af, 0xe442, 0xe441, + 0xe3fc, 0x9074, 0x9585, 0xe444, 0xe443, 0x8d6f, 0x9872, 0xe454, + 0xe448, 0xe449, 0x8eee, 0xe447, 0x8d98, 0xe446, 0xe44a, 0x92b0, + 0x95a0, 0x9142, 0x91da, 0xe44e, 0xe44f, 0xe44b, 0xe44c, 0xe44d, + 0x8d70, 0xe455, 0xe451, 0x9586, 0x968c, 0x9547, 0xe450, 0xe453, + 0xe452, 0x9663, 0xe456, 0xe457, 0x9156, 0xe458, 0xe45a, 0xe45e, + 0xe45b, 0xe459, 0x945e, 0xe45c, 0xe45d, 0x89b0, 0xe464, 0xe45f, + 0xe460, 0xe461, 0x919f, 0xe463, 0xe462, 0xe465, 0xe466, 0xe467, + 0x9062, 0x89e7, 0xe468, 0x97d5, 0x8ea9, 0x8f4c, 0x8e8a, 0x9276, + 0xe469, 0xe46a, 0x8950, 0xe46b, 0xe46c, 0xe46d, 0xe46e, 0xe46f, + 0x8bbb, 0x9da8, 0xe470, 0x90e3, 0xe471, 0x8ec9, 0xe472, 0x98ae, + 0xe473, 0x95dc, 0x8ada, 0x9143, 0x8f77, 0x9591, 0x8f4d, 0xe474, + 0x8d71, 0xe475, 0x94ca, 0xe484, 0xe477, 0x91c7, 0x9495, 0x8cbd, + 0xe476, 0x9144, 0xe478, 0x92f8, 0xe47a, 0xe479, 0xe47c, 0xe47b, + 0xe47d, 0xe480, 0xe47e, 0x8acd, 0xe481, 0xe482, 0xe483, 0x8daf, + 0x97c7, 0xe485, 0x9046, 0x8990, 0xe486, 0xe487, 0xe488, 0x88f0, + 0xe489, 0xe48a, 0x9587, 0x8ec5, 0xe48c, 0x8a48, 0x88b0, 0xe48b, + 0xe48e, 0x946d, 0x9063, 0x89d4, 0x9646, 0x8c7c, 0x8bda, 0xe48d, + 0x89e8, 0x8aa1, 0x8991, 0xe492, 0x97e8, 0x91db, 0x9563, 0xe49e, + 0x89d5, 0xe49c, 0xe49a, 0xe491, 0xe48f, 0xe490, 0x8ee1, 0x8bea, + 0x9297, 0x93cf, 0x8970, 0xe494, 0xe493, 0xe499, 0xe495, 0xe498, + 0x96ce, 0xe497, 0x89d6, 0x8a9d, 0xe49b, 0xe49d, 0x8c73, 0xe4a1, + 0xe4aa, 0xe4ab, 0x88a9, 0xe4b2, 0x88ef, 0xe4a9, 0xe4a8, 0xe4a3, + 0xe4a2, 0xe4a0, 0xe49f, 0x9283, 0x91f9, 0xe4a5, 0xe4a4, 0xe4a7, + 0x9190, 0x8c74, 0x8960, 0xe4a6, 0x8d72, 0x9191, 0xe4b8, 0xe4b9, + 0x89d7, 0x89ac, 0xe4b6, 0xe4ac, 0xe4b4, 0xe4bb, 0xe4b5, 0xe4b3, + 0xe496, 0xe4b1, 0xe4ad, 0x8ace, 0xe4af, 0xe4ba, 0xe4b0, 0xe4bc, + 0xe4ae, 0x949c, 0x9789, 0xe4b7, 0xe4cd, 0xe4c5, 0x909b, 0x8b65, + 0x8bdb, 0xe4c0, 0x89d9, 0x8fd2, 0xe4c3, 0x8dd8, 0x9370, 0xe4c8, + 0x95ec, 0xe4bf, 0x89d8, 0x8cd4, 0x9548, 0xe4c9, 0xe4bd, 0xe4c6, + 0xe4d0, 0xe4c1, 0xe4c2, 0x93b8, 0xe4c7, 0xe4c4, 0x9647, 0xe4ca, + 0x88de, 0xe4be, 0xe4cc, 0xe4cb, 0x948b, 0xe4d2, 0xe4dd, 0x8a9e, + 0xe4e0, 0xe4ce, 0xe4d3, 0x978e, 0xe4dc, 0x9774, 0x97a8, 0x9298, + 0x8a8b, 0x9592, 0xe4e2, 0x939f, 0x88af, 0xe4db, 0xe4d7, 0x9192, + 0xe4d1, 0xe4d9, 0xe4de, 0x944b, 0x88a8, 0xe4d6, 0xe4df, 0x9598, + 0xe4da, 0xe4d5, 0x8fd3, 0x8f4e, 0x8eaa, 0x96d6, 0x9566, 0xe4e5, + 0xe4ee, 0xe4d8, 0x8a97, 0x8ff6, 0xe4e3, 0xe4e8, 0x9193, 0xe4e4, + 0xe4eb, 0x927e, 0xe4ec, 0x9775, 0xe4e1, 0x8a57, 0xe4e7, 0xe4ea, + 0x96aa, 0xe4ed, 0xe4e6, 0xe4e9, 0x9648, 0x9840, 0xe4f1, 0xe4f8, + 0xe4f0, 0x8ec1, 0xe4cf, 0x95cc, 0x96a0, 0xe4f7, 0xe4f6, 0xe4f2, + 0xe4f3, 0x8955, 0xe4f5, 0xe4ef, 0x92d3, 0xe4f4, 0x88fc, 0x91a0, + 0x95c1, 0xe4f9, 0xe540, 0x94d7, 0xe4fc, 0x8fd4, 0x8ec7, 0xe542, + 0x8bbc, 0xe543, 0x9599, 0xe4fb, 0xe4d4, 0xe4fa, 0x986e, 0x93a0, + 0x9593, 0xe54a, 0xe550, 0xe551, 0xe544, 0x9496, 0xe54e, 0xe546, + 0xe548, 0xe552, 0xe547, 0xe54b, 0x8992, 0x93e3, 0xe54c, 0xe54f, + 0xe545, 0x9145, 0xe549, 0x8e46, 0x9064, 0x8c4f, 0x96f2, 0x96f7, + 0x8f92, 0xe556, 0xe554, 0x986d, 0xe553, 0x9795, 0xe555, 0xe557, + 0xe558, 0xe55b, 0xe559, 0x93a1, 0xe55a, 0x94cb, 0xe54d, 0x8f93, + 0xe55c, 0xe561, 0x9194, 0xe560, 0xe541, 0xe562, 0x9168, 0xe55d, + 0xe55f, 0xe55e, 0x9f50, 0x9f41, 0xe564, 0xe563, 0x9796, 0xe1ba, + 0xe565, 0xe566, 0xe567, 0x8cd5, 0x8b73, 0xe569, 0x997c, 0x8b95, + 0x97b8, 0x8bf1, 0xe56a, 0xe56b, 0x928e, 0xe56c, 0x93f8, 0x88b8, + 0x89e1, 0xe571, 0xe572, 0xe56d, 0x8e5c, 0xe56e, 0x9461, 0xe56f, + 0xe570, 0xe57a, 0xe574, 0xe577, 0xe573, 0xe575, 0xe576, 0x8ed6, + 0xe578, 0x9260, 0x8c75, 0x8a61, 0xe57b, 0x8a5e, 0xe581, 0xe57c, + 0xe580, 0x94b8, 0xe57d, 0xe57e, 0x9567, 0x94d8, 0xe582, 0x91fb, + 0xe58c, 0xe588, 0x89e9, 0xe586, 0x9649, 0xe587, 0xe584, 0xe585, + 0xe58a, 0xe58d, 0xe58b, 0xe589, 0xe583, 0x9277, 0xe594, 0x96a8, + 0xe592, 0xe593, 0xe58e, 0xe590, 0xe591, 0xe58f, 0x90e4, 0x9858, + 0xe598, 0xe599, 0xe59f, 0x9049, 0xe59b, 0xe59e, 0xe596, 0xe595, + 0xe5a0, 0x89da, 0xe59c, 0xe5a1, 0xe59d, 0xe59a, 0x92b1, 0xe597, + 0x9488, 0xe5a5, 0x975a, 0xe5a4, 0xe5a3, 0xe5ac, 0xe5a6, 0xe5ae, + 0x9786, 0xe5b1, 0xe5a8, 0xe5a9, 0xe5ad, 0xe5b0, 0xe5af, 0xe5a7, + 0xe5aa, 0xe5bb, 0xe5b4, 0xe5b2, 0xe5b3, 0xe5b8, 0xe5b9, 0x8a49, + 0x8b61, 0xe5b7, 0xe5a2, 0xe5b6, 0xe5ba, 0xe5b5, 0xe5bc, 0xe5be, + 0xe5bd, 0xe5c0, 0xe5bf, 0xe579, 0xe5c4, 0xe5c1, 0xe5c2, 0xe5c3, + 0xe5c5, 0x8c8c, 0xe5c7, 0xe5c6, 0x8f4f, 0x8d73, 0x9fa5, 0xe5c8, + 0x8f70, 0x8a58, 0xe5c9, 0x8971, 0x8fd5, 0xe5ca, 0x8d74, 0xe5cb, + 0x88df, 0x955c, 0xe5cc, 0x908a, 0xe5d3, 0xe5d0, 0x928f, 0xe5d1, + 0xe5ce, 0x8bdc, 0xe5cd, 0xe5d4, 0x8c55, 0x91dc, 0xe5da, 0xe5d6, + 0x91b3, 0xe5d5, 0xe5d8, 0xe5cf, 0xe5d9, 0xe5db, 0x94ed, 0xe5d7, + 0xe5dc, 0xe5de, 0x8cd1, 0xe5d2, 0x88bf, 0xe5dd, 0x8dd9, 0x97f4, + 0xe5df, 0xe5e0, 0x9195, 0x97a0, 0xe5e1, 0x9754, 0xe5e2, 0xe5e3, + 0x95e2, 0xe5e4, 0x8dbe, 0x97a1, 0xe5e9, 0xe5ea, 0x8fd6, 0xe5e8, + 0x9787, 0xe5e5, 0xe5e7, 0x90bb, 0x909e, 0xe5e6, 0xe5eb, 0x95a1, + 0xe5ed, 0xe5ec, 0x8a8c, 0x964a, 0xe5ee, 0xe5fa, 0xe5f0, 0xe5f1, + 0xe5f2, 0xe5f3, 0xe5f7, 0xe5f8, 0xe5f6, 0xe5f4, 0xe5ef, 0xe5f5, + 0xe5f9, 0xe8b5, 0x89a6, 0xe5fc, 0x8bdd, 0xe5fb, 0xe641, 0xe640, + 0xe643, 0xe642, 0xe644, 0x8f50, 0xe645, 0xe646, 0xe647, 0x90bc, + 0x9776, 0xe648, 0x95a2, 0x9465, 0xe649, 0xe64a, 0x8ca9, 0x8b4b, + 0xe64b, 0x8e8b, 0x9460, 0xe64c, 0x8a6f, 0xe64d, 0xe64f, 0x9797, + 0xe64e, 0x9065, 0xe650, 0xe651, 0xe652, 0x8acf, 0xe653, 0xe654, + 0xe655, 0xe656, 0x8a70, 0xe657, 0xe658, 0xe659, 0x89f0, 0x9047, + 0xe65a, 0xe65b, 0xe65c, 0x8cbe, 0x92f9, 0xe65d, 0x8c76, 0x9075, + 0xe660, 0x93a2, 0xe65f, 0x8c50, 0xe65e, 0x91f5, 0x8b4c, 0xe661, + 0xe662, 0x8fd7, 0x8c8d, 0xe663, 0x964b, 0x90dd, 0x8b96, 0x96f3, + 0x9169, 0xe664, 0x9066, 0x9290, 0x8fd8, 0xe665, 0xe668, 0xe669, + 0x8dbc, 0x91c0, 0xe667, 0x8fd9, 0x955d, 0xe666, 0x8e8c, 0x8972, + 0xe66d, 0x8c77, 0x8e8e, 0x8e8d, 0x986c, 0xe66c, 0xe66b, 0x9146, + 0x8b6c, 0x9862, 0x8a59, 0x8fda, 0xe66a, 0xe66f, 0xe670, 0xe66e, + 0x8cd6, 0x975f, 0x8e8f, 0x9446, 0xe673, 0x90be, 0x9261, 0x9755, + 0xe676, 0x8cea, 0x90bd, 0xe672, 0xe677, 0x8ceb, 0xe674, 0xe675, + 0xe671, 0x90e0, 0x93c7, 0x924e, 0x89db, 0x94ee, 0x8b62, 0x92b2, + 0xe67a, 0xe678, 0x926b, 0x90bf, 0x8ad0, 0xe679, 0x907a, 0x97c8, + 0x985f, 0xe67b, 0xe687, 0x92b3, 0xe686, 0xe683, 0xe68b, 0xe684, + 0xe680, 0x92fa, 0xe67e, 0xe67c, 0x9740, 0x8e90, 0xe681, 0xe67d, + 0xe685, 0x8f94, 0x8cbf, 0x91f8, 0x9664, 0x8979, 0x88e0, 0x93a3, + 0xe689, 0xe688, 0x93e4, 0xe68d, 0xe682, 0xe68c, 0xe68e, 0x8caa, + 0xe68a, 0x8d75, 0x8ed3, 0xe68f, 0x9777, 0xe692, 0xe695, 0xe693, + 0x9554, 0xe690, 0x8bde, 0xe694, 0xe696, 0xe69a, 0xe697, 0xe699, + 0xe698, 0xe69b, 0x8eaf, 0xe69d, 0xe69c, 0x9588, 0xe69f, 0x8c78, + 0xe69e, 0xe6a0, 0xe6a1, 0x8b63, 0xe3bf, 0x8ff7, 0xe6a2, 0x8cec, + 0xe6a3, 0xe6a4, 0x8e5d, 0x9dcc, 0xe6a5, 0xe6a6, 0x8f51, 0xe6a7, + 0xe6a8, 0xe6a9, 0xe6aa, 0xe6ab, 0x924a, 0xe6ac, 0xe6ae, 0xe6ad, + 0x93a4, 0xe6af, 0x964c, 0xe6b0, 0xe6b1, 0xe6b2, 0xe6b3, 0x93d8, + 0x8fdb, 0xe6b4, 0x8d8b, 0x98ac, 0xe6b5, 0xe6b6, 0x955e, 0xe6b7, + 0xe6bf, 0xe6b8, 0xe6ba, 0xe6b9, 0xe6bb, 0x9665, 0xe6bc, 0xe6bd, + 0xe6be, 0xe6c0, 0x8a4c, 0x92e5, 0x9589, 0x8de0, 0x8d76, 0x956e, + 0x89dd, 0x94cc, 0xe6c3, 0x8ad1, 0x90d3, 0xe6c2, 0xe6c7, 0x9299, + 0x96e1, 0xe6c5, 0xe6c6, 0x8b4d, 0xe6c8, 0x9483, 0x91dd, 0x94ef, + 0x935c, 0xe6c4, 0x9666, 0x89ea, 0xe6ca, 0x9847, 0x92c0, 0x9864, + 0x8e91, 0xe6c9, 0x91af, 0xe6da, 0x9147, 0x93f6, 0x956f, 0xe6cd, + 0x8e5e, 0x8e92, 0x8fdc, 0x9485, 0x8cab, 0xe6cc, 0xe6cb, 0x958a, + 0x8ebf, 0x9371, 0xe6cf, 0xe6d0, 0x8d77, 0xe6ce, 0xe6d1, 0xe6d2, + 0xe6d4, 0x91a1, 0xe6d3, 0x8ae4, 0xe6d6, 0xe6d5, 0xe6d7, 0xe6d9, + 0xe6db, 0xe6dc, 0x90d4, 0x8ecd, 0xe6dd, 0x8a71, 0xe6de, 0x9196, + 0xe6df, 0xe6e0, 0x958b, 0x8b4e, 0xe6e1, 0x92b4, 0x897a, 0xe6e2, + 0x8eef, 0x9096, 0x91ab, 0xe6e5, 0xe6e4, 0xe6e3, 0xe6eb, 0xe6e9, + 0xe6e6, 0xe6e8, 0xe6e7, 0xe6ea, 0x8b97, 0xe6ee, 0x90d5, 0xe6ef, + 0x8cd7, 0xe6ec, 0xe6ed, 0x9848, 0x92b5, 0x9148, 0xe6f0, 0xe6f3, + 0xe6f1, 0xe6f2, 0x9778, 0x93a5, 0xe6f6, 0xe6f4, 0xe6f5, 0xe6f7, + 0xe748, 0xe6fa, 0xe6fb, 0xe6f9, 0xe6f8, 0x92fb, 0xe740, 0xe744, + 0xe741, 0xe6fc, 0xe742, 0xe743, 0xe74a, 0xe745, 0x90d6, 0xe747, + 0xe749, 0xe746, 0xe74c, 0x8f52, 0xe74b, 0xe74d, 0xe74e, 0xe751, + 0xe750, 0xe74f, 0xe753, 0xe752, 0x96f4, 0xe755, 0xe754, 0xe756, + 0xe757, 0xe759, 0xe758, 0x9067, 0xe75a, 0x8beb, 0xe75b, 0xe75d, + 0xe75e, 0xe75f, 0xe75c, 0xe760, 0x8ed4, 0xe761, 0x8b4f, 0x8c52, + 0x8cac, 0xe762, 0x93ee, 0x935d, 0xe763, 0xe766, 0x8eb2, 0xe765, + 0xe764, 0x8c79, 0xe767, 0x8a72, 0xe769, 0x8dda, 0xe768, 0xe771, + 0xe76b, 0xe76d, 0x95e3, 0xe76a, 0xe76c, 0xe770, 0xe76e, 0x8b50, + 0xe76f, 0xe772, 0x9479, 0x97d6, 0x8f53, 0xe773, 0x9741, 0xe775, + 0xe774, 0xe778, 0x9760, 0xe777, 0x8a8d, 0xe776, 0xe77b, 0xe77a, + 0xe779, 0x9351, 0xe77c, 0xe77d, 0xe77e, 0x8d8c, 0x8c44, 0xe780, + 0xe781, 0xe782, 0x9068, 0xe783, 0x8eab, 0xe784, 0xe785, 0x999f, + 0x999e, 0xe786, 0xe390, 0xe787, 0x9243, 0x904a, 0x945f, 0xe788, + 0x95d3, 0x92d2, 0x8d9e, 0x9248, 0x8949, 0x9698, 0x9076, 0x8c7d, + 0x8bdf, 0x95d4, 0xe789, 0xe78b, 0xe78a, 0x89de, 0x93f4, 0xe78c, + 0x9497, 0x9352, 0xe78d, 0x8f71, 0xe78f, 0x96c0, 0xe79e, 0xe791, + 0xe792, 0x92c7, 0x91de, 0x9197, 0x93a6, 0xe790, 0x8b74, 0xe799, + 0xe796, 0xe7a3, 0x93a7, 0x9280, 0xe793, 0x92fc, 0x9372, 0xe794, + 0xe798, 0x9080, 0x9487, 0x92ca, 0x90c0, 0xe797, 0x91ac, 0x91a2, + 0xe795, 0x88a7, 0x9841, 0xe79a, 0x91df, 0x8f54, 0x9069, 0xe79c, + 0xe79b, 0x88ed, 0xe79d, 0x954e, 0xe7a5, 0x93d9, 0x908b, 0x9278, + 0x8bf6, 0xe7a4, 0x9756, 0x895e, 0x95d5, 0x89df, 0xe79f, 0xe7a0, + 0xe7a1, 0xe7a2, 0x93b9, 0x9242, 0x88e1, 0xe7a6, 0xe7a7, 0xeaa1, + 0x91bb, 0xe7a8, 0x8993, 0x916b, 0x8cad, 0x9779, 0xe7a9, 0x934b, + 0x9198, 0x8ed5, 0xe7aa, 0xe7ad, 0x8f85, 0xe7ab, 0x914a, 0x9149, + 0x88e2, 0x97c9, 0xe7af, 0x94f0, 0xe7b1, 0xe7b0, 0xe7ae, 0xe284, + 0x8ad2, 0xe78e, 0xe7b3, 0xe7b2, 0xe7b4, 0x9757, 0x93df, 0x964d, + 0xe7b5, 0x8ed7, 0xe7b6, 0xe7b7, 0xe7b8, 0x9340, 0x88e8, 0x8d78, + 0x9859, 0xe7bc, 0x8c53, 0xe7b9, 0xe7ba, 0x9594, 0x8a73, 0x9758, + 0x8bbd, 0x9373, 0xe7bd, 0xe7be, 0xe7bf, 0x9341, 0xe7c1, 0xe7c0, + 0x93d1, 0xe7c2, 0x8f55, 0x8ede, 0x947a, 0x9291, 0x8ef0, 0x908c, + 0xe7c3, 0xe7c4, 0x907c, 0xe7c5, 0xe7c6, 0xe7c7, 0x978f, 0x8f56, + 0xe7c9, 0xe7c8, 0x8d79, 0x8d93, 0x8e5f, 0xe7cc, 0x8f86, 0xe7cb, + 0xe7ca, 0x91e7, 0x8ced, 0x90c1, 0x94ae, 0x8f58, 0xe7cd, 0x8fdd, + 0xe7d0, 0xe7ce, 0xe7cf, 0xe7d2, 0xe7d1, 0x8ff8, 0xe7d3, 0xe7d4, + 0xe7d5, 0x94ce, 0x8dd1, 0x8edf, 0xe7d6, 0xe7d7, 0x97a2, 0x8f64, + 0x96ec, 0x97ca, 0xe7d8, 0x8be0, 0xe7d9, 0x9342, 0xe7dc, 0x8a98, + 0x906a, 0xe7da, 0xe7db, 0x92de, 0x9674, 0x8bfa, 0xe7de, 0xe7df, + 0xe7dd, 0xe7e1, 0x93dd, 0x8a62, 0xe7e5, 0xe7e2, 0xe7e4, 0xe7e0, + 0xe86e, 0xe7e3, 0x97e9, 0x8cd8, 0xe7ed, 0x9353, 0xe7e8, 0xe7eb, + 0xe7e9, 0xe7ee, 0xe7ef, 0xe7e7, 0xe7f4, 0x8994, 0xe7e6, 0x94ab, + 0xe7ea, 0x8fde, 0x8d7a, 0x9667, 0x8be2, 0x8f65, 0x93ba, 0x914c, + 0xe7f2, 0xe7ec, 0xe7f1, 0x96c1, 0x92b6, 0xe7f3, 0xe7f0, 0x914b, + 0xe7f7, 0xe7f6, 0xe7f5, 0x964e, 0x8f9b, 0xe7f8, 0x95dd, 0x8973, + 0x9565, 0x9292, 0x8b98, 0xe7fa, 0x8d7c, 0x8e4b, 0xe7f9, 0x908d, + 0x908e, 0xe840, 0xe842, 0x8ff9, 0xe841, 0xe843, 0x8bd1, 0x9564, + 0x8ee0, 0x9842, 0xe7fc, 0x8df6, 0x985e, 0xe845, 0xe844, 0xe846, + 0xe7fb, 0x93e7, 0x9374, 0x92d5, 0xe84b, 0x9262, 0xe847, 0xe848, + 0x8c4c, 0xe84a, 0x8cae, 0xe849, 0x8fdf, 0x8a99, 0xe84f, 0x8dbd, + 0x9199, 0x92c8, 0x8a5a, 0xe84d, 0xe84e, 0x92c1, 0xe84c, 0xe850, + 0xe856, 0xe859, 0xe858, 0x934c, 0xe851, 0xe852, 0xe855, 0xe857, + 0x8bbe, 0xe85a, 0xe854, 0xe853, 0xe85e, 0xe85f, 0xe860, 0xe85d, + 0xe85c, 0x8fe0, 0x93a8, 0xe85b, 0xe864, 0xe862, 0xe863, 0xe861, + 0x91f6, 0xe865, 0xe866, 0xe868, 0x8ad3, 0xe867, 0x96f8, 0xe873, + 0xe869, 0xe86c, 0xe86a, 0xe86b, 0xe86d, 0xe86f, 0xe870, 0xe871, + 0xe874, 0xe872, 0xe875, 0xe877, 0xe876, 0x92b7, 0x96e5, 0xe878, + 0x914d, 0xe879, 0x95c2, 0xe87a, 0x8a4a, 0x895b, 0x8ad5, 0x8ad4, + 0xe87b, 0xe87c, 0xe87d, 0xe87e, 0xe880, 0x8ad6, 0x8a74, 0x8d7d, + 0x94b4, 0xe882, 0xe881, 0xe883, 0x897b, 0xe886, 0xe885, 0xe884, + 0xe887, 0xe88a, 0x88c5, 0xe888, 0xe88c, 0xe88b, 0xe88e, 0xe88d, + 0xe88f, 0x93ac, 0xe890, 0xe891, 0xe893, 0xe892, 0x958c, 0xe894, + 0xe895, 0x8de3, 0xe896, 0xe897, 0x9668, 0x916a, 0x88a2, 0x91c9, + 0xe898, 0x958d, 0xe89b, 0xe899, 0x8d7e, 0xe89a, 0x8cc0, 0x95c3, + 0xe89d, 0xe89f, 0xe89e, 0xe8a0, 0x8940, 0x9077, 0x8f9c, 0x8ad7, + 0xe8a1, 0x9486, 0xe8a3, 0x8941, 0xe8a2, 0x92c2, 0x97cb, 0x93a9, + 0xe89c, 0x97a4, 0x8caf, 0x977a, 0x8bf7, 0x97b2, 0x8c47, 0x91e0, + 0xe440, 0xe8a4, 0x8a4b, 0x908f, 0x8a75, 0xe8a6, 0xe8a7, 0xe8a5, + 0x8c84, 0x8ddb, 0x8fe1, 0x8942, 0x97d7, 0xe8a9, 0xe7ac, 0xe8a8, + 0xe8ac, 0xe8aa, 0xe8ab, 0xe8ad, 0xe8ae, 0x97ea, 0xe8af, 0xe8b0, + 0x90c7, 0x94b9, 0x909d, 0x8ae5, 0x9759, 0x89eb, 0x8f57, 0x8cd9, + 0xe8b3, 0xe8b2, 0x8e93, 0xe8b4, 0xe8b1, 0x8e47, 0xe8b8, 0xe5ab, + 0x99d4, 0x9097, 0xe8b6, 0x97a3, 0x93ef, 0x894a, 0x90e1, 0x8eb4, + 0x95b5, 0x895f, 0x97eb, 0x978b, 0xe8b9, 0x9364, 0x8ef9, 0xe8ba, + 0xe8bb, 0x906b, 0xe8bc, 0x97ec, 0xe8b7, 0xe8be, 0xe8c0, 0xe8bf, + 0xe8bd, 0xe8c1, 0xe8c2, 0x919a, 0x89e0, 0xe8c3, 0x96b6, 0xe8c4, + 0xe8c5, 0x9849, 0x9e50, 0xe8c6, 0xe8c7, 0xe8c8, 0xe8cc, 0xe8c9, + 0xe8ca, 0xe8cb, 0xe8cd, 0x90c2, 0x96f5, 0x90c3, 0xe8ce, 0x94f1, + 0xe8cf, 0xea72, 0x96ca, 0xe8d0, 0xe8d1, 0xe8d2, 0x8a76, 0xe8d4, + 0x9078, 0xe8d5, 0x8c43, 0xe8d6, 0xe8da, 0xe8d8, 0xe8d9, 0x8a93, + 0xe8d7, 0xe8db, 0xe8dc, 0x88c6, 0xe8dd, 0xe8de, 0x8fe2, 0xe8df, + 0x8b66, 0xe8e2, 0xe8e1, 0xe8e0, 0xe691, 0x95da, 0xe8e3, 0xe8e4, + 0xe8e5, 0xe8e6, 0xe8e7, 0xe8e8, 0x8ad8, 0xe8e9, 0xe8ea, 0x9442, + 0xe8ec, 0x89b9, 0xe8ef, 0xe8ee, 0x8943, 0x8bbf, 0x95c5, 0x92b8, + 0x8da0, 0x8d80, 0x8f87, 0x907b, 0xe8f1, 0xe8f0, 0x9761, 0x8ae6, + 0x94d0, 0x93da, 0x909c, 0x97cc, 0x8c7a, 0xe8f4, 0xe8f3, 0x966a, + 0x93aa, 0x896f, 0xe8f5, 0xe8f2, 0x9570, 0x978a, 0xe8f6, 0xe8f7, + 0xe8f9, 0x91e8, 0x8a7a, 0x8a7b, 0xe8f8, 0x8ae7, 0x8cb0, 0x8ae8, + 0x935e, 0x97de, 0x8cda, 0xe8fa, 0xe8fb, 0xe8fc, 0xe940, 0xe942, + 0xe941, 0x9597, 0xe943, 0xe944, 0xe945, 0xe946, 0xe948, 0xe947, + 0xe949, 0x94f2, 0xe3ca, 0x9048, 0x8b51, 0xe94a, 0xe94b, 0x99aa, + 0x9f5a, 0x94d1, 0x88f9, 0x88b9, 0x8e94, 0x964f, 0x8ffc, 0xe94c, + 0x96dd, 0xe94d, 0x977b, 0x8961, 0x8e60, 0xe94e, 0x89ec, 0xe94f, + 0xe950, 0xe952, 0xe953, 0xe955, 0xe951, 0xe954, 0x8ad9, 0xe956, + 0xe957, 0xe958, 0xe959, 0xe95a, 0xe95c, 0xe95b, 0xe95e, 0xe961, + 0xe95d, 0xe95f, 0xe960, 0xe962, 0x8bc0, 0x8ef1, 0xe963, 0xe964, + 0x8d81, 0xe965, 0x8a5d, 0x946e, 0xe966, 0xe967, 0x9279, 0x93e9, + 0xe968, 0x949d, 0x91ca, 0x8977, 0x8bec, 0x8bed, 0x9293, 0xe96d, + 0x8bee, 0x89ed, 0xe96c, 0xe96a, 0xe96b, 0xe969, 0xe977, 0xe96e, + 0xe96f, 0xe970, 0xe971, 0xe973, 0xe972, 0x8f78, 0xe974, 0xe976, + 0x8b52, 0xe975, 0x919b, 0x8cb1, 0xe978, 0x91cb, 0xe979, 0x93ab, + 0xe97a, 0xe980, 0xe97d, 0xe97c, 0xe97e, 0xe97b, 0xe982, 0xe981, + 0xe984, 0x8bc1, 0xe983, 0xe985, 0xe986, 0xe988, 0xe987, 0xe989, + 0xe98b, 0xe98a, 0x8d9c, 0xe98c, 0xe98d, 0x8a5b, 0xe98e, 0xe98f, + 0x9091, 0xe990, 0xe991, 0xe992, 0xe993, 0x8d82, 0xe994, 0xe995, + 0xe996, 0xe997, 0xe998, 0x94af, 0xe99a, 0x9545, 0xe99b, 0xe999, + 0xe99d, 0xe99c, 0xe99e, 0xe99f, 0xe9a0, 0xe9a1, 0xe9a2, 0xe9a3, + 0xe9a4, 0xe9a5, 0xe9a6, 0xe9a7, 0xe9a8, 0xe9a9, 0xe9aa, 0xe9ab, + 0xe9ac, 0x9f54, 0xe9ad, 0xe2f6, 0x8b53, 0x8a40, 0x8db0, 0xe9af, + 0xe9ae, 0x96a3, 0xe9b1, 0xe9b2, 0xe9b0, 0xe9b3, 0x9682, 0xe9b4, + 0x8b9b, 0x9844, 0xe9b5, 0xe9b7, 0x88bc, 0xe9b8, 0x95a9, 0xe9b6, + 0xe9b9, 0xe9ba, 0xe9bb, 0xe9bc, 0xe9bd, 0x968e, 0x8e4c, 0x8df8, + 0x914e, 0xe9be, 0xe9c1, 0xe9bf, 0xe9c2, 0x8cef, 0xe9c0, 0xe9c3, + 0xe9c4, 0xe9c5, 0xe9c9, 0x8e49, 0x91e2, 0xe9ca, 0xe9c7, 0xe9c6, + 0xe9c8, 0x8c7e, 0xe9ce, 0xe9cd, 0xe9cc, 0x88b1, 0xe9d8, 0xe9d4, + 0xe9d5, 0xe9d1, 0xe9d7, 0xe9d3, 0x8a82, 0x986b, 0xe9d6, 0xe9d2, + 0xe9d0, 0xe9cf, 0xe9da, 0xe9dd, 0xe9dc, 0xe9db, 0x9568, 0xe9d9, + 0x88f1, 0xe9de, 0xe9e0, 0x8a8f, 0xe9cb, 0x8956, 0xe9e2, 0xe9e1, + 0xe9df, 0x924c, 0x9690, 0x97d8, 0xe9e3, 0xe9e4, 0xe9e5, 0xe9e6, + 0xe9e7, 0x92b9, 0xe9e8, 0x94b5, 0xe9ed, 0xe9e9, 0xe9ea, 0x9650, + 0x96c2, 0x93ce, 0xe9ee, 0xe9ef, 0x93bc, 0xe9ec, 0xe9eb, 0x89a8, + 0xe9f7, 0xe9f6, 0x8995, 0xe9f4, 0xe9f3, 0xe9f1, 0x8a9b, 0xe9f0, + 0x8eb0, 0x89a7, 0x8d83, 0xe9fa, 0xe9f9, 0xe9f8, 0xe9f5, 0xe9fb, + 0xe9fc, 0xea44, 0xea43, 0xea45, 0x894c, 0xea40, 0xea41, 0x8d94, + 0x96b7, 0xea42, 0x9651, 0xea4a, 0xea46, 0xea4b, 0xea48, 0xea47, + 0x8c7b, 0xea4c, 0xea4d, 0xea4e, 0xea49, 0xe9f2, 0xea4f, 0x92df, + 0xea53, 0xea54, 0xea52, 0xea51, 0xea57, 0xea50, 0xea55, 0xea56, + 0xea59, 0xea58, 0xea5b, 0xea5c, 0xea5d, 0x9868, 0xea5a, 0x91e9, + 0x8deb, 0xea5e, 0xea5f, 0xea60, 0xea61, 0xea62, 0x8cb2, 0xea63, + 0xea64, 0x8ead, 0xea65, 0xea66, 0xea67, 0xea68, 0xea6b, 0xea69, + 0x985b, 0xea6a, 0x97ed, 0xea6c, 0x97d9, 0xea6d, 0x949e, 0xea6e, + 0xea70, 0xea71, 0xea6f, 0x8d8d, 0x96cb, 0x9683, 0x9bf5, 0x9f80, + 0x969b, 0x89a9, 0xea73, 0x8b6f, 0xea74, 0xea75, 0xea76, 0x8d95, + 0xea77, 0xe0d2, 0x96d9, 0x91e1, 0xea78, 0xea7a, 0xea79, 0xea7b, + 0xea7c, 0xea7d, 0xea7e, 0xea80, 0xea81, 0xea82, 0xea83, 0xea84, + 0xea85, 0xea86, 0xea87, 0xea88, 0x9343, 0x8cdb, 0xea8a, 0x916c, + 0xea8b, 0xea8c, 0x9540, 0xea8d, 0xea8e, 0xe256, 0xe6d8, 0xe8eb, + 0xea8f, 0xea90, 0xea92, 0xea93, 0xea94, 0x97ee, 0xea91, 0xea95, + 0xea96, 0xea98, 0xea97, 0xea9a, 0xea9b, 0xea99, 0x97b4, 0xea9c, + 0xea9d, 0xe273, 0xea9e, 0x8149, 0x8194, 0x8190, 0x8193, 0x8195, + 0x8169, 0x816a, 0x8196, 0x817b, 0x8143, 0x8144, 0x815e, 0x824f, + 0x8250, 0x8251, 0x8252, 0x8253, 0x8254, 0x8255, 0x8256, 0x8257, + 0x8258, 0x8146, 0x8147, 0x8183, 0x8181, 0x8184, 0x8148, 0x8197, + 0x8260, 0x8261, 0x8262, 0x8263, 0x8264, 0x8265, 0x8266, 0x8267, + 0x8268, 0x8269, 0x826a, 0x826b, 0x826c, 0x826d, 0x826e, 0x826f, + 0x8270, 0x8271, 0x8272, 0x8273, 0x8274, 0x8275, 0x8276, 0x8277, + 0x8278, 0x8279, 0x816d, 0x815f, 0x816e, 0x814f, 0x8151, 0x814d, + 0x8281, 0x8282, 0x8283, 0x8284, 0x8285, 0x8286, 0x8287, 0x8288, + 0x8289, 0x828a, 0x828b, 0x828c, 0x828d, 0x828e, 0x828f, 0x8290, + 0x8291, 0x8292, 0x8293, 0x8294, 0x8295, 0x8296, 0x8297, 0x8298, + 0x8299, 0x829a, 0x816f, 0x8162, 0x8170, 0x8150, 0x818f, +}; + +typedef struct { + unsigned short indx; /* index into big table */ + unsigned short used; /* bitmask of used entries */ +} Summary16; + +static const Summary16 jisx0208_uni2indx_page00[16] = { + /* 0x0000 */ + { 0, 0x0000 }, { 0, 0x0000 }, { 0, 0x0000 }, { 0, 0x0000 }, + { 0, 0x0000 }, { 6843, 0x1000 }, { 0, 0x0000 }, { 0, 0x0000 }, /* ZINT: Patched reverse solidus (backslash) mapping U+005C to 0x815F */ + { 0, 0x0000 }, { 0, 0x0000 }, { 0, 0x118c }, { 5, 0x0053 }, + { 9, 0x0000 }, { 9, 0x0080 }, { 10, 0x0000 }, { 10, 0x0080 }, +}; +static const Summary16 jisx0208_uni2indx_page03[22] = { + /* 0x0300 */ + { 11, 0x0000 }, { 11, 0x0000 }, { 11, 0x0000 }, { 11, 0x0000 }, + { 11, 0x0000 }, { 11, 0x0000 }, { 11, 0x0000 }, { 11, 0x0000 }, + { 11, 0x0000 }, { 11, 0xfffe }, { 26, 0x03fb }, { 35, 0xfffe }, + { 50, 0x03fb }, { 59, 0x0000 }, { 59, 0x0000 }, { 59, 0x0000 }, + /* 0x0400 */ + { 59, 0x0002 }, { 60, 0xffff }, { 76, 0xffff }, { 92, 0xffff }, + { 108, 0xffff }, { 124, 0x0002 }, +}; +static const Summary16 jisx0208_uni2indx_page20[50] = { + /* 0x2000 */ + { 125, 0x0000 }, { 125, 0x3361 }, { 132, 0x0063 }, { 136, 0x080d }, + { 140, 0x0000 }, { 140, 0x0000 }, { 140, 0x0000 }, { 140, 0x0000 }, + { 140, 0x0000 }, { 140, 0x0000 }, { 140, 0x0000 }, { 140, 0x0000 }, + { 140, 0x0000 }, { 140, 0x0000 }, { 140, 0x0000 }, { 140, 0x0000 }, + /* 0x2100 */ + { 140, 0x0008 }, { 141, 0x0000 }, { 141, 0x0800 }, { 142, 0x0000 }, + { 142, 0x0000 }, { 142, 0x0000 }, { 142, 0x0000 }, { 142, 0x0000 }, + { 142, 0x0000 }, { 142, 0x000f }, { 146, 0x0000 }, { 146, 0x0000 }, + { 146, 0x0000 }, { 146, 0x0014 }, { 148, 0x0000 }, { 148, 0x0000 }, + /* 0x2200 */ + { 148, 0x098d }, { 154, 0x6404 }, { 158, 0x1f81 }, { 165, 0x2030 }, + { 168, 0x0000 }, { 168, 0x0004 }, { 169, 0x0cc3 }, { 175, 0x0000 }, + { 175, 0x00cc }, { 179, 0x0000 }, { 179, 0x0020 }, { 180, 0x0000 }, + { 180, 0x0000 }, { 180, 0x0000 }, { 180, 0x0000 }, { 180, 0x0000 }, + /* 0x2300 */ + { 180, 0x0000 }, { 180, 0x0004 }, +}; +static const Summary16 jisx0208_uni2indx_page25[23] = { + /* 0x2500 */ + { 181, 0x900f }, { 187, 0x3999 }, { 195, 0x9939 }, { 203, 0x9999 }, + { 211, 0x0804 }, { 213, 0x0000 }, { 213, 0x0000 }, { 213, 0x0000 }, + { 213, 0x0000 }, { 213, 0x0000 }, { 213, 0x0003 }, { 215, 0x300c }, + { 219, 0xc8c0 }, { 224, 0x0000 }, { 224, 0x8000 }, { 225, 0x0000 }, + /* 0x2600 */ + { 225, 0x0060 }, { 227, 0x0000 }, { 227, 0x0000 }, { 227, 0x0000 }, + { 227, 0x0005 }, { 229, 0x0000 }, { 229, 0xa400 }, +}; +static const Summary16 jisx0208_uni2indx_page30[16] = { + /* 0x3000 */ + { 232, 0xffef }, { 247, 0x103f }, { 254, 0x0000 }, { 254, 0x0000 }, + { 254, 0xfffe }, { 269, 0xffff }, { 285, 0xffff }, { 301, 0xffff }, + { 317, 0xffff }, { 333, 0x780f }, { 341, 0xfffe }, { 356, 0xffff }, + { 372, 0xffff }, { 388, 0xffff }, { 404, 0xffff }, { 420, 0x787f }, +}; +static const Summary16 jisx0208_uni2indx_page4e[1307] = { + /* 0x4e00 */ + { 431, 0x6f8b }, { 441, 0x43f3 }, { 450, 0x2442 }, { 454, 0x9b46 }, + { 462, 0xe82c }, { 469, 0xe3e0 }, { 477, 0x0004 }, { 478, 0x400a }, + { 481, 0x5f65 }, { 491, 0xdb36 }, { 501, 0x7977 }, { 512, 0x0449 }, + { 516, 0xecd7 }, { 527, 0xe3f0 }, { 536, 0x6038 }, { 541, 0x08c5 }, + /* 0x4f00 */ + { 546, 0xe602 }, { 552, 0x3403 }, { 557, 0x8000 }, { 558, 0x3551 }, + { 565, 0xe0c8 }, { 571, 0x7eab }, { 582, 0x8200 }, { 584, 0x9869 }, + { 591, 0xa948 }, { 597, 0x2942 }, { 602, 0xe803 }, { 608, 0x8060 }, + { 611, 0x441c }, { 616, 0xad93 }, { 625, 0xc03a }, { 631, 0x4568 }, + /* 0x5000 */ + { 637, 0xaa60 }, { 643, 0x8656 }, { 650, 0x3f7a }, { 661, 0x0240 }, + { 663, 0x8388 }, { 668, 0x1461 }, { 673, 0x1020 }, { 675, 0x2174 }, + { 681, 0x2021 }, { 684, 0x0702 }, { 688, 0x3000 }, { 690, 0x40bc }, + { 696, 0xa624 }, { 702, 0x4462 }, { 707, 0x60a8 }, { 712, 0x0a20 }, + /* 0x5100 */ + { 715, 0x0217 }, { 720, 0x8574 }, { 727, 0x0402 }, { 729, 0x9c84 }, + { 735, 0x7bfb }, { 748, 0x1415 }, { 753, 0x7f24 }, { 762, 0x11e2 }, + { 768, 0xb665 }, { 777, 0x02ef }, { 785, 0x1f75 }, { 795, 0x20ff }, + { 804, 0x3a70 }, { 811, 0x3840 }, { 815, 0x26c3 }, { 822, 0x6763 }, + /* 0x5200 */ + { 831, 0x4dd9 }, { 840, 0x2092 }, { 844, 0x46b0 }, { 850, 0x0fc9 }, + { 858, 0xbc98 }, { 866, 0x4850 }, { 870, 0x8638 }, { 876, 0xa03f }, + { 884, 0x2388 }, { 889, 0x8816 }, { 894, 0x3e09 }, { 901, 0x5232 }, + { 907, 0x22aa }, { 913, 0xe3a4 }, { 921, 0x00dd }, { 927, 0xc72c }, + /* 0x5300 */ + { 935, 0xa166 }, { 942, 0x26e1 }, { 949, 0x840b }, { 954, 0x8f0a }, + { 961, 0x27eb }, { 971, 0x559e }, { 980, 0xc241 }, { 985, 0x89bb }, + { 994, 0x0014 }, { 996, 0x8540 }, { 1000, 0x6361 }, { 1007, 0x0849 }, + { 1011, 0x7f0c }, { 1020, 0x8ad0 }, { 1026, 0xff3e }, { 1039, 0x05cf }, + /* 0x5400 */ + { 1047, 0xff1a }, { 1058, 0xa803 }, { 1063, 0x7a41 }, { 1070, 0x7b40 }, + { 1077, 0x4745 }, { 1084, 0x8002 }, { 1086, 0x0500 }, { 1088, 0x38eb }, + { 1097, 0xd851 }, { 1104, 0x0005 }, { 1106, 0x9934 }, { 1113, 0x710c }, + { 1119, 0x0397 }, { 1126, 0x0100 }, { 1127, 0x6366 }, { 1135, 0x2404 }, + /* 0x5500 */ + { 1138, 0x80d0 }, { 1142, 0x0051 }, { 1145, 0xc000 }, { 1147, 0x430a }, + { 1152, 0x9071 }, { 1158, 0x30c8 }, { 1163, 0x0008 }, { 1164, 0x5800 }, + { 1167, 0x0e99 }, { 1174, 0xf700 }, { 1181, 0x5f80 }, { 1188, 0x0041 }, + { 1190, 0x00b0 }, { 1193, 0x9410 }, { 1197, 0x0018 }, { 1199, 0x6280 }, + /* 0x5600 */ + { 1203, 0x0240 }, { 1205, 0x09d0 }, { 1210, 0x8200 }, { 1212, 0x0156 }, + { 1217, 0x5004 }, { 1220, 0x0801 }, { 1222, 0x1d10 }, { 1227, 0x0510 }, + { 1230, 0x84c1 }, { 1235, 0x0010 }, { 1236, 0x4025 }, { 1240, 0x1050 }, + { 1243, 0x410f }, { 1249, 0x4d8a }, { 1256, 0x4009 }, { 1259, 0xa60d }, + /* 0x5700 */ + { 1266, 0xab19 }, { 1274, 0x914c }, { 1280, 0x21c0 }, { 1284, 0x0981 }, + { 1288, 0xc485 }, { 1294, 0x0003 }, { 1296, 0x0652 }, { 1301, 0x8000 }, + { 1302, 0x0b04 }, { 1306, 0x0008 }, { 1307, 0x041d }, { 1312, 0x0009 }, + { 1314, 0x4849 }, { 1319, 0x905c }, { 1325, 0x0009 }, { 1327, 0x1690 }, + /* 0x5800 */ + { 1332, 0x0c65 }, { 1338, 0x2220 }, { 1341, 0x8412 }, { 1345, 0x2433 }, + { 1351, 0x0c03 }, { 1355, 0x4796 }, { 1363, 0x0a04 }, { 1366, 0x4225 }, + { 1371, 0x0028 }, { 1373, 0x9088 }, { 1377, 0x4900 }, { 1380, 0x4f08 }, + { 1386, 0x14a2 }, { 1391, 0xd3aa }, { 1400, 0xd830 }, { 1406, 0x3e87 }, + /* 0x5900 */ + { 1415, 0x8604 }, { 1419, 0x1f61 }, { 1427, 0x7ea4 }, { 1436, 0x4186 }, + { 1441, 0xc390 }, { 1447, 0x05b3 }, { 1454, 0x57a5 }, { 1463, 0x2118 }, + { 1467, 0x241e }, { 1473, 0x2a48 }, { 1478, 0x1128 }, { 1482, 0x4a04 }, + { 1486, 0x0a40 }, { 1489, 0x161b }, { 1496, 0x0d60 }, { 1501, 0x8840 }, + /* 0x5a00 */ + { 1504, 0x020a }, { 1507, 0x9502 }, { 1512, 0x8221 }, { 1516, 0x1060 }, + { 1519, 0x0243 }, { 1523, 0x0400 }, { 1524, 0x1444 }, { 1528, 0x8000 }, + { 1529, 0x0000 }, { 1529, 0x0c04 }, { 1532, 0x0000 }, { 1532, 0x7000 }, + { 1535, 0x1a06 }, { 1540, 0x00c1 }, { 1543, 0x024a }, { 1547, 0x0c00 }, + /* 0x5b00 */ + { 1549, 0x1a00 }, { 1552, 0x0040 }, { 1553, 0x1404 }, { 1556, 0x4045 }, + { 1560, 0x0029 }, { 1563, 0xbdb3 }, { 1574, 0x0a78 }, { 1580, 0x052b }, + { 1586, 0xbba9 }, { 1596, 0xbfa0 }, { 1605, 0x407c }, { 1611, 0x8379 }, + { 1619, 0x12fc }, { 1627, 0xe81d }, { 1635, 0x4bf6 }, { 1645, 0xc569 }, + /* 0x5c00 */ + { 1653, 0xeff6 }, { 1666, 0x044a }, { 1670, 0x2115 }, { 1675, 0xff02 }, + { 1684, 0xed63 }, { 1694, 0x402b }, { 1699, 0xd033 }, { 1706, 0x0242 }, + { 1709, 0x1000 }, { 1710, 0x0013 }, { 1713, 0x1b02 }, { 1718, 0x59ca }, + { 1726, 0x00a0 }, { 1728, 0x0200 }, { 1729, 0xa703 }, { 1736, 0x2c41 }, + /* 0x5d00 */ + { 1741, 0x4880 }, { 1744, 0x8ff2 }, { 1754, 0x0204 }, { 1756, 0x0000 }, + { 1756, 0x5800 }, { 1759, 0x1005 }, { 1762, 0x9200 }, { 1765, 0x0048 }, + { 1767, 0x1894 }, { 1772, 0x2001 }, { 1774, 0x5004 }, { 1777, 0x3480 }, + { 1781, 0x3200 }, { 1784, 0x684c }, { 1790, 0x49ea }, { 1798, 0x68be }, + /* 0x5e00 */ + { 1807, 0x184c }, { 1812, 0x2e42 }, { 1818, 0xa820 }, { 1822, 0x21c9 }, + { 1828, 0x50b9 }, { 1835, 0x80b0 }, { 1839, 0x001e }, { 1843, 0xff7c }, + { 1856, 0x849a }, { 1862, 0x14e0 }, { 1867, 0x28c1 }, { 1872, 0x01e0 }, + { 1876, 0x870e }, { 1883, 0xac49 }, { 1890, 0x130f }, { 1897, 0xdddb }, + /* 0x5f00 */ + { 1909, 0xbe1a }, { 1918, 0x89fb }, { 1928, 0xa2e0 }, { 1934, 0x51a2 }, + { 1940, 0x5502 }, { 1945, 0x32ca }, { 1952, 0x3e46 }, { 1960, 0x928b }, + { 1967, 0x1dbf }, { 1978, 0x438f }, { 1986, 0x6703 }, { 1993, 0x3218 }, + { 1998, 0x3028 }, { 2002, 0x33c0 }, { 2008, 0x0811 }, { 2011, 0xa923 }, + /* 0x6000 */ + { 2018, 0xc000 }, { 2020, 0x3a65 }, { 2028, 0x8fe3 }, { 2038, 0x0402 }, + { 2040, 0x2c4e }, { 2047, 0x8625 }, { 2053, 0xbf3d }, { 2065, 0x00a1 }, + { 2068, 0x3a1a }, { 2075, 0x8cd4 }, { 2082, 0x06c9 }, { 2088, 0x317c }, + { 2096, 0x00e0 }, { 2099, 0x950a }, { 2105, 0x018b }, { 2110, 0x0edb }, + /* 0x6100 */ + { 2119, 0xe34b }, { 2128, 0x8c20 }, { 2132, 0x1182 }, { 2136, 0xf010 }, + { 2141, 0x7d94 }, { 2150, 0xa728 }, { 2157, 0xc9ac }, { 2165, 0x40fb }, + { 2173, 0x4484 }, { 2177, 0x0653 }, { 2183, 0x5a90 }, { 2189, 0x4444 }, + { 2193, 0x3fc8 }, { 2202, 0x0001 }, { 2203, 0x0048 }, { 2205, 0xf5d4 }, + /* 0x6200 */ + { 2215, 0x7701 }, { 2222, 0xec57 }, { 2232, 0xc442 }, { 2237, 0x891d }, + { 2244, 0x6b83 }, { 2252, 0x4928 }, { 2257, 0x4109 }, { 2261, 0xd242 }, + { 2267, 0x061d }, { 2273, 0x59fe }, { 2284, 0x1800 }, { 2286, 0x3a22 }, + { 2292, 0xb7e4 }, { 2302, 0x3b9f }, { 2313, 0xf003 }, { 2319, 0xc0ea }, + /* 0x6300 */ + { 2326, 0x1386 }, { 2332, 0x8202 }, { 2335, 0x8980 }, { 2339, 0xe400 }, + { 2343, 0xb200 }, { 2347, 0x10a1 }, { 2351, 0x4b80 }, { 2356, 0x0cc4 }, + { 2361, 0xd309 }, { 2368, 0x8944 }, { 2373, 0x1faf }, { 2384, 0x4834 }, + { 2389, 0x8259 }, { 2395, 0x0c45 }, { 2400, 0x420a }, { 2404, 0x0450 }, + /* 0x6400 */ + { 2407, 0xa040 }, { 2410, 0x10c8 }, { 2414, 0x3140 }, { 2418, 0x4450 }, + { 2422, 0x4004 }, { 2424, 0x0100 }, { 2425, 0x8280 }, { 2428, 0x0540 }, + { 2431, 0x0108 }, { 2433, 0x442c }, { 2438, 0x6a30 }, { 2444, 0x1a05 }, + { 2449, 0x20a6 }, { 2454, 0x0514 }, { 2458, 0x90cf }, { 2466, 0x6456 }, + /* 0x6500 */ + { 2473, 0x0021 }, { 2475, 0x3100 }, { 2478, 0x9c18 }, { 2484, 0xcbf0 }, + { 2493, 0xa120 }, { 2497, 0x63e2 }, { 2505, 0x104c }, { 2509, 0x01b5 }, + { 2515, 0x538c }, { 2522, 0x9a83 }, { 2529, 0xb8b2 }, { 2537, 0x3281 }, + { 2542, 0x987a }, { 2550, 0x0a84 }, { 2554, 0x33e7 }, { 2564, 0x0c02 }, + /* 0x6600 */ + { 2567, 0xd4cc }, { 2575, 0x9018 }, { 2579, 0xa1a1 }, { 2585, 0x9070 }, + { 2590, 0x8a1e }, { 2597, 0xe004 }, { 2601, 0xc3d4 }, { 2609, 0x0451 }, + { 2613, 0x439a }, { 2620, 0x21c2 }, { 2625, 0x4844 }, { 2629, 0x5310 }, + { 2634, 0x0292 }, { 2638, 0x3640 }, { 2643, 0x0241 }, { 2646, 0xf3bd }, + /* 0x6700 */ + { 2658, 0xab09 }, { 2665, 0xe8f0 }, { 2673, 0x7dc0 }, { 2681, 0xa5d2 }, + { 2689, 0xc242 }, { 2694, 0xd24b }, { 2702, 0xa43f }, { 2711, 0xd0af }, + { 2720, 0x1aa0 }, { 2725, 0x34a1 }, { 2731, 0x8247 }, { 2737, 0x03d8 }, + { 2743, 0xc452 }, { 2749, 0x651b }, { 2757, 0xd294 }, { 2764, 0xc83a }, + /* 0x6800 */ + { 2771, 0x001c }, { 2774, 0x40c8 }, { 2778, 0x0e06 }, { 2783, 0x3314 }, + { 2789, 0x614f }, { 2797, 0xb21b }, { 2805, 0x0088 }, { 2807, 0xc0d0 }, + { 2812, 0xa02a }, { 2817, 0xa898 }, { 2823, 0xa1c5 }, { 2830, 0x166b }, + { 2838, 0x2e50 }, { 2844, 0x85b4 }, { 2851, 0xc08b }, { 2857, 0x0604 }, + /* 0x6900 */ + { 2860, 0xf933 }, { 2870, 0x1e04 }, { 2875, 0x056e }, { 2882, 0xa251 }, + { 2888, 0x0400 }, { 2889, 0x7638 }, { 2897, 0xec07 }, { 2905, 0x73b8 }, + { 2914, 0x4406 }, { 2918, 0x1832 }, { 2923, 0x4081 }, { 2926, 0xc816 }, + { 2932, 0x7c8a }, { 2940, 0x6309 }, { 2946, 0x2980 }, { 2950, 0xaa04 }, + /* 0x6a00 */ + { 2955, 0x1c24 }, { 2960, 0xca9c }, { 2968, 0x4e0e }, { 2975, 0x2760 }, + { 2981, 0x0990 }, { 2985, 0x8300 }, { 2988, 0x0046 }, { 2991, 0x8104 }, + { 2994, 0x6011 }, { 2998, 0x1081 }, { 3001, 0x540d }, { 3007, 0x0908 }, + { 3010, 0x000e }, { 3013, 0xcc0a }, { 3019, 0x0500 }, { 3021, 0x0c00 }, + /* 0x6b00 */ + { 3023, 0x0430 }, { 3026, 0xa044 }, { 3030, 0x008b }, { 3034, 0x6784 }, + { 3041, 0x5288 }, { 3046, 0x8a19 }, { 3052, 0x865e }, { 3060, 0x8b18 }, + { 3066, 0x2e59 }, { 3074, 0x4160 }, { 3078, 0x8c10 }, { 3082, 0x9cbe }, + { 3092, 0x6861 }, { 3098, 0x891c }, { 3104, 0x9800 }, { 3107, 0x0008 }, + /* 0x6c00 */ + { 3108, 0x8100 }, { 3110, 0x089a }, { 3115, 0x0018 }, { 3117, 0x4190 }, + { 3121, 0x4007 }, { 3125, 0xe4a1 }, { 3132, 0x0505 }, { 3136, 0x640d }, + { 3142, 0x310e }, { 3148, 0x0e4d }, { 3155, 0x4806 }, { 3159, 0xff0a }, + { 3169, 0x1632 }, { 3175, 0x2aa8 }, { 3181, 0x852e }, { 3188, 0x000b }, + /* 0x6d00 */ + { 3191, 0x1800 }, { 3193, 0xca84 }, { 3199, 0x0e20 }, { 3203, 0x696c }, + { 3211, 0x0032 }, { 3214, 0x1600 }, { 3217, 0x5658 }, { 3224, 0x0390 }, + { 3228, 0x5120 }, { 3232, 0x1a28 }, { 3237, 0x8000 }, { 3238, 0x1124 }, + { 3242, 0x18e1 }, { 3248, 0x4326 }, { 3254, 0x5d52 }, { 3262, 0x0eaa }, + /* 0x6e00 */ + { 3269, 0x0fa0 }, { 3275, 0xae28 }, { 3282, 0xfa7b }, { 3294, 0x4500 }, + { 3297, 0x6408 }, { 3301, 0x8940 }, { 3305, 0xc880 }, { 3309, 0xc044 }, + { 3313, 0x9005 }, { 3317, 0xb141 }, { 3323, 0x8424 }, { 3327, 0x24c4 }, + { 3332, 0x1a34 }, { 3338, 0x603a }, { 3344, 0x9000 }, { 3346, 0xc194 }, + /* 0x6f00 */ + { 3352, 0x8246 }, { 3357, 0x003a }, { 3361, 0x180d }, { 3366, 0xc106 }, + { 3371, 0x0022 }, { 3373, 0x9910 }, { 3378, 0xe050 }, { 3383, 0x1511 }, + { 3388, 0x4057 }, { 3394, 0x0082 }, { 3396, 0x041a }, { 3400, 0x020a }, + { 3403, 0x004f }, { 3408, 0x8930 }, { 3413, 0xd813 }, { 3420, 0x444a }, + /* 0x7000 */ + { 3425, 0x8a02 }, { 3429, 0xed22 }, { 3437, 0x10c0 }, { 3440, 0x4005 }, + { 3443, 0x1000 }, { 3444, 0x0102 }, { 3446, 0x8808 }, { 3449, 0x3101 }, + { 3453, 0x4600 }, { 3456, 0x0204 }, { 3458, 0xf000 }, { 3462, 0x0708 }, + { 3466, 0x8900 }, { 3469, 0xa200 }, { 3472, 0x0000 }, { 3472, 0x2202 }, + /* 0x7100 */ + { 3475, 0x0200 }, { 3476, 0x1610 }, { 3480, 0x0042 }, { 3482, 0x1040 }, + { 3484, 0x5200 }, { 3487, 0x0260 }, { 3490, 0x52f4 }, { 3498, 0x2000 }, + { 3499, 0x8510 }, { 3503, 0x8230 }, { 3507, 0x1100 }, { 3509, 0x4202 }, + { 3512, 0x4308 }, { 3516, 0x80b5 }, { 3522, 0x70e1 }, { 3529, 0x9a20 }, + /* 0x7200 */ + { 3534, 0x2040 }, { 3536, 0x0801 }, { 3538, 0x3500 }, { 3542, 0xfc65 }, + { 3552, 0x19c1 }, { 3558, 0xab04 }, { 3564, 0x0286 }, { 3568, 0x6214 }, + { 3573, 0x0087 }, { 3577, 0x0044 }, { 3579, 0x9085 }, { 3584, 0x0244 }, + { 3587, 0x405c }, { 3592, 0x0a85 }, { 3597, 0x3207 }, { 3603, 0x3380 }, + /* 0x7300 */ + { 3608, 0x0400 }, { 3609, 0xb8c0 }, { 3615, 0xce20 }, { 3621, 0xc0d0 }, + { 3626, 0xc030 }, { 3630, 0x0080 }, { 3631, 0x0508 }, { 3634, 0x0d25 }, + { 3640, 0x0a90 }, { 3644, 0x0040 }, { 3645, 0x0200 }, { 3646, 0x080c }, + { 3649, 0x6505 }, { 3655, 0x4000 }, { 3656, 0x6421 }, { 3661, 0x4102 }, + /* 0x7400 */ + { 3664, 0x0268 }, { 3668, 0x0000 }, { 3668, 0x0024 }, { 3670, 0x847c }, + { 3677, 0x0002 }, { 3678, 0xde20 }, { 3685, 0x8619 }, { 3691, 0x4049 }, + { 3695, 0x0808 }, { 3697, 0x4000 }, { 3698, 0x0084 }, { 3700, 0x2001 }, + { 3702, 0x8400 }, { 3704, 0x1010 }, { 3706, 0x42cd }, { 3713, 0x01c7 }, + /* 0x7500 */ + { 3719, 0x7038 }, { 3725, 0xd52a }, { 3733, 0x1968 }, { 3739, 0x1d8f }, + { 3748, 0xbe50 }, { 3756, 0x3e12 }, { 3763, 0x2ef5 }, { 3773, 0x81d9 }, + { 3780, 0xcec4 }, { 3788, 0x2412 }, { 3792, 0x0828 }, { 3795, 0x732e }, + { 3804, 0x24ac }, { 3810, 0x4b34 }, { 3817, 0x020c }, { 3820, 0xd41d }, + /* 0x7600 */ + { 3828, 0x2a02 }, { 3832, 0x8000 }, { 3833, 0x0097 }, { 3838, 0x0811 }, + { 3841, 0x11c4 }, { 3846, 0x1144 }, { 3850, 0x1786 }, { 3857, 0x7d45 }, + { 3866, 0x49d9 }, { 3874, 0x0649 }, { 3879, 0x4000 }, { 3880, 0x8791 }, + { 3887, 0x254c }, { 3893, 0xd8c4 }, { 3900, 0x44ba }, { 3907, 0x4914 }, + /* 0x7700 */ + { 3912, 0x1b92 }, { 3919, 0xc800 }, { 3922, 0x0271 }, { 3927, 0x1580 }, + { 3931, 0x0081 }, { 3933, 0x0c00 }, { 3935, 0x096a }, { 3941, 0xc200 }, + { 3944, 0x4800 }, { 3946, 0x4002 }, { 3948, 0x3021 }, { 3952, 0xba49 }, + { 3960, 0x2080 }, { 3962, 0x1c80 }, { 3966, 0xe2ac }, { 3974, 0x1008 }, + /* 0x7800 */ + { 3976, 0x1004 }, { 3978, 0x0034 }, { 3981, 0x00e1 }, { 3985, 0x8414 }, + { 3989, 0x0020 }, { 3990, 0x2000 }, { 3991, 0x9800 }, { 3994, 0x1014 }, + { 3997, 0x70c2 }, { 4003, 0x04aa }, { 4008, 0x8688 }, { 4013, 0x5420 }, + { 4017, 0x0c62 }, { 4022, 0x0413 }, { 4026, 0x9180 }, { 4030, 0x2010 }, + /* 0x7900 */ + { 4032, 0x4082 }, { 4035, 0x0206 }, { 4038, 0x1c40 }, { 4042, 0x5400 }, + { 4045, 0x0383 }, { 4050, 0xe4e9 }, { 4059, 0x2125 }, { 4064, 0x8480 }, + { 4067, 0xe433 }, { 4075, 0x2000 }, { 4076, 0x44c0 }, { 4080, 0xe609 }, + { 4087, 0x0a03 }, { 4091, 0x8126 }, { 4096, 0x12da }, { 4103, 0x0801 }, + /* 0x7a00 */ + { 4105, 0x6901 }, { 4110, 0x9790 }, { 4117, 0x4001 }, { 4119, 0xf886 }, + { 4127, 0xe24d }, { 4135, 0x0081 }, { 4137, 0x0a0e }, { 4142, 0xa651 }, + { 4149, 0x011a }, { 4153, 0x81ec }, { 4160, 0xc600 }, { 4164, 0x8441 }, + { 4168, 0xadb8 }, { 4177, 0xb62c }, { 4185, 0xa46f }, { 4194, 0x8741 }, + /* 0x7b00 */ + { 4200, 0x8d54 }, { 4207, 0x4b02 }, { 4212, 0x1161 }, { 4217, 0x0268 }, + { 4221, 0xbb60 }, { 4229, 0x2057 }, { 4235, 0x50a0 }, { 4239, 0x0433 }, + { 4244, 0xa8c0 }, { 4249, 0xb7b4 }, { 4259, 0x2402 }, { 4262, 0x0112 }, + { 4265, 0x9ad3 }, { 4274, 0x2000 }, { 4275, 0x2271 }, { 4281, 0x00c8 }, + /* 0x7c00 */ + { 4284, 0x2081 }, { 4287, 0x809e }, { 4293, 0x0c8a }, { 4298, 0xe180 }, + { 4303, 0xb009 }, { 4308, 0x8151 }, { 4313, 0x1031 }, { 4317, 0x4028 }, + { 4320, 0x2a0e }, { 4326, 0x89a5 }, { 4333, 0x69b6 }, { 4342, 0x620e }, + { 4348, 0x4425 }, { 4353, 0xd144 }, { 4359, 0x8085 }, { 4363, 0x4d54 }, + /* 0x7d00 */ + { 4370, 0x2c75 }, { 4378, 0x1fb1 }, { 4387, 0xd807 }, { 4394, 0x862d }, + { 4401, 0xd87c }, { 4410, 0x4841 }, { 4414, 0x414e }, { 4420, 0x226e }, + { 4427, 0x8200 }, { 4429, 0x9e08 }, { 4435, 0xf80c }, { 4442, 0xed37 }, + { 4453, 0x8c80 }, { 4457, 0x7526 }, { 4465, 0x9313 }, { 4472, 0x0814 }, + /* 0x7e00 */ + { 4475, 0x0e32 }, { 4481, 0xc804 }, { 4485, 0x484e }, { 4491, 0x6ea6 }, + { 4500, 0x2c4a }, { 4506, 0x6670 }, { 4513, 0x26c0 }, { 4518, 0xba01 }, + { 4524, 0xd30c }, { 4531, 0x185d }, { 4538, 0x0000 }, { 4538, 0x0000 }, + { 4538, 0x0000 }, { 4538, 0x0000 }, { 4538, 0x0000 }, { 4538, 0x0000 }, + /* 0x7f00 */ + { 4538, 0x0000 }, { 4538, 0x0000 }, { 4538, 0x0000 }, { 4538, 0x0540 }, + { 4541, 0x7020 }, { 4545, 0x8133 }, { 4551, 0x4f81 }, { 4558, 0x03a5 }, + { 4564, 0x55ec }, { 4573, 0x6410 }, { 4577, 0xc318 }, { 4583, 0x2344 }, + { 4588, 0x1462 }, { 4593, 0x0034 }, { 4596, 0x0a43 }, { 4601, 0x1a09 }, + /* 0x8000 */ + { 4606, 0x187b }, { 4614, 0x13a5 }, { 4621, 0x0102 }, { 4623, 0xa848 }, + { 4628, 0x0440 }, { 4630, 0xc544 }, { 4636, 0x8106 }, { 4640, 0xe2dd }, + { 4650, 0x1af0 }, { 4657, 0x2d48 }, { 4663, 0xb626 }, { 4671, 0x0416 }, + { 4675, 0x5058 }, { 4680, 0x6e40 }, { 4686, 0x8032 }, { 4690, 0x3112 }, + /* 0x8100 */ + { 4695, 0x07e4 }, { 4702, 0x0c00 }, { 4704, 0x8208 }, { 4707, 0x420a }, + { 4711, 0x4840 }, { 4714, 0x803b }, { 4720, 0x4860 }, { 4724, 0x8713 }, + { 4731, 0x850d }, { 4737, 0x3428 }, { 4742, 0x0319 }, { 4747, 0xe529 }, + { 4755, 0x2345 }, { 4761, 0x870a }, { 4767, 0x25a9 }, { 4774, 0x5c18 }, + /* 0x8200 */ + { 4780, 0x77a6 }, { 4790, 0xd9c5 }, { 4799, 0x5e00 }, { 4804, 0x03e8 }, + { 4810, 0x0081 }, { 4812, 0xa700 }, { 4817, 0xcd54 }, { 4825, 0x41c6 }, + { 4831, 0x2800 }, { 4833, 0xa204 }, { 4837, 0xb860 }, { 4843, 0x2b0a }, + { 4849, 0x0020 }, { 4850, 0xda9e }, { 4860, 0x08ea }, { 4866, 0x0e1a }, + /* 0x8300 */ + { 4872, 0x427c }, { 4879, 0x11c0 }, { 4883, 0x8908 }, { 4887, 0x0376 }, + { 4894, 0x8621 }, { 4899, 0x0105 }, { 4902, 0x0000 }, { 4902, 0x18a8 }, + { 4907, 0x46a0 }, { 4912, 0xc448 }, { 4917, 0x0d05 }, { 4922, 0x2022 }, + { 4925, 0x5422 }, { 4930, 0x9148 }, { 4935, 0x8a01 }, { 4939, 0x2897 }, + /* 0x8400 */ + { 4946, 0x7898 }, { 4953, 0x0008 }, { 4954, 0x1605 }, { 4959, 0x3122 }, + { 4964, 0x4240 }, { 4967, 0x0880 }, { 4969, 0xfa4e }, { 4979, 0x06a2 }, + { 4984, 0x0814 }, { 4987, 0x9211 }, { 4992, 0x2002 }, { 4994, 0x9b04 }, + { 5000, 0x2e52 }, { 5007, 0x0643 }, { 5012, 0x5000 }, { 5014, 0x9010 }, + /* 0x8500 */ + { 5017, 0x0041 }, { 5019, 0x85ba }, { 5027, 0x3042 }, { 5031, 0x2020 }, + { 5033, 0x4f0b }, { 5041, 0x05a0 }, { 5045, 0x2708 }, { 5050, 0x4080 }, + { 5052, 0x0591 }, { 5057, 0x1a93 }, { 5064, 0xdf50 }, { 5073, 0x0600 }, + { 5075, 0xa202 }, { 5079, 0x3021 }, { 5083, 0x0630 }, { 5087, 0x4e80 }, + /* 0x8600 */ + { 5092, 0x0cc4 }, { 5097, 0x04c8 }, { 5101, 0xa004 }, { 5104, 0x8001 }, + { 5106, 0x6000 }, { 5108, 0xd431 }, { 5115, 0x0880 }, { 5117, 0x0a02 }, + { 5120, 0x1c00 }, { 5123, 0x0028 }, { 5125, 0x8e18 }, { 5131, 0x0041 }, + { 5133, 0x6ad0 }, { 5140, 0xca10 }, { 5145, 0xf210 }, { 5151, 0x4b00 }, + /* 0x8700 */ + { 5155, 0x274d }, { 5163, 0x1506 }, { 5168, 0x0220 }, { 5170, 0x8890 }, + { 5174, 0x5a00 }, { 5178, 0x82a8 }, { 5183, 0x4549 }, { 5189, 0x8150 }, + { 5193, 0x2004 }, { 5195, 0x8000 }, { 5196, 0x8804 }, { 5199, 0x2c08 }, + { 5203, 0x08d1 }, { 5208, 0x0005 }, { 5210, 0x8001 }, { 5212, 0x4ac4 }, + /* 0x8800 */ + { 5218, 0xe020 }, { 5222, 0x0062 }, { 5225, 0x008e }, { 5229, 0x0a42 }, + { 5233, 0x3055 }, { 5239, 0x6a8c }, { 5246, 0x090e }, { 5251, 0xe0a5 }, + { 5258, 0x2906 }, { 5263, 0x42c4 }, { 5268, 0x4814 }, { 5272, 0x80b3 }, + { 5278, 0x803e }, { 5284, 0xb330 }, { 5291, 0x0102 }, { 5293, 0x731c }, + /* 0x8900 */ + { 5301, 0x1494 }, { 5306, 0x600d }, { 5311, 0x0c20 }, { 5314, 0x0940 }, + { 5317, 0x301a }, { 5322, 0xc040 }, { 5325, 0xa451 }, { 5331, 0xc094 }, + { 5336, 0x8dca }, { 5344, 0x05c8 }, { 5349, 0x96c2 }, { 5356, 0xa40c }, + { 5361, 0x0001 }, { 5362, 0x3404 }, { 5366, 0x00c8 }, { 5369, 0x0110 }, + /* 0x8a00 */ + { 5371, 0x550d }, { 5378, 0xa9c9 }, { 5386, 0x2428 }, { 5390, 0x1c5a }, + { 5397, 0x0142 }, { 5400, 0x4837 }, { 5407, 0x7a4d }, { 5416, 0x100f }, + { 5421, 0x32b4 }, { 5428, 0x452a }, { 5434, 0x317b }, { 5443, 0x9205 }, + { 5448, 0xb894 }, { 5455, 0x5c44 }, { 5461, 0x68d7 }, { 5470, 0x458a }, + /* 0x8b00 */ + { 5476, 0x5097 }, { 5483, 0x2ed1 }, { 5491, 0x1943 }, { 5497, 0x4208 }, + { 5500, 0xd202 }, { 5505, 0x9d40 }, { 5511, 0x9840 }, { 5515, 0x2097 }, + { 5521, 0x5409 }, { 5526, 0x064d }, { 5532, 0x0000 }, { 5532, 0x0000 }, + { 5532, 0x0000 }, { 5532, 0x0000 }, { 5532, 0x0000 }, { 5532, 0x0000 }, + /* 0x8c00 */ + { 5532, 0x0000 }, { 5532, 0x0000 }, { 5532, 0x0000 }, { 5532, 0x8480 }, + { 5535, 0x5542 }, { 5541, 0x0421 }, { 5544, 0x1c06 }, { 5549, 0x1700 }, + { 5553, 0x7624 }, { 5560, 0x6110 }, { 5564, 0xff87 }, { 5576, 0xb9dd }, + { 5587, 0x659f }, { 5597, 0x5c0a }, { 5603, 0x245d }, { 5610, 0x3c00 }, + /* 0x8d00 */ + { 5614, 0xadb0 }, { 5622, 0x0059 }, { 5626, 0x0000 }, { 5626, 0x0000 }, + { 5626, 0x0000 }, { 5626, 0x0000 }, { 5626, 0x28d0 }, { 5631, 0x009b }, + { 5636, 0x0422 }, { 5639, 0x0200 }, { 5640, 0x0108 }, { 5642, 0x4408 }, + { 5645, 0x9804 }, { 5649, 0xac40 }, { 5654, 0x8d0a }, { 5660, 0x9028 }, + /* 0x8e00 */ + { 5664, 0x8700 }, { 5668, 0xe001 }, { 5672, 0x0400 }, { 5673, 0x0031 }, + { 5676, 0x1794 }, { 5683, 0x8221 }, { 5687, 0x0019 }, { 5690, 0x1054 }, + { 5694, 0x2cb2 }, { 5701, 0x021a }, { 5705, 0x9c02 }, { 5710, 0x4003 }, + { 5713, 0x3d60 }, { 5720, 0x8804 }, { 5723, 0x080c }, { 5726, 0x7900 }, + /* 0x8f00 */ + { 5731, 0x1628 }, { 5736, 0xba3c }, { 5745, 0x8640 }, { 5749, 0xcb08 }, + { 5755, 0x7274 }, { 5763, 0x9080 }, { 5766, 0x001e }, { 5770, 0x0000 }, + { 5770, 0x0000 }, { 5770, 0xd800 }, { 5774, 0xe188 }, { 5780, 0x9c87 }, + { 5788, 0x4034 }, { 5792, 0x0412 }, { 5795, 0xae64 }, { 5803, 0x2791 }, + /* 0x9000 */ + { 5810, 0xe86b }, { 5819, 0xe6fb }, { 5831, 0x408f }, { 5837, 0x5366 }, + { 5845, 0xeea6 }, { 5855, 0x537f }, { 5866, 0xe32b }, { 5875, 0xb5e4 }, + { 5884, 0x869f }, { 5893, 0x0002 }, { 5894, 0x8548 }, { 5899, 0x0122 }, + { 5902, 0x4402 }, { 5905, 0x0800 }, { 5906, 0x2116 }, { 5911, 0x20a0 }, + /* 0x9100 */ + { 5914, 0x0004 }, { 5915, 0x0204 }, { 5917, 0x2000 }, { 5918, 0x0005 }, + { 5920, 0x7e00 }, { 5926, 0x0154 }, { 5930, 0x162c }, { 5936, 0x01ac }, + { 5941, 0x2a84 }, { 5946, 0x1085 }, { 5950, 0x8c14 }, { 5955, 0x0530 }, + { 5959, 0xfbc3 }, { 5970, 0xb943 }, { 5978, 0x00ca }, { 5982, 0x9060 }, + /* 0x9200 */ + { 5986, 0x6000 }, { 5988, 0x4032 }, { 5992, 0x1200 }, { 5994, 0x8090 }, + { 5997, 0x0b30 }, { 6002, 0x4c81 }, { 6007, 0x0054 }, { 6010, 0x4002 }, + { 6012, 0x0029 }, { 6015, 0x1d6a }, { 6023, 0x2000 }, { 6024, 0x0280 }, + { 6026, 0x8000 }, { 6027, 0x0004 }, { 6028, 0x2610 }, { 6032, 0x150c }, + /* 0x9300 */ + { 6037, 0x8040 }, { 6039, 0x0701 }, { 6043, 0xd94d }, { 6052, 0x0c24 }, + { 6056, 0x2810 }, { 6059, 0x1850 }, { 6063, 0x5001 }, { 6066, 0x5020 }, + { 6069, 0x1000 }, { 6070, 0x04d0 }, { 6074, 0x7080 }, { 6078, 0x0201 }, + { 6080, 0x0108 }, { 6082, 0x21c3 }, { 6088, 0x0132 }, { 6092, 0x0000 }, + /* 0x9400 */ + { 6092, 0x0088 }, { 6094, 0x0719 }, { 6100, 0x0802 }, { 6102, 0x0560 }, + { 6106, 0x0012 }, { 6108, 0x4c0e }, { 6114, 0x0405 }, { 6117, 0xf0a1 }, + { 6124, 0x0002 }, { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 }, + { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 }, + /* 0x9500 */ + { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 }, + { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0000 }, { 6125, 0x0080 }, + { 6126, 0x8e8d }, { 6134, 0x035a }, { 6140, 0x21bd }, { 6148, 0x5a04 }, + { 6153, 0x3488 }, { 6158, 0x1170 }, { 6163, 0x0026 }, { 6166, 0x0000 }, + /* 0x9600 */ + { 6166, 0x0000 }, { 6166, 0x1000 }, { 6167, 0xc502 }, { 6172, 0x8804 }, + { 6175, 0xb815 }, { 6182, 0xf801 }, { 6188, 0x147c }, { 6195, 0x25ed }, + { 6204, 0xed60 }, { 6212, 0x1bb0 }, { 6219, 0x0589 }, { 6224, 0x1bd7 }, + { 6234, 0x7af3 }, { 6245, 0x1a62 }, { 6251, 0x0d0c }, { 6256, 0x0ac5 }, + /* 0x9700 */ + { 6262, 0xe5d1 }, { 6271, 0x524a }, { 6277, 0x0490 }, { 6280, 0x6305 }, + { 6286, 0x0354 }, { 6291, 0x5244 }, { 6296, 0x2b57 }, { 6305, 0x1612 }, + { 6310, 0xa872 }, { 6317, 0x1101 }, { 6320, 0x2949 }, { 6326, 0x0018 }, + { 6328, 0x0948 }, { 6332, 0x1008 }, { 6334, 0x6000 }, { 6336, 0x886c }, + /* 0x9800 */ + { 6342, 0x916e }, { 6350, 0x058f }, { 6357, 0x3012 }, { 6361, 0x3990 }, + { 6367, 0xf840 }, { 6373, 0x4930 }, { 6378, 0x8880 }, { 6381, 0x001b }, + { 6385, 0x0000 }, { 6385, 0x0000 }, { 6385, 0x8500 }, { 6388, 0x0042 }, + { 6390, 0x0058 }, { 6393, 0x9800 }, { 6396, 0xea04 }, { 6402, 0x7014 }, + /* 0x9900 */ + { 6407, 0x1628 }, { 6412, 0x611d }, { 6419, 0x5113 }, { 6425, 0x6000 }, + { 6427, 0x1a24 }, { 6432, 0x00a7 }, { 6437, 0x0000 }, { 6437, 0x0000 }, + { 6437, 0x0000 }, { 6437, 0x03c0 }, { 6441, 0x7120 }, { 6446, 0x1018 }, + { 6449, 0x0172 }, { 6454, 0xa927 }, { 6462, 0x6004 }, { 6465, 0x8906 }, + /* 0x9a00 */ + { 6470, 0xc022 }, { 6474, 0x020c }, { 6477, 0x0900 }, { 6479, 0x4081 }, + { 6482, 0x202d }, { 6487, 0x8ca0 }, { 6492, 0x0e34 }, { 6498, 0x0000 }, + { 6498, 0x0000 }, { 6498, 0x0000 }, { 6498, 0x2100 }, { 6500, 0x1101 }, + { 6503, 0x8011 }, { 6506, 0xc11a }, { 6512, 0xec4c }, { 6520, 0x0892 }, + /* 0x9b00 */ + { 6524, 0x0040 }, { 6525, 0x8500 }, { 6528, 0xc7ac }, { 6537, 0x1806 }, + { 6541, 0xe03e }, { 6549, 0x0512 }, { 6553, 0x8000 }, { 6554, 0x0010 }, + { 6555, 0x4008 }, { 6557, 0x80ce }, { 6563, 0x6d01 }, { 6569, 0x0210 }, + { 6571, 0x8641 }, { 6576, 0x0856 }, { 6581, 0x011e }, { 6586, 0x0027 }, + /* 0x9c00 */ + { 6590, 0x3750 }, { 6597, 0x083d }, { 6603, 0xe032 }, { 6609, 0x4e05 }, + { 6615, 0x01c0 }, { 6618, 0x0484 }, { 6621, 0x0081 }, { 6623, 0x0140 }, + { 6625, 0x0000 }, { 6625, 0x0000 }, { 6625, 0x0000 }, { 6625, 0x0000 }, + { 6625, 0x0000 }, { 6625, 0x0000 }, { 6625, 0x1aa0 }, { 6630, 0x0059 }, + /* 0x9d00 */ + { 6634, 0x43c8 }, { 6640, 0x8824 }, { 6644, 0x1d48 }, { 6650, 0xc800 }, + { 6653, 0x0152 }, { 6657, 0x7203 }, { 6663, 0x9013 }, { 6668, 0x0404 }, + { 6670, 0x8280 }, { 6673, 0x0400 }, { 6674, 0x8a10 }, { 6678, 0x0d14 }, + { 6683, 0x8056 }, { 6688, 0x0208 }, { 6690, 0xa040 }, { 6693, 0x2704 }, + /* 0x9e00 */ + { 6698, 0x0000 }, { 6698, 0x4c00 }, { 6701, 0x0000 }, { 6701, 0x0000 }, + { 6701, 0x0000 }, { 6701, 0x0000 }, { 6701, 0x0000 }, { 6701, 0xa320 }, + { 6706, 0x1902 }, { 6710, 0xa0ae }, { 6717, 0x2660 }, { 6722, 0xdf00 }, + { 6729, 0xf010 }, { 6734, 0x7b15 }, { 6743, 0x8121 }, { 6747, 0x3ad0 }, + /* 0x9f00 */ + { 6754, 0x4180 }, { 6757, 0x0028 }, { 6759, 0x1003 }, { 6762, 0x4800 }, + { 6764, 0xcc00 }, { 6768, 0x8014 }, { 6771, 0x14cf }, { 6779, 0x00c4 }, + { 6782, 0x2000 }, { 6783, 0x3020 }, { 6786, 0x0001 }, +}; + +static const Summary16 jisx0208_uni2indx_pageff[15] = { + /* 0xff00 */ + { 6787, 0xdf7a }, { 6799, 0xffff }, { 6815, 0xffff }, { 6831, 0xffff }, + { 6847, 0xffff }, { 6863, 0x3fff }, { 6877, 0x0000 }, { 6877, 0x0000 }, + { 6877, 0x0000 }, { 6877, 0x0000 }, { 6877, 0x0000 }, { 6877, 0x0000 }, + { 6877, 0x0000 }, { 6877, 0x0000 }, { 6877, 0x0028 }, +}; + +static int jisx0208_wctomb(unsigned char* r, unsigned int wc, size_t n) { + const Summary16 *summary = NULL; + if (wc >= 0x0000 && wc < 0x0100) { + summary = &jisx0208_uni2indx_page00[(wc>>4)]; + } else if (wc >= 0x0300 && wc < 0x0460) { + summary = &jisx0208_uni2indx_page03[(wc>>4)-0x030]; + } else if (wc >= 0x2000 && wc < 0x2320) { + summary = &jisx0208_uni2indx_page20[(wc>>4)-0x200]; + } else if (wc >= 0x2500 && wc < 0x2670) { + summary = &jisx0208_uni2indx_page25[(wc>>4)-0x250]; + } else if (wc >= 0x3000 && wc < 0x3100) { + summary = &jisx0208_uni2indx_page30[(wc>>4)-0x300]; + } else if (wc >= 0x4e00 && wc < 0x9fb0) { + summary = &jisx0208_uni2indx_page4e[(wc>>4)-0x4e0]; + } else if (wc >= 0xff00 && wc < 0xfff0) { + summary = &jisx0208_uni2indx_pageff[(wc>>4)-0xff0]; + } + if (summary) { + unsigned short used = summary->used; + unsigned int i = wc & 0x0f; + if (used & ((unsigned short) 1 << i)) { + unsigned short c; + if (n < 2) { + return -1; + } + /* Keep in 'used' only the bits 0..i-1. */ + used &= ((unsigned short) 1 << i) - 1; + /* Add 'summary->indx' and the number of bits set in 'used'. */ + used = (used & 0x5555) + ((used & 0xaaaa) >> 1); + used = (used & 0x3333) + ((used & 0xcccc) >> 2); + used = (used & 0x0f0f) + ((used & 0xf0f0) >> 4); + used = (used & 0x00ff) + (used >> 8); + c = jisx0208_2charset[summary->indx + used]; + r[0] = (c >> 8); r[1] = (c & 0xff); + return 2; + } + } + return 0; +} + +/* + * SHIFT_JIS (libiconv-1.16/lib/sjis.h) + */ + +/* Returns 1 or 2 on success, 0 if no mapping, -1 if buffer too small */ +int sjis_wctomb_zint(unsigned char* r, unsigned int wc, size_t n) { + int ret; + + /* Try JIS X 0201-1976. */ + ret = jisx0201_wctomb(r, wc, n); + if (ret) { + return ret; + } + + /* Try JIS X 0208-1990. */ + /* ZINT: Note leaving mapping of full-width reverse solidus U+FF3C to 0x815F (duplicate of patched U+005C) to avoid having to regen tables */ + ret = jisx0208_wctomb(r, wc, n); + if (ret) { + return ret; + } + + /* User-defined range. See + * Ken Lunde's "CJKV Information Processing", table 4-66, p. 206. */ + /* ZINT: https://file.allitebooks.com/20160708/CJKV%20Information%20Processing.pdf (table 4-86, p. 286, 2nd ed.) */ + if (wc >= 0xe000 && wc < 0xe758) { + unsigned char c1, c2; + if (n < 2) { + return -1; + } + c1 = (unsigned int) (wc - 0xe000) / 188; + c2 = (unsigned int) (wc - 0xe000) % 188; + r[0] = c1 + 0xf0; + r[1] = c2 < 0x3f ? c2 + 0x40 : c2 + 0x41; + return 2; + } + + return 0; +} + +/* Convert UTF-8 string to Shift JIS and place in array of ints */ +int sjis_utf8tomb(struct zint_symbol *symbol, const unsigned char source[], size_t* p_length, unsigned int* jisdata) { + int i, error_number, ret; + unsigned int length; + unsigned char buf[2]; +#ifndef _MSC_VER + int utfdata[*p_length + 1]; /* Leave signed for the moment until `utf8toutf16()` signature changed */ +#else + int* utfdata = (int*) _alloca((*p_length + 1) * sizeof(int)); +#endif + + error_number = utf8toutf16(symbol, source, utfdata, p_length); + if (error_number != 0) { + return error_number; + } + + for (i = 0, length = *p_length; i < length; i++) { + ret = sjis_wctomb_zint(buf, utfdata[i], 2); + if (ret <= 0) { + strcpy(symbol->errtxt, "800: Invalid character in input data"); + return ZINT_ERROR_INVALID_DATA; + } + if (ret == 1) { + jisdata[i] = buf[0]; + } else { + jisdata[i] = (buf[0] << 8) | buf[1]; + } + } + + return 0; +} + +/* Convert UTF-8 string to single byte ECI and place in array of ints */ +int sjis_utf8tosb(int eci, const unsigned char source[], size_t* p_length, unsigned int* jisdata) { + int error_number; +#ifndef _MSC_VER + unsigned char single_byte[*p_length + 1]; +#else + unsigned char* single_byte = (unsigned char*) _alloca(*p_length + 1); +#endif + + error_number = utf_to_eci(eci, source, single_byte, p_length); + if (error_number != 0) { + // Note not setting `symbol->errtxt`, up to caller + return error_number; + } + + sjis_cpy(single_byte, p_length, jisdata); + + return 0; +} + +/* Copy byte input stream to array of ints, putting double-bytes that match QR Kanji mode in single entry */ +void sjis_cpy(const unsigned char source[], size_t* p_length, unsigned int* jisdata) { + int i, j; + unsigned int jis, length; + unsigned char c; + for (i = 0, j = 0, length = *p_length; i < length; i++, j++) { + c = source[i]; + if (((c >= 0x81 && c <= 0x9F) || (c >= 0xE0 && c <= 0xEB)) && length - i >= 2) { + jis = (c << 8) | source[i + 1]; + if ((jis >= 0x8140 && jis <= 0x9FFC) || (jis >= 0xE040 && jis <= 0xEBBF)) { + /* This may or may not be valid Shift JIS, but don't care as long as it can be encoded in QR Kanji mode */ + jisdata[j] = jis; + i++; + } else { + jisdata[j] = c; + } + } else { + jisdata[j] = c; + } + } + *p_length = j; +} diff --git a/backend/sjis.h b/backend/sjis.h index 749e0362..d65e31e8 100644 --- a/backend/sjis.h +++ b/backend/sjis.h @@ -1,4 +1,4 @@ -/* sjis.h - Unicode to Shift JIS lookup table +/* sjis.h - Unicode to Shift JIS libzint - the open source barcode library Copyright (C) 2009-2017 Robin Stuart @@ -28,6859 +28,22 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ -/* Derived from : -## Shift_JIS (JIS X 0208:1997 Appendix 1) vs Unicode mapping table -## -## Date: 06 Mar 2002 06:01:22 GMT -## License: -## Copyright (C) 2001 earthian@tama.or.jp, All Rights Reserved. -## Copyright (C) 2001 I'O, All Rights Reserved. -## You can use, modify, distribute this table freely. - */ +#ifndef SJIS_H +#define SJIS_H -static const unsigned short int sjis_lookup[] = { - 0x005C, 0x815F, // REVERSE SOLIDUS - 0x00A2, 0x8191, // CENT SIGN - 0x00A3, 0x8192, // POUND SIGN - 0x00A7, 0x8198, // SECTION SIGN - 0x00A8, 0x814E, // DIAERESIS - 0x00AC, 0x81CA, // NOT SIGN - 0x00B0, 0x818B, // DEGREE SIGN - 0x00B1, 0x817D, // PLUS-MINUS SIGN - 0x00B4, 0x814C, // ACUTE ACCENT - 0x00B6, 0x81F7, // PILCROW SIGN - 0x00D7, 0x817E, // MULTIPLICATION SIGN - 0x00F7, 0x8180, // DIVISION SIGN - 0x0391, 0x839F, // GREEK CAPITAL LETTER ALPHA - 0x0392, 0x83A0, // GREEK CAPITAL LETTER BETA - 0x0393, 0x83A1, // GREEK CAPITAL LETTER GAMMA - 0x0394, 0x83A2, // GREEK CAPITAL LETTER DELTA - 0x0395, 0x83A3, // GREEK CAPITAL LETTER EPSILON - 0x0396, 0x83A4, // GREEK CAPITAL LETTER ZETA - 0x0397, 0x83A5, // GREEK CAPITAL LETTER ETA - 0x0398, 0x83A6, // GREEK CAPITAL LETTER THETA - 0x0399, 0x83A7, // GREEK CAPITAL LETTER IOTA - 0x039A, 0x83A8, // GREEK CAPITAL LETTER KAPPA - 0x039B, 0x83A9, // GREEK CAPITAL LETTER LAMDA - 0x039C, 0x83AA, // GREEK CAPITAL LETTER MU - 0x039D, 0x83AB, // GREEK CAPITAL LETTER NU - 0x039E, 0x83AC, // GREEK CAPITAL LETTER XI - 0x039F, 0x83AD, // GREEK CAPITAL LETTER OMICRON - 0x03A0, 0x83AE, // GREEK CAPITAL LETTER PI - 0x03A1, 0x83AF, // GREEK CAPITAL LETTER RHO - 0x03A3, 0x83B0, // GREEK CAPITAL LETTER SIGMA - 0x03A4, 0x83B1, // GREEK CAPITAL LETTER TAU - 0x03A5, 0x83B2, // GREEK CAPITAL LETTER UPSILON - 0x03A6, 0x83B3, // GREEK CAPITAL LETTER PHI - 0x03A7, 0x83B4, // GREEK CAPITAL LETTER CHI - 0x03A8, 0x83B5, // GREEK CAPITAL LETTER PSI - 0x03A9, 0x83B6, // GREEK CAPITAL LETTER OMEGA - 0x03B1, 0x83BF, // GREEK SMALL LETTER ALPHA - 0x03B2, 0x83C0, // GREEK SMALL LETTER BETA - 0x03B3, 0x83C1, // GREEK SMALL LETTER GAMMA - 0x03B4, 0x83C2, // GREEK SMALL LETTER DELTA - 0x03B5, 0x83C3, // GREEK SMALL LETTER EPSILON - 0x03B6, 0x83C4, // GREEK SMALL LETTER ZETA - 0x03B7, 0x83C5, // GREEK SMALL LETTER ETA - 0x03B8, 0x83C6, // GREEK SMALL LETTER THETA - 0x03B9, 0x83C7, // GREEK SMALL LETTER IOTA - 0x03BA, 0x83C8, // GREEK SMALL LETTER KAPPA - 0x03BB, 0x83C9, // GREEK SMALL LETTER LAMDA - 0x03BC, 0x83CA, // GREEK SMALL LETTER MU - 0x03BD, 0x83CB, // GREEK SMALL LETTER NU - 0x03BE, 0x83CC, // GREEK SMALL LETTER XI - 0x03BF, 0x83CD, // GREEK SMALL LETTER OMICRON - 0x03C0, 0x83CE, // GREEK SMALL LETTER PI - 0x03C1, 0x83CF, // GREEK SMALL LETTER RHO - 0x03C3, 0x83D0, // GREEK SMALL LETTER SIGMA - 0x03C4, 0x83D1, // GREEK SMALL LETTER TAU - 0x03C5, 0x83D2, // GREEK SMALL LETTER UPSILON - 0x03C6, 0x83D3, // GREEK SMALL LETTER PHI - 0x03C7, 0x83D4, // GREEK SMALL LETTER CHI - 0x03C8, 0x83D5, // GREEK SMALL LETTER PSI - 0x03C9, 0x83D6, // GREEK SMALL LETTER OMEGA - 0x0401, 0x8446, // CYRILLIC CAPITAL LETTER IO - 0x0410, 0x8440, // CYRILLIC CAPITAL LETTER A - 0x0411, 0x8441, // CYRILLIC CAPITAL LETTER BE - 0x0412, 0x8442, // CYRILLIC CAPITAL LETTER VE - 0x0413, 0x8443, // CYRILLIC CAPITAL LETTER GHE - 0x0414, 0x8444, // CYRILLIC CAPITAL LETTER DE - 0x0415, 0x8445, // CYRILLIC CAPITAL LETTER IE - 0x0416, 0x8447, // CYRILLIC CAPITAL LETTER ZHE - 0x0417, 0x8448, // CYRILLIC CAPITAL LETTER ZE - 0x0418, 0x8449, // CYRILLIC CAPITAL LETTER I - 0x0419, 0x844A, // CYRILLIC CAPITAL LETTER SHORT I - 0x041A, 0x844B, // CYRILLIC CAPITAL LETTER KA - 0x041B, 0x844C, // CYRILLIC CAPITAL LETTER EL - 0x041C, 0x844D, // CYRILLIC CAPITAL LETTER EM - 0x041D, 0x844E, // CYRILLIC CAPITAL LETTER EN - 0x041E, 0x844F, // CYRILLIC CAPITAL LETTER O - 0x041F, 0x8450, // CYRILLIC CAPITAL LETTER PE - 0x0420, 0x8451, // CYRILLIC CAPITAL LETTER ER - 0x0421, 0x8452, // CYRILLIC CAPITAL LETTER ES - 0x0422, 0x8453, // CYRILLIC CAPITAL LETTER TE - 0x0423, 0x8454, // CYRILLIC CAPITAL LETTER U - 0x0424, 0x8455, // CYRILLIC CAPITAL LETTER EF - 0x0425, 0x8456, // CYRILLIC CAPITAL LETTER HA - 0x0426, 0x8457, // CYRILLIC CAPITAL LETTER TSE - 0x0427, 0x8458, // CYRILLIC CAPITAL LETTER CHE - 0x0428, 0x8459, // CYRILLIC CAPITAL LETTER SHA - 0x0429, 0x845A, // CYRILLIC CAPITAL LETTER SHCHA - 0x042B, 0x845C, // CYRILLIC CAPITAL LETTER YERU - 0x042C, 0x845D, // CYRILLIC CAPITAL LETTER SOFT SIGN - 0x042D, 0x845E, // CYRILLIC CAPITAL LETTER E - 0x042E, 0x845F, // CYRILLIC CAPITAL LETTER YU - 0x042F, 0x8460, // CYRILLIC CAPITAL LETTER YA - 0x0430, 0x8470, // CYRILLIC SMALL LETTER A - 0x0431, 0x8471, // CYRILLIC SMALL LETTER BE - 0x0432, 0x8472, // CYRILLIC SMALL LETTER VE - 0x0433, 0x8473, // CYRILLIC SMALL LETTER GHE - 0x0434, 0x8474, // CYRILLIC SMALL LETTER DE - 0x0435, 0x8475, // CYRILLIC SMALL LETTER IE - 0x0436, 0x8477, // CYRILLIC SMALL LETTER ZHE - 0x0437, 0x8478, // CYRILLIC SMALL LETTER ZE - 0x0438, 0x8479, // CYRILLIC SMALL LETTER I - 0x0439, 0x847A, // CYRILLIC SMALL LETTER SHORT I - 0x043A, 0x847B, // CYRILLIC SMALL LETTER KA - 0x043B, 0x847C, // CYRILLIC SMALL LETTER EL - 0x043C, 0x847D, // CYRILLIC SMALL LETTER EM - 0x043D, 0x847E, // CYRILLIC SMALL LETTER EN - 0x043E, 0x8480, // CYRILLIC SMALL LETTER O - 0x043F, 0x8481, // CYRILLIC SMALL LETTER PE - 0x0440, 0x8482, // CYRILLIC SMALL LETTER ER - 0x0441, 0x8483, // CYRILLIC SMALL LETTER ES - 0x0442, 0x8484, // CYRILLIC SMALL LETTER TE - 0x0443, 0x8485, // CYRILLIC SMALL LETTER U - 0x0444, 0x8486, // CYRILLIC SMALL LETTER EF - 0x0445, 0x8487, // CYRILLIC SMALL LETTER HA - 0x0446, 0x8488, // CYRILLIC SMALL LETTER TSE - 0x0447, 0x8489, // CYRILLIC SMALL LETTER CHE - 0x0448, 0x848A, // CYRILLIC SMALL LETTER SHA - 0x0449, 0x848B, // CYRILLIC SMALL LETTER SHCHA - 0x044A, 0x848C, // CYRILLIC SMALL LETTER HARD SIGN - 0x044B, 0x848D, // CYRILLIC SMALL LETTER YERU - 0x044C, 0x848E, // CYRILLIC SMALL LETTER SOFT SIGN - 0x044D, 0x848F, // CYRILLIC SMALL LETTER E - 0x044E, 0x8490, // CYRILLIC SMALL LETTER YU - 0x044F, 0x8491, // CYRILLIC SMALL LETTER YA - 0x0451, 0x8476, // CYRILLIC SMALL LETTER IO - 0x2010, 0x815D, // HYPHEN - 0x2014, 0x815C, // EM DASH - 0x2016, 0x8161, // DOUBLE VERTICAL LINE - 0x2018, 0x8165, // LEFT SINGLE QUOTATION MARK - 0x2019, 0x8166, // RIGHT SINGLE QUOTATION MARK - 0x201C, 0x8167, // LEFT DOUBLE QUOTATION MARK - 0x201D, 0x8168, // RIGHT DOUBLE QUOTATION MARK - 0x2020, 0x81F5, // DAGGER - 0x2021, 0x81F6, // DOUBLE DAGGER - 0x2025, 0x8164, // TWO DOT LEADER - 0x2026, 0x8163, // HORIZONTAL ELLIPSIS - 0x2030, 0x81F1, // PER MILLE SIGN - 0x2032, 0x818C, // PRIME - 0x2033, 0x818D, // DOUBLE PRIME - 0x203B, 0x81A6, // REFERENCE MARK - 0x2103, 0x818E, // DEGREE CELSIUS - 0x212B, 0x81F0, // ANGSTROM SIGN - 0x2190, 0x81A9, // LEFTWARDS ARROW - 0x2191, 0x81AA, // UPWARDS ARROW - 0x2192, 0x81A8, // RIGHTWARDS ARROW - 0x2193, 0x81AB, // DOWNWARDS ARROW - 0x21D2, 0x81CB, // RIGHTWARDS DOUBLE ARROW - 0x21D4, 0x81CC, // LEFT RIGHT DOUBLE ARROW - 0x2200, 0x81CD, // FOR ALL - 0x2202, 0x81DD, // PARTIAL DIFFERENTIAL - 0x2203, 0x81CE, // THERE EXISTS - 0x2207, 0x81DE, // NABLA - 0x2208, 0x81B8, // ELEMENT OF - 0x220B, 0x81B9, // CONTAINS AS MEMBER - 0x2212, 0x817C, // MINUS SIGN - 0x221A, 0x81E3, // SQUARE ROOT - 0x221D, 0x81E5, // PROPORTIONAL TO - 0x221E, 0x8187, // INFINITY - 0x2220, 0x81DA, // ANGLE - 0x2227, 0x81C8, // LOGICAL AND - 0x2228, 0x81C9, // LOGICAL OR - 0x2229, 0x81BF, // INTERSECTION - 0x222A, 0x81BE, // UNION - 0x222B, 0x81E7, // INTEGRAL - 0x222C, 0x81E8, // DOUBLE INTEGRAL - 0x2234, 0x8188, // THEREFORE - 0x2235, 0x81E6, // BECAUSE - 0x223D, 0x81E4, // REVERSED TILDE - 0x2252, 0x81E0, // APPROXIMATELY EQUAL TO OR THE IMAGE OF - 0x2260, 0x8182, // NOT EQUAL TO - 0x2261, 0x81DF, // IDENTICAL TO - 0x2266, 0x8185, // LESS-THAN OVER EQUAL TO - 0x2267, 0x8186, // GREATER-THAN OVER EQUAL TO - 0x226A, 0x81E1, // MUCH LESS-THAN - 0x226B, 0x81E2, // MUCH GREATER-THAN - 0x2282, 0x81BC, // SUBSET OF - 0x2283, 0x81BD, // SUPERSET OF - 0x2286, 0x81BA, // SUBSET OF OR EQUAL TO - 0x2287, 0x81BB, // SUPERSET OF OR EQUAL TO - 0x22A5, 0x81DB, // UP TACK - 0x2312, 0x81DC, // ARC - 0x2500, 0x849F, // BOX DRAWINGS LIGHT HORIZONTAL - 0x2501, 0x84AA, // BOX DRAWINGS HEAVY HORIZONTAL - 0x2502, 0x84A0, // BOX DRAWINGS LIGHT VERTICAL - 0x2503, 0x84AB, // BOX DRAWINGS HEAVY VERTICAL - 0x250C, 0x84A1, // BOX DRAWINGS LIGHT DOWN AND RIGHT - 0x250F, 0x84AC, // BOX DRAWINGS HEAVY DOWN AND RIGHT - 0x2510, 0x84A2, // BOX DRAWINGS LIGHT DOWN AND LEFT - 0x2513, 0x84AD, // BOX DRAWINGS HEAVY DOWN AND LEFT - 0x2514, 0x84A4, // BOX DRAWINGS LIGHT UP AND RIGHT - 0x2517, 0x84AF, // BOX DRAWINGS HEAVY UP AND RIGHT - 0x2518, 0x84A3, // BOX DRAWINGS LIGHT UP AND LEFT - 0x251B, 0x84AE, // BOX DRAWINGS HEAVY UP AND LEFT - 0x251C, 0x84A5, // BOX DRAWINGS LIGHT VERTICAL AND RIGHT - 0x251D, 0x84BA, // BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY - 0x2520, 0x84B5, // BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT - 0x2523, 0x84B0, // BOX DRAWINGS HEAVY VERTICAL AND RIGHT - 0x2524, 0x84A7, // BOX DRAWINGS LIGHT VERTICAL AND LEFT - 0x2525, 0x84BC, // BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY - 0x2528, 0x84B7, // BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT - 0x252B, 0x84B2, // BOX DRAWINGS HEAVY VERTICAL AND LEFT - 0x252C, 0x84A6, // BOX DRAWINGS LIGHT DOWN AND HORIZONTAL - 0x252F, 0x84B6, // BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY - 0x2530, 0x84BB, // BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT - 0x2533, 0x84B1, // BOX DRAWINGS HEAVY DOWN AND HORIZONTAL - 0x2534, 0x84A8, // BOX DRAWINGS LIGHT UP AND HORIZONTAL - 0x2537, 0x84B8, // BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY - 0x2538, 0x84BD, // BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT - 0x253B, 0x84B3, // BOX DRAWINGS HEAVY UP AND HORIZONTAL - 0x253C, 0x84A9, // BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL - 0x253F, 0x84B9, // BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY - 0x2542, 0x84BE, // BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT - 0x254B, 0x84B4, // BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL - 0x25A0, 0x81A1, // BLACK SQUARE - 0x25A1, 0x81A0, // WHITE SQUARE - 0x25B2, 0x81A3, // BLACK UP-POINTING TRIANGLE - 0x25B3, 0x81A2, // WHITE UP-POINTING TRIANGLE - 0x25BC, 0x81A5, // BLACK DOWN-POINTING TRIANGLE - 0x25BD, 0x81A4, // WHITE DOWN-POINTING TRIANGLE - 0x25C6, 0x819F, // BLACK DIAMOND - 0x25C7, 0x819E, // WHITE DIAMOND - 0x25CB, 0x819B, // WHITE CIRCLE - 0x25CE, 0x819D, // BULLSEYE - 0x25CF, 0x819C, // BLACK CIRCLE - 0x25EF, 0x81FC, // LARGE CIRCLE - 0x2605, 0x819A, // BLACK STAR - 0x2606, 0x8199, // WHITE STAR - 0x2640, 0x818A, // FEMALE SIGN - 0x2642, 0x8189, // MALE SIGN - 0x266A, 0x81F4, // EIGHTH NOTE - 0x266D, 0x81F3, // MUSIC FLAT SIGN - 0x266F, 0x81F2, // MUSIC SHARP SIGN - 0x3000, 0x8140, // IDEOGRAPHIC SPACE - 0x3001, 0x8141, // IDEOGRAPHIC COMMA - 0x3002, 0x8142, // IDEOGRAPHIC FULL STOP - 0x3003, 0x8156, // DITTO MARK - 0x3005, 0x8158, // IDEOGRAPHIC ITERATION MARK - 0x3006, 0x8159, // IDEOGRAPHIC CLOSING MARK - 0x3007, 0x815A, // IDEOGRAPHIC NUMBER ZERO - 0x3008, 0x8171, // LEFT ANGLE BRACKET - 0x3009, 0x8172, // RIGHT ANGLE BRACKET - 0x300A, 0x8173, // LEFT DOUBLE ANGLE BRACKET - 0x300B, 0x8174, // RIGHT DOUBLE ANGLE BRACKET - 0x300C, 0x8175, // LEFT CORNER BRACKET - 0x300D, 0x8176, // RIGHT CORNER BRACKET - 0x300E, 0x8177, // LEFT WHITE CORNER BRACKET - 0x300F, 0x8178, // RIGHT WHITE CORNER BRACKET - 0x3010, 0x8179, // LEFT BLACK LENTICULAR BRACKET - 0x3011, 0x817A, // RIGHT BLACK LENTICULAR BRACKET - 0x3012, 0x81A7, // POSTAL MARK - 0x3013, 0x81AC, // GETA MARK - 0x3014, 0x816B, // LEFT TORTOISE SHELL BRACKET - 0x3015, 0x816C, // RIGHT TORTOISE SHELL BRACKET - 0x301C, 0x8160, // WAVE DASH - 0x3041, 0x829F, // HIRAGANA LETTER SMALL A - 0x3042, 0x82A0, // HIRAGANA LETTER A - 0x3043, 0x82A1, // HIRAGANA LETTER SMALL I - 0x3044, 0x82A2, // HIRAGANA LETTER I - 0x3045, 0x82A3, // HIRAGANA LETTER SMALL U - 0x3046, 0x82A4, // HIRAGANA LETTER U - 0x3047, 0x82A5, // HIRAGANA LETTER SMALL E - 0x3048, 0x82A6, // HIRAGANA LETTER E - 0x3049, 0x82A7, // HIRAGANA LETTER SMALL O - 0x304A, 0x82A8, // HIRAGANA LETTER O - 0x304B, 0x82A9, // HIRAGANA LETTER KA - 0x304C, 0x82AA, // HIRAGANA LETTER GA - 0x304D, 0x82AB, // HIRAGANA LETTER KI - 0x304E, 0x82AC, // HIRAGANA LETTER GI - 0x304F, 0x82AD, // HIRAGANA LETTER KU - 0x3050, 0x82AE, // HIRAGANA LETTER GU - 0x3051, 0x82AF, // HIRAGANA LETTER KE - 0x3052, 0x82B0, // HIRAGANA LETTER GE - 0x3053, 0x82B1, // HIRAGANA LETTER KO - 0x3054, 0x82B2, // HIRAGANA LETTER GO - 0x3055, 0x82B3, // HIRAGANA LETTER SA - 0x3056, 0x82B4, // HIRAGANA LETTER ZA - 0x3057, 0x82B5, // HIRAGANA LETTER SI - 0x3058, 0x82B6, // HIRAGANA LETTER ZI - 0x3059, 0x82B7, // HIRAGANA LETTER SU - 0x305A, 0x82B8, // HIRAGANA LETTER ZU - 0x305B, 0x82B9, // HIRAGANA LETTER SE - 0x305C, 0x82BA, // HIRAGANA LETTER ZE - 0x305D, 0x82BB, // HIRAGANA LETTER SO - 0x305E, 0x82BC, // HIRAGANA LETTER ZO - 0x305F, 0x82BD, // HIRAGANA LETTER TA - 0x3060, 0x82BE, // HIRAGANA LETTER DA - 0x3061, 0x82BF, // HIRAGANA LETTER TI - 0x3062, 0x82C0, // HIRAGANA LETTER DI - 0x3063, 0x82C1, // HIRAGANA LETTER SMALL TU - 0x3064, 0x82C2, // HIRAGANA LETTER TU - 0x3065, 0x82C3, // HIRAGANA LETTER DU - 0x3066, 0x82C4, // HIRAGANA LETTER TE - 0x3067, 0x82C5, // HIRAGANA LETTER DE - 0x3068, 0x82C6, // HIRAGANA LETTER TO - 0x3069, 0x82C7, // HIRAGANA LETTER DO - 0x306A, 0x82C8, // HIRAGANA LETTER NA - 0x306B, 0x82C9, // HIRAGANA LETTER NI - 0x306C, 0x82CA, // HIRAGANA LETTER NU - 0x306D, 0x82CB, // HIRAGANA LETTER NE - 0x306E, 0x82CC, // HIRAGANA LETTER NO - 0x306F, 0x82CD, // HIRAGANA LETTER HA - 0x3070, 0x82CE, // HIRAGANA LETTER BA - 0x3071, 0x82CF, // HIRAGANA LETTER PA - 0x3072, 0x82D0, // HIRAGANA LETTER HI - 0x3073, 0x82D1, // HIRAGANA LETTER BI - 0x3074, 0x82D2, // HIRAGANA LETTER PI - 0x3075, 0x82D3, // HIRAGANA LETTER HU - 0x3076, 0x82D4, // HIRAGANA LETTER BU - 0x3077, 0x82D5, // HIRAGANA LETTER PU - 0x3078, 0x82D6, // HIRAGANA LETTER HE - 0x3079, 0x82D7, // HIRAGANA LETTER BE - 0x307A, 0x82D8, // HIRAGANA LETTER PE - 0x307B, 0x82D9, // HIRAGANA LETTER HO - 0x307C, 0x82DA, // HIRAGANA LETTER BO - 0x307D, 0x82DB, // HIRAGANA LETTER PO - 0x307E, 0x82DC, // HIRAGANA LETTER MA - 0x307F, 0x82DD, // HIRAGANA LETTER MI - 0x3080, 0x82DE, // HIRAGANA LETTER MU - 0x3081, 0x82DF, // HIRAGANA LETTER ME - 0x3082, 0x82E0, // HIRAGANA LETTER MO - 0x3083, 0x82E1, // HIRAGANA LETTER SMALL YA - 0x3084, 0x82E2, // HIRAGANA LETTER YA - 0x3085, 0x82E3, // HIRAGANA LETTER SMALL YU - 0x3086, 0x82E4, // HIRAGANA LETTER YU - 0x3087, 0x82E5, // HIRAGANA LETTER SMALL YO - 0x3088, 0x82E6, // HIRAGANA LETTER YO - 0x3089, 0x82E7, // HIRAGANA LETTER RA - 0x308A, 0x82E8, // HIRAGANA LETTER RI - 0x308B, 0x82E9, // HIRAGANA LETTER RU - 0x308C, 0x82EA, // HIRAGANA LETTER RE - 0x308D, 0x82EB, // HIRAGANA LETTER RO - 0x308E, 0x82EC, // HIRAGANA LETTER SMALL WA - 0x308F, 0x82ED, // HIRAGANA LETTER WA - 0x3090, 0x82EE, // HIRAGANA LETTER WI - 0x3091, 0x82EF, // HIRAGANA LETTER WE - 0x3092, 0x82F0, // HIRAGANA LETTER WO - 0x3093, 0x82F1, // HIRAGANA LETTER N - 0x309B, 0x814A, // KATAKANA-HIRAGANA VOICED SOUND MARK - 0x309C, 0x814B, // KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK - 0x309D, 0x8154, // HIRAGANA ITERATION MARK - 0x309E, 0x8155, // HIRAGANA VOICED ITERATION MARK - 0x30A1, 0x8340, // KATAKANA LETTER SMALL A - 0x30A2, 0x8341, // KATAKANA LETTER A - 0x30A3, 0x8342, // KATAKANA LETTER SMALL I - 0x30A4, 0x8343, // KATAKANA LETTER I - 0x30A5, 0x8344, // KATAKANA LETTER SMALL U - 0x30A6, 0x8345, // KATAKANA LETTER U - 0x30A7, 0x8346, // KATAKANA LETTER SMALL E - 0x30A8, 0x8347, // KATAKANA LETTER E - 0x30A9, 0x8348, // KATAKANA LETTER SMALL O - 0x30AA, 0x8349, // KATAKANA LETTER O - 0x30AB, 0x834A, // KATAKANA LETTER KA - 0x30AC, 0x834B, // KATAKANA LETTER GA - 0x30AD, 0x834C, // KATAKANA LETTER KI - 0x30AE, 0x834D, // KATAKANA LETTER GI - 0x30AF, 0x834E, // KATAKANA LETTER KU - 0x30B0, 0x834F, // KATAKANA LETTER GU - 0x30B1, 0x8350, // KATAKANA LETTER KE - 0x30B2, 0x8351, // KATAKANA LETTER GE - 0x30B3, 0x8352, // KATAKANA LETTER KO - 0x30B4, 0x8353, // KATAKANA LETTER GO - 0x30B5, 0x8354, // KATAKANA LETTER SA - 0x30B6, 0x8355, // KATAKANA LETTER ZA - 0x30B7, 0x8356, // KATAKANA LETTER SI - 0x30B8, 0x8357, // KATAKANA LETTER ZI - 0x30B9, 0x8358, // KATAKANA LETTER SU - 0x30BA, 0x8359, // KATAKANA LETTER ZU - 0x30BB, 0x835A, // KATAKANA LETTER SE - 0x30BD, 0x835C, // KATAKANA LETTER SO - 0x30BE, 0x835D, // KATAKANA LETTER ZO - 0x30BF, 0x835E, // KATAKANA LETTER TA - 0x30C0, 0x835F, // KATAKANA LETTER DA - 0x30C1, 0x8360, // KATAKANA LETTER TI - 0x30C2, 0x8361, // KATAKANA LETTER DI - 0x30C3, 0x8362, // KATAKANA LETTER SMALL TU - 0x30C4, 0x8363, // KATAKANA LETTER TU - 0x30C5, 0x8364, // KATAKANA LETTER DU - 0x30C6, 0x8365, // KATAKANA LETTER TE - 0x30C7, 0x8366, // KATAKANA LETTER DE - 0x30C8, 0x8367, // KATAKANA LETTER TO - 0x30C9, 0x8368, // KATAKANA LETTER DO - 0x30CA, 0x8369, // KATAKANA LETTER NA - 0x30CB, 0x836A, // KATAKANA LETTER NI - 0x30CC, 0x836B, // KATAKANA LETTER NU - 0x30CD, 0x836C, // KATAKANA LETTER NE - 0x30CE, 0x836D, // KATAKANA LETTER NO - 0x30CF, 0x836E, // KATAKANA LETTER HA - 0x30D0, 0x836F, // KATAKANA LETTER BA - 0x30D1, 0x8370, // KATAKANA LETTER PA - 0x30D2, 0x8371, // KATAKANA LETTER HI - 0x30D3, 0x8372, // KATAKANA LETTER BI - 0x30D4, 0x8373, // KATAKANA LETTER PI - 0x30D5, 0x8374, // KATAKANA LETTER HU - 0x30D6, 0x8375, // KATAKANA LETTER BU - 0x30D7, 0x8376, // KATAKANA LETTER PU - 0x30D8, 0x8377, // KATAKANA LETTER HE - 0x30D9, 0x8378, // KATAKANA LETTER BE - 0x30DA, 0x8379, // KATAKANA LETTER PE - 0x30DB, 0x837A, // KATAKANA LETTER HO - 0x30DC, 0x837B, // KATAKANA LETTER BO - 0x30DD, 0x837C, // KATAKANA LETTER PO - 0x30DE, 0x837D, // KATAKANA LETTER MA - 0x30DF, 0x837E, // KATAKANA LETTER MI - 0x30E0, 0x8380, // KATAKANA LETTER MU - 0x30E1, 0x8381, // KATAKANA LETTER ME - 0x30E2, 0x8382, // KATAKANA LETTER MO - 0x30E3, 0x8383, // KATAKANA LETTER SMALL YA - 0x30E4, 0x8384, // KATAKANA LETTER YA - 0x30E5, 0x8385, // KATAKANA LETTER SMALL YU - 0x30E6, 0x8386, // KATAKANA LETTER YU - 0x30E7, 0x8387, // KATAKANA LETTER SMALL YO - 0x30E8, 0x8388, // KATAKANA LETTER YO - 0x30E9, 0x8389, // KATAKANA LETTER RA - 0x30EA, 0x838A, // KATAKANA LETTER RI - 0x30EB, 0x838B, // KATAKANA LETTER RU - 0x30EC, 0x838C, // KATAKANA LETTER RE - 0x30ED, 0x838D, // KATAKANA LETTER RO - 0x30EE, 0x838E, // KATAKANA LETTER SMALL WA - 0x30EF, 0x838F, // KATAKANA LETTER WA - 0x30F0, 0x8390, // KATAKANA LETTER WI - 0x30F1, 0x8391, // KATAKANA LETTER WE - 0x30F2, 0x8392, // KATAKANA LETTER WO - 0x30F3, 0x8393, // KATAKANA LETTER N - 0x30F4, 0x8394, // KATAKANA LETTER VU - 0x30F5, 0x8395, // KATAKANA LETTER SMALL KA - 0x30F6, 0x8396, // KATAKANA LETTER SMALL KE - 0x30FB, 0x8145, // KATAKANA MIDDLE DOT - 0x30FD, 0x8152, // KATAKANA ITERATION MARK - 0x30FE, 0x8153, // KATAKANA VOICED ITERATION MARK - 0x4E00, 0x88EA, // - 0x4E01, 0x929A, // - 0x4E03, 0x8EB5, // - 0x4E07, 0x969C, // - 0x4E08, 0x8FE4, // - 0x4E09, 0x8E4F, // - 0x4E0A, 0x8FE3, // - 0x4E0B, 0x89BA, // - 0x4E0D, 0x9573, // - 0x4E0E, 0x975E, // - 0x4E10, 0x98A0, // - 0x4E11, 0x894E, // - 0x4E14, 0x8A8E, // - 0x4E15, 0x98A1, // - 0x4E16, 0x90A2, // - 0x4E17, 0x99C0, // - 0x4E18, 0x8B75, // - 0x4E19, 0x95B8, // - 0x4E1E, 0x8FE5, // - 0x4E21, 0x97BC, // - 0x4E26, 0x95C0, // - 0x4E2A, 0x98A2, // - 0x4E2D, 0x9286, // - 0x4E31, 0x98A3, // - 0x4E32, 0x8BF8, // - 0x4E36, 0x98A4, // - 0x4E38, 0x8ADB, // - 0x4E39, 0x924F, // - 0x4E3B, 0x8EE5, // - 0x4E3C, 0x98A5, // - 0x4E3F, 0x98A6, // - 0x4E42, 0x98A7, // - 0x4E43, 0x9454, // - 0x4E45, 0x8B76, // - 0x4E4B, 0x9456, // - 0x4E4D, 0x93E1, // - 0x4E4E, 0x8CC1, // - 0x4E4F, 0x9652, // - 0x4E55, 0xE568, // - 0x4E56, 0x98A8, // - 0x4E57, 0x8FE6, // - 0x4E58, 0x98A9, // - 0x4E59, 0x89B3, // - 0x4E5D, 0x8BE3, // - 0x4E5E, 0x8CEE, // - 0x4E5F, 0x96E7, // - 0x4E62, 0x9BA4, // - 0x4E71, 0x9790, // - 0x4E73, 0x93FB, // - 0x4E7E, 0x8AA3, // - 0x4E80, 0x8B54, // - 0x4E82, 0x98AA, // - 0x4E85, 0x98AB, // - 0x4E86, 0x97B9, // - 0x4E88, 0x975C, // - 0x4E89, 0x9188, // - 0x4E8A, 0x98AD, // - 0x4E8B, 0x8E96, // - 0x4E8C, 0x93F1, // - 0x4E8E, 0x98B0, // - 0x4E91, 0x895D, // - 0x4E92, 0x8CDD, // - 0x4E94, 0x8CDC, // - 0x4E95, 0x88E4, // - 0x4E98, 0x986A, // - 0x4E99, 0x9869, // - 0x4E9B, 0x8DB1, // - 0x4E9C, 0x889F, // - 0x4E9E, 0x98B1, // - 0x4E9F, 0x98B2, // - 0x4EA0, 0x98B3, // - 0x4EA1, 0x9653, // - 0x4EA2, 0x98B4, // - 0x4EA4, 0x8CF0, // - 0x4EA5, 0x88E5, // - 0x4EA6, 0x9692, // - 0x4EA8, 0x8B9C, // - 0x4EAB, 0x8B9D, // - 0x4EAC, 0x8B9E, // - 0x4EAD, 0x92E0, // - 0x4EAE, 0x97BA, // - 0x4EB0, 0x98B5, // - 0x4EB3, 0x98B6, // - 0x4EB6, 0x98B7, // - 0x4EBA, 0x906C, // - 0x4EC0, 0x8F59, // - 0x4EC1, 0x906D, // - 0x4EC2, 0x98BC, // - 0x4EC4, 0x98BA, // - 0x4EC6, 0x98BB, // - 0x4EC7, 0x8B77, // - 0x4ECA, 0x8DA1, // - 0x4ECB, 0x89EE, // - 0x4ECD, 0x98B9, // - 0x4ECE, 0x98B8, // - 0x4ECF, 0x95A7, // - 0x4ED4, 0x8E65, // - 0x4ED5, 0x8E64, // - 0x4ED6, 0x91BC, // - 0x4ED7, 0x98BD, // - 0x4ED8, 0x9574, // - 0x4ED9, 0x90E5, // - 0x4EDD, 0x8157, // - 0x4EDE, 0x98BE, // - 0x4EDF, 0x98C0, // - 0x4EE3, 0x91E3, // - 0x4EE4, 0x97DF, // - 0x4EE5, 0x88C8, // - 0x4EED, 0x98BF, // - 0x4EEE, 0x89BC, // - 0x4EF0, 0x8BC2, // - 0x4EF2, 0x9287, // - 0x4EF6, 0x8C8F, // - 0x4EF7, 0x98C1, // - 0x4EFB, 0x9443, // - 0x4F01, 0x8AE9, // - 0x4F09, 0x98C2, // - 0x4F0A, 0x88C9, // - 0x4F0D, 0x8CDE, // - 0x4F0E, 0x8AEA, // - 0x4F0F, 0x959A, // - 0x4F10, 0x94B0, // - 0x4F11, 0x8B78, // - 0x4F1A, 0x89EF, // - 0x4F1C, 0x98E5, // - 0x4F1D, 0x9360, // - 0x4F2F, 0x948C, // - 0x4F30, 0x98C4, // - 0x4F34, 0x94BA, // - 0x4F36, 0x97E0, // - 0x4F38, 0x904C, // - 0x4F3A, 0x8E66, // - 0x4F3C, 0x8E97, // - 0x4F3D, 0x89BE, // - 0x4F43, 0x92CF, // - 0x4F46, 0x9241, // - 0x4F47, 0x98C8, // - 0x4F4D, 0x88CA, // - 0x4F4E, 0x92E1, // - 0x4F4F, 0x8F5A, // - 0x4F50, 0x8DB2, // - 0x4F51, 0x9743, // - 0x4F53, 0x91CC, // - 0x4F55, 0x89BD, // - 0x4F57, 0x98C7, // - 0x4F59, 0x975D, // - 0x4F5A, 0x98C3, // - 0x4F5B, 0x98C5, // - 0x4F5C, 0x8DEC, // - 0x4F5D, 0x98C6, // - 0x4F5E, 0x9B43, // - 0x4F69, 0x98CE, // - 0x4F6F, 0x98D1, // - 0x4F70, 0x98CF, // - 0x4F73, 0x89C0, // - 0x4F75, 0x95B9, // - 0x4F76, 0x98C9, // - 0x4F7B, 0x98CD, // - 0x4F7C, 0x8CF1, // - 0x4F7F, 0x8E67, // - 0x4F83, 0x8AA4, // - 0x4F86, 0x98D2, // - 0x4F88, 0x98CA, // - 0x4F8B, 0x97E1, // - 0x4F8D, 0x8E98, // - 0x4F8F, 0x98CB, // - 0x4F91, 0x98D0, // - 0x4F96, 0x98D3, // - 0x4F98, 0x98CC, // - 0x4F9B, 0x8B9F, // - 0x4F9D, 0x88CB, // - 0x4FA0, 0x8BA0, // - 0x4FA1, 0x89BF, // - 0x4FAB, 0x9B44, // - 0x4FAD, 0x9699, // - 0x4FAE, 0x958E, // - 0x4FAF, 0x8CF2, // - 0x4FB5, 0x904E, // - 0x4FB6, 0x97B5, // - 0x4FBF, 0x95D6, // - 0x4FC2, 0x8C57, // - 0x4FC3, 0x91A3, // - 0x4FC4, 0x89E2, // - 0x4FCA, 0x8F72, // - 0x4FCE, 0x98D7, // - 0x4FD0, 0x98DC, // - 0x4FD1, 0x98DA, // - 0x4FD4, 0x98D5, // - 0x4FD7, 0x91AD, // - 0x4FD8, 0x98D8, // - 0x4FDA, 0x98DB, // - 0x4FDB, 0x98D9, // - 0x4FDD, 0x95DB, // - 0x4FDF, 0x98D6, // - 0x4FE1, 0x904D, // - 0x4FE3, 0x9693, // - 0x4FE4, 0x98DD, // - 0x4FE5, 0x98DE, // - 0x4FEE, 0x8F43, // - 0x4FEF, 0x98EB, // - 0x4FF3, 0x946F, // - 0x4FF5, 0x9555, // - 0x4FF6, 0x98E6, // - 0x4FF8, 0x95EE, // - 0x4FFA, 0x89B4, // - 0x4FFE, 0x98EA, // - 0x5005, 0x98E4, // - 0x5006, 0x98ED, // - 0x5009, 0x9171, // - 0x500B, 0x8CC2, // - 0x500D, 0x947B, // - 0x500F, 0xE0C5, // - 0x5011, 0x98EC, // - 0x5012, 0x937C, // - 0x5014, 0x98E1, // - 0x5016, 0x8CF4, // - 0x5019, 0x8CF3, // - 0x501A, 0x98DF, // - 0x501F, 0x8ED8, // - 0x5021, 0x98E7, // - 0x5023, 0x95ED, // - 0x5024, 0x926C, // - 0x5025, 0x98E3, // - 0x5026, 0x8C91, // - 0x5028, 0x98E0, // - 0x5029, 0x98E8, // - 0x502A, 0x98E2, // - 0x502B, 0x97CF, // - 0x502C, 0x98E9, // - 0x502D, 0x9860, // - 0x5036, 0x8BE4, // - 0x5039, 0x8C90, // - 0x5043, 0x98EE, // - 0x5047, 0x98EF, // - 0x5048, 0x98F3, // - 0x5049, 0x88CC, // - 0x504F, 0x95CE, // - 0x5050, 0x98F2, // - 0x5055, 0x98F1, // - 0x5056, 0x98F5, // - 0x505A, 0x98F4, // - 0x505C, 0x92E2, // - 0x5065, 0x8C92, // - 0x506C, 0x98F6, // - 0x5072, 0x8EC3, // - 0x5074, 0x91A4, // - 0x5075, 0x92E3, // - 0x5076, 0x8BF4, // - 0x5078, 0x98F7, // - 0x507D, 0x8B55, // - 0x5080, 0x98F8, // - 0x5085, 0x98FA, // - 0x508D, 0x9654, // - 0x5091, 0x8C86, // - 0x5098, 0x8E50, // - 0x5099, 0x94F5, // - 0x509A, 0x98F9, // - 0x50AC, 0x8DC3, // - 0x50AD, 0x9762, // - 0x50B2, 0x98FC, // - 0x50B3, 0x9942, // - 0x50B4, 0x98FB, // - 0x50B5, 0x8DC2, // - 0x50B7, 0x8F9D, // - 0x50BE, 0x8C58, // - 0x50C2, 0x9943, // - 0x50C5, 0x8BCD, // - 0x50C9, 0x9940, // - 0x50CA, 0x9941, // - 0x50CD, 0x93AD, // - 0x50CF, 0x919C, // - 0x50D1, 0x8BA1, // - 0x50D5, 0x966C, // - 0x50D6, 0x9944, // - 0x50DA, 0x97BB, // - 0x50DE, 0x9945, // - 0x50E3, 0x9948, // - 0x50E5, 0x9946, // - 0x50E7, 0x916D, // - 0x50ED, 0x9947, // - 0x50EE, 0x9949, // - 0x50F5, 0x994B, // - 0x50F9, 0x994A, // - 0x50FB, 0x95C6, // - 0x5100, 0x8B56, // - 0x5101, 0x994D, // - 0x5102, 0x994E, // - 0x5104, 0x89AD, // - 0x5109, 0x994C, // - 0x5112, 0x8EF2, // - 0x5114, 0x9951, // - 0x5115, 0x9950, // - 0x5116, 0x994F, // - 0x5118, 0x98D4, // - 0x511A, 0x9952, // - 0x511F, 0x8F9E, // - 0x5121, 0x9953, // - 0x512A, 0x9744, // - 0x5132, 0x96D7, // - 0x5137, 0x9955, // - 0x513A, 0x9954, // - 0x513B, 0x9957, // - 0x513C, 0x9956, // - 0x513F, 0x9958, // - 0x5140, 0x9959, // - 0x5141, 0x88F2, // - 0x5143, 0x8CB3, // - 0x5144, 0x8C5A, // - 0x5146, 0x929B, // - 0x5147, 0x8BA2, // - 0x5148, 0x90E6, // - 0x5149, 0x8CF5, // - 0x514B, 0x8D8E, // - 0x514D, 0x96C6, // - 0x514E, 0x9365, // - 0x5150, 0x8E99, // - 0x5152, 0x995A, // - 0x5154, 0x995C, // - 0x515A, 0x937D, // - 0x515C, 0x8A95, // - 0x5162, 0x995D, // - 0x5165, 0x93FC, // - 0x5168, 0x9153, // - 0x5169, 0x995F, // - 0x516A, 0x9960, // - 0x516B, 0x94AA, // - 0x516C, 0x8CF6, // - 0x516D, 0x985A, // - 0x516E, 0x9961, // - 0x5171, 0x8BA4, // - 0x5175, 0x95BA, // - 0x5176, 0x91B4, // - 0x5177, 0x8BEF, // - 0x5178, 0x9354, // - 0x517C, 0x8C93, // - 0x5180, 0x9962, // - 0x5182, 0x9963, // - 0x5185, 0x93E0, // - 0x5186, 0x897E, // - 0x5189, 0x9966, // - 0x518A, 0x8DFB, // - 0x518C, 0x9965, // - 0x518D, 0x8DC4, // - 0x518F, 0x9967, // - 0x5190, 0xE3EC, // - 0x5191, 0x9968, // - 0x5192, 0x9660, // - 0x5193, 0x9969, // - 0x5195, 0x996A, // - 0x5196, 0x996B, // - 0x5197, 0x8FE7, // - 0x5199, 0x8ECA, // - 0x51A0, 0x8AA5, // - 0x51A2, 0x996E, // - 0x51A4, 0x996C, // - 0x51A5, 0x96BB, // - 0x51A6, 0x996D, // - 0x51A8, 0x9579, // - 0x51A9, 0x996F, // - 0x51AA, 0x9970, // - 0x51AB, 0x9971, // - 0x51AC, 0x937E, // - 0x51B0, 0x9975, // - 0x51B1, 0x9973, // - 0x51B2, 0x9974, // - 0x51B3, 0x9972, // - 0x51B4, 0x8DE1, // - 0x51B5, 0x9976, // - 0x51B6, 0x96E8, // - 0x51B7, 0x97E2, // - 0x51BD, 0x9977, // - 0x51C4, 0x90A6, // - 0x51C5, 0x9978, // - 0x51C6, 0x8F79, // - 0x51C9, 0x9979, // - 0x51CB, 0x929C, // - 0x51CC, 0x97BD, // - 0x51CD, 0x9380, // - 0x51D6, 0x99C3, // - 0x51DB, 0x997A, // - 0x51DC, 0xEAA3, // - 0x51DD, 0x8BC3, // - 0x51E0, 0x997B, // - 0x51E1, 0x967D, // - 0x51E6, 0x8F88, // - 0x51E7, 0x91FA, // - 0x51E9, 0x997D, // - 0x51EA, 0x93E2, // - 0x51ED, 0x997E, // - 0x51F0, 0x9980, // - 0x51F1, 0x8A4D, // - 0x51F5, 0x9981, // - 0x51F6, 0x8BA5, // - 0x51F8, 0x93CA, // - 0x51F9, 0x899A, // - 0x51FA, 0x8F6F, // - 0x51FD, 0x949F, // - 0x51FE, 0x9982, // - 0x5200, 0x9381, // - 0x5203, 0x906E, // - 0x5204, 0x9983, // - 0x5206, 0x95AA, // - 0x5207, 0x90D8, // - 0x5208, 0x8AA0, // - 0x520A, 0x8AA7, // - 0x520B, 0x9984, // - 0x520E, 0x9986, // - 0x5211, 0x8C59, // - 0x5214, 0x9985, // - 0x5217, 0x97F1, // - 0x521D, 0x8F89, // - 0x5224, 0x94BB, // - 0x5225, 0x95CA, // - 0x5227, 0x9987, // - 0x5229, 0x9798, // - 0x522A, 0x9988, // - 0x522E, 0x9989, // - 0x5230, 0x939E, // - 0x5233, 0x998A, // - 0x5236, 0x90A7, // - 0x5237, 0x8DFC, // - 0x5238, 0x8C94, // - 0x5239, 0x998B, // - 0x523A, 0x8E68, // - 0x523B, 0x8D8F, // - 0x5243, 0x92E4, // - 0x5244, 0x998D, // - 0x5247, 0x91A5, // - 0x524A, 0x8DED, // - 0x524B, 0x998E, // - 0x524C, 0x998F, // - 0x524D, 0x914F, // - 0x524F, 0x998C, // - 0x5254, 0x9991, // - 0x5256, 0x9655, // - 0x525B, 0x8D84, // - 0x525E, 0x9990, // - 0x5263, 0x8C95, // - 0x5264, 0x8DDC, // - 0x5265, 0x948D, // - 0x5269, 0x9994, // - 0x526A, 0x9992, // - 0x526F, 0x959B, // - 0x5270, 0x8FE8, // - 0x5271, 0x999B, // - 0x5272, 0x8A84, // - 0x5273, 0x9995, // - 0x5274, 0x9993, // - 0x5275, 0x916E, // - 0x527D, 0x9997, // - 0x527F, 0x9996, // - 0x5283, 0x8A63, // - 0x5287, 0x8C80, // - 0x5288, 0x999C, // - 0x5289, 0x97AB, // - 0x528D, 0x9998, // - 0x5291, 0x999D, // - 0x5292, 0x999A, // - 0x5294, 0x9999, // - 0x529B, 0x97CD, // - 0x529F, 0x8CF7, // - 0x52A0, 0x89C1, // - 0x52A3, 0x97F2, // - 0x52A9, 0x8F95, // - 0x52AA, 0x9377, // - 0x52AB, 0x8D85, // - 0x52AC, 0x99A0, // - 0x52AD, 0x99A1, // - 0x52B1, 0x97E3, // - 0x52B4, 0x984A, // - 0x52B5, 0x99A3, // - 0x52B9, 0x8CF8, // - 0x52BC, 0x99A2, // - 0x52BE, 0x8A4E, // - 0x52C1, 0x99A4, // - 0x52C3, 0x9675, // - 0x52C5, 0x92BA, // - 0x52C7, 0x9745, // - 0x52C9, 0x95D7, // - 0x52CD, 0x99A5, // - 0x52D2, 0xE8D3, // - 0x52D5, 0x93AE, // - 0x52D7, 0x99A6, // - 0x52D8, 0x8AA8, // - 0x52D9, 0x96B1, // - 0x52DD, 0x8F9F, // - 0x52DE, 0x99A7, // - 0x52DF, 0x95E5, // - 0x52E0, 0x99AB, // - 0x52E2, 0x90A8, // - 0x52E3, 0x99A8, // - 0x52E4, 0x8BCE, // - 0x52E6, 0x99A9, // - 0x52E7, 0x8AA9, // - 0x52F2, 0x8C4D, // - 0x52F3, 0x99AC, // - 0x52F5, 0x99AD, // - 0x52F8, 0x99AE, // - 0x52F9, 0x99AF, // - 0x52FA, 0x8ED9, // - 0x52FE, 0x8CF9, // - 0x52FF, 0x96DC, // - 0x5301, 0x96E6, // - 0x5302, 0x93F5, // - 0x5305, 0x95EF, // - 0x5306, 0x99B0, // - 0x5308, 0x99B1, // - 0x530D, 0x99B3, // - 0x530F, 0x99B5, // - 0x5310, 0x99B4, // - 0x5315, 0x99B6, // - 0x5316, 0x89BB, // - 0x5317, 0x966B, // - 0x5319, 0x8DFA, // - 0x531A, 0x99B7, // - 0x531D, 0x9178, // - 0x5320, 0x8FA0, // - 0x5321, 0x8BA7, // - 0x5323, 0x99B8, // - 0x532A, 0x94D9, // - 0x532F, 0x99B9, // - 0x5331, 0x99BA, // - 0x5333, 0x99BB, // - 0x5338, 0x99BC, // - 0x5339, 0x9543, // - 0x533A, 0x8BE6, // - 0x533B, 0x88E3, // - 0x533F, 0x93BD, // - 0x5340, 0x99BD, // - 0x5341, 0x8F5C, // - 0x5343, 0x90E7, // - 0x5345, 0x99BF, // - 0x5346, 0x99BE, // - 0x5347, 0x8FA1, // - 0x5348, 0x8CDF, // - 0x5349, 0x99C1, // - 0x534A, 0x94BC, // - 0x534D, 0x99C2, // - 0x5351, 0x94DA, // - 0x5352, 0x91B2, // - 0x5353, 0x91EC, // - 0x5354, 0x8BA6, // - 0x5357, 0x93EC, // - 0x5358, 0x9250, // - 0x535A, 0x948E, // - 0x535C, 0x966D, // - 0x535E, 0x99C4, // - 0x5360, 0x90E8, // - 0x5366, 0x8C54, // - 0x5369, 0x99C5, // - 0x536E, 0x99C6, // - 0x536F, 0x894B, // - 0x5370, 0x88F3, // - 0x5371, 0x8AEB, // - 0x5373, 0x91A6, // - 0x5374, 0x8B70, // - 0x5375, 0x9791, // - 0x5377, 0x99C9, // - 0x5378, 0x89B5, // - 0x537B, 0x99C8, // - 0x537F, 0x8BA8, // - 0x5382, 0x99CA, // - 0x5384, 0x96EF, // - 0x5396, 0x99CB, // - 0x5398, 0x97D0, // - 0x539A, 0x8CFA, // - 0x539F, 0x8CB4, // - 0x53A0, 0x99CC, // - 0x53A5, 0x99CE, // - 0x53A6, 0x99CD, // - 0x53A8, 0x907E, // - 0x53A9, 0x8958, // - 0x53AD, 0x897D, // - 0x53AE, 0x99CF, // - 0x53B0, 0x99D0, // - 0x53B3, 0x8CB5, // - 0x53B6, 0x99D1, // - 0x53BB, 0x8B8E, // - 0x53C2, 0x8E51, // - 0x53C3, 0x99D2, // - 0x53C8, 0x9694, // - 0x53C9, 0x8DB3, // - 0x53CA, 0x8B79, // - 0x53CB, 0x9746, // - 0x53CC, 0x916F, // - 0x53CD, 0x94BD, // - 0x53CE, 0x8EFB, // - 0x53D4, 0x8F66, // - 0x53D6, 0x8EE6, // - 0x53D7, 0x8EF3, // - 0x53D9, 0x8F96, // - 0x53DB, 0x94BE, // - 0x53DF, 0x99D5, // - 0x53E1, 0x8962, // - 0x53E2, 0x9170, // - 0x53E3, 0x8CFB, // - 0x53E4, 0x8CC3, // - 0x53E5, 0x8BE5, // - 0x53E8, 0x99D9, // - 0x53E9, 0x9240, // - 0x53EA, 0x91FC, // - 0x53EB, 0x8BA9, // - 0x53EC, 0x8FA2, // - 0x53ED, 0x99DA, // - 0x53EE, 0x99D8, // - 0x53EF, 0x89C2, // - 0x53F0, 0x91E4, // - 0x53F1, 0x8EB6, // - 0x53F2, 0x8E6A, // - 0x53F3, 0x8945, // - 0x53F6, 0x8A90, // - 0x53F7, 0x8D86, // - 0x53F8, 0x8E69, // - 0x53FA, 0x99DB, // - 0x5401, 0x99DC, // - 0x5403, 0x8B68, // - 0x5404, 0x8A65, // - 0x5408, 0x8D87, // - 0x5409, 0x8B67, // - 0x540A, 0x92DD, // - 0x540B, 0x8944, // - 0x540C, 0x93AF, // - 0x540D, 0x96BC, // - 0x540E, 0x8D40, // - 0x540F, 0x9799, // - 0x5410, 0x9366, // - 0x5411, 0x8CFC, // - 0x541B, 0x8C4E, // - 0x541D, 0x99E5, // - 0x541F, 0x8BE1, // - 0x5420, 0x9669, // - 0x5426, 0x94DB, // - 0x5429, 0x99E4, // - 0x542B, 0x8ADC, // - 0x542C, 0x99DF, // - 0x542D, 0x99E0, // - 0x542E, 0x99E2, // - 0x5436, 0x99E3, // - 0x5438, 0x8B7A, // - 0x5439, 0x9081, // - 0x543B, 0x95AB, // - 0x543C, 0x99E1, // - 0x543D, 0x99DD, // - 0x543E, 0x8CE1, // - 0x5440, 0x99DE, // - 0x5442, 0x9843, // - 0x5446, 0x95F0, // - 0x5448, 0x92E6, // - 0x5449, 0x8CE0, // - 0x544A, 0x8D90, // - 0x544E, 0x99E6, // - 0x5451, 0x93DB, // - 0x545F, 0x99EA, // - 0x5468, 0x8EFC, // - 0x546A, 0x8EF4, // - 0x5470, 0x99ED, // - 0x5471, 0x99EB, // - 0x5473, 0x96A1, // - 0x5475, 0x99E8, // - 0x5476, 0x99F1, // - 0x5477, 0x99EC, // - 0x547B, 0x99EF, // - 0x547C, 0x8CC4, // - 0x547D, 0x96BD, // - 0x5480, 0x99F0, // - 0x5484, 0x99F2, // - 0x5486, 0x99F4, // - 0x548B, 0x8DEE, // - 0x548C, 0x9861, // - 0x548E, 0x99E9, // - 0x548F, 0x99E7, // - 0x5490, 0x99F3, // - 0x5492, 0x99EE, // - 0x54A2, 0x99F6, // - 0x54A4, 0x9A42, // - 0x54A5, 0x99F8, // - 0x54A8, 0x99FC, // - 0x54AB, 0x9A40, // - 0x54AC, 0x99F9, // - 0x54AF, 0x9A5D, // - 0x54B2, 0x8DE7, // - 0x54B3, 0x8A50, // - 0x54B8, 0x99F7, // - 0x54BC, 0x9A44, // - 0x54BD, 0x88F4, // - 0x54BE, 0x9A43, // - 0x54C0, 0x88A3, // - 0x54C1, 0x9569, // - 0x54C2, 0x9A41, // - 0x54C4, 0x99FA, // - 0x54C7, 0x99F5, // - 0x54C8, 0x99FB, // - 0x54C9, 0x8DC6, // - 0x54D8, 0x9A45, // - 0x54E1, 0x88F5, // - 0x54E2, 0x9A4E, // - 0x54E5, 0x9A46, // - 0x54E6, 0x9A47, // - 0x54E8, 0x8FA3, // - 0x54E9, 0x9689, // - 0x54ED, 0x9A4C, // - 0x54EE, 0x9A4B, // - 0x54F2, 0x934E, // - 0x54FA, 0x9A4D, // - 0x54FD, 0x9A4A, // - 0x5504, 0x8953, // - 0x5506, 0x8DB4, // - 0x5507, 0x904F, // - 0x550F, 0x9A48, // - 0x5510, 0x9382, // - 0x5514, 0x9A49, // - 0x5516, 0x88A0, // - 0x552E, 0x9A53, // - 0x552F, 0x9742, // - 0x5531, 0x8FA5, // - 0x5533, 0x9A59, // - 0x5538, 0x9A58, // - 0x5539, 0x9A4F, // - 0x553E, 0x91C1, // - 0x5540, 0x9A50, // - 0x5544, 0x91ED, // - 0x5545, 0x9A55, // - 0x5546, 0x8FA4, // - 0x554C, 0x9A52, // - 0x554F, 0x96E2, // - 0x5556, 0x9A56, // - 0x5557, 0x9A57, // - 0x555C, 0x9A54, // - 0x555D, 0x9A5A, // - 0x5563, 0x9A51, // - 0x557B, 0x9A60, // - 0x557C, 0x9A65, // - 0x557E, 0x9A61, // - 0x5580, 0x9A5C, // - 0x5583, 0x9A66, // - 0x5584, 0x9150, // - 0x5587, 0x9A68, // - 0x5589, 0x8D41, // - 0x558A, 0x9A5E, // - 0x558B, 0x929D, // - 0x5598, 0x9A62, // - 0x559A, 0x8AAB, // - 0x559C, 0x8AEC, // - 0x559D, 0x8A85, // - 0x559E, 0x9A63, // - 0x559F, 0x9A5F, // - 0x55A7, 0x8C96, // - 0x55A8, 0x9A69, // - 0x55A9, 0x9A67, // - 0x55AA, 0x9172, // - 0x55AB, 0x8B69, // - 0x55AC, 0x8BAA, // - 0x55AE, 0x9A64, // - 0x55B0, 0x8BF2, // - 0x55B6, 0x8963, // - 0x55C4, 0x9A6D, // - 0x55C5, 0x9A6B, // - 0x55C7, 0x9AA5, // - 0x55D4, 0x9A70, // - 0x55DA, 0x9A6A, // - 0x55DC, 0x9A6E, // - 0x55DF, 0x9A6C, // - 0x55E3, 0x8E6B, // - 0x55E4, 0x9A6F, // - 0x55F7, 0x9A72, // - 0x55F9, 0x9A77, // - 0x55FD, 0x9A75, // - 0x55FE, 0x9A74, // - 0x5606, 0x9251, // - 0x5609, 0x89C3, // - 0x5614, 0x9A71, // - 0x5616, 0x9A73, // - 0x5617, 0x8FA6, // - 0x5618, 0x8952, // - 0x561B, 0x9A76, // - 0x5629, 0x89DC, // - 0x562F, 0x9A82, // - 0x5631, 0x8FFA, // - 0x5632, 0x9A7D, // - 0x5634, 0x9A7B, // - 0x5636, 0x9A7C, // - 0x5638, 0x9A7E, // - 0x5642, 0x895C, // - 0x564C, 0x9158, // - 0x564E, 0x9A78, // - 0x5650, 0x9A79, // - 0x565B, 0x8A9A, // - 0x5664, 0x9A81, // - 0x5668, 0x8AED, // - 0x566A, 0x9A84, // - 0x566B, 0x9A80, // - 0x566C, 0x9A83, // - 0x5674, 0x95AC, // - 0x5678, 0x93D3, // - 0x567A, 0x94B6, // - 0x5680, 0x9A86, // - 0x5686, 0x9A85, // - 0x5687, 0x8A64, // - 0x568A, 0x9A87, // - 0x568F, 0x9A8A, // - 0x5694, 0x9A89, // - 0x56A0, 0x9A88, // - 0x56A2, 0x9458, // - 0x56A5, 0x9A8B, // - 0x56AE, 0x9A8C, // - 0x56B4, 0x9A8E, // - 0x56B6, 0x9A8D, // - 0x56BC, 0x9A90, // - 0x56C0, 0x9A93, // - 0x56C1, 0x9A91, // - 0x56C2, 0x9A8F, // - 0x56C3, 0x9A92, // - 0x56C8, 0x9A94, // - 0x56CE, 0x9A95, // - 0x56D1, 0x9A96, // - 0x56D3, 0x9A97, // - 0x56D7, 0x9A98, // - 0x56D8, 0x9964, // - 0x56DA, 0x8EFA, // - 0x56DB, 0x8E6C, // - 0x56DE, 0x89F1, // - 0x56E0, 0x88F6, // - 0x56E3, 0x9263, // - 0x56EE, 0x9A99, // - 0x56F0, 0x8DA2, // - 0x56F2, 0x88CD, // - 0x56F3, 0x907D, // - 0x56F9, 0x9A9A, // - 0x56FA, 0x8CC5, // - 0x56FD, 0x8D91, // - 0x56FF, 0x9A9C, // - 0x5700, 0x9A9B, // - 0x5703, 0x95DE, // - 0x5704, 0x9A9D, // - 0x5708, 0x9A9F, // - 0x5709, 0x9A9E, // - 0x570B, 0x9AA0, // - 0x570D, 0x9AA1, // - 0x570F, 0x8C97, // - 0x5712, 0x8980, // - 0x5713, 0x9AA2, // - 0x5716, 0x9AA4, // - 0x5718, 0x9AA3, // - 0x571C, 0x9AA6, // - 0x571F, 0x9379, // - 0x5726, 0x9AA7, // - 0x5727, 0x88B3, // - 0x5728, 0x8DDD, // - 0x572D, 0x8C5C, // - 0x5730, 0x926E, // - 0x5737, 0x9AA8, // - 0x5738, 0x9AA9, // - 0x573B, 0x9AAB, // - 0x5740, 0x9AAC, // - 0x5742, 0x8DE2, // - 0x5747, 0x8BCF, // - 0x574A, 0x9656, // - 0x574E, 0x9AAA, // - 0x574F, 0x9AAD, // - 0x5750, 0x8DBF, // - 0x5751, 0x8D42, // - 0x5761, 0x9AB1, // - 0x5764, 0x8DA3, // - 0x5766, 0x9252, // - 0x5769, 0x9AAE, // - 0x576A, 0x92D8, // - 0x577F, 0x9AB2, // - 0x5782, 0x9082, // - 0x5788, 0x9AB0, // - 0x5789, 0x9AB3, // - 0x578B, 0x8C5E, // - 0x5793, 0x9AB4, // - 0x57A0, 0x9AB5, // - 0x57A2, 0x8D43, // - 0x57A3, 0x8A5F, // - 0x57A4, 0x9AB7, // - 0x57AA, 0x9AB8, // - 0x57B0, 0x9AB9, // - 0x57B3, 0x9AB6, // - 0x57C0, 0x9AAF, // - 0x57C3, 0x9ABA, // - 0x57C6, 0x9ABB, // - 0x57CB, 0x9684, // - 0x57CE, 0x8FE9, // - 0x57D2, 0x9ABD, // - 0x57D3, 0x9ABE, // - 0x57D4, 0x9ABC, // - 0x57D6, 0x9AC0, // - 0x57DC, 0x9457, // - 0x57DF, 0x88E6, // - 0x57E0, 0x9575, // - 0x57E3, 0x9AC1, // - 0x57F4, 0x8FFB, // - 0x57F7, 0x8EB7, // - 0x57F9, 0x947C, // - 0x57FA, 0x8AEE, // - 0x57FC, 0x8DE9, // - 0x5800, 0x9678, // - 0x5802, 0x93B0, // - 0x5805, 0x8C98, // - 0x5806, 0x91CD, // - 0x580A, 0x9ABF, // - 0x580B, 0x9AC2, // - 0x5815, 0x91C2, // - 0x5819, 0x9AC3, // - 0x581D, 0x9AC4, // - 0x5821, 0x9AC6, // - 0x5824, 0x92E7, // - 0x582A, 0x8AAC, // - 0x582F, 0xEA9F, // - 0x5830, 0x8981, // - 0x5831, 0x95F1, // - 0x5834, 0x8FEA, // - 0x5835, 0x9367, // - 0x583A, 0x8DE4, // - 0x583D, 0x9ACC, // - 0x5840, 0x95BB, // - 0x5841, 0x97DB, // - 0x584A, 0x89F2, // - 0x584B, 0x9AC8, // - 0x5851, 0x9159, // - 0x5852, 0x9ACB, // - 0x5854, 0x9383, // - 0x5857, 0x9368, // - 0x5858, 0x9384, // - 0x5859, 0x94B7, // - 0x585A, 0x92CB, // - 0x585E, 0x8DC7, // - 0x5862, 0x9AC7, // - 0x5869, 0x8996, // - 0x586B, 0x9355, // - 0x5870, 0x9AC9, // - 0x5872, 0x9AC5, // - 0x5875, 0x906F, // - 0x5879, 0x9ACD, // - 0x587E, 0x8F6D, // - 0x5883, 0x8BAB, // - 0x5885, 0x9ACE, // - 0x5893, 0x95E6, // - 0x5897, 0x919D, // - 0x589C, 0x92C4, // - 0x589F, 0x9AD0, // - 0x58A8, 0x966E, // - 0x58AB, 0x9AD1, // - 0x58AE, 0x9AD6, // - 0x58B3, 0x95AD, // - 0x58B8, 0x9AD5, // - 0x58B9, 0x9ACF, // - 0x58BA, 0x9AD2, // - 0x58BB, 0x9AD4, // - 0x58BE, 0x8DA4, // - 0x58C1, 0x95C7, // - 0x58C5, 0x9AD7, // - 0x58C7, 0x9264, // - 0x58CA, 0x89F3, // - 0x58CC, 0x8FEB, // - 0x58D1, 0x9AD9, // - 0x58D3, 0x9AD8, // - 0x58D5, 0x8D88, // - 0x58D7, 0x9ADA, // - 0x58D8, 0x9ADC, // - 0x58D9, 0x9ADB, // - 0x58DC, 0x9ADE, // - 0x58DE, 0x9AD3, // - 0x58DF, 0x9AE0, // - 0x58E4, 0x9ADF, // - 0x58E5, 0x9ADD, // - 0x58EB, 0x8E6D, // - 0x58EC, 0x9070, // - 0x58EE, 0x9173, // - 0x58EF, 0x9AE1, // - 0x58F0, 0x90BA, // - 0x58F1, 0x88EB, // - 0x58F2, 0x9484, // - 0x58F7, 0x92D9, // - 0x58F9, 0x9AE3, // - 0x58FA, 0x9AE2, // - 0x58FB, 0x9AE4, // - 0x58FC, 0x9AE5, // - 0x58FD, 0x9AE6, // - 0x5902, 0x9AE7, // - 0x5909, 0x95CF, // - 0x590A, 0x9AE8, // - 0x590F, 0x89C4, // - 0x5910, 0x9AE9, // - 0x5916, 0x8A4F, // - 0x5918, 0x99C7, // - 0x5919, 0x8F67, // - 0x591A, 0x91BD, // - 0x591B, 0x9AEA, // - 0x591C, 0x96E9, // - 0x5922, 0x96B2, // - 0x5925, 0x9AEC, // - 0x5927, 0x91E5, // - 0x5929, 0x9356, // - 0x592A, 0x91BE, // - 0x592B, 0x9576, // - 0x592C, 0x9AED, // - 0x592D, 0x9AEE, // - 0x592E, 0x899B, // - 0x5931, 0x8EB8, // - 0x5932, 0x9AEF, // - 0x5937, 0x88CE, // - 0x5938, 0x9AF0, // - 0x593E, 0x9AF1, // - 0x5944, 0x8982, // - 0x5947, 0x8AEF, // - 0x5948, 0x93DE, // - 0x5949, 0x95F2, // - 0x594E, 0x9AF5, // - 0x594F, 0x9174, // - 0x5950, 0x9AF4, // - 0x5951, 0x8C5F, // - 0x5954, 0x967A, // - 0x5955, 0x9AF3, // - 0x5957, 0x9385, // - 0x5958, 0x9AF7, // - 0x595A, 0x9AF6, // - 0x5960, 0x9AF9, // - 0x5962, 0x9AF8, // - 0x5965, 0x899C, // - 0x5967, 0x9AFA, // - 0x5968, 0x8FA7, // - 0x5969, 0x9AFC, // - 0x596A, 0x9244, // - 0x596C, 0x9AFB, // - 0x596E, 0x95B1, // - 0x5973, 0x8F97, // - 0x5974, 0x937A, // - 0x5978, 0x9B40, // - 0x597D, 0x8D44, // - 0x5981, 0x9B41, // - 0x5982, 0x9440, // - 0x5983, 0x94DC, // - 0x5984, 0x96CF, // - 0x598A, 0x9444, // - 0x598D, 0x9B4A, // - 0x5993, 0x8B57, // - 0x5996, 0x9764, // - 0x5999, 0x96AD, // - 0x599B, 0x9BAA, // - 0x599D, 0x9B42, // - 0x59A3, 0x9B45, // - 0x59A5, 0x91C3, // - 0x59A8, 0x9657, // - 0x59AC, 0x9369, // - 0x59B2, 0x9B46, // - 0x59B9, 0x9685, // - 0x59BB, 0x8DC8, // - 0x59BE, 0x8FA8, // - 0x59C6, 0x9B47, // - 0x59C9, 0x8E6F, // - 0x59CB, 0x8E6E, // - 0x59D0, 0x88B7, // - 0x59D1, 0x8CC6, // - 0x59D3, 0x90A9, // - 0x59D4, 0x88CF, // - 0x59D9, 0x9B4B, // - 0x59DA, 0x9B4C, // - 0x59DC, 0x9B49, // - 0x59E5, 0x8957, // - 0x59E6, 0x8AAD, // - 0x59E8, 0x9B48, // - 0x59EA, 0x96C3, // - 0x59EB, 0x9550, // - 0x59F6, 0x88A6, // - 0x59FB, 0x88F7, // - 0x59FF, 0x8E70, // - 0x5A01, 0x88D0, // - 0x5A03, 0x88A1, // - 0x5A09, 0x9B51, // - 0x5A11, 0x9B4F, // - 0x5A18, 0x96BA, // - 0x5A1A, 0x9B52, // - 0x5A1C, 0x9B50, // - 0x5A1F, 0x9B4E, // - 0x5A20, 0x9050, // - 0x5A25, 0x9B4D, // - 0x5A29, 0x95D8, // - 0x5A2F, 0x8CE2, // - 0x5A35, 0x9B56, // - 0x5A36, 0x9B57, // - 0x5A3C, 0x8FA9, // - 0x5A40, 0x9B53, // - 0x5A41, 0x984B, // - 0x5A46, 0x946B, // - 0x5A49, 0x9B55, // - 0x5A5A, 0x8DA5, // - 0x5A62, 0x9B58, // - 0x5A66, 0x9577, // - 0x5A6A, 0x9B59, // - 0x5A6C, 0x9B54, // - 0x5A7F, 0x96B9, // - 0x5A92, 0x947D, // - 0x5A9A, 0x9B5A, // - 0x5A9B, 0x9551, // - 0x5ABD, 0x9B5F, // - 0x5ABE, 0x9B5C, // - 0x5AC1, 0x89C5, // - 0x5AC2, 0x9B5E, // - 0x5AC9, 0x8EB9, // - 0x5ACB, 0x9B5D, // - 0x5ACC, 0x8C99, // - 0x5AD0, 0x9B6B, // - 0x5AD6, 0x9B64, // - 0x5AD7, 0x9B61, // - 0x5AE1, 0x9284, // - 0x5AE3, 0x9B60, // - 0x5AE6, 0x9B62, // - 0x5AE9, 0x9B63, // - 0x5AFA, 0x9B65, // - 0x5AFB, 0x9B66, // - 0x5B09, 0x8AF0, // - 0x5B0B, 0x9B68, // - 0x5B0C, 0x9B67, // - 0x5B16, 0x9B69, // - 0x5B22, 0x8FEC, // - 0x5B2A, 0x9B6C, // - 0x5B2C, 0x92DA, // - 0x5B30, 0x8964, // - 0x5B32, 0x9B6A, // - 0x5B36, 0x9B6D, // - 0x5B3E, 0x9B6E, // - 0x5B40, 0x9B71, // - 0x5B43, 0x9B6F, // - 0x5B45, 0x9B70, // - 0x5B50, 0x8E71, // - 0x5B51, 0x9B72, // - 0x5B54, 0x8D45, // - 0x5B55, 0x9B73, // - 0x5B57, 0x8E9A, // - 0x5B58, 0x91B6, // - 0x5B5A, 0x9B74, // - 0x5B5B, 0x9B75, // - 0x5B5C, 0x8E79, // - 0x5B5D, 0x8D46, // - 0x5B5F, 0x96D0, // - 0x5B63, 0x8B47, // - 0x5B64, 0x8CC7, // - 0x5B65, 0x9B76, // - 0x5B66, 0x8A77, // - 0x5B69, 0x9B77, // - 0x5B6B, 0x91B7, // - 0x5B70, 0x9B78, // - 0x5B71, 0x9BA1, // - 0x5B73, 0x9B79, // - 0x5B75, 0x9B7A, // - 0x5B78, 0x9B7B, // - 0x5B7A, 0x9B7D, // - 0x5B80, 0x9B7E, // - 0x5B83, 0x9B80, // - 0x5B85, 0x91EE, // - 0x5B87, 0x8946, // - 0x5B88, 0x8EE7, // - 0x5B89, 0x88C0, // - 0x5B8B, 0x9176, // - 0x5B8C, 0x8AAE, // - 0x5B8D, 0x8EB3, // - 0x5B8F, 0x8D47, // - 0x5B95, 0x9386, // - 0x5B97, 0x8F40, // - 0x5B98, 0x8AAF, // - 0x5B99, 0x9288, // - 0x5B9A, 0x92E8, // - 0x5B9B, 0x88B6, // - 0x5B9C, 0x8B58, // - 0x5B9D, 0x95F3, // - 0x5B9F, 0x8EC0, // - 0x5BA2, 0x8B71, // - 0x5BA3, 0x90E9, // - 0x5BA4, 0x8EBA, // - 0x5BA5, 0x9747, // - 0x5BA6, 0x9B81, // - 0x5BAE, 0x8B7B, // - 0x5BB0, 0x8DC9, // - 0x5BB3, 0x8A51, // - 0x5BB4, 0x8983, // - 0x5BB5, 0x8FAA, // - 0x5BB6, 0x89C6, // - 0x5BB8, 0x9B82, // - 0x5BB9, 0x9765, // - 0x5BBF, 0x8F68, // - 0x5BC2, 0x8EE2, // - 0x5BC3, 0x9B83, // - 0x5BC4, 0x8AF1, // - 0x5BC5, 0x93D0, // - 0x5BC6, 0x96A7, // - 0x5BC7, 0x9B84, // - 0x5BC9, 0x9B85, // - 0x5BCC, 0x9578, // - 0x5BD0, 0x9B87, // - 0x5BD2, 0x8AA6, // - 0x5BD3, 0x8BF5, // - 0x5BD4, 0x9B86, // - 0x5BDB, 0x8AB0, // - 0x5BDD, 0x9051, // - 0x5BDE, 0x9B8B, // - 0x5BDF, 0x8E40, // - 0x5BE1, 0x89C7, // - 0x5BE2, 0x9B8A, // - 0x5BE4, 0x9B88, // - 0x5BE5, 0x9B8C, // - 0x5BE6, 0x9B89, // - 0x5BE7, 0x944A, // - 0x5BE8, 0x9ECB, // - 0x5BE9, 0x9052, // - 0x5BEB, 0x9B8D, // - 0x5BEE, 0x97BE, // - 0x5BF0, 0x9B8E, // - 0x5BF3, 0x9B90, // - 0x5BF5, 0x929E, // - 0x5BF6, 0x9B8F, // - 0x5BF8, 0x90A1, // - 0x5BFA, 0x8E9B, // - 0x5BFE, 0x91CE, // - 0x5BFF, 0x8EF5, // - 0x5C01, 0x9595, // - 0x5C02, 0x90EA, // - 0x5C04, 0x8ECB, // - 0x5C05, 0x9B91, // - 0x5C06, 0x8FAB, // - 0x5C07, 0x9B92, // - 0x5C08, 0x9B93, // - 0x5C09, 0x88D1, // - 0x5C0A, 0x91B8, // - 0x5C0B, 0x9071, // - 0x5C0D, 0x9B94, // - 0x5C0E, 0x93B1, // - 0x5C0F, 0x8FAC, // - 0x5C11, 0x8FAD, // - 0x5C13, 0x9B95, // - 0x5C16, 0x90EB, // - 0x5C1A, 0x8FAE, // - 0x5C20, 0x9B96, // - 0x5C22, 0x9B97, // - 0x5C24, 0x96DE, // - 0x5C28, 0x9B98, // - 0x5C2D, 0x8BC4, // - 0x5C31, 0x8F41, // - 0x5C38, 0x9B99, // - 0x5C39, 0x9B9A, // - 0x5C3A, 0x8EDA, // - 0x5C3B, 0x904B, // - 0x5C3C, 0x93F2, // - 0x5C3D, 0x9073, // - 0x5C3E, 0x94F6, // - 0x5C3F, 0x9441, // - 0x5C40, 0x8BC7, // - 0x5C41, 0x9B9B, // - 0x5C45, 0x8B8F, // - 0x5C46, 0x9B9C, // - 0x5C48, 0x8BFC, // - 0x5C4A, 0x93CD, // - 0x5C4B, 0x89AE, // - 0x5C4D, 0x8E72, // - 0x5C4E, 0x9B9D, // - 0x5C4F, 0x9BA0, // - 0x5C50, 0x9B9F, // - 0x5C51, 0x8BFB, // - 0x5C53, 0x9B9E, // - 0x5C55, 0x9357, // - 0x5C5E, 0x91AE, // - 0x5C60, 0x936A, // - 0x5C61, 0x8EC6, // - 0x5C64, 0x9177, // - 0x5C65, 0x979A, // - 0x5C6C, 0x9BA2, // - 0x5C6E, 0x9BA3, // - 0x5C6F, 0x93D4, // - 0x5C71, 0x8E52, // - 0x5C76, 0x9BA5, // - 0x5C79, 0x9BA6, // - 0x5C8C, 0x9BA7, // - 0x5C90, 0x8AF2, // - 0x5C91, 0x9BA8, // - 0x5C94, 0x9BA9, // - 0x5CA1, 0x89AA, // - 0x5CA8, 0x915A, // - 0x5CA9, 0x8AE2, // - 0x5CAB, 0x9BAB, // - 0x5CAC, 0x96A6, // - 0x5CB1, 0x91D0, // - 0x5CB3, 0x8A78, // - 0x5CB6, 0x9BAD, // - 0x5CB7, 0x9BAF, // - 0x5CB8, 0x8ADD, // - 0x5CBB, 0x9BAC, // - 0x5CBC, 0x9BAE, // - 0x5CBE, 0x9BB1, // - 0x5CC5, 0x9BB0, // - 0x5CC7, 0x9BB2, // - 0x5CD9, 0x9BB3, // - 0x5CE0, 0x93BB, // - 0x5CE1, 0x8BAC, // - 0x5CE8, 0x89E3, // - 0x5CE9, 0x9BB4, // - 0x5CEA, 0x9BB9, // - 0x5CED, 0x9BB7, // - 0x5CEF, 0x95F5, // - 0x5CF0, 0x95F4, // - 0x5CF6, 0x9387, // - 0x5CFA, 0x9BB6, // - 0x5CFB, 0x8F73, // - 0x5CFD, 0x9BB5, // - 0x5D07, 0x9092, // - 0x5D0B, 0x9BBA, // - 0x5D0E, 0x8DE8, // - 0x5D11, 0x9BC0, // - 0x5D14, 0x9BC1, // - 0x5D15, 0x9BBB, // - 0x5D16, 0x8A52, // - 0x5D17, 0x9BBC, // - 0x5D18, 0x9BC5, // - 0x5D19, 0x9BC4, // - 0x5D1A, 0x9BC3, // - 0x5D1B, 0x9BBF, // - 0x5D1F, 0x9BBE, // - 0x5D22, 0x9BC2, // - 0x5D29, 0x95F6, // - 0x5D4B, 0x9BC9, // - 0x5D4C, 0x9BC6, // - 0x5D4E, 0x9BC8, // - 0x5D50, 0x9792, // - 0x5D52, 0x9BC7, // - 0x5D5C, 0x9BBD, // - 0x5D69, 0x9093, // - 0x5D6C, 0x9BCA, // - 0x5D6F, 0x8DB5, // - 0x5D73, 0x9BCB, // - 0x5D76, 0x9BCC, // - 0x5D82, 0x9BCF, // - 0x5D84, 0x9BCE, // - 0x5D87, 0x9BCD, // - 0x5D8B, 0x9388, // - 0x5D8C, 0x9BB8, // - 0x5D90, 0x9BD5, // - 0x5D9D, 0x9BD1, // - 0x5DA2, 0x9BD0, // - 0x5DAC, 0x9BD2, // - 0x5DAE, 0x9BD3, // - 0x5DB7, 0x9BD6, // - 0x5DBA, 0x97E4, // - 0x5DBC, 0x9BD7, // - 0x5DBD, 0x9BD4, // - 0x5DC9, 0x9BD8, // - 0x5DCC, 0x8ADE, // - 0x5DCD, 0x9BD9, // - 0x5DD2, 0x9BDB, // - 0x5DD3, 0x9BDA, // - 0x5DD6, 0x9BDC, // - 0x5DDB, 0x9BDD, // - 0x5DDD, 0x90EC, // - 0x5DDE, 0x8F42, // - 0x5DE1, 0x8F84, // - 0x5DE3, 0x9183, // - 0x5DE5, 0x8D48, // - 0x5DE6, 0x8DB6, // - 0x5DE7, 0x8D49, // - 0x5DE8, 0x8B90, // - 0x5DEB, 0x9BDE, // - 0x5DEE, 0x8DB7, // - 0x5DF1, 0x8CC8, // - 0x5DF2, 0x9BDF, // - 0x5DF3, 0x96A4, // - 0x5DF4, 0x9462, // - 0x5DF5, 0x9BE0, // - 0x5DF7, 0x8D4A, // - 0x5DFB, 0x8AAA, // - 0x5DFD, 0x9246, // - 0x5DFE, 0x8BD0, // - 0x5E02, 0x8E73, // - 0x5E03, 0x957A, // - 0x5E06, 0x94BF, // - 0x5E0B, 0x9BE1, // - 0x5E0C, 0x8AF3, // - 0x5E11, 0x9BE4, // - 0x5E16, 0x929F, // - 0x5E19, 0x9BE3, // - 0x5E1A, 0x9BE2, // - 0x5E1B, 0x9BE5, // - 0x5E1D, 0x92E9, // - 0x5E25, 0x9083, // - 0x5E2B, 0x8E74, // - 0x5E2D, 0x90C8, // - 0x5E2F, 0x91D1, // - 0x5E30, 0x8B41, // - 0x5E33, 0x92A0, // - 0x5E36, 0x9BE6, // - 0x5E37, 0x9BE7, // - 0x5E38, 0x8FED, // - 0x5E3D, 0x9658, // - 0x5E40, 0x9BEA, // - 0x5E43, 0x9BE9, // - 0x5E44, 0x9BE8, // - 0x5E45, 0x959D, // - 0x5E47, 0x9BF1, // - 0x5E4C, 0x9679, // - 0x5E4E, 0x9BEB, // - 0x5E54, 0x9BED, // - 0x5E55, 0x968B, // - 0x5E57, 0x9BEC, // - 0x5E5F, 0x9BEE, // - 0x5E61, 0x94A6, // - 0x5E62, 0x9BEF, // - 0x5E63, 0x95BC, // - 0x5E64, 0x9BF0, // - 0x5E72, 0x8AB1, // - 0x5E73, 0x95BD, // - 0x5E74, 0x944E, // - 0x5E75, 0x9BF2, // - 0x5E76, 0x9BF3, // - 0x5E78, 0x8D4B, // - 0x5E79, 0x8AB2, // - 0x5E7A, 0x9BF4, // - 0x5E7B, 0x8CB6, // - 0x5E7C, 0x9763, // - 0x5E7D, 0x9748, // - 0x5E7E, 0x8AF4, // - 0x5E7F, 0x9BF6, // - 0x5E81, 0x92A1, // - 0x5E83, 0x8D4C, // - 0x5E84, 0x8FAF, // - 0x5E87, 0x94DD, // - 0x5E8A, 0x8FB0, // - 0x5E8F, 0x8F98, // - 0x5E95, 0x92EA, // - 0x5E96, 0x95F7, // - 0x5E97, 0x9358, // - 0x5E9A, 0x8D4D, // - 0x5E9C, 0x957B, // - 0x5EA0, 0x9BF7, // - 0x5EA6, 0x9378, // - 0x5EA7, 0x8DC0, // - 0x5EAB, 0x8CC9, // - 0x5EAD, 0x92EB, // - 0x5EB5, 0x88C1, // - 0x5EB6, 0x8F8E, // - 0x5EB7, 0x8D4E, // - 0x5EB8, 0x9766, // - 0x5EC1, 0x9BF8, // - 0x5EC2, 0x9BF9, // - 0x5EC3, 0x9470, // - 0x5EC8, 0x9BFA, // - 0x5EC9, 0x97F5, // - 0x5ECA, 0x984C, // - 0x5ECF, 0x9BFC, // - 0x5ED0, 0x9BFB, // - 0x5ED3, 0x8A66, // - 0x5ED6, 0x9C40, // - 0x5EDA, 0x9C43, // - 0x5EDB, 0x9C44, // - 0x5EDD, 0x9C42, // - 0x5EDF, 0x955F, // - 0x5EE0, 0x8FB1, // - 0x5EE1, 0x9C46, // - 0x5EE2, 0x9C45, // - 0x5EE3, 0x9C41, // - 0x5EE8, 0x9C47, // - 0x5EE9, 0x9C48, // - 0x5EEC, 0x9C49, // - 0x5EF0, 0x9C4C, // - 0x5EF1, 0x9C4A, // - 0x5EF3, 0x9C4B, // - 0x5EF4, 0x9C4D, // - 0x5EF6, 0x8984, // - 0x5EF7, 0x92EC, // - 0x5EF8, 0x9C4E, // - 0x5EFA, 0x8C9A, // - 0x5EFB, 0x89F4, // - 0x5EFC, 0x9455, // - 0x5EFE, 0x9C4F, // - 0x5EFF, 0x93F9, // - 0x5F01, 0x95D9, // - 0x5F03, 0x9C50, // - 0x5F04, 0x984D, // - 0x5F09, 0x9C51, // - 0x5F0A, 0x95BE, // - 0x5F0B, 0x9C54, // - 0x5F0C, 0x989F, // - 0x5F0D, 0x98AF, // - 0x5F0F, 0x8EAE, // - 0x5F10, 0x93F3, // - 0x5F11, 0x9C55, // - 0x5F13, 0x8B7C, // - 0x5F14, 0x92A2, // - 0x5F15, 0x88F8, // - 0x5F16, 0x9C56, // - 0x5F17, 0x95A4, // - 0x5F18, 0x8D4F, // - 0x5F1B, 0x926F, // - 0x5F1F, 0x92ED, // - 0x5F25, 0x96ED, // - 0x5F26, 0x8CB7, // - 0x5F27, 0x8CCA, // - 0x5F29, 0x9C57, // - 0x5F2D, 0x9C58, // - 0x5F2F, 0x9C5E, // - 0x5F31, 0x8EE3, // - 0x5F35, 0x92A3, // - 0x5F37, 0x8BAD, // - 0x5F38, 0x9C59, // - 0x5F3C, 0x954A, // - 0x5F3E, 0x9265, // - 0x5F41, 0x9C5A, // - 0x5F4A, 0x8BAE, // - 0x5F4C, 0x9C5C, // - 0x5F4E, 0x9C5D, // - 0x5F51, 0x9C5F, // - 0x5F53, 0x9396, // - 0x5F56, 0x9C60, // - 0x5F57, 0x9C61, // - 0x5F59, 0x9C62, // - 0x5F5C, 0x9C53, // - 0x5F5D, 0x9C52, // - 0x5F61, 0x9C63, // - 0x5F62, 0x8C60, // - 0x5F66, 0x9546, // - 0x5F69, 0x8DCA, // - 0x5F6A, 0x9556, // - 0x5F6B, 0x92A4, // - 0x5F6C, 0x956A, // - 0x5F6D, 0x9C64, // - 0x5F70, 0x8FB2, // - 0x5F71, 0x8965, // - 0x5F73, 0x9C65, // - 0x5F77, 0x9C66, // - 0x5F79, 0x96F0, // - 0x5F7C, 0x94DE, // - 0x5F7F, 0x9C69, // - 0x5F80, 0x899D, // - 0x5F81, 0x90AA, // - 0x5F82, 0x9C68, // - 0x5F83, 0x9C67, // - 0x5F84, 0x8C61, // - 0x5F85, 0x91D2, // - 0x5F87, 0x9C6D, // - 0x5F88, 0x9C6B, // - 0x5F8A, 0x9C6A, // - 0x5F8B, 0x97A5, // - 0x5F8C, 0x8CE3, // - 0x5F90, 0x8F99, // - 0x5F91, 0x9C6C, // - 0x5F92, 0x936B, // - 0x5F93, 0x8F5D, // - 0x5F97, 0x93BE, // - 0x5F98, 0x9C70, // - 0x5F99, 0x9C6F, // - 0x5F9E, 0x9C6E, // - 0x5FA0, 0x9C71, // - 0x5FA1, 0x8CE4, // - 0x5FA8, 0x9C72, // - 0x5FA9, 0x959C, // - 0x5FAA, 0x8F7A, // - 0x5FAD, 0x9C73, // - 0x5FAE, 0x94F7, // - 0x5FB3, 0x93BF, // - 0x5FB4, 0x92A5, // - 0x5FB9, 0x934F, // - 0x5FBC, 0x9C74, // - 0x5FBD, 0x8B4A, // - 0x5FC3, 0x9053, // - 0x5FC5, 0x954B, // - 0x5FCC, 0x8AF5, // - 0x5FCD, 0x9445, // - 0x5FD6, 0x9C75, // - 0x5FD7, 0x8E75, // - 0x5FD8, 0x9659, // - 0x5FD9, 0x965A, // - 0x5FDC, 0x899E, // - 0x5FDD, 0x9C7A, // - 0x5FE0, 0x9289, // - 0x5FE4, 0x9C77, // - 0x5FEB, 0x89F5, // - 0x5FF0, 0x9CAB, // - 0x5FF1, 0x9C79, // - 0x5FF5, 0x944F, // - 0x5FF8, 0x9C78, // - 0x5FFB, 0x9C76, // - 0x5FFD, 0x8D9A, // - 0x5FFF, 0x9C7C, // - 0x600E, 0x9C83, // - 0x600F, 0x9C89, // - 0x6010, 0x9C81, // - 0x6012, 0x937B, // - 0x6015, 0x9C86, // - 0x6016, 0x957C, // - 0x6019, 0x9C80, // - 0x601B, 0x9C85, // - 0x601C, 0x97E5, // - 0x601D, 0x8E76, // - 0x6020, 0x91D3, // - 0x6021, 0x9C7D, // - 0x6025, 0x8B7D, // - 0x6026, 0x9C88, // - 0x6027, 0x90AB, // - 0x6028, 0x8985, // - 0x6029, 0x9C82, // - 0x602A, 0x89F6, // - 0x602B, 0x9C87, // - 0x602F, 0x8BAF, // - 0x6031, 0x9C84, // - 0x603A, 0x9C8A, // - 0x6041, 0x9C8C, // - 0x6042, 0x9C96, // - 0x6043, 0x9C94, // - 0x6046, 0x9C91, // - 0x604A, 0x9C90, // - 0x604B, 0x97F6, // - 0x604D, 0x9C92, // - 0x6050, 0x8BB0, // - 0x6052, 0x8D50, // - 0x6055, 0x8F9A, // - 0x6059, 0x9C99, // - 0x605A, 0x9C8B, // - 0x605F, 0x9C8F, // - 0x6060, 0x9C7E, // - 0x6062, 0x89F8, // - 0x6063, 0x9C93, // - 0x6064, 0x9C95, // - 0x6065, 0x9270, // - 0x6068, 0x8DA6, // - 0x6069, 0x89B6, // - 0x606A, 0x9C8D, // - 0x606B, 0x9C98, // - 0x606C, 0x9C97, // - 0x606D, 0x8BB1, // - 0x606F, 0x91A7, // - 0x6070, 0x8A86, // - 0x6075, 0x8C62, // - 0x6077, 0x9C8E, // - 0x6081, 0x9C9A, // - 0x6083, 0x9C9D, // - 0x6084, 0x9C9F, // - 0x6089, 0x8EBB, // - 0x608B, 0x9CA5, // - 0x608C, 0x92EE, // - 0x608D, 0x9C9B, // - 0x6092, 0x9CA3, // - 0x6094, 0x89F7, // - 0x6096, 0x9CA1, // - 0x6097, 0x9CA2, // - 0x609A, 0x9C9E, // - 0x609B, 0x9CA0, // - 0x609F, 0x8CE5, // - 0x60A0, 0x9749, // - 0x60A3, 0x8AB3, // - 0x60A6, 0x8978, // - 0x60A7, 0x9CA4, // - 0x60A9, 0x9459, // - 0x60AA, 0x88AB, // - 0x60B2, 0x94DF, // - 0x60B3, 0x9C7B, // - 0x60B4, 0x9CAA, // - 0x60B5, 0x9CAE, // - 0x60B6, 0x96E3, // - 0x60B8, 0x9CA7, // - 0x60BC, 0x9389, // - 0x60BD, 0x9CAC, // - 0x60C5, 0x8FEE, // - 0x60C6, 0x9CAD, // - 0x60C7, 0x93D5, // - 0x60D1, 0x9866, // - 0x60D3, 0x9CA9, // - 0x60D8, 0x9CAF, // - 0x60DA, 0x8D9B, // - 0x60DC, 0x90C9, // - 0x60DF, 0x88D2, // - 0x60E0, 0x9CA8, // - 0x60E1, 0x9CA6, // - 0x60E3, 0x9179, // - 0x60E7, 0x9C9C, // - 0x60E8, 0x8E53, // - 0x60F0, 0x91C4, // - 0x60F1, 0x9CBB, // - 0x60F3, 0x917A, // - 0x60F4, 0x9CB6, // - 0x60F6, 0x9CB3, // - 0x60F7, 0x9CB4, // - 0x60F9, 0x8EE4, // - 0x60FA, 0x9CB7, // - 0x60FB, 0x9CBA, // - 0x6100, 0x9CB5, // - 0x6101, 0x8F44, // - 0x6103, 0x9CB8, // - 0x6106, 0x9CB2, // - 0x6108, 0x96FA, // - 0x6109, 0x96F9, // - 0x610D, 0x9CBC, // - 0x610E, 0x9CBD, // - 0x610F, 0x88D3, // - 0x6115, 0x9CB1, // - 0x611A, 0x8BF0, // - 0x611B, 0x88A4, // - 0x611F, 0x8AB4, // - 0x6121, 0x9CB9, // - 0x6127, 0x9CC1, // - 0x6128, 0x9CC0, // - 0x612C, 0x9CC5, // - 0x6134, 0x9CC6, // - 0x613C, 0x9CC4, // - 0x613D, 0x9CC7, // - 0x613E, 0x9CBF, // - 0x613F, 0x9CC3, // - 0x6142, 0x9CC8, // - 0x6144, 0x9CC9, // - 0x6147, 0x9CBE, // - 0x6148, 0x8E9C, // - 0x614A, 0x9CC2, // - 0x614B, 0x91D4, // - 0x614C, 0x8D51, // - 0x614D, 0x9CB0, // - 0x614E, 0x9054, // - 0x6153, 0x9CD6, // - 0x6155, 0x95E7, // - 0x6158, 0x9CCC, // - 0x6159, 0x9CCD, // - 0x615A, 0x9CCE, // - 0x615D, 0x9CD5, // - 0x615F, 0x9CD4, // - 0x6162, 0x969D, // - 0x6163, 0x8AB5, // - 0x6165, 0x9CD2, // - 0x6167, 0x8C64, // - 0x6168, 0x8A53, // - 0x616B, 0x9CCF, // - 0x616E, 0x97B6, // - 0x616F, 0x9CD1, // - 0x6170, 0x88D4, // - 0x6171, 0x9CD3, // - 0x6173, 0x9CCA, // - 0x6174, 0x9CD0, // - 0x6175, 0x9CD7, // - 0x6176, 0x8C63, // - 0x6177, 0x9CCB, // - 0x617E, 0x977C, // - 0x6182, 0x974A, // - 0x6187, 0x9CDA, // - 0x618A, 0x9CDE, // - 0x618E, 0x919E, // - 0x6190, 0x97F7, // - 0x6191, 0x9CDF, // - 0x6194, 0x9CDC, // - 0x6196, 0x9CD9, // - 0x6199, 0x9CD8, // - 0x619A, 0x9CDD, // - 0x61A4, 0x95AE, // - 0x61A7, 0x93B2, // - 0x61A9, 0x8C65, // - 0x61AB, 0x9CE0, // - 0x61AC, 0x9CDB, // - 0x61AE, 0x9CE1, // - 0x61B2, 0x8C9B, // - 0x61B6, 0x89AF, // - 0x61BA, 0x9CE9, // - 0x61BE, 0x8AB6, // - 0x61C3, 0x9CE7, // - 0x61C6, 0x9CE8, // - 0x61C7, 0x8DA7, // - 0x61C8, 0x9CE6, // - 0x61C9, 0x9CE4, // - 0x61CA, 0x9CE3, // - 0x61CB, 0x9CEA, // - 0x61CC, 0x9CE2, // - 0x61CD, 0x9CEC, // - 0x61D0, 0x89F9, // - 0x61E3, 0x9CEE, // - 0x61E6, 0x9CED, // - 0x61F2, 0x92A6, // - 0x61F4, 0x9CF1, // - 0x61F6, 0x9CEF, // - 0x61F7, 0x9CE5, // - 0x61F8, 0x8C9C, // - 0x61FA, 0x9CF0, // - 0x61FC, 0x9CF4, // - 0x61FD, 0x9CF3, // - 0x61FE, 0x9CF5, // - 0x61FF, 0x9CF2, // - 0x6200, 0x9CF6, // - 0x6208, 0x9CF7, // - 0x6209, 0x9CF8, // - 0x620A, 0x95E8, // - 0x620C, 0x9CFA, // - 0x620D, 0x9CF9, // - 0x620E, 0x8F5E, // - 0x6210, 0x90AC, // - 0x6211, 0x89E4, // - 0x6212, 0x89FA, // - 0x6214, 0x9CFB, // - 0x6216, 0x88BD, // - 0x621A, 0x90CA, // - 0x621B, 0x9CFC, // - 0x621D, 0xE6C1, // - 0x621E, 0x9D40, // - 0x621F, 0x8C81, // - 0x6221, 0x9D41, // - 0x6226, 0x90ED, // - 0x622A, 0x9D42, // - 0x622E, 0x9D43, // - 0x622F, 0x8B59, // - 0x6230, 0x9D44, // - 0x6232, 0x9D45, // - 0x6233, 0x9D46, // - 0x6234, 0x91D5, // - 0x6238, 0x8CCB, // - 0x623B, 0x96DF, // - 0x6240, 0x8F8A, // - 0x6241, 0x9D47, // - 0x6247, 0x90EE, // - 0x6248, 0xE7BB, // - 0x6249, 0x94E0, // - 0x624B, 0x8EE8, // - 0x624D, 0x8DCB, // - 0x624E, 0x9D48, // - 0x6253, 0x91C5, // - 0x6255, 0x95A5, // - 0x6258, 0x91EF, // - 0x625B, 0x9D4B, // - 0x625E, 0x9D49, // - 0x6260, 0x9D4C, // - 0x6263, 0x9D4A, // - 0x6268, 0x9D4D, // - 0x626E, 0x95AF, // - 0x6271, 0x88B5, // - 0x6276, 0x957D, // - 0x6279, 0x94E1, // - 0x627C, 0x9D4E, // - 0x627E, 0x9D51, // - 0x627F, 0x8FB3, // - 0x6280, 0x8B5A, // - 0x6282, 0x9D4F, // - 0x6283, 0x9D56, // - 0x6284, 0x8FB4, // - 0x6289, 0x9D50, // - 0x628A, 0x9463, // - 0x6291, 0x977D, // - 0x6292, 0x9D52, // - 0x6293, 0x9D53, // - 0x6294, 0x9D57, // - 0x6295, 0x938A, // - 0x6296, 0x9D54, // - 0x6297, 0x8D52, // - 0x6298, 0x90DC, // - 0x629B, 0x9D65, // - 0x629C, 0x94B2, // - 0x629E, 0x91F0, // - 0x62AB, 0x94E2, // - 0x62AC, 0x9DAB, // - 0x62B1, 0x95F8, // - 0x62B5, 0x92EF, // - 0x62B9, 0x9695, // - 0x62BB, 0x9D5A, // - 0x62BC, 0x899F, // - 0x62BD, 0x928A, // - 0x62C2, 0x9D63, // - 0x62C5, 0x9253, // - 0x62C6, 0x9D5D, // - 0x62C7, 0x9D64, // - 0x62C8, 0x9D5F, // - 0x62C9, 0x9D66, // - 0x62CA, 0x9D62, // - 0x62CC, 0x9D61, // - 0x62CD, 0x948F, // - 0x62D0, 0x89FB, // - 0x62D1, 0x9D59, // - 0x62D2, 0x8B91, // - 0x62D3, 0x91F1, // - 0x62D4, 0x9D55, // - 0x62D7, 0x9D58, // - 0x62D8, 0x8D53, // - 0x62D9, 0x90D9, // - 0x62DB, 0x8FB5, // - 0x62DC, 0x9D60, // - 0x62DD, 0x9471, // - 0x62E0, 0x8B92, // - 0x62E1, 0x8A67, // - 0x62EC, 0x8A87, // - 0x62ED, 0x9040, // - 0x62EE, 0x9D68, // - 0x62EF, 0x9D6D, // - 0x62F1, 0x9D69, // - 0x62F3, 0x8C9D, // - 0x62F5, 0x9D6E, // - 0x62F6, 0x8E41, // - 0x62F7, 0x8D89, // - 0x62FE, 0x8F45, // - 0x62FF, 0x9D5C, // - 0x6301, 0x8E9D, // - 0x6302, 0x9D6B, // - 0x6307, 0x8E77, // - 0x6308, 0x9D6C, // - 0x6309, 0x88C2, // - 0x630C, 0x9D67, // - 0x6311, 0x92A7, // - 0x6319, 0x8B93, // - 0x631F, 0x8BB2, // - 0x6327, 0x9D6A, // - 0x6328, 0x88A5, // - 0x632B, 0x8DC1, // - 0x632F, 0x9055, // - 0x633A, 0x92F0, // - 0x633D, 0x94D2, // - 0x633E, 0x9D70, // - 0x633F, 0x917D, // - 0x6349, 0x91A8, // - 0x634C, 0x8E4A, // - 0x634D, 0x9D71, // - 0x634F, 0x9D73, // - 0x6350, 0x9D6F, // - 0x6355, 0x95DF, // - 0x6357, 0x92BB, // - 0x635C, 0x917B, // - 0x6367, 0x95F9, // - 0x6368, 0x8ECC, // - 0x6369, 0x9D80, // - 0x636B, 0x9D7E, // - 0x636E, 0x9098, // - 0x6372, 0x8C9E, // - 0x6376, 0x9D78, // - 0x6377, 0x8FB7, // - 0x637A, 0x93E6, // - 0x637B, 0x9450, // - 0x6380, 0x9D76, // - 0x6383, 0x917C, // - 0x6388, 0x8EF6, // - 0x6389, 0x9D7B, // - 0x638C, 0x8FB6, // - 0x638E, 0x9D75, // - 0x638F, 0x9D7A, // - 0x6392, 0x9472, // - 0x6396, 0x9D74, // - 0x6398, 0x8C40, // - 0x639B, 0x8A7C, // - 0x639F, 0x9D7C, // - 0x63A0, 0x97A9, // - 0x63A1, 0x8DCC, // - 0x63A2, 0x9254, // - 0x63A3, 0x9D79, // - 0x63A5, 0x90DA, // - 0x63A7, 0x8D54, // - 0x63A8, 0x9084, // - 0x63A9, 0x8986, // - 0x63AB, 0x9D77, // - 0x63AC, 0x8B64, // - 0x63B2, 0x8C66, // - 0x63B4, 0x92CD, // - 0x63B5, 0x9D7D, // - 0x63BB, 0x917E, // - 0x63BE, 0x9D81, // - 0x63C0, 0x9D83, // - 0x63C3, 0x91B5, // - 0x63C4, 0x9D89, // - 0x63C6, 0x9D84, // - 0x63C9, 0x9D86, // - 0x63CF, 0x9560, // - 0x63D0, 0x92F1, // - 0x63D2, 0x9D87, // - 0x63D6, 0x974B, // - 0x63DA, 0x9767, // - 0x63DB, 0x8AB7, // - 0x63E1, 0x88AC, // - 0x63E3, 0x9D85, // - 0x63E9, 0x9D82, // - 0x63EE, 0x8AF6, // - 0x63F4, 0x8987, // - 0x63F6, 0x9D88, // - 0x63FA, 0x9768, // - 0x6406, 0x9D8C, // - 0x640D, 0x91B9, // - 0x640F, 0x9D93, // - 0x6413, 0x9D8D, // - 0x6416, 0x9D8A, // - 0x6417, 0x9D91, // - 0x641C, 0x9D72, // - 0x6426, 0x9D8E, // - 0x6428, 0x9D92, // - 0x642C, 0x94C0, // - 0x642D, 0x938B, // - 0x6434, 0x9D8B, // - 0x6436, 0x9D8F, // - 0x643A, 0x8C67, // - 0x643E, 0x8DEF, // - 0x6442, 0x90DB, // - 0x644E, 0x9D97, // - 0x6458, 0x9345, // - 0x6467, 0x9D94, // - 0x6469, 0x9680, // - 0x646F, 0x9D95, // - 0x6476, 0x9D96, // - 0x6478, 0x96CC, // - 0x647A, 0x90A0, // - 0x6483, 0x8C82, // - 0x6488, 0x9D9D, // - 0x6492, 0x8E54, // - 0x6493, 0x9D9A, // - 0x6495, 0x9D99, // - 0x649A, 0x9451, // - 0x649E, 0x93B3, // - 0x64A4, 0x9350, // - 0x64A5, 0x9D9B, // - 0x64A9, 0x9D9C, // - 0x64AB, 0x958F, // - 0x64AD, 0x9464, // - 0x64AE, 0x8E42, // - 0x64B0, 0x90EF, // - 0x64B2, 0x966F, // - 0x64B9, 0x8A68, // - 0x64BB, 0x9DA3, // - 0x64BC, 0x9D9E, // - 0x64C1, 0x9769, // - 0x64C2, 0x9DA5, // - 0x64C5, 0x9DA1, // - 0x64C7, 0x9DA2, // - 0x64CD, 0x9180, // - 0x64D2, 0x9DA0, // - 0x64D4, 0x9D5E, // - 0x64D8, 0x9DA4, // - 0x64DA, 0x9D9F, // - 0x64E0, 0x9DA9, // - 0x64E1, 0x9DAA, // - 0x64E2, 0x9346, // - 0x64E3, 0x9DAC, // - 0x64E6, 0x8E43, // - 0x64E7, 0x9DA7, // - 0x64EF, 0x9DAD, // - 0x64F1, 0x9DA6, // - 0x64F2, 0x9DB1, // - 0x64F4, 0x9DB0, // - 0x64F6, 0x9DAF, // - 0x64FA, 0x9DB2, // - 0x64FD, 0x9DB4, // - 0x64FE, 0x8FEF, // - 0x6500, 0x9DB3, // - 0x6505, 0x9DB7, // - 0x6518, 0x9DB5, // - 0x651C, 0x9DB6, // - 0x651D, 0x9D90, // - 0x6523, 0x9DB9, // - 0x6524, 0x9DB8, // - 0x652A, 0x9D98, // - 0x652B, 0x9DBA, // - 0x652C, 0x9DAE, // - 0x652F, 0x8E78, // - 0x6534, 0x9DBB, // - 0x6535, 0x9DBC, // - 0x6536, 0x9DBE, // - 0x6537, 0x9DBD, // - 0x6538, 0x9DBF, // - 0x6539, 0x89FC, // - 0x653B, 0x8D55, // - 0x653E, 0x95FA, // - 0x653F, 0x90AD, // - 0x6545, 0x8CCC, // - 0x6548, 0x9DC1, // - 0x654D, 0x9DC4, // - 0x654F, 0x9571, // - 0x6551, 0x8B7E, // - 0x6555, 0x9DC3, // - 0x6556, 0x9DC2, // - 0x6557, 0x9473, // - 0x6558, 0x9DC5, // - 0x6559, 0x8BB3, // - 0x655D, 0x9DC7, // - 0x655E, 0x9DC6, // - 0x6562, 0x8AB8, // - 0x6563, 0x8E55, // - 0x6566, 0x93D6, // - 0x656C, 0x8C68, // - 0x6570, 0x9094, // - 0x6572, 0x9DC8, // - 0x6574, 0x90AE, // - 0x6575, 0x9347, // - 0x6577, 0x957E, // - 0x6578, 0x9DC9, // - 0x6582, 0x9DCA, // - 0x6583, 0x9DCB, // - 0x6587, 0x95B6, // - 0x6588, 0x9B7C, // - 0x6589, 0x90C4, // - 0x658C, 0x956B, // - 0x658E, 0x8DD6, // - 0x6590, 0x94E3, // - 0x6591, 0x94C1, // - 0x6597, 0x936C, // - 0x6599, 0x97BF, // - 0x659B, 0x9DCD, // - 0x659C, 0x8ECE, // - 0x659F, 0x9DCE, // - 0x65A1, 0x88B4, // - 0x65A4, 0x8BD2, // - 0x65A5, 0x90CB, // - 0x65A7, 0x9580, // - 0x65AB, 0x9DCF, // - 0x65AC, 0x8E61, // - 0x65AD, 0x9266, // - 0x65AF, 0x8E7A, // - 0x65B0, 0x9056, // - 0x65B7, 0x9DD0, // - 0x65B9, 0x95FB, // - 0x65BC, 0x8997, // - 0x65BD, 0x8E7B, // - 0x65C1, 0x9DD3, // - 0x65C3, 0x9DD1, // - 0x65C4, 0x9DD4, // - 0x65C5, 0x97B7, // - 0x65C6, 0x9DD2, // - 0x65CB, 0x90F9, // - 0x65CC, 0x9DD5, // - 0x65CF, 0x91B0, // - 0x65D2, 0x9DD6, // - 0x65D7, 0x8AF8, // - 0x65D9, 0x9DD8, // - 0x65DB, 0x9DD7, // - 0x65E0, 0x9DD9, // - 0x65E1, 0x9DDA, // - 0x65E2, 0x8AF9, // - 0x65E5, 0x93FA, // - 0x65E6, 0x9255, // - 0x65E7, 0x8B8C, // - 0x65E8, 0x8E7C, // - 0x65E9, 0x9181, // - 0x65EC, 0x8F7B, // - 0x65ED, 0x88AE, // - 0x65F1, 0x9DDB, // - 0x65FA, 0x89A0, // - 0x65FB, 0x9DDF, // - 0x6602, 0x8D56, // - 0x6603, 0x9DDE, // - 0x6606, 0x8DA9, // - 0x6607, 0x8FB8, // - 0x660A, 0x9DDD, // - 0x660C, 0x8FB9, // - 0x660E, 0x96BE, // - 0x660F, 0x8DA8, // - 0x6613, 0x88D5, // - 0x6614, 0x90CC, // - 0x661C, 0x9DE4, // - 0x661F, 0x90AF, // - 0x6620, 0x8966, // - 0x6625, 0x8F74, // - 0x6627, 0x9686, // - 0x6628, 0x8DF0, // - 0x662D, 0x8FBA, // - 0x662F, 0x90A5, // - 0x6634, 0x9DE3, // - 0x6635, 0x9DE1, // - 0x6636, 0x9DE2, // - 0x663C, 0x928B, // - 0x663F, 0x9E45, // - 0x6641, 0x9DE8, // - 0x6642, 0x8E9E, // - 0x6643, 0x8D57, // - 0x6644, 0x9DE6, // - 0x6649, 0x9DE7, // - 0x664B, 0x9057, // - 0x664F, 0x9DE5, // - 0x6652, 0x8E4E, // - 0x665D, 0x9DEA, // - 0x665E, 0x9DE9, // - 0x665F, 0x9DEE, // - 0x6662, 0x9DEF, // - 0x6664, 0x9DEB, // - 0x6666, 0x8A41, // - 0x6667, 0x9DEC, // - 0x6668, 0x9DED, // - 0x6669, 0x94D3, // - 0x666E, 0x9581, // - 0x666F, 0x8C69, // - 0x6670, 0x9DF0, // - 0x6674, 0x90B0, // - 0x6676, 0x8FBB, // - 0x667A, 0x9271, // - 0x6681, 0x8BC5, // - 0x6683, 0x9DF1, // - 0x6684, 0x9DF5, // - 0x6687, 0x89C9, // - 0x6688, 0x9DF2, // - 0x6689, 0x9DF4, // - 0x668E, 0x9DF3, // - 0x6691, 0x8F8B, // - 0x6696, 0x9267, // - 0x6697, 0x88C3, // - 0x6698, 0x9DF6, // - 0x669D, 0x9DF7, // - 0x66A2, 0x92A8, // - 0x66A6, 0x97EF, // - 0x66AB, 0x8E62, // - 0x66AE, 0x95E9, // - 0x66B4, 0x965C, // - 0x66B8, 0x9E41, // - 0x66B9, 0x9DF9, // - 0x66BC, 0x9DFC, // - 0x66BE, 0x9DFB, // - 0x66C1, 0x9DF8, // - 0x66C4, 0x9E40, // - 0x66C7, 0x93DC, // - 0x66C9, 0x9DFA, // - 0x66D6, 0x9E42, // - 0x66D9, 0x8F8C, // - 0x66DA, 0x9E43, // - 0x66DC, 0x976A, // - 0x66DD, 0x9498, // - 0x66E0, 0x9E44, // - 0x66E6, 0x9E46, // - 0x66E9, 0x9E47, // - 0x66F0, 0x9E48, // - 0x66F2, 0x8BC8, // - 0x66F3, 0x8967, // - 0x66F4, 0x8D58, // - 0x66F5, 0x9E49, // - 0x66F7, 0x9E4A, // - 0x66F8, 0x8F91, // - 0x66F9, 0x9182, // - 0x66FC, 0x99D6, // - 0x66FD, 0x915D, // - 0x66FE, 0x915C, // - 0x66FF, 0x91D6, // - 0x6700, 0x8DC5, // - 0x6703, 0x98F0, // - 0x6708, 0x8C8E, // - 0x6709, 0x974C, // - 0x670B, 0x95FC, // - 0x670D, 0x959E, // - 0x670F, 0x9E4B, // - 0x6714, 0x8DF1, // - 0x6715, 0x92BD, // - 0x6716, 0x9E4C, // - 0x6717, 0x984E, // - 0x671B, 0x965D, // - 0x671D, 0x92A9, // - 0x671E, 0x9E4D, // - 0x671F, 0x8AFA, // - 0x6726, 0x9E4E, // - 0x6727, 0x9E4F, // - 0x6728, 0x96D8, // - 0x672A, 0x96A2, // - 0x672B, 0x9696, // - 0x672C, 0x967B, // - 0x672D, 0x8E44, // - 0x672E, 0x9E51, // - 0x6731, 0x8EE9, // - 0x6734, 0x9670, // - 0x6736, 0x9E53, // - 0x6737, 0x9E56, // - 0x6738, 0x9E55, // - 0x673A, 0x8AF7, // - 0x673D, 0x8B80, // - 0x673F, 0x9E52, // - 0x6741, 0x9E54, // - 0x6746, 0x9E57, // - 0x6749, 0x9099, // - 0x674E, 0x979B, // - 0x674F, 0x88C7, // - 0x6750, 0x8DDE, // - 0x6751, 0x91BA, // - 0x6753, 0x8EDB, // - 0x6756, 0x8FF1, // - 0x6759, 0x9E5A, // - 0x675C, 0x936D, // - 0x675E, 0x9E58, // - 0x675F, 0x91A9, // - 0x6760, 0x9E59, // - 0x6761, 0x8FF0, // - 0x6762, 0x96DB, // - 0x6764, 0x9E5C, // - 0x6765, 0x9788, // - 0x676A, 0x9E61, // - 0x676D, 0x8D59, // - 0x676F, 0x9474, // - 0x6770, 0x9E5E, // - 0x6771, 0x938C, // - 0x6772, 0x9DDC, // - 0x6773, 0x9DE0, // - 0x6775, 0x8B6E, // - 0x6777, 0x9466, // - 0x677C, 0x9E60, // - 0x677E, 0x8FBC, // - 0x677F, 0x94C2, // - 0x6785, 0x9E66, // - 0x6787, 0x94F8, // - 0x6789, 0x9E5D, // - 0x678B, 0x9E63, // - 0x678C, 0x9E62, // - 0x6790, 0x90CD, // - 0x6795, 0x968D, // - 0x6797, 0x97D1, // - 0x679A, 0x9687, // - 0x679C, 0x89CA, // - 0x679D, 0x8E7D, // - 0x67A0, 0x9867, // - 0x67A1, 0x9E65, // - 0x67A2, 0x9095, // - 0x67A6, 0x9E64, // - 0x67A9, 0x9E5F, // - 0x67AF, 0x8CCD, // - 0x67B3, 0x9E6B, // - 0x67B4, 0x9E69, // - 0x67B6, 0x89CB, // - 0x67B7, 0x9E67, // - 0x67B8, 0x9E6D, // - 0x67B9, 0x9E73, // - 0x67C1, 0x91C6, // - 0x67C4, 0x95BF, // - 0x67C6, 0x9E75, // - 0x67CA, 0x9541, // - 0x67CE, 0x9E74, // - 0x67CF, 0x9490, // - 0x67D0, 0x965E, // - 0x67D1, 0x8AB9, // - 0x67D3, 0x90F5, // - 0x67D4, 0x8F5F, // - 0x67D8, 0x92D1, // - 0x67DA, 0x974D, // - 0x67DD, 0x9E70, // - 0x67DE, 0x9E6F, // - 0x67E2, 0x9E71, // - 0x67E4, 0x9E6E, // - 0x67E7, 0x9E76, // - 0x67E9, 0x9E6C, // - 0x67EC, 0x9E6A, // - 0x67EE, 0x9E72, // - 0x67EF, 0x9E68, // - 0x67F1, 0x928C, // - 0x67F3, 0x96F6, // - 0x67F4, 0x8EC4, // - 0x67F5, 0x8DF2, // - 0x67FB, 0x8DB8, // - 0x67FE, 0x968F, // - 0x67FF, 0x8A60, // - 0x6802, 0x92CC, // - 0x6803, 0x93C8, // - 0x6804, 0x8968, // - 0x6813, 0x90F0, // - 0x6816, 0x90B2, // - 0x6817, 0x8C49, // - 0x681E, 0x9E78, // - 0x6821, 0x8D5A, // - 0x6822, 0x8A9C, // - 0x6829, 0x9E7A, // - 0x682A, 0x8A94, // - 0x682B, 0x9E81, // - 0x6832, 0x9E7D, // - 0x6834, 0x90F1, // - 0x6838, 0x8A6A, // - 0x6839, 0x8DAA, // - 0x683C, 0x8A69, // - 0x683D, 0x8DCD, // - 0x6840, 0x9E7B, // - 0x6841, 0x8C85, // - 0x6842, 0x8C6A, // - 0x6843, 0x938D, // - 0x6846, 0x9E79, // - 0x6848, 0x88C4, // - 0x684D, 0x9E7C, // - 0x684E, 0x9E7E, // - 0x6850, 0x8BCB, // - 0x6851, 0x8C4B, // - 0x6853, 0x8ABA, // - 0x6854, 0x8B6A, // - 0x6859, 0x9E82, // - 0x685C, 0x8DF7, // - 0x685D, 0x9691, // - 0x685F, 0x8E56, // - 0x6863, 0x9E83, // - 0x6867, 0x954F, // - 0x6874, 0x9E8F, // - 0x6876, 0x89B1, // - 0x6877, 0x9E84, // - 0x687E, 0x9E95, // - 0x687F, 0x9E85, // - 0x6881, 0x97C0, // - 0x6883, 0x9E8C, // - 0x6885, 0x947E, // - 0x688D, 0x9E94, // - 0x688F, 0x9E87, // - 0x6893, 0x88B2, // - 0x6894, 0x9E89, // - 0x689B, 0x9E8B, // - 0x689D, 0x9E8A, // - 0x689F, 0x9E86, // - 0x68A0, 0x9E91, // - 0x68A2, 0x8FBD, // - 0x68A6, 0x9AEB, // - 0x68A7, 0x8CE6, // - 0x68A8, 0x979C, // - 0x68AD, 0x9E88, // - 0x68AF, 0x92F2, // - 0x68B0, 0x8A42, // - 0x68B1, 0x8DAB, // - 0x68B3, 0x9E80, // - 0x68B5, 0x9E90, // - 0x68B6, 0x8A81, // - 0x68B9, 0x9E8E, // - 0x68BA, 0x9E92, // - 0x68BC, 0x938E, // - 0x68C4, 0x8AFC, // - 0x68C6, 0x9EB0, // - 0x68C9, 0x96C7, // - 0x68CA, 0x9E97, // - 0x68CB, 0x8AFB, // - 0x68CD, 0x9E9E, // - 0x68D2, 0x965F, // - 0x68D4, 0x9E9F, // - 0x68D5, 0x9EA1, // - 0x68D7, 0x9EA5, // - 0x68D8, 0x9E99, // - 0x68DA, 0x9249, // - 0x68DF, 0x938F, // - 0x68E0, 0x9EA9, // - 0x68E1, 0x9E9C, // - 0x68E3, 0x9EA6, // - 0x68E7, 0x9EA0, // - 0x68EE, 0x9058, // - 0x68EF, 0x9EAA, // - 0x68F2, 0x90B1, // - 0x68F9, 0x9EA8, // - 0x68FA, 0x8ABB, // - 0x6900, 0x986F, // - 0x6901, 0x9E96, // - 0x6904, 0x9EA4, // - 0x6905, 0x88D6, // - 0x6908, 0x9E98, // - 0x690B, 0x96B8, // - 0x690C, 0x9E9D, // - 0x690D, 0x9041, // - 0x690E, 0x92C5, // - 0x690F, 0x9E93, // - 0x6912, 0x9EA3, // - 0x6919, 0x909A, // - 0x691A, 0x9EAD, // - 0x691B, 0x8A91, // - 0x691C, 0x8C9F, // - 0x6921, 0x9EAF, // - 0x6922, 0x9E9A, // - 0x6923, 0x9EAE, // - 0x6925, 0x9EA7, // - 0x6926, 0x9E9B, // - 0x6928, 0x9EAB, // - 0x692A, 0x9EAC, // - 0x6930, 0x9EBD, // - 0x6934, 0x93CC, // - 0x6936, 0x9EA2, // - 0x6939, 0x9EB9, // - 0x693D, 0x9EBB, // - 0x693F, 0x92D6, // - 0x694A, 0x976B, // - 0x6953, 0x9596, // - 0x6954, 0x9EB6, // - 0x6955, 0x91C8, // - 0x6959, 0x9EBC, // - 0x695A, 0x915E, // - 0x695C, 0x9EB3, // - 0x695D, 0x9EC0, // - 0x695E, 0x9EBF, // - 0x6960, 0x93ED, // - 0x6961, 0x9EBE, // - 0x6962, 0x93E8, // - 0x696A, 0x9EC2, // - 0x696B, 0x9EB5, // - 0x696D, 0x8BC6, // - 0x696E, 0x9EB8, // - 0x696F, 0x8F7C, // - 0x6973, 0x9480, // - 0x6974, 0x9EBA, // - 0x6975, 0x8BC9, // - 0x6977, 0x9EB2, // - 0x6978, 0x9EB4, // - 0x6979, 0x9EB1, // - 0x697C, 0x984F, // - 0x697D, 0x8A79, // - 0x697E, 0x9EB7, // - 0x6981, 0x9EC1, // - 0x6982, 0x8A54, // - 0x698A, 0x8DE5, // - 0x698E, 0x897C, // - 0x6991, 0x9ED2, // - 0x6994, 0x9850, // - 0x6995, 0x9ED5, // - 0x699B, 0x9059, // - 0x699C, 0x9ED4, // - 0x69A0, 0x9ED3, // - 0x69A7, 0x9ED0, // - 0x69AE, 0x9EC4, // - 0x69B1, 0x9EE1, // - 0x69B2, 0x9EC3, // - 0x69B4, 0x9ED6, // - 0x69BB, 0x9ECE, // - 0x69BE, 0x9EC9, // - 0x69BF, 0x9EC6, // - 0x69C1, 0x9EC7, // - 0x69C3, 0x9ECF, // - 0x69C7, 0xEAA0, // - 0x69CA, 0x9ECC, // - 0x69CB, 0x8D5C, // - 0x69CC, 0x92C6, // - 0x69CD, 0x9184, // - 0x69CE, 0x9ECA, // - 0x69D0, 0x9EC5, // - 0x69D3, 0x9EC8, // - 0x69D8, 0x976C, // - 0x69D9, 0x968A, // - 0x69DD, 0x9ECD, // - 0x69DE, 0x9ED7, // - 0x69E7, 0x9EDF, // - 0x69E8, 0x9ED8, // - 0x69EB, 0x9EE5, // - 0x69ED, 0x9EE3, // - 0x69F2, 0x9EDE, // - 0x69F9, 0x9EDD, // - 0x69FB, 0x92CE, // - 0x69FD, 0x9185, // - 0x69FF, 0x9EDB, // - 0x6A02, 0x9ED9, // - 0x6A05, 0x9EE0, // - 0x6A0A, 0x9EE6, // - 0x6A0B, 0x94F3, // - 0x6A0C, 0x9EEC, // - 0x6A12, 0x9EE7, // - 0x6A13, 0x9EEA, // - 0x6A14, 0x9EE4, // - 0x6A17, 0x9294, // - 0x6A19, 0x9557, // - 0x6A1B, 0x9EDA, // - 0x6A1E, 0x9EE2, // - 0x6A1F, 0x8FBE, // - 0x6A21, 0x96CD, // - 0x6A22, 0x9EF6, // - 0x6A23, 0x9EE9, // - 0x6A29, 0x8CA0, // - 0x6A2A, 0x89A1, // - 0x6A2B, 0x8A7E, // - 0x6A2E, 0x9ED1, // - 0x6A35, 0x8FBF, // - 0x6A36, 0x9EEE, // - 0x6A38, 0x9EF5, // - 0x6A39, 0x8EF7, // - 0x6A3A, 0x8A92, // - 0x6A3D, 0x924D, // - 0x6A44, 0x9EEB, // - 0x6A47, 0x9EF0, // - 0x6A48, 0x9EF4, // - 0x6A4B, 0x8BB4, // - 0x6A58, 0x8B6B, // - 0x6A59, 0x9EF2, // - 0x6A5F, 0x8B40, // - 0x6A61, 0x93C9, // - 0x6A62, 0x9EF1, // - 0x6A66, 0x9EF3, // - 0x6A72, 0x9EED, // - 0x6A78, 0x9EEF, // - 0x6A7F, 0x8A80, // - 0x6A80, 0x9268, // - 0x6A84, 0x9EFA, // - 0x6A8D, 0x9EF8, // - 0x6A8E, 0x8CE7, // - 0x6A90, 0x9EF7, // - 0x6A97, 0x9F40, // - 0x6A9C, 0x9E77, // - 0x6AA0, 0x9EF9, // - 0x6AA2, 0x9EFB, // - 0x6AA3, 0x9EFC, // - 0x6AAA, 0x9F4B, // - 0x6AAC, 0x9F47, // - 0x6AAE, 0x9E8D, // - 0x6AB3, 0x9F46, // - 0x6AB8, 0x9F45, // - 0x6ABB, 0x9F42, // - 0x6AC1, 0x9EE8, // - 0x6AC2, 0x9F44, // - 0x6AC3, 0x9F43, // - 0x6AD1, 0x9F49, // - 0x6AD3, 0x9845, // - 0x6ADA, 0x9F4C, // - 0x6ADB, 0x8BF9, // - 0x6ADE, 0x9F48, // - 0x6ADF, 0x9F4A, // - 0x6AE8, 0x94A5, // - 0x6AEA, 0x9F4D, // - 0x6AFA, 0x9F51, // - 0x6AFB, 0x9F4E, // - 0x6B04, 0x9793, // - 0x6B05, 0x9F4F, // - 0x6B0A, 0x9EDC, // - 0x6B12, 0x9F52, // - 0x6B16, 0x9F53, // - 0x6B1D, 0x8954, // - 0x6B1F, 0x9F55, // - 0x6B20, 0x8C87, // - 0x6B21, 0x8E9F, // - 0x6B23, 0x8BD3, // - 0x6B27, 0x89A2, // - 0x6B32, 0x977E, // - 0x6B37, 0x9F57, // - 0x6B38, 0x9F56, // - 0x6B39, 0x9F59, // - 0x6B3A, 0x8B5C, // - 0x6B3D, 0x8BD4, // - 0x6B3E, 0x8ABC, // - 0x6B43, 0x9F5C, // - 0x6B49, 0x9F5D, // - 0x6B4C, 0x89CC, // - 0x6B4E, 0x9256, // - 0x6B50, 0x9F5E, // - 0x6B53, 0x8ABD, // - 0x6B54, 0x9F60, // - 0x6B59, 0x9F5F, // - 0x6B5B, 0x9F61, // - 0x6B5F, 0x9F62, // - 0x6B61, 0x9F63, // - 0x6B62, 0x8E7E, // - 0x6B63, 0x90B3, // - 0x6B64, 0x8D9F, // - 0x6B66, 0x9590, // - 0x6B69, 0x95E0, // - 0x6B6A, 0x9863, // - 0x6B6F, 0x8E95, // - 0x6B73, 0x8DCE, // - 0x6B74, 0x97F0, // - 0x6B78, 0x9F64, // - 0x6B79, 0x9F65, // - 0x6B7B, 0x8E80, // - 0x6B7F, 0x9F66, // - 0x6B80, 0x9F67, // - 0x6B83, 0x9F69, // - 0x6B84, 0x9F68, // - 0x6B86, 0x9677, // - 0x6B89, 0x8F7D, // - 0x6B8A, 0x8EEA, // - 0x6B8B, 0x8E63, // - 0x6B8D, 0x9F6A, // - 0x6B95, 0x9F6C, // - 0x6B96, 0x9042, // - 0x6B98, 0x9F6B, // - 0x6B9E, 0x9F6D, // - 0x6BA4, 0x9F6E, // - 0x6BAA, 0x9F6F, // - 0x6BAB, 0x9F70, // - 0x6BAF, 0x9F71, // - 0x6BB1, 0x9F73, // - 0x6BB2, 0x9F72, // - 0x6BB3, 0x9F74, // - 0x6BB4, 0x89A3, // - 0x6BB5, 0x9269, // - 0x6BB7, 0x9F75, // - 0x6BBA, 0x8E45, // - 0x6BBB, 0x8A6B, // - 0x6BBC, 0x9F76, // - 0x6BBF, 0x9361, // - 0x6BC0, 0x9ACA, // - 0x6BC5, 0x8B42, // - 0x6BC6, 0x9F77, // - 0x6BCB, 0x9F78, // - 0x6BCD, 0x95EA, // - 0x6BCE, 0x9688, // - 0x6BD2, 0x93C5, // - 0x6BD3, 0x9F79, // - 0x6BD4, 0x94E4, // - 0x6BD8, 0x94F9, // - 0x6BDB, 0x96D1, // - 0x6BDF, 0x9F7A, // - 0x6BEB, 0x9F7C, // - 0x6BEC, 0x9F7B, // - 0x6BEF, 0x9F7E, // - 0x6BF3, 0x9F7D, // - 0x6C08, 0x9F81, // - 0x6C0F, 0x8E81, // - 0x6C11, 0x96AF, // - 0x6C13, 0x9F82, // - 0x6C14, 0x9F83, // - 0x6C17, 0x8B43, // - 0x6C1B, 0x9F84, // - 0x6C23, 0x9F86, // - 0x6C24, 0x9F85, // - 0x6C34, 0x9085, // - 0x6C37, 0x9558, // - 0x6C38, 0x8969, // - 0x6C3E, 0x94C3, // - 0x6C40, 0x92F3, // - 0x6C41, 0x8F60, // - 0x6C42, 0x8B81, // - 0x6C4E, 0x94C4, // - 0x6C50, 0x8EAC, // - 0x6C55, 0x9F88, // - 0x6C57, 0x8ABE, // - 0x6C5A, 0x8998, // - 0x6C5D, 0x93F0, // - 0x6C5E, 0x9F87, // - 0x6C5F, 0x8D5D, // - 0x6C60, 0x9272, // - 0x6C62, 0x9F89, // - 0x6C68, 0x9F91, // - 0x6C6A, 0x9F8A, // - 0x6C70, 0x91BF, // - 0x6C72, 0x8B82, // - 0x6C73, 0x9F92, // - 0x6C7A, 0x8C88, // - 0x6C7D, 0x8B44, // - 0x6C7E, 0x9F90, // - 0x6C81, 0x9F8E, // - 0x6C82, 0x9F8B, // - 0x6C83, 0x9780, // - 0x6C88, 0x92BE, // - 0x6C8C, 0x93D7, // - 0x6C8D, 0x9F8C, // - 0x6C90, 0x9F94, // - 0x6C92, 0x9F93, // - 0x6C93, 0x8C42, // - 0x6C96, 0x89AB, // - 0x6C99, 0x8DB9, // - 0x6C9A, 0x9F8D, // - 0x6C9B, 0x9F8F, // - 0x6CA1, 0x9676, // - 0x6CA2, 0x91F2, // - 0x6CAB, 0x9697, // - 0x6CAE, 0x9F9C, // - 0x6CB1, 0x9F9D, // - 0x6CB3, 0x89CD, // - 0x6CB8, 0x95A6, // - 0x6CB9, 0x96FB, // - 0x6CBA, 0x9F9F, // - 0x6CBB, 0x8EA1, // - 0x6CBC, 0x8FC0, // - 0x6CBD, 0x9F98, // - 0x6CBE, 0x9F9E, // - 0x6CBF, 0x8988, // - 0x6CC1, 0x8BB5, // - 0x6CC4, 0x9F95, // - 0x6CC5, 0x9F9A, // - 0x6CC9, 0x90F2, // - 0x6CCA, 0x9491, // - 0x6CCC, 0x94E5, // - 0x6CD3, 0x9F97, // - 0x6CD5, 0x9640, // - 0x6CD7, 0x9F99, // - 0x6CD9, 0x9FA2, // - 0x6CDB, 0x9FA0, // - 0x6CDD, 0x9F9B, // - 0x6CE1, 0x9641, // - 0x6CE2, 0x9467, // - 0x6CE3, 0x8B83, // - 0x6CE5, 0x9344, // - 0x6CE8, 0x928D, // - 0x6CEA, 0x9FA3, // - 0x6CEF, 0x9FA1, // - 0x6CF0, 0x91D7, // - 0x6CF1, 0x9F96, // - 0x6CF3, 0x896A, // - 0x6D0B, 0x976D, // - 0x6D0C, 0x9FAE, // - 0x6D12, 0x9FAD, // - 0x6D17, 0x90F4, // - 0x6D19, 0x9FAA, // - 0x6D1B, 0x978C, // - 0x6D1E, 0x93B4, // - 0x6D1F, 0x9FA4, // - 0x6D25, 0x92C3, // - 0x6D29, 0x896B, // - 0x6D2A, 0x8D5E, // - 0x6D2B, 0x9FA7, // - 0x6D32, 0x8F46, // - 0x6D33, 0x9FAC, // - 0x6D35, 0x9FAB, // - 0x6D36, 0x9FA6, // - 0x6D38, 0x9FA9, // - 0x6D3B, 0x8A88, // - 0x6D3D, 0x9FA8, // - 0x6D3E, 0x9468, // - 0x6D41, 0x97AC, // - 0x6D44, 0x8FF2, // - 0x6D45, 0x90F3, // - 0x6D59, 0x9FB4, // - 0x6D5A, 0x9FB2, // - 0x6D5C, 0x956C, // - 0x6D63, 0x9FAF, // - 0x6D64, 0x9FB1, // - 0x6D66, 0x8959, // - 0x6D69, 0x8D5F, // - 0x6D6A, 0x9851, // - 0x6D6C, 0x8A5C, // - 0x6D6E, 0x9582, // - 0x6D74, 0x9781, // - 0x6D77, 0x8A43, // - 0x6D78, 0x905A, // - 0x6D79, 0x9FB3, // - 0x6D85, 0x9FB8, // - 0x6D88, 0x8FC1, // - 0x6D8C, 0x974F, // - 0x6D8E, 0x9FB5, // - 0x6D93, 0x9FB0, // - 0x6D95, 0x9FB6, // - 0x6D99, 0x97DC, // - 0x6D9B, 0x9393, // - 0x6D9C, 0x93C0, // - 0x6DAF, 0x8A55, // - 0x6DB2, 0x8974, // - 0x6DB5, 0x9FBC, // - 0x6DB8, 0x9FBF, // - 0x6DBC, 0x97C1, // - 0x6DC0, 0x9784, // - 0x6DC5, 0x9FC6, // - 0x6DC6, 0x9FC0, // - 0x6DC7, 0x9FBD, // - 0x6DCB, 0x97D2, // - 0x6DCC, 0x9FC3, // - 0x6DD1, 0x8F69, // - 0x6DD2, 0x9FC5, // - 0x6DD5, 0x9FCA, // - 0x6DD8, 0x9391, // - 0x6DD9, 0x9FC8, // - 0x6DDE, 0x9FC2, // - 0x6DE1, 0x9257, // - 0x6DE4, 0x9FC9, // - 0x6DE6, 0x9FBE, // - 0x6DE8, 0x9FC4, // - 0x6DEA, 0x9FCB, // - 0x6DEB, 0x88FA, // - 0x6DEC, 0x9FC1, // - 0x6DEE, 0x9FCC, // - 0x6DF3, 0x8F7E, // - 0x6DF5, 0x95A3, // - 0x6DF7, 0x8DAC, // - 0x6DF9, 0x9FB9, // - 0x6DFA, 0x9FC7, // - 0x6DFB, 0x9359, // - 0x6E05, 0x90B4, // - 0x6E07, 0x8A89, // - 0x6E08, 0x8DCF, // - 0x6E09, 0x8FC2, // - 0x6E0A, 0x9FBB, // - 0x6E0B, 0x8F61, // - 0x6E13, 0x8C6B, // - 0x6E15, 0x9FBA, // - 0x6E19, 0x9FD0, // - 0x6E1A, 0x8F8D, // - 0x6E1B, 0x8CB8, // - 0x6E1D, 0x9FDF, // - 0x6E1F, 0x9FD9, // - 0x6E20, 0x8B94, // - 0x6E21, 0x936E, // - 0x6E23, 0x9FD4, // - 0x6E24, 0x9FDD, // - 0x6E25, 0x88AD, // - 0x6E26, 0x8951, // - 0x6E29, 0x89B7, // - 0x6E2B, 0x9FD6, // - 0x6E2C, 0x91AA, // - 0x6E2D, 0x9FCD, // - 0x6E2E, 0x9FCF, // - 0x6E2F, 0x8D60, // - 0x6E38, 0x9FE0, // - 0x6E3A, 0x9FDB, // - 0x6E3E, 0x9FD3, // - 0x6E43, 0x9FDA, // - 0x6E4A, 0x96A9, // - 0x6E4D, 0x9FD8, // - 0x6E4E, 0x9FDC, // - 0x6E56, 0x8CCE, // - 0x6E58, 0x8FC3, // - 0x6E5B, 0x9258, // - 0x6E5F, 0x9FD2, // - 0x6E67, 0x974E, // - 0x6E6B, 0x9FD5, // - 0x6E6E, 0x9FCE, // - 0x6E6F, 0x9392, // - 0x6E72, 0x9FD1, // - 0x6E76, 0x9FD7, // - 0x6E7E, 0x9870, // - 0x6E7F, 0x8EBC, // - 0x6E80, 0x969E, // - 0x6E82, 0x9FE1, // - 0x6E8C, 0x94AC, // - 0x6E8F, 0x9FED, // - 0x6E90, 0x8CB9, // - 0x6E96, 0x8F80, // - 0x6E98, 0x9FE3, // - 0x6E9C, 0x97AD, // - 0x6E9D, 0x8D61, // - 0x6E9F, 0x9FF0, // - 0x6EA2, 0x88EC, // - 0x6EA5, 0x9FEE, // - 0x6EAA, 0x9FE2, // - 0x6EAF, 0x9FE8, // - 0x6EB2, 0x9FEA, // - 0x6EB6, 0x976E, // - 0x6EB7, 0x9FE5, // - 0x6EBA, 0x934D, // - 0x6EBD, 0x9FE7, // - 0x6EC2, 0x9FEF, // - 0x6EC4, 0x9FE9, // - 0x6EC5, 0x96C5, // - 0x6EC9, 0x9FE4, // - 0x6ECB, 0x8EA0, // - 0x6ECC, 0x9FFC, // - 0x6ED1, 0x8A8A, // - 0x6ED3, 0x9FE6, // - 0x6ED4, 0x9FEB, // - 0x6ED5, 0x9FEC, // - 0x6EDD, 0x91EA, // - 0x6EDE, 0x91D8, // - 0x6EEC, 0x9FF4, // - 0x6EEF, 0x9FFA, // - 0x6EF2, 0x9FF8, // - 0x6EF4, 0x9348, // - 0x6EF7, 0xE042, // - 0x6EF8, 0x9FF5, // - 0x6EFE, 0x9FF6, // - 0x6EFF, 0x9FDE, // - 0x6F01, 0x8B99, // - 0x6F02, 0x9559, // - 0x6F06, 0x8EBD, // - 0x6F09, 0x8D97, // - 0x6F0F, 0x9852, // - 0x6F11, 0x9FF2, // - 0x6F13, 0xE041, // - 0x6F14, 0x8989, // - 0x6F15, 0x9186, // - 0x6F20, 0x9499, // - 0x6F22, 0x8ABF, // - 0x6F23, 0x97F8, // - 0x6F2B, 0x969F, // - 0x6F2C, 0x92D0, // - 0x6F31, 0x9FF9, // - 0x6F32, 0x9FFB, // - 0x6F38, 0x9151, // - 0x6F3E, 0xE040, // - 0x6F3F, 0x9FF7, // - 0x6F41, 0x9FF1, // - 0x6F45, 0x8AC1, // - 0x6F54, 0x8C89, // - 0x6F58, 0xE04E, // - 0x6F5B, 0xE049, // - 0x6F5C, 0x90F6, // - 0x6F5F, 0x8A83, // - 0x6F64, 0x8F81, // - 0x6F66, 0xE052, // - 0x6F6D, 0xE04B, // - 0x6F6E, 0x92AA, // - 0x6F6F, 0xE048, // - 0x6F70, 0x92D7, // - 0x6F74, 0xE06B, // - 0x6F78, 0xE045, // - 0x6F7A, 0xE044, // - 0x6F7C, 0xE04D, // - 0x6F80, 0xE047, // - 0x6F81, 0xE046, // - 0x6F82, 0xE04C, // - 0x6F84, 0x909F, // - 0x6F86, 0xE043, // - 0x6F8E, 0xE04F, // - 0x6F91, 0xE050, // - 0x6F97, 0x8AC0, // - 0x6FA1, 0xE055, // - 0x6FA3, 0xE054, // - 0x6FA4, 0xE056, // - 0x6FAA, 0xE059, // - 0x6FB1, 0x9362, // - 0x6FB3, 0xE053, // - 0x6FB9, 0xE057, // - 0x6FC0, 0x8C83, // - 0x6FC1, 0x91F7, // - 0x6FC2, 0xE051, // - 0x6FC3, 0x945A, // - 0x6FC6, 0xE058, // - 0x6FD4, 0xE05D, // - 0x6FD8, 0xE05E, // - 0x6FDB, 0xE061, // - 0x6FDF, 0xE05A, // - 0x6FE0, 0x8D8A, // - 0x6FE1, 0x9447, // - 0x6FE4, 0x9FB7, // - 0x6FEB, 0x9794, // - 0x6FEC, 0xE05C, // - 0x6FEE, 0xE060, // - 0x6FEF, 0x91F3, // - 0x6FF1, 0xE05F, // - 0x6FF3, 0xE04A, // - 0x6FF6, 0xE889, // - 0x6FFA, 0xE064, // - 0x6FFE, 0xE068, // - 0x7001, 0xE066, // - 0x7009, 0xE062, // - 0x700B, 0xE063, // - 0x700F, 0xE067, // - 0x7011, 0xE065, // - 0x7015, 0x956D, // - 0x7018, 0xE06D, // - 0x701A, 0xE06A, // - 0x701B, 0xE069, // - 0x701D, 0xE06C, // - 0x701E, 0x93D2, // - 0x701F, 0xE06E, // - 0x7026, 0x9295, // - 0x7027, 0x91EB, // - 0x702C, 0x90A3, // - 0x7030, 0xE06F, // - 0x7032, 0xE071, // - 0x703E, 0xE070, // - 0x704C, 0x9FF3, // - 0x7051, 0xE072, // - 0x7058, 0x93E5, // - 0x7063, 0xE073, // - 0x706B, 0x89CE, // - 0x706F, 0x9394, // - 0x7070, 0x8A44, // - 0x7078, 0x8B84, // - 0x707C, 0x8EDC, // - 0x707D, 0x8DD0, // - 0x7089, 0x9846, // - 0x708A, 0x9086, // - 0x708E, 0x898A, // - 0x7092, 0xE075, // - 0x7099, 0xE074, // - 0x70AC, 0xE078, // - 0x70AD, 0x9259, // - 0x70AE, 0xE07B, // - 0x70AF, 0xE076, // - 0x70B3, 0xE07A, // - 0x70B8, 0xE079, // - 0x70B9, 0x935F, // - 0x70BA, 0x88D7, // - 0x70C8, 0x97F3, // - 0x70CB, 0xE07D, // - 0x70CF, 0x8947, // - 0x70D9, 0xE080, // - 0x70DD, 0xE07E, // - 0x70DF, 0xE07C, // - 0x70F1, 0xE077, // - 0x70F9, 0x9642, // - 0x70FD, 0xE082, // - 0x7109, 0xE081, // - 0x7114, 0x898B, // - 0x7119, 0xE084, // - 0x711A, 0x95B0, // - 0x711C, 0xE083, // - 0x7121, 0x96B3, // - 0x7126, 0x8FC5, // - 0x7136, 0x9152, // - 0x713C, 0x8FC4, // - 0x7149, 0x97F9, // - 0x714C, 0xE08A, // - 0x714E, 0x90F7, // - 0x7155, 0xE086, // - 0x7156, 0xE08B, // - 0x7159, 0x898C, // - 0x7162, 0xE089, // - 0x7164, 0x9481, // - 0x7165, 0xE085, // - 0x7166, 0xE088, // - 0x7167, 0x8FC6, // - 0x7169, 0x94CF, // - 0x716C, 0xE08C, // - 0x716E, 0x8ECF, // - 0x717D, 0x90F8, // - 0x7184, 0xE08F, // - 0x7188, 0xE087, // - 0x718A, 0x8C46, // - 0x718F, 0xE08D, // - 0x7194, 0x976F, // - 0x7195, 0xE090, // - 0x7199, 0xEAA4, // - 0x719F, 0x8F6E, // - 0x71A8, 0xE091, // - 0x71AC, 0xE092, // - 0x71B1, 0x944D, // - 0x71B9, 0xE094, // - 0x71BE, 0xE095, // - 0x71C3, 0x9452, // - 0x71C8, 0x9395, // - 0x71C9, 0xE097, // - 0x71CE, 0xE099, // - 0x71D0, 0x97D3, // - 0x71D2, 0xE096, // - 0x71D4, 0xE098, // - 0x71D5, 0x898D, // - 0x71D7, 0xE093, // - 0x71DF, 0x9A7A, // - 0x71E0, 0xE09A, // - 0x71E5, 0x9187, // - 0x71E6, 0x8E57, // - 0x71E7, 0xE09C, // - 0x71EC, 0xE09B, // - 0x71ED, 0x9043, // - 0x71EE, 0x99D7, // - 0x71F5, 0xE09D, // - 0x71F9, 0xE09F, // - 0x71FB, 0xE08E, // - 0x71FC, 0xE09E, // - 0x71FF, 0xE0A0, // - 0x7206, 0x949A, // - 0x720D, 0xE0A1, // - 0x7210, 0xE0A2, // - 0x721B, 0xE0A3, // - 0x7228, 0xE0A4, // - 0x722A, 0x92DC, // - 0x722C, 0xE0A6, // - 0x722D, 0xE0A5, // - 0x7230, 0xE0A7, // - 0x7232, 0xE0A8, // - 0x7235, 0x8EDD, // - 0x7236, 0x9583, // - 0x723A, 0x96EA, // - 0x723B, 0xE0A9, // - 0x723C, 0xE0AA, // - 0x723D, 0x9175, // - 0x723E, 0x8EA2, // - 0x723F, 0xE0AB, // - 0x7240, 0xE0AC, // - 0x7246, 0xE0AD, // - 0x7247, 0x95D0, // - 0x7248, 0x94C5, // - 0x724B, 0xE0AE, // - 0x724C, 0x9476, // - 0x7252, 0x92AB, // - 0x7258, 0xE0AF, // - 0x7259, 0x89E5, // - 0x725B, 0x8B8D, // - 0x725D, 0x96C4, // - 0x725F, 0x96B4, // - 0x7261, 0x89B2, // - 0x7262, 0x9853, // - 0x7267, 0x9671, // - 0x7269, 0x95A8, // - 0x7272, 0x90B5, // - 0x7274, 0xE0B0, // - 0x7279, 0x93C1, // - 0x727D, 0x8CA1, // - 0x727E, 0xE0B1, // - 0x7280, 0x8DD2, // - 0x7281, 0xE0B3, // - 0x7282, 0xE0B2, // - 0x7287, 0xE0B4, // - 0x7292, 0xE0B5, // - 0x7296, 0xE0B6, // - 0x72A0, 0x8B5D, // - 0x72A2, 0xE0B7, // - 0x72A7, 0xE0B8, // - 0x72AC, 0x8CA2, // - 0x72AF, 0x94C6, // - 0x72B2, 0xE0BA, // - 0x72B6, 0x8FF3, // - 0x72B9, 0xE0B9, // - 0x72C2, 0x8BB6, // - 0x72C3, 0xE0BB, // - 0x72C4, 0xE0BD, // - 0x72C6, 0xE0BC, // - 0x72CE, 0xE0BE, // - 0x72D0, 0x8CCF, // - 0x72D2, 0xE0BF, // - 0x72D7, 0x8BE7, // - 0x72D9, 0x915F, // - 0x72DB, 0x8D9D, // - 0x72E0, 0xE0C1, // - 0x72E1, 0xE0C2, // - 0x72E2, 0xE0C0, // - 0x72E9, 0x8EEB, // - 0x72EC, 0x93C6, // - 0x72ED, 0x8BB7, // - 0x72F7, 0xE0C4, // - 0x72F8, 0x924B, // - 0x72F9, 0xE0C3, // - 0x72FC, 0x9854, // - 0x72FD, 0x9482, // - 0x730A, 0xE0C7, // - 0x7316, 0xE0C9, // - 0x7317, 0xE0C6, // - 0x731B, 0x96D2, // - 0x731C, 0xE0C8, // - 0x731D, 0xE0CA, // - 0x731F, 0x97C2, // - 0x7325, 0xE0CE, // - 0x7329, 0xE0CD, // - 0x732A, 0x9296, // - 0x732B, 0x944C, // - 0x732E, 0x8CA3, // - 0x732F, 0xE0CC, // - 0x7334, 0xE0CB, // - 0x7336, 0x9750, // - 0x7337, 0x9751, // - 0x733E, 0xE0CF, // - 0x733F, 0x898E, // - 0x7344, 0x8D96, // - 0x7345, 0x8E82, // - 0x734E, 0xE0D0, // - 0x734F, 0xE0D1, // - 0x7357, 0xE0D3, // - 0x7363, 0x8F62, // - 0x7368, 0xE0D5, // - 0x736A, 0xE0D4, // - 0x7370, 0xE0D6, // - 0x7372, 0x8A6C, // - 0x7375, 0xE0D8, // - 0x7378, 0xE0D7, // - 0x737A, 0xE0DA, // - 0x737B, 0xE0D9, // - 0x7384, 0x8CBA, // - 0x7387, 0x97A6, // - 0x7389, 0x8BCA, // - 0x738B, 0x89A4, // - 0x7396, 0x8BE8, // - 0x73A9, 0x8ADF, // - 0x73B2, 0x97E6, // - 0x73B3, 0xE0DC, // - 0x73BB, 0xE0DE, // - 0x73C0, 0xE0DF, // - 0x73C2, 0x89CF, // - 0x73C8, 0xE0DB, // - 0x73CA, 0x8E58, // - 0x73CD, 0x92BF, // - 0x73CE, 0xE0DD, // - 0x73DE, 0xE0E2, // - 0x73E0, 0x8EEC, // - 0x73E5, 0xE0E0, // - 0x73EA, 0x8C5D, // - 0x73ED, 0x94C7, // - 0x73EE, 0xE0E1, // - 0x73F1, 0xE0FC, // - 0x73F8, 0xE0E7, // - 0x73FE, 0x8CBB, // - 0x7403, 0x8B85, // - 0x7405, 0xE0E4, // - 0x7406, 0x979D, // - 0x7409, 0x97AE, // - 0x7422, 0x91F4, // - 0x7425, 0xE0E6, // - 0x7432, 0xE0E8, // - 0x7433, 0x97D4, // - 0x7434, 0x8BD5, // - 0x7435, 0x94FA, // - 0x7436, 0x9469, // - 0x743A, 0xE0E9, // - 0x743F, 0xE0EB, // - 0x7441, 0xE0EE, // - 0x7455, 0xE0EA, // - 0x7459, 0xE0ED, // - 0x745A, 0x8CE8, // - 0x745B, 0x896C, // - 0x745C, 0xE0EF, // - 0x745E, 0x9090, // - 0x745F, 0xE0EC, // - 0x7460, 0x97DA, // - 0x7463, 0xE0F2, // - 0x7464, 0xEAA2, // - 0x7469, 0xE0F0, // - 0x746A, 0xE0F3, // - 0x746F, 0xE0E5, // - 0x7470, 0xE0F1, // - 0x7473, 0x8DBA, // - 0x7476, 0xE0F4, // - 0x747E, 0xE0F5, // - 0x7483, 0x979E, // - 0x748B, 0xE0F6, // - 0x749E, 0xE0F7, // - 0x74A2, 0xE0E3, // - 0x74A7, 0xE0F8, // - 0x74B0, 0x8AC2, // - 0x74BD, 0x8EA3, // - 0x74CA, 0xE0F9, // - 0x74CF, 0xE0FA, // - 0x74D4, 0xE0FB, // - 0x74DC, 0x895A, // - 0x74E0, 0xE140, // - 0x74E2, 0x955A, // - 0x74E3, 0xE141, // - 0x74E6, 0x8AA2, // - 0x74E7, 0xE142, // - 0x74E9, 0xE143, // - 0x74EE, 0xE144, // - 0x74F0, 0xE146, // - 0x74F1, 0xE147, // - 0x74F2, 0xE145, // - 0x74F6, 0x9572, // - 0x74F7, 0xE149, // - 0x74F8, 0xE148, // - 0x7503, 0xE14B, // - 0x7504, 0xE14A, // - 0x7505, 0xE14C, // - 0x750C, 0xE14D, // - 0x750D, 0xE14F, // - 0x750E, 0xE14E, // - 0x7511, 0x8D99, // - 0x7513, 0xE151, // - 0x7515, 0xE150, // - 0x7518, 0x8AC3, // - 0x751A, 0x9072, // - 0x751E, 0xE152, // - 0x751F, 0x90B6, // - 0x7523, 0x8E59, // - 0x7525, 0x8999, // - 0x7526, 0xE153, // - 0x7528, 0x9770, // - 0x752B, 0x95E1, // - 0x752C, 0xE154, // - 0x7530, 0x9363, // - 0x7531, 0x9752, // - 0x7532, 0x8D62, // - 0x7533, 0x905C, // - 0x7537, 0x926A, // - 0x7538, 0x99B2, // - 0x753A, 0x92AC, // - 0x753B, 0x89E6, // - 0x753C, 0xE155, // - 0x7544, 0xE156, // - 0x7549, 0xE159, // - 0x754A, 0xE158, // - 0x754B, 0x9DC0, // - 0x754C, 0x8A45, // - 0x754D, 0xE157, // - 0x754F, 0x88D8, // - 0x7551, 0x94A8, // - 0x7554, 0x94C8, // - 0x7559, 0x97AF, // - 0x755A, 0xE15C, // - 0x755B, 0xE15A, // - 0x755C, 0x927B, // - 0x755D, 0x90A4, // - 0x7560, 0x94A9, // - 0x7562, 0x954C, // - 0x7564, 0xE15E, // - 0x7565, 0x97AA, // - 0x7566, 0x8C6C, // - 0x7567, 0xE15F, // - 0x7569, 0xE15D, // - 0x756A, 0x94D4, // - 0x756B, 0xE160, // - 0x756D, 0xE161, // - 0x7570, 0x88D9, // - 0x7573, 0x8FF4, // - 0x7574, 0xE166, // - 0x7576, 0xE163, // - 0x7577, 0x93EB, // - 0x7578, 0xE162, // - 0x757F, 0x8B45, // - 0x7582, 0xE169, // - 0x7586, 0xE164, // - 0x7587, 0xE165, // - 0x7589, 0xE168, // - 0x758A, 0xE167, // - 0x758B, 0x9544, // - 0x758E, 0x9161, // - 0x758F, 0x9160, // - 0x7591, 0x8B5E, // - 0x7594, 0xE16A, // - 0x759A, 0xE16B, // - 0x759D, 0xE16C, // - 0x75A3, 0xE16E, // - 0x75A5, 0xE16D, // - 0x75AB, 0x8975, // - 0x75B1, 0xE176, // - 0x75B2, 0x94E6, // - 0x75B3, 0xE170, // - 0x75B5, 0xE172, // - 0x75B8, 0xE174, // - 0x75B9, 0x905D, // - 0x75BC, 0xE175, // - 0x75BD, 0xE173, // - 0x75BE, 0x8EBE, // - 0x75C2, 0xE16F, // - 0x75C3, 0xE171, // - 0x75C5, 0x9561, // - 0x75C7, 0x8FC7, // - 0x75CA, 0xE178, // - 0x75CD, 0xE177, // - 0x75D2, 0xE179, // - 0x75D4, 0x8EA4, // - 0x75D5, 0x8DAD, // - 0x75D8, 0x9397, // - 0x75D9, 0xE17A, // - 0x75DB, 0x92C9, // - 0x75DE, 0xE17C, // - 0x75E2, 0x979F, // - 0x75E3, 0xE17B, // - 0x75E9, 0x9189, // - 0x75F0, 0xE182, // - 0x75F2, 0xE184, // - 0x75F3, 0xE185, // - 0x75F4, 0x9273, // - 0x75FA, 0xE183, // - 0x75FC, 0xE180, // - 0x75FE, 0xE17D, // - 0x75FF, 0xE17E, // - 0x7601, 0xE181, // - 0x7609, 0xE188, // - 0x760B, 0xE186, // - 0x760D, 0xE187, // - 0x761F, 0xE189, // - 0x7620, 0xE18B, // - 0x7621, 0xE18C, // - 0x7622, 0xE18D, // - 0x7624, 0xE18E, // - 0x7627, 0xE18A, // - 0x7630, 0xE190, // - 0x7634, 0xE18F, // - 0x763B, 0xE191, // - 0x7642, 0x97C3, // - 0x7646, 0xE194, // - 0x7647, 0xE192, // - 0x7648, 0xE193, // - 0x764C, 0x8AE0, // - 0x7652, 0x96FC, // - 0x7656, 0x95C8, // - 0x7658, 0xE196, // - 0x765C, 0xE195, // - 0x7661, 0xE197, // - 0x7662, 0xE198, // - 0x7667, 0xE19C, // - 0x7668, 0xE199, // - 0x7669, 0xE19A, // - 0x766A, 0xE19B, // - 0x766C, 0xE19D, // - 0x7670, 0xE19E, // - 0x7672, 0xE19F, // - 0x7676, 0xE1A0, // - 0x7678, 0xE1A1, // - 0x767A, 0x94AD, // - 0x767B, 0x936F, // - 0x767C, 0xE1A2, // - 0x767D, 0x9492, // - 0x767E, 0x9553, // - 0x7680, 0xE1A3, // - 0x7683, 0xE1A4, // - 0x7684, 0x9349, // - 0x7686, 0x8A46, // - 0x7687, 0x8D63, // - 0x7688, 0xE1A5, // - 0x768B, 0xE1A6, // - 0x768E, 0xE1A7, // - 0x7690, 0x8E48, // - 0x7693, 0xE1A9, // - 0x7696, 0xE1A8, // - 0x7699, 0xE1AA, // - 0x769A, 0xE1AB, // - 0x76AE, 0x94E7, // - 0x76B0, 0xE1AC, // - 0x76B4, 0xE1AD, // - 0x76B7, 0xEA89, // - 0x76B8, 0xE1AE, // - 0x76B9, 0xE1AF, // - 0x76BA, 0xE1B0, // - 0x76BF, 0x8E4D, // - 0x76C2, 0xE1B1, // - 0x76C3, 0x9475, // - 0x76C6, 0x967E, // - 0x76C8, 0x896D, // - 0x76CA, 0x8976, // - 0x76CD, 0xE1B2, // - 0x76D2, 0xE1B4, // - 0x76D6, 0xE1B3, // - 0x76D7, 0x9390, // - 0x76DB, 0x90B7, // - 0x76DC, 0x9F58, // - 0x76DE, 0xE1B5, // - 0x76DF, 0x96BF, // - 0x76E1, 0xE1B6, // - 0x76E3, 0x8AC4, // - 0x76E4, 0x94D5, // - 0x76E5, 0xE1B7, // - 0x76E7, 0xE1B8, // - 0x76EA, 0xE1B9, // - 0x76EE, 0x96DA, // - 0x76F2, 0x96D3, // - 0x76F4, 0x92BC, // - 0x76F8, 0x918A, // - 0x76FB, 0xE1BB, // - 0x76FE, 0x8F82, // - 0x7701, 0x8FC8, // - 0x7704, 0xE1BE, // - 0x7707, 0xE1BD, // - 0x7708, 0xE1BC, // - 0x7709, 0x94FB, // - 0x770B, 0x8AC5, // - 0x770C, 0x8CA7, // - 0x771B, 0xE1C4, // - 0x771E, 0xE1C1, // - 0x771F, 0x905E, // - 0x7720, 0x96B0, // - 0x7724, 0xE1C0, // - 0x7725, 0xE1C2, // - 0x7726, 0xE1C3, // - 0x7729, 0xE1BF, // - 0x7737, 0xE1C5, // - 0x7738, 0xE1C6, // - 0x773A, 0x92AD, // - 0x773C, 0x8AE1, // - 0x7740, 0x9285, // - 0x7747, 0xE1C7, // - 0x775A, 0xE1C8, // - 0x775B, 0xE1CB, // - 0x7761, 0x9087, // - 0x7763, 0x93C2, // - 0x7765, 0xE1CC, // - 0x7766, 0x9672, // - 0x7768, 0xE1C9, // - 0x776B, 0xE1CA, // - 0x7779, 0xE1CF, // - 0x777E, 0xE1CE, // - 0x777F, 0xE1CD, // - 0x778B, 0xE1D1, // - 0x778E, 0xE1D0, // - 0x7791, 0xE1D2, // - 0x779E, 0xE1D4, // - 0x77A0, 0xE1D3, // - 0x77A5, 0x95CB, // - 0x77AC, 0x8F75, // - 0x77AD, 0x97C4, // - 0x77B0, 0xE1D5, // - 0x77B3, 0x93B5, // - 0x77B6, 0xE1D6, // - 0x77B9, 0xE1D7, // - 0x77BB, 0xE1DB, // - 0x77BC, 0xE1D9, // - 0x77BD, 0xE1DA, // - 0x77BF, 0xE1D8, // - 0x77C7, 0xE1DC, // - 0x77CD, 0xE1DD, // - 0x77D7, 0xE1DE, // - 0x77DA, 0xE1DF, // - 0x77DB, 0x96B5, // - 0x77DC, 0xE1E0, // - 0x77E2, 0x96EE, // - 0x77E3, 0xE1E1, // - 0x77E5, 0x926D, // - 0x77E7, 0x948A, // - 0x77E9, 0x8BE9, // - 0x77ED, 0x925A, // - 0x77EE, 0xE1E2, // - 0x77EF, 0x8BB8, // - 0x77F3, 0x90CE, // - 0x77FC, 0xE1E3, // - 0x7802, 0x8DBB, // - 0x780C, 0xE1E4, // - 0x7812, 0xE1E5, // - 0x7814, 0x8CA4, // - 0x7815, 0x8DD3, // - 0x7820, 0xE1E7, // - 0x7825, 0x9375, // - 0x7826, 0x8DD4, // - 0x7827, 0x8B6D, // - 0x7832, 0x9643, // - 0x7834, 0x946A, // - 0x783A, 0x9376, // - 0x783F, 0x8D7B, // - 0x7845, 0xE1E9, // - 0x785D, 0x8FC9, // - 0x786B, 0x97B0, // - 0x786C, 0x8D64, // - 0x786F, 0x8CA5, // - 0x7872, 0x94A1, // - 0x7874, 0xE1EB, // - 0x787C, 0xE1ED, // - 0x7881, 0x8CE9, // - 0x7886, 0xE1EC, // - 0x7887, 0x92F4, // - 0x788C, 0xE1EF, // - 0x788D, 0x8A56, // - 0x788E, 0xE1EA, // - 0x7891, 0x94E8, // - 0x7893, 0x894F, // - 0x7895, 0x8DEA, // - 0x7897, 0x9871, // - 0x789A, 0xE1EE, // - 0x78A3, 0xE1F0, // - 0x78A7, 0x95C9, // - 0x78A9, 0x90D7, // - 0x78AA, 0xE1F2, // - 0x78AF, 0xE1F3, // - 0x78B5, 0xE1F1, // - 0x78BA, 0x8A6D, // - 0x78BC, 0xE1F9, // - 0x78BE, 0xE1F8, // - 0x78C1, 0x8EA5, // - 0x78C5, 0xE1FA, // - 0x78C6, 0xE1F5, // - 0x78CA, 0xE1FB, // - 0x78CB, 0xE1F6, // - 0x78D0, 0x94D6, // - 0x78D1, 0xE1F4, // - 0x78D4, 0xE1F7, // - 0x78DA, 0xE241, // - 0x78E7, 0xE240, // - 0x78E8, 0x9681, // - 0x78EC, 0xE1FC, // - 0x78EF, 0x88E9, // - 0x78F4, 0xE243, // - 0x78FD, 0xE242, // - 0x7901, 0x8FCA, // - 0x7907, 0xE244, // - 0x790E, 0x9162, // - 0x7911, 0xE246, // - 0x7912, 0xE245, // - 0x7919, 0xE247, // - 0x7926, 0xE1E6, // - 0x792A, 0xE1E8, // - 0x792B, 0xE249, // - 0x792C, 0xE248, // - 0x793A, 0x8EA6, // - 0x793C, 0x97E7, // - 0x793E, 0x8ED0, // - 0x7940, 0xE24A, // - 0x7941, 0x8C56, // - 0x7947, 0x8B5F, // - 0x7948, 0x8B46, // - 0x7949, 0x8E83, // - 0x7950, 0x9753, // - 0x7953, 0xE250, // - 0x7955, 0xE24F, // - 0x7956, 0x9163, // - 0x7957, 0xE24C, // - 0x795A, 0xE24E, // - 0x795D, 0x8F6A, // - 0x795E, 0x905F, // - 0x795F, 0xE24D, // - 0x7960, 0xE24B, // - 0x7962, 0x9449, // - 0x7965, 0x8FCB, // - 0x796D, 0x8DD5, // - 0x7977, 0x9398, // - 0x797A, 0xE251, // - 0x797F, 0xE252, // - 0x7980, 0xE268, // - 0x7981, 0x8BD6, // - 0x7984, 0x985C, // - 0x7985, 0x9154, // - 0x798A, 0xE253, // - 0x798D, 0x89D0, // - 0x798E, 0x92F5, // - 0x798F, 0x959F, // - 0x799D, 0xE254, // - 0x79A6, 0x8B9A, // - 0x79A7, 0xE255, // - 0x79AA, 0xE257, // - 0x79AE, 0xE258, // - 0x79B0, 0x9448, // - 0x79B3, 0xE259, // - 0x79B9, 0xE25A, // - 0x79BD, 0x8BD7, // - 0x79BE, 0x89D1, // - 0x79BF, 0x93C3, // - 0x79C0, 0x8F47, // - 0x79C1, 0x8E84, // - 0x79C9, 0xE25C, // - 0x79CB, 0x8F48, // - 0x79D1, 0x89C8, // - 0x79D2, 0x9562, // - 0x79D5, 0xE25D, // - 0x79D8, 0x94E9, // - 0x79DF, 0x9164, // - 0x79E1, 0xE260, // - 0x79E3, 0xE261, // - 0x79E4, 0x9489, // - 0x79E6, 0x9060, // - 0x79E7, 0xE25E, // - 0x79E9, 0x9281, // - 0x79EC, 0xE25F, // - 0x79F0, 0x8FCC, // - 0x79FB, 0x88DA, // - 0x7A00, 0x8B48, // - 0x7A08, 0xE262, // - 0x7A0B, 0x92F6, // - 0x7A0D, 0xE263, // - 0x7A0E, 0x90C5, // - 0x7A14, 0x96AB, // - 0x7A17, 0x9542, // - 0x7A18, 0xE264, // - 0x7A19, 0xE265, // - 0x7A1A, 0x9274, // - 0x7A1C, 0x97C5, // - 0x7A1F, 0xE267, // - 0x7A20, 0xE266, // - 0x7A2E, 0x8EED, // - 0x7A31, 0xE269, // - 0x7A32, 0x88EE, // - 0x7A37, 0xE26C, // - 0x7A3B, 0xE26A, // - 0x7A3C, 0x89D2, // - 0x7A3D, 0x8C6D, // - 0x7A3E, 0xE26B, // - 0x7A3F, 0x8D65, // - 0x7A40, 0x8D92, // - 0x7A42, 0x95E4, // - 0x7A43, 0xE26D, // - 0x7A46, 0x9673, // - 0x7A49, 0xE26F, // - 0x7A4D, 0x90CF, // - 0x7A4E, 0x896E, // - 0x7A4F, 0x89B8, // - 0x7A50, 0x88AA, // - 0x7A57, 0xE26E, // - 0x7A61, 0xE270, // - 0x7A62, 0xE271, // - 0x7A63, 0x8FF5, // - 0x7A69, 0xE272, // - 0x7A6B, 0x8A6E, // - 0x7A70, 0xE274, // - 0x7A74, 0x8C8A, // - 0x7A76, 0x8B86, // - 0x7A79, 0xE275, // - 0x7A7A, 0x8BF3, // - 0x7A7D, 0xE276, // - 0x7A7F, 0x90FA, // - 0x7A81, 0x93CB, // - 0x7A83, 0x90DE, // - 0x7A84, 0x8DF3, // - 0x7A88, 0xE277, // - 0x7A92, 0x9282, // - 0x7A93, 0x918B, // - 0x7A95, 0xE279, // - 0x7A96, 0xE27B, // - 0x7A97, 0xE278, // - 0x7A98, 0xE27A, // - 0x7A9F, 0x8C41, // - 0x7AA9, 0xE27C, // - 0x7AAA, 0x8C45, // - 0x7AAE, 0x8B87, // - 0x7AAF, 0x9771, // - 0x7AB0, 0xE27E, // - 0x7AB6, 0xE280, // - 0x7ABA, 0x894D, // - 0x7ABF, 0xE283, // - 0x7AC3, 0x8A96, // - 0x7AC4, 0xE282, // - 0x7AC5, 0xE281, // - 0x7AC7, 0xE285, // - 0x7AC8, 0xE27D, // - 0x7ACA, 0xE286, // - 0x7ACB, 0x97A7, // - 0x7ACD, 0xE287, // - 0x7ACF, 0xE288, // - 0x7AD2, 0x9AF2, // - 0x7AD3, 0xE28A, // - 0x7AD5, 0xE289, // - 0x7AD9, 0xE28B, // - 0x7ADA, 0xE28C, // - 0x7ADC, 0x97B3, // - 0x7ADD, 0xE28D, // - 0x7ADF, 0xE8ED, // - 0x7AE0, 0x8FCD, // - 0x7AE1, 0xE28E, // - 0x7AE2, 0xE28F, // - 0x7AE3, 0x8F76, // - 0x7AE5, 0x93B6, // - 0x7AE6, 0xE290, // - 0x7AEA, 0x9247, // - 0x7AED, 0xE291, // - 0x7AF0, 0xE292, // - 0x7AF6, 0x8BA3, // - 0x7AF8, 0x995E, // - 0x7AF9, 0x927C, // - 0x7AFA, 0x8EB1, // - 0x7AFF, 0x8AC6, // - 0x7B02, 0xE293, // - 0x7B04, 0xE2A0, // - 0x7B06, 0xE296, // - 0x7B08, 0x8B88, // - 0x7B0A, 0xE295, // - 0x7B0B, 0xE2A2, // - 0x7B0F, 0xE294, // - 0x7B11, 0x8FCE, // - 0x7B18, 0xE298, // - 0x7B19, 0xE299, // - 0x7B1B, 0x934A, // - 0x7B1E, 0xE29A, // - 0x7B20, 0x8A7D, // - 0x7B25, 0x9079, // - 0x7B26, 0x9584, // - 0x7B28, 0xE29C, // - 0x7B2C, 0x91E6, // - 0x7B33, 0xE297, // - 0x7B35, 0xE29B, // - 0x7B36, 0xE29D, // - 0x7B39, 0x8DF9, // - 0x7B45, 0xE2A4, // - 0x7B46, 0x954D, // - 0x7B48, 0x94A4, // - 0x7B49, 0x9399, // - 0x7B4B, 0x8BD8, // - 0x7B4C, 0xE2A3, // - 0x7B4D, 0xE2A1, // - 0x7B4F, 0x94B3, // - 0x7B50, 0xE29E, // - 0x7B51, 0x927D, // - 0x7B52, 0x939B, // - 0x7B54, 0x939A, // - 0x7B56, 0x8DF4, // - 0x7B5D, 0xE2B6, // - 0x7B65, 0xE2A6, // - 0x7B67, 0xE2A8, // - 0x7B6C, 0xE2AB, // - 0x7B6E, 0xE2AC, // - 0x7B70, 0xE2A9, // - 0x7B71, 0xE2AA, // - 0x7B74, 0xE2A7, // - 0x7B75, 0xE2A5, // - 0x7B7A, 0xE29F, // - 0x7B86, 0x95CD, // - 0x7B87, 0x89D3, // - 0x7B8B, 0xE2B3, // - 0x7B8D, 0xE2B0, // - 0x7B8F, 0xE2B5, // - 0x7B92, 0xE2B4, // - 0x7B94, 0x9493, // - 0x7B95, 0x96A5, // - 0x7B97, 0x8E5A, // - 0x7B98, 0xE2AE, // - 0x7B99, 0xE2B7, // - 0x7B9A, 0xE2B2, // - 0x7B9C, 0xE2B1, // - 0x7B9D, 0xE2AD, // - 0x7B9F, 0xE2AF, // - 0x7BA1, 0x8AC7, // - 0x7BAA, 0x925C, // - 0x7BAD, 0x90FB, // - 0x7BB1, 0x94A0, // - 0x7BB4, 0xE2BC, // - 0x7BB8, 0x94A2, // - 0x7BC0, 0x90DF, // - 0x7BC1, 0xE2B9, // - 0x7BC4, 0x94CD, // - 0x7BC6, 0xE2BD, // - 0x7BC7, 0x95D1, // - 0x7BC9, 0x927A, // - 0x7BCB, 0xE2B8, // - 0x7BCC, 0xE2BA, // - 0x7BCF, 0xE2BB, // - 0x7BDD, 0xE2BE, // - 0x7BE0, 0x8EC2, // - 0x7BE4, 0x93C4, // - 0x7BE5, 0xE2C3, // - 0x7BE6, 0xE2C2, // - 0x7BE9, 0xE2BF, // - 0x7BED, 0x9855, // - 0x7BF3, 0xE2C8, // - 0x7BF6, 0xE2CC, // - 0x7BF7, 0xE2C9, // - 0x7C00, 0xE2C5, // - 0x7C07, 0xE2C6, // - 0x7C0D, 0xE2CB, // - 0x7C11, 0xE2C0, // - 0x7C12, 0x99D3, // - 0x7C13, 0xE2C7, // - 0x7C14, 0xE2C1, // - 0x7C17, 0xE2CA, // - 0x7C1F, 0xE2D0, // - 0x7C21, 0x8AC8, // - 0x7C23, 0xE2CD, // - 0x7C27, 0xE2CE, // - 0x7C2A, 0xE2CF, // - 0x7C2B, 0xE2D2, // - 0x7C37, 0xE2D1, // - 0x7C38, 0x94F4, // - 0x7C3D, 0xE2D3, // - 0x7C3E, 0x97FA, // - 0x7C3F, 0x95EB, // - 0x7C40, 0xE2D8, // - 0x7C43, 0xE2D5, // - 0x7C4C, 0xE2D4, // - 0x7C4D, 0x90D0, // - 0x7C4F, 0xE2D7, // - 0x7C50, 0xE2D9, // - 0x7C54, 0xE2D6, // - 0x7C56, 0xE2DD, // - 0x7C58, 0xE2DA, // - 0x7C5F, 0xE2DB, // - 0x7C60, 0xE2C4, // - 0x7C64, 0xE2DC, // - 0x7C65, 0xE2DE, // - 0x7C6C, 0xE2DF, // - 0x7C73, 0x95C4, // - 0x7C75, 0xE2E0, // - 0x7C7E, 0x96E0, // - 0x7C81, 0x8BCC, // - 0x7C82, 0x8C48, // - 0x7C83, 0xE2E1, // - 0x7C89, 0x95B2, // - 0x7C8B, 0x9088, // - 0x7C8D, 0x96AE, // - 0x7C90, 0xE2E2, // - 0x7C92, 0x97B1, // - 0x7C95, 0x9494, // - 0x7C97, 0x9165, // - 0x7C98, 0x9453, // - 0x7C9B, 0x8F6C, // - 0x7C9F, 0x88BE, // - 0x7CA1, 0xE2E7, // - 0x7CA2, 0xE2E5, // - 0x7CA4, 0xE2E3, // - 0x7CA5, 0x8A9F, // - 0x7CA7, 0x8FCF, // - 0x7CA8, 0xE2E8, // - 0x7CAB, 0xE2E6, // - 0x7CAD, 0xE2E4, // - 0x7CAE, 0xE2EC, // - 0x7CB1, 0xE2EB, // - 0x7CB2, 0xE2EA, // - 0x7CB3, 0xE2E9, // - 0x7CB9, 0xE2ED, // - 0x7CBD, 0xE2EE, // - 0x7CBE, 0x90B8, // - 0x7CC0, 0xE2EF, // - 0x7CC2, 0xE2F1, // - 0x7CC5, 0xE2F0, // - 0x7CCA, 0x8CD0, // - 0x7CCE, 0x9157, // - 0x7CD2, 0xE2F3, // - 0x7CD6, 0x939C, // - 0x7CD8, 0xE2F2, // - 0x7CDC, 0xE2F4, // - 0x7CDE, 0x95B3, // - 0x7CDF, 0x918C, // - 0x7CE0, 0x8D66, // - 0x7CE2, 0xE2F5, // - 0x7CE7, 0x97C6, // - 0x7CEF, 0xE2F7, // - 0x7CF2, 0xE2F8, // - 0x7CF4, 0xE2F9, // - 0x7CF6, 0xE2FA, // - 0x7CF8, 0x8E85, // - 0x7CFA, 0xE2FB, // - 0x7CFB, 0x8C6E, // - 0x7CFE, 0x8B8A, // - 0x7D00, 0x8B49, // - 0x7D02, 0xE340, // - 0x7D04, 0x96F1, // - 0x7D05, 0x8D67, // - 0x7D06, 0xE2FC, // - 0x7D0A, 0xE343, // - 0x7D0B, 0x96E4, // - 0x7D10, 0x9552, // - 0x7D14, 0x8F83, // - 0x7D15, 0xE342, // - 0x7D17, 0x8ED1, // - 0x7D18, 0x8D68, // - 0x7D19, 0x8E86, // - 0x7D1A, 0x8B89, // - 0x7D1B, 0x95B4, // - 0x7D1C, 0xE341, // - 0x7D20, 0x9166, // - 0x7D21, 0x9661, // - 0x7D22, 0x8DF5, // - 0x7D2B, 0x8E87, // - 0x7D2C, 0x92DB, // - 0x7D2E, 0xE346, // - 0x7D2F, 0x97DD, // - 0x7D30, 0x8DD7, // - 0x7D32, 0xE347, // - 0x7D33, 0x9061, // - 0x7D35, 0xE349, // - 0x7D39, 0x8FD0, // - 0x7D3A, 0x8DAE, // - 0x7D3F, 0xE348, // - 0x7D42, 0x8F49, // - 0x7D43, 0x8CBC, // - 0x7D44, 0x9167, // - 0x7D45, 0xE344, // - 0x7D46, 0xE34A, // - 0x7D4B, 0xE345, // - 0x7D4C, 0x8C6F, // - 0x7D4E, 0xE34D, // - 0x7D4F, 0xE351, // - 0x7D50, 0x8C8B, // - 0x7D56, 0xE34C, // - 0x7D5B, 0xE355, // - 0x7D5E, 0x8D69, // - 0x7D61, 0x978D, // - 0x7D62, 0x88BA, // - 0x7D63, 0xE352, // - 0x7D66, 0x8B8B, // - 0x7D68, 0xE34F, // - 0x7D6E, 0xE350, // - 0x7D71, 0x939D, // - 0x7D72, 0xE34E, // - 0x7D73, 0xE34B, // - 0x7D75, 0x8A47, // - 0x7D76, 0x90E2, // - 0x7D79, 0x8CA6, // - 0x7D7D, 0xE357, // - 0x7D89, 0xE354, // - 0x7D8F, 0xE356, // - 0x7D93, 0xE353, // - 0x7D99, 0x8C70, // - 0x7D9A, 0x91B1, // - 0x7D9B, 0xE358, // - 0x7D9C, 0x918E, // - 0x7D9F, 0xE365, // - 0x7DA2, 0xE361, // - 0x7DAB, 0xE35F, // - 0x7DAC, 0x8EF8, // - 0x7DAD, 0x88DB, // - 0x7DAE, 0xE35A, // - 0x7DAF, 0xE362, // - 0x7DB0, 0xE366, // - 0x7DB1, 0x8D6A, // - 0x7DB2, 0x96D4, // - 0x7DB4, 0x92D4, // - 0x7DB5, 0xE35C, // - 0x7DB8, 0xE364, // - 0x7DBA, 0xE359, // - 0x7DBB, 0x925D, // - 0x7DBD, 0xE35E, // - 0x7DBE, 0x88BB, // - 0x7DBF, 0x96C8, // - 0x7DC7, 0xE35D, // - 0x7DCA, 0x8BD9, // - 0x7DCB, 0x94EA, // - 0x7DCF, 0x918D, // - 0x7DD1, 0x97CE, // - 0x7DD2, 0x8F8F, // - 0x7DD5, 0xE38E, // - 0x7DD8, 0xE367, // - 0x7DDA, 0x90FC, // - 0x7DDC, 0xE363, // - 0x7DDD, 0xE368, // - 0x7DDE, 0xE36A, // - 0x7DE0, 0x92F7, // - 0x7DE1, 0xE36D, // - 0x7DE4, 0xE369, // - 0x7DE8, 0x95D2, // - 0x7DE9, 0x8AC9, // - 0x7DEC, 0x96C9, // - 0x7DEF, 0x88DC, // - 0x7DF2, 0xE36C, // - 0x7DF4, 0x97FB, // - 0x7DFB, 0xE36B, // - 0x7E01, 0x898F, // - 0x7E04, 0x93EA, // - 0x7E05, 0xE36E, // - 0x7E09, 0xE375, // - 0x7E0A, 0xE36F, // - 0x7E0B, 0xE376, // - 0x7E12, 0xE372, // - 0x7E1B, 0x949B, // - 0x7E1E, 0x8EC8, // - 0x7E1F, 0xE374, // - 0x7E21, 0xE371, // - 0x7E22, 0xE377, // - 0x7E23, 0xE370, // - 0x7E26, 0x8F63, // - 0x7E2B, 0x9644, // - 0x7E2E, 0x8F6B, // - 0x7E31, 0xE373, // - 0x7E32, 0xE380, // - 0x7E35, 0xE37B, // - 0x7E37, 0xE37E, // - 0x7E39, 0xE37C, // - 0x7E3A, 0xE381, // - 0x7E3B, 0xE37A, // - 0x7E3D, 0xE360, // - 0x7E3E, 0x90D1, // - 0x7E41, 0x94C9, // - 0x7E43, 0xE37D, // - 0x7E46, 0xE378, // - 0x7E4A, 0x9140, // - 0x7E4B, 0x8C71, // - 0x7E4D, 0x8F4A, // - 0x7E54, 0x9044, // - 0x7E55, 0x9155, // - 0x7E56, 0xE384, // - 0x7E59, 0xE386, // - 0x7E5A, 0xE387, // - 0x7E5D, 0xE383, // - 0x7E5E, 0xE385, // - 0x7E66, 0xE379, // - 0x7E67, 0xE382, // - 0x7E69, 0xE38A, // - 0x7E6A, 0xE389, // - 0x7E6D, 0x969A, // - 0x7E70, 0x8C4A, // - 0x7E79, 0xE388, // - 0x7E7B, 0xE38C, // - 0x7E7C, 0xE38B, // - 0x7E7D, 0xE38F, // - 0x7E7F, 0xE391, // - 0x7E83, 0xE38D, // - 0x7E88, 0xE392, // - 0x7E89, 0xE393, // - 0x7E8C, 0xE394, // - 0x7E8E, 0xE39A, // - 0x7E8F, 0x935A, // - 0x7E90, 0xE396, // - 0x7E92, 0xE395, // - 0x7E93, 0xE397, // - 0x7E94, 0xE398, // - 0x7E96, 0xE399, // - 0x7E9B, 0xE39B, // - 0x7E9C, 0xE39C, // - 0x7F36, 0x8ACA, // - 0x7F38, 0xE39D, // - 0x7F3A, 0xE39E, // - 0x7F45, 0xE39F, // - 0x7F4C, 0xE3A0, // - 0x7F4D, 0xE3A1, // - 0x7F4E, 0xE3A2, // - 0x7F50, 0xE3A3, // - 0x7F51, 0xE3A4, // - 0x7F54, 0xE3A6, // - 0x7F55, 0xE3A5, // - 0x7F58, 0xE3A7, // - 0x7F5F, 0xE3A8, // - 0x7F60, 0xE3A9, // - 0x7F67, 0xE3AC, // - 0x7F68, 0xE3AA, // - 0x7F69, 0xE3AB, // - 0x7F6A, 0x8DDF, // - 0x7F6B, 0x8C72, // - 0x7F6E, 0x9275, // - 0x7F70, 0x94B1, // - 0x7F72, 0x8F90, // - 0x7F75, 0x946C, // - 0x7F77, 0x94EB, // - 0x7F78, 0xE3AD, // - 0x7F79, 0x9CEB, // - 0x7F82, 0xE3AE, // - 0x7F83, 0xE3B0, // - 0x7F85, 0x9785, // - 0x7F86, 0xE3AF, // - 0x7F87, 0xE3B2, // - 0x7F88, 0xE3B1, // - 0x7F8A, 0x9772, // - 0x7F8C, 0xE3B3, // - 0x7F8E, 0x94FC, // - 0x7F94, 0xE3B4, // - 0x7F9A, 0xE3B7, // - 0x7F9D, 0xE3B6, // - 0x7F9E, 0xE3B5, // - 0x7FA3, 0xE3B8, // - 0x7FA4, 0x8C51, // - 0x7FA8, 0x9141, // - 0x7FA9, 0x8B60, // - 0x7FAE, 0xE3BC, // - 0x7FAF, 0xE3B9, // - 0x7FB2, 0xE3BA, // - 0x7FB6, 0xE3BD, // - 0x7FB8, 0xE3BE, // - 0x7FB9, 0xE3BB, // - 0x7FBD, 0x8948, // - 0x7FC1, 0x89A5, // - 0x7FC5, 0xE3C0, // - 0x7FC6, 0xE3C1, // - 0x7FCA, 0xE3C2, // - 0x7FCC, 0x9782, // - 0x7FD2, 0x8F4B, // - 0x7FD4, 0xE3C4, // - 0x7FD5, 0xE3C3, // - 0x7FE0, 0x9089, // - 0x7FE1, 0xE3C5, // - 0x7FE6, 0xE3C6, // - 0x7FE9, 0xE3C7, // - 0x7FEB, 0x8AE3, // - 0x7FF0, 0x8ACB, // - 0x7FF3, 0xE3C8, // - 0x7FF9, 0xE3C9, // - 0x7FFB, 0x967C, // - 0x7FFC, 0x9783, // - 0x8000, 0x9773, // - 0x8001, 0x9856, // - 0x8003, 0x8D6C, // - 0x8004, 0xE3CC, // - 0x8005, 0x8ED2, // - 0x8006, 0xE3CB, // - 0x800B, 0xE3CD, // - 0x800C, 0x8EA7, // - 0x8010, 0x91CF, // - 0x8012, 0xE3CE, // - 0x8015, 0x8D6B, // - 0x8017, 0x96D5, // - 0x8018, 0xE3CF, // - 0x8019, 0xE3D0, // - 0x801C, 0xE3D1, // - 0x8021, 0xE3D2, // - 0x8028, 0xE3D3, // - 0x8033, 0x8EA8, // - 0x8036, 0x96EB, // - 0x803B, 0xE3D5, // - 0x803D, 0x925E, // - 0x803F, 0xE3D4, // - 0x8046, 0xE3D7, // - 0x804A, 0xE3D6, // - 0x8052, 0xE3D8, // - 0x8056, 0x90B9, // - 0x8058, 0xE3D9, // - 0x805A, 0xE3DA, // - 0x805E, 0x95B7, // - 0x805F, 0xE3DB, // - 0x8061, 0x918F, // - 0x8062, 0xE3DC, // - 0x8068, 0xE3DD, // - 0x806F, 0x97FC, // - 0x8070, 0xE3E0, // - 0x8072, 0xE3DF, // - 0x8073, 0xE3DE, // - 0x8074, 0x92AE, // - 0x8076, 0xE3E1, // - 0x8077, 0x9045, // - 0x8079, 0xE3E2, // - 0x807D, 0xE3E3, // - 0x807E, 0x9857, // - 0x807F, 0xE3E4, // - 0x8084, 0xE3E5, // - 0x8085, 0xE3E7, // - 0x8086, 0xE3E6, // - 0x8087, 0x94A3, // - 0x8089, 0x93F7, // - 0x808B, 0x985D, // - 0x808C, 0x94A7, // - 0x8093, 0xE3E9, // - 0x8096, 0x8FD1, // - 0x8098, 0x9549, // - 0x809A, 0xE3EA, // - 0x809B, 0xE3E8, // - 0x809D, 0x8ACC, // - 0x80A1, 0x8CD2, // - 0x80A2, 0x8E88, // - 0x80A5, 0x94EC, // - 0x80A9, 0x8CA8, // - 0x80AA, 0x9662, // - 0x80AC, 0xE3ED, // - 0x80AD, 0xE3EB, // - 0x80AF, 0x8D6D, // - 0x80B1, 0x8D6E, // - 0x80B2, 0x88E7, // - 0x80B4, 0x8DE6, // - 0x80BA, 0x9478, // - 0x80C3, 0x88DD, // - 0x80C4, 0xE3F2, // - 0x80C6, 0x925F, // - 0x80CC, 0x9477, // - 0x80CE, 0x91D9, // - 0x80D6, 0xE3F4, // - 0x80D9, 0xE3F0, // - 0x80DA, 0xE3F3, // - 0x80DB, 0xE3EE, // - 0x80DD, 0xE3F1, // - 0x80DE, 0x9645, // - 0x80E1, 0x8CD3, // - 0x80E4, 0x88FB, // - 0x80E5, 0xE3EF, // - 0x80EF, 0xE3F6, // - 0x80F1, 0xE3F7, // - 0x80F4, 0x93B7, // - 0x80F8, 0x8BB9, // - 0x80FC, 0xE445, // - 0x80FD, 0x945C, // - 0x8102, 0x8E89, // - 0x8105, 0x8BBA, // - 0x8106, 0x90C6, // - 0x8107, 0x9865, // - 0x8108, 0x96AC, // - 0x8109, 0xE3F5, // - 0x810A, 0x90D2, // - 0x811A, 0x8B72, // - 0x811B, 0xE3F8, // - 0x8123, 0xE3FA, // - 0x8129, 0xE3F9, // - 0x812F, 0xE3FB, // - 0x8131, 0x9245, // - 0x8133, 0x945D, // - 0x8139, 0x92AF, // - 0x813E, 0xE442, // - 0x8146, 0xE441, // - 0x814B, 0xE3FC, // - 0x814E, 0x9074, // - 0x8150, 0x9585, // - 0x8151, 0xE444, // - 0x8153, 0xE443, // - 0x8154, 0x8D6F, // - 0x8155, 0x9872, // - 0x815F, 0xE454, // - 0x8165, 0xE448, // - 0x8166, 0xE449, // - 0x816B, 0x8EEE, // - 0x816E, 0xE447, // - 0x8170, 0x8D98, // - 0x8171, 0xE446, // - 0x8174, 0xE44A, // - 0x8178, 0x92B0, // - 0x8179, 0x95A0, // - 0x817A, 0x9142, // - 0x817F, 0x91DA, // - 0x8180, 0xE44E, // - 0x8182, 0xE44F, // - 0x8183, 0xE44B, // - 0x8188, 0xE44C, // - 0x818A, 0xE44D, // - 0x818F, 0x8D70, // - 0x8193, 0xE455, // - 0x8195, 0xE451, // - 0x819A, 0x9586, // - 0x819C, 0x968C, // - 0x819D, 0x9547, // - 0x81A0, 0xE450, // - 0x81A3, 0xE453, // - 0x81A4, 0xE452, // - 0x81A8, 0x9663, // - 0x81A9, 0xE456, // - 0x81B0, 0xE457, // - 0x81B3, 0x9156, // - 0x81B5, 0xE458, // - 0x81B8, 0xE45A, // - 0x81BA, 0xE45E, // - 0x81BE, 0xE459, // - 0x81BF, 0x945E, // - 0x81C0, 0xE45C, // - 0x81C2, 0xE45D, // - 0x81C6, 0x89B0, // - 0x81C8, 0xE464, // - 0x81C9, 0xE45F, // - 0x81CD, 0xE460, // - 0x81D1, 0xE461, // - 0x81D3, 0x919F, // - 0x81D8, 0xE463, // - 0x81D9, 0xE462, // - 0x81DA, 0xE465, // - 0x81DF, 0xE466, // - 0x81E0, 0xE467, // - 0x81E3, 0x9062, // - 0x81E5, 0x89E7, // - 0x81E7, 0xE468, // - 0x81E8, 0x97D5, // - 0x81EA, 0x8EA9, // - 0x81ED, 0x8F4C, // - 0x81F3, 0x8E8A, // - 0x81F4, 0x9276, // - 0x81FA, 0xE469, // - 0x81FB, 0xE46A, // - 0x81FC, 0x8950, // - 0x81FE, 0xE46B, // - 0x8201, 0xE46C, // - 0x8202, 0xE46D, // - 0x8205, 0xE46E, // - 0x8207, 0xE46F, // - 0x8208, 0x8BBB, // - 0x8209, 0x9DA8, // - 0x820A, 0xE470, // - 0x820C, 0x90E3, // - 0x820D, 0xE471, // - 0x820E, 0x8EC9, // - 0x8210, 0xE472, // - 0x8212, 0x98AE, // - 0x8216, 0xE473, // - 0x8217, 0x95DC, // - 0x8218, 0x8ADA, // - 0x821B, 0x9143, // - 0x821C, 0x8F77, // - 0x821E, 0x9591, // - 0x821F, 0x8F4D, // - 0x8229, 0xE474, // - 0x822A, 0x8D71, // - 0x822B, 0xE475, // - 0x822C, 0x94CA, // - 0x822E, 0xE484, // - 0x8233, 0xE477, // - 0x8235, 0x91C7, // - 0x8236, 0x9495, // - 0x8237, 0x8CBD, // - 0x8238, 0xE476, // - 0x8239, 0x9144, // - 0x8240, 0xE478, // - 0x8247, 0x92F8, // - 0x8258, 0xE47A, // - 0x8259, 0xE479, // - 0x825A, 0xE47C, // - 0x825D, 0xE47B, // - 0x825F, 0xE47D, // - 0x8262, 0xE480, // - 0x8264, 0xE47E, // - 0x8266, 0x8ACD, // - 0x8268, 0xE481, // - 0x826A, 0xE482, // - 0x826B, 0xE483, // - 0x826E, 0x8DAF, // - 0x826F, 0x97C7, // - 0x8271, 0xE485, // - 0x8272, 0x9046, // - 0x8276, 0x8990, // - 0x8277, 0xE486, // - 0x8278, 0xE487, // - 0x827E, 0xE488, // - 0x828B, 0x88F0, // - 0x828D, 0xE489, // - 0x8292, 0xE48A, // - 0x8299, 0x9587, // - 0x829D, 0x8EC5, // - 0x829F, 0xE48C, // - 0x82A5, 0x8A48, // - 0x82A6, 0x88B0, // - 0x82AB, 0xE48B, // - 0x82AC, 0xE48E, // - 0x82AD, 0x946D, // - 0x82AF, 0x9063, // - 0x82B1, 0x89D4, // - 0x82B3, 0x9646, // - 0x82B8, 0x8C7C, // - 0x82B9, 0x8BDA, // - 0x82BB, 0xE48D, // - 0x82BD, 0x89E8, // - 0x82C5, 0x8AA1, // - 0x82D1, 0x8991, // - 0x82D2, 0xE492, // - 0x82D3, 0x97E8, // - 0x82D4, 0x91DB, // - 0x82D7, 0x9563, // - 0x82D9, 0xE49E, // - 0x82DB, 0x89D5, // - 0x82DC, 0xE49C, // - 0x82DE, 0xE49A, // - 0x82DF, 0xE491, // - 0x82E1, 0xE48F, // - 0x82E3, 0xE490, // - 0x82E5, 0x8EE1, // - 0x82E6, 0x8BEA, // - 0x82E7, 0x9297, // - 0x82EB, 0x93CF, // - 0x82F1, 0x8970, // - 0x82F3, 0xE494, // - 0x82F4, 0xE493, // - 0x82F9, 0xE499, // - 0x82FA, 0xE495, // - 0x82FB, 0xE498, // - 0x8302, 0x96CE, // - 0x8303, 0xE497, // - 0x8304, 0x89D6, // - 0x8305, 0x8A9D, // - 0x8306, 0xE49B, // - 0x8309, 0xE49D, // - 0x830E, 0x8C73, // - 0x8316, 0xE4A1, // - 0x8317, 0xE4AA, // - 0x8318, 0xE4AB, // - 0x831C, 0x88A9, // - 0x8323, 0xE4B2, // - 0x8328, 0x88EF, // - 0x832B, 0xE4A9, // - 0x832F, 0xE4A8, // - 0x8331, 0xE4A3, // - 0x8332, 0xE4A2, // - 0x8334, 0xE4A0, // - 0x8335, 0xE49F, // - 0x8336, 0x9283, // - 0x8338, 0x91F9, // - 0x8339, 0xE4A5, // - 0x8340, 0xE4A4, // - 0x8345, 0xE4A7, // - 0x8349, 0x9190, // - 0x834A, 0x8C74, // - 0x834F, 0x8960, // - 0x8350, 0xE4A6, // - 0x8352, 0x8D72, // - 0x8358, 0x9191, // - 0x8373, 0xE4B8, // - 0x8375, 0xE4B9, // - 0x8377, 0x89D7, // - 0x837B, 0x89AC, // - 0x837C, 0xE4B6, // - 0x8385, 0xE4AC, // - 0x8387, 0xE4B4, // - 0x8389, 0xE4BB, // - 0x838A, 0xE4B5, // - 0x838E, 0xE4B3, // - 0x8393, 0xE496, // - 0x8396, 0xE4B1, // - 0x839A, 0xE4AD, // - 0x839E, 0x8ACE, // - 0x839F, 0xE4AF, // - 0x83A0, 0xE4BA, // - 0x83A2, 0xE4B0, // - 0x83A8, 0xE4BC, // - 0x83AA, 0xE4AE, // - 0x83AB, 0x949C, // - 0x83B1, 0x9789, // - 0x83B5, 0xE4B7, // - 0x83BD, 0xE4CD, // - 0x83C1, 0xE4C5, // - 0x83C5, 0x909B, // - 0x83CA, 0x8B65, // - 0x83CC, 0x8BDB, // - 0x83CE, 0xE4C0, // - 0x83D3, 0x89D9, // - 0x83D6, 0x8FD2, // - 0x83D8, 0xE4C3, // - 0x83DC, 0x8DD8, // - 0x83DF, 0x9370, // - 0x83E0, 0xE4C8, // - 0x83E9, 0x95EC, // - 0x83EB, 0xE4BF, // - 0x83EF, 0x89D8, // - 0x83F0, 0x8CD4, // - 0x83F1, 0x9548, // - 0x83F2, 0xE4C9, // - 0x83F4, 0xE4BD, // - 0x83F7, 0xE4C6, // - 0x83FB, 0xE4D0, // - 0x83FD, 0xE4C1, // - 0x8403, 0xE4C2, // - 0x8404, 0x93B8, // - 0x8407, 0xE4C7, // - 0x840B, 0xE4C4, // - 0x840C, 0x9647, // - 0x840D, 0xE4CA, // - 0x840E, 0x88DE, // - 0x8413, 0xE4BE, // - 0x8420, 0xE4CC, // - 0x8422, 0xE4CB, // - 0x8429, 0x948B, // - 0x842A, 0xE4D2, // - 0x842C, 0xE4DD, // - 0x8431, 0x8A9E, // - 0x8435, 0xE4E0, // - 0x8438, 0xE4CE, // - 0x843C, 0xE4D3, // - 0x843D, 0x978E, // - 0x8446, 0xE4DC, // - 0x8449, 0x9774, // - 0x844E, 0x97A8, // - 0x8457, 0x9298, // - 0x845B, 0x8A8B, // - 0x8461, 0x9592, // - 0x8462, 0xE4E2, // - 0x8463, 0x939F, // - 0x8466, 0x88AF, // - 0x8469, 0xE4DB, // - 0x846B, 0xE4D7, // - 0x846C, 0x9192, // - 0x846D, 0xE4D1, // - 0x846E, 0xE4D9, // - 0x846F, 0xE4DE, // - 0x8471, 0x944B, // - 0x8475, 0x88A8, // - 0x8477, 0xE4D6, // - 0x8479, 0xE4DF, // - 0x847A, 0x9598, // - 0x8482, 0xE4DA, // - 0x8484, 0xE4D5, // - 0x848B, 0x8FD3, // - 0x8490, 0x8F4E, // - 0x8494, 0x8EAA, // - 0x8499, 0x96D6, // - 0x849C, 0x9566, // - 0x849F, 0xE4E5, // - 0x84A1, 0xE4EE, // - 0x84AD, 0xE4D8, // - 0x84B2, 0x8A97, // - 0x84B8, 0x8FF6, // - 0x84B9, 0xE4E3, // - 0x84BB, 0xE4E8, // - 0x84BC, 0x9193, // - 0x84BF, 0xE4E4, // - 0x84C1, 0xE4EB, // - 0x84C4, 0x927E, // - 0x84C6, 0xE4EC, // - 0x84C9, 0x9775, // - 0x84CA, 0xE4E1, // - 0x84CB, 0x8A57, // - 0x84CD, 0xE4E7, // - 0x84D0, 0xE4EA, // - 0x84D1, 0x96AA, // - 0x84D6, 0xE4ED, // - 0x84D9, 0xE4E6, // - 0x84DA, 0xE4E9, // - 0x84EC, 0x9648, // - 0x84EE, 0x9840, // - 0x84F4, 0xE4F1, // - 0x84FC, 0xE4F8, // - 0x84FF, 0xE4F0, // - 0x8500, 0x8EC1, // - 0x8506, 0xE4CF, // - 0x8511, 0x95CC, // - 0x8513, 0x96A0, // - 0x8514, 0xE4F7, // - 0x8515, 0xE4F6, // - 0x8517, 0xE4F2, // - 0x8518, 0xE4F3, // - 0x851A, 0x8955, // - 0x851F, 0xE4F5, // - 0x8521, 0xE4EF, // - 0x8526, 0x92D3, // - 0x852C, 0xE4F4, // - 0x852D, 0x88FC, // - 0x8535, 0x91A0, // - 0x853D, 0x95C1, // - 0x8540, 0xE4F9, // - 0x8541, 0xE540, // - 0x8543, 0x94D7, // - 0x8548, 0xE4FC, // - 0x8549, 0x8FD4, // - 0x854A, 0x8EC7, // - 0x854B, 0xE542, // - 0x854E, 0x8BBC, // - 0x8555, 0xE543, // - 0x8557, 0x9599, // - 0x8558, 0xE4FB, // - 0x855A, 0xE4D4, // - 0x8563, 0xE4FA, // - 0x8568, 0x986E, // - 0x8569, 0x93A0, // - 0x856A, 0x9593, // - 0x856D, 0xE54A, // - 0x8577, 0xE550, // - 0x857E, 0xE551, // - 0x8580, 0xE544, // - 0x8584, 0x9496, // - 0x8587, 0xE54E, // - 0x8588, 0xE546, // - 0x858A, 0xE548, // - 0x8590, 0xE552, // - 0x8591, 0xE547, // - 0x8594, 0xE54B, // - 0x8597, 0x8992, // - 0x8599, 0x93E3, // - 0x859B, 0xE54C, // - 0x859C, 0xE54F, // - 0x85A4, 0xE545, // - 0x85A6, 0x9145, // - 0x85A8, 0xE549, // - 0x85A9, 0x8E46, // - 0x85AA, 0x9064, // - 0x85AB, 0x8C4F, // - 0x85AC, 0x96F2, // - 0x85AE, 0x96F7, // - 0x85AF, 0x8F92, // - 0x85B9, 0xE556, // - 0x85BA, 0xE554, // - 0x85C1, 0x986D, // - 0x85C9, 0xE553, // - 0x85CD, 0x9795, // - 0x85CF, 0xE555, // - 0x85D0, 0xE557, // - 0x85D5, 0xE558, // - 0x85DD, 0xE559, // - 0x85E4, 0x93A1, // - 0x85E5, 0xE55A, // - 0x85E9, 0x94CB, // - 0x85EA, 0xE54D, // - 0x85F7, 0x8F93, // - 0x85F9, 0xE55C, // - 0x85FA, 0xE561, // - 0x85FB, 0x9194, // - 0x85FE, 0xE560, // - 0x8602, 0xE541, // - 0x8606, 0xE562, // - 0x8607, 0x9168, // - 0x860A, 0xE55D, // - 0x860B, 0xE55F, // - 0x8613, 0xE55E, // - 0x8616, 0x9F50, // - 0x8617, 0x9F41, // - 0x861A, 0xE564, // - 0x8622, 0xE563, // - 0x862D, 0x9796, // - 0x862F, 0xE1BA, // - 0x8630, 0xE565, // - 0x863F, 0xE566, // - 0x864D, 0xE567, // - 0x864E, 0x8CD5, // - 0x8650, 0x8B73, // - 0x8654, 0xE569, // - 0x8655, 0x997C, // - 0x865A, 0x8B95, // - 0x865C, 0x97B8, // - 0x865E, 0x8BF1, // - 0x865F, 0xE56A, // - 0x8667, 0xE56B, // - 0x866B, 0x928E, // - 0x8671, 0xE56C, // - 0x8679, 0x93F8, // - 0x867B, 0x88B8, // - 0x868A, 0x89E1, // - 0x868B, 0xE571, // - 0x868C, 0xE572, // - 0x8693, 0xE56D, // - 0x8695, 0x8E5C, // - 0x86A3, 0xE56E, // - 0x86A4, 0x9461, // - 0x86A9, 0xE56F, // - 0x86AA, 0xE570, // - 0x86AB, 0xE57A, // - 0x86AF, 0xE574, // - 0x86B0, 0xE577, // - 0x86B6, 0xE573, // - 0x86C4, 0xE575, // - 0x86C6, 0xE576, // - 0x86C7, 0x8ED6, // - 0x86C9, 0xE578, // - 0x86CB, 0x9260, // - 0x86CD, 0x8C75, // - 0x86CE, 0x8A61, // - 0x86D4, 0xE57B, // - 0x86D9, 0x8A5E, // - 0x86DB, 0xE581, // - 0x86DE, 0xE57C, // - 0x86DF, 0xE580, // - 0x86E4, 0x94B8, // - 0x86E9, 0xE57D, // - 0x86EC, 0xE57E, // - 0x86ED, 0x9567, // - 0x86EE, 0x94D8, // - 0x86EF, 0xE582, // - 0x86F8, 0x91FB, // - 0x86F9, 0xE58C, // - 0x86FB, 0xE588, // - 0x86FE, 0x89E9, // - 0x8700, 0xE586, // - 0x8702, 0x9649, // - 0x8703, 0xE587, // - 0x8706, 0xE584, // - 0x8708, 0xE585, // - 0x8709, 0xE58A, // - 0x870A, 0xE58D, // - 0x870D, 0xE58B, // - 0x8711, 0xE589, // - 0x8712, 0xE583, // - 0x8718, 0x9277, // - 0x871A, 0xE594, // - 0x871C, 0x96A8, // - 0x8725, 0xE592, // - 0x8729, 0xE593, // - 0x8734, 0xE58E, // - 0x8737, 0xE590, // - 0x873B, 0xE591, // - 0x873F, 0xE58F, // - 0x8749, 0x90E4, // - 0x874B, 0x9858, // - 0x874C, 0xE598, // - 0x874E, 0xE599, // - 0x8753, 0xE59F, // - 0x8755, 0x9049, // - 0x8757, 0xE59B, // - 0x8759, 0xE59E, // - 0x875F, 0xE596, // - 0x8760, 0xE595, // - 0x8763, 0xE5A0, // - 0x8766, 0x89DA, // - 0x8768, 0xE59C, // - 0x876A, 0xE5A1, // - 0x876E, 0xE59D, // - 0x8774, 0xE59A, // - 0x8776, 0x92B1, // - 0x8778, 0xE597, // - 0x877F, 0x9488, // - 0x8782, 0xE5A5, // - 0x878D, 0x975A, // - 0x879F, 0xE5A4, // - 0x87A2, 0xE5A3, // - 0x87AB, 0xE5AC, // - 0x87AF, 0xE5A6, // - 0x87B3, 0xE5AE, // - 0x87BA, 0x9786, // - 0x87BB, 0xE5B1, // - 0x87BD, 0xE5A8, // - 0x87C0, 0xE5A9, // - 0x87C4, 0xE5AD, // - 0x87C6, 0xE5B0, // - 0x87C7, 0xE5AF, // - 0x87CB, 0xE5A7, // - 0x87D0, 0xE5AA, // - 0x87D2, 0xE5BB, // - 0x87E0, 0xE5B4, // - 0x87EF, 0xE5B2, // - 0x87F2, 0xE5B3, // - 0x87F6, 0xE5B8, // - 0x87F7, 0xE5B9, // - 0x87F9, 0x8A49, // - 0x87FB, 0x8B61, // - 0x87FE, 0xE5B7, // - 0x8805, 0xE5A2, // - 0x880D, 0xE5B6, // - 0x880E, 0xE5BA, // - 0x880F, 0xE5B5, // - 0x8811, 0xE5BC, // - 0x8815, 0xE5BE, // - 0x8816, 0xE5BD, // - 0x8821, 0xE5C0, // - 0x8822, 0xE5BF, // - 0x8823, 0xE579, // - 0x8827, 0xE5C4, // - 0x8831, 0xE5C1, // - 0x8836, 0xE5C2, // - 0x8839, 0xE5C3, // - 0x883B, 0xE5C5, // - 0x8840, 0x8C8C, // - 0x8842, 0xE5C7, // - 0x8844, 0xE5C6, // - 0x8846, 0x8F4F, // - 0x884C, 0x8D73, // - 0x884D, 0x9FA5, // - 0x8852, 0xE5C8, // - 0x8853, 0x8F70, // - 0x8857, 0x8A58, // - 0x8859, 0xE5C9, // - 0x885B, 0x8971, // - 0x885D, 0x8FD5, // - 0x885E, 0xE5CA, // - 0x8861, 0x8D74, // - 0x8862, 0xE5CB, // - 0x8863, 0x88DF, // - 0x8868, 0x955C, // - 0x886B, 0xE5CC, // - 0x8870, 0x908A, // - 0x8872, 0xE5D3, // - 0x8875, 0xE5D0, // - 0x8877, 0x928F, // - 0x887D, 0xE5D1, // - 0x887E, 0xE5CE, // - 0x887F, 0x8BDC, // - 0x8881, 0xE5CD, // - 0x8882, 0xE5D4, // - 0x8888, 0x8C55, // - 0x888B, 0x91DC, // - 0x888D, 0xE5DA, // - 0x8892, 0xE5D6, // - 0x8896, 0x91B3, // - 0x8897, 0xE5D5, // - 0x8899, 0xE5D8, // - 0x889E, 0xE5CF, // - 0x88A2, 0xE5D9, // - 0x88A4, 0xE5DB, // - 0x88AB, 0x94ED, // - 0x88AE, 0xE5D7, // - 0x88B0, 0xE5DC, // - 0x88B1, 0xE5DE, // - 0x88B4, 0x8CD1, // - 0x88B5, 0xE5D2, // - 0x88B7, 0x88BF, // - 0x88BF, 0xE5DD, // - 0x88C1, 0x8DD9, // - 0x88C2, 0x97F4, // - 0x88C3, 0xE5DF, // - 0x88C4, 0xE5E0, // - 0x88C5, 0x9195, // - 0x88CF, 0x97A0, // - 0x88D4, 0xE5E1, // - 0x88D5, 0x9754, // - 0x88D8, 0xE5E2, // - 0x88D9, 0xE5E3, // - 0x88DC, 0x95E2, // - 0x88DD, 0xE5E4, // - 0x88DF, 0x8DBE, // - 0x88E1, 0x97A1, // - 0x88E8, 0xE5E9, // - 0x88F2, 0xE5EA, // - 0x88F3, 0x8FD6, // - 0x88F4, 0xE5E8, // - 0x88F8, 0x9787, // - 0x88F9, 0xE5E5, // - 0x88FC, 0xE5E7, // - 0x88FD, 0x90BB, // - 0x88FE, 0x909E, // - 0x8902, 0xE5E6, // - 0x8904, 0xE5EB, // - 0x8907, 0x95A1, // - 0x890A, 0xE5ED, // - 0x890C, 0xE5EC, // - 0x8910, 0x8A8C, // - 0x8912, 0x964A, // - 0x8913, 0xE5EE, // - 0x891D, 0xE5FA, // - 0x891E, 0xE5F0, // - 0x8925, 0xE5F1, // - 0x892A, 0xE5F2, // - 0x892B, 0xE5F3, // - 0x8936, 0xE5F7, // - 0x8938, 0xE5F8, // - 0x893B, 0xE5F6, // - 0x8941, 0xE5F4, // - 0x8943, 0xE5EF, // - 0x8944, 0xE5F5, // - 0x894C, 0xE5F9, // - 0x894D, 0xE8B5, // - 0x8956, 0x89A6, // - 0x895E, 0xE5FC, // - 0x895F, 0x8BDD, // - 0x8960, 0xE5FB, // - 0x8964, 0xE641, // - 0x8966, 0xE640, // - 0x896A, 0xE643, // - 0x896D, 0xE642, // - 0x896F, 0xE644, // - 0x8972, 0x8F50, // - 0x8974, 0xE645, // - 0x8977, 0xE646, // - 0x897E, 0xE647, // - 0x897F, 0x90BC, // - 0x8981, 0x9776, // - 0x8983, 0xE648, // - 0x8986, 0x95A2, // - 0x8987, 0x9465, // - 0x8988, 0xE649, // - 0x898A, 0xE64A, // - 0x898B, 0x8CA9, // - 0x898F, 0x8B4B, // - 0x8993, 0xE64B, // - 0x8996, 0x8E8B, // - 0x8997, 0x9460, // - 0x8998, 0xE64C, // - 0x899A, 0x8A6F, // - 0x89A1, 0xE64D, // - 0x89A6, 0xE64F, // - 0x89A7, 0x9797, // - 0x89A9, 0xE64E, // - 0x89AA, 0x9065, // - 0x89AC, 0xE650, // - 0x89AF, 0xE651, // - 0x89B2, 0xE652, // - 0x89B3, 0x8ACF, // - 0x89BA, 0xE653, // - 0x89BD, 0xE654, // - 0x89BF, 0xE655, // - 0x89C0, 0xE656, // - 0x89D2, 0x8A70, // - 0x89DA, 0xE657, // - 0x89DC, 0xE658, // - 0x89DD, 0xE659, // - 0x89E3, 0x89F0, // - 0x89E6, 0x9047, // - 0x89E7, 0xE65A, // - 0x89F8, 0xE65C, // - 0x8A00, 0x8CBE, // - 0x8A02, 0x92F9, // - 0x8A03, 0xE65D, // - 0x8A08, 0x8C76, // - 0x8A0A, 0x9075, // - 0x8A0C, 0xE660, // - 0x8A0E, 0x93A2, // - 0x8A10, 0xE65F, // - 0x8A13, 0x8C50, // - 0x8A16, 0xE65E, // - 0x8A17, 0x91F5, // - 0x8A18, 0x8B4C, // - 0x8A1B, 0xE661, // - 0x8A1D, 0xE662, // - 0x8A1F, 0x8FD7, // - 0x8A23, 0x8C8D, // - 0x8A25, 0xE663, // - 0x8A2A, 0x964B, // - 0x8A2D, 0x90DD, // - 0x8A31, 0x8B96, // - 0x8A33, 0x96F3, // - 0x8A34, 0x9169, // - 0x8A36, 0xE664, // - 0x8A3A, 0x9066, // - 0x8A3B, 0x9290, // - 0x8A3C, 0x8FD8, // - 0x8A41, 0xE665, // - 0x8A46, 0xE668, // - 0x8A48, 0xE669, // - 0x8A50, 0x8DBC, // - 0x8A51, 0x91C0, // - 0x8A52, 0xE667, // - 0x8A54, 0x8FD9, // - 0x8A55, 0x955D, // - 0x8A5B, 0xE666, // - 0x8A5E, 0x8E8C, // - 0x8A60, 0x8972, // - 0x8A62, 0xE66D, // - 0x8A63, 0x8C77, // - 0x8A66, 0x8E8E, // - 0x8A69, 0x8E8D, // - 0x8A6B, 0x986C, // - 0x8A6C, 0xE66C, // - 0x8A6D, 0xE66B, // - 0x8A6E, 0x9146, // - 0x8A70, 0x8B6C, // - 0x8A71, 0x9862, // - 0x8A72, 0x8A59, // - 0x8A73, 0x8FDA, // - 0x8A7C, 0xE66A, // - 0x8A82, 0xE66F, // - 0x8A84, 0xE670, // - 0x8A85, 0xE66E, // - 0x8A87, 0x8CD6, // - 0x8A89, 0x975F, // - 0x8A8C, 0x8E8F, // - 0x8A8D, 0x9446, // - 0x8A91, 0xE673, // - 0x8A93, 0x90BE, // - 0x8A95, 0x9261, // - 0x8A98, 0x9755, // - 0x8A9A, 0xE676, // - 0x8A9E, 0x8CEA, // - 0x8AA0, 0x90BD, // - 0x8AA1, 0xE672, // - 0x8AA3, 0xE677, // - 0x8AA4, 0x8CEB, // - 0x8AA5, 0xE674, // - 0x8AA6, 0xE675, // - 0x8AA8, 0xE671, // - 0x8AAC, 0x90E0, // - 0x8AAD, 0x93C7, // - 0x8AB0, 0x924E, // - 0x8AB2, 0x89DB, // - 0x8AB9, 0x94EE, // - 0x8ABC, 0x8B62, // - 0x8ABF, 0x92B2, // - 0x8AC2, 0xE67A, // - 0x8AC4, 0xE678, // - 0x8AC7, 0x926B, // - 0x8ACB, 0x90BF, // - 0x8ACC, 0x8AD0, // - 0x8ACD, 0xE679, // - 0x8ACF, 0x907A, // - 0x8AD2, 0x97C8, // - 0x8AD6, 0x985F, // - 0x8ADA, 0xE67B, // - 0x8ADB, 0xE687, // - 0x8ADC, 0x92B3, // - 0x8ADE, 0xE686, // - 0x8AE0, 0xE683, // - 0x8AE1, 0xE68B, // - 0x8AE2, 0xE684, // - 0x8AE4, 0xE680, // - 0x8AE6, 0x92FA, // - 0x8AE7, 0xE67E, // - 0x8AEB, 0xE67C, // - 0x8AED, 0x9740, // - 0x8AEE, 0x8E90, // - 0x8AF1, 0xE681, // - 0x8AF3, 0xE67D, // - 0x8AF7, 0xE685, // - 0x8AF8, 0x8F94, // - 0x8AFA, 0x8CBF, // - 0x8AFE, 0x91F8, // - 0x8B00, 0x9664, // - 0x8B01, 0x8979, // - 0x8B02, 0x88E0, // - 0x8B04, 0x93A3, // - 0x8B07, 0xE689, // - 0x8B0C, 0xE688, // - 0x8B0E, 0x93E4, // - 0x8B10, 0xE68D, // - 0x8B14, 0xE682, // - 0x8B16, 0xE68C, // - 0x8B17, 0xE68E, // - 0x8B19, 0x8CAA, // - 0x8B1A, 0xE68A, // - 0x8B1B, 0x8D75, // - 0x8B1D, 0x8ED3, // - 0x8B20, 0xE68F, // - 0x8B21, 0x9777, // - 0x8B26, 0xE692, // - 0x8B28, 0xE695, // - 0x8B2B, 0xE693, // - 0x8B2C, 0x9554, // - 0x8B33, 0xE690, // - 0x8B39, 0x8BDE, // - 0x8B3E, 0xE694, // - 0x8B41, 0xE696, // - 0x8B49, 0xE69A, // - 0x8B4C, 0xE697, // - 0x8B4E, 0xE699, // - 0x8B4F, 0xE698, // - 0x8B56, 0xE69B, // - 0x8B58, 0x8EAF, // - 0x8B5A, 0xE69D, // - 0x8B5B, 0xE69C, // - 0x8B5C, 0x9588, // - 0x8B5F, 0xE69F, // - 0x8B66, 0x8C78, // - 0x8B6B, 0xE69E, // - 0x8B6C, 0xE6A0, // - 0x8B6F, 0xE6A1, // - 0x8B70, 0x8B63, // - 0x8B71, 0xE3BF, // - 0x8B72, 0x8FF7, // - 0x8B74, 0xE6A2, // - 0x8B77, 0x8CEC, // - 0x8B7D, 0xE6A3, // - 0x8B80, 0xE6A4, // - 0x8B83, 0x8E5D, // - 0x8B8A, 0x9DCC, // - 0x8B8C, 0xE6A5, // - 0x8B8E, 0xE6A6, // - 0x8B90, 0x8F51, // - 0x8B92, 0xE6A7, // - 0x8B93, 0xE6A8, // - 0x8B96, 0xE6A9, // - 0x8B99, 0xE6AA, // - 0x8B9A, 0xE6AB, // - 0x8C37, 0x924A, // - 0x8C3A, 0xE6AC, // - 0x8C3F, 0xE6AE, // - 0x8C41, 0xE6AD, // - 0x8C46, 0x93A4, // - 0x8C48, 0xE6AF, // - 0x8C4A, 0x964C, // - 0x8C4C, 0xE6B0, // - 0x8C4E, 0xE6B1, // - 0x8C50, 0xE6B2, // - 0x8C55, 0xE6B3, // - 0x8C5A, 0x93D8, // - 0x8C61, 0x8FDB, // - 0x8C62, 0xE6B4, // - 0x8C6A, 0x8D8B, // - 0x8C6B, 0x98AC, // - 0x8C6C, 0xE6B5, // - 0x8C78, 0xE6B6, // - 0x8C79, 0x955E, // - 0x8C7A, 0xE6B7, // - 0x8C7C, 0xE6BF, // - 0x8C82, 0xE6B8, // - 0x8C85, 0xE6BA, // - 0x8C89, 0xE6B9, // - 0x8C8A, 0xE6BB, // - 0x8C8C, 0x9665, // - 0x8C8D, 0xE6BC, // - 0x8C8E, 0xE6BD, // - 0x8C94, 0xE6BE, // - 0x8C98, 0xE6C0, // - 0x8C9D, 0x8A4C, // - 0x8C9E, 0x92E5, // - 0x8CA0, 0x9589, // - 0x8CA1, 0x8DE0, // - 0x8CA2, 0x8D76, // - 0x8CA7, 0x956E, // - 0x8CA8, 0x89DD, // - 0x8CA9, 0x94CC, // - 0x8CAA, 0xE6C3, // - 0x8CAB, 0x8AD1, // - 0x8CAC, 0x90D3, // - 0x8CAD, 0xE6C2, // - 0x8CAE, 0xE6C7, // - 0x8CAF, 0x9299, // - 0x8CB0, 0x96E1, // - 0x8CB2, 0xE6C5, // - 0x8CB3, 0xE6C6, // - 0x8CB4, 0x8B4D, // - 0x8CB6, 0xE6C8, // - 0x8CB7, 0x9483, // - 0x8CB8, 0x91DD, // - 0x8CBB, 0x94EF, // - 0x8CBC, 0x935C, // - 0x8CBD, 0xE6C4, // - 0x8CBF, 0x9666, // - 0x8CC0, 0x89EA, // - 0x8CC1, 0xE6CA, // - 0x8CC2, 0x9847, // - 0x8CC3, 0x92C0, // - 0x8CC4, 0x9864, // - 0x8CC7, 0x8E91, // - 0x8CC8, 0xE6C9, // - 0x8CCA, 0x91AF, // - 0x8CCD, 0xE6DA, // - 0x8CCE, 0x9147, // - 0x8CD1, 0x93F6, // - 0x8CD3, 0x956F, // - 0x8CDA, 0xE6CD, // - 0x8CDB, 0x8E5E, // - 0x8CDC, 0x8E92, // - 0x8CDE, 0x8FDC, // - 0x8CE0, 0x9485, // - 0x8CE2, 0x8CAB, // - 0x8CE3, 0xE6CC, // - 0x8CE4, 0xE6CB, // - 0x8CE6, 0x958A, // - 0x8CEA, 0x8EBF, // - 0x8CED, 0x9371, // - 0x8CFA, 0xE6CF, // - 0x8CFB, 0xE6D0, // - 0x8CFC, 0x8D77, // - 0x8CFD, 0xE6CE, // - 0x8D04, 0xE6D1, // - 0x8D05, 0xE6D2, // - 0x8D07, 0xE6D4, // - 0x8D08, 0x91A1, // - 0x8D0A, 0xE6D3, // - 0x8D0B, 0x8AE4, // - 0x8D0D, 0xE6D6, // - 0x8D0F, 0xE6D5, // - 0x8D10, 0xE6D7, // - 0x8D13, 0xE6D9, // - 0x8D14, 0xE6DB, // - 0x8D16, 0xE6DC, // - 0x8D64, 0x90D4, // - 0x8D66, 0x8ECD, // - 0x8D67, 0xE6DD, // - 0x8D6B, 0x8A71, // - 0x8D6D, 0xE6DE, // - 0x8D70, 0x9196, // - 0x8D71, 0xE6DF, // - 0x8D73, 0xE6E0, // - 0x8D74, 0x958B, // - 0x8D77, 0x8B4E, // - 0x8D81, 0xE6E1, // - 0x8D85, 0x92B4, // - 0x8D8A, 0x897A, // - 0x8D99, 0xE6E2, // - 0x8DA3, 0x8EEF, // - 0x8DA8, 0x9096, // - 0x8DB3, 0x91AB, // - 0x8DBA, 0xE6E5, // - 0x8DBE, 0xE6E4, // - 0x8DC2, 0xE6E3, // - 0x8DCB, 0xE6EB, // - 0x8DCC, 0xE6E9, // - 0x8DCF, 0xE6E6, // - 0x8DD6, 0xE6E8, // - 0x8DDA, 0xE6E7, // - 0x8DDB, 0xE6EA, // - 0x8DDD, 0x8B97, // - 0x8DDF, 0xE6EE, // - 0x8DE1, 0x90D5, // - 0x8DE3, 0xE6EF, // - 0x8DE8, 0x8CD7, // - 0x8DEA, 0xE6EC, // - 0x8DEB, 0xE6ED, // - 0x8DEF, 0x9848, // - 0x8DF3, 0x92B5, // - 0x8DF5, 0x9148, // - 0x8DFC, 0xE6F0, // - 0x8DFF, 0xE6F3, // - 0x8E08, 0xE6F1, // - 0x8E09, 0xE6F2, // - 0x8E0A, 0x9778, // - 0x8E0F, 0x93A5, // - 0x8E10, 0xE6F6, // - 0x8E1D, 0xE6F4, // - 0x8E1E, 0xE6F5, // - 0x8E1F, 0xE6F7, // - 0x8E2A, 0xE748, // - 0x8E30, 0xE6FA, // - 0x8E34, 0xE6FB, // - 0x8E35, 0xE6F9, // - 0x8E42, 0xE6F8, // - 0x8E44, 0x92FB, // - 0x8E47, 0xE740, // - 0x8E48, 0xE744, // - 0x8E49, 0xE741, // - 0x8E4A, 0xE6FC, // - 0x8E4C, 0xE742, // - 0x8E50, 0xE743, // - 0x8E55, 0xE74A, // - 0x8E59, 0xE745, // - 0x8E5F, 0x90D6, // - 0x8E60, 0xE747, // - 0x8E63, 0xE749, // - 0x8E64, 0xE746, // - 0x8E72, 0xE74C, // - 0x8E74, 0x8F52, // - 0x8E76, 0xE74B, // - 0x8E7C, 0xE74D, // - 0x8E81, 0xE74E, // - 0x8E84, 0xE751, // - 0x8E85, 0xE750, // - 0x8E87, 0xE74F, // - 0x8E8A, 0xE753, // - 0x8E8B, 0xE752, // - 0x8E8D, 0x96F4, // - 0x8E91, 0xE755, // - 0x8E93, 0xE754, // - 0x8E94, 0xE756, // - 0x8E99, 0xE757, // - 0x8EA1, 0xE759, // - 0x8EAA, 0xE758, // - 0x8EAB, 0x9067, // - 0x8EAC, 0xE75A, // - 0x8EAF, 0x8BEB, // - 0x8EB1, 0xE75D, // - 0x8EBE, 0xE75E, // - 0x8EC5, 0xE75F, // - 0x8EC6, 0xE75C, // - 0x8EC8, 0xE760, // - 0x8ECA, 0x8ED4, // - 0x8ECB, 0xE761, // - 0x8ECC, 0x8B4F, // - 0x8ECD, 0x8C52, // - 0x8ED2, 0x8CAC, // - 0x8EDB, 0xE762, // - 0x8EDF, 0x93EE, // - 0x8EE2, 0x935D, // - 0x8EE3, 0xE763, // - 0x8EEB, 0xE766, // - 0x8EF8, 0x8EB2, // - 0x8EFB, 0xE765, // - 0x8EFC, 0xE764, // - 0x8EFD, 0x8C79, // - 0x8EFE, 0xE767, // - 0x8F03, 0x8A72, // - 0x8F05, 0xE769, // - 0x8F09, 0x8DDA, // - 0x8F0A, 0xE768, // - 0x8F0C, 0xE771, // - 0x8F12, 0xE76B, // - 0x8F13, 0xE76D, // - 0x8F14, 0x95E3, // - 0x8F15, 0xE76A, // - 0x8F19, 0xE76C, // - 0x8F1B, 0xE770, // - 0x8F1C, 0xE76E, // - 0x8F1D, 0x8B50, // - 0x8F1F, 0xE76F, // - 0x8F26, 0xE772, // - 0x8F29, 0x9479, // - 0x8F2A, 0x97D6, // - 0x8F2F, 0x8F53, // - 0x8F33, 0xE773, // - 0x8F38, 0x9741, // - 0x8F39, 0xE775, // - 0x8F3B, 0xE774, // - 0x8F3E, 0xE778, // - 0x8F3F, 0x9760, // - 0x8F42, 0xE777, // - 0x8F44, 0x8A8D, // - 0x8F45, 0xE776, // - 0x8F46, 0xE77B, // - 0x8F49, 0xE77A, // - 0x8F4C, 0xE779, // - 0x8F4D, 0x9351, // - 0x8F4E, 0xE77C, // - 0x8F57, 0xE77D, // - 0x8F5C, 0xE77E, // - 0x8F5F, 0x8D8C, // - 0x8F61, 0x8C44, // - 0x8F62, 0xE780, // - 0x8F63, 0xE781, // - 0x8F64, 0xE782, // - 0x8F9B, 0x9068, // - 0x8F9C, 0xE783, // - 0x8F9E, 0x8EAB, // - 0x8F9F, 0xE784, // - 0x8FA3, 0xE785, // - 0x8FA7, 0x999F, // - 0x8FA8, 0x999E, // - 0x8FAD, 0xE786, // - 0x8FAE, 0xE390, // - 0x8FAF, 0xE787, // - 0x8FB0, 0x9243, // - 0x8FB1, 0x904A, // - 0x8FB2, 0x945F, // - 0x8FB7, 0xE788, // - 0x8FBA, 0x95D3, // - 0x8FBB, 0x92D2, // - 0x8FBC, 0x8D9E, // - 0x8FBF, 0x9248, // - 0x8FC2, 0x8949, // - 0x8FC4, 0x9698, // - 0x8FC5, 0x9076, // - 0x8FCE, 0x8C7D, // - 0x8FD1, 0x8BDF, // - 0x8FD4, 0x95D4, // - 0x8FDA, 0xE789, // - 0x8FE2, 0xE78B, // - 0x8FE5, 0xE78A, // - 0x8FE6, 0x89DE, // - 0x8FE9, 0x93F4, // - 0x8FEA, 0xE78C, // - 0x8FEB, 0x9497, // - 0x8FED, 0x9352, // - 0x8FEF, 0xE78D, // - 0x8FF0, 0x8F71, // - 0x8FF4, 0xE78F, // - 0x8FF7, 0x96C0, // - 0x8FF8, 0xE79E, // - 0x8FF9, 0xE791, // - 0x8FFA, 0xE792, // - 0x8FFD, 0x92C7, // - 0x9000, 0x91DE, // - 0x9001, 0x9197, // - 0x9003, 0x93A6, // - 0x9005, 0xE790, // - 0x9006, 0x8B74, // - 0x900B, 0xE799, // - 0x900D, 0xE796, // - 0x900E, 0xE7A3, // - 0x900F, 0x93A7, // - 0x9010, 0x9280, // - 0x9011, 0xE793, // - 0x9013, 0x92FC, // - 0x9014, 0x9372, // - 0x9015, 0xE794, // - 0x9016, 0xE798, // - 0x9017, 0x9080, // - 0x9019, 0x9487, // - 0x901A, 0x92CA, // - 0x901D, 0x90C0, // - 0x901E, 0xE797, // - 0x901F, 0x91AC, // - 0x9020, 0x91A2, // - 0x9021, 0xE795, // - 0x9022, 0x88A7, // - 0x9023, 0x9841, // - 0x9027, 0xE79A, // - 0x902E, 0x91DF, // - 0x9031, 0x8F54, // - 0x9032, 0x9069, // - 0x9035, 0xE79C, // - 0x9036, 0xE79B, // - 0x9038, 0x88ED, // - 0x9039, 0xE79D, // - 0x903C, 0x954E, // - 0x903E, 0xE7A5, // - 0x9041, 0x93D9, // - 0x9042, 0x908B, // - 0x9045, 0x9278, // - 0x9047, 0x8BF6, // - 0x9049, 0xE7A4, // - 0x904A, 0x9756, // - 0x904B, 0x895E, // - 0x904D, 0x95D5, // - 0x904E, 0x89DF, // - 0x904F, 0xE79F, // - 0x9050, 0xE7A0, // - 0x9051, 0xE7A1, // - 0x9052, 0xE7A2, // - 0x9053, 0x93B9, // - 0x9054, 0x9242, // - 0x9055, 0x88E1, // - 0x9056, 0xE7A6, // - 0x9058, 0xE7A7, // - 0x9059, 0xEAA1, // - 0x905C, 0x91BB, // - 0x905E, 0xE7A8, // - 0x9060, 0x8993, // - 0x9061, 0x916B, // - 0x9063, 0x8CAD, // - 0x9065, 0x9779, // - 0x9068, 0xE7A9, // - 0x9069, 0x934B, // - 0x906D, 0x9198, // - 0x906E, 0x8ED5, // - 0x906F, 0xE7AA, // - 0x9072, 0xE7AD, // - 0x9075, 0x8F85, // - 0x9076, 0xE7AB, // - 0x9077, 0x914A, // - 0x9078, 0x9149, // - 0x907A, 0x88E2, // - 0x907C, 0x97C9, // - 0x907D, 0xE7AF, // - 0x907F, 0x94F0, // - 0x9080, 0xE7B1, // - 0x9081, 0xE7B0, // - 0x9082, 0xE7AE, // - 0x9083, 0xE284, // - 0x9084, 0x8AD2, // - 0x9087, 0xE78E, // - 0x9089, 0xE7B3, // - 0x908A, 0xE7B2, // - 0x908F, 0xE7B4, // - 0x9091, 0x9757, // - 0x90A3, 0x93DF, // - 0x90A6, 0x964D, // - 0x90A8, 0xE7B5, // - 0x90AA, 0x8ED7, // - 0x90AF, 0xE7B6, // - 0x90B1, 0xE7B7, // - 0x90B5, 0xE7B8, // - 0x90B8, 0x9340, // - 0x90C1, 0x88E8, // - 0x90CA, 0x8D78, // - 0x90CE, 0x9859, // - 0x90DB, 0xE7BC, // - 0x90E1, 0x8C53, // - 0x90E2, 0xE7B9, // - 0x90E4, 0xE7BA, // - 0x90E8, 0x9594, // - 0x90ED, 0x8A73, // - 0x90F5, 0x9758, // - 0x90F7, 0x8BBD, // - 0x90FD, 0x9373, // - 0x9102, 0xE7BD, // - 0x9112, 0xE7BE, // - 0x9119, 0xE7BF, // - 0x912D, 0x9341, // - 0x9130, 0xE7C1, // - 0x9132, 0xE7C0, // - 0x9149, 0x93D1, // - 0x914A, 0xE7C2, // - 0x914B, 0x8F55, // - 0x914C, 0x8EDE, // - 0x914D, 0x947A, // - 0x914E, 0x9291, // - 0x9152, 0x8EF0, // - 0x9154, 0x908C, // - 0x9156, 0xE7C3, // - 0x9158, 0xE7C4, // - 0x9162, 0x907C, // - 0x9163, 0xE7C5, // - 0x9165, 0xE7C6, // - 0x9169, 0xE7C7, // - 0x916A, 0x978F, // - 0x916C, 0x8F56, // - 0x9172, 0xE7C9, // - 0x9173, 0xE7C8, // - 0x9175, 0x8D79, // - 0x9177, 0x8D93, // - 0x9178, 0x8E5F, // - 0x9182, 0xE7CC, // - 0x9187, 0x8F86, // - 0x9189, 0xE7CB, // - 0x918B, 0xE7CA, // - 0x918D, 0x91E7, // - 0x9190, 0x8CED, // - 0x9192, 0x90C1, // - 0x9197, 0x94AE, // - 0x919C, 0x8F58, // - 0x91A2, 0xE7CD, // - 0x91A4, 0x8FDD, // - 0x91AA, 0xE7D0, // - 0x91AB, 0xE7CE, // - 0x91AF, 0xE7CF, // - 0x91B4, 0xE7D2, // - 0x91B5, 0xE7D1, // - 0x91B8, 0x8FF8, // - 0x91BA, 0xE7D3, // - 0x91C0, 0xE7D4, // - 0x91C1, 0xE7D5, // - 0x91C6, 0x94CE, // - 0x91C7, 0x8DD1, // - 0x91C8, 0x8EDF, // - 0x91C9, 0xE7D6, // - 0x91CB, 0xE7D7, // - 0x91CC, 0x97A2, // - 0x91CD, 0x8F64, // - 0x91CE, 0x96EC, // - 0x91CF, 0x97CA, // - 0x91D0, 0xE7D8, // - 0x91D1, 0x8BE0, // - 0x91D6, 0xE7D9, // - 0x91D8, 0x9342, // - 0x91DB, 0xE7DC, // - 0x91DC, 0x8A98, // - 0x91DD, 0x906A, // - 0x91DF, 0xE7DA, // - 0x91E1, 0xE7DB, // - 0x91E3, 0x92DE, // - 0x91E6, 0x9674, // - 0x91E7, 0x8BFA, // - 0x91F5, 0xE7DE, // - 0x91F6, 0xE7DF, // - 0x91FC, 0xE7DD, // - 0x91FF, 0xE7E1, // - 0x920D, 0x93DD, // - 0x920E, 0x8A62, // - 0x9211, 0xE7E5, // - 0x9214, 0xE7E2, // - 0x9215, 0xE7E4, // - 0x921E, 0xE7E0, // - 0x9229, 0xE86E, // - 0x922C, 0xE7E3, // - 0x9234, 0x97E9, // - 0x9237, 0x8CD8, // - 0x923F, 0xE7ED, // - 0x9244, 0x9353, // - 0x9245, 0xE7E8, // - 0x9248, 0xE7EB, // - 0x9249, 0xE7E9, // - 0x924B, 0xE7EE, // - 0x9250, 0xE7EF, // - 0x9257, 0xE7E7, // - 0x925A, 0xE7F4, // - 0x925B, 0x8994, // - 0x925E, 0xE7E6, // - 0x9262, 0x94AB, // - 0x9264, 0xE7EA, // - 0x9266, 0x8FDE, // - 0x9271, 0x8D7A, // - 0x927E, 0x9667, // - 0x9280, 0x8BE2, // - 0x9283, 0x8F65, // - 0x9285, 0x93BA, // - 0x9291, 0x914C, // - 0x9293, 0xE7F2, // - 0x9295, 0xE7EC, // - 0x9296, 0xE7F1, // - 0x9298, 0x96C1, // - 0x929A, 0x92B6, // - 0x929B, 0xE7F3, // - 0x929C, 0xE7F0, // - 0x92AD, 0x914B, // - 0x92B7, 0xE7F7, // - 0x92B9, 0xE7F6, // - 0x92CF, 0xE7F5, // - 0x92D2, 0x964E, // - 0x92E4, 0x8F9B, // - 0x92E9, 0xE7F8, // - 0x92EA, 0x95DD, // - 0x92ED, 0x8973, // - 0x92F2, 0x9565, // - 0x92F3, 0x9292, // - 0x92F8, 0x8B98, // - 0x92FA, 0xE7FA, // - 0x92FC, 0x8D7C, // - 0x9306, 0x8E4B, // - 0x930F, 0xE7F9, // - 0x9310, 0x908D, // - 0x9318, 0x908E, // - 0x9319, 0xE840, // - 0x931A, 0xE842, // - 0x9320, 0x8FF9, // - 0x9322, 0xE841, // - 0x9323, 0xE843, // - 0x9326, 0x8BD1, // - 0x9328, 0x9564, // - 0x932B, 0x8EE0, // - 0x932C, 0x9842, // - 0x932E, 0xE7FC, // - 0x932F, 0x8DF6, // - 0x9332, 0x985E, // - 0x9335, 0xE845, // - 0x933A, 0xE844, // - 0x933B, 0xE846, // - 0x9344, 0xE7FB, // - 0x934B, 0x93E7, // - 0x934D, 0x9374, // - 0x9354, 0x92D5, // - 0x9356, 0xE84B, // - 0x935B, 0x9262, // - 0x935C, 0xE847, // - 0x9360, 0xE848, // - 0x936C, 0x8C4C, // - 0x936E, 0xE84A, // - 0x9375, 0x8CAE, // - 0x937C, 0xE849, // - 0x937E, 0x8FDF, // - 0x938C, 0x8A99, // - 0x9394, 0xE84F, // - 0x9396, 0x8DBD, // - 0x9397, 0x9199, // - 0x939A, 0x92C8, // - 0x93A7, 0x8A5A, // - 0x93AC, 0xE84D, // - 0x93AD, 0xE84E, // - 0x93AE, 0x92C1, // - 0x93B0, 0xE84C, // - 0x93B9, 0xE850, // - 0x93C3, 0xE856, // - 0x93C8, 0xE859, // - 0x93D0, 0xE858, // - 0x93D1, 0x934C, // - 0x93D6, 0xE851, // - 0x93D7, 0xE852, // - 0x93D8, 0xE855, // - 0x93DD, 0xE857, // - 0x93E1, 0x8BBE, // - 0x93E4, 0xE85A, // - 0x93E5, 0xE854, // - 0x93E8, 0xE853, // - 0x9403, 0xE85E, // - 0x9407, 0xE85F, // - 0x9410, 0xE860, // - 0x9413, 0xE85D, // - 0x9414, 0xE85C, // - 0x9418, 0x8FE0, // - 0x9419, 0x93A8, // - 0x9421, 0xE864, // - 0x942B, 0xE862, // - 0x9435, 0xE863, // - 0x9436, 0xE861, // - 0x9438, 0x91F6, // - 0x943A, 0xE865, // - 0x9441, 0xE866, // - 0x9444, 0xE868, // - 0x9451, 0x8AD3, // - 0x9452, 0xE867, // - 0x9453, 0x96F8, // - 0x945A, 0xE873, // - 0x945B, 0xE869, // - 0x945E, 0xE86C, // - 0x9460, 0xE86A, // - 0x9462, 0xE86B, // - 0x946A, 0xE86D, // - 0x9470, 0xE86F, // - 0x9475, 0xE870, // - 0x9477, 0xE871, // - 0x947C, 0xE874, // - 0x947D, 0xE872, // - 0x947E, 0xE875, // - 0x947F, 0xE877, // - 0x9481, 0xE876, // - 0x9577, 0x92B7, // - 0x9580, 0x96E5, // - 0x9582, 0xE878, // - 0x9583, 0x914D, // - 0x9587, 0xE879, // - 0x9589, 0x95C2, // - 0x958A, 0xE87A, // - 0x958B, 0x8A4A, // - 0x9591, 0x8AD5, // - 0x9593, 0x8AD4, // - 0x9594, 0xE87B, // - 0x9596, 0xE87C, // - 0x9598, 0xE87D, // - 0x9599, 0xE87E, // - 0x95A0, 0xE880, // - 0x95A2, 0x8AD6, // - 0x95A3, 0x8A74, // - 0x95A4, 0x8D7D, // - 0x95A5, 0x94B4, // - 0x95A7, 0xE882, // - 0x95A8, 0xE881, // - 0x95AD, 0xE883, // - 0x95B2, 0x897B, // - 0x95B9, 0xE886, // - 0x95BB, 0xE885, // - 0x95BC, 0xE884, // - 0x95BE, 0xE887, // - 0x95C3, 0xE88A, // - 0x95C7, 0x88C5, // - 0x95CA, 0xE888, // - 0x95CC, 0xE88C, // - 0x95CD, 0xE88B, // - 0x95D4, 0xE88E, // - 0x95D5, 0xE88D, // - 0x95D6, 0xE88F, // - 0x95D8, 0x93AC, // - 0x95DC, 0xE890, // - 0x95E1, 0xE891, // - 0x95E2, 0xE893, // - 0x95E5, 0xE892, // - 0x961C, 0x958C, // - 0x9621, 0xE894, // - 0x9628, 0xE895, // - 0x962A, 0x8DE3, // - 0x962E, 0xE896, // - 0x962F, 0xE897, // - 0x9632, 0x9668, // - 0x963B, 0x916A, // - 0x963F, 0x88A2, // - 0x9640, 0x91C9, // - 0x9642, 0xE898, // - 0x9644, 0x958D, // - 0x964B, 0xE89B, // - 0x964C, 0xE899, // - 0x964D, 0x8D7E, // - 0x964F, 0xE89A, // - 0x9650, 0x8CC0, // - 0x965B, 0x95C3, // - 0x965C, 0xE89D, // - 0x965D, 0xE89F, // - 0x965E, 0xE89E, // - 0x965F, 0xE8A0, // - 0x9662, 0x8940, // - 0x9663, 0x9077, // - 0x9664, 0x8F9C, // - 0x9665, 0x8AD7, // - 0x9666, 0xE8A1, // - 0x966A, 0x9486, // - 0x966C, 0xE8A3, // - 0x9670, 0x8941, // - 0x9672, 0xE8A2, // - 0x9673, 0x92C2, // - 0x9675, 0x97CB, // - 0x9676, 0x93A9, // - 0x9677, 0xE89C, // - 0x9678, 0x97A4, // - 0x967A, 0x8CAF, // - 0x967D, 0x977A, // - 0x9685, 0x8BF7, // - 0x9686, 0x97B2, // - 0x9688, 0x8C47, // - 0x968A, 0x91E0, // - 0x968B, 0xE440, // - 0x968D, 0xE8A4, // - 0x968E, 0x8A4B, // - 0x968F, 0x908F, // - 0x9694, 0x8A75, // - 0x9695, 0xE8A6, // - 0x9697, 0xE8A7, // - 0x9698, 0xE8A5, // - 0x9699, 0x8C84, // - 0x969B, 0x8DDB, // - 0x969C, 0x8FE1, // - 0x96A0, 0x8942, // - 0x96A3, 0x97D7, // - 0x96A7, 0xE8A9, // - 0x96A8, 0xE7AC, // - 0x96AA, 0xE8A8, // - 0x96B0, 0xE8AC, // - 0x96B1, 0xE8AA, // - 0x96B2, 0xE8AB, // - 0x96B4, 0xE8AD, // - 0x96B6, 0xE8AE, // - 0x96B7, 0x97EA, // - 0x96B8, 0xE8AF, // - 0x96B9, 0xE8B0, // - 0x96BB, 0x90C7, // - 0x96BC, 0x94B9, // - 0x96C0, 0x909D, // - 0x96C1, 0x8AE5, // - 0x96C4, 0x9759, // - 0x96C5, 0x89EB, // - 0x96C6, 0x8F57, // - 0x96C7, 0x8CD9, // - 0x96C9, 0xE8B3, // - 0x96CB, 0xE8B2, // - 0x96CC, 0x8E93, // - 0x96CD, 0xE8B4, // - 0x96CE, 0xE8B1, // - 0x96D1, 0x8E47, // - 0x96D5, 0xE8B8, // - 0x96D6, 0xE5AB, // - 0x96D9, 0x99D4, // - 0x96DB, 0x9097, // - 0x96DC, 0xE8B6, // - 0x96E2, 0x97A3, // - 0x96E3, 0x93EF, // - 0x96E8, 0x894A, // - 0x96EA, 0x90E1, // - 0x96EB, 0x8EB4, // - 0x96F0, 0x95B5, // - 0x96F2, 0x895F, // - 0x96F6, 0x97EB, // - 0x96F7, 0x978B, // - 0x96F9, 0xE8B9, // - 0x96FB, 0x9364, // - 0x9700, 0x8EF9, // - 0x9704, 0xE8BA, // - 0x9706, 0xE8BB, // - 0x9707, 0x906B, // - 0x9708, 0xE8BC, // - 0x970A, 0x97EC, // - 0x970D, 0xE8B7, // - 0x970E, 0xE8BE, // - 0x970F, 0xE8C0, // - 0x9711, 0xE8BF, // - 0x9713, 0xE8BD, // - 0x9716, 0xE8C1, // - 0x9719, 0xE8C2, // - 0x971C, 0x919A, // - 0x971E, 0x89E0, // - 0x9724, 0xE8C3, // - 0x9727, 0x96B6, // - 0x972A, 0xE8C4, // - 0x9730, 0xE8C5, // - 0x9732, 0x9849, // - 0x9738, 0x9E50, // - 0x9739, 0xE8C6, // - 0x973D, 0xE8C7, // - 0x973E, 0xE8C8, // - 0x9742, 0xE8CC, // - 0x9744, 0xE8C9, // - 0x9746, 0xE8CA, // - 0x9748, 0xE8CB, // - 0x9749, 0xE8CD, // - 0x9752, 0x90C2, // - 0x9756, 0x96F5, // - 0x9759, 0x90C3, // - 0x975C, 0xE8CE, // - 0x975E, 0x94F1, // - 0x9760, 0xE8CF, // - 0x9761, 0xEA72, // - 0x9762, 0x96CA, // - 0x9764, 0xE8D0, // - 0x9766, 0xE8D1, // - 0x9768, 0xE8D2, // - 0x9769, 0x8A76, // - 0x976B, 0xE8D4, // - 0x976D, 0x9078, // - 0x9771, 0xE8D5, // - 0x9774, 0x8C43, // - 0x9779, 0xE8D6, // - 0x977A, 0xE8DA, // - 0x977C, 0xE8D8, // - 0x9781, 0xE8D9, // - 0x9784, 0x8A93, // - 0x9785, 0xE8D7, // - 0x9786, 0xE8DB, // - 0x978B, 0xE8DC, // - 0x978D, 0x88C6, // - 0x978F, 0xE8DD, // - 0x9790, 0xE8DE, // - 0x9798, 0x8FE2, // - 0x979C, 0xE8DF, // - 0x97A0, 0x8B66, // - 0x97A3, 0xE8E2, // - 0x97A6, 0xE8E1, // - 0x97A8, 0xE8E0, // - 0x97AB, 0xE691, // - 0x97AD, 0x95DA, // - 0x97B3, 0xE8E3, // - 0x97B4, 0xE8E4, // - 0x97C3, 0xE8E5, // - 0x97C6, 0xE8E6, // - 0x97C8, 0xE8E7, // - 0x97CB, 0xE8E8, // - 0x97D3, 0x8AD8, // - 0x97DC, 0xE8E9, // - 0x97ED, 0xE8EA, // - 0x97EE, 0x9442, // - 0x97F2, 0xE8EC, // - 0x97F3, 0x89B9, // - 0x97F5, 0xE8EF, // - 0x97F6, 0xE8EE, // - 0x97FB, 0x8943, // - 0x97FF, 0x8BBF, // - 0x9801, 0x95C5, // - 0x9802, 0x92B8, // - 0x9803, 0x8DA0, // - 0x9805, 0x8D80, // - 0x9806, 0x8F87, // - 0x9808, 0x907B, // - 0x980C, 0xE8F1, // - 0x980F, 0xE8F0, // - 0x9810, 0x9761, // - 0x9811, 0x8AE6, // - 0x9812, 0x94D0, // - 0x9813, 0x93DA, // - 0x9817, 0x909C, // - 0x9818, 0x97CC, // - 0x981A, 0x8C7A, // - 0x9821, 0xE8F4, // - 0x9824, 0xE8F3, // - 0x982C, 0x966A, // - 0x982D, 0x93AA, // - 0x9834, 0x896F, // - 0x9837, 0xE8F5, // - 0x9838, 0xE8F2, // - 0x983B, 0x9570, // - 0x983C, 0x978A, // - 0x983D, 0xE8F6, // - 0x9846, 0xE8F7, // - 0x984B, 0xE8F9, // - 0x984C, 0x91E8, // - 0x984D, 0x8A7A, // - 0x984E, 0x8A7B, // - 0x984F, 0xE8F8, // - 0x9854, 0x8AE7, // - 0x9855, 0x8CB0, // - 0x9858, 0x8AE8, // - 0x985B, 0x935E, // - 0x985E, 0x97DE, // - 0x9867, 0x8CDA, // - 0x986B, 0xE8FA, // - 0x986F, 0xE8FB, // - 0x9870, 0xE8FC, // - 0x9871, 0xE940, // - 0x9873, 0xE942, // - 0x9874, 0xE941, // - 0x98A8, 0x9597, // - 0x98AA, 0xE943, // - 0x98AF, 0xE944, // - 0x98B1, 0xE945, // - 0x98B6, 0xE946, // - 0x98C3, 0xE948, // - 0x98C4, 0xE947, // - 0x98C6, 0xE949, // - 0x98DB, 0x94F2, // - 0x98DC, 0xE3CA, // - 0x98DF, 0x9048, // - 0x98E2, 0x8B51, // - 0x98E9, 0xE94A, // - 0x98EB, 0xE94B, // - 0x98ED, 0x99AA, // - 0x98EE, 0x9F5A, // - 0x98EF, 0x94D1, // - 0x98F2, 0x88F9, // - 0x98F4, 0x88B9, // - 0x98FC, 0x8E94, // - 0x98FD, 0x964F, // - 0x98FE, 0x8FFC, // - 0x9903, 0xE94C, // - 0x9905, 0x96DD, // - 0x9909, 0xE94D, // - 0x990A, 0x977B, // - 0x990C, 0x8961, // - 0x9910, 0x8E60, // - 0x9912, 0xE94E, // - 0x9913, 0x89EC, // - 0x9914, 0xE94F, // - 0x9918, 0xE950, // - 0x991D, 0xE952, // - 0x991E, 0xE953, // - 0x9920, 0xE955, // - 0x9921, 0xE951, // - 0x9924, 0xE954, // - 0x9928, 0x8AD9, // - 0x992C, 0xE956, // - 0x992E, 0xE957, // - 0x993D, 0xE958, // - 0x993E, 0xE959, // - 0x9942, 0xE95A, // - 0x9945, 0xE95C, // - 0x994B, 0xE95E, // - 0x994C, 0xE961, // - 0x9950, 0xE95D, // - 0x9951, 0xE95F, // - 0x9952, 0xE960, // - 0x9955, 0xE962, // - 0x9957, 0x8BC0, // - 0x9996, 0x8EF1, // - 0x9997, 0xE963, // - 0x9998, 0xE964, // - 0x9999, 0x8D81, // - 0x99A5, 0xE965, // - 0x99A8, 0x8A5D, // - 0x99AC, 0x946E, // - 0x99AD, 0xE966, // - 0x99AE, 0xE967, // - 0x99B3, 0x9279, // - 0x99B4, 0x93E9, // - 0x99BC, 0xE968, // - 0x99C1, 0x949D, // - 0x99C4, 0x91CA, // - 0x99C5, 0x8977, // - 0x99C6, 0x8BEC, // - 0x99C8, 0x8BED, // - 0x99D0, 0x9293, // - 0x99D1, 0xE96D, // - 0x99D2, 0x8BEE, // - 0x99D5, 0x89ED, // - 0x99D8, 0xE96C, // - 0x99DB, 0xE96A, // - 0x99DD, 0xE96B, // - 0x99DF, 0xE969, // - 0x99E2, 0xE977, // - 0x99ED, 0xE96E, // - 0x99EE, 0xE96F, // - 0x99F1, 0xE970, // - 0x99F2, 0xE971, // - 0x99F8, 0xE973, // - 0x99FB, 0xE972, // - 0x99FF, 0x8F78, // - 0x9A01, 0xE974, // - 0x9A05, 0xE976, // - 0x9A0E, 0x8B52, // - 0x9A0F, 0xE975, // - 0x9A12, 0x919B, // - 0x9A13, 0x8CB1, // - 0x9A19, 0xE978, // - 0x9A28, 0x91CB, // - 0x9A2B, 0xE979, // - 0x9A30, 0x93AB, // - 0x9A37, 0xE97A, // - 0x9A3E, 0xE980, // - 0x9A40, 0xE97D, // - 0x9A42, 0xE97C, // - 0x9A43, 0xE97E, // - 0x9A45, 0xE97B, // - 0x9A4D, 0xE982, // - 0x9A55, 0xE981, // - 0x9A57, 0xE984, // - 0x9A5A, 0x8BC1, // - 0x9A5B, 0xE983, // - 0x9A5F, 0xE985, // - 0x9A62, 0xE986, // - 0x9A64, 0xE988, // - 0x9A65, 0xE987, // - 0x9A69, 0xE989, // - 0x9A6A, 0xE98B, // - 0x9A6B, 0xE98A, // - 0x9AA8, 0x8D9C, // - 0x9AAD, 0xE98C, // - 0x9AB0, 0xE98D, // - 0x9ABC, 0xE98E, // - 0x9AC0, 0xE98F, // - 0x9AC4, 0x9091, // - 0x9ACF, 0xE990, // - 0x9AD1, 0xE991, // - 0x9AD3, 0xE992, // - 0x9AD4, 0xE993, // - 0x9AD8, 0x8D82, // - 0x9ADE, 0xE994, // - 0x9ADF, 0xE995, // - 0x9AE2, 0xE996, // - 0x9AE3, 0xE997, // - 0x9AE6, 0xE998, // - 0x9AEA, 0x94AF, // - 0x9AEB, 0xE99A, // - 0x9AED, 0x9545, // - 0x9AEE, 0xE99B, // - 0x9AEF, 0xE999, // - 0x9AF1, 0xE99D, // - 0x9AF4, 0xE99C, // - 0x9AF7, 0xE99E, // - 0x9AFB, 0xE99F, // - 0x9B06, 0xE9A0, // - 0x9B18, 0xE9A1, // - 0x9B1A, 0xE9A2, // - 0x9B1F, 0xE9A3, // - 0x9B22, 0xE9A4, // - 0x9B23, 0xE9A5, // - 0x9B25, 0xE9A6, // - 0x9B27, 0xE9A7, // - 0x9B28, 0xE9A8, // - 0x9B29, 0xE9A9, // - 0x9B2A, 0xE9AA, // - 0x9B2E, 0xE9AB, // - 0x9B2F, 0xE9AC, // - 0x9B31, 0x9F54, // - 0x9B32, 0xE9AD, // - 0x9B3B, 0xE2F6, // - 0x9B3C, 0x8B53, // - 0x9B41, 0x8A40, // - 0x9B42, 0x8DB0, // - 0x9B43, 0xE9AF, // - 0x9B44, 0xE9AE, // - 0x9B45, 0x96A3, // - 0x9B4D, 0xE9B1, // - 0x9B4E, 0xE9B2, // - 0x9B4F, 0xE9B0, // - 0x9B51, 0xE9B3, // - 0x9B54, 0x9682, // - 0x9B58, 0xE9B4, // - 0x9B5A, 0x8B9B, // - 0x9B6F, 0x9844, // - 0x9B74, 0xE9B5, // - 0x9B83, 0xE9B7, // - 0x9B8E, 0x88BC, // - 0x9B91, 0xE9B8, // - 0x9B92, 0x95A9, // - 0x9B93, 0xE9B6, // - 0x9B96, 0xE9B9, // - 0x9B97, 0xE9BA, // - 0x9B9F, 0xE9BB, // - 0x9BA0, 0xE9BC, // - 0x9BA8, 0xE9BD, // - 0x9BAA, 0x968E, // - 0x9BAB, 0x8E4C, // - 0x9BAD, 0x8DF8, // - 0x9BAE, 0x914E, // - 0x9BB4, 0xE9BE, // - 0x9BB9, 0xE9C1, // - 0x9BC0, 0xE9BF, // - 0x9BC6, 0xE9C2, // - 0x9BC9, 0x8CEF, // - 0x9BCA, 0xE9C0, // - 0x9BCF, 0xE9C3, // - 0x9BD1, 0xE9C4, // - 0x9BD2, 0xE9C5, // - 0x9BD4, 0xE9C9, // - 0x9BD6, 0x8E49, // - 0x9BDB, 0x91E2, // - 0x9BE1, 0xE9CA, // - 0x9BE2, 0xE9C7, // - 0x9BE3, 0xE9C6, // - 0x9BE4, 0xE9C8, // - 0x9BE8, 0x8C7E, // - 0x9BF0, 0xE9CE, // - 0x9BF1, 0xE9CD, // - 0x9BF2, 0xE9CC, // - 0x9BF5, 0x88B1, // - 0x9C04, 0xE9D8, // - 0x9C06, 0xE9D4, // - 0x9C08, 0xE9D5, // - 0x9C09, 0xE9D1, // - 0x9C0A, 0xE9D7, // - 0x9C0C, 0xE9D3, // - 0x9C0D, 0x8A82, // - 0x9C10, 0x986B, // - 0x9C12, 0xE9D6, // - 0x9C13, 0xE9D2, // - 0x9C14, 0xE9D0, // - 0x9C15, 0xE9CF, // - 0x9C1B, 0xE9DA, // - 0x9C21, 0xE9DD, // - 0x9C24, 0xE9DC, // - 0x9C25, 0xE9DB, // - 0x9C2D, 0x9568, // - 0x9C2E, 0xE9D9, // - 0x9C2F, 0x88F1, // - 0x9C30, 0xE9DE, // - 0x9C32, 0xE9E0, // - 0x9C39, 0x8A8F, // - 0x9C3A, 0xE9CB, // - 0x9C3B, 0x8956, // - 0x9C3E, 0xE9E2, // - 0x9C46, 0xE9E1, // - 0x9C47, 0xE9DF, // - 0x9C48, 0x924C, // - 0x9C52, 0x9690, // - 0x9C57, 0x97D8, // - 0x9C5A, 0xE9E3, // - 0x9C60, 0xE9E4, // - 0x9C67, 0xE9E5, // - 0x9C76, 0xE9E6, // - 0x9C78, 0xE9E7, // - 0x9CE5, 0x92B9, // - 0x9CE7, 0xE9E8, // - 0x9CE9, 0x94B5, // - 0x9CEB, 0xE9ED, // - 0x9CEC, 0xE9E9, // - 0x9CF0, 0xE9EA, // - 0x9CF3, 0x9650, // - 0x9CF4, 0x96C2, // - 0x9CF6, 0x93CE, // - 0x9D03, 0xE9EE, // - 0x9D06, 0xE9EF, // - 0x9D07, 0x93BC, // - 0x9D08, 0xE9EC, // - 0x9D09, 0xE9EB, // - 0x9D0E, 0x89A8, // - 0x9D12, 0xE9F7, // - 0x9D15, 0xE9F6, // - 0x9D1B, 0x8995, // - 0x9D1F, 0xE9F4, // - 0x9D23, 0xE9F3, // - 0x9D26, 0xE9F1, // - 0x9D28, 0x8A9B, // - 0x9D2A, 0xE9F0, // - 0x9D2B, 0x8EB0, // - 0x9D2C, 0x89A7, // - 0x9D3B, 0x8D83, // - 0x9D3E, 0xE9FA, // - 0x9D3F, 0xE9F9, // - 0x9D41, 0xE9F8, // - 0x9D44, 0xE9F5, // - 0x9D46, 0xE9FB, // - 0x9D48, 0xE9FC, // - 0x9D50, 0xEA44, // - 0x9D51, 0xEA43, // - 0x9D59, 0xEA45, // - 0x9D5C, 0x894C, // - 0x9D5D, 0xEA40, // - 0x9D5E, 0xEA41, // - 0x9D60, 0x8D94, // - 0x9D61, 0x96B7, // - 0x9D64, 0xEA42, // - 0x9D6C, 0x9651, // - 0x9D6F, 0xEA4A, // - 0x9D72, 0xEA46, // - 0x9D7A, 0xEA4B, // - 0x9D87, 0xEA48, // - 0x9D89, 0xEA47, // - 0x9D8F, 0x8C7B, // - 0x9D9A, 0xEA4C, // - 0x9DA4, 0xEA4D, // - 0x9DA9, 0xEA4E, // - 0x9DAB, 0xEA49, // - 0x9DAF, 0xE9F2, // - 0x9DB2, 0xEA4F, // - 0x9DB4, 0x92DF, // - 0x9DB8, 0xEA53, // - 0x9DBA, 0xEA54, // - 0x9DBB, 0xEA52, // - 0x9DC1, 0xEA51, // - 0x9DC2, 0xEA57, // - 0x9DC4, 0xEA50, // - 0x9DC6, 0xEA55, // - 0x9DCF, 0xEA56, // - 0x9DD3, 0xEA59, // - 0x9DD9, 0xEA58, // - 0x9DED, 0xEA5C, // - 0x9DEF, 0xEA5D, // - 0x9DF2, 0x9868, // - 0x9DF8, 0xEA5A, // - 0x9DF9, 0x91E9, // - 0x9DFA, 0x8DEB, // - 0x9DFD, 0xEA5E, // - 0x9E1A, 0xEA5F, // - 0x9E1B, 0xEA60, // - 0x9E1E, 0xEA61, // - 0x9E75, 0xEA62, // - 0x9E78, 0x8CB2, // - 0x9E79, 0xEA63, // - 0x9E7D, 0xEA64, // - 0x9E7F, 0x8EAD, // - 0x9E81, 0xEA65, // - 0x9E88, 0xEA66, // - 0x9E8B, 0xEA67, // - 0x9E8C, 0xEA68, // - 0x9E91, 0xEA6B, // - 0x9E92, 0xEA69, // - 0x9E95, 0xEA6A, // - 0x9E97, 0x97ED, // - 0x9E9D, 0xEA6C, // - 0x9E9F, 0x97D9, // - 0x9EA5, 0xEA6D, // - 0x9EA6, 0x949E, // - 0x9EA9, 0xEA6E, // - 0x9EAA, 0xEA70, // - 0x9EAD, 0xEA71, // - 0x9EB8, 0xEA6F, // - 0x9EB9, 0x8D8D, // - 0x9EBA, 0x96CB, // - 0x9EBB, 0x9683, // - 0x9EBC, 0x9BF5, // - 0x9EBE, 0x9F80, // - 0x9EBF, 0x969B, // - 0x9EC4, 0x89A9, // - 0x9ECC, 0xEA73, // - 0x9ECD, 0x8B6F, // - 0x9ECE, 0xEA74, // - 0x9ECF, 0xEA75, // - 0x9ED0, 0xEA76, // - 0x9ED2, 0x8D95, // - 0x9ED4, 0xEA77, // - 0x9ED8, 0xE0D2, // - 0x9ED9, 0x96D9, // - 0x9EDB, 0x91E1, // - 0x9EDC, 0xEA78, // - 0x9EDD, 0xEA7A, // - 0x9EDE, 0xEA79, // - 0x9EE0, 0xEA7B, // - 0x9EE5, 0xEA7C, // - 0x9EE8, 0xEA7D, // - 0x9EEF, 0xEA7E, // - 0x9EF4, 0xEA80, // - 0x9EF6, 0xEA81, // - 0x9EF7, 0xEA82, // - 0x9EF9, 0xEA83, // - 0x9EFB, 0xEA84, // - 0x9EFC, 0xEA85, // - 0x9EFD, 0xEA86, // - 0x9F07, 0xEA87, // - 0x9F08, 0xEA88, // - 0x9F0E, 0x9343, // - 0x9F13, 0x8CDB, // - 0x9F15, 0xEA8A, // - 0x9F20, 0x916C, // - 0x9F21, 0xEA8B, // - 0x9F2C, 0xEA8C, // - 0x9F3B, 0x9540, // - 0x9F3E, 0xEA8D, // - 0x9F4A, 0xEA8E, // - 0x9F4B, 0xE256, // - 0x9F4E, 0xE6D8, // - 0x9F4F, 0xE8EB, // - 0x9F52, 0xEA8F, // - 0x9F54, 0xEA90, // - 0x9F5F, 0xEA92, // - 0x9F60, 0xEA93, // - 0x9F61, 0xEA94, // - 0x9F62, 0x97EE, // - 0x9F63, 0xEA91, // - 0x9F66, 0xEA95, // - 0x9F67, 0xEA96, // - 0x9F6A, 0xEA98, // - 0x9F6C, 0xEA97, // - 0x9F72, 0xEA9A, // - 0x9F76, 0xEA9B, // - 0x9F77, 0xEA99, // - 0x9F8D, 0x97B4, // - 0x9F95, 0xEA9C, // - 0x9F9C, 0xEA9D, // - 0x9F9D, 0xE273, // - 0x9FA0, 0xEA9E, // - 0xFF01, 0x8149, // FULLWIDTH EXCLAMATION MARK - 0xFF03, 0x8194, // FULLWIDTH NUMBER SIGN - 0xFF04, 0x8190, // FULLWIDTH DOLLAR SIGN - 0xFF05, 0x8193, // FULLWIDTH PERCENT SIGN - 0xFF06, 0x8195, // FULLWIDTH AMPERSAND - 0xFF07, 0x81AD, // FULLWIDTH APOSTROPHE - 0xFF08, 0x8169, // FULLWIDTH LEFT PARENTHESIS - 0xFF09, 0x816A, // FULLWIDTH RIGHT PARENTHESIS - 0xFF0A, 0x8196, // FULLWIDTH ASTERISK - 0xFF0B, 0x817B, // FULLWIDTH PLUS SIGN - 0xFF0C, 0x8143, // FULLWIDTH COMMA - 0xFF0E, 0x8144, // FULLWIDTH FULL STOP - 0xFF0F, 0x815E, // FULLWIDTH SOLIDUS - 0xFF10, 0x824F, // FULLWIDTH DIGIT ZERO - 0xFF11, 0x8250, // FULLWIDTH DIGIT ONE - 0xFF12, 0x8251, // FULLWIDTH DIGIT TWO - 0xFF13, 0x8252, // FULLWIDTH DIGIT THREE - 0xFF14, 0x8253, // FULLWIDTH DIGIT FOUR - 0xFF15, 0x8254, // FULLWIDTH DIGIT FIVE - 0xFF16, 0x8255, // FULLWIDTH DIGIT SIX - 0xFF17, 0x8256, // FULLWIDTH DIGIT SEVEN - 0xFF18, 0x8257, // FULLWIDTH DIGIT EIGHT - 0xFF19, 0x8258, // FULLWIDTH DIGIT NINE - 0xFF1A, 0x8146, // FULLWIDTH COLON - 0xFF1B, 0x8147, // FULLWIDTH SEMICOLON - 0xFF1C, 0x8183, // FULLWIDTH LESS-THAN SIGN - 0xFF1D, 0x8181, // FULLWIDTH EQUALS SIGN - 0xFF1E, 0x8184, // FULLWIDTH GREATER-THAN SIGN - 0xFF1F, 0x8148, // FULLWIDTH QUESTION MARK - 0xFF20, 0x8197, // FULLWIDTH COMMERCIAL AT - 0xFF21, 0x8260, // FULLWIDTH LATIN CAPITAL LETTER A - 0xFF22, 0x8261, // FULLWIDTH LATIN CAPITAL LETTER B - 0xFF23, 0x8262, // FULLWIDTH LATIN CAPITAL LETTER C - 0xFF24, 0x8263, // FULLWIDTH LATIN CAPITAL LETTER D - 0xFF25, 0x8264, // FULLWIDTH LATIN CAPITAL LETTER E - 0xFF26, 0x8265, // FULLWIDTH LATIN CAPITAL LETTER F - 0xFF27, 0x8266, // FULLWIDTH LATIN CAPITAL LETTER G - 0xFF28, 0x8267, // FULLWIDTH LATIN CAPITAL LETTER H - 0xFF29, 0x8268, // FULLWIDTH LATIN CAPITAL LETTER I - 0xFF2A, 0x8269, // FULLWIDTH LATIN CAPITAL LETTER J - 0xFF2B, 0x826A, // FULLWIDTH LATIN CAPITAL LETTER K - 0xFF2C, 0x826B, // FULLWIDTH LATIN CAPITAL LETTER L - 0xFF2D, 0x826C, // FULLWIDTH LATIN CAPITAL LETTER M - 0xFF2E, 0x826D, // FULLWIDTH LATIN CAPITAL LETTER N - 0xFF2F, 0x826E, // FULLWIDTH LATIN CAPITAL LETTER O - 0xFF30, 0x826F, // FULLWIDTH LATIN CAPITAL LETTER P - 0xFF31, 0x8270, // FULLWIDTH LATIN CAPITAL LETTER Q - 0xFF32, 0x8271, // FULLWIDTH LATIN CAPITAL LETTER R - 0xFF33, 0x8272, // FULLWIDTH LATIN CAPITAL LETTER S - 0xFF34, 0x8273, // FULLWIDTH LATIN CAPITAL LETTER T - 0xFF35, 0x8274, // FULLWIDTH LATIN CAPITAL LETTER U - 0xFF36, 0x8275, // FULLWIDTH LATIN CAPITAL LETTER V - 0xFF37, 0x8276, // FULLWIDTH LATIN CAPITAL LETTER W - 0xFF38, 0x8277, // FULLWIDTH LATIN CAPITAL LETTER X - 0xFF39, 0x8278, // FULLWIDTH LATIN CAPITAL LETTER Y - 0xFF3A, 0x8279, // FULLWIDTH LATIN CAPITAL LETTER Z - 0xFF3B, 0x816D, // FULLWIDTH LEFT SQUARE BRACKET - 0xFF3D, 0x816E, // FULLWIDTH RIGHT SQUARE BRACKET - 0xFF3E, 0x814F, // FULLWIDTH CIRCUMFLEX ACCENT - 0xFF3F, 0x8151, // FULLWIDTH LOW LINE - 0xFF40, 0x814D, // FULLWIDTH GRAVE ACCENT - 0xFF41, 0x8281, // FULLWIDTH LATIN SMALL LETTER A - 0xFF42, 0x8282, // FULLWIDTH LATIN SMALL LETTER B - 0xFF43, 0x8283, // FULLWIDTH LATIN SMALL LETTER C - 0xFF44, 0x8284, // FULLWIDTH LATIN SMALL LETTER D - 0xFF45, 0x8285, // FULLWIDTH LATIN SMALL LETTER E - 0xFF46, 0x8286, // FULLWIDTH LATIN SMALL LETTER F - 0xFF47, 0x8287, // FULLWIDTH LATIN SMALL LETTER G - 0xFF48, 0x8288, // FULLWIDTH LATIN SMALL LETTER H - 0xFF49, 0x8289, // FULLWIDTH LATIN SMALL LETTER I - 0xFF4A, 0x828A, // FULLWIDTH LATIN SMALL LETTER J - 0xFF4B, 0x828B, // FULLWIDTH LATIN SMALL LETTER K - 0xFF4C, 0x828C, // FULLWIDTH LATIN SMALL LETTER L - 0xFF4D, 0x828D, // FULLWIDTH LATIN SMALL LETTER M - 0xFF4E, 0x828E, // FULLWIDTH LATIN SMALL LETTER N - 0xFF4F, 0x828F, // FULLWIDTH LATIN SMALL LETTER O - 0xFF50, 0x8290, // FULLWIDTH LATIN SMALL LETTER P - 0xFF51, 0x8291, // FULLWIDTH LATIN SMALL LETTER Q - 0xFF52, 0x8292, // FULLWIDTH LATIN SMALL LETTER R - 0xFF53, 0x8293, // FULLWIDTH LATIN SMALL LETTER S - 0xFF54, 0x8294, // FULLWIDTH LATIN SMALL LETTER T - 0xFF55, 0x8295, // FULLWIDTH LATIN SMALL LETTER U - 0xFF56, 0x8296, // FULLWIDTH LATIN SMALL LETTER V - 0xFF57, 0x8297, // FULLWIDTH LATIN SMALL LETTER W - 0xFF58, 0x8298, // FULLWIDTH LATIN SMALL LETTER X - 0xFF59, 0x8299, // FULLWIDTH LATIN SMALL LETTER Y - 0xFF5A, 0x829A, // FULLWIDTH LATIN SMALL LETTER Z - 0xFF5B, 0x816F, // FULLWIDTH LEFT CURLY BRACKET - 0xFF5C, 0x8162, // FULLWIDTH VERTICAL LINE - 0xFF5D, 0x8170, // FULLWIDTH RIGHT CURLY BRACKET - 0xFFE3, 0x8150, // FULLWIDTH MACRON - 0xFFE5, 0x818F // FULLWIDTH YEN SIGN -}; +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +int sjis_wctomb_zint(unsigned char* r, unsigned int wc, size_t n); +int sjis_utf8tomb(struct zint_symbol *symbol, const unsigned char source[], size_t* p_length, unsigned int* jisdata); +int sjis_utf8tosb(int eci, const unsigned char source[], size_t* p_length, unsigned int* jisdata); +void sjis_cpy(const unsigned char source[], size_t* p_length, unsigned int* jisdata); + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* SJIS_H */ diff --git a/backend/svg.c b/backend/svg.c index 6cde4635..e7aefff4 100644 --- a/backend/svg.c +++ b/backend/svg.c @@ -29,6 +29,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include #include @@ -104,7 +105,7 @@ int svg_plot(struct zint_symbol *symbol) { int html_len = strlen((char *)symbol->text) + 1; - for (0; i < strlen((char *)symbol->text); i++) { + for (i = 0; i < strlen((char *)symbol->text); i++) { switch(symbol->text[i]) { case '>': case '<': diff --git a/backend/tests/CMakeLists.txt b/backend/tests/CMakeLists.txt index 03e7f7bd..1230ac13 100644 --- a/backend/tests/CMakeLists.txt +++ b/backend/tests/CMakeLists.txt @@ -47,7 +47,9 @@ macro(zint_add_test test_name test_command) endmacro(zint_add_test) zint_add_test(channel, test_channel) +zint_add_test(common, test_common) zint_add_test(composite, test_composite) +zint_add_test(dmatrix, test_dmatrix) zint_add_test(eci, test_eci) zint_add_test(gs1, test_gs1) zint_add_test(imail, test_imail) @@ -58,5 +60,6 @@ zint_add_test(postal, test_postal) zint_add_test(qr, test_qr) zint_add_test(raster, test_raster) zint_add_test(rss, test_rss) +zint_add_test(sjis, test_sjis) zint_add_test(upcean, test_upcean) zint_add_test(vector, test_vector) diff --git a/backend/tests/README b/backend/tests/README new file mode 100644 index 00000000..38c069ac --- /dev/null +++ b/backend/tests/README @@ -0,0 +1,53 @@ +Zint backend test suite +----------------------- + +To make: + + cd + cd backend/tests + mkdir build + cd build + cmake .. + make + +To run all tests: + + make test + +To run individual tests, eg: + + ./test_common + ./test_vector + +To make with gcc sanitize, first set for libzint and make: + + cd + cd build + cmake -DZINT_SANITIZE:BOOL=1 .. + make && sudo make install + +Then set for tests and make: + + cd + cd backend/tests/build + cmake -DZINT_SANITIZE:BOOL=1 .. + make + +Similarly to make with gcc debug: + + cd + cd build + cmake -DZINT_DEBUG:BOOL=1 .. + make && sudo make install + + cd + cd backend/tests/build + cmake -DZINT_DEBUG:BOOL=1 .. + make + +To undo sanitize/debug, remake each after setting: + + cmake -DZINT_SANITIZE:BOOL=0 .. + cmake -DZINT_DEBUG:BOOL=0 .. + +Note that sanitize is not safe to use in production, as it's a security risk. diff --git a/backend/tests/test_common.c b/backend/tests/test_common.c new file mode 100644 index 00000000..f62725ca --- /dev/null +++ b/backend/tests/test_common.c @@ -0,0 +1,85 @@ +/* + libzint - the open source barcode library + Copyright (C) 2008-2019 Robin Stuart + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the project nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + */ +/* vim: set ts=4 sw=4 et : */ + +#include "testcommon.h" + +static void test_utf8toutf16(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int length; + int ret; + size_t ret_length; + int expected_vals[20]; + char* comment; + }; + // s/\/\*[ 0-9]*\*\//\=printf("\/*%3d*\/", line(".") - line("'<")) + struct item data[] = { + /* 0*/ { "", -1, 0, 0, {}, "" }, + /* 1*/ { "\000a\302\200\340\240\200", 7, 0, 4, { 0, 'a', 0x80, 0x800 }, "NUL a C280 E0A080" }, + /* 2*/ { "\357\277\277", -1, 0, 1, { 0xFFFF }, "EFBFBF" }, + /* 3*/ { "\360\220\200\200", -1, ZINT_ERROR_INVALID_DATA, -1, {}, "Four-byte F0908080" }, + /* 4*/ { "a\200b", -1, ZINT_ERROR_INVALID_DATA, -1, {}, "Orphan continuation 0x80" }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + int vals[20]; + struct zint_symbol symbol; + + for (int i = 0; i < data_size; i++) { + + int length = data[i].length == -1 ? strlen(data[i].data) : data[i].length; + size_t ret_length = length; + + ret = utf8toutf16(&symbol, data[i].data, vals, &ret_length); + assert_equal(ret, data[i].ret, "i:%d ret %d != %d\n", i, ret, data[i].ret); + if (ret == 0) { + assert_equal(ret_length, data[i].ret_length, "i:%d ret_length %ld != %ld\n", i, ret_length, data[i].ret_length); + for (int j = 0; j < ret_length; j++) { + assert_equal(vals[j], data[i].expected_vals[j], "i:%d vals[%d] %04X != %04X\n", i, j, vals[j], data[i].expected_vals[j]); + } + } + } + + testFinish(); +} + +int main() +{ + test_utf8toutf16(); + + testReport(); + + return 0; +} diff --git a/backend/tests/test_dmatrix.c b/backend/tests/test_dmatrix.c new file mode 100644 index 00000000..83591b57 --- /dev/null +++ b/backend/tests/test_dmatrix.c @@ -0,0 +1,153 @@ +/* + libzint - the open source barcode library + Copyright (C) 2008-2019 Robin Stuart + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the project nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + */ +/* vim: set ts=4 sw=4 et : */ + +#include "testcommon.h" + +//#define TEST_ENCODE_GENERATE_EXPECTED 1 + +static void test_buffer(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int eci; + int input_mode; + int output_options; + int ret; + char* comment; + }; + // s/\/\*[ 0-9]*\*\//\=printf("\/*%3d*\/", line(".") - line("'<")) + struct item data[] = { + /* 0*/ { "1", 16383, UNICODE_MODE, READER_INIT, 0, "" }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_DATAMATRIX; + symbol->input_mode = data[i].input_mode; + symbol->eci = data[i].eci; + symbol->output_options = data[i].output_options; + + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d\n", i, ret, data[i].ret); + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + +static void test_encode(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int ret; + + int expected_rows; + int expected_width; + char* comment; + char* expected; + }; + struct item data[] = { + /* 0*/ { "1234abcd", 0, 14, 14, "", + "10101010101010" + "11001010001111" + "11000101100100" + "11001001100001" + "11011001110000" + "10100101011001" + "10101110011000" + "10011101100101" + "10100001001000" + "10101000001111" + "11101100000010" + "11010010100101" + "10011111000100" + "11111111111111" + }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_DATAMATRIX; + + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d\n", i, ret, data[i].ret); + + #ifdef TEST_ENCODE_GENERATE_EXPECTED + printf(" /*%3d*/ { \"%s\", %s, %d, %d, \"%s\",\n", i, data[i].data, testUtilErrorName(data[i].ret), symbol->rows, symbol->width, data[i].comment); + testUtilModulesDump(symbol, " ", "\n"); + printf(" },\n"); + #else + if (ret < 5) { + assert_equal(symbol->rows, data[i].expected_rows, "i:%d symbol->rows %d != %d (%s)\n", i, symbol->rows, data[i].expected_rows, data[i].data); + assert_equal(symbol->width, data[i].expected_width, "i:%d symbol->width %d != %d (%s)\n", i, symbol->width, data[i].expected_width, data[i].data); + + if (ret == 0) { + int width, row; + ret = testUtilModulesCmp(symbol, data[i].expected, &width, &row); + assert_zero(ret, "i:%d testUtilModulesCmp ret %d != 0 width %d row %d (%s)\n", i, ret, width, row, data[i].data); + } + } + #endif + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + +int main() +{ + test_buffer(); + test_encode(); + + testReport(); + + return 0; +} diff --git a/backend/tests/test_eci.c b/backend/tests/test_eci.c index 3e1cb219..9773d8eb 100644 --- a/backend/tests/test_eci.c +++ b/backend/tests/test_eci.c @@ -27,6 +27,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include "testcommon.h" @@ -105,7 +106,8 @@ static void test_iso_8859_16(void) testFinish(); } -static void test_encode(void) +// Only testing standard non-extended barcodes here, ie not QRCODE, MICROQR, GRIDMATRIX, HANXIN or UPNQR +static void test_reduced_charset_input(void) { testStart(""); @@ -115,106 +117,98 @@ static void test_encode(void) int input_mode; int eci; unsigned char* data; - int ret_encode; - float w; - float h; - int ret_vector; + int ret; int expected_eci; + char* comment; }; - // é U+00E9 in ISO 8859-1 plus other ISO 8859 (but not in ISO 8859-7 or ISO 8859-11), in Shift-JIS, in GB-2312/18030 - // β U+03B2 in ISO 8859-7 Greek (but not other ISO 8859), in Shift-JIS, in GB-2312/18030 - // ก U+0E01 in ISO 8859-11 Thai (but not other ISO 8859), not in Shift-JIS, not in GB-2312/18030 - // ກ U+0E81 Lao not in any ISO 8859 (or Windows page) or Shift-JIS or GB-2312/18030 - // Vi} :s/\/\*[ 0-9]*\*\//\=printf("\/*%3d*\/", line(".") - line("'<")) + // é U+00E9 in ISO 8859-1 plus other ISO 8859 (but not in ISO 8859-7 or ISO 8859-11), Win 1250 plus other Win, not in Shift JIS + // β U+03B2 in ISO 8859-7 Greek (but not other ISO 8859 or Win page), in Shift JIS + // ก U+0E01 in ISO 8859-11 Thai (but not other ISO 8859 or Win page), not in Shift JIS + // Ж U+0416 in ISO 8859-5 Cyrillic (but not other ISO 8859), Win 1251, in Shift JIS + // ກ U+0E81 Lao not in any ISO 8859 (or Win page) or Shift JIS + // … U+2026 in Win pages (but not in any ISO 8859) + // テ U+30C6 katakana, in Shift JIS + // s/\/\*[ 0-9]*\*\//\=printf("\/*%3d*\/", line(".") - line("'<")) struct item data[] = { - /* 0*/ { BARCODE_QRCODE, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 1*/ { BARCODE_QRCODE, UNICODE_MODE, 0, "Aβ", 0, 100, 30, 0, 0 }, // Converts to Shift-JIS - /* 2*/ { BARCODE_QRCODE, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 3*/ { BARCODE_QRCODE, UNICODE_MODE, 0, "Aéβ", 0, 100, 30, 0, 0 }, // Converts to Shift-JIS - /* 4*/ { BARCODE_QRCODE, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 5*/ { BARCODE_QRCODE, UNICODE_MODE, 0, "Aກ", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 6*/ { BARCODE_QRCODE, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 7*/ { BARCODE_MICROQR, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 8*/ { BARCODE_MICROQR, UNICODE_MODE, 0, "Aβ", 0, 100, 30, 0, 0 }, // Converts to Shift-JIS - /* 9*/ { BARCODE_MICROQR, UNICODE_MODE, 0, "Aéβ", 0, 100, 30, 0, 0 }, // Converts to Shift-JIS - /* 10*/ { BARCODE_MICROQR, UNICODE_MODE, 0, "ก", ZINT_ERROR_INVALID_DATA, 100, 30, -1, -1 }, - /* 11*/ { BARCODE_MICROQR, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 12*/ { BARCODE_GRIDMATRIX, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 13*/ { BARCODE_GRIDMATRIX, UNICODE_MODE, 0, "Aβ", 0, 100, 30, 0, 0 }, // Converts to GB-2312 - /* 14*/ { BARCODE_GRIDMATRIX, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 15*/ { BARCODE_GRIDMATRIX, UNICODE_MODE, 0, "Aéβ", 0, 100, 30, 0, 0 }, // Converts to GB-2312 - /* 16*/ { BARCODE_GRIDMATRIX, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 17*/ { BARCODE_GRIDMATRIX, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 18*/ { BARCODE_HANXIN, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 19*/ { BARCODE_HANXIN, UNICODE_MODE, 0, "Aβ", 0, 100, 30, 0, 0 }, // Converts to GB-18030 - /* 20*/ { BARCODE_HANXIN, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 21*/ { BARCODE_HANXIN, UNICODE_MODE, 0, "Aéβ", 0, 100, 30, 0, 0 }, // Converts to GB-18030 - /* 22*/ { BARCODE_HANXIN, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 23*/ { BARCODE_HANXIN, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 24*/ { BARCODE_UPNQR, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 4 }, // ECI 4 == iSO 8859-2 - /* 25*/ { BARCODE_UPNQR, UNICODE_MODE, 0, "Aβ", ZINT_ERROR_INVALID_DATA, 100, 30, -1, -1 }, - /* 26*/ { BARCODE_UPNQR, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 4 }, - /* 27*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 28*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 0, "Aβ", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 29*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 30*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 31*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 0, "ก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 32*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 0, "Aéβ", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 33*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 34*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 35*/ { BARCODE_AZTEC, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 36*/ { BARCODE_AZTEC, UNICODE_MODE, 0, "Aβ", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 37*/ { BARCODE_AZTEC, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 38*/ { BARCODE_AZTEC, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 39*/ { BARCODE_AZTEC, UNICODE_MODE, 0, "ก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 40*/ { BARCODE_AZTEC, UNICODE_MODE, 0, "Aéβ", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 41*/ { BARCODE_AZTEC, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 42*/ { BARCODE_AZTEC, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 43*/ { BARCODE_MAXICODE, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 44*/ { BARCODE_MAXICODE, UNICODE_MODE, 0, "Aβ", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 45*/ { BARCODE_MAXICODE, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 46*/ { BARCODE_MAXICODE, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 47*/ { BARCODE_MAXICODE, UNICODE_MODE, 0, "ก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 48*/ { BARCODE_MAXICODE, UNICODE_MODE, 0, "Aéβ", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 49*/ { BARCODE_MAXICODE, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 50*/ { BARCODE_MAXICODE, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 51*/ { BARCODE_MICROPDF417, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 52*/ { BARCODE_MICROPDF417, UNICODE_MODE, 0, "Aβ", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 53*/ { BARCODE_MICROPDF417, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 54*/ { BARCODE_MICROPDF417, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 55*/ { BARCODE_MICROPDF417, UNICODE_MODE, 0, "ก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 56*/ { BARCODE_MICROPDF417, UNICODE_MODE, 0, "Aéβ", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 57*/ { BARCODE_MICROPDF417, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 58*/ { BARCODE_MICROPDF417, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 59*/ { BARCODE_PDF417, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 60*/ { BARCODE_PDF417, UNICODE_MODE, 0, "Aβ", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 61*/ { BARCODE_PDF417, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 62*/ { BARCODE_PDF417, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 63*/ { BARCODE_PDF417, UNICODE_MODE, 0, "ก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 64*/ { BARCODE_PDF417, UNICODE_MODE, 0, "Aéβ", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 65*/ { BARCODE_PDF417, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 66*/ { BARCODE_PDF417, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 67*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 68*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 0, "Aβ", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 69*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 70*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 71*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 0, "ก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 72*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 0, "Aéβ", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 73*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 74*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 75*/ { BARCODE_DOTCODE, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 76*/ { BARCODE_DOTCODE, UNICODE_MODE, 0, "Aβ", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 77*/ { BARCODE_DOTCODE, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 100, 30, 0, 9 }, // ECI 9 == ISO 8859-7 - /* 78*/ { BARCODE_DOTCODE, UNICODE_MODE, 0, "Aก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 79*/ { BARCODE_DOTCODE, UNICODE_MODE, 0, "ก", ZINT_WARN_USES_ECI, 100, 30, 0, 13 }, // ECI 13 == ISO 8859-11 - /* 80*/ { BARCODE_DOTCODE, UNICODE_MODE, 0, "Aéβ", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 81*/ { BARCODE_DOTCODE, UNICODE_MODE, 0, "Aéβก", ZINT_WARN_USES_ECI, 100, 30, 0, 26 }, - /* 82*/ { BARCODE_DOTCODE, UNICODE_MODE, 3, "Aé", 0, 100, 30, 0, 3 }, - /* 83*/ { BARCODE_CODE11, UNICODE_MODE, 0, "Aé", ZINT_ERROR_INVALID_DATA, 100, 30, -1, -1 }, - /* 84*/ { BARCODE_CODE39, UNICODE_MODE, 0, "Aé", ZINT_ERROR_INVALID_DATA, 100, 30, -1, -1 }, - /* 85*/ { BARCODE_EXCODE39, UNICODE_MODE, 0, "Aé", ZINT_ERROR_INVALID_DATA, 100, 30, -1, -1 }, - /* 86*/ { BARCODE_CODE128, UNICODE_MODE, 0, "Aé", 0, 100, 30, 0, 0 }, - /* 87*/ { BARCODE_CODE128, UNICODE_MODE, 0, "Aβ", ZINT_ERROR_INVALID_DATA, 100, 30, -1, -1 }, + /* 0*/ { BARCODE_CODE11, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "ASCII subset only" }, + /* 1*/ { BARCODE_C25MATRIX, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "Numbers only" }, + /* 2*/ { BARCODE_CODE39, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "ASCII subset only" }, + /* 3*/ { BARCODE_EXCODE39, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "ASCII only" }, + /* 4*/ { BARCODE_EANX, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "Numbers only" }, + /* 5*/ { BARCODE_CODABAR, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "ASCII subset only" }, + /* 6*/ { BARCODE_CODE128, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 7*/ { BARCODE_CODE128, UNICODE_MODE, 3, "é", ZINT_ERROR_INVALID_OPTION, -1, "Does not support ECI" }, + /* 8*/ { BARCODE_CODE128, UNICODE_MODE, 0, "β", ZINT_ERROR_INVALID_DATA, -1, "β not in ISO 8859-1" }, + /* 9*/ { BARCODE_DPLEIT, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "Numbers only" }, + /* 10*/ { BARCODE_CODE16K, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 11*/ { BARCODE_CODE16K, UNICODE_MODE, 3, "é", ZINT_ERROR_INVALID_OPTION, -1, "Does not support ECI" }, + /* 12*/ { BARCODE_CODE16K, UNICODE_MODE, 0, "β", ZINT_ERROR_INVALID_DATA, -1, "β not in ISO 8859-1" }, + /* 13*/ { BARCODE_CODE49, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "ASCII only" }, + /* 14*/ { BARCODE_CODE93, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "ASCII subset only" }, + /* 15*/ { BARCODE_FLAT, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "Numbers only" }, + /* 16*/ { BARCODE_RSS14, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "Numbers only" }, + /* 17*/ { BARCODE_RSS_EXP, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "ASCII subset only" }, + /* 18*/ { BARCODE_LOGMARS, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "ASCII subset only" }, + /* 19*/ { BARCODE_PDF417, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 20*/ { BARCODE_PDF417, UNICODE_MODE, 3, "é", 0, 3, "Supports ECI" }, + /* 21*/ { BARCODE_PDF417, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 9, "" }, + /* 22*/ { BARCODE_PDF417, UNICODE_MODE, 9, "β", 0, 9, "" }, + /* 23*/ { BARCODE_PDF417, UNICODE_MODE, 0, "ก", ZINT_WARN_USES_ECI, 13, "" }, + /* 24*/ { BARCODE_PDF417, UNICODE_MODE, 13, "ก", 0, 13, "" }, + /* 25*/ { BARCODE_PDF417, UNICODE_MODE, 0, "Ж", ZINT_WARN_USES_ECI, 7, "" }, + /* 26*/ { BARCODE_PDF417, UNICODE_MODE, 7, "Ж", 0, 7, "" }, + /* 27*/ { BARCODE_PDF417, UNICODE_MODE, 0, "…", ZINT_WARN_USES_ECI, 21, "" }, + /* 28*/ { BARCODE_PDF417, UNICODE_MODE, 21, "…", 0, 21, "" }, + /* 29*/ { BARCODE_PDF417, UNICODE_MODE, 0, "テ", ZINT_WARN_USES_ECI, 26, "Defaults to UTF-8 if not in any ISO 8859 or Win page" }, + /* 30*/ { BARCODE_PDF417, UNICODE_MODE, 26, "テ", 0, 26, "" }, + /* 31*/ { BARCODE_PDF417, UNICODE_MODE, 20, "テ", ZINT_ERROR_INVALID_DATA, -1, "テ in ECI 20 but that conversion not currently supported in Zint for non-extended barcodes" }, + /* 32*/ { BARCODE_PDF417, UNICODE_MODE, 900, "é", 0, 900, "ECI > 899 ignored for character set conversion" }, + /* 33*/ { BARCODE_PDF417, UNICODE_MODE, 900, "β", ZINT_ERROR_INVALID_DATA, 900, "But ECI > 899 suppresses auto-ECI `get_best_eci()`" }, + /* 34*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 35*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 3, "é", 0, 3, "Supports ECI" }, + /* 36*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 9, "" }, + /* 37*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 9, "β", 0, 9, "" }, + /* 38*/ { BARCODE_PDF417TRUNC, UNICODE_MODE, 26, "テ", 0, 26, "" }, + /* 39*/ { BARCODE_MAXICODE, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 40*/ { BARCODE_MAXICODE, UNICODE_MODE, 3, "é", 0, 3, "Supports ECI" }, + /* 41*/ { BARCODE_MAXICODE, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 9, "" }, + /* 42*/ { BARCODE_MAXICODE, UNICODE_MODE, 9, "β", 0, 9, "" }, + /* 43*/ { BARCODE_MAXICODE, UNICODE_MODE, 26, "テ", 0, 26, "" }, + /* 44*/ { BARCODE_CODE128B, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 45*/ { BARCODE_CODE128B, UNICODE_MODE, 3, "é", ZINT_ERROR_INVALID_OPTION, -1, "Does not support ECI" }, + /* 46*/ { BARCODE_CODE128B, UNICODE_MODE, 0, "β", ZINT_ERROR_INVALID_DATA, -1, "β not in ISO 8859-1" }, + /* 47*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 48*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 3, "é", 0, 3, "Supports ECI" }, + /* 49*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 9, "" }, + /* 50*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 9, "β", 0, 9, "" }, + /* 51*/ { BARCODE_DATAMATRIX, UNICODE_MODE, 26, "テ", 0, 26, "" }, + /* 52*/ { BARCODE_CODABLOCKF, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 53*/ { BARCODE_CODABLOCKF, UNICODE_MODE, 3, "é", ZINT_ERROR_INVALID_OPTION, -1, "Does not support ECI" }, + /* 54*/ { BARCODE_CODABLOCKF, UNICODE_MODE, 0, "β", ZINT_ERROR_INVALID_DATA, -1, "β not in ISO 8859-1" }, + /* 55*/ { BARCODE_NVE18, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "Numbers only" }, + /* 56*/ { BARCODE_MICROPDF417, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 57*/ { BARCODE_MICROPDF417, UNICODE_MODE, 3, "é", 0, 3, "Supports ECI" }, + /* 58*/ { BARCODE_MICROPDF417, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 9, "" }, + /* 59*/ { BARCODE_MICROPDF417, UNICODE_MODE, 9, "β", 0, 9, "" }, + /* 60*/ { BARCODE_MICROPDF417, UNICODE_MODE, 26, "テ", 0, 26, "" }, + /* 61*/ { BARCODE_ONECODE, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "Numbers/dash only" }, + /* 62*/ { BARCODE_AZTEC, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 63*/ { BARCODE_AZTEC, UNICODE_MODE, 3, "é", 0, 3, "Supports ECI" }, + /* 64*/ { BARCODE_AZTEC, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 9, "" }, + /* 65*/ { BARCODE_AZTEC, UNICODE_MODE, 9, "β", 0, 9, "" }, + /* 66*/ { BARCODE_AZTEC, UNICODE_MODE, 26, "テ", 0, 26, "" }, + /* 67*/ { BARCODE_HIBC_128, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "HIBC ASCII subset only" }, + /* 68*/ { BARCODE_HIBC_AZTEC, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "HIBC ASCII subset only" }, + /* 69*/ { BARCODE_DOTCODE, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 70*/ { BARCODE_DOTCODE, UNICODE_MODE, 3, "é", 0, 3, "Supports ECI" }, + /* 71*/ { BARCODE_DOTCODE, UNICODE_MODE, 0, "β", ZINT_WARN_USES_ECI, 9, "" }, + /* 72*/ { BARCODE_DOTCODE, UNICODE_MODE, 9, "β", 0, 9, "" }, + /* 73*/ { BARCODE_DOTCODE, UNICODE_MODE, 26, "テ", 0, 26, "" }, + /* 74*/ { BARCODE_AZRUNE, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "Numbers <= 255 only" }, + /* 75*/ { BARCODE_CODE32, UNICODE_MODE, 0, "é", ZINT_ERROR_INVALID_DATA, -1, "Numbers only" }, + /* 76*/ { BARCODE_CODEONE, UNICODE_MODE, 0, "é", 0, 0, "" }, + /* 77*/ { BARCODE_CODEONE, UNICODE_MODE, 3, "é", ZINT_ERROR_INVALID_OPTION, -1, "Does not support ECI" }, + /* 78*/ { BARCODE_CODEONE, UNICODE_MODE, 0, "β", ZINT_ERROR_INVALID_DATA, -1, "β not in ISO 8859-1" }, }; int data_size = sizeof(data) / sizeof(struct item); @@ -230,13 +224,10 @@ static void test_encode(void) int length = strlen(data[i].data); ret = ZBarcode_Encode(symbol, data[i].data, length); - assert_equal(ret, data[i].ret_encode, "i:%d ZBarcode_Encode ret %d != %d\n", i, ret, data[i].ret_encode); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt); - if (data[i].ret_vector != -1) { + if (data[i].expected_eci != -1) { assert_equal(symbol->eci, data[i].expected_eci, "i:%d eci %d != %d\n", i, symbol->eci, data[i].expected_eci); - - ret = ZBarcode_Buffer_Vector(symbol, 0); - assert_equal(ret, data[i].ret_vector, "i:%d ZBarcode_Buffer_Vector ret %d != %d\n", i, ret, data[i].ret_vector); } ZBarcode_Delete(symbol); @@ -249,7 +240,7 @@ int main() { test_bom(); test_iso_8859_16(); - //test_encode(); // Disable for now due to ECI change + test_reduced_charset_input(); testReport(); diff --git a/backend/tests/test_gs1.c b/backend/tests/test_gs1.c index 3009344f..d2f2f439 100644 --- a/backend/tests/test_gs1.c +++ b/backend/tests/test_gs1.c @@ -785,11 +785,103 @@ static void test_gs1_verify(void) testFinish(); } +static void test_input_mode(void) +{ + testStart(""); + + int ret; + struct item { + int symbology; + unsigned char* data; + unsigned char* composite; + int input_mode; + int output_options; + int ret; + int compare_previous; + }; + // s/\/\*[ 0-9]*\*\//\=printf("\/*%3d*\/", line(".") - line("'<")) + struct item data[] = { + /* 0*/ { BARCODE_AZTEC, "[01]12345678901234", "", GS1_MODE, -1 , 0, 0 }, + /* 1*/ { BARCODE_AZTEC, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, -1, 0, 1 }, + /* 2*/ { BARCODE_AZTEC, "[01]12345678901234", "", GS1_MODE, READER_INIT, ZINT_ERROR_INVALID_OPTION, 0 }, + /* 3*/ { BARCODE_AZTEC, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, READER_INIT, ZINT_ERROR_INVALID_OPTION, 0 }, + /* 4*/ { BARCODE_AZTEC, "1234", "", GS1_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 5*/ { BARCODE_AZTEC, "1234", "", GS1_MODE | ESCAPE_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 6*/ { BARCODE_CODABLOCKF, "[01]12345678901234", "", GS1_MODE, -1, ZINT_ERROR_INVALID_OPTION, 0 }, + /* 7*/ { BARCODE_CODABLOCKF, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, -1, ZINT_ERROR_INVALID_OPTION, 0 }, + /* 8*/ { BARCODE_CODABLOCKF, "1234", "", GS1_MODE, -1, ZINT_ERROR_INVALID_OPTION, 0 }, + /* 9*/ { BARCODE_CODABLOCKF, "1234", "", GS1_MODE | ESCAPE_MODE, -1, ZINT_ERROR_INVALID_OPTION, 0 }, + /* 10*/ { BARCODE_CODEONE, "[01]12345678901234", "", GS1_MODE, -1, 0, 0 }, + /* 11*/ { BARCODE_CODEONE, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, -1, 0, 1 }, + /* 12*/ { BARCODE_CODEONE, "1234", "", GS1_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 13*/ { BARCODE_CODEONE, "1234", "", GS1_MODE | ESCAPE_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 14*/ { BARCODE_CODE16K, "[01]12345678901234", "", GS1_MODE, -1, 0, 0 }, + /* 15*/ { BARCODE_CODE16K, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, -1, 0, 1 }, + /* 16*/ { BARCODE_CODE16K, "1234", "", GS1_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 17*/ { BARCODE_CODE16K, "1234", "", GS1_MODE | ESCAPE_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 18*/ { BARCODE_CODE49, "[01]12345678901234", "", GS1_MODE, -1, 0, 0 }, + /* 19*/ { BARCODE_CODE49, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, -1, 0, 1 }, + /* 20*/ { BARCODE_CODE49, "1234", "", GS1_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 21*/ { BARCODE_CODE49, "1234", "", GS1_MODE | ESCAPE_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 22*/ { BARCODE_DATAMATRIX, "[01]12345678901234", "", GS1_MODE, -1, 0, 0 }, + /* 23*/ { BARCODE_DATAMATRIX, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, -1, 0, 1 }, + /* 24*/ { BARCODE_DATAMATRIX, "[01]12345678901234", "", GS1_MODE, READER_INIT, ZINT_ERROR_INVALID_OPTION, 0 }, + /* 25*/ { BARCODE_DATAMATRIX, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, READER_INIT, ZINT_ERROR_INVALID_OPTION, 0 }, + /* 26*/ { BARCODE_DATAMATRIX, "1234", "", GS1_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 27*/ { BARCODE_DATAMATRIX, "1234", "", GS1_MODE | ESCAPE_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 28*/ { BARCODE_DOTCODE, "[01]12345678901234", "", GS1_MODE, -1, 0, 0 }, + /* 29*/ { BARCODE_DOTCODE, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, -1, 0, 1 }, + /* 30*/ { BARCODE_DOTCODE, "1234", "", GS1_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 31*/ { BARCODE_DOTCODE, "1234", "", GS1_MODE | ESCAPE_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 32*/ { BARCODE_QRCODE, "[01]12345678901234", "", GS1_MODE, -1, 0, 0 }, + /* 33*/ { BARCODE_QRCODE, "[01]12345678901234", "", GS1_MODE | ESCAPE_MODE, -1, 0, 1 }, + /* 34*/ { BARCODE_QRCODE, "1234", "", GS1_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + /* 35*/ { BARCODE_QRCODE, "1234", "", GS1_MODE | ESCAPE_MODE, -1, ZINT_ERROR_INVALID_DATA, 0 }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + char* text; + struct zint_symbol previous_symbol; + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = data[i].symbology; + symbol->input_mode = data[i].input_mode; + if (data[i].output_options != -1) { + symbol->output_options = data[i].output_options; + } + + if (strlen(data[i].composite)) { + text = data[i].composite; + strcpy(symbol->primary, data[i].data); + } else { + text = data[i].data; + } + int length = strlen(text); + + ret = ZBarcode_Encode(symbol, text, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d %s\n", i, ret, data[i].ret, symbol->errtxt); + if (data[i].compare_previous) { + ret = testUtilSymbolCmp(symbol, &previous_symbol); + assert_zero(ret, "i:%d testUtilSymbolCmp ret %d != 0\n", i, ret); + } + memcpy(&previous_symbol, symbol, sizeof(previous_symbol)); + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + int main() { test_gs1_reduce(); test_hrt(); test_gs1_verify(); + test_input_mode(); testReport(); diff --git a/backend/tests/test_library.c b/backend/tests/test_library.c index 4f8b593f..10ba3d02 100644 --- a/backend/tests/test_library.c +++ b/backend/tests/test_library.c @@ -95,9 +95,58 @@ static void test_checks(void) testFinish(); } +static void test_input_mode(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int input_mode; + int ret; + + int expected_input_mode; + }; + // s/\/\*[ 0-9]*\*\//\=printf("\/*%3d*\/", line(".") - line("'<")) + struct item data[] = { + /* 0*/ { "1234", DATA_MODE, 0, DATA_MODE }, + /* 1*/ { "1234", DATA_MODE | ESCAPE_MODE, 0, DATA_MODE | ESCAPE_MODE }, + /* 2*/ { "1234", UNICODE_MODE, 0, UNICODE_MODE }, + /* 3*/ { "1234", UNICODE_MODE | ESCAPE_MODE, 0, UNICODE_MODE | ESCAPE_MODE }, + /* 4*/ { "[01]12345678901234", GS1_MODE, 0, GS1_MODE }, + /* 5*/ { "[01]12345678901234", GS1_MODE | ESCAPE_MODE, 0, GS1_MODE | ESCAPE_MODE }, + /* 6*/ { "1234", 4 | ESCAPE_MODE, 0, DATA_MODE }, // Unknown mode reset to bare DATA_MODE + /* 7*/ { "1234", -1, 0, DATA_MODE }, + /* 8*/ { "1234", DATA_MODE | 0x10, 0, DATA_MODE | 0x10 }, // Unknown flags kept (but ignored) + /* 9*/ { "1234", UNICODE_MODE | 0x10, 0, UNICODE_MODE | 0x10 }, + /* 10*/ { "[01]12345678901234", GS1_MODE | 0x20, 0, GS1_MODE | 0x20 }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_CODE49; // Supports GS1 + symbol->input_mode = data[i].input_mode; + + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt); + assert_equal(symbol->input_mode, data[i].expected_input_mode, "i:%d symbol->input_mode %d != %d\n", i, symbol->input_mode, data[i].expected_input_mode); + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + int main() { test_checks(); + test_input_mode(); testReport(); diff --git a/backend/tests/test_postal.c b/backend/tests/test_postal.c index c2c4c0e3..186c0a3c 100644 --- a/backend/tests/test_postal.c +++ b/backend/tests/test_postal.c @@ -27,6 +27,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include "testcommon.h" @@ -38,8 +39,6 @@ static void test_koreapost(void) struct item { unsigned char* data; int ret_encode; - float w; - float h; int ret_vector; int expected_height; @@ -47,7 +46,7 @@ static void test_koreapost(void) int expected_width; }; struct item data[] = { - /* 0*/ { "123456", 0, 100, 30, 0, 50, 1, 167 }, + /* 0*/ { "123456", 0, 0, 50, 1, 167 }, }; int data_size = sizeof(data) / sizeof(struct item); @@ -77,9 +76,58 @@ static void test_koreapost(void) testFinish(); } +static void test_japanpost(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int ret_encode; + int ret_vector; + + int expected_height; + int expected_rows; + int expected_width; + char* comment; + }; + struct item data[] = { + /* 0*/ { "123", 0, 0, 8, 3, 133, "Check 3" }, + /* 1*/ { "123456-AB", 0, 0, 8, 3, 133, "Check 10" }, + /* 2*/ { "123456", 0, 0, 8, 3, 133, "Check 11" }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_JAPANPOST; + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret_encode, "i:%d ZBarcode_Encode ret %d != %d\n", i, ret, data[i].ret_encode); + + if (data[i].ret_vector != -1) { + assert_equal(symbol->height, data[i].expected_height, "i:%d symbol->height %d != %d\n", i, symbol->height, data[i].expected_height); + assert_equal(symbol->rows, data[i].expected_rows, "i:%d symbol->rows %d != %d\n", i, symbol->rows, data[i].expected_rows); + assert_equal(symbol->width, data[i].expected_width, "i:%d symbol->width %d != %d\n", i, symbol->width, data[i].expected_width); + + ret = ZBarcode_Buffer_Vector(symbol, 0); + assert_equal(ret, data[i].ret_vector, "i:%d ZBarcode_Buffer_Vector ret %d != %d\n", i, ret, data[i].ret_vector); + } + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + int main() { test_koreapost(); + test_japanpost(); testReport(); diff --git a/backend/tests/test_qr.c b/backend/tests/test_qr.c index aa651b7e..e926c32a 100644 --- a/backend/tests/test_qr.c +++ b/backend/tests/test_qr.c @@ -27,9 +27,18 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #include "testcommon.h" +//#define TEST_QR_INPUT_GENERATE_EXPECTED 1 +//#define TEST_MICROQR_INPUT_GENERATE_EXPECTED 1 +//#define TEST_UPNQR_INPUT_GENERATE_EXPECTED 1 +//#define TEST_QR_ENCODE_GENERATE_EXPECTED 1 +//#define TEST_MICROQR_ENCODE_GENERATE_EXPECTED 1 +//#define TEST_MICROQR_ENCODE_GENERATE_EXPECTED 1 +//#define TEST_UPNQR_ENCODE_GENERATE_EXPECTED 1 + static void test_microqr_options(void) { testStart(""); @@ -45,7 +54,7 @@ static void test_microqr_options(void) int ret_vector; int expected_size; }; - // Vi} :s/\/\*[ 0-9]*\*\//\=printf("\/*%2d*\/", line(".") - line("'<")) + // s/\/\*[ 0-9]*\*\//\=printf("\/*%2d*\/", line(".") - line("'<")) struct item data[] = { /* 0*/ { "12345", 0, 0, 0, 100, 100, 0, 11 }, /* 1*/ { "12345", 1, 0, 0, 100, 100, 0, 11 }, @@ -104,7 +113,7 @@ static void test_microqr_options(void) int length = strlen(data[i].data); ret = ZBarcode_Encode(symbol, data[i].data, length); - assert_equal(ret, data[i].ret_encode, "i:%d ZBarcode_Encode ret %d != %d\n", i, ret, data[i].ret_encode); + assert_equal(ret, data[i].ret_encode, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret_encode, symbol->errtxt); if (data[i].ret_vector != -1) { ret = ZBarcode_Buffer_Vector(symbol, 0); @@ -119,9 +128,635 @@ static void test_microqr_options(void) testFinish(); } +static void test_qr_input(void) +{ + testStart(""); + + int ret; + struct item { + int input_mode; + int eci; + unsigned char* data; + int ret; + int expected_eci; + char* expected; + char* comment; + }; + // é U+00E9 in ISO 8859-1 plus other ISO 8859 (but not in ISO 8859-7 or ISO 8859-11), Win 1250 plus other Win, not in Shift JIS, UTF-8 C3A9 + // β U+03B2 in ISO 8859-7 Greek (but not other ISO 8859 or Win page), in Shift JIS 0x83C0, UTF-8 CEB2 + // ก U+0E01 in ISO 8859-11 Thai (but not other ISO 8859 or Win page), not in Shift JIS, UTF-8 E0B881 + // Ж U+0416 in ISO 8859-5 Cyrillic (but not other ISO 8859), Win 1251, in Shift JIS 0x8447, UTF-8 D096 + // ກ U+0E81 Lao not in any ISO 8859 (or Win page) or Shift JIS, UTF-8 E0BA81 + // ¥ U+00A5 in ISO 8859-1 0xA5 (\245), in Shift JIS single-byte 0x5C (\134) (backslash); 0xA5 same codepoint as single-byte half-width katakana ・ (U+FF65) in Shift JIS (below), UTF-8 C2A5 + // ・ U+FF65 half-width katakana, not in ISO/Win, in Shift JIS single-byte 0xA5 (\245), UTF-8 EFBDA5 + // ¿ U+00BF in ISO 8859-1 0xBF (\277), not in Shift JIS; 0xBF same codepoint as single-byte half-width katakana ソ (U+FF7F) in Shift JIS (below), UTF-8 C2BF + // ソ U+FF7F half-width katakana, not in ISO/Win, in Shift JIS single-byte 0xBF (\277), UTF-8 EFBDBF + // ‾ U+203E overline, not in ISO/Win, in Shift JIS single-byte 0x7E (\176) (tilde), UTF-8 E280BE + // 点 U+70B9 kanji, in Shift JIS 0x935F (\223\137), UTF-8 E782B9 + // 茗 U+8317 kanji, in Shift JIS 0xE4AA (\344\252), UTF-8 E88C97 + // テ U+30C6 katakana, in Shift JIS 0x8365 (\203\145), UTF-8 E38386 + struct item data[] = { + /* 0*/ { UNICODE_MODE, 0, "é", 0, 0, "40 1E 90 EC 11 EC 11 EC 11", "B1 (ISO 8859-1)" }, + /* 1*/ { UNICODE_MODE, 3, "é", 0, 3, "70 34 01 E9 00 EC 11 EC 11", "ECI-3 B1 (ISO 8859-1)" }, + /* 2*/ { UNICODE_MODE, 20, "é", ZINT_ERROR_INVALID_DATA, -1, "Error 800: Invalid character in input data", "é not in Shift JIS" }, + /* 3*/ { UNICODE_MODE, 26, "é", 0, 26, "71 A4 02 C3 A9 00 EC 11 EC", "ECI-26 B2 (UTF-8)" }, + /* 4*/ { DATA_MODE, 0, "é", 0, 0, "40 2C 3A 90 EC 11 EC 11 EC", "B2 (UTF-8)" }, + /* 5*/ { DATA_MODE, 0, "\351", 0, 0, "40 1E 90 EC 11 EC 11 EC 11", "B1 (ISO 8859-1)" }, + /* 6*/ { UNICODE_MODE, 0, "β", 0, 0, "80 11 00 00 EC 11 EC 11 EC", "K1 (Shift JIS)" }, + /* 7*/ { UNICODE_MODE, 9, "β", 0, 9, "70 94 01 E2 00 EC 11 EC 11", "ECI-9 B1 (ISO 8859-7)" }, + /* 8*/ { UNICODE_MODE, 20, "β", 0, 20, "71 48 01 10 00 00 EC 11 EC", "ECI-20 K1 (Shift JIS)" }, + /* 9*/ { UNICODE_MODE, 26, "β", 0, 26, "71 A4 02 CE B2 00 EC 11 EC", "ECI-26 B2 (UTF-8)" }, + /* 10*/ { DATA_MODE, 0, "β", 0, 0, "40 2C EB 20 EC 11 EC 11 EC", "B2 (UTF-8)" }, + /* 11*/ { UNICODE_MODE, 0, "ก", ZINT_WARN_USES_ECI, 13, "Warning 70 D4 01 A1 00 EC 11 EC 11", "ECI-13 B1 (ISO 8859-11)" }, + /* 12*/ { UNICODE_MODE, 13, "ก", 0, 13, "70 D4 01 A1 00 EC 11 EC 11", "ECI-13 B1 (ISO 8859-11)" }, + /* 13*/ { UNICODE_MODE, 20, "ก", ZINT_ERROR_INVALID_DATA, -1, "Error 800: Invalid character in input data", "ก not in Shift JIS" }, + /* 14*/ { UNICODE_MODE, 26, "ก", 0, 26, "71 A4 03 E0 B8 81 00 EC 11", "ECI-26 B3 (UTF-8)" }, + /* 15*/ { DATA_MODE, 0, "ก", 0, 0, "40 3E 0B 88 10 EC 11 EC 11", "B3 (UTF-8)" }, + /* 16*/ { UNICODE_MODE, 0, "Ж", 0, 0, "80 11 23 80 EC 11 EC 11 EC", "K1 (Shift JIS)" }, + /* 17*/ { UNICODE_MODE, 7, "Ж", 0, 7, "70 74 01 B6 00 EC 11 EC 11", "ECI-7 B1 (ISO 8859-5)" }, + /* 18*/ { UNICODE_MODE, 20, "Ж", 0, 20, "71 48 01 12 38 00 EC 11 EC", "ECI-20 K1 (Shift JIS)" }, + /* 19*/ { UNICODE_MODE, 26, "Ж", 0, 26, "71 A4 02 D0 96 00 EC 11 EC", "ECI-26 B2 (UTF-8)" }, + /* 20*/ { DATA_MODE, 0, "Ж", 0, 0, "40 2D 09 60 EC 11 EC 11 EC", "B2 (UTF-8)" }, + /* 21*/ { UNICODE_MODE, 0, "ກ", ZINT_WARN_USES_ECI, 26, "Warning 71 A4 03 E0 BA 81 00 EC 11", "ECI-26 B3 (UTF-8)" }, + /* 22*/ { UNICODE_MODE, 20, "ກ", ZINT_ERROR_INVALID_DATA, -1, "Error 800: Invalid character in input data", "ກ not in Shift JIS" }, + /* 23*/ { UNICODE_MODE, 26, "ກ", 0, 26, "71 A4 03 E0 BA 81 00 EC 11", "ECI-26 B3 (UTF-8)" }, + /* 24*/ { DATA_MODE, 0, "ກ", 0, 0, "40 3E 0B A8 10 EC 11 EC 11", "B3 (UTF-8)" }, + /* 25*/ { UNICODE_MODE, 0, "\\", 0, 0, "40 15 C0 EC 11 EC 11 EC 11", "B1 (ASCII)" }, + /* 26*/ { UNICODE_MODE, 20, "\\", 0, 20, "71 48 01 00 F8 00 EC 11 EC", "ECI-20 K1 (Shift JIS)" }, + /* 27*/ { UNICODE_MODE, 20, "[", 0, 20, "71 44 01 5B 00 EC 11 EC 11", "B1 (ASCII)" }, + /* 28*/ { UNICODE_MODE, 20, "\177", 0, 20, "71 44 01 7F 00 EC 11 EC 11", "ECI-20 B1 (ASCII)" }, + /* 29*/ { UNICODE_MODE, 0, "¥", 0, 0, "40 1A 50 EC 11 EC 11 EC 11", "B1 (ISO 8859-1) (same bytes as ・ Shift JIS below, so ambiguous)" }, + /* 30*/ { UNICODE_MODE, 3, "¥", 0, 3, "70 34 01 A5 00 EC 11 EC 11", "ECI-3 B1 (ISO 8859-1)" }, + /* 31*/ { UNICODE_MODE, 20, "¥", 0, 20, "71 44 01 5C 00 EC 11 EC 11", "ECI-20 B1 (Shift JIS) (to single-byte backslash codepoint 5C, so byte mode)" }, + /* 32*/ { UNICODE_MODE, 26, "¥", 0, 26, "71 A4 02 C2 A5 00 EC 11 EC", "ECI-26 B2 (UTF-8)" }, + /* 33*/ { DATA_MODE, 0, "¥", 0, 0, "40 2C 2A 50 EC 11 EC 11 EC", "B2 (UTF-8)" }, + /* 34*/ { UNICODE_MODE, 0, "・", 0, 0, "40 1A 50 EC 11 EC 11 EC 11", "B1 (Shift JIS) single-byte codepoint A5 (same bytes as ¥ ISO 8859-1 above, so ambiguous)" }, + /* 35*/ { UNICODE_MODE, 3, "・", ZINT_ERROR_INVALID_DATA, -1, "Error 575: Invalid characters in input data", "" }, + /* 36*/ { UNICODE_MODE, 20, "・", 0, 20, "71 44 01 A5 00 EC 11 EC 11", "ECI-20 B1 (Shift JIS) single-byte codepoint A5" }, + /* 37*/ { UNICODE_MODE, 26, "・", 0, 26, "71 A4 03 EF BD A5 00 EC 11", "ECI-26 B3 (UTF-8)" }, + /* 38*/ { DATA_MODE, 0, "・", 0, 0, "40 3E FB DA 50 EC 11 EC 11", "B3 (UTF-8)" }, + /* 39*/ { UNICODE_MODE, 0, "¿", 0, 0, "40 1B F0 EC 11 EC 11 EC 11", "B1 (ISO 8859-1) (same bytes as ソ Shift JIS below, so ambiguous)" }, + /* 40*/ { UNICODE_MODE, 3, "¿", 0, 3, "70 34 01 BF 00 EC 11 EC 11", "ECI-3 B1 (ISO 8859-1)" }, + /* 41*/ { UNICODE_MODE, 20, "¿", ZINT_ERROR_INVALID_DATA, -1, "Error 800: Invalid character in input data", "¿ not in Shift JIS" }, + /* 42*/ { UNICODE_MODE, 26, "¿", 0, 26, "71 A4 02 C2 BF 00 EC 11 EC", "ECI-26 B2 (UTF-8)" }, + /* 43*/ { DATA_MODE, 0, "¿", 0, 0, "40 2C 2B F0 EC 11 EC 11 EC", "B2 (UTF-8)" }, + /* 44*/ { UNICODE_MODE, 0, "ソ", 0, 0, "40 1B F0 EC 11 EC 11 EC 11", "B1 (Shift JIS) single-byte codepoint BF (same bytes as ¿ ISO 8859-1 above, so ambiguous)" }, + /* 45*/ { UNICODE_MODE, 3, "ソ", ZINT_ERROR_INVALID_DATA, -1, "Error 575: Invalid characters in input data", "" }, + /* 46*/ { UNICODE_MODE, 20, "ソ", 0, 20, "71 44 01 BF 00 EC 11 EC 11", "ECI-20 B1 (Shift JIS) single-byte codepoint BF" }, + /* 47*/ { UNICODE_MODE, 26, "ソ", 0, 26, "71 A4 03 EF BD BF 00 EC 11", "ECI-26 B3 (UTF-8)" }, + /* 48*/ { DATA_MODE, 0, "ソ", 0, 0, "40 3E FB DB F0 EC 11 EC 11", "B3 (UTF-8)" }, + /* 49*/ { UNICODE_MODE, 0, "~", 0, 0, "40 17 E0 EC 11 EC 11 EC 11", "B1 (ASCII) (same bytes as ‾ Shift JIS below, so ambiguous)" }, + /* 50*/ { UNICODE_MODE, 3, "~", 0, 3, "70 34 01 7E 00 EC 11 EC 11", "ECI-3 B1 (ASCII)" }, + /* 51*/ { UNICODE_MODE, 20, "~", ZINT_ERROR_INVALID_DATA, -1, "Error 800: Invalid character in input data", "tilde not in Shift JIS (codepoint used for overline)" }, + /* 52*/ { UNICODE_MODE, 0, "‾", 0, 0, "40 17 E0 EC 11 EC 11 EC 11", "B1 (Shift JIS) single-byte codepoint 7E (same bytes as ~ ASCII above, so ambiguous)" }, + /* 53*/ { UNICODE_MODE, 3, "‾", ZINT_ERROR_INVALID_DATA, -1, "Error 575: Invalid characters in input data", "" }, + /* 54*/ { UNICODE_MODE, 20, "‾", 0, 20, "71 44 01 7E 00 EC 11 EC 11", "ECI-20 B1 (Shift JIS) (to single-byte tilde codepoint 7E, so byte mode)" }, + /* 55*/ { UNICODE_MODE, 26, "‾", 0, 26, "71 A4 03 E2 80 BE 00 EC 11", "ECI-26 B3 (UTF-8)" }, + /* 56*/ { DATA_MODE, 0, "‾", 0, 0, "40 3E 28 0B E0 EC 11 EC 11", "B3 (UTF-8)" }, + /* 57*/ { UNICODE_MODE, 0, "点", 0, 0, "80 16 CF 80 EC 11 EC 11 EC", "K1 (Shift JIS)" }, + /* 58*/ { UNICODE_MODE, 3, "点", ZINT_ERROR_INVALID_DATA, -1, "Error 575: Invalid characters in input data", "" }, + /* 59*/ { UNICODE_MODE, 20, "点", 0, 20, "71 48 01 6C F8 00 EC 11 EC", "ECI-20 K1 (Shift JIS)" }, + /* 60*/ { UNICODE_MODE, 26, "点", 0, 26, "71 A4 03 E7 82 B9 00 EC 11", "ECI-26 B3 (UTF-8)" }, + /* 61*/ { DATA_MODE, 0, "点", 0, 0, "40 3E 78 2B 90 EC 11 EC 11", "B3 (UTF-8)" }, + /* 62*/ { DATA_MODE, 0, "\223\137", 0, 0, "80 16 CF 80 EC 11 EC 11 EC", "K1 (Shift JIS)" }, + /* 63*/ { UNICODE_MODE, 0, "¥・点", 0, 0, "40 45 CA 59 35 F0 EC 11 EC", "B4 (Shift JIS) (optimized to byte mode only)" }, + /* 64*/ { UNICODE_MODE, 3, "¥・点", ZINT_ERROR_INVALID_DATA, -1, "Error 575: Invalid characters in input data", "" }, + /* 65*/ { UNICODE_MODE, 20, "¥・点", 0, 20, "71 44 04 5C A5 93 5F 00 EC", "ECI-20 B4 (Shift JIS)" }, + /* 66*/ { UNICODE_MODE, 26, "¥・点", 0, 26, "71 A4 08 C2 A5 EF BD A5 E7 82 B9 00 EC", "ECI-26 B8 (UTF-8)" }, + /* 67*/ { DATA_MODE, 0, "\134\245\223\137", 0, 0, "40 45 CA 59 35 F0 EC 11 EC", "B8 (Shift JIS)" }, + /* 68*/ { DATA_MODE, 0, "¥・点", 0, 0, "40 8C 2A 5E FB DA 5E 78 2B 90 EC 11 EC", "B8 (UTF-8)" }, + /* 69*/ { UNICODE_MODE, 0, "点茗", 0, 0, "80 26 CF EA A8 00 EC 11 EC", "K2 (Shift JIS)" }, + /* 70*/ { UNICODE_MODE, 0, "点茗テ", 0, 0, "80 36 CF EA A8 34 A0 EC 11", "K3 (Shift JIS)" }, + /* 71*/ { UNICODE_MODE, 0, "点茗テ点", 0, 0, "80 46 CF EA A8 34 AD 9F 00", "K4 (Shift JIS)" }, + /* 72*/ { UNICODE_MODE, 0, "点茗テ点茗", 0, 0, "80 56 CF EA A8 34 AD 9F D5 50 00 EC 11", "K5 (Shift JIS)" }, + /* 73*/ { UNICODE_MODE, 0, "点茗テ点茗テ", 0, 0, "80 66 CF EA A8 34 AD 9F D5 50 69 40 EC", "K6 (Shift JIS)" }, + /* 74*/ { UNICODE_MODE, 0, "点茗テ点茗テソ", 0, 0, "80 66 CF EA A8 34 AD 9F D5 50 69 50 06 FC 00 EC", "K6 B1 (Shift JIS)" }, + /* 75*/ { DATA_MODE, 0, "\223\137\344\252\203\145\223\137\344\252\203\145\277", 0, 0, "80 66 CF EA A8 34 AD 9F D5 50 69 50 06 FC 00 EC", "K6 B1 (Shift JIS)" }, + /* 76*/ { DATA_MODE, 0, "点茗テ点茗テソ", 0, 0, "41 5E 78 2B 9E 88 C9 7E 38 38 6E 78 2B 9E 88 C9 7E 38 38 6E FB DB F0 EC 11 EC 11 EC", "B21 (UTF-8)" }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + char escaped[1024]; + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_QRCODE; + symbol->input_mode = data[i].input_mode; + symbol->eci = data[i].eci; + symbol->debug = ZINT_DEBUG_TEST; // Needed to get codeword dump in errtxt + + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d\n", i, ret, data[i].ret); + + #ifdef TEST_QR_INPUT_GENERATE_EXPECTED + printf(" /*%3d*/ { %s, %d, \"%s\", %s, %d, \"%s\", \"%s\" },\n", + i, testUtilInputModeName(data[i].input_mode), data[i].eci, testUtilEscape(data[i].data, escaped, sizeof(escaped)), testUtilErrorName(data[i].ret), + ret < 5 ? symbol->eci : -1, symbol->errtxt, data[i].comment); + #else + if (ret < 5) { + + assert_equal(symbol->eci, data[i].expected_eci, "i:%d eci %d != %d\n", i, symbol->eci, data[i].expected_eci); + assert_zero(strcmp(symbol->errtxt, data[i].expected), "i:%d strcmp(%s, %s) != 0\n", i, symbol->errtxt, data[i].expected); + } + #endif + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + +static void test_microqr_input(void) +{ + testStart(""); + + int ret; + struct item { + int input_mode; + unsigned char* data; + int ret; + char* expected; + char* comment; + }; + // é U+00E9 in ISO 8859-1 plus other ISO 8859 (but not in ISO 8859-7 or ISO 8859-11), Win 1250 plus other Win, not in Shift JIS, UTF-8 C3A9 + // β U+03B2 in ISO 8859-7 Greek (but not other ISO 8859 or Win page), in Shift JIS 0x83C0, UTF-8 CEB2 + // ก U+0E01 in ISO 8859-11 Thai (but not other ISO 8859 or Win page), not in Shift JIS, UTF-8 E0B881 + // Ж U+0416 in ISO 8859-5 Cyrillic (but not other ISO 8859), Win 1251, in Shift JIS 0x8447 (\204\107), UTF-8 D096 + // ກ U+0E81 Lao not in any ISO 8859 (or Win page) or Shift JIS, UTF-8 E0BA81 + // ¥ U+00A5 in ISO 8859-1 0xA5 (\245), in Shift JIS single-byte 0x5C (\134) (backslash); 0xA5 same codepoint as single-byte half-width katakana ・ (U+FF65) in Shift JIS (below), UTF-8 C2A5 + // ・ U+FF65 half-width katakana, not in ISO/Win, in Shift JIS single-byte 0xA5 (\245), UTF-8 EFBDA5 + // ¿ U+00BF in ISO 8859-1 0xBF (\277), not in Shift JIS; 0xBF same codepoint as single-byte half-width katakana ソ (U+FF7F) in Shift JIS (below), UTF-8 C2BF + // ソ U+FF7F half-width katakana, not in ISO/Win, in Shift JIS single-byte 0xBF (\277), UTF-8 EFBDBF + // ‾ U+203E overline, not in ISO/Win, in Shift JIS single-byte 0x7E (\176) (tilde), UTF-8 E280BE + // 点 U+70B9 kanji, in Shift JIS 0x935F (\223\137), UTF-8 E782B9 + // 茗 U+8317 kanji, in Shift JIS 0xE4AA (\344\252), UTF-8 E88C97 + struct item data[] = { + /* 0*/ { UNICODE_MODE, "é", 0, "87 A4 00 EC 11 EC 11 EC 00", "B1 (ISO 8859-1)" }, + /* 1*/ { DATA_MODE, "é", 0, "8B 0E A4 00 EC 11 EC 11 00", "B2 (UTF-8)" }, + /* 2*/ { UNICODE_MODE, "β", 0, "C8 80 00 00 EC 11 EC 11 00", "K1 (Shift JIS)" }, + /* 3*/ { UNICODE_MODE, "ก", ZINT_ERROR_INVALID_DATA, "Error 800: Invalid character in input data", "ก not in Shift JIS" }, + /* 4*/ { UNICODE_MODE, "Ж", 0, "C8 91 C0 00 EC 11 EC 11 00", "K1 (Shift JIS)" }, + /* 5*/ { UNICODE_MODE, "ກ", ZINT_ERROR_INVALID_DATA, "Error 800: Invalid character in input data", "ກ not in Shift JIS" }, + /* 6*/ { UNICODE_MODE, "\\", 0, "85 70 00 EC 11 EC 11 EC 00", "B1 (ASCII)" }, + /* 7*/ { UNICODE_MODE, "¥", 0, "86 94 00 EC 11 EC 11 EC 00", "B1 (ISO 8859-1) (same bytes as ・ Shift JIS below, so ambiguous)" }, + /* 8*/ { UNICODE_MODE, "・", 0, "86 94 00 EC 11 EC 11 EC 00", "B1 (Shift JIS) single-byte codepoint A5 (same bytes as ¥ ISO 8859-1 above, so ambiguous)" }, + /* 9*/ { UNICODE_MODE, "¿", 0, "86 FC 00 EC 11 EC 11 EC 00", "B1 (ISO 8859-1) (same bytes as ソ Shift JIS below, so ambiguous)" }, + /* 10*/ { UNICODE_MODE, "ソ", 0, "86 FC 00 EC 11 EC 11 EC 00", "B1 (Shift JIS) (same bytes as ¿ ISO 8859-1 above, so ambiguous)" }, + /* 11*/ { UNICODE_MODE, "~", 0, "85 F8 00 EC 11 EC 11 EC 00", "B1 (ASCII) (same bytes as ‾ Shift JIS below, so ambiguous)" }, + /* 12*/ { UNICODE_MODE, "‾", 0, "85 F8 00 EC 11 EC 11 EC 00", "B1 (Shift JIS) (same bytes as ~ ASCII above, so ambiguous)" }, + /* 13*/ { UNICODE_MODE, "点", 0, "CB 67 C0 00 EC 11 EC 11 00", "K1 (Shift JIS)" }, + /* 14*/ { DATA_MODE, "\223\137", 0, "CB 67 C0 00 EC 11 EC 11 00", "K1 (Shift JIS)" }, + /* 15*/ { DATA_MODE, "点", 0, "CF 30 A1 B9 00 EC 11 EC 00", "K1 B1 (UTF-8) (1st 2 UTF-8 bytes E782 encoded in Kanji mode) (non-optimal)" }, + /* 16*/ { UNICODE_MODE, "茗", 0, "CE AA 80 00 EC 11 EC 11 00", "K1 (Shift JIS)" }, + /* 17*/ { DATA_MODE, "\344\252", 0, "CE AA 80 00 EC 11 EC 11 00", "K1 (Shift JIS)" }, + /* 18*/ { DATA_MODE, "茗", 0, "CF 63 21 97 00 EC 11 EC 00", "K1 B1 (UTF-8) (1st 2 UTF-8 bytes E88C encoded in Kanji mode) (non-optimal)" }, + /* 19*/ { UNICODE_MODE, "¥点", 0, "85 73 2D 9F 00 EC 11 EC 00", "B1 K1 (Shift JIS) (non-optimal)" }, + /* 20*/ { DATA_MODE, "\134\223\137", 0, "85 73 2D 9F 00 EC 11 EC 00", "B1 K1 (Shift JIS) (non-optimal)" }, + /* 21*/ { DATA_MODE, "¥点", 0, "8B 0A 97 3C C2 86 E4 00 00", "B2 K1 B1 (UTF-8) (last 2 UTF-8 bytes 82B9 encoded in Kanji mode) (non-optimal)" }, + /* 22*/ { UNICODE_MODE, "点茗", 0, "D3 67 F5 54 00 EC 11 EC 00", "K2 (Shift JIS)" }, + /* 23*/ { DATA_MODE, "\223\137\344\252", 0, "D3 67 F5 54 00 EC 11 EC 00", "K2 (Shift JIS)" }, + /* 24*/ { DATA_MODE, "点茗", 0, "CF 30 A1 B9 CF 63 21 97 00", "K1 B1 K1 B1 (UTF-8) (non-optimal)" }, + /* 25*/ { UNICODE_MODE, "点茗・", 0, "D3 67 F5 55 0D 28 00 EC 00", "K2 B1 (Shift JIS) (non-optimal)" }, + /* 26*/ { DATA_MODE, "\223\137\344\252\245", 0, "D3 67 F5 55 0D 28 00 EC 00", "K2 B1 (Shift JIS) (non-optimal)" }, + /* 27*/ { DATA_MODE, "点茗・", 0, "63 CC 24 1B 96 5D 8C 89 7A 15 ED 28 00 EC", "K1 B1 K2 B2 (UTF-8) (non-optimal)" }, + /* 28*/ { UNICODE_MODE, "¥点茗・", 0, "85 73 4D 9F D5 54 34 A0 00", "B1 K2 B1 (Shift JIS) (non-optimal)" }, + /* 29*/ { DATA_MODE, "\134\223\137\344\252\245", 0, "85 73 4D 9F D5 54 34 A0 00", "B1 K2 B1 (Shift JIS) (non-optimal)" }, + /* 30*/ { DATA_MODE, "¥点茗・", 0, "42 C2 A5 63 CC 24 1B 96 5D 8C 89 7A 15 ED 28 00", "B2 K1 B1 K2 B2 (UTF-8) (non-optimal)" }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + char escaped[1024]; + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_MICROQR; + symbol->input_mode = data[i].input_mode; + symbol->debug = ZINT_DEBUG_TEST; // Needed to get codeword dump in errtxt + + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d\n", i, ret, data[i].ret); + + #ifdef TEST_MICROQR_INPUT_GENERATE_EXPECTED + printf(" /*%3d*/ { %s, \"%s\", %s, \"%s\", \"%s\" },\n", + i, testUtilInputModeName(data[i].input_mode), testUtilEscape(data[i].data, escaped, sizeof(escaped)), testUtilErrorName(data[i].ret), + symbol->errtxt, data[i].comment); + #else + if (ret < 5) { + assert_zero(strcmp(symbol->errtxt, data[i].expected), "i:%d strcmp(%s, %s) != 0\n", i, symbol->errtxt, data[i].expected); + } + #endif + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + +static void test_upnqr_input(void) +{ + testStart(""); + + int ret; + struct item { + int input_mode; + unsigned char* data; + int ret; + char* expected; + char* comment; + }; + // Ą U+0104 in ISO 8859-2 0xA1, in other ISO 8859 and Win 1250, UTF-8 C484 + // Ŕ U+0154 in ISO 8859-2 0xC0, in Win 1250 but not other ISO 8859 or Win page, UTF-8 C594 + // é U+00E9 in ISO 8859-1 plus other ISO 8859 (but not in ISO 8859-7 or ISO 8859-11), Win 1250 plus other Win, not in Shift JIS, UTF-8 C3A9 + // β U+03B2 in ISO 8859-7 Greek (but not other ISO 8859 or Win page), in Shift JIS 0x83C0, UTF-8 CEB2 + struct item data[] = { + /* 0*/ { UNICODE_MODE, "ĄŔ", 0, "70 44 00 02 A1 C0 00 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11", "ECI-4 B2 (ISO 8859-2)" }, + /* 1*/ { UNICODE_MODE, "é", 0, "70 44 00 01 E9 00 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC 11 EC", "ECI-4 B1 (ISO 8859-2)" }, + /* 2*/ { UNICODE_MODE, "β", ZINT_ERROR_INVALID_DATA, "Error 572: Invalid characters in input data", "β not in ISO 8859-2" }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + char escaped[1024]; + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_UPNQR; + symbol->input_mode = data[i].input_mode; + symbol->debug = ZINT_DEBUG_TEST; // Needed to get codeword dump in errtxt + + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d\n", i, ret, data[i].ret); + assert_equal(symbol->eci, 4, "i:%d ZBarcode_Encode symbol->eci %d != 4\n", i, symbol->eci); + + #ifdef TEST_UPNQR_INPUT_GENERATE_EXPECTED + printf(" /*%3d*/ { %s, \"%s\", %s, \"%s\", \"%s\" },\n", + i, testUtilInputModeName(data[i].input_mode), testUtilEscape(data[i].data, escaped, sizeof(escaped)), testUtilErrorName(data[i].ret), + symbol->errtxt, data[i].comment); + #else + if (ret < 5) { + assert_zero(strcmp(symbol->errtxt, data[i].expected), "i:%d strcmp(%s, %s) != 0\n", i, symbol->errtxt, data[i].expected); + } + #endif + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + +static void test_qr_encode(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int input_mode; + int option_1; + int option_2; + int ret; + + int expected_rows; + int expected_width; + char* comment; + char* expected; + }; + struct item data[] = { + /* 0*/ { "12345678901234567890123456789012345678901", UNICODE_MODE, -1, -1, 0, 21, 21, "Max capacity Version 1 41 numbers", + "111111100011001111111" + "100000100001001000001" + "101110101110001011101" + "101110100001001011101" + "101110100011001011101" + "100000100100001000001" + "111111101010101111111" + "000000001100100000000" + "111011111000011000100" + "111000000110111000001" + "001001111011110001000" + "001110011011011111001" + "001100101000001000011" + "000000001101100001010" + "111111101011011001011" + "100000101100010001011" + "101110101101010111100" + "101110100000111000010" + "101110101001100011101" + "100000101010111011000" + "111111101000100010101" + }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_QRCODE; + symbol->input_mode = data[i].input_mode; + if (data[i].option_1 != -1) { + symbol->option_1 = data[i].option_1; + } + if (data[i].option_2 != -1) { + symbol->option_2 = data[i].option_2; + } + + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt); + + #ifdef TEST_QR_ENCODE_GENERATE_EXPECTED + printf(" /*%3d*/ { \"%s\", %s, %d, %d, %s, %d, %d, \"%s\",\n", + i, data[i].data, testUtilInputModeName(data[i].input_mode), data[i].option_1, data[i].option_2, testUtilErrorName(data[i].ret), + symbol->rows, symbol->width, data[i].comment); + testUtilModulesDump(symbol, " ", "\n"); + printf(" },\n"); + #else + if (ret < 5) { + assert_equal(symbol->rows, data[i].expected_rows, "i:%d symbol->rows %d != %d (%s)\n", i, symbol->rows, data[i].expected_rows, data[i].data); + assert_equal(symbol->width, data[i].expected_width, "i:%d symbol->width %d != %d (%s)\n", i, symbol->width, data[i].expected_width, data[i].data); + + if (ret == 0) { + int width, row; + ret = testUtilModulesCmp(symbol, data[i].expected, &width, &row); + assert_zero(ret, "i:%d testUtilModulesCmp ret %d != 0 width %d row %d (%s)\n", i, ret, width, row, data[i].data); + } + } + #endif + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + +static void test_microqr_encode(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int input_mode; + int option_1; + int option_2; + int ret; + + int expected_rows; + int expected_width; + char* comment; + char* expected; + }; + struct item data[] = { + /* 0*/ { "12345", UNICODE_MODE, -1, -1, 0, 11, 11, "Max capacity M1 5 numbers", + "11111110101" + "10000010110" + "10111010100" + "10111010000" + "10111010111" + "10000010011" + "11111110100" + "00000000011" + "11001110011" + "01010001100" + "11110000011" + }, + /* 1*/ { "点茗テ点茗テ点茗テ", UNICODE_MODE, -1, -1, 0, 17, 17, "Max capacity M4 9 Kanji", + "11111110101010101" + "10000010111110010" + "10111010000011101" + "10111010110011010" + "10111010001011001" + "10000010110110110" + "11111110101100100" + "00000000010011011" + "10010111011110100" + "00001010100100110" + "11101010001000010" + "00010111101000010" + "11000100010110000" + "01001111010011101" + "10000100101100011" + "01011000000010111" + "11001111011101001" + }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_MICROQR; + symbol->input_mode = data[i].input_mode; + if (data[i].option_1 != -1) { + symbol->option_1 = data[i].option_1; + } + if (data[i].option_2 != -1) { + symbol->option_2 = data[i].option_2; + } + + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt); + + #ifdef TEST_MICROQR_ENCODE_GENERATE_EXPECTED + printf(" /*%3d*/ { \"%s\", %s, %d, %d, %s, %d, %d, \"%s\",\n", + i, data[i].data, testUtilInputModeName(data[i].input_mode), data[i].option_1, data[i].option_2, testUtilErrorName(data[i].ret), + symbol->rows, symbol->width, data[i].comment); + testUtilModulesDump(symbol, " ", "\n"); + printf(" },\n"); + #else + if (ret < 5) { + assert_equal(symbol->rows, data[i].expected_rows, "i:%d symbol->rows %d != %d (%s)\n", i, symbol->rows, data[i].expected_rows, data[i].data); + assert_equal(symbol->width, data[i].expected_width, "i:%d symbol->width %d != %d (%s)\n", i, symbol->width, data[i].expected_width, data[i].data); + + if (ret == 0) { + int width, row; + ret = testUtilModulesCmp(symbol, data[i].expected, &width, &row); + assert_zero(ret, "i:%d testUtilModulesCmp ret %d != 0 width %d row %d (%s)\n", i, ret, width, row, data[i].data); + } + } + #endif + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + +static void test_upnqr_encode(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int input_mode; + int option_1; + int option_2; + int ret; + + int expected_rows; + int expected_width; + char* comment; + char* expected; + }; + + struct item data[] = { + /* 0*/ { "Ą˘Ł¤ĽŚ§¨ŠŞŤŹŽŻ°ą˛ł´ľśˇ¸šşťź˝žżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙", UNICODE_MODE, -1, -1, 0, 77, 77, "ISO 8859-2", + "11111110000111101001000110101100101001111110111011001111111000110000001111111" + "10000010001011100100110111111011110100001011110000100001001110011010101000001" + "10111010110101111111101101111101001010110101111011011110100001100100101011101" + "10111010100110111001110101101000011101101000110011100111001111101000101011101" + "10111010100110010010011011111101001001111101101111101001101111001011101011101" + "10000010101011011010010010001010010101101010111000100011001110100010001000001" + "11111110101010101010101010101010101010101010101010101010101010101010101111111" + "00000000110101001100101010001100001011110010011000111100111000000000100000000" + "10111110010111011110010011111001111100101111111111100001010110011010001111100" + "10000001110110110001011001111100101000111010111001001101111100111000111100000" + "11111110110010111100110011101011110100001111110110101111010110000010001011010" + "00001100011100001010101111010101001111110100011101010110101000110000010100000" + "11010011100111011010010001110000010010101001110101111101001110000010101001010" + "10000100100110010010011000011101010111111100111011010111100100100001011100000" + "11101110110010111100110111110010001010001011110000110001011110000011101011010" + "00001100011110101011101111011101101010010010011011011010110000111001110100000" + "11011111111100011010010101110001111101001111110011000011010110000010001001010" + "10010000100101010010011100001100101000011010111000101001111100101000111100010" + "11110110111100011100110011100011110101001111110110101011110110000010001111001" + "00111100010001101011101111000010101111100010001101110100011000111100110010011" + "11000111111100011010010111101111011010110111100110111100110110000111111111001" + "10000000111001110010011100010010001111100010101011110110011100101010111010000" + "11111110100100111100110001101111110010010111110011111000010110000001110010010" + "00111000000011101011111101001011010100010010000101011010111000111101011100000" + "11111111110110011010001011111110000001001111101111101011010110000001111110010" + "11101000100001111010011010001011010000011010101000111001111100101111100011100" + "10001010111100101100110110101110000101001111111010100011110100000101101010010" + "01011000101001110011101110001011001000000011011000111000011011111100100010101" + "01101111101010001010011011111110011011010110011111111010110001000100111111001" + "01100101111101101010010101101011001010000011000101100000011011001101101001110" + "01010110111100110000110110010110010101010110010101001010110010000010010101111" + "11110000101111101011011001101011010110001010000000110000011001111111001010010" + "01000010001010001010001111001110000011000111110110011011110110100100110110101" + "10110101111001101010100101101011010110011010100110010000111100101110101101110" + "01111110011100110001111110010110000011001111101000111011010111001000001100100" + "01111101101001101001101001001011010110011001011110010000001101110011100101110" + "00011110001000001001011110001110000011001100001101111010100101111010100000000" + "00110001111011111101110101101011010110001101010111110001000101110001110010010" + "00111111111101100001110110010110000011011010010001011011101100110010000101001" + "11111100101101010011000001101111010110000101100110110000000001011101110110011" + "10011110101001010101000111101100000011010000010100011010111001100100100011001" + "00110000111011111100100100001011010110000110100110010000011001001111101001110" + "00111111111100101111110110110110000011010111101000111010101100100000011000101" + "00111100101101001100100001001100010111100010111110010100011110000111101111111" + "00011110101000110101001110001101100010010110101100111110110110001100110010001" + "00110001011010010000110111100000110110000011110110010000010110101111110111110" + "11111111111100101001111011111011100010010110101111111110110100001000111110101" + "00111000101101001011000110001111010111100101001000110110000011110110100011111" + "00011010110001110111001110101000000010110000001010111000101001111101101010001" + "00111000100011110100110010001001010110100101011000110100000011011111100011110" + "11111111100101101100111011111000000011010010001111110110111000101000111110101" + "00111101101101001000000100110000001010000011011000111000010011001111100011111" + "00011111100000110000101100100101110101010110000110000010110001110101010110001" + "00111100100011110000110010000100100000000011001100101000011011000110100011110" + "11000010000101001110011100001101110101010110000110001010110000101001010110101" + "00101100101110101001000110101000101111100101011000110100001011010111100011111" + "00011110001010110000101011101111111010110000000110011100101001111101110110001" + "00011100001000010000110010100000101111100101001100110110000011010110000011100" + "11000011000101101110011100010011100010010010000100010000011000111000110110110" + "00000101111010001001000010001001010010010101011010111010100011010110000011100" + "00011110011001110000101100100101000101001000000000000011001001111110010110010" + "00111100000101110000110101000000010000011101001010101001100011010010100011010" + "11100110111101101110001011001111100101001010000010000011111000111101010111001" + "00010001110110000001001101010000001001100101011000111100000011010111100011111" + "10010010000001111000111010111101111000110000000110001100101001111001010110101" + "10010000000111110000111011001000101001100101000101111110000011010001100011110" + "01001110100011111110011101000111110100010010001101001000011010111010110110010" + "00001001111000001001000001001000010111110100010010100110100001010111100010101" + "01111010010011110000101011111101100010101001101111111101001111011101111110101" + "00000000110101101000111110001000110011111100101000100111100101010101100011101" + "11111110001101111010001010101111100100001011101010100001011101011010101011100" + "10000010111110000001101010001000001011111101001000111110000011010001100010010" + "10111010110101110101011111111101111100100000011111100101101000111011111111101" + "10111010110001100110111110110000101001111101010001101110100010110000010010010" + "10111010101011111111010111011111110100001010011011000001111000110011100101010" + "10000010011100010001111111000000001011100000001000111111100001011101111000001" + "11111110110101111101111001011101111100101101111101100101000101100100011101000" + }, + }; + int data_size = sizeof(data) / sizeof(struct item); + + for (int i = 0; i < data_size; i++) { + + struct zint_symbol* symbol = ZBarcode_Create(); + assert_nonnull(symbol, "Symbol not created\n"); + + symbol->symbology = BARCODE_UPNQR; + symbol->input_mode = data[i].input_mode; + if (data[i].option_1 != -1) { + symbol->option_1 = data[i].option_1; + } + if (data[i].option_2 != -1) { + symbol->option_2 = data[i].option_2; + } + + int length = strlen(data[i].data); + + ret = ZBarcode_Encode(symbol, data[i].data, length); + assert_equal(ret, data[i].ret, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret, symbol->errtxt); + + #ifdef TEST_UPNQR_ENCODE_GENERATE_EXPECTED + printf(" /*%3d*/ { \"%s\", %s, %d, %d, %s, %d, %d, \"%s\",\n", + i, data[i].data, testUtilInputModeName(data[i].input_mode), data[i].option_1, data[i].option_2, testUtilErrorName(data[i].ret), + symbol->rows, symbol->width, data[i].comment); + testUtilModulesDump(symbol, " ", "\n"); + printf(" },\n"); + #else + if (ret < 5) { + assert_equal(symbol->rows, data[i].expected_rows, "i:%d symbol->rows %d != %d (%s)\n", i, symbol->rows, data[i].expected_rows, data[i].data); + assert_equal(symbol->width, data[i].expected_width, "i:%d symbol->width %d != %d (%s)\n", i, symbol->width, data[i].expected_width, data[i].data); + + if (ret == 0) { + int width, row; + ret = testUtilModulesCmp(symbol, data[i].expected, &width, &row); + assert_zero(ret, "i:%d testUtilModulesCmp ret %d != 0 width %d row %d (%s)\n", i, ret, width, row, data[i].data); + } + } + #endif + + ZBarcode_Delete(symbol); + } + + testFinish(); +} + int main() { test_microqr_options(); + test_qr_input(); + test_microqr_input(); + test_upnqr_input(); + test_qr_encode(); + test_microqr_encode(); + test_upnqr_encode(); testReport(); diff --git a/backend/tests/test_sjis.c b/backend/tests/test_sjis.c new file mode 100644 index 00000000..e4611d80 --- /dev/null +++ b/backend/tests/test_sjis.c @@ -0,0 +1,283 @@ +/* + libzint - the open source barcode library + Copyright (C) 2008-2019 Robin Stuart + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the project nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + */ +/* vim: set ts=4 sw=4 et : */ + +#include "testcommon.h" +#include "test_sjis_tab.h" +#include "../sjis.h" + +// As control convert to Shift JIS using simple table generated from https://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/SHIFTJIS.TXT plus simple processing +static int sjis_wctomb_zint2(unsigned char* r, unsigned int wc, size_t n) +{ + if (wc < 0x20 || wc == 0x7F) { + r[0] = wc; + return 1; + } + // Shortcut + if ((wc > 0x00F7 && wc < 0x0391) || (wc > 0x0451 && wc < 0x2010) || (wc > 0x9FA0 && wc < 0xE000) || (wc > 0xE757 && wc < 0xFF01) || wc > 0xFFE5) { + return 0; + } + if (wc >= 0xE000 && wc <= 0xE757) { // PUA mappings, not in SHIFTJIS.TXT + unsigned short c; + if (wc <= 0xE0BB) { + c = wc - 0xE000 + 0xF040 + (wc >= 0xE000 + 0x3F); + } else if (wc <= 0xE177) { + c = wc - 0xE0BC + 0xF140 + (wc >= 0xE0BC + 0x3F); + } else if (wc <= 0xE233) { + c = wc - 0xE178 + 0xF240 + (wc >= 0xE178 + 0x3F); + } else if (wc <= 0xE2EF) { + c = wc - 0xE234 + 0xF340 + (wc >= 0xE234 + 0x3F); + } else if (wc <= 0xE3AB) { + c = wc - 0xE2F0 + 0xF440 + (wc >= 0xE2F0 + 0x3F); + } else if (wc <= 0xE467) { + c = wc - 0xE3AC + 0xF540 + (wc >= 0xE3AC + 0x3F); + } else if (wc <= 0xE523) { + c = wc - 0xE468 + 0xF640 + (wc >= 0xE468 + 0x3F); + } else if (wc <= 0xE5DF) { + c = wc - 0xE524 + 0xF740 + (wc >= 0xE524 + 0x3F); + } else if (wc <= 0xE69B) { + c = wc - 0xE5E0 + 0xF840 + (wc >= 0xE5E0 + 0x3F); + } else { + c = wc - 0xE69C + 0xF940 + (wc >= 0xE69C + 0x3F); + } + r[0] = (c >> 8); + r[1] = c & 0xFF; + return 2; + } + int tab_length = sizeof(test_sjis_tab) / sizeof(unsigned short); + for (int i = 0; i < tab_length; i += 2) { + if (test_sjis_tab[i + 1] == wc) { + unsigned short c = test_sjis_tab[i]; + if (c < 0xFF) { + r[0] = c; + return 1; + } + r[0] = (c >> 8); + r[1] = c & 0xFF; + return 2; + } + } + return 0; +} + +static void test_sjis_wctomb_zint(void) +{ + testStart(""); + + int ret, ret2; + unsigned char buf[2], buf2[2]; + unsigned int val, val2; + + for (unsigned int i = 0; i < 0xFFFE; i++) { + if (i >= 0xD800 && i <= 0xDFFF) { // UTF-16 surrogates + continue; + } + buf[0] = buf[1] = buf2[0] = buf2[1] = 0; + ret = sjis_wctomb_zint(buf, i, 2); + val = ret == 1 ? buf[0] : (buf[0] << 8) | buf[1]; + ret2 = sjis_wctomb_zint2(buf2, i, 2); + val2 = ret2 == 1 ? buf2[0] : (buf2[0] << 8) | buf2[1]; + if (i == 0xFF3C) { // Extra mapping full-width reverse solidus U+FF3C to 0x815F, duplicate of U+005C (backslash) + assert_equal(ret, 2, "i:%d 0x%04X ret %d != 2, val 0x%04X\n", i, i, ret, val); + assert_equal(val, 0x815F, "i:%d 0x%04X val 0x%04X != 0x815F\n", i, i, val); + assert_zero(ret2, "i:%d 0x%04X ret2 %d != 0, val2 0x%04X\n", i, i, ret2, val2); + } else { + assert_equal(ret, ret2, "i:%d 0x%04X ret %d != ret2 %d, val 0x%04X, val2 0x%04X\n", i, i, ret, ret2, val, val2); + } + if (ret2) { + assert_equal(val, val2, "i:%d 0x%04X val 0x%04X != val2 0x%04X\n", i, i, val, val2); + } + } + + testFinish(); +} + +static void test_sjis_utf8tomb(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int length; + int ret; + size_t ret_length; + unsigned int expected_jisdata[20]; + char* comment; + }; + // é U+00E9 in ISO 8859-1 plus other ISO 8859 (but not in ISO 8859-7 or ISO 8859-11), Win 1250 plus other Win, not in Shift JIS, UTF-8 C3A9 + // β U+03B2 in ISO 8859-7 Greek (but not other ISO 8859 or Win page), in Shift JIS 0x83C0, UTF-8 CEB2 + // Ж U+0416 in ISO 8859-5 Cyrillic (but not other ISO 8859), Win 1251, in Shift JIS 0x8447, UTF-8 D096 + // ¥ U+00A5 in ISO 8859-1 0xA5 (\245), in Shift JIS single-byte 0x5C (\134) (backslash); 0xA5 same codepoint as single-byte half-width katakana ・ (U+FF65) in Shift JIS (below), UTF-8 C2A5 + // ・ U+FF65 half-width katakana, not in ISO/Win, in Shift JIS single-byte 0xA5 (\245), UTF-8 EFBDA5 + // ソ U+FF7F half-width katakana, not in ISO/Win, in Shift JIS single-byte 0xBF (\277), UTF-8 EFBDBF + // ‾ U+203E overline, not in ISO/Win, in Shift JIS single-byte 0x7E (\176) (tilde), UTF-8 E280BE + // \ U+FF3C full-width reverse solidus, in Shift JIS 0x815F, duplicate of mapping of U+005C, UTF-8 EFBCBC + // 点 U+70B9 kanji, in Shift JIS 0x935F (\223\137), UTF-8 E782B9 + // 茗 U+8317 kanji, in Shift JIS 0xE4AA (\344\252), UTF-8 E88C97 + // テ U+30C6 katakana, in Shift JIS 0x8365 (\203\145), UTF-8 E38386 + // s/\/\*[ 0-9]*\*\//\=printf("\/*%3d*\/", line(".") - line("'<")) + struct item data[] = { + /* 0*/ { "é", -1, ZINT_ERROR_INVALID_DATA, -1, {}, "" }, + /* 1*/ { "~", -1, ZINT_ERROR_INVALID_DATA, -1, {}, "" }, + /* 2*/ { "β", -1, 0, 1, { 0x83C0 }, "" }, + /* 3*/ { "¥", -1, 0, 1, { 0x5C }, "" }, + /* 4*/ { "aβcЖ¥・ソ‾\\\点茗テ", -1, 0, 13, { 'a', 0x83C0, 'c', 0x8447, 0x5C, 0xA5, 0xBF, 0x7E, 0x815F, 0x815F, 0x935F, 0xE4AA, 0x8365 }, "" }, + }; + + int data_size = sizeof(data) / sizeof(struct item); + + struct zint_symbol symbol; + unsigned int jisdata[20]; + + for (int i = 0; i < data_size; i++) { + + int length = data[i].length == -1 ? strlen(data[i].data) : data[i].length; + size_t ret_length = length; + + ret = sjis_utf8tomb(&symbol, data[i].data, &ret_length, jisdata); + assert_equal(ret, data[i].ret, "i:%d ret %d != %d (%s)\n", i, ret, data[i].ret, symbol.errtxt); + if (ret == 0) { + assert_equal(ret_length, data[i].ret_length, "i:%d ret_length %zu != %zu\n", i, ret_length, data[i].ret_length); + for (int j = 0; j < ret_length; j++) { + assert_equal(jisdata[j], data[i].expected_jisdata[j], "i:%d jisdata[%d] %04X != %04X\n", i, j, jisdata[j], data[i].expected_jisdata[j]); + } + } + } + + testFinish(); +} + +static void test_sjis_utf8tosb(void) +{ + testStart(""); + + int ret; + struct item { + int eci; + unsigned char* data; + int length; + int ret; + size_t ret_length; + unsigned int expected_jisdata[20]; + char* comment; + }; + // é U+00E9 in ISO 8859-1 0xE9, Win 1250 plus other Win + // β U+03B2 in ISO 8859-7 Greek 0xE2 (but not other ISO 8859 or Win page) + // ¥ U+00A5 in ISO 8859-1 0xA5, in QR Kanji mode first byte range 0x81..9F, 0xE0..EB + // ú U+00FA in ISO 8859-1 0xFA, outside first byte range + // à U+00FA in ISO 8859-1 0xE0, in first byte range + // ë U+00FA in ISO 8859-1 0xEB, in first byte range + // ì U+00FA in ISO 8859-1 0xEC, outside first byte range + // µ U+00B5 in ISO 8859-1 0xB5, outside first byte range + // s/\/\*[ 0-9]*\*\//\=printf("\/*%3d*\/", line(".") - line("'<")) + struct item data[] = { + /* 0*/ { 3, "é", -1, 0, 1, { 0xE9 }, "" }, + /* 1*/ { 3, "β", -1, ZINT_ERROR_INVALID_DATA, -1, {}, "" }, + /* 2*/ { 9, "β", -1, 0, 1, { 0xE2 }, "" }, + /* 3*/ { 3, "¥", -1, 0, 1, { 0xA5 }, "" }, + /* 4*/ { 3, "éa", -1, 0, 1, { 0xE961 }, "In QR Kanji mode range" }, + /* 5*/ { 3, "éaúbàcëdìeµ", -1, 0, 8, { 0xE961, 0xFA, 0x62, 0xE063, 0xEB64, 0xEC, 0x65, 0xB5 }, "" }, + }; + + int data_size = sizeof(data) / sizeof(struct item); + + unsigned int jisdata[20]; + + for (int i = 0; i < data_size; i++) { + + int length = data[i].length == -1 ? strlen(data[i].data) : data[i].length; + size_t ret_length = length; + + ret = sjis_utf8tosb(data[i].eci, data[i].data, &ret_length, jisdata); + assert_equal(ret, data[i].ret, "i:%d ret %d != %d\n", i, ret, data[i].ret); + if (ret == 0) { + assert_equal(ret_length, data[i].ret_length, "i:%d ret_length %zu != %zu\n", i, ret_length, data[i].ret_length); + for (int j = 0; j < ret_length; j++) { + assert_equal(jisdata[j], data[i].expected_jisdata[j], "i:%d jisdata[%d] %04X != %04X\n", i, j, jisdata[j], data[i].expected_jisdata[j]); + } + } + } + + testFinish(); +} + +static void test_sjis_cpy(void) +{ + testStart(""); + + int ret; + struct item { + unsigned char* data; + int length; + int ret; + size_t ret_length; + unsigned int expected_jisdata[20]; + char* comment; + }; + // s/\/\*[ 0-9]*\*\//\=printf("\/*%3d*\/", line(".") - line("'<")) + struct item data[] = { + /* 0*/ { "\351", -1, 0, 1, { 0xE9 }, "In QR Kanji mode first-byte range but only one byte" }, + /* 1*/ { "\351\141", -1, 0, 1, { 0xE961 }, "In QR Kanji mode range" }, + /* 0*/ { "\201", -1, 0, 1, { 0x81 }, "In QR Kanji mode first-byte range but only one byte" }, + /* 0*/ { "\201\141", -1, 0, 1, { 0x8161 }, "In QR Kanji mode range" }, + /* 0*/ { "\201\077\201\100\237\374\237\375\340\077\340\100\353\277\353\300", -1, 0, 12, { 0x81, 0x3F, 0x8140, 0x9FFC, 0x9F, 0xFD, 0xE0, 0x3F, 0xE040, 0xEBBF, 0xEB, 0xC0 }, "" }, + }; + + int data_size = sizeof(data) / sizeof(struct item); + + unsigned int jisdata[20]; + + for (int i = 0; i < data_size; i++) { + + int length = data[i].length == -1 ? strlen(data[i].data) : data[i].length; + size_t ret_length = length; + + sjis_cpy(data[i].data, &ret_length, jisdata); + assert_equal(ret_length, data[i].ret_length, "i:%d ret_length %zu != %zu\n", i, ret_length, data[i].ret_length); + for (int j = 0; j < ret_length; j++) { + assert_equal(jisdata[j], data[i].expected_jisdata[j], "i:%d jisdata[%d] %04X != %04X\n", i, j, jisdata[j], data[i].expected_jisdata[j]); + } + } + + testFinish(); +} + +int main() +{ + test_sjis_wctomb_zint(); + test_sjis_utf8tomb(); + test_sjis_utf8tosb(); + test_sjis_cpy(); + + testReport(); + + return 0; +} diff --git a/backend/tests/test_sjis_tab.h b/backend/tests/test_sjis_tab.h new file mode 100644 index 00000000..2ef1d2ef --- /dev/null +++ b/backend/tests/test_sjis_tab.h @@ -0,0 +1,7040 @@ +/* Generated by gen_test_tab.php from SHIFTJIS.TXT */ +static const unsigned short test_sjis_tab[] = { + 0x0020, 0x0020, + 0x0021, 0x0021, + 0x0022, 0x0022, + 0x0023, 0x0023, + 0x0024, 0x0024, + 0x0025, 0x0025, + 0x0026, 0x0026, + 0x0027, 0x0027, + 0x0028, 0x0028, + 0x0029, 0x0029, + 0x002A, 0x002A, + 0x002B, 0x002B, + 0x002C, 0x002C, + 0x002D, 0x002D, + 0x002E, 0x002E, + 0x002F, 0x002F, + 0x0030, 0x0030, + 0x0031, 0x0031, + 0x0032, 0x0032, + 0x0033, 0x0033, + 0x0034, 0x0034, + 0x0035, 0x0035, + 0x0036, 0x0036, + 0x0037, 0x0037, + 0x0038, 0x0038, + 0x0039, 0x0039, + 0x003A, 0x003A, + 0x003B, 0x003B, + 0x003C, 0x003C, + 0x003D, 0x003D, + 0x003E, 0x003E, + 0x003F, 0x003F, + 0x0040, 0x0040, + 0x0041, 0x0041, + 0x0042, 0x0042, + 0x0043, 0x0043, + 0x0044, 0x0044, + 0x0045, 0x0045, + 0x0046, 0x0046, + 0x0047, 0x0047, + 0x0048, 0x0048, + 0x0049, 0x0049, + 0x004A, 0x004A, + 0x004B, 0x004B, + 0x004C, 0x004C, + 0x004D, 0x004D, + 0x004E, 0x004E, + 0x004F, 0x004F, + 0x0050, 0x0050, + 0x0051, 0x0051, + 0x0052, 0x0052, + 0x0053, 0x0053, + 0x0054, 0x0054, + 0x0055, 0x0055, + 0x0056, 0x0056, + 0x0057, 0x0057, + 0x0058, 0x0058, + 0x0059, 0x0059, + 0x005A, 0x005A, + 0x005B, 0x005B, + 0x815F, 0x005C, + 0x005D, 0x005D, + 0x005E, 0x005E, + 0x005F, 0x005F, + 0x0060, 0x0060, + 0x0061, 0x0061, + 0x0062, 0x0062, + 0x0063, 0x0063, + 0x0064, 0x0064, + 0x0065, 0x0065, + 0x0066, 0x0066, + 0x0067, 0x0067, + 0x0068, 0x0068, + 0x0069, 0x0069, + 0x006A, 0x006A, + 0x006B, 0x006B, + 0x006C, 0x006C, + 0x006D, 0x006D, + 0x006E, 0x006E, + 0x006F, 0x006F, + 0x0070, 0x0070, + 0x0071, 0x0071, + 0x0072, 0x0072, + 0x0073, 0x0073, + 0x0074, 0x0074, + 0x0075, 0x0075, + 0x0076, 0x0076, + 0x0077, 0x0077, + 0x0078, 0x0078, + 0x0079, 0x0079, + 0x007A, 0x007A, + 0x007B, 0x007B, + 0x007C, 0x007C, + 0x007D, 0x007D, + 0x8191, 0x00A2, + 0x8192, 0x00A3, + 0x005C, 0x00A5, + 0x8198, 0x00A7, + 0x814E, 0x00A8, + 0x81CA, 0x00AC, + 0x818B, 0x00B0, + 0x817D, 0x00B1, + 0x814C, 0x00B4, + 0x81F7, 0x00B6, + 0x817E, 0x00D7, + 0x8180, 0x00F7, + 0x839F, 0x0391, + 0x83A0, 0x0392, + 0x83A1, 0x0393, + 0x83A2, 0x0394, + 0x83A3, 0x0395, + 0x83A4, 0x0396, + 0x83A5, 0x0397, + 0x83A6, 0x0398, + 0x83A7, 0x0399, + 0x83A8, 0x039A, + 0x83A9, 0x039B, + 0x83AA, 0x039C, + 0x83AB, 0x039D, + 0x83AC, 0x039E, + 0x83AD, 0x039F, + 0x83AE, 0x03A0, + 0x83AF, 0x03A1, + 0x83B0, 0x03A3, + 0x83B1, 0x03A4, + 0x83B2, 0x03A5, + 0x83B3, 0x03A6, + 0x83B4, 0x03A7, + 0x83B5, 0x03A8, + 0x83B6, 0x03A9, + 0x83BF, 0x03B1, + 0x83C0, 0x03B2, + 0x83C1, 0x03B3, + 0x83C2, 0x03B4, + 0x83C3, 0x03B5, + 0x83C4, 0x03B6, + 0x83C5, 0x03B7, + 0x83C6, 0x03B8, + 0x83C7, 0x03B9, + 0x83C8, 0x03BA, + 0x83C9, 0x03BB, + 0x83CA, 0x03BC, + 0x83CB, 0x03BD, + 0x83CC, 0x03BE, + 0x83CD, 0x03BF, + 0x83CE, 0x03C0, + 0x83CF, 0x03C1, + 0x83D0, 0x03C3, + 0x83D1, 0x03C4, + 0x83D2, 0x03C5, + 0x83D3, 0x03C6, + 0x83D4, 0x03C7, + 0x83D5, 0x03C8, + 0x83D6, 0x03C9, + 0x8446, 0x0401, + 0x8440, 0x0410, + 0x8441, 0x0411, + 0x8442, 0x0412, + 0x8443, 0x0413, + 0x8444, 0x0414, + 0x8445, 0x0415, + 0x8447, 0x0416, + 0x8448, 0x0417, + 0x8449, 0x0418, + 0x844A, 0x0419, + 0x844B, 0x041A, + 0x844C, 0x041B, + 0x844D, 0x041C, + 0x844E, 0x041D, + 0x844F, 0x041E, + 0x8450, 0x041F, + 0x8451, 0x0420, + 0x8452, 0x0421, + 0x8453, 0x0422, + 0x8454, 0x0423, + 0x8455, 0x0424, + 0x8456, 0x0425, + 0x8457, 0x0426, + 0x8458, 0x0427, + 0x8459, 0x0428, + 0x845A, 0x0429, + 0x845B, 0x042A, + 0x845C, 0x042B, + 0x845D, 0x042C, + 0x845E, 0x042D, + 0x845F, 0x042E, + 0x8460, 0x042F, + 0x8470, 0x0430, + 0x8471, 0x0431, + 0x8472, 0x0432, + 0x8473, 0x0433, + 0x8474, 0x0434, + 0x8475, 0x0435, + 0x8477, 0x0436, + 0x8478, 0x0437, + 0x8479, 0x0438, + 0x847A, 0x0439, + 0x847B, 0x043A, + 0x847C, 0x043B, + 0x847D, 0x043C, + 0x847E, 0x043D, + 0x8480, 0x043E, + 0x8481, 0x043F, + 0x8482, 0x0440, + 0x8483, 0x0441, + 0x8484, 0x0442, + 0x8485, 0x0443, + 0x8486, 0x0444, + 0x8487, 0x0445, + 0x8488, 0x0446, + 0x8489, 0x0447, + 0x848A, 0x0448, + 0x848B, 0x0449, + 0x848C, 0x044A, + 0x848D, 0x044B, + 0x848E, 0x044C, + 0x848F, 0x044D, + 0x8490, 0x044E, + 0x8491, 0x044F, + 0x8476, 0x0451, + 0x815D, 0x2010, + 0x815C, 0x2015, + 0x8161, 0x2016, + 0x8165, 0x2018, + 0x8166, 0x2019, + 0x8167, 0x201C, + 0x8168, 0x201D, + 0x81F5, 0x2020, + 0x81F6, 0x2021, + 0x8164, 0x2025, + 0x8163, 0x2026, + 0x81F1, 0x2030, + 0x818C, 0x2032, + 0x818D, 0x2033, + 0x81A6, 0x203B, + 0x007E, 0x203E, + 0x818E, 0x2103, + 0x81F0, 0x212B, + 0x81A9, 0x2190, + 0x81AA, 0x2191, + 0x81A8, 0x2192, + 0x81AB, 0x2193, + 0x81CB, 0x21D2, + 0x81CC, 0x21D4, + 0x81CD, 0x2200, + 0x81DD, 0x2202, + 0x81CE, 0x2203, + 0x81DE, 0x2207, + 0x81B8, 0x2208, + 0x81B9, 0x220B, + 0x817C, 0x2212, + 0x81E3, 0x221A, + 0x81E5, 0x221D, + 0x8187, 0x221E, + 0x81DA, 0x2220, + 0x81C8, 0x2227, + 0x81C9, 0x2228, + 0x81BF, 0x2229, + 0x81BE, 0x222A, + 0x81E7, 0x222B, + 0x81E8, 0x222C, + 0x8188, 0x2234, + 0x81E6, 0x2235, + 0x81E4, 0x223D, + 0x81E0, 0x2252, + 0x8182, 0x2260, + 0x81DF, 0x2261, + 0x8185, 0x2266, + 0x8186, 0x2267, + 0x81E1, 0x226A, + 0x81E2, 0x226B, + 0x81BC, 0x2282, + 0x81BD, 0x2283, + 0x81BA, 0x2286, + 0x81BB, 0x2287, + 0x81DB, 0x22A5, + 0x81DC, 0x2312, + 0x849F, 0x2500, + 0x84AA, 0x2501, + 0x84A0, 0x2502, + 0x84AB, 0x2503, + 0x84A1, 0x250C, + 0x84AC, 0x250F, + 0x84A2, 0x2510, + 0x84AD, 0x2513, + 0x84A4, 0x2514, + 0x84AF, 0x2517, + 0x84A3, 0x2518, + 0x84AE, 0x251B, + 0x84A5, 0x251C, + 0x84BA, 0x251D, + 0x84B5, 0x2520, + 0x84B0, 0x2523, + 0x84A7, 0x2524, + 0x84BC, 0x2525, + 0x84B7, 0x2528, + 0x84B2, 0x252B, + 0x84A6, 0x252C, + 0x84B6, 0x252F, + 0x84BB, 0x2530, + 0x84B1, 0x2533, + 0x84A8, 0x2534, + 0x84B8, 0x2537, + 0x84BD, 0x2538, + 0x84B3, 0x253B, + 0x84A9, 0x253C, + 0x84B9, 0x253F, + 0x84BE, 0x2542, + 0x84B4, 0x254B, + 0x81A1, 0x25A0, + 0x81A0, 0x25A1, + 0x81A3, 0x25B2, + 0x81A2, 0x25B3, + 0x81A5, 0x25BC, + 0x81A4, 0x25BD, + 0x819F, 0x25C6, + 0x819E, 0x25C7, + 0x819B, 0x25CB, + 0x819D, 0x25CE, + 0x819C, 0x25CF, + 0x81FC, 0x25EF, + 0x819A, 0x2605, + 0x8199, 0x2606, + 0x818A, 0x2640, + 0x8189, 0x2642, + 0x81F4, 0x266A, + 0x81F3, 0x266D, + 0x81F2, 0x266F, + 0x8140, 0x3000, + 0x8141, 0x3001, + 0x8142, 0x3002, + 0x8156, 0x3003, + 0x8158, 0x3005, + 0x8159, 0x3006, + 0x815A, 0x3007, + 0x8171, 0x3008, + 0x8172, 0x3009, + 0x8173, 0x300A, + 0x8174, 0x300B, + 0x8175, 0x300C, + 0x8176, 0x300D, + 0x8177, 0x300E, + 0x8178, 0x300F, + 0x8179, 0x3010, + 0x817A, 0x3011, + 0x81A7, 0x3012, + 0x81AC, 0x3013, + 0x816B, 0x3014, + 0x816C, 0x3015, + 0x8160, 0x301C, + 0x829F, 0x3041, + 0x82A0, 0x3042, + 0x82A1, 0x3043, + 0x82A2, 0x3044, + 0x82A3, 0x3045, + 0x82A4, 0x3046, + 0x82A5, 0x3047, + 0x82A6, 0x3048, + 0x82A7, 0x3049, + 0x82A8, 0x304A, + 0x82A9, 0x304B, + 0x82AA, 0x304C, + 0x82AB, 0x304D, + 0x82AC, 0x304E, + 0x82AD, 0x304F, + 0x82AE, 0x3050, + 0x82AF, 0x3051, + 0x82B0, 0x3052, + 0x82B1, 0x3053, + 0x82B2, 0x3054, + 0x82B3, 0x3055, + 0x82B4, 0x3056, + 0x82B5, 0x3057, + 0x82B6, 0x3058, + 0x82B7, 0x3059, + 0x82B8, 0x305A, + 0x82B9, 0x305B, + 0x82BA, 0x305C, + 0x82BB, 0x305D, + 0x82BC, 0x305E, + 0x82BD, 0x305F, + 0x82BE, 0x3060, + 0x82BF, 0x3061, + 0x82C0, 0x3062, + 0x82C1, 0x3063, + 0x82C2, 0x3064, + 0x82C3, 0x3065, + 0x82C4, 0x3066, + 0x82C5, 0x3067, + 0x82C6, 0x3068, + 0x82C7, 0x3069, + 0x82C8, 0x306A, + 0x82C9, 0x306B, + 0x82CA, 0x306C, + 0x82CB, 0x306D, + 0x82CC, 0x306E, + 0x82CD, 0x306F, + 0x82CE, 0x3070, + 0x82CF, 0x3071, + 0x82D0, 0x3072, + 0x82D1, 0x3073, + 0x82D2, 0x3074, + 0x82D3, 0x3075, + 0x82D4, 0x3076, + 0x82D5, 0x3077, + 0x82D6, 0x3078, + 0x82D7, 0x3079, + 0x82D8, 0x307A, + 0x82D9, 0x307B, + 0x82DA, 0x307C, + 0x82DB, 0x307D, + 0x82DC, 0x307E, + 0x82DD, 0x307F, + 0x82DE, 0x3080, + 0x82DF, 0x3081, + 0x82E0, 0x3082, + 0x82E1, 0x3083, + 0x82E2, 0x3084, + 0x82E3, 0x3085, + 0x82E4, 0x3086, + 0x82E5, 0x3087, + 0x82E6, 0x3088, + 0x82E7, 0x3089, + 0x82E8, 0x308A, + 0x82E9, 0x308B, + 0x82EA, 0x308C, + 0x82EB, 0x308D, + 0x82EC, 0x308E, + 0x82ED, 0x308F, + 0x82EE, 0x3090, + 0x82EF, 0x3091, + 0x82F0, 0x3092, + 0x82F1, 0x3093, + 0x814A, 0x309B, + 0x814B, 0x309C, + 0x8154, 0x309D, + 0x8155, 0x309E, + 0x8340, 0x30A1, + 0x8341, 0x30A2, + 0x8342, 0x30A3, + 0x8343, 0x30A4, + 0x8344, 0x30A5, + 0x8345, 0x30A6, + 0x8346, 0x30A7, + 0x8347, 0x30A8, + 0x8348, 0x30A9, + 0x8349, 0x30AA, + 0x834A, 0x30AB, + 0x834B, 0x30AC, + 0x834C, 0x30AD, + 0x834D, 0x30AE, + 0x834E, 0x30AF, + 0x834F, 0x30B0, + 0x8350, 0x30B1, + 0x8351, 0x30B2, + 0x8352, 0x30B3, + 0x8353, 0x30B4, + 0x8354, 0x30B5, + 0x8355, 0x30B6, + 0x8356, 0x30B7, + 0x8357, 0x30B8, + 0x8358, 0x30B9, + 0x8359, 0x30BA, + 0x835A, 0x30BB, + 0x835B, 0x30BC, + 0x835C, 0x30BD, + 0x835D, 0x30BE, + 0x835E, 0x30BF, + 0x835F, 0x30C0, + 0x8360, 0x30C1, + 0x8361, 0x30C2, + 0x8362, 0x30C3, + 0x8363, 0x30C4, + 0x8364, 0x30C5, + 0x8365, 0x30C6, + 0x8366, 0x30C7, + 0x8367, 0x30C8, + 0x8368, 0x30C9, + 0x8369, 0x30CA, + 0x836A, 0x30CB, + 0x836B, 0x30CC, + 0x836C, 0x30CD, + 0x836D, 0x30CE, + 0x836E, 0x30CF, + 0x836F, 0x30D0, + 0x8370, 0x30D1, + 0x8371, 0x30D2, + 0x8372, 0x30D3, + 0x8373, 0x30D4, + 0x8374, 0x30D5, + 0x8375, 0x30D6, + 0x8376, 0x30D7, + 0x8377, 0x30D8, + 0x8378, 0x30D9, + 0x8379, 0x30DA, + 0x837A, 0x30DB, + 0x837B, 0x30DC, + 0x837C, 0x30DD, + 0x837D, 0x30DE, + 0x837E, 0x30DF, + 0x8380, 0x30E0, + 0x8381, 0x30E1, + 0x8382, 0x30E2, + 0x8383, 0x30E3, + 0x8384, 0x30E4, + 0x8385, 0x30E5, + 0x8386, 0x30E6, + 0x8387, 0x30E7, + 0x8388, 0x30E8, + 0x8389, 0x30E9, + 0x838A, 0x30EA, + 0x838B, 0x30EB, + 0x838C, 0x30EC, + 0x838D, 0x30ED, + 0x838E, 0x30EE, + 0x838F, 0x30EF, + 0x8390, 0x30F0, + 0x8391, 0x30F1, + 0x8392, 0x30F2, + 0x8393, 0x30F3, + 0x8394, 0x30F4, + 0x8395, 0x30F5, + 0x8396, 0x30F6, + 0x8145, 0x30FB, + 0x815B, 0x30FC, + 0x8152, 0x30FD, + 0x8153, 0x30FE, + 0x88EA, 0x4E00, + 0x929A, 0x4E01, + 0x8EB5, 0x4E03, + 0x969C, 0x4E07, + 0x8FE4, 0x4E08, + 0x8E4F, 0x4E09, + 0x8FE3, 0x4E0A, + 0x89BA, 0x4E0B, + 0x9573, 0x4E0D, + 0x975E, 0x4E0E, + 0x98A0, 0x4E10, + 0x894E, 0x4E11, + 0x8A8E, 0x4E14, + 0x98A1, 0x4E15, + 0x90A2, 0x4E16, + 0x99C0, 0x4E17, + 0x8B75, 0x4E18, + 0x95B8, 0x4E19, + 0x8FE5, 0x4E1E, + 0x97BC, 0x4E21, + 0x95C0, 0x4E26, + 0x98A2, 0x4E2A, + 0x9286, 0x4E2D, + 0x98A3, 0x4E31, + 0x8BF8, 0x4E32, + 0x98A4, 0x4E36, + 0x8ADB, 0x4E38, + 0x924F, 0x4E39, + 0x8EE5, 0x4E3B, + 0x98A5, 0x4E3C, + 0x98A6, 0x4E3F, + 0x98A7, 0x4E42, + 0x9454, 0x4E43, + 0x8B76, 0x4E45, + 0x9456, 0x4E4B, + 0x93E1, 0x4E4D, + 0x8CC1, 0x4E4E, + 0x9652, 0x4E4F, + 0xE568, 0x4E55, + 0x98A8, 0x4E56, + 0x8FE6, 0x4E57, + 0x98A9, 0x4E58, + 0x89B3, 0x4E59, + 0x8BE3, 0x4E5D, + 0x8CEE, 0x4E5E, + 0x96E7, 0x4E5F, + 0x9BA4, 0x4E62, + 0x9790, 0x4E71, + 0x93FB, 0x4E73, + 0x8AA3, 0x4E7E, + 0x8B54, 0x4E80, + 0x98AA, 0x4E82, + 0x98AB, 0x4E85, + 0x97B9, 0x4E86, + 0x975C, 0x4E88, + 0x9188, 0x4E89, + 0x98AD, 0x4E8A, + 0x8E96, 0x4E8B, + 0x93F1, 0x4E8C, + 0x98B0, 0x4E8E, + 0x895D, 0x4E91, + 0x8CDD, 0x4E92, + 0x8CDC, 0x4E94, + 0x88E4, 0x4E95, + 0x986A, 0x4E98, + 0x9869, 0x4E99, + 0x8DB1, 0x4E9B, + 0x889F, 0x4E9C, + 0x98B1, 0x4E9E, + 0x98B2, 0x4E9F, + 0x98B3, 0x4EA0, + 0x9653, 0x4EA1, + 0x98B4, 0x4EA2, + 0x8CF0, 0x4EA4, + 0x88E5, 0x4EA5, + 0x9692, 0x4EA6, + 0x8B9C, 0x4EA8, + 0x8B9D, 0x4EAB, + 0x8B9E, 0x4EAC, + 0x92E0, 0x4EAD, + 0x97BA, 0x4EAE, + 0x98B5, 0x4EB0, + 0x98B6, 0x4EB3, + 0x98B7, 0x4EB6, + 0x906C, 0x4EBA, + 0x8F59, 0x4EC0, + 0x906D, 0x4EC1, + 0x98BC, 0x4EC2, + 0x98BA, 0x4EC4, + 0x98BB, 0x4EC6, + 0x8B77, 0x4EC7, + 0x8DA1, 0x4ECA, + 0x89EE, 0x4ECB, + 0x98B9, 0x4ECD, + 0x98B8, 0x4ECE, + 0x95A7, 0x4ECF, + 0x8E65, 0x4ED4, + 0x8E64, 0x4ED5, + 0x91BC, 0x4ED6, + 0x98BD, 0x4ED7, + 0x9574, 0x4ED8, + 0x90E5, 0x4ED9, + 0x8157, 0x4EDD, + 0x98BE, 0x4EDE, + 0x98C0, 0x4EDF, + 0x91E3, 0x4EE3, + 0x97DF, 0x4EE4, + 0x88C8, 0x4EE5, + 0x98BF, 0x4EED, + 0x89BC, 0x4EEE, + 0x8BC2, 0x4EF0, + 0x9287, 0x4EF2, + 0x8C8F, 0x4EF6, + 0x98C1, 0x4EF7, + 0x9443, 0x4EFB, + 0x8AE9, 0x4F01, + 0x98C2, 0x4F09, + 0x88C9, 0x4F0A, + 0x8CDE, 0x4F0D, + 0x8AEA, 0x4F0E, + 0x959A, 0x4F0F, + 0x94B0, 0x4F10, + 0x8B78, 0x4F11, + 0x89EF, 0x4F1A, + 0x98E5, 0x4F1C, + 0x9360, 0x4F1D, + 0x948C, 0x4F2F, + 0x98C4, 0x4F30, + 0x94BA, 0x4F34, + 0x97E0, 0x4F36, + 0x904C, 0x4F38, + 0x8E66, 0x4F3A, + 0x8E97, 0x4F3C, + 0x89BE, 0x4F3D, + 0x92CF, 0x4F43, + 0x9241, 0x4F46, + 0x98C8, 0x4F47, + 0x88CA, 0x4F4D, + 0x92E1, 0x4F4E, + 0x8F5A, 0x4F4F, + 0x8DB2, 0x4F50, + 0x9743, 0x4F51, + 0x91CC, 0x4F53, + 0x89BD, 0x4F55, + 0x98C7, 0x4F57, + 0x975D, 0x4F59, + 0x98C3, 0x4F5A, + 0x98C5, 0x4F5B, + 0x8DEC, 0x4F5C, + 0x98C6, 0x4F5D, + 0x9B43, 0x4F5E, + 0x98CE, 0x4F69, + 0x98D1, 0x4F6F, + 0x98CF, 0x4F70, + 0x89C0, 0x4F73, + 0x95B9, 0x4F75, + 0x98C9, 0x4F76, + 0x98CD, 0x4F7B, + 0x8CF1, 0x4F7C, + 0x8E67, 0x4F7F, + 0x8AA4, 0x4F83, + 0x98D2, 0x4F86, + 0x98CA, 0x4F88, + 0x97E1, 0x4F8B, + 0x8E98, 0x4F8D, + 0x98CB, 0x4F8F, + 0x98D0, 0x4F91, + 0x98D3, 0x4F96, + 0x98CC, 0x4F98, + 0x8B9F, 0x4F9B, + 0x88CB, 0x4F9D, + 0x8BA0, 0x4FA0, + 0x89BF, 0x4FA1, + 0x9B44, 0x4FAB, + 0x9699, 0x4FAD, + 0x958E, 0x4FAE, + 0x8CF2, 0x4FAF, + 0x904E, 0x4FB5, + 0x97B5, 0x4FB6, + 0x95D6, 0x4FBF, + 0x8C57, 0x4FC2, + 0x91A3, 0x4FC3, + 0x89E2, 0x4FC4, + 0x8F72, 0x4FCA, + 0x98D7, 0x4FCE, + 0x98DC, 0x4FD0, + 0x98DA, 0x4FD1, + 0x98D5, 0x4FD4, + 0x91AD, 0x4FD7, + 0x98D8, 0x4FD8, + 0x98DB, 0x4FDA, + 0x98D9, 0x4FDB, + 0x95DB, 0x4FDD, + 0x98D6, 0x4FDF, + 0x904D, 0x4FE1, + 0x9693, 0x4FE3, + 0x98DD, 0x4FE4, + 0x98DE, 0x4FE5, + 0x8F43, 0x4FEE, + 0x98EB, 0x4FEF, + 0x946F, 0x4FF3, + 0x9555, 0x4FF5, + 0x98E6, 0x4FF6, + 0x95EE, 0x4FF8, + 0x89B4, 0x4FFA, + 0x98EA, 0x4FFE, + 0x98E4, 0x5005, + 0x98ED, 0x5006, + 0x9171, 0x5009, + 0x8CC2, 0x500B, + 0x947B, 0x500D, + 0xE0C5, 0x500F, + 0x98EC, 0x5011, + 0x937C, 0x5012, + 0x98E1, 0x5014, + 0x8CF4, 0x5016, + 0x8CF3, 0x5019, + 0x98DF, 0x501A, + 0x8ED8, 0x501F, + 0x98E7, 0x5021, + 0x95ED, 0x5023, + 0x926C, 0x5024, + 0x98E3, 0x5025, + 0x8C91, 0x5026, + 0x98E0, 0x5028, + 0x98E8, 0x5029, + 0x98E2, 0x502A, + 0x97CF, 0x502B, + 0x98E9, 0x502C, + 0x9860, 0x502D, + 0x8BE4, 0x5036, + 0x8C90, 0x5039, + 0x98EE, 0x5043, + 0x98EF, 0x5047, + 0x98F3, 0x5048, + 0x88CC, 0x5049, + 0x95CE, 0x504F, + 0x98F2, 0x5050, + 0x98F1, 0x5055, + 0x98F5, 0x5056, + 0x98F4, 0x505A, + 0x92E2, 0x505C, + 0x8C92, 0x5065, + 0x98F6, 0x506C, + 0x8EC3, 0x5072, + 0x91A4, 0x5074, + 0x92E3, 0x5075, + 0x8BF4, 0x5076, + 0x98F7, 0x5078, + 0x8B55, 0x507D, + 0x98F8, 0x5080, + 0x98FA, 0x5085, + 0x9654, 0x508D, + 0x8C86, 0x5091, + 0x8E50, 0x5098, + 0x94F5, 0x5099, + 0x98F9, 0x509A, + 0x8DC3, 0x50AC, + 0x9762, 0x50AD, + 0x98FC, 0x50B2, + 0x9942, 0x50B3, + 0x98FB, 0x50B4, + 0x8DC2, 0x50B5, + 0x8F9D, 0x50B7, + 0x8C58, 0x50BE, + 0x9943, 0x50C2, + 0x8BCD, 0x50C5, + 0x9940, 0x50C9, + 0x9941, 0x50CA, + 0x93AD, 0x50CD, + 0x919C, 0x50CF, + 0x8BA1, 0x50D1, + 0x966C, 0x50D5, + 0x9944, 0x50D6, + 0x97BB, 0x50DA, + 0x9945, 0x50DE, + 0x9948, 0x50E3, + 0x9946, 0x50E5, + 0x916D, 0x50E7, + 0x9947, 0x50ED, + 0x9949, 0x50EE, + 0x994B, 0x50F5, + 0x994A, 0x50F9, + 0x95C6, 0x50FB, + 0x8B56, 0x5100, + 0x994D, 0x5101, + 0x994E, 0x5102, + 0x89AD, 0x5104, + 0x994C, 0x5109, + 0x8EF2, 0x5112, + 0x9951, 0x5114, + 0x9950, 0x5115, + 0x994F, 0x5116, + 0x98D4, 0x5118, + 0x9952, 0x511A, + 0x8F9E, 0x511F, + 0x9953, 0x5121, + 0x9744, 0x512A, + 0x96D7, 0x5132, + 0x9955, 0x5137, + 0x9954, 0x513A, + 0x9957, 0x513B, + 0x9956, 0x513C, + 0x9958, 0x513F, + 0x9959, 0x5140, + 0x88F2, 0x5141, + 0x8CB3, 0x5143, + 0x8C5A, 0x5144, + 0x8F5B, 0x5145, + 0x929B, 0x5146, + 0x8BA2, 0x5147, + 0x90E6, 0x5148, + 0x8CF5, 0x5149, + 0x8D8E, 0x514B, + 0x995B, 0x514C, + 0x96C6, 0x514D, + 0x9365, 0x514E, + 0x8E99, 0x5150, + 0x995A, 0x5152, + 0x995C, 0x5154, + 0x937D, 0x515A, + 0x8A95, 0x515C, + 0x995D, 0x5162, + 0x93FC, 0x5165, + 0x9153, 0x5168, + 0x995F, 0x5169, + 0x9960, 0x516A, + 0x94AA, 0x516B, + 0x8CF6, 0x516C, + 0x985A, 0x516D, + 0x9961, 0x516E, + 0x8BA4, 0x5171, + 0x95BA, 0x5175, + 0x91B4, 0x5176, + 0x8BEF, 0x5177, + 0x9354, 0x5178, + 0x8C93, 0x517C, + 0x9962, 0x5180, + 0x9963, 0x5182, + 0x93E0, 0x5185, + 0x897E, 0x5186, + 0x9966, 0x5189, + 0x8DFB, 0x518A, + 0x9965, 0x518C, + 0x8DC4, 0x518D, + 0x9967, 0x518F, + 0xE3EC, 0x5190, + 0x9968, 0x5191, + 0x9660, 0x5192, + 0x9969, 0x5193, + 0x996A, 0x5195, + 0x996B, 0x5196, + 0x8FE7, 0x5197, + 0x8ECA, 0x5199, + 0x8AA5, 0x51A0, + 0x996E, 0x51A2, + 0x996C, 0x51A4, + 0x96BB, 0x51A5, + 0x996D, 0x51A6, + 0x9579, 0x51A8, + 0x996F, 0x51A9, + 0x9970, 0x51AA, + 0x9971, 0x51AB, + 0x937E, 0x51AC, + 0x9975, 0x51B0, + 0x9973, 0x51B1, + 0x9974, 0x51B2, + 0x9972, 0x51B3, + 0x8DE1, 0x51B4, + 0x9976, 0x51B5, + 0x96E8, 0x51B6, + 0x97E2, 0x51B7, + 0x9977, 0x51BD, + 0x90A6, 0x51C4, + 0x9978, 0x51C5, + 0x8F79, 0x51C6, + 0x9979, 0x51C9, + 0x929C, 0x51CB, + 0x97BD, 0x51CC, + 0x9380, 0x51CD, + 0x99C3, 0x51D6, + 0x997A, 0x51DB, + 0xEAA3, 0x51DC, + 0x8BC3, 0x51DD, + 0x997B, 0x51E0, + 0x967D, 0x51E1, + 0x8F88, 0x51E6, + 0x91FA, 0x51E7, + 0x997D, 0x51E9, + 0x93E2, 0x51EA, + 0x997E, 0x51ED, + 0x9980, 0x51F0, + 0x8A4D, 0x51F1, + 0x9981, 0x51F5, + 0x8BA5, 0x51F6, + 0x93CA, 0x51F8, + 0x899A, 0x51F9, + 0x8F6F, 0x51FA, + 0x949F, 0x51FD, + 0x9982, 0x51FE, + 0x9381, 0x5200, + 0x906E, 0x5203, + 0x9983, 0x5204, + 0x95AA, 0x5206, + 0x90D8, 0x5207, + 0x8AA0, 0x5208, + 0x8AA7, 0x520A, + 0x9984, 0x520B, + 0x9986, 0x520E, + 0x8C59, 0x5211, + 0x9985, 0x5214, + 0x97F1, 0x5217, + 0x8F89, 0x521D, + 0x94BB, 0x5224, + 0x95CA, 0x5225, + 0x9987, 0x5227, + 0x9798, 0x5229, + 0x9988, 0x522A, + 0x9989, 0x522E, + 0x939E, 0x5230, + 0x998A, 0x5233, + 0x90A7, 0x5236, + 0x8DFC, 0x5237, + 0x8C94, 0x5238, + 0x998B, 0x5239, + 0x8E68, 0x523A, + 0x8D8F, 0x523B, + 0x92E4, 0x5243, + 0x998D, 0x5244, + 0x91A5, 0x5247, + 0x8DED, 0x524A, + 0x998E, 0x524B, + 0x998F, 0x524C, + 0x914F, 0x524D, + 0x998C, 0x524F, + 0x9991, 0x5254, + 0x9655, 0x5256, + 0x8D84, 0x525B, + 0x9990, 0x525E, + 0x8C95, 0x5263, + 0x8DDC, 0x5264, + 0x948D, 0x5265, + 0x9994, 0x5269, + 0x9992, 0x526A, + 0x959B, 0x526F, + 0x8FE8, 0x5270, + 0x999B, 0x5271, + 0x8A84, 0x5272, + 0x9995, 0x5273, + 0x9993, 0x5274, + 0x916E, 0x5275, + 0x9997, 0x527D, + 0x9996, 0x527F, + 0x8A63, 0x5283, + 0x8C80, 0x5287, + 0x999C, 0x5288, + 0x97AB, 0x5289, + 0x9998, 0x528D, + 0x999D, 0x5291, + 0x999A, 0x5292, + 0x9999, 0x5294, + 0x97CD, 0x529B, + 0x8CF7, 0x529F, + 0x89C1, 0x52A0, + 0x97F2, 0x52A3, + 0x8F95, 0x52A9, + 0x9377, 0x52AA, + 0x8D85, 0x52AB, + 0x99A0, 0x52AC, + 0x99A1, 0x52AD, + 0x97E3, 0x52B1, + 0x984A, 0x52B4, + 0x99A3, 0x52B5, + 0x8CF8, 0x52B9, + 0x99A2, 0x52BC, + 0x8A4E, 0x52BE, + 0x99A4, 0x52C1, + 0x9675, 0x52C3, + 0x92BA, 0x52C5, + 0x9745, 0x52C7, + 0x95D7, 0x52C9, + 0x99A5, 0x52CD, + 0xE8D3, 0x52D2, + 0x93AE, 0x52D5, + 0x99A6, 0x52D7, + 0x8AA8, 0x52D8, + 0x96B1, 0x52D9, + 0x8F9F, 0x52DD, + 0x99A7, 0x52DE, + 0x95E5, 0x52DF, + 0x99AB, 0x52E0, + 0x90A8, 0x52E2, + 0x99A8, 0x52E3, + 0x8BCE, 0x52E4, + 0x99A9, 0x52E6, + 0x8AA9, 0x52E7, + 0x8C4D, 0x52F2, + 0x99AC, 0x52F3, + 0x99AD, 0x52F5, + 0x99AE, 0x52F8, + 0x99AF, 0x52F9, + 0x8ED9, 0x52FA, + 0x8CF9, 0x52FE, + 0x96DC, 0x52FF, + 0x96E6, 0x5301, + 0x93F5, 0x5302, + 0x95EF, 0x5305, + 0x99B0, 0x5306, + 0x99B1, 0x5308, + 0x99B3, 0x530D, + 0x99B5, 0x530F, + 0x99B4, 0x5310, + 0x99B6, 0x5315, + 0x89BB, 0x5316, + 0x966B, 0x5317, + 0x8DFA, 0x5319, + 0x99B7, 0x531A, + 0x9178, 0x531D, + 0x8FA0, 0x5320, + 0x8BA7, 0x5321, + 0x99B8, 0x5323, + 0x94D9, 0x532A, + 0x99B9, 0x532F, + 0x99BA, 0x5331, + 0x99BB, 0x5333, + 0x99BC, 0x5338, + 0x9543, 0x5339, + 0x8BE6, 0x533A, + 0x88E3, 0x533B, + 0x93BD, 0x533F, + 0x99BD, 0x5340, + 0x8F5C, 0x5341, + 0x90E7, 0x5343, + 0x99BF, 0x5345, + 0x99BE, 0x5346, + 0x8FA1, 0x5347, + 0x8CDF, 0x5348, + 0x99C1, 0x5349, + 0x94BC, 0x534A, + 0x99C2, 0x534D, + 0x94DA, 0x5351, + 0x91B2, 0x5352, + 0x91EC, 0x5353, + 0x8BA6, 0x5354, + 0x93EC, 0x5357, + 0x9250, 0x5358, + 0x948E, 0x535A, + 0x966D, 0x535C, + 0x99C4, 0x535E, + 0x90E8, 0x5360, + 0x8C54, 0x5366, + 0x99C5, 0x5369, + 0x99C6, 0x536E, + 0x894B, 0x536F, + 0x88F3, 0x5370, + 0x8AEB, 0x5371, + 0x91A6, 0x5373, + 0x8B70, 0x5374, + 0x9791, 0x5375, + 0x99C9, 0x5377, + 0x89B5, 0x5378, + 0x99C8, 0x537B, + 0x8BA8, 0x537F, + 0x99CA, 0x5382, + 0x96EF, 0x5384, + 0x99CB, 0x5396, + 0x97D0, 0x5398, + 0x8CFA, 0x539A, + 0x8CB4, 0x539F, + 0x99CC, 0x53A0, + 0x99CE, 0x53A5, + 0x99CD, 0x53A6, + 0x907E, 0x53A8, + 0x8958, 0x53A9, + 0x897D, 0x53AD, + 0x99CF, 0x53AE, + 0x99D0, 0x53B0, + 0x8CB5, 0x53B3, + 0x99D1, 0x53B6, + 0x8B8E, 0x53BB, + 0x8E51, 0x53C2, + 0x99D2, 0x53C3, + 0x9694, 0x53C8, + 0x8DB3, 0x53C9, + 0x8B79, 0x53CA, + 0x9746, 0x53CB, + 0x916F, 0x53CC, + 0x94BD, 0x53CD, + 0x8EFB, 0x53CE, + 0x8F66, 0x53D4, + 0x8EE6, 0x53D6, + 0x8EF3, 0x53D7, + 0x8F96, 0x53D9, + 0x94BE, 0x53DB, + 0x99D5, 0x53DF, + 0x8962, 0x53E1, + 0x9170, 0x53E2, + 0x8CFB, 0x53E3, + 0x8CC3, 0x53E4, + 0x8BE5, 0x53E5, + 0x99D9, 0x53E8, + 0x9240, 0x53E9, + 0x91FC, 0x53EA, + 0x8BA9, 0x53EB, + 0x8FA2, 0x53EC, + 0x99DA, 0x53ED, + 0x99D8, 0x53EE, + 0x89C2, 0x53EF, + 0x91E4, 0x53F0, + 0x8EB6, 0x53F1, + 0x8E6A, 0x53F2, + 0x8945, 0x53F3, + 0x8A90, 0x53F6, + 0x8D86, 0x53F7, + 0x8E69, 0x53F8, + 0x99DB, 0x53FA, + 0x99DC, 0x5401, + 0x8B68, 0x5403, + 0x8A65, 0x5404, + 0x8D87, 0x5408, + 0x8B67, 0x5409, + 0x92DD, 0x540A, + 0x8944, 0x540B, + 0x93AF, 0x540C, + 0x96BC, 0x540D, + 0x8D40, 0x540E, + 0x9799, 0x540F, + 0x9366, 0x5410, + 0x8CFC, 0x5411, + 0x8C4E, 0x541B, + 0x99E5, 0x541D, + 0x8BE1, 0x541F, + 0x9669, 0x5420, + 0x94DB, 0x5426, + 0x99E4, 0x5429, + 0x8ADC, 0x542B, + 0x99DF, 0x542C, + 0x99E0, 0x542D, + 0x99E2, 0x542E, + 0x99E3, 0x5436, + 0x8B7A, 0x5438, + 0x9081, 0x5439, + 0x95AB, 0x543B, + 0x99E1, 0x543C, + 0x99DD, 0x543D, + 0x8CE1, 0x543E, + 0x99DE, 0x5440, + 0x9843, 0x5442, + 0x95F0, 0x5446, + 0x92E6, 0x5448, + 0x8CE0, 0x5449, + 0x8D90, 0x544A, + 0x99E6, 0x544E, + 0x93DB, 0x5451, + 0x99EA, 0x545F, + 0x8EFC, 0x5468, + 0x8EF4, 0x546A, + 0x99ED, 0x5470, + 0x99EB, 0x5471, + 0x96A1, 0x5473, + 0x99E8, 0x5475, + 0x99F1, 0x5476, + 0x99EC, 0x5477, + 0x99EF, 0x547B, + 0x8CC4, 0x547C, + 0x96BD, 0x547D, + 0x99F0, 0x5480, + 0x99F2, 0x5484, + 0x99F4, 0x5486, + 0x8DEE, 0x548B, + 0x9861, 0x548C, + 0x99E9, 0x548E, + 0x99E7, 0x548F, + 0x99F3, 0x5490, + 0x99EE, 0x5492, + 0x99F6, 0x54A2, + 0x9A42, 0x54A4, + 0x99F8, 0x54A5, + 0x99FC, 0x54A8, + 0x9A40, 0x54AB, + 0x99F9, 0x54AC, + 0x9A5D, 0x54AF, + 0x8DE7, 0x54B2, + 0x8A50, 0x54B3, + 0x99F7, 0x54B8, + 0x9A44, 0x54BC, + 0x88F4, 0x54BD, + 0x9A43, 0x54BE, + 0x88A3, 0x54C0, + 0x9569, 0x54C1, + 0x9A41, 0x54C2, + 0x99FA, 0x54C4, + 0x99F5, 0x54C7, + 0x99FB, 0x54C8, + 0x8DC6, 0x54C9, + 0x9A45, 0x54D8, + 0x88F5, 0x54E1, + 0x9A4E, 0x54E2, + 0x9A46, 0x54E5, + 0x9A47, 0x54E6, + 0x8FA3, 0x54E8, + 0x9689, 0x54E9, + 0x9A4C, 0x54ED, + 0x9A4B, 0x54EE, + 0x934E, 0x54F2, + 0x9A4D, 0x54FA, + 0x9A4A, 0x54FD, + 0x8953, 0x5504, + 0x8DB4, 0x5506, + 0x904F, 0x5507, + 0x9A48, 0x550F, + 0x9382, 0x5510, + 0x9A49, 0x5514, + 0x88A0, 0x5516, + 0x9A53, 0x552E, + 0x9742, 0x552F, + 0x8FA5, 0x5531, + 0x9A59, 0x5533, + 0x9A58, 0x5538, + 0x9A4F, 0x5539, + 0x91C1, 0x553E, + 0x9A50, 0x5540, + 0x91ED, 0x5544, + 0x9A55, 0x5545, + 0x8FA4, 0x5546, + 0x9A52, 0x554C, + 0x96E2, 0x554F, + 0x8C5B, 0x5553, + 0x9A56, 0x5556, + 0x9A57, 0x5557, + 0x9A54, 0x555C, + 0x9A5A, 0x555D, + 0x9A51, 0x5563, + 0x9A60, 0x557B, + 0x9A65, 0x557C, + 0x9A61, 0x557E, + 0x9A5C, 0x5580, + 0x9A66, 0x5583, + 0x9150, 0x5584, + 0x9A68, 0x5587, + 0x8D41, 0x5589, + 0x9A5E, 0x558A, + 0x929D, 0x558B, + 0x9A62, 0x5598, + 0x9A5B, 0x5599, + 0x8AAB, 0x559A, + 0x8AEC, 0x559C, + 0x8A85, 0x559D, + 0x9A63, 0x559E, + 0x9A5F, 0x559F, + 0x8C96, 0x55A7, + 0x9A69, 0x55A8, + 0x9A67, 0x55A9, + 0x9172, 0x55AA, + 0x8B69, 0x55AB, + 0x8BAA, 0x55AC, + 0x9A64, 0x55AE, + 0x8BF2, 0x55B0, + 0x8963, 0x55B6, + 0x9A6D, 0x55C4, + 0x9A6B, 0x55C5, + 0x9AA5, 0x55C7, + 0x9A70, 0x55D4, + 0x9A6A, 0x55DA, + 0x9A6E, 0x55DC, + 0x9A6C, 0x55DF, + 0x8E6B, 0x55E3, + 0x9A6F, 0x55E4, + 0x9A72, 0x55F7, + 0x9A77, 0x55F9, + 0x9A75, 0x55FD, + 0x9A74, 0x55FE, + 0x9251, 0x5606, + 0x89C3, 0x5609, + 0x9A71, 0x5614, + 0x9A73, 0x5616, + 0x8FA6, 0x5617, + 0x8952, 0x5618, + 0x9A76, 0x561B, + 0x89DC, 0x5629, + 0x9A82, 0x562F, + 0x8FFA, 0x5631, + 0x9A7D, 0x5632, + 0x9A7B, 0x5634, + 0x9A7C, 0x5636, + 0x9A7E, 0x5638, + 0x895C, 0x5642, + 0x9158, 0x564C, + 0x9A78, 0x564E, + 0x9A79, 0x5650, + 0x8A9A, 0x565B, + 0x9A81, 0x5664, + 0x8AED, 0x5668, + 0x9A84, 0x566A, + 0x9A80, 0x566B, + 0x9A83, 0x566C, + 0x95AC, 0x5674, + 0x93D3, 0x5678, + 0x94B6, 0x567A, + 0x9A86, 0x5680, + 0x9A85, 0x5686, + 0x8A64, 0x5687, + 0x9A87, 0x568A, + 0x9A8A, 0x568F, + 0x9A89, 0x5694, + 0x9A88, 0x56A0, + 0x9458, 0x56A2, + 0x9A8B, 0x56A5, + 0x9A8C, 0x56AE, + 0x9A8E, 0x56B4, + 0x9A8D, 0x56B6, + 0x9A90, 0x56BC, + 0x9A93, 0x56C0, + 0x9A91, 0x56C1, + 0x9A8F, 0x56C2, + 0x9A92, 0x56C3, + 0x9A94, 0x56C8, + 0x9A95, 0x56CE, + 0x9A96, 0x56D1, + 0x9A97, 0x56D3, + 0x9A98, 0x56D7, + 0x9964, 0x56D8, + 0x8EFA, 0x56DA, + 0x8E6C, 0x56DB, + 0x89F1, 0x56DE, + 0x88F6, 0x56E0, + 0x9263, 0x56E3, + 0x9A99, 0x56EE, + 0x8DA2, 0x56F0, + 0x88CD, 0x56F2, + 0x907D, 0x56F3, + 0x9A9A, 0x56F9, + 0x8CC5, 0x56FA, + 0x8D91, 0x56FD, + 0x9A9C, 0x56FF, + 0x9A9B, 0x5700, + 0x95DE, 0x5703, + 0x9A9D, 0x5704, + 0x9A9F, 0x5708, + 0x9A9E, 0x5709, + 0x9AA0, 0x570B, + 0x9AA1, 0x570D, + 0x8C97, 0x570F, + 0x8980, 0x5712, + 0x9AA2, 0x5713, + 0x9AA4, 0x5716, + 0x9AA3, 0x5718, + 0x9AA6, 0x571C, + 0x9379, 0x571F, + 0x9AA7, 0x5726, + 0x88B3, 0x5727, + 0x8DDD, 0x5728, + 0x8C5C, 0x572D, + 0x926E, 0x5730, + 0x9AA8, 0x5737, + 0x9AA9, 0x5738, + 0x9AAB, 0x573B, + 0x9AAC, 0x5740, + 0x8DE2, 0x5742, + 0x8BCF, 0x5747, + 0x9656, 0x574A, + 0x9AAA, 0x574E, + 0x9AAD, 0x574F, + 0x8DBF, 0x5750, + 0x8D42, 0x5751, + 0x9AB1, 0x5761, + 0x8DA3, 0x5764, + 0x9252, 0x5766, + 0x9AAE, 0x5769, + 0x92D8, 0x576A, + 0x9AB2, 0x577F, + 0x9082, 0x5782, + 0x9AB0, 0x5788, + 0x9AB3, 0x5789, + 0x8C5E, 0x578B, + 0x9AB4, 0x5793, + 0x9AB5, 0x57A0, + 0x8D43, 0x57A2, + 0x8A5F, 0x57A3, + 0x9AB7, 0x57A4, + 0x9AB8, 0x57AA, + 0x9AB9, 0x57B0, + 0x9AB6, 0x57B3, + 0x9AAF, 0x57C0, + 0x9ABA, 0x57C3, + 0x9ABB, 0x57C6, + 0x9684, 0x57CB, + 0x8FE9, 0x57CE, + 0x9ABD, 0x57D2, + 0x9ABE, 0x57D3, + 0x9ABC, 0x57D4, + 0x9AC0, 0x57D6, + 0x9457, 0x57DC, + 0x88E6, 0x57DF, + 0x9575, 0x57E0, + 0x9AC1, 0x57E3, + 0x8FFB, 0x57F4, + 0x8EB7, 0x57F7, + 0x947C, 0x57F9, + 0x8AEE, 0x57FA, + 0x8DE9, 0x57FC, + 0x9678, 0x5800, + 0x93B0, 0x5802, + 0x8C98, 0x5805, + 0x91CD, 0x5806, + 0x9ABF, 0x580A, + 0x9AC2, 0x580B, + 0x91C2, 0x5815, + 0x9AC3, 0x5819, + 0x9AC4, 0x581D, + 0x9AC6, 0x5821, + 0x92E7, 0x5824, + 0x8AAC, 0x582A, + 0xEA9F, 0x582F, + 0x8981, 0x5830, + 0x95F1, 0x5831, + 0x8FEA, 0x5834, + 0x9367, 0x5835, + 0x8DE4, 0x583A, + 0x9ACC, 0x583D, + 0x95BB, 0x5840, + 0x97DB, 0x5841, + 0x89F2, 0x584A, + 0x9AC8, 0x584B, + 0x9159, 0x5851, + 0x9ACB, 0x5852, + 0x9383, 0x5854, + 0x9368, 0x5857, + 0x9384, 0x5858, + 0x94B7, 0x5859, + 0x92CB, 0x585A, + 0x8DC7, 0x585E, + 0x9AC7, 0x5862, + 0x8996, 0x5869, + 0x9355, 0x586B, + 0x9AC9, 0x5870, + 0x9AC5, 0x5872, + 0x906F, 0x5875, + 0x9ACD, 0x5879, + 0x8F6D, 0x587E, + 0x8BAB, 0x5883, + 0x9ACE, 0x5885, + 0x95E6, 0x5893, + 0x919D, 0x5897, + 0x92C4, 0x589C, + 0x9AD0, 0x589F, + 0x966E, 0x58A8, + 0x9AD1, 0x58AB, + 0x9AD6, 0x58AE, + 0x95AD, 0x58B3, + 0x9AD5, 0x58B8, + 0x9ACF, 0x58B9, + 0x9AD2, 0x58BA, + 0x9AD4, 0x58BB, + 0x8DA4, 0x58BE, + 0x95C7, 0x58C1, + 0x9AD7, 0x58C5, + 0x9264, 0x58C7, + 0x89F3, 0x58CA, + 0x8FEB, 0x58CC, + 0x9AD9, 0x58D1, + 0x9AD8, 0x58D3, + 0x8D88, 0x58D5, + 0x9ADA, 0x58D7, + 0x9ADC, 0x58D8, + 0x9ADB, 0x58D9, + 0x9ADE, 0x58DC, + 0x9AD3, 0x58DE, + 0x9AE0, 0x58DF, + 0x9ADF, 0x58E4, + 0x9ADD, 0x58E5, + 0x8E6D, 0x58EB, + 0x9070, 0x58EC, + 0x9173, 0x58EE, + 0x9AE1, 0x58EF, + 0x90BA, 0x58F0, + 0x88EB, 0x58F1, + 0x9484, 0x58F2, + 0x92D9, 0x58F7, + 0x9AE3, 0x58F9, + 0x9AE2, 0x58FA, + 0x9AE4, 0x58FB, + 0x9AE5, 0x58FC, + 0x9AE6, 0x58FD, + 0x9AE7, 0x5902, + 0x95CF, 0x5909, + 0x9AE8, 0x590A, + 0x89C4, 0x590F, + 0x9AE9, 0x5910, + 0x975B, 0x5915, + 0x8A4F, 0x5916, + 0x99C7, 0x5918, + 0x8F67, 0x5919, + 0x91BD, 0x591A, + 0x9AEA, 0x591B, + 0x96E9, 0x591C, + 0x96B2, 0x5922, + 0x9AEC, 0x5925, + 0x91E5, 0x5927, + 0x9356, 0x5929, + 0x91BE, 0x592A, + 0x9576, 0x592B, + 0x9AED, 0x592C, + 0x9AEE, 0x592D, + 0x899B, 0x592E, + 0x8EB8, 0x5931, + 0x9AEF, 0x5932, + 0x88CE, 0x5937, + 0x9AF0, 0x5938, + 0x9AF1, 0x593E, + 0x8982, 0x5944, + 0x8AEF, 0x5947, + 0x93DE, 0x5948, + 0x95F2, 0x5949, + 0x9AF5, 0x594E, + 0x9174, 0x594F, + 0x9AF4, 0x5950, + 0x8C5F, 0x5951, + 0x967A, 0x5954, + 0x9AF3, 0x5955, + 0x9385, 0x5957, + 0x9AF7, 0x5958, + 0x9AF6, 0x595A, + 0x9AF9, 0x5960, + 0x9AF8, 0x5962, + 0x899C, 0x5965, + 0x9AFA, 0x5967, + 0x8FA7, 0x5968, + 0x9AFC, 0x5969, + 0x9244, 0x596A, + 0x9AFB, 0x596C, + 0x95B1, 0x596E, + 0x8F97, 0x5973, + 0x937A, 0x5974, + 0x9B40, 0x5978, + 0x8D44, 0x597D, + 0x9B41, 0x5981, + 0x9440, 0x5982, + 0x94DC, 0x5983, + 0x96CF, 0x5984, + 0x9444, 0x598A, + 0x9B4A, 0x598D, + 0x8B57, 0x5993, + 0x9764, 0x5996, + 0x96AD, 0x5999, + 0x9BAA, 0x599B, + 0x9B42, 0x599D, + 0x9B45, 0x59A3, + 0x91C3, 0x59A5, + 0x9657, 0x59A8, + 0x9369, 0x59AC, + 0x9B46, 0x59B2, + 0x9685, 0x59B9, + 0x8DC8, 0x59BB, + 0x8FA8, 0x59BE, + 0x9B47, 0x59C6, + 0x8E6F, 0x59C9, + 0x8E6E, 0x59CB, + 0x88B7, 0x59D0, + 0x8CC6, 0x59D1, + 0x90A9, 0x59D3, + 0x88CF, 0x59D4, + 0x9B4B, 0x59D9, + 0x9B4C, 0x59DA, + 0x9B49, 0x59DC, + 0x8957, 0x59E5, + 0x8AAD, 0x59E6, + 0x9B48, 0x59E8, + 0x96C3, 0x59EA, + 0x9550, 0x59EB, + 0x88A6, 0x59F6, + 0x88F7, 0x59FB, + 0x8E70, 0x59FF, + 0x88D0, 0x5A01, + 0x88A1, 0x5A03, + 0x9B51, 0x5A09, + 0x9B4F, 0x5A11, + 0x96BA, 0x5A18, + 0x9B52, 0x5A1A, + 0x9B50, 0x5A1C, + 0x9B4E, 0x5A1F, + 0x9050, 0x5A20, + 0x9B4D, 0x5A25, + 0x95D8, 0x5A29, + 0x8CE2, 0x5A2F, + 0x9B56, 0x5A35, + 0x9B57, 0x5A36, + 0x8FA9, 0x5A3C, + 0x9B53, 0x5A40, + 0x984B, 0x5A41, + 0x946B, 0x5A46, + 0x9B55, 0x5A49, + 0x8DA5, 0x5A5A, + 0x9B58, 0x5A62, + 0x9577, 0x5A66, + 0x9B59, 0x5A6A, + 0x9B54, 0x5A6C, + 0x96B9, 0x5A7F, + 0x947D, 0x5A92, + 0x9B5A, 0x5A9A, + 0x9551, 0x5A9B, + 0x9B5B, 0x5ABC, + 0x9B5F, 0x5ABD, + 0x9B5C, 0x5ABE, + 0x89C5, 0x5AC1, + 0x9B5E, 0x5AC2, + 0x8EB9, 0x5AC9, + 0x9B5D, 0x5ACB, + 0x8C99, 0x5ACC, + 0x9B6B, 0x5AD0, + 0x9B64, 0x5AD6, + 0x9B61, 0x5AD7, + 0x9284, 0x5AE1, + 0x9B60, 0x5AE3, + 0x9B62, 0x5AE6, + 0x9B63, 0x5AE9, + 0x9B65, 0x5AFA, + 0x9B66, 0x5AFB, + 0x8AF0, 0x5B09, + 0x9B68, 0x5B0B, + 0x9B67, 0x5B0C, + 0x9B69, 0x5B16, + 0x8FEC, 0x5B22, + 0x9B6C, 0x5B2A, + 0x92DA, 0x5B2C, + 0x8964, 0x5B30, + 0x9B6A, 0x5B32, + 0x9B6D, 0x5B36, + 0x9B6E, 0x5B3E, + 0x9B71, 0x5B40, + 0x9B6F, 0x5B43, + 0x9B70, 0x5B45, + 0x8E71, 0x5B50, + 0x9B72, 0x5B51, + 0x8D45, 0x5B54, + 0x9B73, 0x5B55, + 0x8E9A, 0x5B57, + 0x91B6, 0x5B58, + 0x9B74, 0x5B5A, + 0x9B75, 0x5B5B, + 0x8E79, 0x5B5C, + 0x8D46, 0x5B5D, + 0x96D0, 0x5B5F, + 0x8B47, 0x5B63, + 0x8CC7, 0x5B64, + 0x9B76, 0x5B65, + 0x8A77, 0x5B66, + 0x9B77, 0x5B69, + 0x91B7, 0x5B6B, + 0x9B78, 0x5B70, + 0x9BA1, 0x5B71, + 0x9B79, 0x5B73, + 0x9B7A, 0x5B75, + 0x9B7B, 0x5B78, + 0x9B7D, 0x5B7A, + 0x9B7E, 0x5B80, + 0x9B80, 0x5B83, + 0x91EE, 0x5B85, + 0x8946, 0x5B87, + 0x8EE7, 0x5B88, + 0x88C0, 0x5B89, + 0x9176, 0x5B8B, + 0x8AAE, 0x5B8C, + 0x8EB3, 0x5B8D, + 0x8D47, 0x5B8F, + 0x9386, 0x5B95, + 0x8F40, 0x5B97, + 0x8AAF, 0x5B98, + 0x9288, 0x5B99, + 0x92E8, 0x5B9A, + 0x88B6, 0x5B9B, + 0x8B58, 0x5B9C, + 0x95F3, 0x5B9D, + 0x8EC0, 0x5B9F, + 0x8B71, 0x5BA2, + 0x90E9, 0x5BA3, + 0x8EBA, 0x5BA4, + 0x9747, 0x5BA5, + 0x9B81, 0x5BA6, + 0x8B7B, 0x5BAE, + 0x8DC9, 0x5BB0, + 0x8A51, 0x5BB3, + 0x8983, 0x5BB4, + 0x8FAA, 0x5BB5, + 0x89C6, 0x5BB6, + 0x9B82, 0x5BB8, + 0x9765, 0x5BB9, + 0x8F68, 0x5BBF, + 0x8EE2, 0x5BC2, + 0x9B83, 0x5BC3, + 0x8AF1, 0x5BC4, + 0x93D0, 0x5BC5, + 0x96A7, 0x5BC6, + 0x9B84, 0x5BC7, + 0x9B85, 0x5BC9, + 0x9578, 0x5BCC, + 0x9B87, 0x5BD0, + 0x8AA6, 0x5BD2, + 0x8BF5, 0x5BD3, + 0x9B86, 0x5BD4, + 0x8AB0, 0x5BDB, + 0x9051, 0x5BDD, + 0x9B8B, 0x5BDE, + 0x8E40, 0x5BDF, + 0x89C7, 0x5BE1, + 0x9B8A, 0x5BE2, + 0x9B88, 0x5BE4, + 0x9B8C, 0x5BE5, + 0x9B89, 0x5BE6, + 0x944A, 0x5BE7, + 0x9ECB, 0x5BE8, + 0x9052, 0x5BE9, + 0x9B8D, 0x5BEB, + 0x97BE, 0x5BEE, + 0x9B8E, 0x5BF0, + 0x9B90, 0x5BF3, + 0x929E, 0x5BF5, + 0x9B8F, 0x5BF6, + 0x90A1, 0x5BF8, + 0x8E9B, 0x5BFA, + 0x91CE, 0x5BFE, + 0x8EF5, 0x5BFF, + 0x9595, 0x5C01, + 0x90EA, 0x5C02, + 0x8ECB, 0x5C04, + 0x9B91, 0x5C05, + 0x8FAB, 0x5C06, + 0x9B92, 0x5C07, + 0x9B93, 0x5C08, + 0x88D1, 0x5C09, + 0x91B8, 0x5C0A, + 0x9071, 0x5C0B, + 0x9B94, 0x5C0D, + 0x93B1, 0x5C0E, + 0x8FAC, 0x5C0F, + 0x8FAD, 0x5C11, + 0x9B95, 0x5C13, + 0x90EB, 0x5C16, + 0x8FAE, 0x5C1A, + 0x9B96, 0x5C20, + 0x9B97, 0x5C22, + 0x96DE, 0x5C24, + 0x9B98, 0x5C28, + 0x8BC4, 0x5C2D, + 0x8F41, 0x5C31, + 0x9B99, 0x5C38, + 0x9B9A, 0x5C39, + 0x8EDA, 0x5C3A, + 0x904B, 0x5C3B, + 0x93F2, 0x5C3C, + 0x9073, 0x5C3D, + 0x94F6, 0x5C3E, + 0x9441, 0x5C3F, + 0x8BC7, 0x5C40, + 0x9B9B, 0x5C41, + 0x8B8F, 0x5C45, + 0x9B9C, 0x5C46, + 0x8BFC, 0x5C48, + 0x93CD, 0x5C4A, + 0x89AE, 0x5C4B, + 0x8E72, 0x5C4D, + 0x9B9D, 0x5C4E, + 0x9BA0, 0x5C4F, + 0x9B9F, 0x5C50, + 0x8BFB, 0x5C51, + 0x9B9E, 0x5C53, + 0x9357, 0x5C55, + 0x91AE, 0x5C5E, + 0x936A, 0x5C60, + 0x8EC6, 0x5C61, + 0x9177, 0x5C64, + 0x979A, 0x5C65, + 0x9BA2, 0x5C6C, + 0x9BA3, 0x5C6E, + 0x93D4, 0x5C6F, + 0x8E52, 0x5C71, + 0x9BA5, 0x5C76, + 0x9BA6, 0x5C79, + 0x9BA7, 0x5C8C, + 0x8AF2, 0x5C90, + 0x9BA8, 0x5C91, + 0x9BA9, 0x5C94, + 0x89AA, 0x5CA1, + 0x915A, 0x5CA8, + 0x8AE2, 0x5CA9, + 0x9BAB, 0x5CAB, + 0x96A6, 0x5CAC, + 0x91D0, 0x5CB1, + 0x8A78, 0x5CB3, + 0x9BAD, 0x5CB6, + 0x9BAF, 0x5CB7, + 0x8ADD, 0x5CB8, + 0x9BAC, 0x5CBB, + 0x9BAE, 0x5CBC, + 0x9BB1, 0x5CBE, + 0x9BB0, 0x5CC5, + 0x9BB2, 0x5CC7, + 0x9BB3, 0x5CD9, + 0x93BB, 0x5CE0, + 0x8BAC, 0x5CE1, + 0x89E3, 0x5CE8, + 0x9BB4, 0x5CE9, + 0x9BB9, 0x5CEA, + 0x9BB7, 0x5CED, + 0x95F5, 0x5CEF, + 0x95F4, 0x5CF0, + 0x9387, 0x5CF6, + 0x9BB6, 0x5CFA, + 0x8F73, 0x5CFB, + 0x9BB5, 0x5CFD, + 0x9092, 0x5D07, + 0x9BBA, 0x5D0B, + 0x8DE8, 0x5D0E, + 0x9BC0, 0x5D11, + 0x9BC1, 0x5D14, + 0x9BBB, 0x5D15, + 0x8A52, 0x5D16, + 0x9BBC, 0x5D17, + 0x9BC5, 0x5D18, + 0x9BC4, 0x5D19, + 0x9BC3, 0x5D1A, + 0x9BBF, 0x5D1B, + 0x9BBE, 0x5D1F, + 0x9BC2, 0x5D22, + 0x95F6, 0x5D29, + 0x9BC9, 0x5D4B, + 0x9BC6, 0x5D4C, + 0x9BC8, 0x5D4E, + 0x9792, 0x5D50, + 0x9BC7, 0x5D52, + 0x9BBD, 0x5D5C, + 0x9093, 0x5D69, + 0x9BCA, 0x5D6C, + 0x8DB5, 0x5D6F, + 0x9BCB, 0x5D73, + 0x9BCC, 0x5D76, + 0x9BCF, 0x5D82, + 0x9BCE, 0x5D84, + 0x9BCD, 0x5D87, + 0x9388, 0x5D8B, + 0x9BB8, 0x5D8C, + 0x9BD5, 0x5D90, + 0x9BD1, 0x5D9D, + 0x9BD0, 0x5DA2, + 0x9BD2, 0x5DAC, + 0x9BD3, 0x5DAE, + 0x9BD6, 0x5DB7, + 0x97E4, 0x5DBA, + 0x9BD7, 0x5DBC, + 0x9BD4, 0x5DBD, + 0x9BD8, 0x5DC9, + 0x8ADE, 0x5DCC, + 0x9BD9, 0x5DCD, + 0x9BDB, 0x5DD2, + 0x9BDA, 0x5DD3, + 0x9BDC, 0x5DD6, + 0x9BDD, 0x5DDB, + 0x90EC, 0x5DDD, + 0x8F42, 0x5DDE, + 0x8F84, 0x5DE1, + 0x9183, 0x5DE3, + 0x8D48, 0x5DE5, + 0x8DB6, 0x5DE6, + 0x8D49, 0x5DE7, + 0x8B90, 0x5DE8, + 0x9BDE, 0x5DEB, + 0x8DB7, 0x5DEE, + 0x8CC8, 0x5DF1, + 0x9BDF, 0x5DF2, + 0x96A4, 0x5DF3, + 0x9462, 0x5DF4, + 0x9BE0, 0x5DF5, + 0x8D4A, 0x5DF7, + 0x8AAA, 0x5DFB, + 0x9246, 0x5DFD, + 0x8BD0, 0x5DFE, + 0x8E73, 0x5E02, + 0x957A, 0x5E03, + 0x94BF, 0x5E06, + 0x9BE1, 0x5E0B, + 0x8AF3, 0x5E0C, + 0x9BE4, 0x5E11, + 0x929F, 0x5E16, + 0x9BE3, 0x5E19, + 0x9BE2, 0x5E1A, + 0x9BE5, 0x5E1B, + 0x92E9, 0x5E1D, + 0x9083, 0x5E25, + 0x8E74, 0x5E2B, + 0x90C8, 0x5E2D, + 0x91D1, 0x5E2F, + 0x8B41, 0x5E30, + 0x92A0, 0x5E33, + 0x9BE6, 0x5E36, + 0x9BE7, 0x5E37, + 0x8FED, 0x5E38, + 0x9658, 0x5E3D, + 0x9BEA, 0x5E40, + 0x9BE9, 0x5E43, + 0x9BE8, 0x5E44, + 0x959D, 0x5E45, + 0x9BF1, 0x5E47, + 0x9679, 0x5E4C, + 0x9BEB, 0x5E4E, + 0x9BED, 0x5E54, + 0x968B, 0x5E55, + 0x9BEC, 0x5E57, + 0x9BEE, 0x5E5F, + 0x94A6, 0x5E61, + 0x9BEF, 0x5E62, + 0x95BC, 0x5E63, + 0x9BF0, 0x5E64, + 0x8AB1, 0x5E72, + 0x95BD, 0x5E73, + 0x944E, 0x5E74, + 0x9BF2, 0x5E75, + 0x9BF3, 0x5E76, + 0x8D4B, 0x5E78, + 0x8AB2, 0x5E79, + 0x9BF4, 0x5E7A, + 0x8CB6, 0x5E7B, + 0x9763, 0x5E7C, + 0x9748, 0x5E7D, + 0x8AF4, 0x5E7E, + 0x9BF6, 0x5E7F, + 0x92A1, 0x5E81, + 0x8D4C, 0x5E83, + 0x8FAF, 0x5E84, + 0x94DD, 0x5E87, + 0x8FB0, 0x5E8A, + 0x8F98, 0x5E8F, + 0x92EA, 0x5E95, + 0x95F7, 0x5E96, + 0x9358, 0x5E97, + 0x8D4D, 0x5E9A, + 0x957B, 0x5E9C, + 0x9BF7, 0x5EA0, + 0x9378, 0x5EA6, + 0x8DC0, 0x5EA7, + 0x8CC9, 0x5EAB, + 0x92EB, 0x5EAD, + 0x88C1, 0x5EB5, + 0x8F8E, 0x5EB6, + 0x8D4E, 0x5EB7, + 0x9766, 0x5EB8, + 0x9BF8, 0x5EC1, + 0x9BF9, 0x5EC2, + 0x9470, 0x5EC3, + 0x9BFA, 0x5EC8, + 0x97F5, 0x5EC9, + 0x984C, 0x5ECA, + 0x9BFC, 0x5ECF, + 0x9BFB, 0x5ED0, + 0x8A66, 0x5ED3, + 0x9C40, 0x5ED6, + 0x9C43, 0x5EDA, + 0x9C44, 0x5EDB, + 0x9C42, 0x5EDD, + 0x955F, 0x5EDF, + 0x8FB1, 0x5EE0, + 0x9C46, 0x5EE1, + 0x9C45, 0x5EE2, + 0x9C41, 0x5EE3, + 0x9C47, 0x5EE8, + 0x9C48, 0x5EE9, + 0x9C49, 0x5EEC, + 0x9C4C, 0x5EF0, + 0x9C4A, 0x5EF1, + 0x9C4B, 0x5EF3, + 0x9C4D, 0x5EF4, + 0x8984, 0x5EF6, + 0x92EC, 0x5EF7, + 0x9C4E, 0x5EF8, + 0x8C9A, 0x5EFA, + 0x89F4, 0x5EFB, + 0x9455, 0x5EFC, + 0x9C4F, 0x5EFE, + 0x93F9, 0x5EFF, + 0x95D9, 0x5F01, + 0x9C50, 0x5F03, + 0x984D, 0x5F04, + 0x9C51, 0x5F09, + 0x95BE, 0x5F0A, + 0x9C54, 0x5F0B, + 0x989F, 0x5F0C, + 0x98AF, 0x5F0D, + 0x8EAE, 0x5F0F, + 0x93F3, 0x5F10, + 0x9C55, 0x5F11, + 0x8B7C, 0x5F13, + 0x92A2, 0x5F14, + 0x88F8, 0x5F15, + 0x9C56, 0x5F16, + 0x95A4, 0x5F17, + 0x8D4F, 0x5F18, + 0x926F, 0x5F1B, + 0x92ED, 0x5F1F, + 0x96ED, 0x5F25, + 0x8CB7, 0x5F26, + 0x8CCA, 0x5F27, + 0x9C57, 0x5F29, + 0x9C58, 0x5F2D, + 0x9C5E, 0x5F2F, + 0x8EE3, 0x5F31, + 0x92A3, 0x5F35, + 0x8BAD, 0x5F37, + 0x9C59, 0x5F38, + 0x954A, 0x5F3C, + 0x9265, 0x5F3E, + 0x9C5A, 0x5F41, + 0x9C5B, 0x5F48, + 0x8BAE, 0x5F4A, + 0x9C5C, 0x5F4C, + 0x9C5D, 0x5F4E, + 0x9C5F, 0x5F51, + 0x9396, 0x5F53, + 0x9C60, 0x5F56, + 0x9C61, 0x5F57, + 0x9C62, 0x5F59, + 0x9C53, 0x5F5C, + 0x9C52, 0x5F5D, + 0x9C63, 0x5F61, + 0x8C60, 0x5F62, + 0x9546, 0x5F66, + 0x8DCA, 0x5F69, + 0x9556, 0x5F6A, + 0x92A4, 0x5F6B, + 0x956A, 0x5F6C, + 0x9C64, 0x5F6D, + 0x8FB2, 0x5F70, + 0x8965, 0x5F71, + 0x9C65, 0x5F73, + 0x9C66, 0x5F77, + 0x96F0, 0x5F79, + 0x94DE, 0x5F7C, + 0x9C69, 0x5F7F, + 0x899D, 0x5F80, + 0x90AA, 0x5F81, + 0x9C68, 0x5F82, + 0x9C67, 0x5F83, + 0x8C61, 0x5F84, + 0x91D2, 0x5F85, + 0x9C6D, 0x5F87, + 0x9C6B, 0x5F88, + 0x9C6A, 0x5F8A, + 0x97A5, 0x5F8B, + 0x8CE3, 0x5F8C, + 0x8F99, 0x5F90, + 0x9C6C, 0x5F91, + 0x936B, 0x5F92, + 0x8F5D, 0x5F93, + 0x93BE, 0x5F97, + 0x9C70, 0x5F98, + 0x9C6F, 0x5F99, + 0x9C6E, 0x5F9E, + 0x9C71, 0x5FA0, + 0x8CE4, 0x5FA1, + 0x9C72, 0x5FA8, + 0x959C, 0x5FA9, + 0x8F7A, 0x5FAA, + 0x9C73, 0x5FAD, + 0x94F7, 0x5FAE, + 0x93BF, 0x5FB3, + 0x92A5, 0x5FB4, + 0x934F, 0x5FB9, + 0x9C74, 0x5FBC, + 0x8B4A, 0x5FBD, + 0x9053, 0x5FC3, + 0x954B, 0x5FC5, + 0x8AF5, 0x5FCC, + 0x9445, 0x5FCD, + 0x9C75, 0x5FD6, + 0x8E75, 0x5FD7, + 0x9659, 0x5FD8, + 0x965A, 0x5FD9, + 0x899E, 0x5FDC, + 0x9C7A, 0x5FDD, + 0x9289, 0x5FE0, + 0x9C77, 0x5FE4, + 0x89F5, 0x5FEB, + 0x9CAB, 0x5FF0, + 0x9C79, 0x5FF1, + 0x944F, 0x5FF5, + 0x9C78, 0x5FF8, + 0x9C76, 0x5FFB, + 0x8D9A, 0x5FFD, + 0x9C7C, 0x5FFF, + 0x9C83, 0x600E, + 0x9C89, 0x600F, + 0x9C81, 0x6010, + 0x937B, 0x6012, + 0x9C86, 0x6015, + 0x957C, 0x6016, + 0x9C80, 0x6019, + 0x9C85, 0x601B, + 0x97E5, 0x601C, + 0x8E76, 0x601D, + 0x91D3, 0x6020, + 0x9C7D, 0x6021, + 0x8B7D, 0x6025, + 0x9C88, 0x6026, + 0x90AB, 0x6027, + 0x8985, 0x6028, + 0x9C82, 0x6029, + 0x89F6, 0x602A, + 0x9C87, 0x602B, + 0x8BAF, 0x602F, + 0x9C84, 0x6031, + 0x9C8A, 0x603A, + 0x9C8C, 0x6041, + 0x9C96, 0x6042, + 0x9C94, 0x6043, + 0x9C91, 0x6046, + 0x9C90, 0x604A, + 0x97F6, 0x604B, + 0x9C92, 0x604D, + 0x8BB0, 0x6050, + 0x8D50, 0x6052, + 0x8F9A, 0x6055, + 0x9C99, 0x6059, + 0x9C8B, 0x605A, + 0x9C8F, 0x605F, + 0x9C7E, 0x6060, + 0x89F8, 0x6062, + 0x9C93, 0x6063, + 0x9C95, 0x6064, + 0x9270, 0x6065, + 0x8DA6, 0x6068, + 0x89B6, 0x6069, + 0x9C8D, 0x606A, + 0x9C98, 0x606B, + 0x9C97, 0x606C, + 0x8BB1, 0x606D, + 0x91A7, 0x606F, + 0x8A86, 0x6070, + 0x8C62, 0x6075, + 0x9C8E, 0x6077, + 0x9C9A, 0x6081, + 0x9C9D, 0x6083, + 0x9C9F, 0x6084, + 0x8EBB, 0x6089, + 0x9CA5, 0x608B, + 0x92EE, 0x608C, + 0x9C9B, 0x608D, + 0x9CA3, 0x6092, + 0x89F7, 0x6094, + 0x9CA1, 0x6096, + 0x9CA2, 0x6097, + 0x9C9E, 0x609A, + 0x9CA0, 0x609B, + 0x8CE5, 0x609F, + 0x9749, 0x60A0, + 0x8AB3, 0x60A3, + 0x8978, 0x60A6, + 0x9CA4, 0x60A7, + 0x9459, 0x60A9, + 0x88AB, 0x60AA, + 0x94DF, 0x60B2, + 0x9C7B, 0x60B3, + 0x9CAA, 0x60B4, + 0x9CAE, 0x60B5, + 0x96E3, 0x60B6, + 0x9CA7, 0x60B8, + 0x9389, 0x60BC, + 0x9CAC, 0x60BD, + 0x8FEE, 0x60C5, + 0x9CAD, 0x60C6, + 0x93D5, 0x60C7, + 0x9866, 0x60D1, + 0x9CA9, 0x60D3, + 0x9CAF, 0x60D8, + 0x8D9B, 0x60DA, + 0x90C9, 0x60DC, + 0x88D2, 0x60DF, + 0x9CA8, 0x60E0, + 0x9CA6, 0x60E1, + 0x9179, 0x60E3, + 0x9C9C, 0x60E7, + 0x8E53, 0x60E8, + 0x91C4, 0x60F0, + 0x9CBB, 0x60F1, + 0x917A, 0x60F3, + 0x9CB6, 0x60F4, + 0x9CB3, 0x60F6, + 0x9CB4, 0x60F7, + 0x8EE4, 0x60F9, + 0x9CB7, 0x60FA, + 0x9CBA, 0x60FB, + 0x9CB5, 0x6100, + 0x8F44, 0x6101, + 0x9CB8, 0x6103, + 0x9CB2, 0x6106, + 0x96FA, 0x6108, + 0x96F9, 0x6109, + 0x9CBC, 0x610D, + 0x9CBD, 0x610E, + 0x88D3, 0x610F, + 0x9CB1, 0x6115, + 0x8BF0, 0x611A, + 0x88A4, 0x611B, + 0x8AB4, 0x611F, + 0x9CB9, 0x6121, + 0x9CC1, 0x6127, + 0x9CC0, 0x6128, + 0x9CC5, 0x612C, + 0x9CC6, 0x6134, + 0x9CC4, 0x613C, + 0x9CC7, 0x613D, + 0x9CBF, 0x613E, + 0x9CC3, 0x613F, + 0x9CC8, 0x6142, + 0x9CC9, 0x6144, + 0x9CBE, 0x6147, + 0x8E9C, 0x6148, + 0x9CC2, 0x614A, + 0x91D4, 0x614B, + 0x8D51, 0x614C, + 0x9CB0, 0x614D, + 0x9054, 0x614E, + 0x9CD6, 0x6153, + 0x95E7, 0x6155, + 0x9CCC, 0x6158, + 0x9CCD, 0x6159, + 0x9CCE, 0x615A, + 0x9CD5, 0x615D, + 0x9CD4, 0x615F, + 0x969D, 0x6162, + 0x8AB5, 0x6163, + 0x9CD2, 0x6165, + 0x8C64, 0x6167, + 0x8A53, 0x6168, + 0x9CCF, 0x616B, + 0x97B6, 0x616E, + 0x9CD1, 0x616F, + 0x88D4, 0x6170, + 0x9CD3, 0x6171, + 0x9CCA, 0x6173, + 0x9CD0, 0x6174, + 0x9CD7, 0x6175, + 0x8C63, 0x6176, + 0x9CCB, 0x6177, + 0x977C, 0x617E, + 0x974A, 0x6182, + 0x9CDA, 0x6187, + 0x9CDE, 0x618A, + 0x919E, 0x618E, + 0x97F7, 0x6190, + 0x9CDF, 0x6191, + 0x9CDC, 0x6194, + 0x9CD9, 0x6196, + 0x9CD8, 0x6199, + 0x9CDD, 0x619A, + 0x95AE, 0x61A4, + 0x93B2, 0x61A7, + 0x8C65, 0x61A9, + 0x9CE0, 0x61AB, + 0x9CDB, 0x61AC, + 0x9CE1, 0x61AE, + 0x8C9B, 0x61B2, + 0x89AF, 0x61B6, + 0x9CE9, 0x61BA, + 0x8AB6, 0x61BE, + 0x9CE7, 0x61C3, + 0x9CE8, 0x61C6, + 0x8DA7, 0x61C7, + 0x9CE6, 0x61C8, + 0x9CE4, 0x61C9, + 0x9CE3, 0x61CA, + 0x9CEA, 0x61CB, + 0x9CE2, 0x61CC, + 0x9CEC, 0x61CD, + 0x89F9, 0x61D0, + 0x9CEE, 0x61E3, + 0x9CED, 0x61E6, + 0x92A6, 0x61F2, + 0x9CF1, 0x61F4, + 0x9CEF, 0x61F6, + 0x9CE5, 0x61F7, + 0x8C9C, 0x61F8, + 0x9CF0, 0x61FA, + 0x9CF4, 0x61FC, + 0x9CF3, 0x61FD, + 0x9CF5, 0x61FE, + 0x9CF2, 0x61FF, + 0x9CF6, 0x6200, + 0x9CF7, 0x6208, + 0x9CF8, 0x6209, + 0x95E8, 0x620A, + 0x9CFA, 0x620C, + 0x9CF9, 0x620D, + 0x8F5E, 0x620E, + 0x90AC, 0x6210, + 0x89E4, 0x6211, + 0x89FA, 0x6212, + 0x9CFB, 0x6214, + 0x88BD, 0x6216, + 0x90CA, 0x621A, + 0x9CFC, 0x621B, + 0xE6C1, 0x621D, + 0x9D40, 0x621E, + 0x8C81, 0x621F, + 0x9D41, 0x6221, + 0x90ED, 0x6226, + 0x9D42, 0x622A, + 0x9D43, 0x622E, + 0x8B59, 0x622F, + 0x9D44, 0x6230, + 0x9D45, 0x6232, + 0x9D46, 0x6233, + 0x91D5, 0x6234, + 0x8CCB, 0x6238, + 0x96DF, 0x623B, + 0x965B, 0x623F, + 0x8F8A, 0x6240, + 0x9D47, 0x6241, + 0x90EE, 0x6247, + 0xE7BB, 0x6248, + 0x94E0, 0x6249, + 0x8EE8, 0x624B, + 0x8DCB, 0x624D, + 0x9D48, 0x624E, + 0x91C5, 0x6253, + 0x95A5, 0x6255, + 0x91EF, 0x6258, + 0x9D4B, 0x625B, + 0x9D49, 0x625E, + 0x9D4C, 0x6260, + 0x9D4A, 0x6263, + 0x9D4D, 0x6268, + 0x95AF, 0x626E, + 0x88B5, 0x6271, + 0x957D, 0x6276, + 0x94E1, 0x6279, + 0x9D4E, 0x627C, + 0x9D51, 0x627E, + 0x8FB3, 0x627F, + 0x8B5A, 0x6280, + 0x9D4F, 0x6282, + 0x9D56, 0x6283, + 0x8FB4, 0x6284, + 0x9D50, 0x6289, + 0x9463, 0x628A, + 0x977D, 0x6291, + 0x9D52, 0x6292, + 0x9D53, 0x6293, + 0x9D57, 0x6294, + 0x938A, 0x6295, + 0x9D54, 0x6296, + 0x8D52, 0x6297, + 0x90DC, 0x6298, + 0x9D65, 0x629B, + 0x94B2, 0x629C, + 0x91F0, 0x629E, + 0x94E2, 0x62AB, + 0x9DAB, 0x62AC, + 0x95F8, 0x62B1, + 0x92EF, 0x62B5, + 0x9695, 0x62B9, + 0x9D5A, 0x62BB, + 0x899F, 0x62BC, + 0x928A, 0x62BD, + 0x9D63, 0x62C2, + 0x9253, 0x62C5, + 0x9D5D, 0x62C6, + 0x9D64, 0x62C7, + 0x9D5F, 0x62C8, + 0x9D66, 0x62C9, + 0x9D62, 0x62CA, + 0x9D61, 0x62CC, + 0x948F, 0x62CD, + 0x9D5B, 0x62CF, + 0x89FB, 0x62D0, + 0x9D59, 0x62D1, + 0x8B91, 0x62D2, + 0x91F1, 0x62D3, + 0x9D55, 0x62D4, + 0x9D58, 0x62D7, + 0x8D53, 0x62D8, + 0x90D9, 0x62D9, + 0x8FB5, 0x62DB, + 0x9D60, 0x62DC, + 0x9471, 0x62DD, + 0x8B92, 0x62E0, + 0x8A67, 0x62E1, + 0x8A87, 0x62EC, + 0x9040, 0x62ED, + 0x9D68, 0x62EE, + 0x9D6D, 0x62EF, + 0x9D69, 0x62F1, + 0x8C9D, 0x62F3, + 0x9D6E, 0x62F5, + 0x8E41, 0x62F6, + 0x8D89, 0x62F7, + 0x8F45, 0x62FE, + 0x9D5C, 0x62FF, + 0x8E9D, 0x6301, + 0x9D6B, 0x6302, + 0x8E77, 0x6307, + 0x9D6C, 0x6308, + 0x88C2, 0x6309, + 0x9D67, 0x630C, + 0x92A7, 0x6311, + 0x8B93, 0x6319, + 0x8BB2, 0x631F, + 0x9D6A, 0x6327, + 0x88A5, 0x6328, + 0x8DC1, 0x632B, + 0x9055, 0x632F, + 0x92F0, 0x633A, + 0x94D2, 0x633D, + 0x9D70, 0x633E, + 0x917D, 0x633F, + 0x91A8, 0x6349, + 0x8E4A, 0x634C, + 0x9D71, 0x634D, + 0x9D73, 0x634F, + 0x9D6F, 0x6350, + 0x95DF, 0x6355, + 0x92BB, 0x6357, + 0x917B, 0x635C, + 0x95F9, 0x6367, + 0x8ECC, 0x6368, + 0x9D80, 0x6369, + 0x9D7E, 0x636B, + 0x9098, 0x636E, + 0x8C9E, 0x6372, + 0x9D78, 0x6376, + 0x8FB7, 0x6377, + 0x93E6, 0x637A, + 0x9450, 0x637B, + 0x9D76, 0x6380, + 0x917C, 0x6383, + 0x8EF6, 0x6388, + 0x9D7B, 0x6389, + 0x8FB6, 0x638C, + 0x9D75, 0x638E, + 0x9D7A, 0x638F, + 0x9472, 0x6392, + 0x9D74, 0x6396, + 0x8C40, 0x6398, + 0x8A7C, 0x639B, + 0x9D7C, 0x639F, + 0x97A9, 0x63A0, + 0x8DCC, 0x63A1, + 0x9254, 0x63A2, + 0x9D79, 0x63A3, + 0x90DA, 0x63A5, + 0x8D54, 0x63A7, + 0x9084, 0x63A8, + 0x8986, 0x63A9, + 0x915B, 0x63AA, + 0x9D77, 0x63AB, + 0x8B64, 0x63AC, + 0x8C66, 0x63B2, + 0x92CD, 0x63B4, + 0x9D7D, 0x63B5, + 0x917E, 0x63BB, + 0x9D81, 0x63BE, + 0x9D83, 0x63C0, + 0x91B5, 0x63C3, + 0x9D89, 0x63C4, + 0x9D84, 0x63C6, + 0x9D86, 0x63C9, + 0x9560, 0x63CF, + 0x92F1, 0x63D0, + 0x9D87, 0x63D2, + 0x974B, 0x63D6, + 0x9767, 0x63DA, + 0x8AB7, 0x63DB, + 0x88AC, 0x63E1, + 0x9D85, 0x63E3, + 0x9D82, 0x63E9, + 0x8AF6, 0x63EE, + 0x8987, 0x63F4, + 0x9D88, 0x63F6, + 0x9768, 0x63FA, + 0x9D8C, 0x6406, + 0x91B9, 0x640D, + 0x9D93, 0x640F, + 0x9D8D, 0x6413, + 0x9D8A, 0x6416, + 0x9D91, 0x6417, + 0x9D72, 0x641C, + 0x9D8E, 0x6426, + 0x9D92, 0x6428, + 0x94C0, 0x642C, + 0x938B, 0x642D, + 0x9D8B, 0x6434, + 0x9D8F, 0x6436, + 0x8C67, 0x643A, + 0x8DEF, 0x643E, + 0x90DB, 0x6442, + 0x9D97, 0x644E, + 0x9345, 0x6458, + 0x9D94, 0x6467, + 0x9680, 0x6469, + 0x9D95, 0x646F, + 0x9D96, 0x6476, + 0x96CC, 0x6478, + 0x90A0, 0x647A, + 0x8C82, 0x6483, + 0x9D9D, 0x6488, + 0x8E54, 0x6492, + 0x9D9A, 0x6493, + 0x9D99, 0x6495, + 0x9451, 0x649A, + 0x93B3, 0x649E, + 0x9350, 0x64A4, + 0x9D9B, 0x64A5, + 0x9D9C, 0x64A9, + 0x958F, 0x64AB, + 0x9464, 0x64AD, + 0x8E42, 0x64AE, + 0x90EF, 0x64B0, + 0x966F, 0x64B2, + 0x8A68, 0x64B9, + 0x9DA3, 0x64BB, + 0x9D9E, 0x64BC, + 0x9769, 0x64C1, + 0x9DA5, 0x64C2, + 0x9DA1, 0x64C5, + 0x9DA2, 0x64C7, + 0x9180, 0x64CD, + 0x9DA0, 0x64D2, + 0x9D5E, 0x64D4, + 0x9DA4, 0x64D8, + 0x9D9F, 0x64DA, + 0x9DA9, 0x64E0, + 0x9DAA, 0x64E1, + 0x9346, 0x64E2, + 0x9DAC, 0x64E3, + 0x8E43, 0x64E6, + 0x9DA7, 0x64E7, + 0x8B5B, 0x64EC, + 0x9DAD, 0x64EF, + 0x9DA6, 0x64F1, + 0x9DB1, 0x64F2, + 0x9DB0, 0x64F4, + 0x9DAF, 0x64F6, + 0x9DB2, 0x64FA, + 0x9DB4, 0x64FD, + 0x8FEF, 0x64FE, + 0x9DB3, 0x6500, + 0x9DB7, 0x6505, + 0x9DB5, 0x6518, + 0x9DB6, 0x651C, + 0x9D90, 0x651D, + 0x9DB9, 0x6523, + 0x9DB8, 0x6524, + 0x9D98, 0x652A, + 0x9DBA, 0x652B, + 0x9DAE, 0x652C, + 0x8E78, 0x652F, + 0x9DBB, 0x6534, + 0x9DBC, 0x6535, + 0x9DBE, 0x6536, + 0x9DBD, 0x6537, + 0x9DBF, 0x6538, + 0x89FC, 0x6539, + 0x8D55, 0x653B, + 0x95FA, 0x653E, + 0x90AD, 0x653F, + 0x8CCC, 0x6545, + 0x9DC1, 0x6548, + 0x9DC4, 0x654D, + 0x9571, 0x654F, + 0x8B7E, 0x6551, + 0x9DC3, 0x6555, + 0x9DC2, 0x6556, + 0x9473, 0x6557, + 0x9DC5, 0x6558, + 0x8BB3, 0x6559, + 0x9DC7, 0x655D, + 0x9DC6, 0x655E, + 0x8AB8, 0x6562, + 0x8E55, 0x6563, + 0x93D6, 0x6566, + 0x8C68, 0x656C, + 0x9094, 0x6570, + 0x9DC8, 0x6572, + 0x90AE, 0x6574, + 0x9347, 0x6575, + 0x957E, 0x6577, + 0x9DC9, 0x6578, + 0x9DCA, 0x6582, + 0x9DCB, 0x6583, + 0x95B6, 0x6587, + 0x9B7C, 0x6588, + 0x90C4, 0x6589, + 0x956B, 0x658C, + 0x8DD6, 0x658E, + 0x94E3, 0x6590, + 0x94C1, 0x6591, + 0x936C, 0x6597, + 0x97BF, 0x6599, + 0x9DCD, 0x659B, + 0x8ECE, 0x659C, + 0x9DCE, 0x659F, + 0x88B4, 0x65A1, + 0x8BD2, 0x65A4, + 0x90CB, 0x65A5, + 0x9580, 0x65A7, + 0x9DCF, 0x65AB, + 0x8E61, 0x65AC, + 0x9266, 0x65AD, + 0x8E7A, 0x65AF, + 0x9056, 0x65B0, + 0x9DD0, 0x65B7, + 0x95FB, 0x65B9, + 0x8997, 0x65BC, + 0x8E7B, 0x65BD, + 0x9DD3, 0x65C1, + 0x9DD1, 0x65C3, + 0x9DD4, 0x65C4, + 0x97B7, 0x65C5, + 0x9DD2, 0x65C6, + 0x90F9, 0x65CB, + 0x9DD5, 0x65CC, + 0x91B0, 0x65CF, + 0x9DD6, 0x65D2, + 0x8AF8, 0x65D7, + 0x9DD8, 0x65D9, + 0x9DD7, 0x65DB, + 0x9DD9, 0x65E0, + 0x9DDA, 0x65E1, + 0x8AF9, 0x65E2, + 0x93FA, 0x65E5, + 0x9255, 0x65E6, + 0x8B8C, 0x65E7, + 0x8E7C, 0x65E8, + 0x9181, 0x65E9, + 0x8F7B, 0x65EC, + 0x88AE, 0x65ED, + 0x9DDB, 0x65F1, + 0x89A0, 0x65FA, + 0x9DDF, 0x65FB, + 0x8D56, 0x6602, + 0x9DDE, 0x6603, + 0x8DA9, 0x6606, + 0x8FB8, 0x6607, + 0x9DDD, 0x660A, + 0x8FB9, 0x660C, + 0x96BE, 0x660E, + 0x8DA8, 0x660F, + 0x88D5, 0x6613, + 0x90CC, 0x6614, + 0x9DE4, 0x661C, + 0x90AF, 0x661F, + 0x8966, 0x6620, + 0x8F74, 0x6625, + 0x9686, 0x6627, + 0x8DF0, 0x6628, + 0x8FBA, 0x662D, + 0x90A5, 0x662F, + 0x9DE3, 0x6634, + 0x9DE1, 0x6635, + 0x9DE2, 0x6636, + 0x928B, 0x663C, + 0x9E45, 0x663F, + 0x9DE8, 0x6641, + 0x8E9E, 0x6642, + 0x8D57, 0x6643, + 0x9DE6, 0x6644, + 0x9DE7, 0x6649, + 0x9057, 0x664B, + 0x9DE5, 0x664F, + 0x8E4E, 0x6652, + 0x9DEA, 0x665D, + 0x9DE9, 0x665E, + 0x9DEE, 0x665F, + 0x9DEF, 0x6662, + 0x9DEB, 0x6664, + 0x8A41, 0x6666, + 0x9DEC, 0x6667, + 0x9DED, 0x6668, + 0x94D3, 0x6669, + 0x9581, 0x666E, + 0x8C69, 0x666F, + 0x9DF0, 0x6670, + 0x90B0, 0x6674, + 0x8FBB, 0x6676, + 0x9271, 0x667A, + 0x8BC5, 0x6681, + 0x9DF1, 0x6683, + 0x9DF5, 0x6684, + 0x89C9, 0x6687, + 0x9DF2, 0x6688, + 0x9DF4, 0x6689, + 0x9DF3, 0x668E, + 0x8F8B, 0x6691, + 0x9267, 0x6696, + 0x88C3, 0x6697, + 0x9DF6, 0x6698, + 0x9DF7, 0x669D, + 0x92A8, 0x66A2, + 0x97EF, 0x66A6, + 0x8E62, 0x66AB, + 0x95E9, 0x66AE, + 0x965C, 0x66B4, + 0x9E41, 0x66B8, + 0x9DF9, 0x66B9, + 0x9DFC, 0x66BC, + 0x9DFB, 0x66BE, + 0x9DF8, 0x66C1, + 0x9E40, 0x66C4, + 0x93DC, 0x66C7, + 0x9DFA, 0x66C9, + 0x9E42, 0x66D6, + 0x8F8C, 0x66D9, + 0x9E43, 0x66DA, + 0x976A, 0x66DC, + 0x9498, 0x66DD, + 0x9E44, 0x66E0, + 0x9E46, 0x66E6, + 0x9E47, 0x66E9, + 0x9E48, 0x66F0, + 0x8BC8, 0x66F2, + 0x8967, 0x66F3, + 0x8D58, 0x66F4, + 0x9E49, 0x66F5, + 0x9E4A, 0x66F7, + 0x8F91, 0x66F8, + 0x9182, 0x66F9, + 0x99D6, 0x66FC, + 0x915D, 0x66FD, + 0x915C, 0x66FE, + 0x91D6, 0x66FF, + 0x8DC5, 0x6700, + 0x98F0, 0x6703, + 0x8C8E, 0x6708, + 0x974C, 0x6709, + 0x95FC, 0x670B, + 0x959E, 0x670D, + 0x9E4B, 0x670F, + 0x8DF1, 0x6714, + 0x92BD, 0x6715, + 0x9E4C, 0x6716, + 0x984E, 0x6717, + 0x965D, 0x671B, + 0x92A9, 0x671D, + 0x9E4D, 0x671E, + 0x8AFA, 0x671F, + 0x9E4E, 0x6726, + 0x9E4F, 0x6727, + 0x96D8, 0x6728, + 0x96A2, 0x672A, + 0x9696, 0x672B, + 0x967B, 0x672C, + 0x8E44, 0x672D, + 0x9E51, 0x672E, + 0x8EE9, 0x6731, + 0x9670, 0x6734, + 0x9E53, 0x6736, + 0x9E56, 0x6737, + 0x9E55, 0x6738, + 0x8AF7, 0x673A, + 0x8B80, 0x673D, + 0x9E52, 0x673F, + 0x9E54, 0x6741, + 0x9E57, 0x6746, + 0x9099, 0x6749, + 0x979B, 0x674E, + 0x88C7, 0x674F, + 0x8DDE, 0x6750, + 0x91BA, 0x6751, + 0x8EDB, 0x6753, + 0x8FF1, 0x6756, + 0x9E5A, 0x6759, + 0x936D, 0x675C, + 0x9E58, 0x675E, + 0x91A9, 0x675F, + 0x9E59, 0x6760, + 0x8FF0, 0x6761, + 0x96DB, 0x6762, + 0x9E5B, 0x6763, + 0x9E5C, 0x6764, + 0x9788, 0x6765, + 0x9E61, 0x676A, + 0x8D59, 0x676D, + 0x9474, 0x676F, + 0x9E5E, 0x6770, + 0x938C, 0x6771, + 0x9DDC, 0x6772, + 0x9DE0, 0x6773, + 0x8B6E, 0x6775, + 0x9466, 0x6777, + 0x9E60, 0x677C, + 0x8FBC, 0x677E, + 0x94C2, 0x677F, + 0x9E66, 0x6785, + 0x94F8, 0x6787, + 0x9E5D, 0x6789, + 0x9E63, 0x678B, + 0x9E62, 0x678C, + 0x90CD, 0x6790, + 0x968D, 0x6795, + 0x97D1, 0x6797, + 0x9687, 0x679A, + 0x89CA, 0x679C, + 0x8E7D, 0x679D, + 0x9867, 0x67A0, + 0x9E65, 0x67A1, + 0x9095, 0x67A2, + 0x9E64, 0x67A6, + 0x9E5F, 0x67A9, + 0x8CCD, 0x67AF, + 0x9E6B, 0x67B3, + 0x9E69, 0x67B4, + 0x89CB, 0x67B6, + 0x9E67, 0x67B7, + 0x9E6D, 0x67B8, + 0x9E73, 0x67B9, + 0x91C6, 0x67C1, + 0x95BF, 0x67C4, + 0x9E75, 0x67C6, + 0x9541, 0x67CA, + 0x9E74, 0x67CE, + 0x9490, 0x67CF, + 0x965E, 0x67D0, + 0x8AB9, 0x67D1, + 0x90F5, 0x67D3, + 0x8F5F, 0x67D4, + 0x92D1, 0x67D8, + 0x974D, 0x67DA, + 0x9E70, 0x67DD, + 0x9E6F, 0x67DE, + 0x9E71, 0x67E2, + 0x9E6E, 0x67E4, + 0x9E76, 0x67E7, + 0x9E6C, 0x67E9, + 0x9E6A, 0x67EC, + 0x9E72, 0x67EE, + 0x9E68, 0x67EF, + 0x928C, 0x67F1, + 0x96F6, 0x67F3, + 0x8EC4, 0x67F4, + 0x8DF2, 0x67F5, + 0x8DB8, 0x67FB, + 0x968F, 0x67FE, + 0x8A60, 0x67FF, + 0x92CC, 0x6802, + 0x93C8, 0x6803, + 0x8968, 0x6804, + 0x90F0, 0x6813, + 0x90B2, 0x6816, + 0x8C49, 0x6817, + 0x9E78, 0x681E, + 0x8D5A, 0x6821, + 0x8A9C, 0x6822, + 0x9E7A, 0x6829, + 0x8A94, 0x682A, + 0x9E81, 0x682B, + 0x9E7D, 0x6832, + 0x90F1, 0x6834, + 0x8A6A, 0x6838, + 0x8DAA, 0x6839, + 0x8A69, 0x683C, + 0x8DCD, 0x683D, + 0x9E7B, 0x6840, + 0x8C85, 0x6841, + 0x8C6A, 0x6842, + 0x938D, 0x6843, + 0x9E79, 0x6846, + 0x88C4, 0x6848, + 0x9E7C, 0x684D, + 0x9E7E, 0x684E, + 0x8BCB, 0x6850, + 0x8C4B, 0x6851, + 0x8ABA, 0x6853, + 0x8B6A, 0x6854, + 0x9E82, 0x6859, + 0x8DF7, 0x685C, + 0x9691, 0x685D, + 0x8E56, 0x685F, + 0x9E83, 0x6863, + 0x954F, 0x6867, + 0x9E8F, 0x6874, + 0x89B1, 0x6876, + 0x9E84, 0x6877, + 0x9E95, 0x687E, + 0x9E85, 0x687F, + 0x97C0, 0x6881, + 0x9E8C, 0x6883, + 0x947E, 0x6885, + 0x9E94, 0x688D, + 0x9E87, 0x688F, + 0x88B2, 0x6893, + 0x9E89, 0x6894, + 0x8D5B, 0x6897, + 0x9E8B, 0x689B, + 0x9E8A, 0x689D, + 0x9E86, 0x689F, + 0x9E91, 0x68A0, + 0x8FBD, 0x68A2, + 0x9AEB, 0x68A6, + 0x8CE6, 0x68A7, + 0x979C, 0x68A8, + 0x9E88, 0x68AD, + 0x92F2, 0x68AF, + 0x8A42, 0x68B0, + 0x8DAB, 0x68B1, + 0x9E80, 0x68B3, + 0x9E90, 0x68B5, + 0x8A81, 0x68B6, + 0x9E8E, 0x68B9, + 0x9E92, 0x68BA, + 0x938E, 0x68BC, + 0x8AFC, 0x68C4, + 0x9EB0, 0x68C6, + 0x96C7, 0x68C9, + 0x9E97, 0x68CA, + 0x8AFB, 0x68CB, + 0x9E9E, 0x68CD, + 0x965F, 0x68D2, + 0x9E9F, 0x68D4, + 0x9EA1, 0x68D5, + 0x9EA5, 0x68D7, + 0x9E99, 0x68D8, + 0x9249, 0x68DA, + 0x938F, 0x68DF, + 0x9EA9, 0x68E0, + 0x9E9C, 0x68E1, + 0x9EA6, 0x68E3, + 0x9EA0, 0x68E7, + 0x9058, 0x68EE, + 0x9EAA, 0x68EF, + 0x90B1, 0x68F2, + 0x9EA8, 0x68F9, + 0x8ABB, 0x68FA, + 0x986F, 0x6900, + 0x9E96, 0x6901, + 0x9EA4, 0x6904, + 0x88D6, 0x6905, + 0x9E98, 0x6908, + 0x96B8, 0x690B, + 0x9E9D, 0x690C, + 0x9041, 0x690D, + 0x92C5, 0x690E, + 0x9E93, 0x690F, + 0x9EA3, 0x6912, + 0x909A, 0x6919, + 0x9EAD, 0x691A, + 0x8A91, 0x691B, + 0x8C9F, 0x691C, + 0x9EAF, 0x6921, + 0x9E9A, 0x6922, + 0x9EAE, 0x6923, + 0x9EA7, 0x6925, + 0x9E9B, 0x6926, + 0x9EAB, 0x6928, + 0x9EAC, 0x692A, + 0x9EBD, 0x6930, + 0x93CC, 0x6934, + 0x9EA2, 0x6936, + 0x9EB9, 0x6939, + 0x9EBB, 0x693D, + 0x92D6, 0x693F, + 0x976B, 0x694A, + 0x9596, 0x6953, + 0x9EB6, 0x6954, + 0x91C8, 0x6955, + 0x9EBC, 0x6959, + 0x915E, 0x695A, + 0x9EB3, 0x695C, + 0x9EC0, 0x695D, + 0x9EBF, 0x695E, + 0x93ED, 0x6960, + 0x9EBE, 0x6961, + 0x93E8, 0x6962, + 0x9EC2, 0x696A, + 0x9EB5, 0x696B, + 0x8BC6, 0x696D, + 0x9EB8, 0x696E, + 0x8F7C, 0x696F, + 0x9480, 0x6973, + 0x9EBA, 0x6974, + 0x8BC9, 0x6975, + 0x9EB2, 0x6977, + 0x9EB4, 0x6978, + 0x9EB1, 0x6979, + 0x984F, 0x697C, + 0x8A79, 0x697D, + 0x9EB7, 0x697E, + 0x9EC1, 0x6981, + 0x8A54, 0x6982, + 0x8DE5, 0x698A, + 0x897C, 0x698E, + 0x9ED2, 0x6991, + 0x9850, 0x6994, + 0x9ED5, 0x6995, + 0x9059, 0x699B, + 0x9ED4, 0x699C, + 0x9ED3, 0x69A0, + 0x9ED0, 0x69A7, + 0x9EC4, 0x69AE, + 0x9EE1, 0x69B1, + 0x9EC3, 0x69B2, + 0x9ED6, 0x69B4, + 0x9ECE, 0x69BB, + 0x9EC9, 0x69BE, + 0x9EC6, 0x69BF, + 0x9EC7, 0x69C1, + 0x9ECF, 0x69C3, + 0xEAA0, 0x69C7, + 0x9ECC, 0x69CA, + 0x8D5C, 0x69CB, + 0x92C6, 0x69CC, + 0x9184, 0x69CD, + 0x9ECA, 0x69CE, + 0x9EC5, 0x69D0, + 0x9EC8, 0x69D3, + 0x976C, 0x69D8, + 0x968A, 0x69D9, + 0x9ECD, 0x69DD, + 0x9ED7, 0x69DE, + 0x9EDF, 0x69E7, + 0x9ED8, 0x69E8, + 0x9EE5, 0x69EB, + 0x9EE3, 0x69ED, + 0x9EDE, 0x69F2, + 0x9EDD, 0x69F9, + 0x92CE, 0x69FB, + 0x9185, 0x69FD, + 0x9EDB, 0x69FF, + 0x9ED9, 0x6A02, + 0x9EE0, 0x6A05, + 0x9EE6, 0x6A0A, + 0x94F3, 0x6A0B, + 0x9EEC, 0x6A0C, + 0x9EE7, 0x6A12, + 0x9EEA, 0x6A13, + 0x9EE4, 0x6A14, + 0x9294, 0x6A17, + 0x9557, 0x6A19, + 0x9EDA, 0x6A1B, + 0x9EE2, 0x6A1E, + 0x8FBE, 0x6A1F, + 0x96CD, 0x6A21, + 0x9EF6, 0x6A22, + 0x9EE9, 0x6A23, + 0x8CA0, 0x6A29, + 0x89A1, 0x6A2A, + 0x8A7E, 0x6A2B, + 0x9ED1, 0x6A2E, + 0x8FBF, 0x6A35, + 0x9EEE, 0x6A36, + 0x9EF5, 0x6A38, + 0x8EF7, 0x6A39, + 0x8A92, 0x6A3A, + 0x924D, 0x6A3D, + 0x9EEB, 0x6A44, + 0x9EF0, 0x6A47, + 0x9EF4, 0x6A48, + 0x8BB4, 0x6A4B, + 0x8B6B, 0x6A58, + 0x9EF2, 0x6A59, + 0x8B40, 0x6A5F, + 0x93C9, 0x6A61, + 0x9EF1, 0x6A62, + 0x9EF3, 0x6A66, + 0x9EED, 0x6A72, + 0x9EEF, 0x6A78, + 0x8A80, 0x6A7F, + 0x9268, 0x6A80, + 0x9EFA, 0x6A84, + 0x9EF8, 0x6A8D, + 0x8CE7, 0x6A8E, + 0x9EF7, 0x6A90, + 0x9F40, 0x6A97, + 0x9E77, 0x6A9C, + 0x9EF9, 0x6AA0, + 0x9EFB, 0x6AA2, + 0x9EFC, 0x6AA3, + 0x9F4B, 0x6AAA, + 0x9F47, 0x6AAC, + 0x9E8D, 0x6AAE, + 0x9F46, 0x6AB3, + 0x9F45, 0x6AB8, + 0x9F42, 0x6ABB, + 0x9EE8, 0x6AC1, + 0x9F44, 0x6AC2, + 0x9F43, 0x6AC3, + 0x9F49, 0x6AD1, + 0x9845, 0x6AD3, + 0x9F4C, 0x6ADA, + 0x8BF9, 0x6ADB, + 0x9F48, 0x6ADE, + 0x9F4A, 0x6ADF, + 0x94A5, 0x6AE8, + 0x9F4D, 0x6AEA, + 0x9F51, 0x6AFA, + 0x9F4E, 0x6AFB, + 0x9793, 0x6B04, + 0x9F4F, 0x6B05, + 0x9EDC, 0x6B0A, + 0x9F52, 0x6B12, + 0x9F53, 0x6B16, + 0x8954, 0x6B1D, + 0x9F55, 0x6B1F, + 0x8C87, 0x6B20, + 0x8E9F, 0x6B21, + 0x8BD3, 0x6B23, + 0x89A2, 0x6B27, + 0x977E, 0x6B32, + 0x9F57, 0x6B37, + 0x9F56, 0x6B38, + 0x9F59, 0x6B39, + 0x8B5C, 0x6B3A, + 0x8BD4, 0x6B3D, + 0x8ABC, 0x6B3E, + 0x9F5C, 0x6B43, + 0x9F5B, 0x6B47, + 0x9F5D, 0x6B49, + 0x89CC, 0x6B4C, + 0x9256, 0x6B4E, + 0x9F5E, 0x6B50, + 0x8ABD, 0x6B53, + 0x9F60, 0x6B54, + 0x9F5F, 0x6B59, + 0x9F61, 0x6B5B, + 0x9F62, 0x6B5F, + 0x9F63, 0x6B61, + 0x8E7E, 0x6B62, + 0x90B3, 0x6B63, + 0x8D9F, 0x6B64, + 0x9590, 0x6B66, + 0x95E0, 0x6B69, + 0x9863, 0x6B6A, + 0x8E95, 0x6B6F, + 0x8DCE, 0x6B73, + 0x97F0, 0x6B74, + 0x9F64, 0x6B78, + 0x9F65, 0x6B79, + 0x8E80, 0x6B7B, + 0x9F66, 0x6B7F, + 0x9F67, 0x6B80, + 0x9F69, 0x6B83, + 0x9F68, 0x6B84, + 0x9677, 0x6B86, + 0x8F7D, 0x6B89, + 0x8EEA, 0x6B8A, + 0x8E63, 0x6B8B, + 0x9F6A, 0x6B8D, + 0x9F6C, 0x6B95, + 0x9042, 0x6B96, + 0x9F6B, 0x6B98, + 0x9F6D, 0x6B9E, + 0x9F6E, 0x6BA4, + 0x9F6F, 0x6BAA, + 0x9F70, 0x6BAB, + 0x9F71, 0x6BAF, + 0x9F73, 0x6BB1, + 0x9F72, 0x6BB2, + 0x9F74, 0x6BB3, + 0x89A3, 0x6BB4, + 0x9269, 0x6BB5, + 0x9F75, 0x6BB7, + 0x8E45, 0x6BBA, + 0x8A6B, 0x6BBB, + 0x9F76, 0x6BBC, + 0x9361, 0x6BBF, + 0x9ACA, 0x6BC0, + 0x8B42, 0x6BC5, + 0x9F77, 0x6BC6, + 0x9F78, 0x6BCB, + 0x95EA, 0x6BCD, + 0x9688, 0x6BCE, + 0x93C5, 0x6BD2, + 0x9F79, 0x6BD3, + 0x94E4, 0x6BD4, + 0x94F9, 0x6BD8, + 0x96D1, 0x6BDB, + 0x9F7A, 0x6BDF, + 0x9F7C, 0x6BEB, + 0x9F7B, 0x6BEC, + 0x9F7E, 0x6BEF, + 0x9F7D, 0x6BF3, + 0x9F81, 0x6C08, + 0x8E81, 0x6C0F, + 0x96AF, 0x6C11, + 0x9F82, 0x6C13, + 0x9F83, 0x6C14, + 0x8B43, 0x6C17, + 0x9F84, 0x6C1B, + 0x9F86, 0x6C23, + 0x9F85, 0x6C24, + 0x9085, 0x6C34, + 0x9558, 0x6C37, + 0x8969, 0x6C38, + 0x94C3, 0x6C3E, + 0x92F3, 0x6C40, + 0x8F60, 0x6C41, + 0x8B81, 0x6C42, + 0x94C4, 0x6C4E, + 0x8EAC, 0x6C50, + 0x9F88, 0x6C55, + 0x8ABE, 0x6C57, + 0x8998, 0x6C5A, + 0x93F0, 0x6C5D, + 0x9F87, 0x6C5E, + 0x8D5D, 0x6C5F, + 0x9272, 0x6C60, + 0x9F89, 0x6C62, + 0x9F91, 0x6C68, + 0x9F8A, 0x6C6A, + 0x91BF, 0x6C70, + 0x8B82, 0x6C72, + 0x9F92, 0x6C73, + 0x8C88, 0x6C7A, + 0x8B44, 0x6C7D, + 0x9F90, 0x6C7E, + 0x9F8E, 0x6C81, + 0x9F8B, 0x6C82, + 0x9780, 0x6C83, + 0x92BE, 0x6C88, + 0x93D7, 0x6C8C, + 0x9F8C, 0x6C8D, + 0x9F94, 0x6C90, + 0x9F93, 0x6C92, + 0x8C42, 0x6C93, + 0x89AB, 0x6C96, + 0x8DB9, 0x6C99, + 0x9F8D, 0x6C9A, + 0x9F8F, 0x6C9B, + 0x9676, 0x6CA1, + 0x91F2, 0x6CA2, + 0x9697, 0x6CAB, + 0x9F9C, 0x6CAE, + 0x9F9D, 0x6CB1, + 0x89CD, 0x6CB3, + 0x95A6, 0x6CB8, + 0x96FB, 0x6CB9, + 0x9F9F, 0x6CBA, + 0x8EA1, 0x6CBB, + 0x8FC0, 0x6CBC, + 0x9F98, 0x6CBD, + 0x9F9E, 0x6CBE, + 0x8988, 0x6CBF, + 0x8BB5, 0x6CC1, + 0x9F95, 0x6CC4, + 0x9F9A, 0x6CC5, + 0x90F2, 0x6CC9, + 0x9491, 0x6CCA, + 0x94E5, 0x6CCC, + 0x9F97, 0x6CD3, + 0x9640, 0x6CD5, + 0x9F99, 0x6CD7, + 0x9FA2, 0x6CD9, + 0x9FA0, 0x6CDB, + 0x9F9B, 0x6CDD, + 0x9641, 0x6CE1, + 0x9467, 0x6CE2, + 0x8B83, 0x6CE3, + 0x9344, 0x6CE5, + 0x928D, 0x6CE8, + 0x9FA3, 0x6CEA, + 0x9FA1, 0x6CEF, + 0x91D7, 0x6CF0, + 0x9F96, 0x6CF1, + 0x896A, 0x6CF3, + 0x976D, 0x6D0B, + 0x9FAE, 0x6D0C, + 0x9FAD, 0x6D12, + 0x90F4, 0x6D17, + 0x9FAA, 0x6D19, + 0x978C, 0x6D1B, + 0x93B4, 0x6D1E, + 0x9FA4, 0x6D1F, + 0x92C3, 0x6D25, + 0x896B, 0x6D29, + 0x8D5E, 0x6D2A, + 0x9FA7, 0x6D2B, + 0x8F46, 0x6D32, + 0x9FAC, 0x6D33, + 0x9FAB, 0x6D35, + 0x9FA6, 0x6D36, + 0x9FA9, 0x6D38, + 0x8A88, 0x6D3B, + 0x9FA8, 0x6D3D, + 0x9468, 0x6D3E, + 0x97AC, 0x6D41, + 0x8FF2, 0x6D44, + 0x90F3, 0x6D45, + 0x9FB4, 0x6D59, + 0x9FB2, 0x6D5A, + 0x956C, 0x6D5C, + 0x9FAF, 0x6D63, + 0x9FB1, 0x6D64, + 0x8959, 0x6D66, + 0x8D5F, 0x6D69, + 0x9851, 0x6D6A, + 0x8A5C, 0x6D6C, + 0x9582, 0x6D6E, + 0x9781, 0x6D74, + 0x8A43, 0x6D77, + 0x905A, 0x6D78, + 0x9FB3, 0x6D79, + 0x9FB8, 0x6D85, + 0x8FC1, 0x6D88, + 0x974F, 0x6D8C, + 0x9FB5, 0x6D8E, + 0x9FB0, 0x6D93, + 0x9FB6, 0x6D95, + 0x97DC, 0x6D99, + 0x9393, 0x6D9B, + 0x93C0, 0x6D9C, + 0x8A55, 0x6DAF, + 0x8974, 0x6DB2, + 0x9FBC, 0x6DB5, + 0x9FBF, 0x6DB8, + 0x97C1, 0x6DBC, + 0x9784, 0x6DC0, + 0x9FC6, 0x6DC5, + 0x9FC0, 0x6DC6, + 0x9FBD, 0x6DC7, + 0x97D2, 0x6DCB, + 0x9FC3, 0x6DCC, + 0x8F69, 0x6DD1, + 0x9FC5, 0x6DD2, + 0x9FCA, 0x6DD5, + 0x9391, 0x6DD8, + 0x9FC8, 0x6DD9, + 0x9FC2, 0x6DDE, + 0x9257, 0x6DE1, + 0x9FC9, 0x6DE4, + 0x9FBE, 0x6DE6, + 0x9FC4, 0x6DE8, + 0x9FCB, 0x6DEA, + 0x88FA, 0x6DEB, + 0x9FC1, 0x6DEC, + 0x9FCC, 0x6DEE, + 0x905B, 0x6DF1, + 0x8F7E, 0x6DF3, + 0x95A3, 0x6DF5, + 0x8DAC, 0x6DF7, + 0x9FB9, 0x6DF9, + 0x9FC7, 0x6DFA, + 0x9359, 0x6DFB, + 0x90B4, 0x6E05, + 0x8A89, 0x6E07, + 0x8DCF, 0x6E08, + 0x8FC2, 0x6E09, + 0x9FBB, 0x6E0A, + 0x8F61, 0x6E0B, + 0x8C6B, 0x6E13, + 0x9FBA, 0x6E15, + 0x9FD0, 0x6E19, + 0x8F8D, 0x6E1A, + 0x8CB8, 0x6E1B, + 0x9FDF, 0x6E1D, + 0x9FD9, 0x6E1F, + 0x8B94, 0x6E20, + 0x936E, 0x6E21, + 0x9FD4, 0x6E23, + 0x9FDD, 0x6E24, + 0x88AD, 0x6E25, + 0x8951, 0x6E26, + 0x89B7, 0x6E29, + 0x9FD6, 0x6E2B, + 0x91AA, 0x6E2C, + 0x9FCD, 0x6E2D, + 0x9FCF, 0x6E2E, + 0x8D60, 0x6E2F, + 0x9FE0, 0x6E38, + 0x9FDB, 0x6E3A, + 0x9FD3, 0x6E3E, + 0x9FDA, 0x6E43, + 0x96A9, 0x6E4A, + 0x9FD8, 0x6E4D, + 0x9FDC, 0x6E4E, + 0x8CCE, 0x6E56, + 0x8FC3, 0x6E58, + 0x9258, 0x6E5B, + 0x9FD2, 0x6E5F, + 0x974E, 0x6E67, + 0x9FD5, 0x6E6B, + 0x9FCE, 0x6E6E, + 0x9392, 0x6E6F, + 0x9FD1, 0x6E72, + 0x9FD7, 0x6E76, + 0x9870, 0x6E7E, + 0x8EBC, 0x6E7F, + 0x969E, 0x6E80, + 0x9FE1, 0x6E82, + 0x94AC, 0x6E8C, + 0x9FED, 0x6E8F, + 0x8CB9, 0x6E90, + 0x8F80, 0x6E96, + 0x9FE3, 0x6E98, + 0x97AD, 0x6E9C, + 0x8D61, 0x6E9D, + 0x9FF0, 0x6E9F, + 0x88EC, 0x6EA2, + 0x9FEE, 0x6EA5, + 0x9FE2, 0x6EAA, + 0x9FE8, 0x6EAF, + 0x9FEA, 0x6EB2, + 0x976E, 0x6EB6, + 0x9FE5, 0x6EB7, + 0x934D, 0x6EBA, + 0x9FE7, 0x6EBD, + 0x9FEF, 0x6EC2, + 0x9FE9, 0x6EC4, + 0x96C5, 0x6EC5, + 0x9FE4, 0x6EC9, + 0x8EA0, 0x6ECB, + 0x9FFC, 0x6ECC, + 0x8A8A, 0x6ED1, + 0x9FE6, 0x6ED3, + 0x9FEB, 0x6ED4, + 0x9FEC, 0x6ED5, + 0x91EA, 0x6EDD, + 0x91D8, 0x6EDE, + 0x9FF4, 0x6EEC, + 0x9FFA, 0x6EEF, + 0x9FF8, 0x6EF2, + 0x9348, 0x6EF4, + 0xE042, 0x6EF7, + 0x9FF5, 0x6EF8, + 0x9FF6, 0x6EFE, + 0x9FDE, 0x6EFF, + 0x8B99, 0x6F01, + 0x9559, 0x6F02, + 0x8EBD, 0x6F06, + 0x8D97, 0x6F09, + 0x9852, 0x6F0F, + 0x9FF2, 0x6F11, + 0xE041, 0x6F13, + 0x8989, 0x6F14, + 0x9186, 0x6F15, + 0x9499, 0x6F20, + 0x8ABF, 0x6F22, + 0x97F8, 0x6F23, + 0x969F, 0x6F2B, + 0x92D0, 0x6F2C, + 0x9FF9, 0x6F31, + 0x9FFB, 0x6F32, + 0x9151, 0x6F38, + 0xE040, 0x6F3E, + 0x9FF7, 0x6F3F, + 0x9FF1, 0x6F41, + 0x8AC1, 0x6F45, + 0x8C89, 0x6F54, + 0xE04E, 0x6F58, + 0xE049, 0x6F5B, + 0x90F6, 0x6F5C, + 0x8A83, 0x6F5F, + 0x8F81, 0x6F64, + 0xE052, 0x6F66, + 0xE04B, 0x6F6D, + 0x92AA, 0x6F6E, + 0xE048, 0x6F6F, + 0x92D7, 0x6F70, + 0xE06B, 0x6F74, + 0xE045, 0x6F78, + 0xE044, 0x6F7A, + 0xE04D, 0x6F7C, + 0xE047, 0x6F80, + 0xE046, 0x6F81, + 0xE04C, 0x6F82, + 0x909F, 0x6F84, + 0xE043, 0x6F86, + 0xE04F, 0x6F8E, + 0xE050, 0x6F91, + 0x8AC0, 0x6F97, + 0xE055, 0x6FA1, + 0xE054, 0x6FA3, + 0xE056, 0x6FA4, + 0xE059, 0x6FAA, + 0x9362, 0x6FB1, + 0xE053, 0x6FB3, + 0xE057, 0x6FB9, + 0x8C83, 0x6FC0, + 0x91F7, 0x6FC1, + 0xE051, 0x6FC2, + 0x945A, 0x6FC3, + 0xE058, 0x6FC6, + 0xE05D, 0x6FD4, + 0xE05B, 0x6FD5, + 0xE05E, 0x6FD8, + 0xE061, 0x6FDB, + 0xE05A, 0x6FDF, + 0x8D8A, 0x6FE0, + 0x9447, 0x6FE1, + 0x9FB7, 0x6FE4, + 0x9794, 0x6FEB, + 0xE05C, 0x6FEC, + 0xE060, 0x6FEE, + 0x91F3, 0x6FEF, + 0xE05F, 0x6FF1, + 0xE04A, 0x6FF3, + 0xE889, 0x6FF6, + 0xE064, 0x6FFA, + 0xE068, 0x6FFE, + 0xE066, 0x7001, + 0xE062, 0x7009, + 0xE063, 0x700B, + 0xE067, 0x700F, + 0xE065, 0x7011, + 0x956D, 0x7015, + 0xE06D, 0x7018, + 0xE06A, 0x701A, + 0xE069, 0x701B, + 0xE06C, 0x701D, + 0x93D2, 0x701E, + 0xE06E, 0x701F, + 0x9295, 0x7026, + 0x91EB, 0x7027, + 0x90A3, 0x702C, + 0xE06F, 0x7030, + 0xE071, 0x7032, + 0xE070, 0x703E, + 0x9FF3, 0x704C, + 0xE072, 0x7051, + 0x93E5, 0x7058, + 0xE073, 0x7063, + 0x89CE, 0x706B, + 0x9394, 0x706F, + 0x8A44, 0x7070, + 0x8B84, 0x7078, + 0x8EDC, 0x707C, + 0x8DD0, 0x707D, + 0x9846, 0x7089, + 0x9086, 0x708A, + 0x898A, 0x708E, + 0xE075, 0x7092, + 0xE074, 0x7099, + 0xE078, 0x70AC, + 0x9259, 0x70AD, + 0xE07B, 0x70AE, + 0xE076, 0x70AF, + 0xE07A, 0x70B3, + 0xE079, 0x70B8, + 0x935F, 0x70B9, + 0x88D7, 0x70BA, + 0x97F3, 0x70C8, + 0xE07D, 0x70CB, + 0x8947, 0x70CF, + 0xE080, 0x70D9, + 0xE07E, 0x70DD, + 0xE07C, 0x70DF, + 0xE077, 0x70F1, + 0x9642, 0x70F9, + 0xE082, 0x70FD, + 0xE081, 0x7109, + 0x898B, 0x7114, + 0xE084, 0x7119, + 0x95B0, 0x711A, + 0xE083, 0x711C, + 0x96B3, 0x7121, + 0x8FC5, 0x7126, + 0x9152, 0x7136, + 0x8FC4, 0x713C, + 0x97F9, 0x7149, + 0xE08A, 0x714C, + 0x90F7, 0x714E, + 0xE086, 0x7155, + 0xE08B, 0x7156, + 0x898C, 0x7159, + 0xE089, 0x7162, + 0x9481, 0x7164, + 0xE085, 0x7165, + 0xE088, 0x7166, + 0x8FC6, 0x7167, + 0x94CF, 0x7169, + 0xE08C, 0x716C, + 0x8ECF, 0x716E, + 0x90F8, 0x717D, + 0xE08F, 0x7184, + 0xE087, 0x7188, + 0x8C46, 0x718A, + 0xE08D, 0x718F, + 0x976F, 0x7194, + 0xE090, 0x7195, + 0xEAA4, 0x7199, + 0x8F6E, 0x719F, + 0xE091, 0x71A8, + 0xE092, 0x71AC, + 0x944D, 0x71B1, + 0xE094, 0x71B9, + 0xE095, 0x71BE, + 0x9452, 0x71C3, + 0x9395, 0x71C8, + 0xE097, 0x71C9, + 0xE099, 0x71CE, + 0x97D3, 0x71D0, + 0xE096, 0x71D2, + 0xE098, 0x71D4, + 0x898D, 0x71D5, + 0xE093, 0x71D7, + 0x9A7A, 0x71DF, + 0xE09A, 0x71E0, + 0x9187, 0x71E5, + 0x8E57, 0x71E6, + 0xE09C, 0x71E7, + 0xE09B, 0x71EC, + 0x9043, 0x71ED, + 0x99D7, 0x71EE, + 0xE09D, 0x71F5, + 0xE09F, 0x71F9, + 0xE08E, 0x71FB, + 0xE09E, 0x71FC, + 0xE0A0, 0x71FF, + 0x949A, 0x7206, + 0xE0A1, 0x720D, + 0xE0A2, 0x7210, + 0xE0A3, 0x721B, + 0xE0A4, 0x7228, + 0x92DC, 0x722A, + 0xE0A6, 0x722C, + 0xE0A5, 0x722D, + 0xE0A7, 0x7230, + 0xE0A8, 0x7232, + 0x8EDD, 0x7235, + 0x9583, 0x7236, + 0x96EA, 0x723A, + 0xE0A9, 0x723B, + 0xE0AA, 0x723C, + 0x9175, 0x723D, + 0x8EA2, 0x723E, + 0xE0AB, 0x723F, + 0xE0AC, 0x7240, + 0xE0AD, 0x7246, + 0x95D0, 0x7247, + 0x94C5, 0x7248, + 0xE0AE, 0x724B, + 0x9476, 0x724C, + 0x92AB, 0x7252, + 0xE0AF, 0x7258, + 0x89E5, 0x7259, + 0x8B8D, 0x725B, + 0x96C4, 0x725D, + 0x96B4, 0x725F, + 0x89B2, 0x7261, + 0x9853, 0x7262, + 0x9671, 0x7267, + 0x95A8, 0x7269, + 0x90B5, 0x7272, + 0xE0B0, 0x7274, + 0x93C1, 0x7279, + 0x8CA1, 0x727D, + 0xE0B1, 0x727E, + 0x8DD2, 0x7280, + 0xE0B3, 0x7281, + 0xE0B2, 0x7282, + 0xE0B4, 0x7287, + 0xE0B5, 0x7292, + 0xE0B6, 0x7296, + 0x8B5D, 0x72A0, + 0xE0B7, 0x72A2, + 0xE0B8, 0x72A7, + 0x8CA2, 0x72AC, + 0x94C6, 0x72AF, + 0xE0BA, 0x72B2, + 0x8FF3, 0x72B6, + 0xE0B9, 0x72B9, + 0x8BB6, 0x72C2, + 0xE0BB, 0x72C3, + 0xE0BD, 0x72C4, + 0xE0BC, 0x72C6, + 0xE0BE, 0x72CE, + 0x8CCF, 0x72D0, + 0xE0BF, 0x72D2, + 0x8BE7, 0x72D7, + 0x915F, 0x72D9, + 0x8D9D, 0x72DB, + 0xE0C1, 0x72E0, + 0xE0C2, 0x72E1, + 0xE0C0, 0x72E2, + 0x8EEB, 0x72E9, + 0x93C6, 0x72EC, + 0x8BB7, 0x72ED, + 0xE0C4, 0x72F7, + 0x924B, 0x72F8, + 0xE0C3, 0x72F9, + 0x9854, 0x72FC, + 0x9482, 0x72FD, + 0xE0C7, 0x730A, + 0xE0C9, 0x7316, + 0xE0C6, 0x7317, + 0x96D2, 0x731B, + 0xE0C8, 0x731C, + 0xE0CA, 0x731D, + 0x97C2, 0x731F, + 0xE0CE, 0x7325, + 0xE0CD, 0x7329, + 0x9296, 0x732A, + 0x944C, 0x732B, + 0x8CA3, 0x732E, + 0xE0CC, 0x732F, + 0xE0CB, 0x7334, + 0x9750, 0x7336, + 0x9751, 0x7337, + 0xE0CF, 0x733E, + 0x898E, 0x733F, + 0x8D96, 0x7344, + 0x8E82, 0x7345, + 0xE0D0, 0x734E, + 0xE0D1, 0x734F, + 0xE0D3, 0x7357, + 0x8F62, 0x7363, + 0xE0D5, 0x7368, + 0xE0D4, 0x736A, + 0xE0D6, 0x7370, + 0x8A6C, 0x7372, + 0xE0D8, 0x7375, + 0xE0D7, 0x7378, + 0xE0DA, 0x737A, + 0xE0D9, 0x737B, + 0x8CBA, 0x7384, + 0x97A6, 0x7387, + 0x8BCA, 0x7389, + 0x89A4, 0x738B, + 0x8BE8, 0x7396, + 0x8ADF, 0x73A9, + 0x97E6, 0x73B2, + 0xE0DC, 0x73B3, + 0xE0DE, 0x73BB, + 0xE0DF, 0x73C0, + 0x89CF, 0x73C2, + 0xE0DB, 0x73C8, + 0x8E58, 0x73CA, + 0x92BF, 0x73CD, + 0xE0DD, 0x73CE, + 0xE0E2, 0x73DE, + 0x8EEC, 0x73E0, + 0xE0E0, 0x73E5, + 0x8C5D, 0x73EA, + 0x94C7, 0x73ED, + 0xE0E1, 0x73EE, + 0xE0FC, 0x73F1, + 0xE0E7, 0x73F8, + 0x8CBB, 0x73FE, + 0x8B85, 0x7403, + 0xE0E4, 0x7405, + 0x979D, 0x7406, + 0x97AE, 0x7409, + 0x91F4, 0x7422, + 0xE0E6, 0x7425, + 0xE0E8, 0x7432, + 0x97D4, 0x7433, + 0x8BD5, 0x7434, + 0x94FA, 0x7435, + 0x9469, 0x7436, + 0xE0E9, 0x743A, + 0xE0EB, 0x743F, + 0xE0EE, 0x7441, + 0xE0EA, 0x7455, + 0xE0ED, 0x7459, + 0x8CE8, 0x745A, + 0x896C, 0x745B, + 0xE0EF, 0x745C, + 0x9090, 0x745E, + 0xE0EC, 0x745F, + 0x97DA, 0x7460, + 0xE0F2, 0x7463, + 0xEAA2, 0x7464, + 0xE0F0, 0x7469, + 0xE0F3, 0x746A, + 0xE0E5, 0x746F, + 0xE0F1, 0x7470, + 0x8DBA, 0x7473, + 0xE0F4, 0x7476, + 0xE0F5, 0x747E, + 0x979E, 0x7483, + 0xE0F6, 0x748B, + 0xE0F7, 0x749E, + 0xE0E3, 0x74A2, + 0xE0F8, 0x74A7, + 0x8AC2, 0x74B0, + 0x8EA3, 0x74BD, + 0xE0F9, 0x74CA, + 0xE0FA, 0x74CF, + 0xE0FB, 0x74D4, + 0x895A, 0x74DC, + 0xE140, 0x74E0, + 0x955A, 0x74E2, + 0xE141, 0x74E3, + 0x8AA2, 0x74E6, + 0xE142, 0x74E7, + 0xE143, 0x74E9, + 0xE144, 0x74EE, + 0xE146, 0x74F0, + 0xE147, 0x74F1, + 0xE145, 0x74F2, + 0x9572, 0x74F6, + 0xE149, 0x74F7, + 0xE148, 0x74F8, + 0xE14B, 0x7503, + 0xE14A, 0x7504, + 0xE14C, 0x7505, + 0xE14D, 0x750C, + 0xE14F, 0x750D, + 0xE14E, 0x750E, + 0x8D99, 0x7511, + 0xE151, 0x7513, + 0xE150, 0x7515, + 0x8AC3, 0x7518, + 0x9072, 0x751A, + 0x935B, 0x751C, + 0xE152, 0x751E, + 0x90B6, 0x751F, + 0x8E59, 0x7523, + 0x8999, 0x7525, + 0xE153, 0x7526, + 0x9770, 0x7528, + 0x95E1, 0x752B, + 0xE154, 0x752C, + 0x9363, 0x7530, + 0x9752, 0x7531, + 0x8D62, 0x7532, + 0x905C, 0x7533, + 0x926A, 0x7537, + 0x99B2, 0x7538, + 0x92AC, 0x753A, + 0x89E6, 0x753B, + 0xE155, 0x753C, + 0xE156, 0x7544, + 0xE15B, 0x7546, + 0xE159, 0x7549, + 0xE158, 0x754A, + 0x9DC0, 0x754B, + 0x8A45, 0x754C, + 0xE157, 0x754D, + 0x88D8, 0x754F, + 0x94A8, 0x7551, + 0x94C8, 0x7554, + 0x97AF, 0x7559, + 0xE15C, 0x755A, + 0xE15A, 0x755B, + 0x927B, 0x755C, + 0x90A4, 0x755D, + 0x94A9, 0x7560, + 0x954C, 0x7562, + 0xE15E, 0x7564, + 0x97AA, 0x7565, + 0x8C6C, 0x7566, + 0xE15F, 0x7567, + 0xE15D, 0x7569, + 0x94D4, 0x756A, + 0xE160, 0x756B, + 0xE161, 0x756D, + 0x88D9, 0x7570, + 0x8FF4, 0x7573, + 0xE166, 0x7574, + 0xE163, 0x7576, + 0x93EB, 0x7577, + 0xE162, 0x7578, + 0x8B45, 0x757F, + 0xE169, 0x7582, + 0xE164, 0x7586, + 0xE165, 0x7587, + 0xE168, 0x7589, + 0xE167, 0x758A, + 0x9544, 0x758B, + 0x9161, 0x758E, + 0x9160, 0x758F, + 0x8B5E, 0x7591, + 0xE16A, 0x7594, + 0xE16B, 0x759A, + 0xE16C, 0x759D, + 0xE16E, 0x75A3, + 0xE16D, 0x75A5, + 0x8975, 0x75AB, + 0xE176, 0x75B1, + 0x94E6, 0x75B2, + 0xE170, 0x75B3, + 0xE172, 0x75B5, + 0xE174, 0x75B8, + 0x905D, 0x75B9, + 0xE175, 0x75BC, + 0xE173, 0x75BD, + 0x8EBE, 0x75BE, + 0xE16F, 0x75C2, + 0xE171, 0x75C3, + 0x9561, 0x75C5, + 0x8FC7, 0x75C7, + 0xE178, 0x75CA, + 0xE177, 0x75CD, + 0xE179, 0x75D2, + 0x8EA4, 0x75D4, + 0x8DAD, 0x75D5, + 0x9397, 0x75D8, + 0xE17A, 0x75D9, + 0x92C9, 0x75DB, + 0xE17C, 0x75DE, + 0x979F, 0x75E2, + 0xE17B, 0x75E3, + 0x9189, 0x75E9, + 0xE182, 0x75F0, + 0xE184, 0x75F2, + 0xE185, 0x75F3, + 0x9273, 0x75F4, + 0xE183, 0x75FA, + 0xE180, 0x75FC, + 0xE17D, 0x75FE, + 0xE17E, 0x75FF, + 0xE181, 0x7601, + 0xE188, 0x7609, + 0xE186, 0x760B, + 0xE187, 0x760D, + 0xE189, 0x761F, + 0xE18B, 0x7620, + 0xE18C, 0x7621, + 0xE18D, 0x7622, + 0xE18E, 0x7624, + 0xE18A, 0x7627, + 0xE190, 0x7630, + 0xE18F, 0x7634, + 0xE191, 0x763B, + 0x97C3, 0x7642, + 0xE194, 0x7646, + 0xE192, 0x7647, + 0xE193, 0x7648, + 0x8AE0, 0x764C, + 0x96FC, 0x7652, + 0x95C8, 0x7656, + 0xE196, 0x7658, + 0xE195, 0x765C, + 0xE197, 0x7661, + 0xE198, 0x7662, + 0xE19C, 0x7667, + 0xE199, 0x7668, + 0xE19A, 0x7669, + 0xE19B, 0x766A, + 0xE19D, 0x766C, + 0xE19E, 0x7670, + 0xE19F, 0x7672, + 0xE1A0, 0x7676, + 0xE1A1, 0x7678, + 0x94AD, 0x767A, + 0x936F, 0x767B, + 0xE1A2, 0x767C, + 0x9492, 0x767D, + 0x9553, 0x767E, + 0xE1A3, 0x7680, + 0xE1A4, 0x7683, + 0x9349, 0x7684, + 0x8A46, 0x7686, + 0x8D63, 0x7687, + 0xE1A5, 0x7688, + 0xE1A6, 0x768B, + 0xE1A7, 0x768E, + 0x8E48, 0x7690, + 0xE1A9, 0x7693, + 0xE1A8, 0x7696, + 0xE1AA, 0x7699, + 0xE1AB, 0x769A, + 0x94E7, 0x76AE, + 0xE1AC, 0x76B0, + 0xE1AD, 0x76B4, + 0xEA89, 0x76B7, + 0xE1AE, 0x76B8, + 0xE1AF, 0x76B9, + 0xE1B0, 0x76BA, + 0x8E4D, 0x76BF, + 0xE1B1, 0x76C2, + 0x9475, 0x76C3, + 0x967E, 0x76C6, + 0x896D, 0x76C8, + 0x8976, 0x76CA, + 0xE1B2, 0x76CD, + 0xE1B4, 0x76D2, + 0xE1B3, 0x76D6, + 0x9390, 0x76D7, + 0x90B7, 0x76DB, + 0x9F58, 0x76DC, + 0xE1B5, 0x76DE, + 0x96BF, 0x76DF, + 0xE1B6, 0x76E1, + 0x8AC4, 0x76E3, + 0x94D5, 0x76E4, + 0xE1B7, 0x76E5, + 0xE1B8, 0x76E7, + 0xE1B9, 0x76EA, + 0x96DA, 0x76EE, + 0x96D3, 0x76F2, + 0x92BC, 0x76F4, + 0x918A, 0x76F8, + 0xE1BB, 0x76FB, + 0x8F82, 0x76FE, + 0x8FC8, 0x7701, + 0xE1BE, 0x7704, + 0xE1BD, 0x7707, + 0xE1BC, 0x7708, + 0x94FB, 0x7709, + 0x8AC5, 0x770B, + 0x8CA7, 0x770C, + 0xE1C4, 0x771B, + 0xE1C1, 0x771E, + 0x905E, 0x771F, + 0x96B0, 0x7720, + 0xE1C0, 0x7724, + 0xE1C2, 0x7725, + 0xE1C3, 0x7726, + 0xE1BF, 0x7729, + 0xE1C5, 0x7737, + 0xE1C6, 0x7738, + 0x92AD, 0x773A, + 0x8AE1, 0x773C, + 0x9285, 0x7740, + 0xE1C7, 0x7747, + 0xE1C8, 0x775A, + 0xE1CB, 0x775B, + 0x9087, 0x7761, + 0x93C2, 0x7763, + 0xE1CC, 0x7765, + 0x9672, 0x7766, + 0xE1C9, 0x7768, + 0xE1CA, 0x776B, + 0xE1CF, 0x7779, + 0xE1CE, 0x777E, + 0xE1CD, 0x777F, + 0xE1D1, 0x778B, + 0xE1D0, 0x778E, + 0xE1D2, 0x7791, + 0xE1D4, 0x779E, + 0xE1D3, 0x77A0, + 0x95CB, 0x77A5, + 0x8F75, 0x77AC, + 0x97C4, 0x77AD, + 0xE1D5, 0x77B0, + 0x93B5, 0x77B3, + 0xE1D6, 0x77B6, + 0xE1D7, 0x77B9, + 0xE1DB, 0x77BB, + 0xE1D9, 0x77BC, + 0xE1DA, 0x77BD, + 0xE1D8, 0x77BF, + 0xE1DC, 0x77C7, + 0xE1DD, 0x77CD, + 0xE1DE, 0x77D7, + 0xE1DF, 0x77DA, + 0x96B5, 0x77DB, + 0xE1E0, 0x77DC, + 0x96EE, 0x77E2, + 0xE1E1, 0x77E3, + 0x926D, 0x77E5, + 0x948A, 0x77E7, + 0x8BE9, 0x77E9, + 0x925A, 0x77ED, + 0xE1E2, 0x77EE, + 0x8BB8, 0x77EF, + 0x90CE, 0x77F3, + 0xE1E3, 0x77FC, + 0x8DBB, 0x7802, + 0xE1E4, 0x780C, + 0xE1E5, 0x7812, + 0x8CA4, 0x7814, + 0x8DD3, 0x7815, + 0xE1E7, 0x7820, + 0x9375, 0x7825, + 0x8DD4, 0x7826, + 0x8B6D, 0x7827, + 0x9643, 0x7832, + 0x946A, 0x7834, + 0x9376, 0x783A, + 0x8D7B, 0x783F, + 0xE1E9, 0x7845, + 0x8FC9, 0x785D, + 0x97B0, 0x786B, + 0x8D64, 0x786C, + 0x8CA5, 0x786F, + 0x94A1, 0x7872, + 0xE1EB, 0x7874, + 0xE1ED, 0x787C, + 0x8CE9, 0x7881, + 0xE1EC, 0x7886, + 0x92F4, 0x7887, + 0xE1EF, 0x788C, + 0x8A56, 0x788D, + 0xE1EA, 0x788E, + 0x94E8, 0x7891, + 0x894F, 0x7893, + 0x8DEA, 0x7895, + 0x9871, 0x7897, + 0xE1EE, 0x789A, + 0xE1F0, 0x78A3, + 0x95C9, 0x78A7, + 0x90D7, 0x78A9, + 0xE1F2, 0x78AA, + 0xE1F3, 0x78AF, + 0xE1F1, 0x78B5, + 0x8A6D, 0x78BA, + 0xE1F9, 0x78BC, + 0xE1F8, 0x78BE, + 0x8EA5, 0x78C1, + 0xE1FA, 0x78C5, + 0xE1F5, 0x78C6, + 0xE1FB, 0x78CA, + 0xE1F6, 0x78CB, + 0x94D6, 0x78D0, + 0xE1F4, 0x78D1, + 0xE1F7, 0x78D4, + 0xE241, 0x78DA, + 0xE240, 0x78E7, + 0x9681, 0x78E8, + 0xE1FC, 0x78EC, + 0x88E9, 0x78EF, + 0xE243, 0x78F4, + 0xE242, 0x78FD, + 0x8FCA, 0x7901, + 0xE244, 0x7907, + 0x9162, 0x790E, + 0xE246, 0x7911, + 0xE245, 0x7912, + 0xE247, 0x7919, + 0xE1E6, 0x7926, + 0xE1E8, 0x792A, + 0xE249, 0x792B, + 0xE248, 0x792C, + 0x8EA6, 0x793A, + 0x97E7, 0x793C, + 0x8ED0, 0x793E, + 0xE24A, 0x7940, + 0x8C56, 0x7941, + 0x8B5F, 0x7947, + 0x8B46, 0x7948, + 0x8E83, 0x7949, + 0x9753, 0x7950, + 0xE250, 0x7953, + 0xE24F, 0x7955, + 0x9163, 0x7956, + 0xE24C, 0x7957, + 0xE24E, 0x795A, + 0x8F6A, 0x795D, + 0x905F, 0x795E, + 0xE24D, 0x795F, + 0xE24B, 0x7960, + 0x9449, 0x7962, + 0x8FCB, 0x7965, + 0x955B, 0x7968, + 0x8DD5, 0x796D, + 0x9398, 0x7977, + 0xE251, 0x797A, + 0xE252, 0x797F, + 0xE268, 0x7980, + 0x8BD6, 0x7981, + 0x985C, 0x7984, + 0x9154, 0x7985, + 0xE253, 0x798A, + 0x89D0, 0x798D, + 0x92F5, 0x798E, + 0x959F, 0x798F, + 0xE254, 0x799D, + 0x8B9A, 0x79A6, + 0xE255, 0x79A7, + 0xE257, 0x79AA, + 0xE258, 0x79AE, + 0x9448, 0x79B0, + 0xE259, 0x79B3, + 0xE25A, 0x79B9, + 0xE25B, 0x79BA, + 0x8BD7, 0x79BD, + 0x89D1, 0x79BE, + 0x93C3, 0x79BF, + 0x8F47, 0x79C0, + 0x8E84, 0x79C1, + 0xE25C, 0x79C9, + 0x8F48, 0x79CB, + 0x89C8, 0x79D1, + 0x9562, 0x79D2, + 0xE25D, 0x79D5, + 0x94E9, 0x79D8, + 0x9164, 0x79DF, + 0xE260, 0x79E1, + 0xE261, 0x79E3, + 0x9489, 0x79E4, + 0x9060, 0x79E6, + 0xE25E, 0x79E7, + 0x9281, 0x79E9, + 0xE25F, 0x79EC, + 0x8FCC, 0x79F0, + 0x88DA, 0x79FB, + 0x8B48, 0x7A00, + 0xE262, 0x7A08, + 0x92F6, 0x7A0B, + 0xE263, 0x7A0D, + 0x90C5, 0x7A0E, + 0x96AB, 0x7A14, + 0x9542, 0x7A17, + 0xE264, 0x7A18, + 0xE265, 0x7A19, + 0x9274, 0x7A1A, + 0x97C5, 0x7A1C, + 0xE267, 0x7A1F, + 0xE266, 0x7A20, + 0x8EED, 0x7A2E, + 0xE269, 0x7A31, + 0x88EE, 0x7A32, + 0xE26C, 0x7A37, + 0xE26A, 0x7A3B, + 0x89D2, 0x7A3C, + 0x8C6D, 0x7A3D, + 0xE26B, 0x7A3E, + 0x8D65, 0x7A3F, + 0x8D92, 0x7A40, + 0x95E4, 0x7A42, + 0xE26D, 0x7A43, + 0x9673, 0x7A46, + 0xE26F, 0x7A49, + 0x90CF, 0x7A4D, + 0x896E, 0x7A4E, + 0x89B8, 0x7A4F, + 0x88AA, 0x7A50, + 0xE26E, 0x7A57, + 0xE270, 0x7A61, + 0xE271, 0x7A62, + 0x8FF5, 0x7A63, + 0xE272, 0x7A69, + 0x8A6E, 0x7A6B, + 0xE274, 0x7A70, + 0x8C8A, 0x7A74, + 0x8B86, 0x7A76, + 0xE275, 0x7A79, + 0x8BF3, 0x7A7A, + 0xE276, 0x7A7D, + 0x90FA, 0x7A7F, + 0x93CB, 0x7A81, + 0x90DE, 0x7A83, + 0x8DF3, 0x7A84, + 0xE277, 0x7A88, + 0x9282, 0x7A92, + 0x918B, 0x7A93, + 0xE279, 0x7A95, + 0xE27B, 0x7A96, + 0xE278, 0x7A97, + 0xE27A, 0x7A98, + 0x8C41, 0x7A9F, + 0xE27C, 0x7AA9, + 0x8C45, 0x7AAA, + 0x8B87, 0x7AAE, + 0x9771, 0x7AAF, + 0xE27E, 0x7AB0, + 0xE280, 0x7AB6, + 0x894D, 0x7ABA, + 0xE283, 0x7ABF, + 0x8A96, 0x7AC3, + 0xE282, 0x7AC4, + 0xE281, 0x7AC5, + 0xE285, 0x7AC7, + 0xE27D, 0x7AC8, + 0xE286, 0x7ACA, + 0x97A7, 0x7ACB, + 0xE287, 0x7ACD, + 0xE288, 0x7ACF, + 0x9AF2, 0x7AD2, + 0xE28A, 0x7AD3, + 0xE289, 0x7AD5, + 0xE28B, 0x7AD9, + 0xE28C, 0x7ADA, + 0x97B3, 0x7ADC, + 0xE28D, 0x7ADD, + 0xE8ED, 0x7ADF, + 0x8FCD, 0x7AE0, + 0xE28E, 0x7AE1, + 0xE28F, 0x7AE2, + 0x8F76, 0x7AE3, + 0x93B6, 0x7AE5, + 0xE290, 0x7AE6, + 0x9247, 0x7AEA, + 0xE291, 0x7AED, + 0x925B, 0x7AEF, + 0xE292, 0x7AF0, + 0x8BA3, 0x7AF6, + 0x995E, 0x7AF8, + 0x927C, 0x7AF9, + 0x8EB1, 0x7AFA, + 0x8AC6, 0x7AFF, + 0xE293, 0x7B02, + 0xE2A0, 0x7B04, + 0xE296, 0x7B06, + 0x8B88, 0x7B08, + 0xE295, 0x7B0A, + 0xE2A2, 0x7B0B, + 0xE294, 0x7B0F, + 0x8FCE, 0x7B11, + 0xE298, 0x7B18, + 0xE299, 0x7B19, + 0x934A, 0x7B1B, + 0xE29A, 0x7B1E, + 0x8A7D, 0x7B20, + 0x9079, 0x7B25, + 0x9584, 0x7B26, + 0xE29C, 0x7B28, + 0x91E6, 0x7B2C, + 0xE297, 0x7B33, + 0xE29B, 0x7B35, + 0xE29D, 0x7B36, + 0x8DF9, 0x7B39, + 0xE2A4, 0x7B45, + 0x954D, 0x7B46, + 0x94A4, 0x7B48, + 0x9399, 0x7B49, + 0x8BD8, 0x7B4B, + 0xE2A3, 0x7B4C, + 0xE2A1, 0x7B4D, + 0x94B3, 0x7B4F, + 0xE29E, 0x7B50, + 0x927D, 0x7B51, + 0x939B, 0x7B52, + 0x939A, 0x7B54, + 0x8DF4, 0x7B56, + 0xE2B6, 0x7B5D, + 0xE2A6, 0x7B65, + 0xE2A8, 0x7B67, + 0xE2AB, 0x7B6C, + 0xE2AC, 0x7B6E, + 0xE2A9, 0x7B70, + 0xE2AA, 0x7B71, + 0xE2A7, 0x7B74, + 0xE2A5, 0x7B75, + 0xE29F, 0x7B7A, + 0x95CD, 0x7B86, + 0x89D3, 0x7B87, + 0xE2B3, 0x7B8B, + 0xE2B0, 0x7B8D, + 0xE2B5, 0x7B8F, + 0xE2B4, 0x7B92, + 0x9493, 0x7B94, + 0x96A5, 0x7B95, + 0x8E5A, 0x7B97, + 0xE2AE, 0x7B98, + 0xE2B7, 0x7B99, + 0xE2B2, 0x7B9A, + 0xE2B1, 0x7B9C, + 0xE2AD, 0x7B9D, + 0xE2AF, 0x7B9F, + 0x8AC7, 0x7BA1, + 0x925C, 0x7BAA, + 0x90FB, 0x7BAD, + 0x94A0, 0x7BB1, + 0xE2BC, 0x7BB4, + 0x94A2, 0x7BB8, + 0x90DF, 0x7BC0, + 0xE2B9, 0x7BC1, + 0x94CD, 0x7BC4, + 0xE2BD, 0x7BC6, + 0x95D1, 0x7BC7, + 0x927A, 0x7BC9, + 0xE2B8, 0x7BCB, + 0xE2BA, 0x7BCC, + 0xE2BB, 0x7BCF, + 0xE2BE, 0x7BDD, + 0x8EC2, 0x7BE0, + 0x93C4, 0x7BE4, + 0xE2C3, 0x7BE5, + 0xE2C2, 0x7BE6, + 0xE2BF, 0x7BE9, + 0x9855, 0x7BED, + 0xE2C8, 0x7BF3, + 0xE2CC, 0x7BF6, + 0xE2C9, 0x7BF7, + 0xE2C5, 0x7C00, + 0xE2C6, 0x7C07, + 0xE2CB, 0x7C0D, + 0xE2C0, 0x7C11, + 0x99D3, 0x7C12, + 0xE2C7, 0x7C13, + 0xE2C1, 0x7C14, + 0xE2CA, 0x7C17, + 0xE2D0, 0x7C1F, + 0x8AC8, 0x7C21, + 0xE2CD, 0x7C23, + 0xE2CE, 0x7C27, + 0xE2CF, 0x7C2A, + 0xE2D2, 0x7C2B, + 0xE2D1, 0x7C37, + 0x94F4, 0x7C38, + 0xE2D3, 0x7C3D, + 0x97FA, 0x7C3E, + 0x95EB, 0x7C3F, + 0xE2D8, 0x7C40, + 0xE2D5, 0x7C43, + 0xE2D4, 0x7C4C, + 0x90D0, 0x7C4D, + 0xE2D7, 0x7C4F, + 0xE2D9, 0x7C50, + 0xE2D6, 0x7C54, + 0xE2DD, 0x7C56, + 0xE2DA, 0x7C58, + 0xE2DB, 0x7C5F, + 0xE2C4, 0x7C60, + 0xE2DC, 0x7C64, + 0xE2DE, 0x7C65, + 0xE2DF, 0x7C6C, + 0x95C4, 0x7C73, + 0xE2E0, 0x7C75, + 0x96E0, 0x7C7E, + 0x8BCC, 0x7C81, + 0x8C48, 0x7C82, + 0xE2E1, 0x7C83, + 0x95B2, 0x7C89, + 0x9088, 0x7C8B, + 0x96AE, 0x7C8D, + 0xE2E2, 0x7C90, + 0x97B1, 0x7C92, + 0x9494, 0x7C95, + 0x9165, 0x7C97, + 0x9453, 0x7C98, + 0x8F6C, 0x7C9B, + 0x88BE, 0x7C9F, + 0xE2E7, 0x7CA1, + 0xE2E5, 0x7CA2, + 0xE2E3, 0x7CA4, + 0x8A9F, 0x7CA5, + 0x8FCF, 0x7CA7, + 0xE2E8, 0x7CA8, + 0xE2E6, 0x7CAB, + 0xE2E4, 0x7CAD, + 0xE2EC, 0x7CAE, + 0xE2EB, 0x7CB1, + 0xE2EA, 0x7CB2, + 0xE2E9, 0x7CB3, + 0xE2ED, 0x7CB9, + 0xE2EE, 0x7CBD, + 0x90B8, 0x7CBE, + 0xE2EF, 0x7CC0, + 0xE2F1, 0x7CC2, + 0xE2F0, 0x7CC5, + 0x8CD0, 0x7CCA, + 0x9157, 0x7CCE, + 0xE2F3, 0x7CD2, + 0x939C, 0x7CD6, + 0xE2F2, 0x7CD8, + 0xE2F4, 0x7CDC, + 0x95B3, 0x7CDE, + 0x918C, 0x7CDF, + 0x8D66, 0x7CE0, + 0xE2F5, 0x7CE2, + 0x97C6, 0x7CE7, + 0xE2F7, 0x7CEF, + 0xE2F8, 0x7CF2, + 0xE2F9, 0x7CF4, + 0xE2FA, 0x7CF6, + 0x8E85, 0x7CF8, + 0xE2FB, 0x7CFA, + 0x8C6E, 0x7CFB, + 0x8B8A, 0x7CFE, + 0x8B49, 0x7D00, + 0xE340, 0x7D02, + 0x96F1, 0x7D04, + 0x8D67, 0x7D05, + 0xE2FC, 0x7D06, + 0xE343, 0x7D0A, + 0x96E4, 0x7D0B, + 0x945B, 0x7D0D, + 0x9552, 0x7D10, + 0x8F83, 0x7D14, + 0xE342, 0x7D15, + 0x8ED1, 0x7D17, + 0x8D68, 0x7D18, + 0x8E86, 0x7D19, + 0x8B89, 0x7D1A, + 0x95B4, 0x7D1B, + 0xE341, 0x7D1C, + 0x9166, 0x7D20, + 0x9661, 0x7D21, + 0x8DF5, 0x7D22, + 0x8E87, 0x7D2B, + 0x92DB, 0x7D2C, + 0xE346, 0x7D2E, + 0x97DD, 0x7D2F, + 0x8DD7, 0x7D30, + 0xE347, 0x7D32, + 0x9061, 0x7D33, + 0xE349, 0x7D35, + 0x8FD0, 0x7D39, + 0x8DAE, 0x7D3A, + 0xE348, 0x7D3F, + 0x8F49, 0x7D42, + 0x8CBC, 0x7D43, + 0x9167, 0x7D44, + 0xE344, 0x7D45, + 0xE34A, 0x7D46, + 0xE345, 0x7D4B, + 0x8C6F, 0x7D4C, + 0xE34D, 0x7D4E, + 0xE351, 0x7D4F, + 0x8C8B, 0x7D50, + 0xE34C, 0x7D56, + 0xE355, 0x7D5B, + 0x8D69, 0x7D5E, + 0x978D, 0x7D61, + 0x88BA, 0x7D62, + 0xE352, 0x7D63, + 0x8B8B, 0x7D66, + 0xE34F, 0x7D68, + 0xE350, 0x7D6E, + 0x939D, 0x7D71, + 0xE34E, 0x7D72, + 0xE34B, 0x7D73, + 0x8A47, 0x7D75, + 0x90E2, 0x7D76, + 0x8CA6, 0x7D79, + 0xE357, 0x7D7D, + 0xE354, 0x7D89, + 0xE356, 0x7D8F, + 0xE353, 0x7D93, + 0x8C70, 0x7D99, + 0x91B1, 0x7D9A, + 0xE358, 0x7D9B, + 0x918E, 0x7D9C, + 0xE365, 0x7D9F, + 0xE361, 0x7DA2, + 0xE35B, 0x7DA3, + 0xE35F, 0x7DAB, + 0x8EF8, 0x7DAC, + 0x88DB, 0x7DAD, + 0xE35A, 0x7DAE, + 0xE362, 0x7DAF, + 0xE366, 0x7DB0, + 0x8D6A, 0x7DB1, + 0x96D4, 0x7DB2, + 0x92D4, 0x7DB4, + 0xE35C, 0x7DB5, + 0xE364, 0x7DB8, + 0xE359, 0x7DBA, + 0x925D, 0x7DBB, + 0xE35E, 0x7DBD, + 0x88BB, 0x7DBE, + 0x96C8, 0x7DBF, + 0xE35D, 0x7DC7, + 0x8BD9, 0x7DCA, + 0x94EA, 0x7DCB, + 0x918D, 0x7DCF, + 0x97CE, 0x7DD1, + 0x8F8F, 0x7DD2, + 0xE38E, 0x7DD5, + 0xE367, 0x7DD8, + 0x90FC, 0x7DDA, + 0xE363, 0x7DDC, + 0xE368, 0x7DDD, + 0xE36A, 0x7DDE, + 0x92F7, 0x7DE0, + 0xE36D, 0x7DE1, + 0xE369, 0x7DE4, + 0x95D2, 0x7DE8, + 0x8AC9, 0x7DE9, + 0x96C9, 0x7DEC, + 0x88DC, 0x7DEF, + 0xE36C, 0x7DF2, + 0x97FB, 0x7DF4, + 0xE36B, 0x7DFB, + 0x898F, 0x7E01, + 0x93EA, 0x7E04, + 0xE36E, 0x7E05, + 0xE375, 0x7E09, + 0xE36F, 0x7E0A, + 0xE376, 0x7E0B, + 0xE372, 0x7E12, + 0x949B, 0x7E1B, + 0x8EC8, 0x7E1E, + 0xE374, 0x7E1F, + 0xE371, 0x7E21, + 0xE377, 0x7E22, + 0xE370, 0x7E23, + 0x8F63, 0x7E26, + 0x9644, 0x7E2B, + 0x8F6B, 0x7E2E, + 0xE373, 0x7E31, + 0xE380, 0x7E32, + 0xE37B, 0x7E35, + 0xE37E, 0x7E37, + 0xE37C, 0x7E39, + 0xE381, 0x7E3A, + 0xE37A, 0x7E3B, + 0xE360, 0x7E3D, + 0x90D1, 0x7E3E, + 0x94C9, 0x7E41, + 0xE37D, 0x7E43, + 0xE378, 0x7E46, + 0x9140, 0x7E4A, + 0x8C71, 0x7E4B, + 0x8F4A, 0x7E4D, + 0x9044, 0x7E54, + 0x9155, 0x7E55, + 0xE384, 0x7E56, + 0xE386, 0x7E59, + 0xE387, 0x7E5A, + 0xE383, 0x7E5D, + 0xE385, 0x7E5E, + 0xE379, 0x7E66, + 0xE382, 0x7E67, + 0xE38A, 0x7E69, + 0xE389, 0x7E6A, + 0x969A, 0x7E6D, + 0x8C4A, 0x7E70, + 0xE388, 0x7E79, + 0xE38C, 0x7E7B, + 0xE38B, 0x7E7C, + 0xE38F, 0x7E7D, + 0xE391, 0x7E7F, + 0x8E5B, 0x7E82, + 0xE38D, 0x7E83, + 0xE392, 0x7E88, + 0xE393, 0x7E89, + 0xE394, 0x7E8C, + 0xE39A, 0x7E8E, + 0x935A, 0x7E8F, + 0xE396, 0x7E90, + 0xE395, 0x7E92, + 0xE397, 0x7E93, + 0xE398, 0x7E94, + 0xE399, 0x7E96, + 0xE39B, 0x7E9B, + 0xE39C, 0x7E9C, + 0x8ACA, 0x7F36, + 0xE39D, 0x7F38, + 0xE39E, 0x7F3A, + 0xE39F, 0x7F45, + 0xE3A0, 0x7F4C, + 0xE3A1, 0x7F4D, + 0xE3A2, 0x7F4E, + 0xE3A3, 0x7F50, + 0xE3A4, 0x7F51, + 0xE3A6, 0x7F54, + 0xE3A5, 0x7F55, + 0xE3A7, 0x7F58, + 0xE3A8, 0x7F5F, + 0xE3A9, 0x7F60, + 0xE3AC, 0x7F67, + 0xE3AA, 0x7F68, + 0xE3AB, 0x7F69, + 0x8DDF, 0x7F6A, + 0x8C72, 0x7F6B, + 0x9275, 0x7F6E, + 0x94B1, 0x7F70, + 0x8F90, 0x7F72, + 0x946C, 0x7F75, + 0x94EB, 0x7F77, + 0xE3AD, 0x7F78, + 0x9CEB, 0x7F79, + 0xE3AE, 0x7F82, + 0xE3B0, 0x7F83, + 0x9785, 0x7F85, + 0xE3AF, 0x7F86, + 0xE3B2, 0x7F87, + 0xE3B1, 0x7F88, + 0x9772, 0x7F8A, + 0xE3B3, 0x7F8C, + 0x94FC, 0x7F8E, + 0xE3B4, 0x7F94, + 0xE3B7, 0x7F9A, + 0xE3B6, 0x7F9D, + 0xE3B5, 0x7F9E, + 0xE3B8, 0x7FA3, + 0x8C51, 0x7FA4, + 0x9141, 0x7FA8, + 0x8B60, 0x7FA9, + 0xE3BC, 0x7FAE, + 0xE3B9, 0x7FAF, + 0xE3BA, 0x7FB2, + 0xE3BD, 0x7FB6, + 0xE3BE, 0x7FB8, + 0xE3BB, 0x7FB9, + 0x8948, 0x7FBD, + 0x89A5, 0x7FC1, + 0xE3C0, 0x7FC5, + 0xE3C1, 0x7FC6, + 0xE3C2, 0x7FCA, + 0x9782, 0x7FCC, + 0x8F4B, 0x7FD2, + 0xE3C4, 0x7FD4, + 0xE3C3, 0x7FD5, + 0x9089, 0x7FE0, + 0xE3C5, 0x7FE1, + 0xE3C6, 0x7FE6, + 0xE3C7, 0x7FE9, + 0x8AE3, 0x7FEB, + 0x8ACB, 0x7FF0, + 0xE3C8, 0x7FF3, + 0xE3C9, 0x7FF9, + 0x967C, 0x7FFB, + 0x9783, 0x7FFC, + 0x9773, 0x8000, + 0x9856, 0x8001, + 0x8D6C, 0x8003, + 0xE3CC, 0x8004, + 0x8ED2, 0x8005, + 0xE3CB, 0x8006, + 0xE3CD, 0x800B, + 0x8EA7, 0x800C, + 0x91CF, 0x8010, + 0xE3CE, 0x8012, + 0x8D6B, 0x8015, + 0x96D5, 0x8017, + 0xE3CF, 0x8018, + 0xE3D0, 0x8019, + 0xE3D1, 0x801C, + 0xE3D2, 0x8021, + 0xE3D3, 0x8028, + 0x8EA8, 0x8033, + 0x96EB, 0x8036, + 0xE3D5, 0x803B, + 0x925E, 0x803D, + 0xE3D4, 0x803F, + 0xE3D7, 0x8046, + 0xE3D6, 0x804A, + 0xE3D8, 0x8052, + 0x90B9, 0x8056, + 0xE3D9, 0x8058, + 0xE3DA, 0x805A, + 0x95B7, 0x805E, + 0xE3DB, 0x805F, + 0x918F, 0x8061, + 0xE3DC, 0x8062, + 0xE3DD, 0x8068, + 0x97FC, 0x806F, + 0xE3E0, 0x8070, + 0xE3DF, 0x8072, + 0xE3DE, 0x8073, + 0x92AE, 0x8074, + 0xE3E1, 0x8076, + 0x9045, 0x8077, + 0xE3E2, 0x8079, + 0xE3E3, 0x807D, + 0x9857, 0x807E, + 0xE3E4, 0x807F, + 0xE3E5, 0x8084, + 0xE3E7, 0x8085, + 0xE3E6, 0x8086, + 0x94A3, 0x8087, + 0x93F7, 0x8089, + 0x985D, 0x808B, + 0x94A7, 0x808C, + 0xE3E9, 0x8093, + 0x8FD1, 0x8096, + 0x9549, 0x8098, + 0xE3EA, 0x809A, + 0xE3E8, 0x809B, + 0x8ACC, 0x809D, + 0x8CD2, 0x80A1, + 0x8E88, 0x80A2, + 0x94EC, 0x80A5, + 0x8CA8, 0x80A9, + 0x9662, 0x80AA, + 0xE3ED, 0x80AC, + 0xE3EB, 0x80AD, + 0x8D6D, 0x80AF, + 0x8D6E, 0x80B1, + 0x88E7, 0x80B2, + 0x8DE6, 0x80B4, + 0x9478, 0x80BA, + 0x88DD, 0x80C3, + 0xE3F2, 0x80C4, + 0x925F, 0x80C6, + 0x9477, 0x80CC, + 0x91D9, 0x80CE, + 0xE3F4, 0x80D6, + 0xE3F0, 0x80D9, + 0xE3F3, 0x80DA, + 0xE3EE, 0x80DB, + 0xE3F1, 0x80DD, + 0x9645, 0x80DE, + 0x8CD3, 0x80E1, + 0x88FB, 0x80E4, + 0xE3EF, 0x80E5, + 0xE3F6, 0x80EF, + 0xE3F7, 0x80F1, + 0x93B7, 0x80F4, + 0x8BB9, 0x80F8, + 0xE445, 0x80FC, + 0x945C, 0x80FD, + 0x8E89, 0x8102, + 0x8BBA, 0x8105, + 0x90C6, 0x8106, + 0x9865, 0x8107, + 0x96AC, 0x8108, + 0xE3F5, 0x8109, + 0x90D2, 0x810A, + 0x8B72, 0x811A, + 0xE3F8, 0x811B, + 0xE3FA, 0x8123, + 0xE3F9, 0x8129, + 0xE3FB, 0x812F, + 0x9245, 0x8131, + 0x945D, 0x8133, + 0x92AF, 0x8139, + 0xE442, 0x813E, + 0xE441, 0x8146, + 0xE3FC, 0x814B, + 0x9074, 0x814E, + 0x9585, 0x8150, + 0xE444, 0x8151, + 0xE443, 0x8153, + 0x8D6F, 0x8154, + 0x9872, 0x8155, + 0xE454, 0x815F, + 0xE448, 0x8165, + 0xE449, 0x8166, + 0x8EEE, 0x816B, + 0xE447, 0x816E, + 0x8D98, 0x8170, + 0xE446, 0x8171, + 0xE44A, 0x8174, + 0x92B0, 0x8178, + 0x95A0, 0x8179, + 0x9142, 0x817A, + 0x91DA, 0x817F, + 0xE44E, 0x8180, + 0xE44F, 0x8182, + 0xE44B, 0x8183, + 0xE44C, 0x8188, + 0xE44D, 0x818A, + 0x8D70, 0x818F, + 0xE455, 0x8193, + 0xE451, 0x8195, + 0x9586, 0x819A, + 0x968C, 0x819C, + 0x9547, 0x819D, + 0xE450, 0x81A0, + 0xE453, 0x81A3, + 0xE452, 0x81A4, + 0x9663, 0x81A8, + 0xE456, 0x81A9, + 0xE457, 0x81B0, + 0x9156, 0x81B3, + 0xE458, 0x81B5, + 0xE45A, 0x81B8, + 0xE45E, 0x81BA, + 0xE45B, 0x81BD, + 0xE459, 0x81BE, + 0x945E, 0x81BF, + 0xE45C, 0x81C0, + 0xE45D, 0x81C2, + 0x89B0, 0x81C6, + 0xE464, 0x81C8, + 0xE45F, 0x81C9, + 0xE460, 0x81CD, + 0xE461, 0x81D1, + 0x919F, 0x81D3, + 0xE463, 0x81D8, + 0xE462, 0x81D9, + 0xE465, 0x81DA, + 0xE466, 0x81DF, + 0xE467, 0x81E0, + 0x9062, 0x81E3, + 0x89E7, 0x81E5, + 0xE468, 0x81E7, + 0x97D5, 0x81E8, + 0x8EA9, 0x81EA, + 0x8F4C, 0x81ED, + 0x8E8A, 0x81F3, + 0x9276, 0x81F4, + 0xE469, 0x81FA, + 0xE46A, 0x81FB, + 0x8950, 0x81FC, + 0xE46B, 0x81FE, + 0xE46C, 0x8201, + 0xE46D, 0x8202, + 0xE46E, 0x8205, + 0xE46F, 0x8207, + 0x8BBB, 0x8208, + 0x9DA8, 0x8209, + 0xE470, 0x820A, + 0x90E3, 0x820C, + 0xE471, 0x820D, + 0x8EC9, 0x820E, + 0xE472, 0x8210, + 0x98AE, 0x8212, + 0xE473, 0x8216, + 0x95DC, 0x8217, + 0x8ADA, 0x8218, + 0x9143, 0x821B, + 0x8F77, 0x821C, + 0x9591, 0x821E, + 0x8F4D, 0x821F, + 0xE474, 0x8229, + 0x8D71, 0x822A, + 0xE475, 0x822B, + 0x94CA, 0x822C, + 0xE484, 0x822E, + 0xE477, 0x8233, + 0x91C7, 0x8235, + 0x9495, 0x8236, + 0x8CBD, 0x8237, + 0xE476, 0x8238, + 0x9144, 0x8239, + 0xE478, 0x8240, + 0x92F8, 0x8247, + 0xE47A, 0x8258, + 0xE479, 0x8259, + 0xE47C, 0x825A, + 0xE47B, 0x825D, + 0xE47D, 0x825F, + 0xE480, 0x8262, + 0xE47E, 0x8264, + 0x8ACD, 0x8266, + 0xE481, 0x8268, + 0xE482, 0x826A, + 0xE483, 0x826B, + 0x8DAF, 0x826E, + 0x97C7, 0x826F, + 0xE485, 0x8271, + 0x9046, 0x8272, + 0x8990, 0x8276, + 0xE486, 0x8277, + 0xE487, 0x8278, + 0xE488, 0x827E, + 0x88F0, 0x828B, + 0xE489, 0x828D, + 0xE48A, 0x8292, + 0x9587, 0x8299, + 0x8EC5, 0x829D, + 0xE48C, 0x829F, + 0x8A48, 0x82A5, + 0x88B0, 0x82A6, + 0xE48B, 0x82AB, + 0xE48E, 0x82AC, + 0x946D, 0x82AD, + 0x9063, 0x82AF, + 0x89D4, 0x82B1, + 0x9646, 0x82B3, + 0x8C7C, 0x82B8, + 0x8BDA, 0x82B9, + 0xE48D, 0x82BB, + 0x89E8, 0x82BD, + 0x8AA1, 0x82C5, + 0x8991, 0x82D1, + 0xE492, 0x82D2, + 0x97E8, 0x82D3, + 0x91DB, 0x82D4, + 0x9563, 0x82D7, + 0xE49E, 0x82D9, + 0x89D5, 0x82DB, + 0xE49C, 0x82DC, + 0xE49A, 0x82DE, + 0xE491, 0x82DF, + 0xE48F, 0x82E1, + 0xE490, 0x82E3, + 0x8EE1, 0x82E5, + 0x8BEA, 0x82E6, + 0x9297, 0x82E7, + 0x93CF, 0x82EB, + 0x8970, 0x82F1, + 0xE494, 0x82F3, + 0xE493, 0x82F4, + 0xE499, 0x82F9, + 0xE495, 0x82FA, + 0xE498, 0x82FB, + 0x96CE, 0x8302, + 0xE497, 0x8303, + 0x89D6, 0x8304, + 0x8A9D, 0x8305, + 0xE49B, 0x8306, + 0xE49D, 0x8309, + 0x8C73, 0x830E, + 0xE4A1, 0x8316, + 0xE4AA, 0x8317, + 0xE4AB, 0x8318, + 0x88A9, 0x831C, + 0xE4B2, 0x8323, + 0x88EF, 0x8328, + 0xE4A9, 0x832B, + 0xE4A8, 0x832F, + 0xE4A3, 0x8331, + 0xE4A2, 0x8332, + 0xE4A0, 0x8334, + 0xE49F, 0x8335, + 0x9283, 0x8336, + 0x91F9, 0x8338, + 0xE4A5, 0x8339, + 0xE4A4, 0x8340, + 0xE4A7, 0x8345, + 0x9190, 0x8349, + 0x8C74, 0x834A, + 0x8960, 0x834F, + 0xE4A6, 0x8350, + 0x8D72, 0x8352, + 0x9191, 0x8358, + 0xE4B8, 0x8373, + 0xE4B9, 0x8375, + 0x89D7, 0x8377, + 0x89AC, 0x837B, + 0xE4B6, 0x837C, + 0xE4AC, 0x8385, + 0xE4B4, 0x8387, + 0xE4BB, 0x8389, + 0xE4B5, 0x838A, + 0xE4B3, 0x838E, + 0xE496, 0x8393, + 0xE4B1, 0x8396, + 0xE4AD, 0x839A, + 0x8ACE, 0x839E, + 0xE4AF, 0x839F, + 0xE4BA, 0x83A0, + 0xE4B0, 0x83A2, + 0xE4BC, 0x83A8, + 0xE4AE, 0x83AA, + 0x949C, 0x83AB, + 0x9789, 0x83B1, + 0xE4B7, 0x83B5, + 0xE4CD, 0x83BD, + 0xE4C5, 0x83C1, + 0x909B, 0x83C5, + 0x8B65, 0x83CA, + 0x8BDB, 0x83CC, + 0xE4C0, 0x83CE, + 0x89D9, 0x83D3, + 0x8FD2, 0x83D6, + 0xE4C3, 0x83D8, + 0x8DD8, 0x83DC, + 0x9370, 0x83DF, + 0xE4C8, 0x83E0, + 0x95EC, 0x83E9, + 0xE4BF, 0x83EB, + 0x89D8, 0x83EF, + 0x8CD4, 0x83F0, + 0x9548, 0x83F1, + 0xE4C9, 0x83F2, + 0xE4BD, 0x83F4, + 0xE4C6, 0x83F7, + 0xE4D0, 0x83FB, + 0xE4C1, 0x83FD, + 0xE4C2, 0x8403, + 0x93B8, 0x8404, + 0xE4C7, 0x8407, + 0xE4C4, 0x840B, + 0x9647, 0x840C, + 0xE4CA, 0x840D, + 0x88DE, 0x840E, + 0xE4BE, 0x8413, + 0xE4CC, 0x8420, + 0xE4CB, 0x8422, + 0x948B, 0x8429, + 0xE4D2, 0x842A, + 0xE4DD, 0x842C, + 0x8A9E, 0x8431, + 0xE4E0, 0x8435, + 0xE4CE, 0x8438, + 0xE4D3, 0x843C, + 0x978E, 0x843D, + 0xE4DC, 0x8446, + 0x9774, 0x8449, + 0x97A8, 0x844E, + 0x9298, 0x8457, + 0x8A8B, 0x845B, + 0x9592, 0x8461, + 0xE4E2, 0x8462, + 0x939F, 0x8463, + 0x88AF, 0x8466, + 0xE4DB, 0x8469, + 0xE4D7, 0x846B, + 0x9192, 0x846C, + 0xE4D1, 0x846D, + 0xE4D9, 0x846E, + 0xE4DE, 0x846F, + 0x944B, 0x8471, + 0x88A8, 0x8475, + 0xE4D6, 0x8477, + 0xE4DF, 0x8479, + 0x9598, 0x847A, + 0xE4DA, 0x8482, + 0xE4D5, 0x8484, + 0x8FD3, 0x848B, + 0x8F4E, 0x8490, + 0x8EAA, 0x8494, + 0x96D6, 0x8499, + 0x9566, 0x849C, + 0xE4E5, 0x849F, + 0xE4EE, 0x84A1, + 0xE4D8, 0x84AD, + 0x8A97, 0x84B2, + 0x8FF6, 0x84B8, + 0xE4E3, 0x84B9, + 0xE4E8, 0x84BB, + 0x9193, 0x84BC, + 0xE4E4, 0x84BF, + 0xE4EB, 0x84C1, + 0x927E, 0x84C4, + 0xE4EC, 0x84C6, + 0x9775, 0x84C9, + 0xE4E1, 0x84CA, + 0x8A57, 0x84CB, + 0xE4E7, 0x84CD, + 0xE4EA, 0x84D0, + 0x96AA, 0x84D1, + 0xE4ED, 0x84D6, + 0xE4E6, 0x84D9, + 0xE4E9, 0x84DA, + 0x9648, 0x84EC, + 0x9840, 0x84EE, + 0xE4F1, 0x84F4, + 0xE4F8, 0x84FC, + 0xE4F0, 0x84FF, + 0x8EC1, 0x8500, + 0xE4CF, 0x8506, + 0x95CC, 0x8511, + 0x96A0, 0x8513, + 0xE4F7, 0x8514, + 0xE4F6, 0x8515, + 0xE4F2, 0x8517, + 0xE4F3, 0x8518, + 0x8955, 0x851A, + 0xE4F5, 0x851F, + 0xE4EF, 0x8521, + 0x92D3, 0x8526, + 0xE4F4, 0x852C, + 0x88FC, 0x852D, + 0x91A0, 0x8535, + 0x95C1, 0x853D, + 0xE4F9, 0x8540, + 0xE540, 0x8541, + 0x94D7, 0x8543, + 0xE4FC, 0x8548, + 0x8FD4, 0x8549, + 0x8EC7, 0x854A, + 0xE542, 0x854B, + 0x8BBC, 0x854E, + 0xE543, 0x8555, + 0x9599, 0x8557, + 0xE4FB, 0x8558, + 0xE4D4, 0x855A, + 0xE4FA, 0x8563, + 0x986E, 0x8568, + 0x93A0, 0x8569, + 0x9593, 0x856A, + 0xE54A, 0x856D, + 0xE550, 0x8577, + 0xE551, 0x857E, + 0xE544, 0x8580, + 0x9496, 0x8584, + 0xE54E, 0x8587, + 0xE546, 0x8588, + 0xE548, 0x858A, + 0xE552, 0x8590, + 0xE547, 0x8591, + 0xE54B, 0x8594, + 0x8992, 0x8597, + 0x93E3, 0x8599, + 0xE54C, 0x859B, + 0xE54F, 0x859C, + 0xE545, 0x85A4, + 0x9145, 0x85A6, + 0xE549, 0x85A8, + 0x8E46, 0x85A9, + 0x9064, 0x85AA, + 0x8C4F, 0x85AB, + 0x96F2, 0x85AC, + 0x96F7, 0x85AE, + 0x8F92, 0x85AF, + 0xE556, 0x85B9, + 0xE554, 0x85BA, + 0x986D, 0x85C1, + 0xE553, 0x85C9, + 0x9795, 0x85CD, + 0xE555, 0x85CF, + 0xE557, 0x85D0, + 0xE558, 0x85D5, + 0xE55B, 0x85DC, + 0xE559, 0x85DD, + 0x93A1, 0x85E4, + 0xE55A, 0x85E5, + 0x94CB, 0x85E9, + 0xE54D, 0x85EA, + 0x8F93, 0x85F7, + 0xE55C, 0x85F9, + 0xE561, 0x85FA, + 0x9194, 0x85FB, + 0xE560, 0x85FE, + 0xE541, 0x8602, + 0xE562, 0x8606, + 0x9168, 0x8607, + 0xE55D, 0x860A, + 0xE55F, 0x860B, + 0xE55E, 0x8613, + 0x9F50, 0x8616, + 0x9F41, 0x8617, + 0xE564, 0x861A, + 0xE563, 0x8622, + 0x9796, 0x862D, + 0xE1BA, 0x862F, + 0xE565, 0x8630, + 0xE566, 0x863F, + 0xE567, 0x864D, + 0x8CD5, 0x864E, + 0x8B73, 0x8650, + 0xE569, 0x8654, + 0x997C, 0x8655, + 0x8B95, 0x865A, + 0x97B8, 0x865C, + 0x8BF1, 0x865E, + 0xE56A, 0x865F, + 0xE56B, 0x8667, + 0x928E, 0x866B, + 0xE56C, 0x8671, + 0x93F8, 0x8679, + 0x88B8, 0x867B, + 0x89E1, 0x868A, + 0xE571, 0x868B, + 0xE572, 0x868C, + 0xE56D, 0x8693, + 0x8E5C, 0x8695, + 0xE56E, 0x86A3, + 0x9461, 0x86A4, + 0xE56F, 0x86A9, + 0xE570, 0x86AA, + 0xE57A, 0x86AB, + 0xE574, 0x86AF, + 0xE577, 0x86B0, + 0xE573, 0x86B6, + 0xE575, 0x86C4, + 0xE576, 0x86C6, + 0x8ED6, 0x86C7, + 0xE578, 0x86C9, + 0x9260, 0x86CB, + 0x8C75, 0x86CD, + 0x8A61, 0x86CE, + 0xE57B, 0x86D4, + 0x8A5E, 0x86D9, + 0xE581, 0x86DB, + 0xE57C, 0x86DE, + 0xE580, 0x86DF, + 0x94B8, 0x86E4, + 0xE57D, 0x86E9, + 0xE57E, 0x86EC, + 0x9567, 0x86ED, + 0x94D8, 0x86EE, + 0xE582, 0x86EF, + 0x91FB, 0x86F8, + 0xE58C, 0x86F9, + 0xE588, 0x86FB, + 0x89E9, 0x86FE, + 0xE586, 0x8700, + 0x9649, 0x8702, + 0xE587, 0x8703, + 0xE584, 0x8706, + 0xE585, 0x8708, + 0xE58A, 0x8709, + 0xE58D, 0x870A, + 0xE58B, 0x870D, + 0xE589, 0x8711, + 0xE583, 0x8712, + 0x9277, 0x8718, + 0xE594, 0x871A, + 0x96A8, 0x871C, + 0xE592, 0x8725, + 0xE593, 0x8729, + 0xE58E, 0x8734, + 0xE590, 0x8737, + 0xE591, 0x873B, + 0xE58F, 0x873F, + 0x90E4, 0x8749, + 0x9858, 0x874B, + 0xE598, 0x874C, + 0xE599, 0x874E, + 0xE59F, 0x8753, + 0x9049, 0x8755, + 0xE59B, 0x8757, + 0xE59E, 0x8759, + 0xE596, 0x875F, + 0xE595, 0x8760, + 0xE5A0, 0x8763, + 0x89DA, 0x8766, + 0xE59C, 0x8768, + 0xE5A1, 0x876A, + 0xE59D, 0x876E, + 0xE59A, 0x8774, + 0x92B1, 0x8776, + 0xE597, 0x8778, + 0x9488, 0x877F, + 0xE5A5, 0x8782, + 0x975A, 0x878D, + 0xE5A4, 0x879F, + 0xE5A3, 0x87A2, + 0xE5AC, 0x87AB, + 0xE5A6, 0x87AF, + 0xE5AE, 0x87B3, + 0x9786, 0x87BA, + 0xE5B1, 0x87BB, + 0xE5A8, 0x87BD, + 0xE5A9, 0x87C0, + 0xE5AD, 0x87C4, + 0xE5B0, 0x87C6, + 0xE5AF, 0x87C7, + 0xE5A7, 0x87CB, + 0xE5AA, 0x87D0, + 0xE5BB, 0x87D2, + 0xE5B4, 0x87E0, + 0xE5B2, 0x87EF, + 0xE5B3, 0x87F2, + 0xE5B8, 0x87F6, + 0xE5B9, 0x87F7, + 0x8A49, 0x87F9, + 0x8B61, 0x87FB, + 0xE5B7, 0x87FE, + 0xE5A2, 0x8805, + 0xE5B6, 0x880D, + 0xE5BA, 0x880E, + 0xE5B5, 0x880F, + 0xE5BC, 0x8811, + 0xE5BE, 0x8815, + 0xE5BD, 0x8816, + 0xE5C0, 0x8821, + 0xE5BF, 0x8822, + 0xE579, 0x8823, + 0xE5C4, 0x8827, + 0xE5C1, 0x8831, + 0xE5C2, 0x8836, + 0xE5C3, 0x8839, + 0xE5C5, 0x883B, + 0x8C8C, 0x8840, + 0xE5C7, 0x8842, + 0xE5C6, 0x8844, + 0x8F4F, 0x8846, + 0x8D73, 0x884C, + 0x9FA5, 0x884D, + 0xE5C8, 0x8852, + 0x8F70, 0x8853, + 0x8A58, 0x8857, + 0xE5C9, 0x8859, + 0x8971, 0x885B, + 0x8FD5, 0x885D, + 0xE5CA, 0x885E, + 0x8D74, 0x8861, + 0xE5CB, 0x8862, + 0x88DF, 0x8863, + 0x955C, 0x8868, + 0xE5CC, 0x886B, + 0x908A, 0x8870, + 0xE5D3, 0x8872, + 0xE5D0, 0x8875, + 0x928F, 0x8877, + 0xE5D1, 0x887D, + 0xE5CE, 0x887E, + 0x8BDC, 0x887F, + 0xE5CD, 0x8881, + 0xE5D4, 0x8882, + 0x8C55, 0x8888, + 0x91DC, 0x888B, + 0xE5DA, 0x888D, + 0xE5D6, 0x8892, + 0x91B3, 0x8896, + 0xE5D5, 0x8897, + 0xE5D8, 0x8899, + 0xE5CF, 0x889E, + 0xE5D9, 0x88A2, + 0xE5DB, 0x88A4, + 0x94ED, 0x88AB, + 0xE5D7, 0x88AE, + 0xE5DC, 0x88B0, + 0xE5DE, 0x88B1, + 0x8CD1, 0x88B4, + 0xE5D2, 0x88B5, + 0x88BF, 0x88B7, + 0xE5DD, 0x88BF, + 0x8DD9, 0x88C1, + 0x97F4, 0x88C2, + 0xE5DF, 0x88C3, + 0xE5E0, 0x88C4, + 0x9195, 0x88C5, + 0x97A0, 0x88CF, + 0xE5E1, 0x88D4, + 0x9754, 0x88D5, + 0xE5E2, 0x88D8, + 0xE5E3, 0x88D9, + 0x95E2, 0x88DC, + 0xE5E4, 0x88DD, + 0x8DBE, 0x88DF, + 0x97A1, 0x88E1, + 0xE5E9, 0x88E8, + 0xE5EA, 0x88F2, + 0x8FD6, 0x88F3, + 0xE5E8, 0x88F4, + 0x9787, 0x88F8, + 0xE5E5, 0x88F9, + 0xE5E7, 0x88FC, + 0x90BB, 0x88FD, + 0x909E, 0x88FE, + 0xE5E6, 0x8902, + 0xE5EB, 0x8904, + 0x95A1, 0x8907, + 0xE5ED, 0x890A, + 0xE5EC, 0x890C, + 0x8A8C, 0x8910, + 0x964A, 0x8912, + 0xE5EE, 0x8913, + 0xE5FA, 0x891D, + 0xE5F0, 0x891E, + 0xE5F1, 0x8925, + 0xE5F2, 0x892A, + 0xE5F3, 0x892B, + 0xE5F7, 0x8936, + 0xE5F8, 0x8938, + 0xE5F6, 0x893B, + 0xE5F4, 0x8941, + 0xE5EF, 0x8943, + 0xE5F5, 0x8944, + 0xE5F9, 0x894C, + 0xE8B5, 0x894D, + 0x89A6, 0x8956, + 0xE5FC, 0x895E, + 0x8BDD, 0x895F, + 0xE5FB, 0x8960, + 0xE641, 0x8964, + 0xE640, 0x8966, + 0xE643, 0x896A, + 0xE642, 0x896D, + 0xE644, 0x896F, + 0x8F50, 0x8972, + 0xE645, 0x8974, + 0xE646, 0x8977, + 0xE647, 0x897E, + 0x90BC, 0x897F, + 0x9776, 0x8981, + 0xE648, 0x8983, + 0x95A2, 0x8986, + 0x9465, 0x8987, + 0xE649, 0x8988, + 0xE64A, 0x898A, + 0x8CA9, 0x898B, + 0x8B4B, 0x898F, + 0xE64B, 0x8993, + 0x8E8B, 0x8996, + 0x9460, 0x8997, + 0xE64C, 0x8998, + 0x8A6F, 0x899A, + 0xE64D, 0x89A1, + 0xE64F, 0x89A6, + 0x9797, 0x89A7, + 0xE64E, 0x89A9, + 0x9065, 0x89AA, + 0xE650, 0x89AC, + 0xE651, 0x89AF, + 0xE652, 0x89B2, + 0x8ACF, 0x89B3, + 0xE653, 0x89BA, + 0xE654, 0x89BD, + 0xE655, 0x89BF, + 0xE656, 0x89C0, + 0x8A70, 0x89D2, + 0xE657, 0x89DA, + 0xE658, 0x89DC, + 0xE659, 0x89DD, + 0x89F0, 0x89E3, + 0x9047, 0x89E6, + 0xE65A, 0x89E7, + 0xE65B, 0x89F4, + 0xE65C, 0x89F8, + 0x8CBE, 0x8A00, + 0x92F9, 0x8A02, + 0xE65D, 0x8A03, + 0x8C76, 0x8A08, + 0x9075, 0x8A0A, + 0xE660, 0x8A0C, + 0x93A2, 0x8A0E, + 0xE65F, 0x8A10, + 0x8C50, 0x8A13, + 0xE65E, 0x8A16, + 0x91F5, 0x8A17, + 0x8B4C, 0x8A18, + 0xE661, 0x8A1B, + 0xE662, 0x8A1D, + 0x8FD7, 0x8A1F, + 0x8C8D, 0x8A23, + 0xE663, 0x8A25, + 0x964B, 0x8A2A, + 0x90DD, 0x8A2D, + 0x8B96, 0x8A31, + 0x96F3, 0x8A33, + 0x9169, 0x8A34, + 0xE664, 0x8A36, + 0x9066, 0x8A3A, + 0x9290, 0x8A3B, + 0x8FD8, 0x8A3C, + 0xE665, 0x8A41, + 0xE668, 0x8A46, + 0xE669, 0x8A48, + 0x8DBC, 0x8A50, + 0x91C0, 0x8A51, + 0xE667, 0x8A52, + 0x8FD9, 0x8A54, + 0x955D, 0x8A55, + 0xE666, 0x8A5B, + 0x8E8C, 0x8A5E, + 0x8972, 0x8A60, + 0xE66D, 0x8A62, + 0x8C77, 0x8A63, + 0x8E8E, 0x8A66, + 0x8E8D, 0x8A69, + 0x986C, 0x8A6B, + 0xE66C, 0x8A6C, + 0xE66B, 0x8A6D, + 0x9146, 0x8A6E, + 0x8B6C, 0x8A70, + 0x9862, 0x8A71, + 0x8A59, 0x8A72, + 0x8FDA, 0x8A73, + 0xE66A, 0x8A7C, + 0xE66F, 0x8A82, + 0xE670, 0x8A84, + 0xE66E, 0x8A85, + 0x8CD6, 0x8A87, + 0x975F, 0x8A89, + 0x8E8F, 0x8A8C, + 0x9446, 0x8A8D, + 0xE673, 0x8A91, + 0x90BE, 0x8A93, + 0x9261, 0x8A95, + 0x9755, 0x8A98, + 0xE676, 0x8A9A, + 0x8CEA, 0x8A9E, + 0x90BD, 0x8AA0, + 0xE672, 0x8AA1, + 0xE677, 0x8AA3, + 0x8CEB, 0x8AA4, + 0xE674, 0x8AA5, + 0xE675, 0x8AA6, + 0xE671, 0x8AA8, + 0x90E0, 0x8AAC, + 0x93C7, 0x8AAD, + 0x924E, 0x8AB0, + 0x89DB, 0x8AB2, + 0x94EE, 0x8AB9, + 0x8B62, 0x8ABC, + 0x92B2, 0x8ABF, + 0xE67A, 0x8AC2, + 0xE678, 0x8AC4, + 0x926B, 0x8AC7, + 0x90BF, 0x8ACB, + 0x8AD0, 0x8ACC, + 0xE679, 0x8ACD, + 0x907A, 0x8ACF, + 0x97C8, 0x8AD2, + 0x985F, 0x8AD6, + 0xE67B, 0x8ADA, + 0xE687, 0x8ADB, + 0x92B3, 0x8ADC, + 0xE686, 0x8ADE, + 0xE683, 0x8AE0, + 0xE68B, 0x8AE1, + 0xE684, 0x8AE2, + 0xE680, 0x8AE4, + 0x92FA, 0x8AE6, + 0xE67E, 0x8AE7, + 0xE67C, 0x8AEB, + 0x9740, 0x8AED, + 0x8E90, 0x8AEE, + 0xE681, 0x8AF1, + 0xE67D, 0x8AF3, + 0xE685, 0x8AF7, + 0x8F94, 0x8AF8, + 0x8CBF, 0x8AFA, + 0x91F8, 0x8AFE, + 0x9664, 0x8B00, + 0x8979, 0x8B01, + 0x88E0, 0x8B02, + 0x93A3, 0x8B04, + 0xE689, 0x8B07, + 0xE688, 0x8B0C, + 0x93E4, 0x8B0E, + 0xE68D, 0x8B10, + 0xE682, 0x8B14, + 0xE68C, 0x8B16, + 0xE68E, 0x8B17, + 0x8CAA, 0x8B19, + 0xE68A, 0x8B1A, + 0x8D75, 0x8B1B, + 0x8ED3, 0x8B1D, + 0xE68F, 0x8B20, + 0x9777, 0x8B21, + 0xE692, 0x8B26, + 0xE695, 0x8B28, + 0xE693, 0x8B2B, + 0x9554, 0x8B2C, + 0xE690, 0x8B33, + 0x8BDE, 0x8B39, + 0xE694, 0x8B3E, + 0xE696, 0x8B41, + 0xE69A, 0x8B49, + 0xE697, 0x8B4C, + 0xE699, 0x8B4E, + 0xE698, 0x8B4F, + 0xE69B, 0x8B56, + 0x8EAF, 0x8B58, + 0xE69D, 0x8B5A, + 0xE69C, 0x8B5B, + 0x9588, 0x8B5C, + 0xE69F, 0x8B5F, + 0x8C78, 0x8B66, + 0xE69E, 0x8B6B, + 0xE6A0, 0x8B6C, + 0xE6A1, 0x8B6F, + 0x8B63, 0x8B70, + 0xE3BF, 0x8B71, + 0x8FF7, 0x8B72, + 0xE6A2, 0x8B74, + 0x8CEC, 0x8B77, + 0xE6A3, 0x8B7D, + 0xE6A4, 0x8B80, + 0x8E5D, 0x8B83, + 0x9DCC, 0x8B8A, + 0xE6A5, 0x8B8C, + 0xE6A6, 0x8B8E, + 0x8F51, 0x8B90, + 0xE6A7, 0x8B92, + 0xE6A8, 0x8B93, + 0xE6A9, 0x8B96, + 0xE6AA, 0x8B99, + 0xE6AB, 0x8B9A, + 0x924A, 0x8C37, + 0xE6AC, 0x8C3A, + 0xE6AE, 0x8C3F, + 0xE6AD, 0x8C41, + 0x93A4, 0x8C46, + 0xE6AF, 0x8C48, + 0x964C, 0x8C4A, + 0xE6B0, 0x8C4C, + 0xE6B1, 0x8C4E, + 0xE6B2, 0x8C50, + 0xE6B3, 0x8C55, + 0x93D8, 0x8C5A, + 0x8FDB, 0x8C61, + 0xE6B4, 0x8C62, + 0x8D8B, 0x8C6A, + 0x98AC, 0x8C6B, + 0xE6B5, 0x8C6C, + 0xE6B6, 0x8C78, + 0x955E, 0x8C79, + 0xE6B7, 0x8C7A, + 0xE6BF, 0x8C7C, + 0xE6B8, 0x8C82, + 0xE6BA, 0x8C85, + 0xE6B9, 0x8C89, + 0xE6BB, 0x8C8A, + 0x9665, 0x8C8C, + 0xE6BC, 0x8C8D, + 0xE6BD, 0x8C8E, + 0xE6BE, 0x8C94, + 0xE6C0, 0x8C98, + 0x8A4C, 0x8C9D, + 0x92E5, 0x8C9E, + 0x9589, 0x8CA0, + 0x8DE0, 0x8CA1, + 0x8D76, 0x8CA2, + 0x956E, 0x8CA7, + 0x89DD, 0x8CA8, + 0x94CC, 0x8CA9, + 0xE6C3, 0x8CAA, + 0x8AD1, 0x8CAB, + 0x90D3, 0x8CAC, + 0xE6C2, 0x8CAD, + 0xE6C7, 0x8CAE, + 0x9299, 0x8CAF, + 0x96E1, 0x8CB0, + 0xE6C5, 0x8CB2, + 0xE6C6, 0x8CB3, + 0x8B4D, 0x8CB4, + 0xE6C8, 0x8CB6, + 0x9483, 0x8CB7, + 0x91DD, 0x8CB8, + 0x94EF, 0x8CBB, + 0x935C, 0x8CBC, + 0xE6C4, 0x8CBD, + 0x9666, 0x8CBF, + 0x89EA, 0x8CC0, + 0xE6CA, 0x8CC1, + 0x9847, 0x8CC2, + 0x92C0, 0x8CC3, + 0x9864, 0x8CC4, + 0x8E91, 0x8CC7, + 0xE6C9, 0x8CC8, + 0x91AF, 0x8CCA, + 0xE6DA, 0x8CCD, + 0x9147, 0x8CCE, + 0x93F6, 0x8CD1, + 0x956F, 0x8CD3, + 0xE6CD, 0x8CDA, + 0x8E5E, 0x8CDB, + 0x8E92, 0x8CDC, + 0x8FDC, 0x8CDE, + 0x9485, 0x8CE0, + 0x8CAB, 0x8CE2, + 0xE6CC, 0x8CE3, + 0xE6CB, 0x8CE4, + 0x958A, 0x8CE6, + 0x8EBF, 0x8CEA, + 0x9371, 0x8CED, + 0xE6CF, 0x8CFA, + 0xE6D0, 0x8CFB, + 0x8D77, 0x8CFC, + 0xE6CE, 0x8CFD, + 0xE6D1, 0x8D04, + 0xE6D2, 0x8D05, + 0xE6D4, 0x8D07, + 0x91A1, 0x8D08, + 0xE6D3, 0x8D0A, + 0x8AE4, 0x8D0B, + 0xE6D6, 0x8D0D, + 0xE6D5, 0x8D0F, + 0xE6D7, 0x8D10, + 0xE6D9, 0x8D13, + 0xE6DB, 0x8D14, + 0xE6DC, 0x8D16, + 0x90D4, 0x8D64, + 0x8ECD, 0x8D66, + 0xE6DD, 0x8D67, + 0x8A71, 0x8D6B, + 0xE6DE, 0x8D6D, + 0x9196, 0x8D70, + 0xE6DF, 0x8D71, + 0xE6E0, 0x8D73, + 0x958B, 0x8D74, + 0x8B4E, 0x8D77, + 0xE6E1, 0x8D81, + 0x92B4, 0x8D85, + 0x897A, 0x8D8A, + 0xE6E2, 0x8D99, + 0x8EEF, 0x8DA3, + 0x9096, 0x8DA8, + 0x91AB, 0x8DB3, + 0xE6E5, 0x8DBA, + 0xE6E4, 0x8DBE, + 0xE6E3, 0x8DC2, + 0xE6EB, 0x8DCB, + 0xE6E9, 0x8DCC, + 0xE6E6, 0x8DCF, + 0xE6E8, 0x8DD6, + 0xE6E7, 0x8DDA, + 0xE6EA, 0x8DDB, + 0x8B97, 0x8DDD, + 0xE6EE, 0x8DDF, + 0x90D5, 0x8DE1, + 0xE6EF, 0x8DE3, + 0x8CD7, 0x8DE8, + 0xE6EC, 0x8DEA, + 0xE6ED, 0x8DEB, + 0x9848, 0x8DEF, + 0x92B5, 0x8DF3, + 0x9148, 0x8DF5, + 0xE6F0, 0x8DFC, + 0xE6F3, 0x8DFF, + 0xE6F1, 0x8E08, + 0xE6F2, 0x8E09, + 0x9778, 0x8E0A, + 0x93A5, 0x8E0F, + 0xE6F6, 0x8E10, + 0xE6F4, 0x8E1D, + 0xE6F5, 0x8E1E, + 0xE6F7, 0x8E1F, + 0xE748, 0x8E2A, + 0xE6FA, 0x8E30, + 0xE6FB, 0x8E34, + 0xE6F9, 0x8E35, + 0xE6F8, 0x8E42, + 0x92FB, 0x8E44, + 0xE740, 0x8E47, + 0xE744, 0x8E48, + 0xE741, 0x8E49, + 0xE6FC, 0x8E4A, + 0xE742, 0x8E4C, + 0xE743, 0x8E50, + 0xE74A, 0x8E55, + 0xE745, 0x8E59, + 0x90D6, 0x8E5F, + 0xE747, 0x8E60, + 0xE749, 0x8E63, + 0xE746, 0x8E64, + 0xE74C, 0x8E72, + 0x8F52, 0x8E74, + 0xE74B, 0x8E76, + 0xE74D, 0x8E7C, + 0xE74E, 0x8E81, + 0xE751, 0x8E84, + 0xE750, 0x8E85, + 0xE74F, 0x8E87, + 0xE753, 0x8E8A, + 0xE752, 0x8E8B, + 0x96F4, 0x8E8D, + 0xE755, 0x8E91, + 0xE754, 0x8E93, + 0xE756, 0x8E94, + 0xE757, 0x8E99, + 0xE759, 0x8EA1, + 0xE758, 0x8EAA, + 0x9067, 0x8EAB, + 0xE75A, 0x8EAC, + 0x8BEB, 0x8EAF, + 0xE75B, 0x8EB0, + 0xE75D, 0x8EB1, + 0xE75E, 0x8EBE, + 0xE75F, 0x8EC5, + 0xE75C, 0x8EC6, + 0xE760, 0x8EC8, + 0x8ED4, 0x8ECA, + 0xE761, 0x8ECB, + 0x8B4F, 0x8ECC, + 0x8C52, 0x8ECD, + 0x8CAC, 0x8ED2, + 0xE762, 0x8EDB, + 0x93EE, 0x8EDF, + 0x935D, 0x8EE2, + 0xE763, 0x8EE3, + 0xE766, 0x8EEB, + 0x8EB2, 0x8EF8, + 0xE765, 0x8EFB, + 0xE764, 0x8EFC, + 0x8C79, 0x8EFD, + 0xE767, 0x8EFE, + 0x8A72, 0x8F03, + 0xE769, 0x8F05, + 0x8DDA, 0x8F09, + 0xE768, 0x8F0A, + 0xE771, 0x8F0C, + 0xE76B, 0x8F12, + 0xE76D, 0x8F13, + 0x95E3, 0x8F14, + 0xE76A, 0x8F15, + 0xE76C, 0x8F19, + 0xE770, 0x8F1B, + 0xE76E, 0x8F1C, + 0x8B50, 0x8F1D, + 0xE76F, 0x8F1F, + 0xE772, 0x8F26, + 0x9479, 0x8F29, + 0x97D6, 0x8F2A, + 0x8F53, 0x8F2F, + 0xE773, 0x8F33, + 0x9741, 0x8F38, + 0xE775, 0x8F39, + 0xE774, 0x8F3B, + 0xE778, 0x8F3E, + 0x9760, 0x8F3F, + 0xE777, 0x8F42, + 0x8A8D, 0x8F44, + 0xE776, 0x8F45, + 0xE77B, 0x8F46, + 0xE77A, 0x8F49, + 0xE779, 0x8F4C, + 0x9351, 0x8F4D, + 0xE77C, 0x8F4E, + 0xE77D, 0x8F57, + 0xE77E, 0x8F5C, + 0x8D8C, 0x8F5F, + 0x8C44, 0x8F61, + 0xE780, 0x8F62, + 0xE781, 0x8F63, + 0xE782, 0x8F64, + 0x9068, 0x8F9B, + 0xE783, 0x8F9C, + 0x8EAB, 0x8F9E, + 0xE784, 0x8F9F, + 0xE785, 0x8FA3, + 0x999F, 0x8FA7, + 0x999E, 0x8FA8, + 0xE786, 0x8FAD, + 0xE390, 0x8FAE, + 0xE787, 0x8FAF, + 0x9243, 0x8FB0, + 0x904A, 0x8FB1, + 0x945F, 0x8FB2, + 0xE788, 0x8FB7, + 0x95D3, 0x8FBA, + 0x92D2, 0x8FBB, + 0x8D9E, 0x8FBC, + 0x9248, 0x8FBF, + 0x8949, 0x8FC2, + 0x9698, 0x8FC4, + 0x9076, 0x8FC5, + 0x8C7D, 0x8FCE, + 0x8BDF, 0x8FD1, + 0x95D4, 0x8FD4, + 0xE789, 0x8FDA, + 0xE78B, 0x8FE2, + 0xE78A, 0x8FE5, + 0x89DE, 0x8FE6, + 0x93F4, 0x8FE9, + 0xE78C, 0x8FEA, + 0x9497, 0x8FEB, + 0x9352, 0x8FED, + 0xE78D, 0x8FEF, + 0x8F71, 0x8FF0, + 0xE78F, 0x8FF4, + 0x96C0, 0x8FF7, + 0xE79E, 0x8FF8, + 0xE791, 0x8FF9, + 0xE792, 0x8FFA, + 0x92C7, 0x8FFD, + 0x91DE, 0x9000, + 0x9197, 0x9001, + 0x93A6, 0x9003, + 0xE790, 0x9005, + 0x8B74, 0x9006, + 0xE799, 0x900B, + 0xE796, 0x900D, + 0xE7A3, 0x900E, + 0x93A7, 0x900F, + 0x9280, 0x9010, + 0xE793, 0x9011, + 0x92FC, 0x9013, + 0x9372, 0x9014, + 0xE794, 0x9015, + 0xE798, 0x9016, + 0x9080, 0x9017, + 0x9487, 0x9019, + 0x92CA, 0x901A, + 0x90C0, 0x901D, + 0xE797, 0x901E, + 0x91AC, 0x901F, + 0x91A2, 0x9020, + 0xE795, 0x9021, + 0x88A7, 0x9022, + 0x9841, 0x9023, + 0xE79A, 0x9027, + 0x91DF, 0x902E, + 0x8F54, 0x9031, + 0x9069, 0x9032, + 0xE79C, 0x9035, + 0xE79B, 0x9036, + 0x88ED, 0x9038, + 0xE79D, 0x9039, + 0x954E, 0x903C, + 0xE7A5, 0x903E, + 0x93D9, 0x9041, + 0x908B, 0x9042, + 0x9278, 0x9045, + 0x8BF6, 0x9047, + 0xE7A4, 0x9049, + 0x9756, 0x904A, + 0x895E, 0x904B, + 0x95D5, 0x904D, + 0x89DF, 0x904E, + 0xE79F, 0x904F, + 0xE7A0, 0x9050, + 0xE7A1, 0x9051, + 0xE7A2, 0x9052, + 0x93B9, 0x9053, + 0x9242, 0x9054, + 0x88E1, 0x9055, + 0xE7A6, 0x9056, + 0xE7A7, 0x9058, + 0xEAA1, 0x9059, + 0x91BB, 0x905C, + 0xE7A8, 0x905E, + 0x8993, 0x9060, + 0x916B, 0x9061, + 0x8CAD, 0x9063, + 0x9779, 0x9065, + 0xE7A9, 0x9068, + 0x934B, 0x9069, + 0x9198, 0x906D, + 0x8ED5, 0x906E, + 0xE7AA, 0x906F, + 0xE7AD, 0x9072, + 0x8F85, 0x9075, + 0xE7AB, 0x9076, + 0x914A, 0x9077, + 0x9149, 0x9078, + 0x88E2, 0x907A, + 0x97C9, 0x907C, + 0xE7AF, 0x907D, + 0x94F0, 0x907F, + 0xE7B1, 0x9080, + 0xE7B0, 0x9081, + 0xE7AE, 0x9082, + 0xE284, 0x9083, + 0x8AD2, 0x9084, + 0xE78E, 0x9087, + 0xE7B3, 0x9089, + 0xE7B2, 0x908A, + 0xE7B4, 0x908F, + 0x9757, 0x9091, + 0x93DF, 0x90A3, + 0x964D, 0x90A6, + 0xE7B5, 0x90A8, + 0x8ED7, 0x90AA, + 0xE7B6, 0x90AF, + 0xE7B7, 0x90B1, + 0xE7B8, 0x90B5, + 0x9340, 0x90B8, + 0x88E8, 0x90C1, + 0x8D78, 0x90CA, + 0x9859, 0x90CE, + 0xE7BC, 0x90DB, + 0x8C53, 0x90E1, + 0xE7B9, 0x90E2, + 0xE7BA, 0x90E4, + 0x9594, 0x90E8, + 0x8A73, 0x90ED, + 0x9758, 0x90F5, + 0x8BBD, 0x90F7, + 0x9373, 0x90FD, + 0xE7BD, 0x9102, + 0xE7BE, 0x9112, + 0xE7BF, 0x9119, + 0x9341, 0x912D, + 0xE7C1, 0x9130, + 0xE7C0, 0x9132, + 0x93D1, 0x9149, + 0xE7C2, 0x914A, + 0x8F55, 0x914B, + 0x8EDE, 0x914C, + 0x947A, 0x914D, + 0x9291, 0x914E, + 0x8EF0, 0x9152, + 0x908C, 0x9154, + 0xE7C3, 0x9156, + 0xE7C4, 0x9158, + 0x907C, 0x9162, + 0xE7C5, 0x9163, + 0xE7C6, 0x9165, + 0xE7C7, 0x9169, + 0x978F, 0x916A, + 0x8F56, 0x916C, + 0xE7C9, 0x9172, + 0xE7C8, 0x9173, + 0x8D79, 0x9175, + 0x8D93, 0x9177, + 0x8E5F, 0x9178, + 0xE7CC, 0x9182, + 0x8F86, 0x9187, + 0xE7CB, 0x9189, + 0xE7CA, 0x918B, + 0x91E7, 0x918D, + 0x8CED, 0x9190, + 0x90C1, 0x9192, + 0x94AE, 0x9197, + 0x8F58, 0x919C, + 0xE7CD, 0x91A2, + 0x8FDD, 0x91A4, + 0xE7D0, 0x91AA, + 0xE7CE, 0x91AB, + 0xE7CF, 0x91AF, + 0xE7D2, 0x91B4, + 0xE7D1, 0x91B5, + 0x8FF8, 0x91B8, + 0xE7D3, 0x91BA, + 0xE7D4, 0x91C0, + 0xE7D5, 0x91C1, + 0x94CE, 0x91C6, + 0x8DD1, 0x91C7, + 0x8EDF, 0x91C8, + 0xE7D6, 0x91C9, + 0xE7D7, 0x91CB, + 0x97A2, 0x91CC, + 0x8F64, 0x91CD, + 0x96EC, 0x91CE, + 0x97CA, 0x91CF, + 0xE7D8, 0x91D0, + 0x8BE0, 0x91D1, + 0xE7D9, 0x91D6, + 0x9342, 0x91D8, + 0xE7DC, 0x91DB, + 0x8A98, 0x91DC, + 0x906A, 0x91DD, + 0xE7DA, 0x91DF, + 0xE7DB, 0x91E1, + 0x92DE, 0x91E3, + 0x9674, 0x91E6, + 0x8BFA, 0x91E7, + 0xE7DE, 0x91F5, + 0xE7DF, 0x91F6, + 0xE7DD, 0x91FC, + 0xE7E1, 0x91FF, + 0x93DD, 0x920D, + 0x8A62, 0x920E, + 0xE7E5, 0x9211, + 0xE7E2, 0x9214, + 0xE7E4, 0x9215, + 0xE7E0, 0x921E, + 0xE86E, 0x9229, + 0xE7E3, 0x922C, + 0x97E9, 0x9234, + 0x8CD8, 0x9237, + 0xE7ED, 0x923F, + 0x9353, 0x9244, + 0xE7E8, 0x9245, + 0xE7EB, 0x9248, + 0xE7E9, 0x9249, + 0xE7EE, 0x924B, + 0xE7EF, 0x9250, + 0xE7E7, 0x9257, + 0xE7F4, 0x925A, + 0x8994, 0x925B, + 0xE7E6, 0x925E, + 0x94AB, 0x9262, + 0xE7EA, 0x9264, + 0x8FDE, 0x9266, + 0x8D7A, 0x9271, + 0x9667, 0x927E, + 0x8BE2, 0x9280, + 0x8F65, 0x9283, + 0x93BA, 0x9285, + 0x914C, 0x9291, + 0xE7F2, 0x9293, + 0xE7EC, 0x9295, + 0xE7F1, 0x9296, + 0x96C1, 0x9298, + 0x92B6, 0x929A, + 0xE7F3, 0x929B, + 0xE7F0, 0x929C, + 0x914B, 0x92AD, + 0xE7F7, 0x92B7, + 0xE7F6, 0x92B9, + 0xE7F5, 0x92CF, + 0x964E, 0x92D2, + 0x8F9B, 0x92E4, + 0xE7F8, 0x92E9, + 0x95DD, 0x92EA, + 0x8973, 0x92ED, + 0x9565, 0x92F2, + 0x9292, 0x92F3, + 0x8B98, 0x92F8, + 0xE7FA, 0x92FA, + 0x8D7C, 0x92FC, + 0x8E4B, 0x9306, + 0xE7F9, 0x930F, + 0x908D, 0x9310, + 0x908E, 0x9318, + 0xE840, 0x9319, + 0xE842, 0x931A, + 0x8FF9, 0x9320, + 0xE841, 0x9322, + 0xE843, 0x9323, + 0x8BD1, 0x9326, + 0x9564, 0x9328, + 0x8EE0, 0x932B, + 0x9842, 0x932C, + 0xE7FC, 0x932E, + 0x8DF6, 0x932F, + 0x985E, 0x9332, + 0xE845, 0x9335, + 0xE844, 0x933A, + 0xE846, 0x933B, + 0xE7FB, 0x9344, + 0x93E7, 0x934B, + 0x9374, 0x934D, + 0x92D5, 0x9354, + 0xE84B, 0x9356, + 0x9262, 0x935B, + 0xE847, 0x935C, + 0xE848, 0x9360, + 0x8C4C, 0x936C, + 0xE84A, 0x936E, + 0x8CAE, 0x9375, + 0xE849, 0x937C, + 0x8FDF, 0x937E, + 0x8A99, 0x938C, + 0xE84F, 0x9394, + 0x8DBD, 0x9396, + 0x9199, 0x9397, + 0x92C8, 0x939A, + 0x8A5A, 0x93A7, + 0xE84D, 0x93AC, + 0xE84E, 0x93AD, + 0x92C1, 0x93AE, + 0xE84C, 0x93B0, + 0xE850, 0x93B9, + 0xE856, 0x93C3, + 0xE859, 0x93C8, + 0xE858, 0x93D0, + 0x934C, 0x93D1, + 0xE851, 0x93D6, + 0xE852, 0x93D7, + 0xE855, 0x93D8, + 0xE857, 0x93DD, + 0x8BBE, 0x93E1, + 0xE85A, 0x93E4, + 0xE854, 0x93E5, + 0xE853, 0x93E8, + 0xE85E, 0x9403, + 0xE85F, 0x9407, + 0xE860, 0x9410, + 0xE85D, 0x9413, + 0xE85C, 0x9414, + 0x8FE0, 0x9418, + 0x93A8, 0x9419, + 0xE85B, 0x941A, + 0xE864, 0x9421, + 0xE862, 0x942B, + 0xE863, 0x9435, + 0xE861, 0x9436, + 0x91F6, 0x9438, + 0xE865, 0x943A, + 0xE866, 0x9441, + 0xE868, 0x9444, + 0x8AD3, 0x9451, + 0xE867, 0x9452, + 0x96F8, 0x9453, + 0xE873, 0x945A, + 0xE869, 0x945B, + 0xE86C, 0x945E, + 0xE86A, 0x9460, + 0xE86B, 0x9462, + 0xE86D, 0x946A, + 0xE86F, 0x9470, + 0xE870, 0x9475, + 0xE871, 0x9477, + 0xE874, 0x947C, + 0xE872, 0x947D, + 0xE875, 0x947E, + 0xE877, 0x947F, + 0xE876, 0x9481, + 0x92B7, 0x9577, + 0x96E5, 0x9580, + 0xE878, 0x9582, + 0x914D, 0x9583, + 0xE879, 0x9587, + 0x95C2, 0x9589, + 0xE87A, 0x958A, + 0x8A4A, 0x958B, + 0x895B, 0x958F, + 0x8AD5, 0x9591, + 0x8AD4, 0x9593, + 0xE87B, 0x9594, + 0xE87C, 0x9596, + 0xE87D, 0x9598, + 0xE87E, 0x9599, + 0xE880, 0x95A0, + 0x8AD6, 0x95A2, + 0x8A74, 0x95A3, + 0x8D7D, 0x95A4, + 0x94B4, 0x95A5, + 0xE882, 0x95A7, + 0xE881, 0x95A8, + 0xE883, 0x95AD, + 0x897B, 0x95B2, + 0xE886, 0x95B9, + 0xE885, 0x95BB, + 0xE884, 0x95BC, + 0xE887, 0x95BE, + 0xE88A, 0x95C3, + 0x88C5, 0x95C7, + 0xE888, 0x95CA, + 0xE88C, 0x95CC, + 0xE88B, 0x95CD, + 0xE88E, 0x95D4, + 0xE88D, 0x95D5, + 0xE88F, 0x95D6, + 0x93AC, 0x95D8, + 0xE890, 0x95DC, + 0xE891, 0x95E1, + 0xE893, 0x95E2, + 0xE892, 0x95E5, + 0x958C, 0x961C, + 0xE894, 0x9621, + 0xE895, 0x9628, + 0x8DE3, 0x962A, + 0xE896, 0x962E, + 0xE897, 0x962F, + 0x9668, 0x9632, + 0x916A, 0x963B, + 0x88A2, 0x963F, + 0x91C9, 0x9640, + 0xE898, 0x9642, + 0x958D, 0x9644, + 0xE89B, 0x964B, + 0xE899, 0x964C, + 0x8D7E, 0x964D, + 0xE89A, 0x964F, + 0x8CC0, 0x9650, + 0x95C3, 0x965B, + 0xE89D, 0x965C, + 0xE89F, 0x965D, + 0xE89E, 0x965E, + 0xE8A0, 0x965F, + 0x8940, 0x9662, + 0x9077, 0x9663, + 0x8F9C, 0x9664, + 0x8AD7, 0x9665, + 0xE8A1, 0x9666, + 0x9486, 0x966A, + 0xE8A3, 0x966C, + 0x8941, 0x9670, + 0xE8A2, 0x9672, + 0x92C2, 0x9673, + 0x97CB, 0x9675, + 0x93A9, 0x9676, + 0xE89C, 0x9677, + 0x97A4, 0x9678, + 0x8CAF, 0x967A, + 0x977A, 0x967D, + 0x8BF7, 0x9685, + 0x97B2, 0x9686, + 0x8C47, 0x9688, + 0x91E0, 0x968A, + 0xE440, 0x968B, + 0xE8A4, 0x968D, + 0x8A4B, 0x968E, + 0x908F, 0x968F, + 0x8A75, 0x9694, + 0xE8A6, 0x9695, + 0xE8A7, 0x9697, + 0xE8A5, 0x9698, + 0x8C84, 0x9699, + 0x8DDB, 0x969B, + 0x8FE1, 0x969C, + 0x8942, 0x96A0, + 0x97D7, 0x96A3, + 0xE8A9, 0x96A7, + 0xE7AC, 0x96A8, + 0xE8A8, 0x96AA, + 0xE8AC, 0x96B0, + 0xE8AA, 0x96B1, + 0xE8AB, 0x96B2, + 0xE8AD, 0x96B4, + 0xE8AE, 0x96B6, + 0x97EA, 0x96B7, + 0xE8AF, 0x96B8, + 0xE8B0, 0x96B9, + 0x90C7, 0x96BB, + 0x94B9, 0x96BC, + 0x909D, 0x96C0, + 0x8AE5, 0x96C1, + 0x9759, 0x96C4, + 0x89EB, 0x96C5, + 0x8F57, 0x96C6, + 0x8CD9, 0x96C7, + 0xE8B3, 0x96C9, + 0xE8B2, 0x96CB, + 0x8E93, 0x96CC, + 0xE8B4, 0x96CD, + 0xE8B1, 0x96CE, + 0x8E47, 0x96D1, + 0xE8B8, 0x96D5, + 0xE5AB, 0x96D6, + 0x99D4, 0x96D9, + 0x9097, 0x96DB, + 0xE8B6, 0x96DC, + 0x97A3, 0x96E2, + 0x93EF, 0x96E3, + 0x894A, 0x96E8, + 0x90E1, 0x96EA, + 0x8EB4, 0x96EB, + 0x95B5, 0x96F0, + 0x895F, 0x96F2, + 0x97EB, 0x96F6, + 0x978B, 0x96F7, + 0xE8B9, 0x96F9, + 0x9364, 0x96FB, + 0x8EF9, 0x9700, + 0xE8BA, 0x9704, + 0xE8BB, 0x9706, + 0x906B, 0x9707, + 0xE8BC, 0x9708, + 0x97EC, 0x970A, + 0xE8B7, 0x970D, + 0xE8BE, 0x970E, + 0xE8C0, 0x970F, + 0xE8BF, 0x9711, + 0xE8BD, 0x9713, + 0xE8C1, 0x9716, + 0xE8C2, 0x9719, + 0x919A, 0x971C, + 0x89E0, 0x971E, + 0xE8C3, 0x9724, + 0x96B6, 0x9727, + 0xE8C4, 0x972A, + 0xE8C5, 0x9730, + 0x9849, 0x9732, + 0x9E50, 0x9738, + 0xE8C6, 0x9739, + 0xE8C7, 0x973D, + 0xE8C8, 0x973E, + 0xE8CC, 0x9742, + 0xE8C9, 0x9744, + 0xE8CA, 0x9746, + 0xE8CB, 0x9748, + 0xE8CD, 0x9749, + 0x90C2, 0x9752, + 0x96F5, 0x9756, + 0x90C3, 0x9759, + 0xE8CE, 0x975C, + 0x94F1, 0x975E, + 0xE8CF, 0x9760, + 0xEA72, 0x9761, + 0x96CA, 0x9762, + 0xE8D0, 0x9764, + 0xE8D1, 0x9766, + 0xE8D2, 0x9768, + 0x8A76, 0x9769, + 0xE8D4, 0x976B, + 0x9078, 0x976D, + 0xE8D5, 0x9771, + 0x8C43, 0x9774, + 0xE8D6, 0x9779, + 0xE8DA, 0x977A, + 0xE8D8, 0x977C, + 0xE8D9, 0x9781, + 0x8A93, 0x9784, + 0xE8D7, 0x9785, + 0xE8DB, 0x9786, + 0xE8DC, 0x978B, + 0x88C6, 0x978D, + 0xE8DD, 0x978F, + 0xE8DE, 0x9790, + 0x8FE2, 0x9798, + 0xE8DF, 0x979C, + 0x8B66, 0x97A0, + 0xE8E2, 0x97A3, + 0xE8E1, 0x97A6, + 0xE8E0, 0x97A8, + 0xE691, 0x97AB, + 0x95DA, 0x97AD, + 0xE8E3, 0x97B3, + 0xE8E4, 0x97B4, + 0xE8E5, 0x97C3, + 0xE8E6, 0x97C6, + 0xE8E7, 0x97C8, + 0xE8E8, 0x97CB, + 0x8AD8, 0x97D3, + 0xE8E9, 0x97DC, + 0xE8EA, 0x97ED, + 0x9442, 0x97EE, + 0xE8EC, 0x97F2, + 0x89B9, 0x97F3, + 0xE8EF, 0x97F5, + 0xE8EE, 0x97F6, + 0x8943, 0x97FB, + 0x8BBF, 0x97FF, + 0x95C5, 0x9801, + 0x92B8, 0x9802, + 0x8DA0, 0x9803, + 0x8D80, 0x9805, + 0x8F87, 0x9806, + 0x907B, 0x9808, + 0xE8F1, 0x980C, + 0xE8F0, 0x980F, + 0x9761, 0x9810, + 0x8AE6, 0x9811, + 0x94D0, 0x9812, + 0x93DA, 0x9813, + 0x909C, 0x9817, + 0x97CC, 0x9818, + 0x8C7A, 0x981A, + 0xE8F4, 0x9821, + 0xE8F3, 0x9824, + 0x966A, 0x982C, + 0x93AA, 0x982D, + 0x896F, 0x9834, + 0xE8F5, 0x9837, + 0xE8F2, 0x9838, + 0x9570, 0x983B, + 0x978A, 0x983C, + 0xE8F6, 0x983D, + 0xE8F7, 0x9846, + 0xE8F9, 0x984B, + 0x91E8, 0x984C, + 0x8A7A, 0x984D, + 0x8A7B, 0x984E, + 0xE8F8, 0x984F, + 0x8AE7, 0x9854, + 0x8CB0, 0x9855, + 0x8AE8, 0x9858, + 0x935E, 0x985B, + 0x97DE, 0x985E, + 0x8CDA, 0x9867, + 0xE8FA, 0x986B, + 0xE8FB, 0x986F, + 0xE8FC, 0x9870, + 0xE940, 0x9871, + 0xE942, 0x9873, + 0xE941, 0x9874, + 0x9597, 0x98A8, + 0xE943, 0x98AA, + 0xE944, 0x98AF, + 0xE945, 0x98B1, + 0xE946, 0x98B6, + 0xE948, 0x98C3, + 0xE947, 0x98C4, + 0xE949, 0x98C6, + 0x94F2, 0x98DB, + 0xE3CA, 0x98DC, + 0x9048, 0x98DF, + 0x8B51, 0x98E2, + 0xE94A, 0x98E9, + 0xE94B, 0x98EB, + 0x99AA, 0x98ED, + 0x9F5A, 0x98EE, + 0x94D1, 0x98EF, + 0x88F9, 0x98F2, + 0x88B9, 0x98F4, + 0x8E94, 0x98FC, + 0x964F, 0x98FD, + 0x8FFC, 0x98FE, + 0xE94C, 0x9903, + 0x96DD, 0x9905, + 0xE94D, 0x9909, + 0x977B, 0x990A, + 0x8961, 0x990C, + 0x8E60, 0x9910, + 0xE94E, 0x9912, + 0x89EC, 0x9913, + 0xE94F, 0x9914, + 0xE950, 0x9918, + 0xE952, 0x991D, + 0xE953, 0x991E, + 0xE955, 0x9920, + 0xE951, 0x9921, + 0xE954, 0x9924, + 0x8AD9, 0x9928, + 0xE956, 0x992C, + 0xE957, 0x992E, + 0xE958, 0x993D, + 0xE959, 0x993E, + 0xE95A, 0x9942, + 0xE95C, 0x9945, + 0xE95B, 0x9949, + 0xE95E, 0x994B, + 0xE961, 0x994C, + 0xE95D, 0x9950, + 0xE95F, 0x9951, + 0xE960, 0x9952, + 0xE962, 0x9955, + 0x8BC0, 0x9957, + 0x8EF1, 0x9996, + 0xE963, 0x9997, + 0xE964, 0x9998, + 0x8D81, 0x9999, + 0xE965, 0x99A5, + 0x8A5D, 0x99A8, + 0x946E, 0x99AC, + 0xE966, 0x99AD, + 0xE967, 0x99AE, + 0x9279, 0x99B3, + 0x93E9, 0x99B4, + 0xE968, 0x99BC, + 0x949D, 0x99C1, + 0x91CA, 0x99C4, + 0x8977, 0x99C5, + 0x8BEC, 0x99C6, + 0x8BED, 0x99C8, + 0x9293, 0x99D0, + 0xE96D, 0x99D1, + 0x8BEE, 0x99D2, + 0x89ED, 0x99D5, + 0xE96C, 0x99D8, + 0xE96A, 0x99DB, + 0xE96B, 0x99DD, + 0xE969, 0x99DF, + 0xE977, 0x99E2, + 0xE96E, 0x99ED, + 0xE96F, 0x99EE, + 0xE970, 0x99F1, + 0xE971, 0x99F2, + 0xE973, 0x99F8, + 0xE972, 0x99FB, + 0x8F78, 0x99FF, + 0xE974, 0x9A01, + 0xE976, 0x9A05, + 0x8B52, 0x9A0E, + 0xE975, 0x9A0F, + 0x919B, 0x9A12, + 0x8CB1, 0x9A13, + 0xE978, 0x9A19, + 0x91CB, 0x9A28, + 0xE979, 0x9A2B, + 0x93AB, 0x9A30, + 0xE97A, 0x9A37, + 0xE980, 0x9A3E, + 0xE97D, 0x9A40, + 0xE97C, 0x9A42, + 0xE97E, 0x9A43, + 0xE97B, 0x9A45, + 0xE982, 0x9A4D, + 0xE981, 0x9A55, + 0xE984, 0x9A57, + 0x8BC1, 0x9A5A, + 0xE983, 0x9A5B, + 0xE985, 0x9A5F, + 0xE986, 0x9A62, + 0xE988, 0x9A64, + 0xE987, 0x9A65, + 0xE989, 0x9A69, + 0xE98B, 0x9A6A, + 0xE98A, 0x9A6B, + 0x8D9C, 0x9AA8, + 0xE98C, 0x9AAD, + 0xE98D, 0x9AB0, + 0x8A5B, 0x9AB8, + 0xE98E, 0x9ABC, + 0xE98F, 0x9AC0, + 0x9091, 0x9AC4, + 0xE990, 0x9ACF, + 0xE991, 0x9AD1, + 0xE992, 0x9AD3, + 0xE993, 0x9AD4, + 0x8D82, 0x9AD8, + 0xE994, 0x9ADE, + 0xE995, 0x9ADF, + 0xE996, 0x9AE2, + 0xE997, 0x9AE3, + 0xE998, 0x9AE6, + 0x94AF, 0x9AEA, + 0xE99A, 0x9AEB, + 0x9545, 0x9AED, + 0xE99B, 0x9AEE, + 0xE999, 0x9AEF, + 0xE99D, 0x9AF1, + 0xE99C, 0x9AF4, + 0xE99E, 0x9AF7, + 0xE99F, 0x9AFB, + 0xE9A0, 0x9B06, + 0xE9A1, 0x9B18, + 0xE9A2, 0x9B1A, + 0xE9A3, 0x9B1F, + 0xE9A4, 0x9B22, + 0xE9A5, 0x9B23, + 0xE9A6, 0x9B25, + 0xE9A7, 0x9B27, + 0xE9A8, 0x9B28, + 0xE9A9, 0x9B29, + 0xE9AA, 0x9B2A, + 0xE9AB, 0x9B2E, + 0xE9AC, 0x9B2F, + 0x9F54, 0x9B31, + 0xE9AD, 0x9B32, + 0xE2F6, 0x9B3B, + 0x8B53, 0x9B3C, + 0x8A40, 0x9B41, + 0x8DB0, 0x9B42, + 0xE9AF, 0x9B43, + 0xE9AE, 0x9B44, + 0x96A3, 0x9B45, + 0xE9B1, 0x9B4D, + 0xE9B2, 0x9B4E, + 0xE9B0, 0x9B4F, + 0xE9B3, 0x9B51, + 0x9682, 0x9B54, + 0xE9B4, 0x9B58, + 0x8B9B, 0x9B5A, + 0x9844, 0x9B6F, + 0xE9B5, 0x9B74, + 0xE9B7, 0x9B83, + 0x88BC, 0x9B8E, + 0xE9B8, 0x9B91, + 0x95A9, 0x9B92, + 0xE9B6, 0x9B93, + 0xE9B9, 0x9B96, + 0xE9BA, 0x9B97, + 0xE9BB, 0x9B9F, + 0xE9BC, 0x9BA0, + 0xE9BD, 0x9BA8, + 0x968E, 0x9BAA, + 0x8E4C, 0x9BAB, + 0x8DF8, 0x9BAD, + 0x914E, 0x9BAE, + 0xE9BE, 0x9BB4, + 0xE9C1, 0x9BB9, + 0xE9BF, 0x9BC0, + 0xE9C2, 0x9BC6, + 0x8CEF, 0x9BC9, + 0xE9C0, 0x9BCA, + 0xE9C3, 0x9BCF, + 0xE9C4, 0x9BD1, + 0xE9C5, 0x9BD2, + 0xE9C9, 0x9BD4, + 0x8E49, 0x9BD6, + 0x91E2, 0x9BDB, + 0xE9CA, 0x9BE1, + 0xE9C7, 0x9BE2, + 0xE9C6, 0x9BE3, + 0xE9C8, 0x9BE4, + 0x8C7E, 0x9BE8, + 0xE9CE, 0x9BF0, + 0xE9CD, 0x9BF1, + 0xE9CC, 0x9BF2, + 0x88B1, 0x9BF5, + 0xE9D8, 0x9C04, + 0xE9D4, 0x9C06, + 0xE9D5, 0x9C08, + 0xE9D1, 0x9C09, + 0xE9D7, 0x9C0A, + 0xE9D3, 0x9C0C, + 0x8A82, 0x9C0D, + 0x986B, 0x9C10, + 0xE9D6, 0x9C12, + 0xE9D2, 0x9C13, + 0xE9D0, 0x9C14, + 0xE9CF, 0x9C15, + 0xE9DA, 0x9C1B, + 0xE9DD, 0x9C21, + 0xE9DC, 0x9C24, + 0xE9DB, 0x9C25, + 0x9568, 0x9C2D, + 0xE9D9, 0x9C2E, + 0x88F1, 0x9C2F, + 0xE9DE, 0x9C30, + 0xE9E0, 0x9C32, + 0x8A8F, 0x9C39, + 0xE9CB, 0x9C3A, + 0x8956, 0x9C3B, + 0xE9E2, 0x9C3E, + 0xE9E1, 0x9C46, + 0xE9DF, 0x9C47, + 0x924C, 0x9C48, + 0x9690, 0x9C52, + 0x97D8, 0x9C57, + 0xE9E3, 0x9C5A, + 0xE9E4, 0x9C60, + 0xE9E5, 0x9C67, + 0xE9E6, 0x9C76, + 0xE9E7, 0x9C78, + 0x92B9, 0x9CE5, + 0xE9E8, 0x9CE7, + 0x94B5, 0x9CE9, + 0xE9ED, 0x9CEB, + 0xE9E9, 0x9CEC, + 0xE9EA, 0x9CF0, + 0x9650, 0x9CF3, + 0x96C2, 0x9CF4, + 0x93CE, 0x9CF6, + 0xE9EE, 0x9D03, + 0xE9EF, 0x9D06, + 0x93BC, 0x9D07, + 0xE9EC, 0x9D08, + 0xE9EB, 0x9D09, + 0x89A8, 0x9D0E, + 0xE9F7, 0x9D12, + 0xE9F6, 0x9D15, + 0x8995, 0x9D1B, + 0xE9F4, 0x9D1F, + 0xE9F3, 0x9D23, + 0xE9F1, 0x9D26, + 0x8A9B, 0x9D28, + 0xE9F0, 0x9D2A, + 0x8EB0, 0x9D2B, + 0x89A7, 0x9D2C, + 0x8D83, 0x9D3B, + 0xE9FA, 0x9D3E, + 0xE9F9, 0x9D3F, + 0xE9F8, 0x9D41, + 0xE9F5, 0x9D44, + 0xE9FB, 0x9D46, + 0xE9FC, 0x9D48, + 0xEA44, 0x9D50, + 0xEA43, 0x9D51, + 0xEA45, 0x9D59, + 0x894C, 0x9D5C, + 0xEA40, 0x9D5D, + 0xEA41, 0x9D5E, + 0x8D94, 0x9D60, + 0x96B7, 0x9D61, + 0xEA42, 0x9D64, + 0x9651, 0x9D6C, + 0xEA4A, 0x9D6F, + 0xEA46, 0x9D72, + 0xEA4B, 0x9D7A, + 0xEA48, 0x9D87, + 0xEA47, 0x9D89, + 0x8C7B, 0x9D8F, + 0xEA4C, 0x9D9A, + 0xEA4D, 0x9DA4, + 0xEA4E, 0x9DA9, + 0xEA49, 0x9DAB, + 0xE9F2, 0x9DAF, + 0xEA4F, 0x9DB2, + 0x92DF, 0x9DB4, + 0xEA53, 0x9DB8, + 0xEA54, 0x9DBA, + 0xEA52, 0x9DBB, + 0xEA51, 0x9DC1, + 0xEA57, 0x9DC2, + 0xEA50, 0x9DC4, + 0xEA55, 0x9DC6, + 0xEA56, 0x9DCF, + 0xEA59, 0x9DD3, + 0xEA58, 0x9DD9, + 0xEA5B, 0x9DE6, + 0xEA5C, 0x9DED, + 0xEA5D, 0x9DEF, + 0x9868, 0x9DF2, + 0xEA5A, 0x9DF8, + 0x91E9, 0x9DF9, + 0x8DEB, 0x9DFA, + 0xEA5E, 0x9DFD, + 0xEA5F, 0x9E1A, + 0xEA60, 0x9E1B, + 0xEA61, 0x9E1E, + 0xEA62, 0x9E75, + 0x8CB2, 0x9E78, + 0xEA63, 0x9E79, + 0xEA64, 0x9E7D, + 0x8EAD, 0x9E7F, + 0xEA65, 0x9E81, + 0xEA66, 0x9E88, + 0xEA67, 0x9E8B, + 0xEA68, 0x9E8C, + 0xEA6B, 0x9E91, + 0xEA69, 0x9E92, + 0x985B, 0x9E93, + 0xEA6A, 0x9E95, + 0x97ED, 0x9E97, + 0xEA6C, 0x9E9D, + 0x97D9, 0x9E9F, + 0xEA6D, 0x9EA5, + 0x949E, 0x9EA6, + 0xEA6E, 0x9EA9, + 0xEA70, 0x9EAA, + 0xEA71, 0x9EAD, + 0xEA6F, 0x9EB8, + 0x8D8D, 0x9EB9, + 0x96CB, 0x9EBA, + 0x9683, 0x9EBB, + 0x9BF5, 0x9EBC, + 0x9F80, 0x9EBE, + 0x969B, 0x9EBF, + 0x89A9, 0x9EC4, + 0xEA73, 0x9ECC, + 0x8B6F, 0x9ECD, + 0xEA74, 0x9ECE, + 0xEA75, 0x9ECF, + 0xEA76, 0x9ED0, + 0x8D95, 0x9ED2, + 0xEA77, 0x9ED4, + 0xE0D2, 0x9ED8, + 0x96D9, 0x9ED9, + 0x91E1, 0x9EDB, + 0xEA78, 0x9EDC, + 0xEA7A, 0x9EDD, + 0xEA79, 0x9EDE, + 0xEA7B, 0x9EE0, + 0xEA7C, 0x9EE5, + 0xEA7D, 0x9EE8, + 0xEA7E, 0x9EEF, + 0xEA80, 0x9EF4, + 0xEA81, 0x9EF6, + 0xEA82, 0x9EF7, + 0xEA83, 0x9EF9, + 0xEA84, 0x9EFB, + 0xEA85, 0x9EFC, + 0xEA86, 0x9EFD, + 0xEA87, 0x9F07, + 0xEA88, 0x9F08, + 0x9343, 0x9F0E, + 0x8CDB, 0x9F13, + 0xEA8A, 0x9F15, + 0x916C, 0x9F20, + 0xEA8B, 0x9F21, + 0xEA8C, 0x9F2C, + 0x9540, 0x9F3B, + 0xEA8D, 0x9F3E, + 0xEA8E, 0x9F4A, + 0xE256, 0x9F4B, + 0xE6D8, 0x9F4E, + 0xE8EB, 0x9F4F, + 0xEA8F, 0x9F52, + 0xEA90, 0x9F54, + 0xEA92, 0x9F5F, + 0xEA93, 0x9F60, + 0xEA94, 0x9F61, + 0x97EE, 0x9F62, + 0xEA91, 0x9F63, + 0xEA95, 0x9F66, + 0xEA96, 0x9F67, + 0xEA98, 0x9F6A, + 0xEA97, 0x9F6C, + 0xEA9A, 0x9F72, + 0xEA9B, 0x9F76, + 0xEA99, 0x9F77, + 0x97B4, 0x9F8D, + 0xEA9C, 0x9F95, + 0xEA9D, 0x9F9C, + 0xE273, 0x9F9D, + 0xEA9E, 0x9FA0, + 0x8149, 0xFF01, + 0x8194, 0xFF03, + 0x8190, 0xFF04, + 0x8193, 0xFF05, + 0x8195, 0xFF06, + 0x8169, 0xFF08, + 0x816A, 0xFF09, + 0x8196, 0xFF0A, + 0x817B, 0xFF0B, + 0x8143, 0xFF0C, + 0x8144, 0xFF0E, + 0x815E, 0xFF0F, + 0x824F, 0xFF10, + 0x8250, 0xFF11, + 0x8251, 0xFF12, + 0x8252, 0xFF13, + 0x8253, 0xFF14, + 0x8254, 0xFF15, + 0x8255, 0xFF16, + 0x8256, 0xFF17, + 0x8257, 0xFF18, + 0x8258, 0xFF19, + 0x8146, 0xFF1A, + 0x8147, 0xFF1B, + 0x8183, 0xFF1C, + 0x8181, 0xFF1D, + 0x8184, 0xFF1E, + 0x8148, 0xFF1F, + 0x8197, 0xFF20, + 0x8260, 0xFF21, + 0x8261, 0xFF22, + 0x8262, 0xFF23, + 0x8263, 0xFF24, + 0x8264, 0xFF25, + 0x8265, 0xFF26, + 0x8266, 0xFF27, + 0x8267, 0xFF28, + 0x8268, 0xFF29, + 0x8269, 0xFF2A, + 0x826A, 0xFF2B, + 0x826B, 0xFF2C, + 0x826C, 0xFF2D, + 0x826D, 0xFF2E, + 0x826E, 0xFF2F, + 0x826F, 0xFF30, + 0x8270, 0xFF31, + 0x8271, 0xFF32, + 0x8272, 0xFF33, + 0x8273, 0xFF34, + 0x8274, 0xFF35, + 0x8275, 0xFF36, + 0x8276, 0xFF37, + 0x8277, 0xFF38, + 0x8278, 0xFF39, + 0x8279, 0xFF3A, + 0x816D, 0xFF3B, + 0x816E, 0xFF3D, + 0x814F, 0xFF3E, + 0x8151, 0xFF3F, + 0x814D, 0xFF40, + 0x8281, 0xFF41, + 0x8282, 0xFF42, + 0x8283, 0xFF43, + 0x8284, 0xFF44, + 0x8285, 0xFF45, + 0x8286, 0xFF46, + 0x8287, 0xFF47, + 0x8288, 0xFF48, + 0x8289, 0xFF49, + 0x828A, 0xFF4A, + 0x828B, 0xFF4B, + 0x828C, 0xFF4C, + 0x828D, 0xFF4D, + 0x828E, 0xFF4E, + 0x828F, 0xFF4F, + 0x8290, 0xFF50, + 0x8291, 0xFF51, + 0x8292, 0xFF52, + 0x8293, 0xFF53, + 0x8294, 0xFF54, + 0x8295, 0xFF55, + 0x8296, 0xFF56, + 0x8297, 0xFF57, + 0x8298, 0xFF58, + 0x8299, 0xFF59, + 0x829A, 0xFF5A, + 0x816F, 0xFF5B, + 0x8162, 0xFF5C, + 0x8170, 0xFF5D, + 0x00A1, 0xFF61, + 0x00A2, 0xFF62, + 0x00A3, 0xFF63, + 0x00A4, 0xFF64, + 0x00A5, 0xFF65, + 0x00A6, 0xFF66, + 0x00A7, 0xFF67, + 0x00A8, 0xFF68, + 0x00A9, 0xFF69, + 0x00AA, 0xFF6A, + 0x00AB, 0xFF6B, + 0x00AC, 0xFF6C, + 0x00AD, 0xFF6D, + 0x00AE, 0xFF6E, + 0x00AF, 0xFF6F, + 0x00B0, 0xFF70, + 0x00B1, 0xFF71, + 0x00B2, 0xFF72, + 0x00B3, 0xFF73, + 0x00B4, 0xFF74, + 0x00B5, 0xFF75, + 0x00B6, 0xFF76, + 0x00B7, 0xFF77, + 0x00B8, 0xFF78, + 0x00B9, 0xFF79, + 0x00BA, 0xFF7A, + 0x00BB, 0xFF7B, + 0x00BC, 0xFF7C, + 0x00BD, 0xFF7D, + 0x00BE, 0xFF7E, + 0x00BF, 0xFF7F, + 0x00C0, 0xFF80, + 0x00C1, 0xFF81, + 0x00C2, 0xFF82, + 0x00C3, 0xFF83, + 0x00C4, 0xFF84, + 0x00C5, 0xFF85, + 0x00C6, 0xFF86, + 0x00C7, 0xFF87, + 0x00C8, 0xFF88, + 0x00C9, 0xFF89, + 0x00CA, 0xFF8A, + 0x00CB, 0xFF8B, + 0x00CC, 0xFF8C, + 0x00CD, 0xFF8D, + 0x00CE, 0xFF8E, + 0x00CF, 0xFF8F, + 0x00D0, 0xFF90, + 0x00D1, 0xFF91, + 0x00D2, 0xFF92, + 0x00D3, 0xFF93, + 0x00D4, 0xFF94, + 0x00D5, 0xFF95, + 0x00D6, 0xFF96, + 0x00D7, 0xFF97, + 0x00D8, 0xFF98, + 0x00D9, 0xFF99, + 0x00DA, 0xFF9A, + 0x00DB, 0xFF9B, + 0x00DC, 0xFF9C, + 0x00DD, 0xFF9D, + 0x00DE, 0xFF9E, + 0x00DF, 0xFF9F, + 0x8150, 0xFFE3, + 0x818F, 0xFFE5, +}; \ No newline at end of file diff --git a/backend/tests/testcommon.c b/backend/tests/testcommon.c index cc666c1b..91fd5ce7 100644 --- a/backend/tests/testcommon.c +++ b/backend/tests/testcommon.c @@ -351,16 +351,38 @@ int testUtilDAFTConvert(const struct zint_symbol* symbol, char* buffer, int buff return TRUE; } +/* Is string valid UTF-8? */ +int testUtilIsValidUTF8(const unsigned char str[], const size_t length) { + int i; + unsigned int codepoint, state = 0; + + for (i = 0; i < length; i++) { + if (decode_utf8(&state, &codepoint, str[i]) == 12) { + return 0; + } + } + + return state == 0; +} + char* testUtilEscape(char* buffer, char* escaped, int escaped_size) { int i; - char* b = buffer; + unsigned char* b = buffer; + int non_utf8 = !testUtilIsValidUTF8(buffer, strlen(buffer)); + for (i = 0; i < escaped_size && *b; b++) { - if (*b > '\0' && *b < ' ') { + if (non_utf8 || *b < ' ' || *b == '\177') { if (i < escaped_size - 4) { sprintf(escaped + i, "\\%.3o", *b); } i += 4; + } else if (*b == '\\' || *b == '"') { + if (i < escaped_size - 2) { + escaped[i] = '\\'; + escaped[i + 1] = *b; + } + i += 2; } else { escaped[i++] = *b; } diff --git a/backend/tests/tools/data/SHIFTJIS.TXT b/backend/tests/tools/data/SHIFTJIS.TXT new file mode 100644 index 00000000..89e2f042 --- /dev/null +++ b/backend/tests/tools/data/SHIFTJIS.TXT @@ -0,0 +1,7097 @@ +# SHIFTJIS.TXT +# Date: 2015-12-02 23:52:00 GMT [KW] +# © 2015 Unicode®, Inc. +# For terms of use, see http://www.unicode.org/terms_of_use.html +# +# Name: Shift-JIS to Unicode +# Unicode version: 1.1 +# Table version: 2.0 +# Table format: Format A +# Date: 2011 October 14 (header updated: 2015 December 02) +# +# General notes: +# +# +# This table contains one set of mappings from Shift-JIS into Unicode. +# Note that these data are *possible* mappings only and may not be the +# same as those used by actual products, nor may they be the best suited +# for all uses. For more information on the mappings between various code +# pages incorporating the repertoire of Shift-JIS and Unicode, consult the +# VENDORS mapping data. +# +# +# Format: Three tab-separated columns +# Column #1 is the shift-JIS code (in hex) +# Column #2 is the Unicode (in hex as 0xXXXX) +# Column #3 the Unicode name (follows a comment sign, '#') +# The official names for Unicode characters U+4E00 +# to U+9FA5, inclusive, is "CJK UNIFIED IDEOGRAPH-XXXX", +# where XXXX is the code point. Including all these +# names in this file increases its size substantially +# and needlessly. The token "" is used for the +# name of these characters. If necessary, it can be +# expanded algorithmically by a parser or editor. +# +# The entries are ordered by their Shift-JIS codes as follows: +# Single-byte characters precede double-byte characters +# The single-byte and double-byte blocks are in ascending +# hexadecimal order +# There is an alternative order some people might be preferred, +# where all the entries are in order of the top (or only) byte. +# This alternate order can be generated from the one given here +# by a simple sort. +# +# Revision History: +# +# [v2.0, 2015 December 02] +# updates to copyright notice and terms of use +# no changes to character mappings +# +# [v1.0, 2011 October 14] +# Updated terms of use to current wording. +# Updated contact information. +# No changes to the mapping data. +# +# [v0.9, 8 March 1994] +# First release. +# +# Use the Unicode reporting form +# for any questions or comments or to report errors in the data. +# +0x20 0x0020 # SPACE +0x21 0x0021 # EXCLAMATION MARK +0x22 0x0022 # QUOTATION MARK +0x23 0x0023 # NUMBER SIGN +0x24 0x0024 # DOLLAR SIGN +0x25 0x0025 # PERCENT SIGN +0x26 0x0026 # AMPERSAND +0x27 0x0027 # APOSTROPHE +0x28 0x0028 # LEFT PARENTHESIS +0x29 0x0029 # RIGHT PARENTHESIS +0x2A 0x002A # ASTERISK +0x2B 0x002B # PLUS SIGN +0x2C 0x002C # COMMA +0x2D 0x002D # HYPHEN-MINUS +0x2E 0x002E # FULL STOP +0x2F 0x002F # SOLIDUS +0x30 0x0030 # DIGIT ZERO +0x31 0x0031 # DIGIT ONE +0x32 0x0032 # DIGIT TWO +0x33 0x0033 # DIGIT THREE +0x34 0x0034 # DIGIT FOUR +0x35 0x0035 # DIGIT FIVE +0x36 0x0036 # DIGIT SIX +0x37 0x0037 # DIGIT SEVEN +0x38 0x0038 # DIGIT EIGHT +0x39 0x0039 # DIGIT NINE +0x3A 0x003A # COLON +0x3B 0x003B # SEMICOLON +0x3C 0x003C # LESS-THAN SIGN +0x3D 0x003D # EQUALS SIGN +0x3E 0x003E # GREATER-THAN SIGN +0x3F 0x003F # QUESTION MARK +0x40 0x0040 # COMMERCIAL AT +0x41 0x0041 # LATIN CAPITAL LETTER A +0x42 0x0042 # LATIN CAPITAL LETTER B +0x43 0x0043 # LATIN CAPITAL LETTER C +0x44 0x0044 # LATIN CAPITAL LETTER D +0x45 0x0045 # LATIN CAPITAL LETTER E +0x46 0x0046 # LATIN CAPITAL LETTER F +0x47 0x0047 # LATIN CAPITAL LETTER G +0x48 0x0048 # LATIN CAPITAL LETTER H +0x49 0x0049 # LATIN CAPITAL LETTER I +0x4A 0x004A # LATIN CAPITAL LETTER J +0x4B 0x004B # LATIN CAPITAL LETTER K +0x4C 0x004C # LATIN CAPITAL LETTER L +0x4D 0x004D # LATIN CAPITAL LETTER M +0x4E 0x004E # LATIN CAPITAL LETTER N +0x4F 0x004F # LATIN CAPITAL LETTER O +0x50 0x0050 # LATIN CAPITAL LETTER P +0x51 0x0051 # LATIN CAPITAL LETTER Q +0x52 0x0052 # LATIN CAPITAL LETTER R +0x53 0x0053 # LATIN CAPITAL LETTER S +0x54 0x0054 # LATIN CAPITAL LETTER T +0x55 0x0055 # LATIN CAPITAL LETTER U +0x56 0x0056 # LATIN CAPITAL LETTER V +0x57 0x0057 # LATIN CAPITAL LETTER W +0x58 0x0058 # LATIN CAPITAL LETTER X +0x59 0x0059 # LATIN CAPITAL LETTER Y +0x5A 0x005A # LATIN CAPITAL LETTER Z +0x5B 0x005B # LEFT SQUARE BRACKET +0x5C 0x00A5 # YEN SIGN +0x5D 0x005D # RIGHT SQUARE BRACKET +0x5E 0x005E # CIRCUMFLEX ACCENT +0x5F 0x005F # LOW LINE +0x60 0x0060 # GRAVE ACCENT +0x61 0x0061 # LATIN SMALL LETTER A +0x62 0x0062 # LATIN SMALL LETTER B +0x63 0x0063 # LATIN SMALL LETTER C +0x64 0x0064 # LATIN SMALL LETTER D +0x65 0x0065 # LATIN SMALL LETTER E +0x66 0x0066 # LATIN SMALL LETTER F +0x67 0x0067 # LATIN SMALL LETTER G +0x68 0x0068 # LATIN SMALL LETTER H +0x69 0x0069 # LATIN SMALL LETTER I +0x6A 0x006A # LATIN SMALL LETTER J +0x6B 0x006B # LATIN SMALL LETTER K +0x6C 0x006C # LATIN SMALL LETTER L +0x6D 0x006D # LATIN SMALL LETTER M +0x6E 0x006E # LATIN SMALL LETTER N +0x6F 0x006F # LATIN SMALL LETTER O +0x70 0x0070 # LATIN SMALL LETTER P +0x71 0x0071 # LATIN SMALL LETTER Q +0x72 0x0072 # LATIN SMALL LETTER R +0x73 0x0073 # LATIN SMALL LETTER S +0x74 0x0074 # LATIN SMALL LETTER T +0x75 0x0075 # LATIN SMALL LETTER U +0x76 0x0076 # LATIN SMALL LETTER V +0x77 0x0077 # LATIN SMALL LETTER W +0x78 0x0078 # LATIN SMALL LETTER X +0x79 0x0079 # LATIN SMALL LETTER Y +0x7A 0x007A # LATIN SMALL LETTER Z +0x7B 0x007B # LEFT CURLY BRACKET +0x7C 0x007C # VERTICAL LINE +0x7D 0x007D # RIGHT CURLY BRACKET +0x7E 0x203E # OVERLINE +0x8140 0x3000 # IDEOGRAPHIC SPACE +0x8141 0x3001 # IDEOGRAPHIC COMMA +0x8142 0x3002 # IDEOGRAPHIC FULL STOP +0x8143 0xFF0C # FULLWIDTH COMMA +0x8144 0xFF0E # FULLWIDTH FULL STOP +0x8145 0x30FB # KATAKANA MIDDLE DOT +0x8146 0xFF1A # FULLWIDTH COLON +0x8147 0xFF1B # FULLWIDTH SEMICOLON +0x8148 0xFF1F # FULLWIDTH QUESTION MARK +0x8149 0xFF01 # FULLWIDTH EXCLAMATION MARK +0x814A 0x309B # KATAKANA-HIRAGANA VOICED SOUND MARK +0x814B 0x309C # KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK +0x814C 0x00B4 # ACUTE ACCENT +0x814D 0xFF40 # FULLWIDTH GRAVE ACCENT +0x814E 0x00A8 # DIAERESIS +0x814F 0xFF3E # FULLWIDTH CIRCUMFLEX ACCENT +0x8150 0xFFE3 # FULLWIDTH MACRON +0x8151 0xFF3F # FULLWIDTH LOW LINE +0x8152 0x30FD # KATAKANA ITERATION MARK +0x8153 0x30FE # KATAKANA VOICED ITERATION MARK +0x8154 0x309D # HIRAGANA ITERATION MARK +0x8155 0x309E # HIRAGANA VOICED ITERATION MARK +0x8156 0x3003 # DITTO MARK +0x8157 0x4EDD # +0x8158 0x3005 # IDEOGRAPHIC ITERATION MARK +0x8159 0x3006 # IDEOGRAPHIC CLOSING MARK +0x815A 0x3007 # IDEOGRAPHIC NUMBER ZERO +0x815B 0x30FC # KATAKANA-HIRAGANA PROLONGED SOUND MARK +0x815C 0x2015 # HORIZONTAL BAR +0x815D 0x2010 # HYPHEN +0x815E 0xFF0F # FULLWIDTH SOLIDUS +0x815F 0x005C # REVERSE SOLIDUS +0x8160 0x301C # WAVE DASH +0x8161 0x2016 # DOUBLE VERTICAL LINE +0x8162 0xFF5C # FULLWIDTH VERTICAL LINE +0x8163 0x2026 # HORIZONTAL ELLIPSIS +0x8164 0x2025 # TWO DOT LEADER +0x8165 0x2018 # LEFT SINGLE QUOTATION MARK +0x8166 0x2019 # RIGHT SINGLE QUOTATION MARK +0x8167 0x201C # LEFT DOUBLE QUOTATION MARK +0x8168 0x201D # RIGHT DOUBLE QUOTATION MARK +0x8169 0xFF08 # FULLWIDTH LEFT PARENTHESIS +0x816A 0xFF09 # FULLWIDTH RIGHT PARENTHESIS +0x816B 0x3014 # LEFT TORTOISE SHELL BRACKET +0x816C 0x3015 # RIGHT TORTOISE SHELL BRACKET +0x816D 0xFF3B # FULLWIDTH LEFT SQUARE BRACKET +0x816E 0xFF3D # FULLWIDTH RIGHT SQUARE BRACKET +0x816F 0xFF5B # FULLWIDTH LEFT CURLY BRACKET +0x8170 0xFF5D # FULLWIDTH RIGHT CURLY BRACKET +0x8171 0x3008 # LEFT ANGLE BRACKET +0x8172 0x3009 # RIGHT ANGLE BRACKET +0x8173 0x300A # LEFT DOUBLE ANGLE BRACKET +0x8174 0x300B # RIGHT DOUBLE ANGLE BRACKET +0x8175 0x300C # LEFT CORNER BRACKET +0x8176 0x300D # RIGHT CORNER BRACKET +0x8177 0x300E # LEFT WHITE CORNER BRACKET +0x8178 0x300F # RIGHT WHITE CORNER BRACKET +0x8179 0x3010 # LEFT BLACK LENTICULAR BRACKET +0x817A 0x3011 # RIGHT BLACK LENTICULAR BRACKET +0x817B 0xFF0B # FULLWIDTH PLUS SIGN +0x817C 0x2212 # MINUS SIGN +0x817D 0x00B1 # PLUS-MINUS SIGN +0x817E 0x00D7 # MULTIPLICATION SIGN +0x8180 0x00F7 # DIVISION SIGN +0x8181 0xFF1D # FULLWIDTH EQUALS SIGN +0x8182 0x2260 # NOT EQUAL TO +0x8183 0xFF1C # FULLWIDTH LESS-THAN SIGN +0x8184 0xFF1E # FULLWIDTH GREATER-THAN SIGN +0x8185 0x2266 # LESS-THAN OVER EQUAL TO +0x8186 0x2267 # GREATER-THAN OVER EQUAL TO +0x8187 0x221E # INFINITY +0x8188 0x2234 # THEREFORE +0x8189 0x2642 # MALE SIGN +0x818A 0x2640 # FEMALE SIGN +0x818B 0x00B0 # DEGREE SIGN +0x818C 0x2032 # PRIME +0x818D 0x2033 # DOUBLE PRIME +0x818E 0x2103 # DEGREE CELSIUS +0x818F 0xFFE5 # FULLWIDTH YEN SIGN +0x8190 0xFF04 # FULLWIDTH DOLLAR SIGN +0x8191 0x00A2 # CENT SIGN +0x8192 0x00A3 # POUND SIGN +0x8193 0xFF05 # FULLWIDTH PERCENT SIGN +0x8194 0xFF03 # FULLWIDTH NUMBER SIGN +0x8195 0xFF06 # FULLWIDTH AMPERSAND +0x8196 0xFF0A # FULLWIDTH ASTERISK +0x8197 0xFF20 # FULLWIDTH COMMERCIAL AT +0x8198 0x00A7 # SECTION SIGN +0x8199 0x2606 # WHITE STAR +0x819A 0x2605 # BLACK STAR +0x819B 0x25CB # WHITE CIRCLE +0x819C 0x25CF # BLACK CIRCLE +0x819D 0x25CE # BULLSEYE +0x819E 0x25C7 # WHITE DIAMOND +0x819F 0x25C6 # BLACK DIAMOND +0x81A0 0x25A1 # WHITE SQUARE +0x81A1 0x25A0 # BLACK SQUARE +0x81A2 0x25B3 # WHITE UP-POINTING TRIANGLE +0x81A3 0x25B2 # BLACK UP-POINTING TRIANGLE +0x81A4 0x25BD # WHITE DOWN-POINTING TRIANGLE +0x81A5 0x25BC # BLACK DOWN-POINTING TRIANGLE +0x81A6 0x203B # REFERENCE MARK +0x81A7 0x3012 # POSTAL MARK +0x81A8 0x2192 # RIGHTWARDS ARROW +0x81A9 0x2190 # LEFTWARDS ARROW +0x81AA 0x2191 # UPWARDS ARROW +0x81AB 0x2193 # DOWNWARDS ARROW +0x81AC 0x3013 # GETA MARK +0x81B8 0x2208 # ELEMENT OF +0x81B9 0x220B # CONTAINS AS MEMBER +0x81BA 0x2286 # SUBSET OF OR EQUAL TO +0x81BB 0x2287 # SUPERSET OF OR EQUAL TO +0x81BC 0x2282 # SUBSET OF +0x81BD 0x2283 # SUPERSET OF +0x81BE 0x222A # UNION +0x81BF 0x2229 # INTERSECTION +0x81C8 0x2227 # LOGICAL AND +0x81C9 0x2228 # LOGICAL OR +0x81CA 0x00AC # NOT SIGN +0x81CB 0x21D2 # RIGHTWARDS DOUBLE ARROW +0x81CC 0x21D4 # LEFT RIGHT DOUBLE ARROW +0x81CD 0x2200 # FOR ALL +0x81CE 0x2203 # THERE EXISTS +0x81DA 0x2220 # ANGLE +0x81DB 0x22A5 # UP TACK +0x81DC 0x2312 # ARC +0x81DD 0x2202 # PARTIAL DIFFERENTIAL +0x81DE 0x2207 # NABLA +0x81DF 0x2261 # IDENTICAL TO +0x81E0 0x2252 # APPROXIMATELY EQUAL TO OR THE IMAGE OF +0x81E1 0x226A # MUCH LESS-THAN +0x81E2 0x226B # MUCH GREATER-THAN +0x81E3 0x221A # SQUARE ROOT +0x81E4 0x223D # REVERSED TILDE +0x81E5 0x221D # PROPORTIONAL TO +0x81E6 0x2235 # BECAUSE +0x81E7 0x222B # INTEGRAL +0x81E8 0x222C # DOUBLE INTEGRAL +0x81F0 0x212B # ANGSTROM SIGN +0x81F1 0x2030 # PER MILLE SIGN +0x81F2 0x266F # MUSIC SHARP SIGN +0x81F3 0x266D # MUSIC FLAT SIGN +0x81F4 0x266A # EIGHTH NOTE +0x81F5 0x2020 # DAGGER +0x81F6 0x2021 # DOUBLE DAGGER +0x81F7 0x00B6 # PILCROW SIGN +0x81FC 0x25EF # LARGE CIRCLE +0x824F 0xFF10 # FULLWIDTH DIGIT ZERO +0x8250 0xFF11 # FULLWIDTH DIGIT ONE +0x8251 0xFF12 # FULLWIDTH DIGIT TWO +0x8252 0xFF13 # FULLWIDTH DIGIT THREE +0x8253 0xFF14 # FULLWIDTH DIGIT FOUR +0x8254 0xFF15 # FULLWIDTH DIGIT FIVE +0x8255 0xFF16 # FULLWIDTH DIGIT SIX +0x8256 0xFF17 # FULLWIDTH DIGIT SEVEN +0x8257 0xFF18 # FULLWIDTH DIGIT EIGHT +0x8258 0xFF19 # FULLWIDTH DIGIT NINE +0x8260 0xFF21 # FULLWIDTH LATIN CAPITAL LETTER A +0x8261 0xFF22 # FULLWIDTH LATIN CAPITAL LETTER B +0x8262 0xFF23 # FULLWIDTH LATIN CAPITAL LETTER C +0x8263 0xFF24 # FULLWIDTH LATIN CAPITAL LETTER D +0x8264 0xFF25 # FULLWIDTH LATIN CAPITAL LETTER E +0x8265 0xFF26 # FULLWIDTH LATIN CAPITAL LETTER F +0x8266 0xFF27 # FULLWIDTH LATIN CAPITAL LETTER G +0x8267 0xFF28 # FULLWIDTH LATIN CAPITAL LETTER H +0x8268 0xFF29 # FULLWIDTH LATIN CAPITAL LETTER I +0x8269 0xFF2A # FULLWIDTH LATIN CAPITAL LETTER J +0x826A 0xFF2B # FULLWIDTH LATIN CAPITAL LETTER K +0x826B 0xFF2C # FULLWIDTH LATIN CAPITAL LETTER L +0x826C 0xFF2D # FULLWIDTH LATIN CAPITAL LETTER M +0x826D 0xFF2E # FULLWIDTH LATIN CAPITAL LETTER N +0x826E 0xFF2F # FULLWIDTH LATIN CAPITAL LETTER O +0x826F 0xFF30 # FULLWIDTH LATIN CAPITAL LETTER P +0x8270 0xFF31 # FULLWIDTH LATIN CAPITAL LETTER Q +0x8271 0xFF32 # FULLWIDTH LATIN CAPITAL LETTER R +0x8272 0xFF33 # FULLWIDTH LATIN CAPITAL LETTER S +0x8273 0xFF34 # FULLWIDTH LATIN CAPITAL LETTER T +0x8274 0xFF35 # FULLWIDTH LATIN CAPITAL LETTER U +0x8275 0xFF36 # FULLWIDTH LATIN CAPITAL LETTER V +0x8276 0xFF37 # FULLWIDTH LATIN CAPITAL LETTER W +0x8277 0xFF38 # FULLWIDTH LATIN CAPITAL LETTER X +0x8278 0xFF39 # FULLWIDTH LATIN CAPITAL LETTER Y +0x8279 0xFF3A # FULLWIDTH LATIN CAPITAL LETTER Z +0x8281 0xFF41 # FULLWIDTH LATIN SMALL LETTER A +0x8282 0xFF42 # FULLWIDTH LATIN SMALL LETTER B +0x8283 0xFF43 # FULLWIDTH LATIN SMALL LETTER C +0x8284 0xFF44 # FULLWIDTH LATIN SMALL LETTER D +0x8285 0xFF45 # FULLWIDTH LATIN SMALL LETTER E +0x8286 0xFF46 # FULLWIDTH LATIN SMALL LETTER F +0x8287 0xFF47 # FULLWIDTH LATIN SMALL LETTER G +0x8288 0xFF48 # FULLWIDTH LATIN SMALL LETTER H +0x8289 0xFF49 # FULLWIDTH LATIN SMALL LETTER I +0x828A 0xFF4A # FULLWIDTH LATIN SMALL LETTER J +0x828B 0xFF4B # FULLWIDTH LATIN SMALL LETTER K +0x828C 0xFF4C # FULLWIDTH LATIN SMALL LETTER L +0x828D 0xFF4D # FULLWIDTH LATIN SMALL LETTER M +0x828E 0xFF4E # FULLWIDTH LATIN SMALL LETTER N +0x828F 0xFF4F # FULLWIDTH LATIN SMALL LETTER O +0x8290 0xFF50 # FULLWIDTH LATIN SMALL LETTER P +0x8291 0xFF51 # FULLWIDTH LATIN SMALL LETTER Q +0x8292 0xFF52 # FULLWIDTH LATIN SMALL LETTER R +0x8293 0xFF53 # FULLWIDTH LATIN SMALL LETTER S +0x8294 0xFF54 # FULLWIDTH LATIN SMALL LETTER T +0x8295 0xFF55 # FULLWIDTH LATIN SMALL LETTER U +0x8296 0xFF56 # FULLWIDTH LATIN SMALL LETTER V +0x8297 0xFF57 # FULLWIDTH LATIN SMALL LETTER W +0x8298 0xFF58 # FULLWIDTH LATIN SMALL LETTER X +0x8299 0xFF59 # FULLWIDTH LATIN SMALL LETTER Y +0x829A 0xFF5A # FULLWIDTH LATIN SMALL LETTER Z +0x829F 0x3041 # HIRAGANA LETTER SMALL A +0x82A0 0x3042 # HIRAGANA LETTER A +0x82A1 0x3043 # HIRAGANA LETTER SMALL I +0x82A2 0x3044 # HIRAGANA LETTER I +0x82A3 0x3045 # HIRAGANA LETTER SMALL U +0x82A4 0x3046 # HIRAGANA LETTER U +0x82A5 0x3047 # HIRAGANA LETTER SMALL E +0x82A6 0x3048 # HIRAGANA LETTER E +0x82A7 0x3049 # HIRAGANA LETTER SMALL O +0x82A8 0x304A # HIRAGANA LETTER O +0x82A9 0x304B # HIRAGANA LETTER KA +0x82AA 0x304C # HIRAGANA LETTER GA +0x82AB 0x304D # HIRAGANA LETTER KI +0x82AC 0x304E # HIRAGANA LETTER GI +0x82AD 0x304F # HIRAGANA LETTER KU +0x82AE 0x3050 # HIRAGANA LETTER GU +0x82AF 0x3051 # HIRAGANA LETTER KE +0x82B0 0x3052 # HIRAGANA LETTER GE +0x82B1 0x3053 # HIRAGANA LETTER KO +0x82B2 0x3054 # HIRAGANA LETTER GO +0x82B3 0x3055 # HIRAGANA LETTER SA +0x82B4 0x3056 # HIRAGANA LETTER ZA +0x82B5 0x3057 # HIRAGANA LETTER SI +0x82B6 0x3058 # HIRAGANA LETTER ZI +0x82B7 0x3059 # HIRAGANA LETTER SU +0x82B8 0x305A # HIRAGANA LETTER ZU +0x82B9 0x305B # HIRAGANA LETTER SE +0x82BA 0x305C # HIRAGANA LETTER ZE +0x82BB 0x305D # HIRAGANA LETTER SO +0x82BC 0x305E # HIRAGANA LETTER ZO +0x82BD 0x305F # HIRAGANA LETTER TA +0x82BE 0x3060 # HIRAGANA LETTER DA +0x82BF 0x3061 # HIRAGANA LETTER TI +0x82C0 0x3062 # HIRAGANA LETTER DI +0x82C1 0x3063 # HIRAGANA LETTER SMALL TU +0x82C2 0x3064 # HIRAGANA LETTER TU +0x82C3 0x3065 # HIRAGANA LETTER DU +0x82C4 0x3066 # HIRAGANA LETTER TE +0x82C5 0x3067 # HIRAGANA LETTER DE +0x82C6 0x3068 # HIRAGANA LETTER TO +0x82C7 0x3069 # HIRAGANA LETTER DO +0x82C8 0x306A # HIRAGANA LETTER NA +0x82C9 0x306B # HIRAGANA LETTER NI +0x82CA 0x306C # HIRAGANA LETTER NU +0x82CB 0x306D # HIRAGANA LETTER NE +0x82CC 0x306E # HIRAGANA LETTER NO +0x82CD 0x306F # HIRAGANA LETTER HA +0x82CE 0x3070 # HIRAGANA LETTER BA +0x82CF 0x3071 # HIRAGANA LETTER PA +0x82D0 0x3072 # HIRAGANA LETTER HI +0x82D1 0x3073 # HIRAGANA LETTER BI +0x82D2 0x3074 # HIRAGANA LETTER PI +0x82D3 0x3075 # HIRAGANA LETTER HU +0x82D4 0x3076 # HIRAGANA LETTER BU +0x82D5 0x3077 # HIRAGANA LETTER PU +0x82D6 0x3078 # HIRAGANA LETTER HE +0x82D7 0x3079 # HIRAGANA LETTER BE +0x82D8 0x307A # HIRAGANA LETTER PE +0x82D9 0x307B # HIRAGANA LETTER HO +0x82DA 0x307C # HIRAGANA LETTER BO +0x82DB 0x307D # HIRAGANA LETTER PO +0x82DC 0x307E # HIRAGANA LETTER MA +0x82DD 0x307F # HIRAGANA LETTER MI +0x82DE 0x3080 # HIRAGANA LETTER MU +0x82DF 0x3081 # HIRAGANA LETTER ME +0x82E0 0x3082 # HIRAGANA LETTER MO +0x82E1 0x3083 # HIRAGANA LETTER SMALL YA +0x82E2 0x3084 # HIRAGANA LETTER YA +0x82E3 0x3085 # HIRAGANA LETTER SMALL YU +0x82E4 0x3086 # HIRAGANA LETTER YU +0x82E5 0x3087 # HIRAGANA LETTER SMALL YO +0x82E6 0x3088 # HIRAGANA LETTER YO +0x82E7 0x3089 # HIRAGANA LETTER RA +0x82E8 0x308A # HIRAGANA LETTER RI +0x82E9 0x308B # HIRAGANA LETTER RU +0x82EA 0x308C # HIRAGANA LETTER RE +0x82EB 0x308D # HIRAGANA LETTER RO +0x82EC 0x308E # HIRAGANA LETTER SMALL WA +0x82ED 0x308F # HIRAGANA LETTER WA +0x82EE 0x3090 # HIRAGANA LETTER WI +0x82EF 0x3091 # HIRAGANA LETTER WE +0x82F0 0x3092 # HIRAGANA LETTER WO +0x82F1 0x3093 # HIRAGANA LETTER N +0x8340 0x30A1 # KATAKANA LETTER SMALL A +0x8341 0x30A2 # KATAKANA LETTER A +0x8342 0x30A3 # KATAKANA LETTER SMALL I +0x8343 0x30A4 # KATAKANA LETTER I +0x8344 0x30A5 # KATAKANA LETTER SMALL U +0x8345 0x30A6 # KATAKANA LETTER U +0x8346 0x30A7 # KATAKANA LETTER SMALL E +0x8347 0x30A8 # KATAKANA LETTER E +0x8348 0x30A9 # KATAKANA LETTER SMALL O +0x8349 0x30AA # KATAKANA LETTER O +0x834A 0x30AB # KATAKANA LETTER KA +0x834B 0x30AC # KATAKANA LETTER GA +0x834C 0x30AD # KATAKANA LETTER KI +0x834D 0x30AE # KATAKANA LETTER GI +0x834E 0x30AF # KATAKANA LETTER KU +0x834F 0x30B0 # KATAKANA LETTER GU +0x8350 0x30B1 # KATAKANA LETTER KE +0x8351 0x30B2 # KATAKANA LETTER GE +0x8352 0x30B3 # KATAKANA LETTER KO +0x8353 0x30B4 # KATAKANA LETTER GO +0x8354 0x30B5 # KATAKANA LETTER SA +0x8355 0x30B6 # KATAKANA LETTER ZA +0x8356 0x30B7 # KATAKANA LETTER SI +0x8357 0x30B8 # KATAKANA LETTER ZI +0x8358 0x30B9 # KATAKANA LETTER SU +0x8359 0x30BA # KATAKANA LETTER ZU +0x835A 0x30BB # KATAKANA LETTER SE +0x835B 0x30BC # KATAKANA LETTER ZE +0x835C 0x30BD # KATAKANA LETTER SO +0x835D 0x30BE # KATAKANA LETTER ZO +0x835E 0x30BF # KATAKANA LETTER TA +0x835F 0x30C0 # KATAKANA LETTER DA +0x8360 0x30C1 # KATAKANA LETTER TI +0x8361 0x30C2 # KATAKANA LETTER DI +0x8362 0x30C3 # KATAKANA LETTER SMALL TU +0x8363 0x30C4 # KATAKANA LETTER TU +0x8364 0x30C5 # KATAKANA LETTER DU +0x8365 0x30C6 # KATAKANA LETTER TE +0x8366 0x30C7 # KATAKANA LETTER DE +0x8367 0x30C8 # KATAKANA LETTER TO +0x8368 0x30C9 # KATAKANA LETTER DO +0x8369 0x30CA # KATAKANA LETTER NA +0x836A 0x30CB # KATAKANA LETTER NI +0x836B 0x30CC # KATAKANA LETTER NU +0x836C 0x30CD # KATAKANA LETTER NE +0x836D 0x30CE # KATAKANA LETTER NO +0x836E 0x30CF # KATAKANA LETTER HA +0x836F 0x30D0 # KATAKANA LETTER BA +0x8370 0x30D1 # KATAKANA LETTER PA +0x8371 0x30D2 # KATAKANA LETTER HI +0x8372 0x30D3 # KATAKANA LETTER BI +0x8373 0x30D4 # KATAKANA LETTER PI +0x8374 0x30D5 # KATAKANA LETTER HU +0x8375 0x30D6 # KATAKANA LETTER BU +0x8376 0x30D7 # KATAKANA LETTER PU +0x8377 0x30D8 # KATAKANA LETTER HE +0x8378 0x30D9 # KATAKANA LETTER BE +0x8379 0x30DA # KATAKANA LETTER PE +0x837A 0x30DB # KATAKANA LETTER HO +0x837B 0x30DC # KATAKANA LETTER BO +0x837C 0x30DD # KATAKANA LETTER PO +0x837D 0x30DE # KATAKANA LETTER MA +0x837E 0x30DF # KATAKANA LETTER MI +0x8380 0x30E0 # KATAKANA LETTER MU +0x8381 0x30E1 # KATAKANA LETTER ME +0x8382 0x30E2 # KATAKANA LETTER MO +0x8383 0x30E3 # KATAKANA LETTER SMALL YA +0x8384 0x30E4 # KATAKANA LETTER YA +0x8385 0x30E5 # KATAKANA LETTER SMALL YU +0x8386 0x30E6 # KATAKANA LETTER YU +0x8387 0x30E7 # KATAKANA LETTER SMALL YO +0x8388 0x30E8 # KATAKANA LETTER YO +0x8389 0x30E9 # KATAKANA LETTER RA +0x838A 0x30EA # KATAKANA LETTER RI +0x838B 0x30EB # KATAKANA LETTER RU +0x838C 0x30EC # KATAKANA LETTER RE +0x838D 0x30ED # KATAKANA LETTER RO +0x838E 0x30EE # KATAKANA LETTER SMALL WA +0x838F 0x30EF # KATAKANA LETTER WA +0x8390 0x30F0 # KATAKANA LETTER WI +0x8391 0x30F1 # KATAKANA LETTER WE +0x8392 0x30F2 # KATAKANA LETTER WO +0x8393 0x30F3 # KATAKANA LETTER N +0x8394 0x30F4 # KATAKANA LETTER VU +0x8395 0x30F5 # KATAKANA LETTER SMALL KA +0x8396 0x30F6 # KATAKANA LETTER SMALL KE +0x839F 0x0391 # GREEK CAPITAL LETTER ALPHA +0x83A0 0x0392 # GREEK CAPITAL LETTER BETA +0x83A1 0x0393 # GREEK CAPITAL LETTER GAMMA +0x83A2 0x0394 # GREEK CAPITAL LETTER DELTA +0x83A3 0x0395 # GREEK CAPITAL LETTER EPSILON +0x83A4 0x0396 # GREEK CAPITAL LETTER ZETA +0x83A5 0x0397 # GREEK CAPITAL LETTER ETA +0x83A6 0x0398 # GREEK CAPITAL LETTER THETA +0x83A7 0x0399 # GREEK CAPITAL LETTER IOTA +0x83A8 0x039A # GREEK CAPITAL LETTER KAPPA +0x83A9 0x039B # GREEK CAPITAL LETTER LAMDA +0x83AA 0x039C # GREEK CAPITAL LETTER MU +0x83AB 0x039D # GREEK CAPITAL LETTER NU +0x83AC 0x039E # GREEK CAPITAL LETTER XI +0x83AD 0x039F # GREEK CAPITAL LETTER OMICRON +0x83AE 0x03A0 # GREEK CAPITAL LETTER PI +0x83AF 0x03A1 # GREEK CAPITAL LETTER RHO +0x83B0 0x03A3 # GREEK CAPITAL LETTER SIGMA +0x83B1 0x03A4 # GREEK CAPITAL LETTER TAU +0x83B2 0x03A5 # GREEK CAPITAL LETTER UPSILON +0x83B3 0x03A6 # GREEK CAPITAL LETTER PHI +0x83B4 0x03A7 # GREEK CAPITAL LETTER CHI +0x83B5 0x03A8 # GREEK CAPITAL LETTER PSI +0x83B6 0x03A9 # GREEK CAPITAL LETTER OMEGA +0x83BF 0x03B1 # GREEK SMALL LETTER ALPHA +0x83C0 0x03B2 # GREEK SMALL LETTER BETA +0x83C1 0x03B3 # GREEK SMALL LETTER GAMMA +0x83C2 0x03B4 # GREEK SMALL LETTER DELTA +0x83C3 0x03B5 # GREEK SMALL LETTER EPSILON +0x83C4 0x03B6 # GREEK SMALL LETTER ZETA +0x83C5 0x03B7 # GREEK SMALL LETTER ETA +0x83C6 0x03B8 # GREEK SMALL LETTER THETA +0x83C7 0x03B9 # GREEK SMALL LETTER IOTA +0x83C8 0x03BA # GREEK SMALL LETTER KAPPA +0x83C9 0x03BB # GREEK SMALL LETTER LAMDA +0x83CA 0x03BC # GREEK SMALL LETTER MU +0x83CB 0x03BD # GREEK SMALL LETTER NU +0x83CC 0x03BE # GREEK SMALL LETTER XI +0x83CD 0x03BF # GREEK SMALL LETTER OMICRON +0x83CE 0x03C0 # GREEK SMALL LETTER PI +0x83CF 0x03C1 # GREEK SMALL LETTER RHO +0x83D0 0x03C3 # GREEK SMALL LETTER SIGMA +0x83D1 0x03C4 # GREEK SMALL LETTER TAU +0x83D2 0x03C5 # GREEK SMALL LETTER UPSILON +0x83D3 0x03C6 # GREEK SMALL LETTER PHI +0x83D4 0x03C7 # GREEK SMALL LETTER CHI +0x83D5 0x03C8 # GREEK SMALL LETTER PSI +0x83D6 0x03C9 # GREEK SMALL LETTER OMEGA +0x8440 0x0410 # CYRILLIC CAPITAL LETTER A +0x8441 0x0411 # CYRILLIC CAPITAL LETTER BE +0x8442 0x0412 # CYRILLIC CAPITAL LETTER VE +0x8443 0x0413 # CYRILLIC CAPITAL LETTER GHE +0x8444 0x0414 # CYRILLIC CAPITAL LETTER DE +0x8445 0x0415 # CYRILLIC CAPITAL LETTER IE +0x8446 0x0401 # CYRILLIC CAPITAL LETTER IO +0x8447 0x0416 # CYRILLIC CAPITAL LETTER ZHE +0x8448 0x0417 # CYRILLIC CAPITAL LETTER ZE +0x8449 0x0418 # CYRILLIC CAPITAL LETTER I +0x844A 0x0419 # CYRILLIC CAPITAL LETTER SHORT I +0x844B 0x041A # CYRILLIC CAPITAL LETTER KA +0x844C 0x041B # CYRILLIC CAPITAL LETTER EL +0x844D 0x041C # CYRILLIC CAPITAL LETTER EM +0x844E 0x041D # CYRILLIC CAPITAL LETTER EN +0x844F 0x041E # CYRILLIC CAPITAL LETTER O +0x8450 0x041F # CYRILLIC CAPITAL LETTER PE +0x8451 0x0420 # CYRILLIC CAPITAL LETTER ER +0x8452 0x0421 # CYRILLIC CAPITAL LETTER ES +0x8453 0x0422 # CYRILLIC CAPITAL LETTER TE +0x8454 0x0423 # CYRILLIC CAPITAL LETTER U +0x8455 0x0424 # CYRILLIC CAPITAL LETTER EF +0x8456 0x0425 # CYRILLIC CAPITAL LETTER HA +0x8457 0x0426 # CYRILLIC CAPITAL LETTER TSE +0x8458 0x0427 # CYRILLIC CAPITAL LETTER CHE +0x8459 0x0428 # CYRILLIC CAPITAL LETTER SHA +0x845A 0x0429 # CYRILLIC CAPITAL LETTER SHCHA +0x845B 0x042A # CYRILLIC CAPITAL LETTER HARD SIGN +0x845C 0x042B # CYRILLIC CAPITAL LETTER YERU +0x845D 0x042C # CYRILLIC CAPITAL LETTER SOFT SIGN +0x845E 0x042D # CYRILLIC CAPITAL LETTER E +0x845F 0x042E # CYRILLIC CAPITAL LETTER YU +0x8460 0x042F # CYRILLIC CAPITAL LETTER YA +0x8470 0x0430 # CYRILLIC SMALL LETTER A +0x8471 0x0431 # CYRILLIC SMALL LETTER BE +0x8472 0x0432 # CYRILLIC SMALL LETTER VE +0x8473 0x0433 # CYRILLIC SMALL LETTER GHE +0x8474 0x0434 # CYRILLIC SMALL LETTER DE +0x8475 0x0435 # CYRILLIC SMALL LETTER IE +0x8476 0x0451 # CYRILLIC SMALL LETTER IO +0x8477 0x0436 # CYRILLIC SMALL LETTER ZHE +0x8478 0x0437 # CYRILLIC SMALL LETTER ZE +0x8479 0x0438 # CYRILLIC SMALL LETTER I +0x847A 0x0439 # CYRILLIC SMALL LETTER SHORT I +0x847B 0x043A # CYRILLIC SMALL LETTER KA +0x847C 0x043B # CYRILLIC SMALL LETTER EL +0x847D 0x043C # CYRILLIC SMALL LETTER EM +0x847E 0x043D # CYRILLIC SMALL LETTER EN +0x8480 0x043E # CYRILLIC SMALL LETTER O +0x8481 0x043F # CYRILLIC SMALL LETTER PE +0x8482 0x0440 # CYRILLIC SMALL LETTER ER +0x8483 0x0441 # CYRILLIC SMALL LETTER ES +0x8484 0x0442 # CYRILLIC SMALL LETTER TE +0x8485 0x0443 # CYRILLIC SMALL LETTER U +0x8486 0x0444 # CYRILLIC SMALL LETTER EF +0x8487 0x0445 # CYRILLIC SMALL LETTER HA +0x8488 0x0446 # CYRILLIC SMALL LETTER TSE +0x8489 0x0447 # CYRILLIC SMALL LETTER CHE +0x848A 0x0448 # CYRILLIC SMALL LETTER SHA +0x848B 0x0449 # CYRILLIC SMALL LETTER SHCHA +0x848C 0x044A # CYRILLIC SMALL LETTER HARD SIGN +0x848D 0x044B # CYRILLIC SMALL LETTER YERU +0x848E 0x044C # CYRILLIC SMALL LETTER SOFT SIGN +0x848F 0x044D # CYRILLIC SMALL LETTER E +0x8490 0x044E # CYRILLIC SMALL LETTER YU +0x8491 0x044F # CYRILLIC SMALL LETTER YA +0x849F 0x2500 # BOX DRAWINGS LIGHT HORIZONTAL +0x84A0 0x2502 # BOX DRAWINGS LIGHT VERTICAL +0x84A1 0x250C # BOX DRAWINGS LIGHT DOWN AND RIGHT +0x84A2 0x2510 # BOX DRAWINGS LIGHT DOWN AND LEFT +0x84A3 0x2518 # BOX DRAWINGS LIGHT UP AND LEFT +0x84A4 0x2514 # BOX DRAWINGS LIGHT UP AND RIGHT +0x84A5 0x251C # BOX DRAWINGS LIGHT VERTICAL AND RIGHT +0x84A6 0x252C # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL +0x84A7 0x2524 # BOX DRAWINGS LIGHT VERTICAL AND LEFT +0x84A8 0x2534 # BOX DRAWINGS LIGHT UP AND HORIZONTAL +0x84A9 0x253C # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL +0x84AA 0x2501 # BOX DRAWINGS HEAVY HORIZONTAL +0x84AB 0x2503 # BOX DRAWINGS HEAVY VERTICAL +0x84AC 0x250F # BOX DRAWINGS HEAVY DOWN AND RIGHT +0x84AD 0x2513 # BOX DRAWINGS HEAVY DOWN AND LEFT +0x84AE 0x251B # BOX DRAWINGS HEAVY UP AND LEFT +0x84AF 0x2517 # BOX DRAWINGS HEAVY UP AND RIGHT +0x84B0 0x2523 # BOX DRAWINGS HEAVY VERTICAL AND RIGHT +0x84B1 0x2533 # BOX DRAWINGS HEAVY DOWN AND HORIZONTAL +0x84B2 0x252B # BOX DRAWINGS HEAVY VERTICAL AND LEFT +0x84B3 0x253B # BOX DRAWINGS HEAVY UP AND HORIZONTAL +0x84B4 0x254B # BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL +0x84B5 0x2520 # BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT +0x84B6 0x252F # BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY +0x84B7 0x2528 # BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT +0x84B8 0x2537 # BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY +0x84B9 0x253F # BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY +0x84BA 0x251D # BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY +0x84BB 0x2530 # BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT +0x84BC 0x2525 # BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY +0x84BD 0x2538 # BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT +0x84BE 0x2542 # BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT +0x889F 0x4E9C # +0x88A0 0x5516 # +0x88A1 0x5A03 # +0x88A2 0x963F # +0x88A3 0x54C0 # +0x88A4 0x611B # +0x88A5 0x6328 # +0x88A6 0x59F6 # +0x88A7 0x9022 # +0x88A8 0x8475 # +0x88A9 0x831C # +0x88AA 0x7A50 # +0x88AB 0x60AA # +0x88AC 0x63E1 # +0x88AD 0x6E25 # +0x88AE 0x65ED # +0x88AF 0x8466 # +0x88B0 0x82A6 # +0x88B1 0x9BF5 # +0x88B2 0x6893 # +0x88B3 0x5727 # +0x88B4 0x65A1 # +0x88B5 0x6271 # +0x88B6 0x5B9B # +0x88B7 0x59D0 # +0x88B8 0x867B # +0x88B9 0x98F4 # +0x88BA 0x7D62 # +0x88BB 0x7DBE # +0x88BC 0x9B8E # +0x88BD 0x6216 # +0x88BE 0x7C9F # +0x88BF 0x88B7 # +0x88C0 0x5B89 # +0x88C1 0x5EB5 # +0x88C2 0x6309 # +0x88C3 0x6697 # +0x88C4 0x6848 # +0x88C5 0x95C7 # +0x88C6 0x978D # +0x88C7 0x674F # +0x88C8 0x4EE5 # +0x88C9 0x4F0A # +0x88CA 0x4F4D # +0x88CB 0x4F9D # +0x88CC 0x5049 # +0x88CD 0x56F2 # +0x88CE 0x5937 # +0x88CF 0x59D4 # +0x88D0 0x5A01 # +0x88D1 0x5C09 # +0x88D2 0x60DF # +0x88D3 0x610F # +0x88D4 0x6170 # +0x88D5 0x6613 # +0x88D6 0x6905 # +0x88D7 0x70BA # +0x88D8 0x754F # +0x88D9 0x7570 # +0x88DA 0x79FB # +0x88DB 0x7DAD # +0x88DC 0x7DEF # +0x88DD 0x80C3 # +0x88DE 0x840E # +0x88DF 0x8863 # +0x88E0 0x8B02 # +0x88E1 0x9055 # +0x88E2 0x907A # +0x88E3 0x533B # +0x88E4 0x4E95 # +0x88E5 0x4EA5 # +0x88E6 0x57DF # +0x88E7 0x80B2 # +0x88E8 0x90C1 # +0x88E9 0x78EF # +0x88EA 0x4E00 # +0x88EB 0x58F1 # +0x88EC 0x6EA2 # +0x88ED 0x9038 # +0x88EE 0x7A32 # +0x88EF 0x8328 # +0x88F0 0x828B # +0x88F1 0x9C2F # +0x88F2 0x5141 # +0x88F3 0x5370 # +0x88F4 0x54BD # +0x88F5 0x54E1 # +0x88F6 0x56E0 # +0x88F7 0x59FB # +0x88F8 0x5F15 # +0x88F9 0x98F2 # +0x88FA 0x6DEB # +0x88FB 0x80E4 # +0x88FC 0x852D # +0x8940 0x9662 # +0x8941 0x9670 # +0x8942 0x96A0 # +0x8943 0x97FB # +0x8944 0x540B # +0x8945 0x53F3 # +0x8946 0x5B87 # +0x8947 0x70CF # +0x8948 0x7FBD # +0x8949 0x8FC2 # +0x894A 0x96E8 # +0x894B 0x536F # +0x894C 0x9D5C # +0x894D 0x7ABA # +0x894E 0x4E11 # +0x894F 0x7893 # +0x8950 0x81FC # +0x8951 0x6E26 # +0x8952 0x5618 # +0x8953 0x5504 # +0x8954 0x6B1D # +0x8955 0x851A # +0x8956 0x9C3B # +0x8957 0x59E5 # +0x8958 0x53A9 # +0x8959 0x6D66 # +0x895A 0x74DC # +0x895B 0x958F # +0x895C 0x5642 # +0x895D 0x4E91 # +0x895E 0x904B # +0x895F 0x96F2 # +0x8960 0x834F # +0x8961 0x990C # +0x8962 0x53E1 # +0x8963 0x55B6 # +0x8964 0x5B30 # +0x8965 0x5F71 # +0x8966 0x6620 # +0x8967 0x66F3 # +0x8968 0x6804 # +0x8969 0x6C38 # +0x896A 0x6CF3 # +0x896B 0x6D29 # +0x896C 0x745B # +0x896D 0x76C8 # +0x896E 0x7A4E # +0x896F 0x9834 # +0x8970 0x82F1 # +0x8971 0x885B # +0x8972 0x8A60 # +0x8973 0x92ED # +0x8974 0x6DB2 # +0x8975 0x75AB # +0x8976 0x76CA # +0x8977 0x99C5 # +0x8978 0x60A6 # +0x8979 0x8B01 # +0x897A 0x8D8A # +0x897B 0x95B2 # +0x897C 0x698E # +0x897D 0x53AD # +0x897E 0x5186 # +0x8980 0x5712 # +0x8981 0x5830 # +0x8982 0x5944 # +0x8983 0x5BB4 # +0x8984 0x5EF6 # +0x8985 0x6028 # +0x8986 0x63A9 # +0x8987 0x63F4 # +0x8988 0x6CBF # +0x8989 0x6F14 # +0x898A 0x708E # +0x898B 0x7114 # +0x898C 0x7159 # +0x898D 0x71D5 # +0x898E 0x733F # +0x898F 0x7E01 # +0x8990 0x8276 # +0x8991 0x82D1 # +0x8992 0x8597 # +0x8993 0x9060 # +0x8994 0x925B # +0x8995 0x9D1B # +0x8996 0x5869 # +0x8997 0x65BC # +0x8998 0x6C5A # +0x8999 0x7525 # +0x899A 0x51F9 # +0x899B 0x592E # +0x899C 0x5965 # +0x899D 0x5F80 # +0x899E 0x5FDC # +0x899F 0x62BC # +0x89A0 0x65FA # +0x89A1 0x6A2A # +0x89A2 0x6B27 # +0x89A3 0x6BB4 # +0x89A4 0x738B # +0x89A5 0x7FC1 # +0x89A6 0x8956 # +0x89A7 0x9D2C # +0x89A8 0x9D0E # +0x89A9 0x9EC4 # +0x89AA 0x5CA1 # +0x89AB 0x6C96 # +0x89AC 0x837B # +0x89AD 0x5104 # +0x89AE 0x5C4B # +0x89AF 0x61B6 # +0x89B0 0x81C6 # +0x89B1 0x6876 # +0x89B2 0x7261 # +0x89B3 0x4E59 # +0x89B4 0x4FFA # +0x89B5 0x5378 # +0x89B6 0x6069 # +0x89B7 0x6E29 # +0x89B8 0x7A4F # +0x89B9 0x97F3 # +0x89BA 0x4E0B # +0x89BB 0x5316 # +0x89BC 0x4EEE # +0x89BD 0x4F55 # +0x89BE 0x4F3D # +0x89BF 0x4FA1 # +0x89C0 0x4F73 # +0x89C1 0x52A0 # +0x89C2 0x53EF # +0x89C3 0x5609 # +0x89C4 0x590F # +0x89C5 0x5AC1 # +0x89C6 0x5BB6 # +0x89C7 0x5BE1 # +0x89C8 0x79D1 # +0x89C9 0x6687 # +0x89CA 0x679C # +0x89CB 0x67B6 # +0x89CC 0x6B4C # +0x89CD 0x6CB3 # +0x89CE 0x706B # +0x89CF 0x73C2 # +0x89D0 0x798D # +0x89D1 0x79BE # +0x89D2 0x7A3C # +0x89D3 0x7B87 # +0x89D4 0x82B1 # +0x89D5 0x82DB # +0x89D6 0x8304 # +0x89D7 0x8377 # +0x89D8 0x83EF # +0x89D9 0x83D3 # +0x89DA 0x8766 # +0x89DB 0x8AB2 # +0x89DC 0x5629 # +0x89DD 0x8CA8 # +0x89DE 0x8FE6 # +0x89DF 0x904E # +0x89E0 0x971E # +0x89E1 0x868A # +0x89E2 0x4FC4 # +0x89E3 0x5CE8 # +0x89E4 0x6211 # +0x89E5 0x7259 # +0x89E6 0x753B # +0x89E7 0x81E5 # +0x89E8 0x82BD # +0x89E9 0x86FE # +0x89EA 0x8CC0 # +0x89EB 0x96C5 # +0x89EC 0x9913 # +0x89ED 0x99D5 # +0x89EE 0x4ECB # +0x89EF 0x4F1A # +0x89F0 0x89E3 # +0x89F1 0x56DE # +0x89F2 0x584A # +0x89F3 0x58CA # +0x89F4 0x5EFB # +0x89F5 0x5FEB # +0x89F6 0x602A # +0x89F7 0x6094 # +0x89F8 0x6062 # +0x89F9 0x61D0 # +0x89FA 0x6212 # +0x89FB 0x62D0 # +0x89FC 0x6539 # +0x8A40 0x9B41 # +0x8A41 0x6666 # +0x8A42 0x68B0 # +0x8A43 0x6D77 # +0x8A44 0x7070 # +0x8A45 0x754C # +0x8A46 0x7686 # +0x8A47 0x7D75 # +0x8A48 0x82A5 # +0x8A49 0x87F9 # +0x8A4A 0x958B # +0x8A4B 0x968E # +0x8A4C 0x8C9D # +0x8A4D 0x51F1 # +0x8A4E 0x52BE # +0x8A4F 0x5916 # +0x8A50 0x54B3 # +0x8A51 0x5BB3 # +0x8A52 0x5D16 # +0x8A53 0x6168 # +0x8A54 0x6982 # +0x8A55 0x6DAF # +0x8A56 0x788D # +0x8A57 0x84CB # +0x8A58 0x8857 # +0x8A59 0x8A72 # +0x8A5A 0x93A7 # +0x8A5B 0x9AB8 # +0x8A5C 0x6D6C # +0x8A5D 0x99A8 # +0x8A5E 0x86D9 # +0x8A5F 0x57A3 # +0x8A60 0x67FF # +0x8A61 0x86CE # +0x8A62 0x920E # +0x8A63 0x5283 # +0x8A64 0x5687 # +0x8A65 0x5404 # +0x8A66 0x5ED3 # +0x8A67 0x62E1 # +0x8A68 0x64B9 # +0x8A69 0x683C # +0x8A6A 0x6838 # +0x8A6B 0x6BBB # +0x8A6C 0x7372 # +0x8A6D 0x78BA # +0x8A6E 0x7A6B # +0x8A6F 0x899A # +0x8A70 0x89D2 # +0x8A71 0x8D6B # +0x8A72 0x8F03 # +0x8A73 0x90ED # +0x8A74 0x95A3 # +0x8A75 0x9694 # +0x8A76 0x9769 # +0x8A77 0x5B66 # +0x8A78 0x5CB3 # +0x8A79 0x697D # +0x8A7A 0x984D # +0x8A7B 0x984E # +0x8A7C 0x639B # +0x8A7D 0x7B20 # +0x8A7E 0x6A2B # +0x8A80 0x6A7F # +0x8A81 0x68B6 # +0x8A82 0x9C0D # +0x8A83 0x6F5F # +0x8A84 0x5272 # +0x8A85 0x559D # +0x8A86 0x6070 # +0x8A87 0x62EC # +0x8A88 0x6D3B # +0x8A89 0x6E07 # +0x8A8A 0x6ED1 # +0x8A8B 0x845B # +0x8A8C 0x8910 # +0x8A8D 0x8F44 # +0x8A8E 0x4E14 # +0x8A8F 0x9C39 # +0x8A90 0x53F6 # +0x8A91 0x691B # +0x8A92 0x6A3A # +0x8A93 0x9784 # +0x8A94 0x682A # +0x8A95 0x515C # +0x8A96 0x7AC3 # +0x8A97 0x84B2 # +0x8A98 0x91DC # +0x8A99 0x938C # +0x8A9A 0x565B # +0x8A9B 0x9D28 # +0x8A9C 0x6822 # +0x8A9D 0x8305 # +0x8A9E 0x8431 # +0x8A9F 0x7CA5 # +0x8AA0 0x5208 # +0x8AA1 0x82C5 # +0x8AA2 0x74E6 # +0x8AA3 0x4E7E # +0x8AA4 0x4F83 # +0x8AA5 0x51A0 # +0x8AA6 0x5BD2 # +0x8AA7 0x520A # +0x8AA8 0x52D8 # +0x8AA9 0x52E7 # +0x8AAA 0x5DFB # +0x8AAB 0x559A # +0x8AAC 0x582A # +0x8AAD 0x59E6 # +0x8AAE 0x5B8C # +0x8AAF 0x5B98 # +0x8AB0 0x5BDB # +0x8AB1 0x5E72 # +0x8AB2 0x5E79 # +0x8AB3 0x60A3 # +0x8AB4 0x611F # +0x8AB5 0x6163 # +0x8AB6 0x61BE # +0x8AB7 0x63DB # +0x8AB8 0x6562 # +0x8AB9 0x67D1 # +0x8ABA 0x6853 # +0x8ABB 0x68FA # +0x8ABC 0x6B3E # +0x8ABD 0x6B53 # +0x8ABE 0x6C57 # +0x8ABF 0x6F22 # +0x8AC0 0x6F97 # +0x8AC1 0x6F45 # +0x8AC2 0x74B0 # +0x8AC3 0x7518 # +0x8AC4 0x76E3 # +0x8AC5 0x770B # +0x8AC6 0x7AFF # +0x8AC7 0x7BA1 # +0x8AC8 0x7C21 # +0x8AC9 0x7DE9 # +0x8ACA 0x7F36 # +0x8ACB 0x7FF0 # +0x8ACC 0x809D # +0x8ACD 0x8266 # +0x8ACE 0x839E # +0x8ACF 0x89B3 # +0x8AD0 0x8ACC # +0x8AD1 0x8CAB # +0x8AD2 0x9084 # +0x8AD3 0x9451 # +0x8AD4 0x9593 # +0x8AD5 0x9591 # +0x8AD6 0x95A2 # +0x8AD7 0x9665 # +0x8AD8 0x97D3 # +0x8AD9 0x9928 # +0x8ADA 0x8218 # +0x8ADB 0x4E38 # +0x8ADC 0x542B # +0x8ADD 0x5CB8 # +0x8ADE 0x5DCC # +0x8ADF 0x73A9 # +0x8AE0 0x764C # +0x8AE1 0x773C # +0x8AE2 0x5CA9 # +0x8AE3 0x7FEB # +0x8AE4 0x8D0B # +0x8AE5 0x96C1 # +0x8AE6 0x9811 # +0x8AE7 0x9854 # +0x8AE8 0x9858 # +0x8AE9 0x4F01 # +0x8AEA 0x4F0E # +0x8AEB 0x5371 # +0x8AEC 0x559C # +0x8AED 0x5668 # +0x8AEE 0x57FA # +0x8AEF 0x5947 # +0x8AF0 0x5B09 # +0x8AF1 0x5BC4 # +0x8AF2 0x5C90 # +0x8AF3 0x5E0C # +0x8AF4 0x5E7E # +0x8AF5 0x5FCC # +0x8AF6 0x63EE # +0x8AF7 0x673A # +0x8AF8 0x65D7 # +0x8AF9 0x65E2 # +0x8AFA 0x671F # +0x8AFB 0x68CB # +0x8AFC 0x68C4 # +0x8B40 0x6A5F # +0x8B41 0x5E30 # +0x8B42 0x6BC5 # +0x8B43 0x6C17 # +0x8B44 0x6C7D # +0x8B45 0x757F # +0x8B46 0x7948 # +0x8B47 0x5B63 # +0x8B48 0x7A00 # +0x8B49 0x7D00 # +0x8B4A 0x5FBD # +0x8B4B 0x898F # +0x8B4C 0x8A18 # +0x8B4D 0x8CB4 # +0x8B4E 0x8D77 # +0x8B4F 0x8ECC # +0x8B50 0x8F1D # +0x8B51 0x98E2 # +0x8B52 0x9A0E # +0x8B53 0x9B3C # +0x8B54 0x4E80 # +0x8B55 0x507D # +0x8B56 0x5100 # +0x8B57 0x5993 # +0x8B58 0x5B9C # +0x8B59 0x622F # +0x8B5A 0x6280 # +0x8B5B 0x64EC # +0x8B5C 0x6B3A # +0x8B5D 0x72A0 # +0x8B5E 0x7591 # +0x8B5F 0x7947 # +0x8B60 0x7FA9 # +0x8B61 0x87FB # +0x8B62 0x8ABC # +0x8B63 0x8B70 # +0x8B64 0x63AC # +0x8B65 0x83CA # +0x8B66 0x97A0 # +0x8B67 0x5409 # +0x8B68 0x5403 # +0x8B69 0x55AB # +0x8B6A 0x6854 # +0x8B6B 0x6A58 # +0x8B6C 0x8A70 # +0x8B6D 0x7827 # +0x8B6E 0x6775 # +0x8B6F 0x9ECD # +0x8B70 0x5374 # +0x8B71 0x5BA2 # +0x8B72 0x811A # +0x8B73 0x8650 # +0x8B74 0x9006 # +0x8B75 0x4E18 # +0x8B76 0x4E45 # +0x8B77 0x4EC7 # +0x8B78 0x4F11 # +0x8B79 0x53CA # +0x8B7A 0x5438 # +0x8B7B 0x5BAE # +0x8B7C 0x5F13 # +0x8B7D 0x6025 # +0x8B7E 0x6551 # +0x8B80 0x673D # +0x8B81 0x6C42 # +0x8B82 0x6C72 # +0x8B83 0x6CE3 # +0x8B84 0x7078 # +0x8B85 0x7403 # +0x8B86 0x7A76 # +0x8B87 0x7AAE # +0x8B88 0x7B08 # +0x8B89 0x7D1A # +0x8B8A 0x7CFE # +0x8B8B 0x7D66 # +0x8B8C 0x65E7 # +0x8B8D 0x725B # +0x8B8E 0x53BB # +0x8B8F 0x5C45 # +0x8B90 0x5DE8 # +0x8B91 0x62D2 # +0x8B92 0x62E0 # +0x8B93 0x6319 # +0x8B94 0x6E20 # +0x8B95 0x865A # +0x8B96 0x8A31 # +0x8B97 0x8DDD # +0x8B98 0x92F8 # +0x8B99 0x6F01 # +0x8B9A 0x79A6 # +0x8B9B 0x9B5A # +0x8B9C 0x4EA8 # +0x8B9D 0x4EAB # +0x8B9E 0x4EAC # +0x8B9F 0x4F9B # +0x8BA0 0x4FA0 # +0x8BA1 0x50D1 # +0x8BA2 0x5147 # +0x8BA3 0x7AF6 # +0x8BA4 0x5171 # +0x8BA5 0x51F6 # +0x8BA6 0x5354 # +0x8BA7 0x5321 # +0x8BA8 0x537F # +0x8BA9 0x53EB # +0x8BAA 0x55AC # +0x8BAB 0x5883 # +0x8BAC 0x5CE1 # +0x8BAD 0x5F37 # +0x8BAE 0x5F4A # +0x8BAF 0x602F # +0x8BB0 0x6050 # +0x8BB1 0x606D # +0x8BB2 0x631F # +0x8BB3 0x6559 # +0x8BB4 0x6A4B # +0x8BB5 0x6CC1 # +0x8BB6 0x72C2 # +0x8BB7 0x72ED # +0x8BB8 0x77EF # +0x8BB9 0x80F8 # +0x8BBA 0x8105 # +0x8BBB 0x8208 # +0x8BBC 0x854E # +0x8BBD 0x90F7 # +0x8BBE 0x93E1 # +0x8BBF 0x97FF # +0x8BC0 0x9957 # +0x8BC1 0x9A5A # +0x8BC2 0x4EF0 # +0x8BC3 0x51DD # +0x8BC4 0x5C2D # +0x8BC5 0x6681 # +0x8BC6 0x696D # +0x8BC7 0x5C40 # +0x8BC8 0x66F2 # +0x8BC9 0x6975 # +0x8BCA 0x7389 # +0x8BCB 0x6850 # +0x8BCC 0x7C81 # +0x8BCD 0x50C5 # +0x8BCE 0x52E4 # +0x8BCF 0x5747 # +0x8BD0 0x5DFE # +0x8BD1 0x9326 # +0x8BD2 0x65A4 # +0x8BD3 0x6B23 # +0x8BD4 0x6B3D # +0x8BD5 0x7434 # +0x8BD6 0x7981 # +0x8BD7 0x79BD # +0x8BD8 0x7B4B # +0x8BD9 0x7DCA # +0x8BDA 0x82B9 # +0x8BDB 0x83CC # +0x8BDC 0x887F # +0x8BDD 0x895F # +0x8BDE 0x8B39 # +0x8BDF 0x8FD1 # +0x8BE0 0x91D1 # +0x8BE1 0x541F # +0x8BE2 0x9280 # +0x8BE3 0x4E5D # +0x8BE4 0x5036 # +0x8BE5 0x53E5 # +0x8BE6 0x533A # +0x8BE7 0x72D7 # +0x8BE8 0x7396 # +0x8BE9 0x77E9 # +0x8BEA 0x82E6 # +0x8BEB 0x8EAF # +0x8BEC 0x99C6 # +0x8BED 0x99C8 # +0x8BEE 0x99D2 # +0x8BEF 0x5177 # +0x8BF0 0x611A # +0x8BF1 0x865E # +0x8BF2 0x55B0 # +0x8BF3 0x7A7A # +0x8BF4 0x5076 # +0x8BF5 0x5BD3 # +0x8BF6 0x9047 # +0x8BF7 0x9685 # +0x8BF8 0x4E32 # +0x8BF9 0x6ADB # +0x8BFA 0x91E7 # +0x8BFB 0x5C51 # +0x8BFC 0x5C48 # +0x8C40 0x6398 # +0x8C41 0x7A9F # +0x8C42 0x6C93 # +0x8C43 0x9774 # +0x8C44 0x8F61 # +0x8C45 0x7AAA # +0x8C46 0x718A # +0x8C47 0x9688 # +0x8C48 0x7C82 # +0x8C49 0x6817 # +0x8C4A 0x7E70 # +0x8C4B 0x6851 # +0x8C4C 0x936C # +0x8C4D 0x52F2 # +0x8C4E 0x541B # +0x8C4F 0x85AB # +0x8C50 0x8A13 # +0x8C51 0x7FA4 # +0x8C52 0x8ECD # +0x8C53 0x90E1 # +0x8C54 0x5366 # +0x8C55 0x8888 # +0x8C56 0x7941 # +0x8C57 0x4FC2 # +0x8C58 0x50BE # +0x8C59 0x5211 # +0x8C5A 0x5144 # +0x8C5B 0x5553 # +0x8C5C 0x572D # +0x8C5D 0x73EA # +0x8C5E 0x578B # +0x8C5F 0x5951 # +0x8C60 0x5F62 # +0x8C61 0x5F84 # +0x8C62 0x6075 # +0x8C63 0x6176 # +0x8C64 0x6167 # +0x8C65 0x61A9 # +0x8C66 0x63B2 # +0x8C67 0x643A # +0x8C68 0x656C # +0x8C69 0x666F # +0x8C6A 0x6842 # +0x8C6B 0x6E13 # +0x8C6C 0x7566 # +0x8C6D 0x7A3D # +0x8C6E 0x7CFB # +0x8C6F 0x7D4C # +0x8C70 0x7D99 # +0x8C71 0x7E4B # +0x8C72 0x7F6B # +0x8C73 0x830E # +0x8C74 0x834A # +0x8C75 0x86CD # +0x8C76 0x8A08 # +0x8C77 0x8A63 # +0x8C78 0x8B66 # +0x8C79 0x8EFD # +0x8C7A 0x981A # +0x8C7B 0x9D8F # +0x8C7C 0x82B8 # +0x8C7D 0x8FCE # +0x8C7E 0x9BE8 # +0x8C80 0x5287 # +0x8C81 0x621F # +0x8C82 0x6483 # +0x8C83 0x6FC0 # +0x8C84 0x9699 # +0x8C85 0x6841 # +0x8C86 0x5091 # +0x8C87 0x6B20 # +0x8C88 0x6C7A # +0x8C89 0x6F54 # +0x8C8A 0x7A74 # +0x8C8B 0x7D50 # +0x8C8C 0x8840 # +0x8C8D 0x8A23 # +0x8C8E 0x6708 # +0x8C8F 0x4EF6 # +0x8C90 0x5039 # +0x8C91 0x5026 # +0x8C92 0x5065 # +0x8C93 0x517C # +0x8C94 0x5238 # +0x8C95 0x5263 # +0x8C96 0x55A7 # +0x8C97 0x570F # +0x8C98 0x5805 # +0x8C99 0x5ACC # +0x8C9A 0x5EFA # +0x8C9B 0x61B2 # +0x8C9C 0x61F8 # +0x8C9D 0x62F3 # +0x8C9E 0x6372 # +0x8C9F 0x691C # +0x8CA0 0x6A29 # +0x8CA1 0x727D # +0x8CA2 0x72AC # +0x8CA3 0x732E # +0x8CA4 0x7814 # +0x8CA5 0x786F # +0x8CA6 0x7D79 # +0x8CA7 0x770C # +0x8CA8 0x80A9 # +0x8CA9 0x898B # +0x8CAA 0x8B19 # +0x8CAB 0x8CE2 # +0x8CAC 0x8ED2 # +0x8CAD 0x9063 # +0x8CAE 0x9375 # +0x8CAF 0x967A # +0x8CB0 0x9855 # +0x8CB1 0x9A13 # +0x8CB2 0x9E78 # +0x8CB3 0x5143 # +0x8CB4 0x539F # +0x8CB5 0x53B3 # +0x8CB6 0x5E7B # +0x8CB7 0x5F26 # +0x8CB8 0x6E1B # +0x8CB9 0x6E90 # +0x8CBA 0x7384 # +0x8CBB 0x73FE # +0x8CBC 0x7D43 # +0x8CBD 0x8237 # +0x8CBE 0x8A00 # +0x8CBF 0x8AFA # +0x8CC0 0x9650 # +0x8CC1 0x4E4E # +0x8CC2 0x500B # +0x8CC3 0x53E4 # +0x8CC4 0x547C # +0x8CC5 0x56FA # +0x8CC6 0x59D1 # +0x8CC7 0x5B64 # +0x8CC8 0x5DF1 # +0x8CC9 0x5EAB # +0x8CCA 0x5F27 # +0x8CCB 0x6238 # +0x8CCC 0x6545 # +0x8CCD 0x67AF # +0x8CCE 0x6E56 # +0x8CCF 0x72D0 # +0x8CD0 0x7CCA # +0x8CD1 0x88B4 # +0x8CD2 0x80A1 # +0x8CD3 0x80E1 # +0x8CD4 0x83F0 # +0x8CD5 0x864E # +0x8CD6 0x8A87 # +0x8CD7 0x8DE8 # +0x8CD8 0x9237 # +0x8CD9 0x96C7 # +0x8CDA 0x9867 # +0x8CDB 0x9F13 # +0x8CDC 0x4E94 # +0x8CDD 0x4E92 # +0x8CDE 0x4F0D # +0x8CDF 0x5348 # +0x8CE0 0x5449 # +0x8CE1 0x543E # +0x8CE2 0x5A2F # +0x8CE3 0x5F8C # +0x8CE4 0x5FA1 # +0x8CE5 0x609F # +0x8CE6 0x68A7 # +0x8CE7 0x6A8E # +0x8CE8 0x745A # +0x8CE9 0x7881 # +0x8CEA 0x8A9E # +0x8CEB 0x8AA4 # +0x8CEC 0x8B77 # +0x8CED 0x9190 # +0x8CEE 0x4E5E # +0x8CEF 0x9BC9 # +0x8CF0 0x4EA4 # +0x8CF1 0x4F7C # +0x8CF2 0x4FAF # +0x8CF3 0x5019 # +0x8CF4 0x5016 # +0x8CF5 0x5149 # +0x8CF6 0x516C # +0x8CF7 0x529F # +0x8CF8 0x52B9 # +0x8CF9 0x52FE # +0x8CFA 0x539A # +0x8CFB 0x53E3 # +0x8CFC 0x5411 # +0x8D40 0x540E # +0x8D41 0x5589 # +0x8D42 0x5751 # +0x8D43 0x57A2 # +0x8D44 0x597D # +0x8D45 0x5B54 # +0x8D46 0x5B5D # +0x8D47 0x5B8F # +0x8D48 0x5DE5 # +0x8D49 0x5DE7 # +0x8D4A 0x5DF7 # +0x8D4B 0x5E78 # +0x8D4C 0x5E83 # +0x8D4D 0x5E9A # +0x8D4E 0x5EB7 # +0x8D4F 0x5F18 # +0x8D50 0x6052 # +0x8D51 0x614C # +0x8D52 0x6297 # +0x8D53 0x62D8 # +0x8D54 0x63A7 # +0x8D55 0x653B # +0x8D56 0x6602 # +0x8D57 0x6643 # +0x8D58 0x66F4 # +0x8D59 0x676D # +0x8D5A 0x6821 # +0x8D5B 0x6897 # +0x8D5C 0x69CB # +0x8D5D 0x6C5F # +0x8D5E 0x6D2A # +0x8D5F 0x6D69 # +0x8D60 0x6E2F # +0x8D61 0x6E9D # +0x8D62 0x7532 # +0x8D63 0x7687 # +0x8D64 0x786C # +0x8D65 0x7A3F # +0x8D66 0x7CE0 # +0x8D67 0x7D05 # +0x8D68 0x7D18 # +0x8D69 0x7D5E # +0x8D6A 0x7DB1 # +0x8D6B 0x8015 # +0x8D6C 0x8003 # +0x8D6D 0x80AF # +0x8D6E 0x80B1 # +0x8D6F 0x8154 # +0x8D70 0x818F # +0x8D71 0x822A # +0x8D72 0x8352 # +0x8D73 0x884C # +0x8D74 0x8861 # +0x8D75 0x8B1B # +0x8D76 0x8CA2 # +0x8D77 0x8CFC # +0x8D78 0x90CA # +0x8D79 0x9175 # +0x8D7A 0x9271 # +0x8D7B 0x783F # +0x8D7C 0x92FC # +0x8D7D 0x95A4 # +0x8D7E 0x964D # +0x8D80 0x9805 # +0x8D81 0x9999 # +0x8D82 0x9AD8 # +0x8D83 0x9D3B # +0x8D84 0x525B # +0x8D85 0x52AB # +0x8D86 0x53F7 # +0x8D87 0x5408 # +0x8D88 0x58D5 # +0x8D89 0x62F7 # +0x8D8A 0x6FE0 # +0x8D8B 0x8C6A # +0x8D8C 0x8F5F # +0x8D8D 0x9EB9 # +0x8D8E 0x514B # +0x8D8F 0x523B # +0x8D90 0x544A # +0x8D91 0x56FD # +0x8D92 0x7A40 # +0x8D93 0x9177 # +0x8D94 0x9D60 # +0x8D95 0x9ED2 # +0x8D96 0x7344 # +0x8D97 0x6F09 # +0x8D98 0x8170 # +0x8D99 0x7511 # +0x8D9A 0x5FFD # +0x8D9B 0x60DA # +0x8D9C 0x9AA8 # +0x8D9D 0x72DB # +0x8D9E 0x8FBC # +0x8D9F 0x6B64 # +0x8DA0 0x9803 # +0x8DA1 0x4ECA # +0x8DA2 0x56F0 # +0x8DA3 0x5764 # +0x8DA4 0x58BE # +0x8DA5 0x5A5A # +0x8DA6 0x6068 # +0x8DA7 0x61C7 # +0x8DA8 0x660F # +0x8DA9 0x6606 # +0x8DAA 0x6839 # +0x8DAB 0x68B1 # +0x8DAC 0x6DF7 # +0x8DAD 0x75D5 # +0x8DAE 0x7D3A # +0x8DAF 0x826E # +0x8DB0 0x9B42 # +0x8DB1 0x4E9B # +0x8DB2 0x4F50 # +0x8DB3 0x53C9 # +0x8DB4 0x5506 # +0x8DB5 0x5D6F # +0x8DB6 0x5DE6 # +0x8DB7 0x5DEE # +0x8DB8 0x67FB # +0x8DB9 0x6C99 # +0x8DBA 0x7473 # +0x8DBB 0x7802 # +0x8DBC 0x8A50 # +0x8DBD 0x9396 # +0x8DBE 0x88DF # +0x8DBF 0x5750 # +0x8DC0 0x5EA7 # +0x8DC1 0x632B # +0x8DC2 0x50B5 # +0x8DC3 0x50AC # +0x8DC4 0x518D # +0x8DC5 0x6700 # +0x8DC6 0x54C9 # +0x8DC7 0x585E # +0x8DC8 0x59BB # +0x8DC9 0x5BB0 # +0x8DCA 0x5F69 # +0x8DCB 0x624D # +0x8DCC 0x63A1 # +0x8DCD 0x683D # +0x8DCE 0x6B73 # +0x8DCF 0x6E08 # +0x8DD0 0x707D # +0x8DD1 0x91C7 # +0x8DD2 0x7280 # +0x8DD3 0x7815 # +0x8DD4 0x7826 # +0x8DD5 0x796D # +0x8DD6 0x658E # +0x8DD7 0x7D30 # +0x8DD8 0x83DC # +0x8DD9 0x88C1 # +0x8DDA 0x8F09 # +0x8DDB 0x969B # +0x8DDC 0x5264 # +0x8DDD 0x5728 # +0x8DDE 0x6750 # +0x8DDF 0x7F6A # +0x8DE0 0x8CA1 # +0x8DE1 0x51B4 # +0x8DE2 0x5742 # +0x8DE3 0x962A # +0x8DE4 0x583A # +0x8DE5 0x698A # +0x8DE6 0x80B4 # +0x8DE7 0x54B2 # +0x8DE8 0x5D0E # +0x8DE9 0x57FC # +0x8DEA 0x7895 # +0x8DEB 0x9DFA # +0x8DEC 0x4F5C # +0x8DED 0x524A # +0x8DEE 0x548B # +0x8DEF 0x643E # +0x8DF0 0x6628 # +0x8DF1 0x6714 # +0x8DF2 0x67F5 # +0x8DF3 0x7A84 # +0x8DF4 0x7B56 # +0x8DF5 0x7D22 # +0x8DF6 0x932F # +0x8DF7 0x685C # +0x8DF8 0x9BAD # +0x8DF9 0x7B39 # +0x8DFA 0x5319 # +0x8DFB 0x518A # +0x8DFC 0x5237 # +0x8E40 0x5BDF # +0x8E41 0x62F6 # +0x8E42 0x64AE # +0x8E43 0x64E6 # +0x8E44 0x672D # +0x8E45 0x6BBA # +0x8E46 0x85A9 # +0x8E47 0x96D1 # +0x8E48 0x7690 # +0x8E49 0x9BD6 # +0x8E4A 0x634C # +0x8E4B 0x9306 # +0x8E4C 0x9BAB # +0x8E4D 0x76BF # +0x8E4E 0x6652 # +0x8E4F 0x4E09 # +0x8E50 0x5098 # +0x8E51 0x53C2 # +0x8E52 0x5C71 # +0x8E53 0x60E8 # +0x8E54 0x6492 # +0x8E55 0x6563 # +0x8E56 0x685F # +0x8E57 0x71E6 # +0x8E58 0x73CA # +0x8E59 0x7523 # +0x8E5A 0x7B97 # +0x8E5B 0x7E82 # +0x8E5C 0x8695 # +0x8E5D 0x8B83 # +0x8E5E 0x8CDB # +0x8E5F 0x9178 # +0x8E60 0x9910 # +0x8E61 0x65AC # +0x8E62 0x66AB # +0x8E63 0x6B8B # +0x8E64 0x4ED5 # +0x8E65 0x4ED4 # +0x8E66 0x4F3A # +0x8E67 0x4F7F # +0x8E68 0x523A # +0x8E69 0x53F8 # +0x8E6A 0x53F2 # +0x8E6B 0x55E3 # +0x8E6C 0x56DB # +0x8E6D 0x58EB # +0x8E6E 0x59CB # +0x8E6F 0x59C9 # +0x8E70 0x59FF # +0x8E71 0x5B50 # +0x8E72 0x5C4D # +0x8E73 0x5E02 # +0x8E74 0x5E2B # +0x8E75 0x5FD7 # +0x8E76 0x601D # +0x8E77 0x6307 # +0x8E78 0x652F # +0x8E79 0x5B5C # +0x8E7A 0x65AF # +0x8E7B 0x65BD # +0x8E7C 0x65E8 # +0x8E7D 0x679D # +0x8E7E 0x6B62 # +0x8E80 0x6B7B # +0x8E81 0x6C0F # +0x8E82 0x7345 # +0x8E83 0x7949 # +0x8E84 0x79C1 # +0x8E85 0x7CF8 # +0x8E86 0x7D19 # +0x8E87 0x7D2B # +0x8E88 0x80A2 # +0x8E89 0x8102 # +0x8E8A 0x81F3 # +0x8E8B 0x8996 # +0x8E8C 0x8A5E # +0x8E8D 0x8A69 # +0x8E8E 0x8A66 # +0x8E8F 0x8A8C # +0x8E90 0x8AEE # +0x8E91 0x8CC7 # +0x8E92 0x8CDC # +0x8E93 0x96CC # +0x8E94 0x98FC # +0x8E95 0x6B6F # +0x8E96 0x4E8B # +0x8E97 0x4F3C # +0x8E98 0x4F8D # +0x8E99 0x5150 # +0x8E9A 0x5B57 # +0x8E9B 0x5BFA # +0x8E9C 0x6148 # +0x8E9D 0x6301 # +0x8E9E 0x6642 # +0x8E9F 0x6B21 # +0x8EA0 0x6ECB # +0x8EA1 0x6CBB # +0x8EA2 0x723E # +0x8EA3 0x74BD # +0x8EA4 0x75D4 # +0x8EA5 0x78C1 # +0x8EA6 0x793A # +0x8EA7 0x800C # +0x8EA8 0x8033 # +0x8EA9 0x81EA # +0x8EAA 0x8494 # +0x8EAB 0x8F9E # +0x8EAC 0x6C50 # +0x8EAD 0x9E7F # +0x8EAE 0x5F0F # +0x8EAF 0x8B58 # +0x8EB0 0x9D2B # +0x8EB1 0x7AFA # +0x8EB2 0x8EF8 # +0x8EB3 0x5B8D # +0x8EB4 0x96EB # +0x8EB5 0x4E03 # +0x8EB6 0x53F1 # +0x8EB7 0x57F7 # +0x8EB8 0x5931 # +0x8EB9 0x5AC9 # +0x8EBA 0x5BA4 # +0x8EBB 0x6089 # +0x8EBC 0x6E7F # +0x8EBD 0x6F06 # +0x8EBE 0x75BE # +0x8EBF 0x8CEA # +0x8EC0 0x5B9F # +0x8EC1 0x8500 # +0x8EC2 0x7BE0 # +0x8EC3 0x5072 # +0x8EC4 0x67F4 # +0x8EC5 0x829D # +0x8EC6 0x5C61 # +0x8EC7 0x854A # +0x8EC8 0x7E1E # +0x8EC9 0x820E # +0x8ECA 0x5199 # +0x8ECB 0x5C04 # +0x8ECC 0x6368 # +0x8ECD 0x8D66 # +0x8ECE 0x659C # +0x8ECF 0x716E # +0x8ED0 0x793E # +0x8ED1 0x7D17 # +0x8ED2 0x8005 # +0x8ED3 0x8B1D # +0x8ED4 0x8ECA # +0x8ED5 0x906E # +0x8ED6 0x86C7 # +0x8ED7 0x90AA # +0x8ED8 0x501F # +0x8ED9 0x52FA # +0x8EDA 0x5C3A # +0x8EDB 0x6753 # +0x8EDC 0x707C # +0x8EDD 0x7235 # +0x8EDE 0x914C # +0x8EDF 0x91C8 # +0x8EE0 0x932B # +0x8EE1 0x82E5 # +0x8EE2 0x5BC2 # +0x8EE3 0x5F31 # +0x8EE4 0x60F9 # +0x8EE5 0x4E3B # +0x8EE6 0x53D6 # +0x8EE7 0x5B88 # +0x8EE8 0x624B # +0x8EE9 0x6731 # +0x8EEA 0x6B8A # +0x8EEB 0x72E9 # +0x8EEC 0x73E0 # +0x8EED 0x7A2E # +0x8EEE 0x816B # +0x8EEF 0x8DA3 # +0x8EF0 0x9152 # +0x8EF1 0x9996 # +0x8EF2 0x5112 # +0x8EF3 0x53D7 # +0x8EF4 0x546A # +0x8EF5 0x5BFF # +0x8EF6 0x6388 # +0x8EF7 0x6A39 # +0x8EF8 0x7DAC # +0x8EF9 0x9700 # +0x8EFA 0x56DA # +0x8EFB 0x53CE # +0x8EFC 0x5468 # +0x8F40 0x5B97 # +0x8F41 0x5C31 # +0x8F42 0x5DDE # +0x8F43 0x4FEE # +0x8F44 0x6101 # +0x8F45 0x62FE # +0x8F46 0x6D32 # +0x8F47 0x79C0 # +0x8F48 0x79CB # +0x8F49 0x7D42 # +0x8F4A 0x7E4D # +0x8F4B 0x7FD2 # +0x8F4C 0x81ED # +0x8F4D 0x821F # +0x8F4E 0x8490 # +0x8F4F 0x8846 # +0x8F50 0x8972 # +0x8F51 0x8B90 # +0x8F52 0x8E74 # +0x8F53 0x8F2F # +0x8F54 0x9031 # +0x8F55 0x914B # +0x8F56 0x916C # +0x8F57 0x96C6 # +0x8F58 0x919C # +0x8F59 0x4EC0 # +0x8F5A 0x4F4F # +0x8F5B 0x5145 # +0x8F5C 0x5341 # +0x8F5D 0x5F93 # +0x8F5E 0x620E # +0x8F5F 0x67D4 # +0x8F60 0x6C41 # +0x8F61 0x6E0B # +0x8F62 0x7363 # +0x8F63 0x7E26 # +0x8F64 0x91CD # +0x8F65 0x9283 # +0x8F66 0x53D4 # +0x8F67 0x5919 # +0x8F68 0x5BBF # +0x8F69 0x6DD1 # +0x8F6A 0x795D # +0x8F6B 0x7E2E # +0x8F6C 0x7C9B # +0x8F6D 0x587E # +0x8F6E 0x719F # +0x8F6F 0x51FA # +0x8F70 0x8853 # +0x8F71 0x8FF0 # +0x8F72 0x4FCA # +0x8F73 0x5CFB # +0x8F74 0x6625 # +0x8F75 0x77AC # +0x8F76 0x7AE3 # +0x8F77 0x821C # +0x8F78 0x99FF # +0x8F79 0x51C6 # +0x8F7A 0x5FAA # +0x8F7B 0x65EC # +0x8F7C 0x696F # +0x8F7D 0x6B89 # +0x8F7E 0x6DF3 # +0x8F80 0x6E96 # +0x8F81 0x6F64 # +0x8F82 0x76FE # +0x8F83 0x7D14 # +0x8F84 0x5DE1 # +0x8F85 0x9075 # +0x8F86 0x9187 # +0x8F87 0x9806 # +0x8F88 0x51E6 # +0x8F89 0x521D # +0x8F8A 0x6240 # +0x8F8B 0x6691 # +0x8F8C 0x66D9 # +0x8F8D 0x6E1A # +0x8F8E 0x5EB6 # +0x8F8F 0x7DD2 # +0x8F90 0x7F72 # +0x8F91 0x66F8 # +0x8F92 0x85AF # +0x8F93 0x85F7 # +0x8F94 0x8AF8 # +0x8F95 0x52A9 # +0x8F96 0x53D9 # +0x8F97 0x5973 # +0x8F98 0x5E8F # +0x8F99 0x5F90 # +0x8F9A 0x6055 # +0x8F9B 0x92E4 # +0x8F9C 0x9664 # +0x8F9D 0x50B7 # +0x8F9E 0x511F # +0x8F9F 0x52DD # +0x8FA0 0x5320 # +0x8FA1 0x5347 # +0x8FA2 0x53EC # +0x8FA3 0x54E8 # +0x8FA4 0x5546 # +0x8FA5 0x5531 # +0x8FA6 0x5617 # +0x8FA7 0x5968 # +0x8FA8 0x59BE # +0x8FA9 0x5A3C # +0x8FAA 0x5BB5 # +0x8FAB 0x5C06 # +0x8FAC 0x5C0F # +0x8FAD 0x5C11 # +0x8FAE 0x5C1A # +0x8FAF 0x5E84 # +0x8FB0 0x5E8A # +0x8FB1 0x5EE0 # +0x8FB2 0x5F70 # +0x8FB3 0x627F # +0x8FB4 0x6284 # +0x8FB5 0x62DB # +0x8FB6 0x638C # +0x8FB7 0x6377 # +0x8FB8 0x6607 # +0x8FB9 0x660C # +0x8FBA 0x662D # +0x8FBB 0x6676 # +0x8FBC 0x677E # +0x8FBD 0x68A2 # +0x8FBE 0x6A1F # +0x8FBF 0x6A35 # +0x8FC0 0x6CBC # +0x8FC1 0x6D88 # +0x8FC2 0x6E09 # +0x8FC3 0x6E58 # +0x8FC4 0x713C # +0x8FC5 0x7126 # +0x8FC6 0x7167 # +0x8FC7 0x75C7 # +0x8FC8 0x7701 # +0x8FC9 0x785D # +0x8FCA 0x7901 # +0x8FCB 0x7965 # +0x8FCC 0x79F0 # +0x8FCD 0x7AE0 # +0x8FCE 0x7B11 # +0x8FCF 0x7CA7 # +0x8FD0 0x7D39 # +0x8FD1 0x8096 # +0x8FD2 0x83D6 # +0x8FD3 0x848B # +0x8FD4 0x8549 # +0x8FD5 0x885D # +0x8FD6 0x88F3 # +0x8FD7 0x8A1F # +0x8FD8 0x8A3C # +0x8FD9 0x8A54 # +0x8FDA 0x8A73 # +0x8FDB 0x8C61 # +0x8FDC 0x8CDE # +0x8FDD 0x91A4 # +0x8FDE 0x9266 # +0x8FDF 0x937E # +0x8FE0 0x9418 # +0x8FE1 0x969C # +0x8FE2 0x9798 # +0x8FE3 0x4E0A # +0x8FE4 0x4E08 # +0x8FE5 0x4E1E # +0x8FE6 0x4E57 # +0x8FE7 0x5197 # +0x8FE8 0x5270 # +0x8FE9 0x57CE # +0x8FEA 0x5834 # +0x8FEB 0x58CC # +0x8FEC 0x5B22 # +0x8FED 0x5E38 # +0x8FEE 0x60C5 # +0x8FEF 0x64FE # +0x8FF0 0x6761 # +0x8FF1 0x6756 # +0x8FF2 0x6D44 # +0x8FF3 0x72B6 # +0x8FF4 0x7573 # +0x8FF5 0x7A63 # +0x8FF6 0x84B8 # +0x8FF7 0x8B72 # +0x8FF8 0x91B8 # +0x8FF9 0x9320 # +0x8FFA 0x5631 # +0x8FFB 0x57F4 # +0x8FFC 0x98FE # +0x9040 0x62ED # +0x9041 0x690D # +0x9042 0x6B96 # +0x9043 0x71ED # +0x9044 0x7E54 # +0x9045 0x8077 # +0x9046 0x8272 # +0x9047 0x89E6 # +0x9048 0x98DF # +0x9049 0x8755 # +0x904A 0x8FB1 # +0x904B 0x5C3B # +0x904C 0x4F38 # +0x904D 0x4FE1 # +0x904E 0x4FB5 # +0x904F 0x5507 # +0x9050 0x5A20 # +0x9051 0x5BDD # +0x9052 0x5BE9 # +0x9053 0x5FC3 # +0x9054 0x614E # +0x9055 0x632F # +0x9056 0x65B0 # +0x9057 0x664B # +0x9058 0x68EE # +0x9059 0x699B # +0x905A 0x6D78 # +0x905B 0x6DF1 # +0x905C 0x7533 # +0x905D 0x75B9 # +0x905E 0x771F # +0x905F 0x795E # +0x9060 0x79E6 # +0x9061 0x7D33 # +0x9062 0x81E3 # +0x9063 0x82AF # +0x9064 0x85AA # +0x9065 0x89AA # +0x9066 0x8A3A # +0x9067 0x8EAB # +0x9068 0x8F9B # +0x9069 0x9032 # +0x906A 0x91DD # +0x906B 0x9707 # +0x906C 0x4EBA # +0x906D 0x4EC1 # +0x906E 0x5203 # +0x906F 0x5875 # +0x9070 0x58EC # +0x9071 0x5C0B # +0x9072 0x751A # +0x9073 0x5C3D # +0x9074 0x814E # +0x9075 0x8A0A # +0x9076 0x8FC5 # +0x9077 0x9663 # +0x9078 0x976D # +0x9079 0x7B25 # +0x907A 0x8ACF # +0x907B 0x9808 # +0x907C 0x9162 # +0x907D 0x56F3 # +0x907E 0x53A8 # +0x9080 0x9017 # +0x9081 0x5439 # +0x9082 0x5782 # +0x9083 0x5E25 # +0x9084 0x63A8 # +0x9085 0x6C34 # +0x9086 0x708A # +0x9087 0x7761 # +0x9088 0x7C8B # +0x9089 0x7FE0 # +0x908A 0x8870 # +0x908B 0x9042 # +0x908C 0x9154 # +0x908D 0x9310 # +0x908E 0x9318 # +0x908F 0x968F # +0x9090 0x745E # +0x9091 0x9AC4 # +0x9092 0x5D07 # +0x9093 0x5D69 # +0x9094 0x6570 # +0x9095 0x67A2 # +0x9096 0x8DA8 # +0x9097 0x96DB # +0x9098 0x636E # +0x9099 0x6749 # +0x909A 0x6919 # +0x909B 0x83C5 # +0x909C 0x9817 # +0x909D 0x96C0 # +0x909E 0x88FE # +0x909F 0x6F84 # +0x90A0 0x647A # +0x90A1 0x5BF8 # +0x90A2 0x4E16 # +0x90A3 0x702C # +0x90A4 0x755D # +0x90A5 0x662F # +0x90A6 0x51C4 # +0x90A7 0x5236 # +0x90A8 0x52E2 # +0x90A9 0x59D3 # +0x90AA 0x5F81 # +0x90AB 0x6027 # +0x90AC 0x6210 # +0x90AD 0x653F # +0x90AE 0x6574 # +0x90AF 0x661F # +0x90B0 0x6674 # +0x90B1 0x68F2 # +0x90B2 0x6816 # +0x90B3 0x6B63 # +0x90B4 0x6E05 # +0x90B5 0x7272 # +0x90B6 0x751F # +0x90B7 0x76DB # +0x90B8 0x7CBE # +0x90B9 0x8056 # +0x90BA 0x58F0 # +0x90BB 0x88FD # +0x90BC 0x897F # +0x90BD 0x8AA0 # +0x90BE 0x8A93 # +0x90BF 0x8ACB # +0x90C0 0x901D # +0x90C1 0x9192 # +0x90C2 0x9752 # +0x90C3 0x9759 # +0x90C4 0x6589 # +0x90C5 0x7A0E # +0x90C6 0x8106 # +0x90C7 0x96BB # +0x90C8 0x5E2D # +0x90C9 0x60DC # +0x90CA 0x621A # +0x90CB 0x65A5 # +0x90CC 0x6614 # +0x90CD 0x6790 # +0x90CE 0x77F3 # +0x90CF 0x7A4D # +0x90D0 0x7C4D # +0x90D1 0x7E3E # +0x90D2 0x810A # +0x90D3 0x8CAC # +0x90D4 0x8D64 # +0x90D5 0x8DE1 # +0x90D6 0x8E5F # +0x90D7 0x78A9 # +0x90D8 0x5207 # +0x90D9 0x62D9 # +0x90DA 0x63A5 # +0x90DB 0x6442 # +0x90DC 0x6298 # +0x90DD 0x8A2D # +0x90DE 0x7A83 # +0x90DF 0x7BC0 # +0x90E0 0x8AAC # +0x90E1 0x96EA # +0x90E2 0x7D76 # +0x90E3 0x820C # +0x90E4 0x8749 # +0x90E5 0x4ED9 # +0x90E6 0x5148 # +0x90E7 0x5343 # +0x90E8 0x5360 # +0x90E9 0x5BA3 # +0x90EA 0x5C02 # +0x90EB 0x5C16 # +0x90EC 0x5DDD # +0x90ED 0x6226 # +0x90EE 0x6247 # +0x90EF 0x64B0 # +0x90F0 0x6813 # +0x90F1 0x6834 # +0x90F2 0x6CC9 # +0x90F3 0x6D45 # +0x90F4 0x6D17 # +0x90F5 0x67D3 # +0x90F6 0x6F5C # +0x90F7 0x714E # +0x90F8 0x717D # +0x90F9 0x65CB # +0x90FA 0x7A7F # +0x90FB 0x7BAD # +0x90FC 0x7DDA # +0x9140 0x7E4A # +0x9141 0x7FA8 # +0x9142 0x817A # +0x9143 0x821B # +0x9144 0x8239 # +0x9145 0x85A6 # +0x9146 0x8A6E # +0x9147 0x8CCE # +0x9148 0x8DF5 # +0x9149 0x9078 # +0x914A 0x9077 # +0x914B 0x92AD # +0x914C 0x9291 # +0x914D 0x9583 # +0x914E 0x9BAE # +0x914F 0x524D # +0x9150 0x5584 # +0x9151 0x6F38 # +0x9152 0x7136 # +0x9153 0x5168 # +0x9154 0x7985 # +0x9155 0x7E55 # +0x9156 0x81B3 # +0x9157 0x7CCE # +0x9158 0x564C # +0x9159 0x5851 # +0x915A 0x5CA8 # +0x915B 0x63AA # +0x915C 0x66FE # +0x915D 0x66FD # +0x915E 0x695A # +0x915F 0x72D9 # +0x9160 0x758F # +0x9161 0x758E # +0x9162 0x790E # +0x9163 0x7956 # +0x9164 0x79DF # +0x9165 0x7C97 # +0x9166 0x7D20 # +0x9167 0x7D44 # +0x9168 0x8607 # +0x9169 0x8A34 # +0x916A 0x963B # +0x916B 0x9061 # +0x916C 0x9F20 # +0x916D 0x50E7 # +0x916E 0x5275 # +0x916F 0x53CC # +0x9170 0x53E2 # +0x9171 0x5009 # +0x9172 0x55AA # +0x9173 0x58EE # +0x9174 0x594F # +0x9175 0x723D # +0x9176 0x5B8B # +0x9177 0x5C64 # +0x9178 0x531D # +0x9179 0x60E3 # +0x917A 0x60F3 # +0x917B 0x635C # +0x917C 0x6383 # +0x917D 0x633F # +0x917E 0x63BB # +0x9180 0x64CD # +0x9181 0x65E9 # +0x9182 0x66F9 # +0x9183 0x5DE3 # +0x9184 0x69CD # +0x9185 0x69FD # +0x9186 0x6F15 # +0x9187 0x71E5 # +0x9188 0x4E89 # +0x9189 0x75E9 # +0x918A 0x76F8 # +0x918B 0x7A93 # +0x918C 0x7CDF # +0x918D 0x7DCF # +0x918E 0x7D9C # +0x918F 0x8061 # +0x9190 0x8349 # +0x9191 0x8358 # +0x9192 0x846C # +0x9193 0x84BC # +0x9194 0x85FB # +0x9195 0x88C5 # +0x9196 0x8D70 # +0x9197 0x9001 # +0x9198 0x906D # +0x9199 0x9397 # +0x919A 0x971C # +0x919B 0x9A12 # +0x919C 0x50CF # +0x919D 0x5897 # +0x919E 0x618E # +0x919F 0x81D3 # +0x91A0 0x8535 # +0x91A1 0x8D08 # +0x91A2 0x9020 # +0x91A3 0x4FC3 # +0x91A4 0x5074 # +0x91A5 0x5247 # +0x91A6 0x5373 # +0x91A7 0x606F # +0x91A8 0x6349 # +0x91A9 0x675F # +0x91AA 0x6E2C # +0x91AB 0x8DB3 # +0x91AC 0x901F # +0x91AD 0x4FD7 # +0x91AE 0x5C5E # +0x91AF 0x8CCA # +0x91B0 0x65CF # +0x91B1 0x7D9A # +0x91B2 0x5352 # +0x91B3 0x8896 # +0x91B4 0x5176 # +0x91B5 0x63C3 # +0x91B6 0x5B58 # +0x91B7 0x5B6B # +0x91B8 0x5C0A # +0x91B9 0x640D # +0x91BA 0x6751 # +0x91BB 0x905C # +0x91BC 0x4ED6 # +0x91BD 0x591A # +0x91BE 0x592A # +0x91BF 0x6C70 # +0x91C0 0x8A51 # +0x91C1 0x553E # +0x91C2 0x5815 # +0x91C3 0x59A5 # +0x91C4 0x60F0 # +0x91C5 0x6253 # +0x91C6 0x67C1 # +0x91C7 0x8235 # +0x91C8 0x6955 # +0x91C9 0x9640 # +0x91CA 0x99C4 # +0x91CB 0x9A28 # +0x91CC 0x4F53 # +0x91CD 0x5806 # +0x91CE 0x5BFE # +0x91CF 0x8010 # +0x91D0 0x5CB1 # +0x91D1 0x5E2F # +0x91D2 0x5F85 # +0x91D3 0x6020 # +0x91D4 0x614B # +0x91D5 0x6234 # +0x91D6 0x66FF # +0x91D7 0x6CF0 # +0x91D8 0x6EDE # +0x91D9 0x80CE # +0x91DA 0x817F # +0x91DB 0x82D4 # +0x91DC 0x888B # +0x91DD 0x8CB8 # +0x91DE 0x9000 # +0x91DF 0x902E # +0x91E0 0x968A # +0x91E1 0x9EDB # +0x91E2 0x9BDB # +0x91E3 0x4EE3 # +0x91E4 0x53F0 # +0x91E5 0x5927 # +0x91E6 0x7B2C # +0x91E7 0x918D # +0x91E8 0x984C # +0x91E9 0x9DF9 # +0x91EA 0x6EDD # +0x91EB 0x7027 # +0x91EC 0x5353 # +0x91ED 0x5544 # +0x91EE 0x5B85 # +0x91EF 0x6258 # +0x91F0 0x629E # +0x91F1 0x62D3 # +0x91F2 0x6CA2 # +0x91F3 0x6FEF # +0x91F4 0x7422 # +0x91F5 0x8A17 # +0x91F6 0x9438 # +0x91F7 0x6FC1 # +0x91F8 0x8AFE # +0x91F9 0x8338 # +0x91FA 0x51E7 # +0x91FB 0x86F8 # +0x91FC 0x53EA # +0x9240 0x53E9 # +0x9241 0x4F46 # +0x9242 0x9054 # +0x9243 0x8FB0 # +0x9244 0x596A # +0x9245 0x8131 # +0x9246 0x5DFD # +0x9247 0x7AEA # +0x9248 0x8FBF # +0x9249 0x68DA # +0x924A 0x8C37 # +0x924B 0x72F8 # +0x924C 0x9C48 # +0x924D 0x6A3D # +0x924E 0x8AB0 # +0x924F 0x4E39 # +0x9250 0x5358 # +0x9251 0x5606 # +0x9252 0x5766 # +0x9253 0x62C5 # +0x9254 0x63A2 # +0x9255 0x65E6 # +0x9256 0x6B4E # +0x9257 0x6DE1 # +0x9258 0x6E5B # +0x9259 0x70AD # +0x925A 0x77ED # +0x925B 0x7AEF # +0x925C 0x7BAA # +0x925D 0x7DBB # +0x925E 0x803D # +0x925F 0x80C6 # +0x9260 0x86CB # +0x9261 0x8A95 # +0x9262 0x935B # +0x9263 0x56E3 # +0x9264 0x58C7 # +0x9265 0x5F3E # +0x9266 0x65AD # +0x9267 0x6696 # +0x9268 0x6A80 # +0x9269 0x6BB5 # +0x926A 0x7537 # +0x926B 0x8AC7 # +0x926C 0x5024 # +0x926D 0x77E5 # +0x926E 0x5730 # +0x926F 0x5F1B # +0x9270 0x6065 # +0x9271 0x667A # +0x9272 0x6C60 # +0x9273 0x75F4 # +0x9274 0x7A1A # +0x9275 0x7F6E # +0x9276 0x81F4 # +0x9277 0x8718 # +0x9278 0x9045 # +0x9279 0x99B3 # +0x927A 0x7BC9 # +0x927B 0x755C # +0x927C 0x7AF9 # +0x927D 0x7B51 # +0x927E 0x84C4 # +0x9280 0x9010 # +0x9281 0x79E9 # +0x9282 0x7A92 # +0x9283 0x8336 # +0x9284 0x5AE1 # +0x9285 0x7740 # +0x9286 0x4E2D # +0x9287 0x4EF2 # +0x9288 0x5B99 # +0x9289 0x5FE0 # +0x928A 0x62BD # +0x928B 0x663C # +0x928C 0x67F1 # +0x928D 0x6CE8 # +0x928E 0x866B # +0x928F 0x8877 # +0x9290 0x8A3B # +0x9291 0x914E # +0x9292 0x92F3 # +0x9293 0x99D0 # +0x9294 0x6A17 # +0x9295 0x7026 # +0x9296 0x732A # +0x9297 0x82E7 # +0x9298 0x8457 # +0x9299 0x8CAF # +0x929A 0x4E01 # +0x929B 0x5146 # +0x929C 0x51CB # +0x929D 0x558B # +0x929E 0x5BF5 # +0x929F 0x5E16 # +0x92A0 0x5E33 # +0x92A1 0x5E81 # +0x92A2 0x5F14 # +0x92A3 0x5F35 # +0x92A4 0x5F6B # +0x92A5 0x5FB4 # +0x92A6 0x61F2 # +0x92A7 0x6311 # +0x92A8 0x66A2 # +0x92A9 0x671D # +0x92AA 0x6F6E # +0x92AB 0x7252 # +0x92AC 0x753A # +0x92AD 0x773A # +0x92AE 0x8074 # +0x92AF 0x8139 # +0x92B0 0x8178 # +0x92B1 0x8776 # +0x92B2 0x8ABF # +0x92B3 0x8ADC # +0x92B4 0x8D85 # +0x92B5 0x8DF3 # +0x92B6 0x929A # +0x92B7 0x9577 # +0x92B8 0x9802 # +0x92B9 0x9CE5 # +0x92BA 0x52C5 # +0x92BB 0x6357 # +0x92BC 0x76F4 # +0x92BD 0x6715 # +0x92BE 0x6C88 # +0x92BF 0x73CD # +0x92C0 0x8CC3 # +0x92C1 0x93AE # +0x92C2 0x9673 # +0x92C3 0x6D25 # +0x92C4 0x589C # +0x92C5 0x690E # +0x92C6 0x69CC # +0x92C7 0x8FFD # +0x92C8 0x939A # +0x92C9 0x75DB # +0x92CA 0x901A # +0x92CB 0x585A # +0x92CC 0x6802 # +0x92CD 0x63B4 # +0x92CE 0x69FB # +0x92CF 0x4F43 # +0x92D0 0x6F2C # +0x92D1 0x67D8 # +0x92D2 0x8FBB # +0x92D3 0x8526 # +0x92D4 0x7DB4 # +0x92D5 0x9354 # +0x92D6 0x693F # +0x92D7 0x6F70 # +0x92D8 0x576A # +0x92D9 0x58F7 # +0x92DA 0x5B2C # +0x92DB 0x7D2C # +0x92DC 0x722A # +0x92DD 0x540A # +0x92DE 0x91E3 # +0x92DF 0x9DB4 # +0x92E0 0x4EAD # +0x92E1 0x4F4E # +0x92E2 0x505C # +0x92E3 0x5075 # +0x92E4 0x5243 # +0x92E5 0x8C9E # +0x92E6 0x5448 # +0x92E7 0x5824 # +0x92E8 0x5B9A # +0x92E9 0x5E1D # +0x92EA 0x5E95 # +0x92EB 0x5EAD # +0x92EC 0x5EF7 # +0x92ED 0x5F1F # +0x92EE 0x608C # +0x92EF 0x62B5 # +0x92F0 0x633A # +0x92F1 0x63D0 # +0x92F2 0x68AF # +0x92F3 0x6C40 # +0x92F4 0x7887 # +0x92F5 0x798E # +0x92F6 0x7A0B # +0x92F7 0x7DE0 # +0x92F8 0x8247 # +0x92F9 0x8A02 # +0x92FA 0x8AE6 # +0x92FB 0x8E44 # +0x92FC 0x9013 # +0x9340 0x90B8 # +0x9341 0x912D # +0x9342 0x91D8 # +0x9343 0x9F0E # +0x9344 0x6CE5 # +0x9345 0x6458 # +0x9346 0x64E2 # +0x9347 0x6575 # +0x9348 0x6EF4 # +0x9349 0x7684 # +0x934A 0x7B1B # +0x934B 0x9069 # +0x934C 0x93D1 # +0x934D 0x6EBA # +0x934E 0x54F2 # +0x934F 0x5FB9 # +0x9350 0x64A4 # +0x9351 0x8F4D # +0x9352 0x8FED # +0x9353 0x9244 # +0x9354 0x5178 # +0x9355 0x586B # +0x9356 0x5929 # +0x9357 0x5C55 # +0x9358 0x5E97 # +0x9359 0x6DFB # +0x935A 0x7E8F # +0x935B 0x751C # +0x935C 0x8CBC # +0x935D 0x8EE2 # +0x935E 0x985B # +0x935F 0x70B9 # +0x9360 0x4F1D # +0x9361 0x6BBF # +0x9362 0x6FB1 # +0x9363 0x7530 # +0x9364 0x96FB # +0x9365 0x514E # +0x9366 0x5410 # +0x9367 0x5835 # +0x9368 0x5857 # +0x9369 0x59AC # +0x936A 0x5C60 # +0x936B 0x5F92 # +0x936C 0x6597 # +0x936D 0x675C # +0x936E 0x6E21 # +0x936F 0x767B # +0x9370 0x83DF # +0x9371 0x8CED # +0x9372 0x9014 # +0x9373 0x90FD # +0x9374 0x934D # +0x9375 0x7825 # +0x9376 0x783A # +0x9377 0x52AA # +0x9378 0x5EA6 # +0x9379 0x571F # +0x937A 0x5974 # +0x937B 0x6012 # +0x937C 0x5012 # +0x937D 0x515A # +0x937E 0x51AC # +0x9380 0x51CD # +0x9381 0x5200 # +0x9382 0x5510 # +0x9383 0x5854 # +0x9384 0x5858 # +0x9385 0x5957 # +0x9386 0x5B95 # +0x9387 0x5CF6 # +0x9388 0x5D8B # +0x9389 0x60BC # +0x938A 0x6295 # +0x938B 0x642D # +0x938C 0x6771 # +0x938D 0x6843 # +0x938E 0x68BC # +0x938F 0x68DF # +0x9390 0x76D7 # +0x9391 0x6DD8 # +0x9392 0x6E6F # +0x9393 0x6D9B # +0x9394 0x706F # +0x9395 0x71C8 # +0x9396 0x5F53 # +0x9397 0x75D8 # +0x9398 0x7977 # +0x9399 0x7B49 # +0x939A 0x7B54 # +0x939B 0x7B52 # +0x939C 0x7CD6 # +0x939D 0x7D71 # +0x939E 0x5230 # +0x939F 0x8463 # +0x93A0 0x8569 # +0x93A1 0x85E4 # +0x93A2 0x8A0E # +0x93A3 0x8B04 # +0x93A4 0x8C46 # +0x93A5 0x8E0F # +0x93A6 0x9003 # +0x93A7 0x900F # +0x93A8 0x9419 # +0x93A9 0x9676 # +0x93AA 0x982D # +0x93AB 0x9A30 # +0x93AC 0x95D8 # +0x93AD 0x50CD # +0x93AE 0x52D5 # +0x93AF 0x540C # +0x93B0 0x5802 # +0x93B1 0x5C0E # +0x93B2 0x61A7 # +0x93B3 0x649E # +0x93B4 0x6D1E # +0x93B5 0x77B3 # +0x93B6 0x7AE5 # +0x93B7 0x80F4 # +0x93B8 0x8404 # +0x93B9 0x9053 # +0x93BA 0x9285 # +0x93BB 0x5CE0 # +0x93BC 0x9D07 # +0x93BD 0x533F # +0x93BE 0x5F97 # +0x93BF 0x5FB3 # +0x93C0 0x6D9C # +0x93C1 0x7279 # +0x93C2 0x7763 # +0x93C3 0x79BF # +0x93C4 0x7BE4 # +0x93C5 0x6BD2 # +0x93C6 0x72EC # +0x93C7 0x8AAD # +0x93C8 0x6803 # +0x93C9 0x6A61 # +0x93CA 0x51F8 # +0x93CB 0x7A81 # +0x93CC 0x6934 # +0x93CD 0x5C4A # +0x93CE 0x9CF6 # +0x93CF 0x82EB # +0x93D0 0x5BC5 # +0x93D1 0x9149 # +0x93D2 0x701E # +0x93D3 0x5678 # +0x93D4 0x5C6F # +0x93D5 0x60C7 # +0x93D6 0x6566 # +0x93D7 0x6C8C # +0x93D8 0x8C5A # +0x93D9 0x9041 # +0x93DA 0x9813 # +0x93DB 0x5451 # +0x93DC 0x66C7 # +0x93DD 0x920D # +0x93DE 0x5948 # +0x93DF 0x90A3 # +0x93E0 0x5185 # +0x93E1 0x4E4D # +0x93E2 0x51EA # +0x93E3 0x8599 # +0x93E4 0x8B0E # +0x93E5 0x7058 # +0x93E6 0x637A # +0x93E7 0x934B # +0x93E8 0x6962 # +0x93E9 0x99B4 # +0x93EA 0x7E04 # +0x93EB 0x7577 # +0x93EC 0x5357 # +0x93ED 0x6960 # +0x93EE 0x8EDF # +0x93EF 0x96E3 # +0x93F0 0x6C5D # +0x93F1 0x4E8C # +0x93F2 0x5C3C # +0x93F3 0x5F10 # +0x93F4 0x8FE9 # +0x93F5 0x5302 # +0x93F6 0x8CD1 # +0x93F7 0x8089 # +0x93F8 0x8679 # +0x93F9 0x5EFF # +0x93FA 0x65E5 # +0x93FB 0x4E73 # +0x93FC 0x5165 # +0x9440 0x5982 # +0x9441 0x5C3F # +0x9442 0x97EE # +0x9443 0x4EFB # +0x9444 0x598A # +0x9445 0x5FCD # +0x9446 0x8A8D # +0x9447 0x6FE1 # +0x9448 0x79B0 # +0x9449 0x7962 # +0x944A 0x5BE7 # +0x944B 0x8471 # +0x944C 0x732B # +0x944D 0x71B1 # +0x944E 0x5E74 # +0x944F 0x5FF5 # +0x9450 0x637B # +0x9451 0x649A # +0x9452 0x71C3 # +0x9453 0x7C98 # +0x9454 0x4E43 # +0x9455 0x5EFC # +0x9456 0x4E4B # +0x9457 0x57DC # +0x9458 0x56A2 # +0x9459 0x60A9 # +0x945A 0x6FC3 # +0x945B 0x7D0D # +0x945C 0x80FD # +0x945D 0x8133 # +0x945E 0x81BF # +0x945F 0x8FB2 # +0x9460 0x8997 # +0x9461 0x86A4 # +0x9462 0x5DF4 # +0x9463 0x628A # +0x9464 0x64AD # +0x9465 0x8987 # +0x9466 0x6777 # +0x9467 0x6CE2 # +0x9468 0x6D3E # +0x9469 0x7436 # +0x946A 0x7834 # +0x946B 0x5A46 # +0x946C 0x7F75 # +0x946D 0x82AD # +0x946E 0x99AC # +0x946F 0x4FF3 # +0x9470 0x5EC3 # +0x9471 0x62DD # +0x9472 0x6392 # +0x9473 0x6557 # +0x9474 0x676F # +0x9475 0x76C3 # +0x9476 0x724C # +0x9477 0x80CC # +0x9478 0x80BA # +0x9479 0x8F29 # +0x947A 0x914D # +0x947B 0x500D # +0x947C 0x57F9 # +0x947D 0x5A92 # +0x947E 0x6885 # +0x9480 0x6973 # +0x9481 0x7164 # +0x9482 0x72FD # +0x9483 0x8CB7 # +0x9484 0x58F2 # +0x9485 0x8CE0 # +0x9486 0x966A # +0x9487 0x9019 # +0x9488 0x877F # +0x9489 0x79E4 # +0x948A 0x77E7 # +0x948B 0x8429 # +0x948C 0x4F2F # +0x948D 0x5265 # +0x948E 0x535A # +0x948F 0x62CD # +0x9490 0x67CF # +0x9491 0x6CCA # +0x9492 0x767D # +0x9493 0x7B94 # +0x9494 0x7C95 # +0x9495 0x8236 # +0x9496 0x8584 # +0x9497 0x8FEB # +0x9498 0x66DD # +0x9499 0x6F20 # +0x949A 0x7206 # +0x949B 0x7E1B # +0x949C 0x83AB # +0x949D 0x99C1 # +0x949E 0x9EA6 # +0x949F 0x51FD # +0x94A0 0x7BB1 # +0x94A1 0x7872 # +0x94A2 0x7BB8 # +0x94A3 0x8087 # +0x94A4 0x7B48 # +0x94A5 0x6AE8 # +0x94A6 0x5E61 # +0x94A7 0x808C # +0x94A8 0x7551 # +0x94A9 0x7560 # +0x94AA 0x516B # +0x94AB 0x9262 # +0x94AC 0x6E8C # +0x94AD 0x767A # +0x94AE 0x9197 # +0x94AF 0x9AEA # +0x94B0 0x4F10 # +0x94B1 0x7F70 # +0x94B2 0x629C # +0x94B3 0x7B4F # +0x94B4 0x95A5 # +0x94B5 0x9CE9 # +0x94B6 0x567A # +0x94B7 0x5859 # +0x94B8 0x86E4 # +0x94B9 0x96BC # +0x94BA 0x4F34 # +0x94BB 0x5224 # +0x94BC 0x534A # +0x94BD 0x53CD # +0x94BE 0x53DB # +0x94BF 0x5E06 # +0x94C0 0x642C # +0x94C1 0x6591 # +0x94C2 0x677F # +0x94C3 0x6C3E # +0x94C4 0x6C4E # +0x94C5 0x7248 # +0x94C6 0x72AF # +0x94C7 0x73ED # +0x94C8 0x7554 # +0x94C9 0x7E41 # +0x94CA 0x822C # +0x94CB 0x85E9 # +0x94CC 0x8CA9 # +0x94CD 0x7BC4 # +0x94CE 0x91C6 # +0x94CF 0x7169 # +0x94D0 0x9812 # +0x94D1 0x98EF # +0x94D2 0x633D # +0x94D3 0x6669 # +0x94D4 0x756A # +0x94D5 0x76E4 # +0x94D6 0x78D0 # +0x94D7 0x8543 # +0x94D8 0x86EE # +0x94D9 0x532A # +0x94DA 0x5351 # +0x94DB 0x5426 # +0x94DC 0x5983 # +0x94DD 0x5E87 # +0x94DE 0x5F7C # +0x94DF 0x60B2 # +0x94E0 0x6249 # +0x94E1 0x6279 # +0x94E2 0x62AB # +0x94E3 0x6590 # +0x94E4 0x6BD4 # +0x94E5 0x6CCC # +0x94E6 0x75B2 # +0x94E7 0x76AE # +0x94E8 0x7891 # +0x94E9 0x79D8 # +0x94EA 0x7DCB # +0x94EB 0x7F77 # +0x94EC 0x80A5 # +0x94ED 0x88AB # +0x94EE 0x8AB9 # +0x94EF 0x8CBB # +0x94F0 0x907F # +0x94F1 0x975E # +0x94F2 0x98DB # +0x94F3 0x6A0B # +0x94F4 0x7C38 # +0x94F5 0x5099 # +0x94F6 0x5C3E # +0x94F7 0x5FAE # +0x94F8 0x6787 # +0x94F9 0x6BD8 # +0x94FA 0x7435 # +0x94FB 0x7709 # +0x94FC 0x7F8E # +0x9540 0x9F3B # +0x9541 0x67CA # +0x9542 0x7A17 # +0x9543 0x5339 # +0x9544 0x758B # +0x9545 0x9AED # +0x9546 0x5F66 # +0x9547 0x819D # +0x9548 0x83F1 # +0x9549 0x8098 # +0x954A 0x5F3C # +0x954B 0x5FC5 # +0x954C 0x7562 # +0x954D 0x7B46 # +0x954E 0x903C # +0x954F 0x6867 # +0x9550 0x59EB # +0x9551 0x5A9B # +0x9552 0x7D10 # +0x9553 0x767E # +0x9554 0x8B2C # +0x9555 0x4FF5 # +0x9556 0x5F6A # +0x9557 0x6A19 # +0x9558 0x6C37 # +0x9559 0x6F02 # +0x955A 0x74E2 # +0x955B 0x7968 # +0x955C 0x8868 # +0x955D 0x8A55 # +0x955E 0x8C79 # +0x955F 0x5EDF # +0x9560 0x63CF # +0x9561 0x75C5 # +0x9562 0x79D2 # +0x9563 0x82D7 # +0x9564 0x9328 # +0x9565 0x92F2 # +0x9566 0x849C # +0x9567 0x86ED # +0x9568 0x9C2D # +0x9569 0x54C1 # +0x956A 0x5F6C # +0x956B 0x658C # +0x956C 0x6D5C # +0x956D 0x7015 # +0x956E 0x8CA7 # +0x956F 0x8CD3 # +0x9570 0x983B # +0x9571 0x654F # +0x9572 0x74F6 # +0x9573 0x4E0D # +0x9574 0x4ED8 # +0x9575 0x57E0 # +0x9576 0x592B # +0x9577 0x5A66 # +0x9578 0x5BCC # +0x9579 0x51A8 # +0x957A 0x5E03 # +0x957B 0x5E9C # +0x957C 0x6016 # +0x957D 0x6276 # +0x957E 0x6577 # +0x9580 0x65A7 # +0x9581 0x666E # +0x9582 0x6D6E # +0x9583 0x7236 # +0x9584 0x7B26 # +0x9585 0x8150 # +0x9586 0x819A # +0x9587 0x8299 # +0x9588 0x8B5C # +0x9589 0x8CA0 # +0x958A 0x8CE6 # +0x958B 0x8D74 # +0x958C 0x961C # +0x958D 0x9644 # +0x958E 0x4FAE # +0x958F 0x64AB # +0x9590 0x6B66 # +0x9591 0x821E # +0x9592 0x8461 # +0x9593 0x856A # +0x9594 0x90E8 # +0x9595 0x5C01 # +0x9596 0x6953 # +0x9597 0x98A8 # +0x9598 0x847A # +0x9599 0x8557 # +0x959A 0x4F0F # +0x959B 0x526F # +0x959C 0x5FA9 # +0x959D 0x5E45 # +0x959E 0x670D # +0x959F 0x798F # +0x95A0 0x8179 # +0x95A1 0x8907 # +0x95A2 0x8986 # +0x95A3 0x6DF5 # +0x95A4 0x5F17 # +0x95A5 0x6255 # +0x95A6 0x6CB8 # +0x95A7 0x4ECF # +0x95A8 0x7269 # +0x95A9 0x9B92 # +0x95AA 0x5206 # +0x95AB 0x543B # +0x95AC 0x5674 # +0x95AD 0x58B3 # +0x95AE 0x61A4 # +0x95AF 0x626E # +0x95B0 0x711A # +0x95B1 0x596E # +0x95B2 0x7C89 # +0x95B3 0x7CDE # +0x95B4 0x7D1B # +0x95B5 0x96F0 # +0x95B6 0x6587 # +0x95B7 0x805E # +0x95B8 0x4E19 # +0x95B9 0x4F75 # +0x95BA 0x5175 # +0x95BB 0x5840 # +0x95BC 0x5E63 # +0x95BD 0x5E73 # +0x95BE 0x5F0A # +0x95BF 0x67C4 # +0x95C0 0x4E26 # +0x95C1 0x853D # +0x95C2 0x9589 # +0x95C3 0x965B # +0x95C4 0x7C73 # +0x95C5 0x9801 # +0x95C6 0x50FB # +0x95C7 0x58C1 # +0x95C8 0x7656 # +0x95C9 0x78A7 # +0x95CA 0x5225 # +0x95CB 0x77A5 # +0x95CC 0x8511 # +0x95CD 0x7B86 # +0x95CE 0x504F # +0x95CF 0x5909 # +0x95D0 0x7247 # +0x95D1 0x7BC7 # +0x95D2 0x7DE8 # +0x95D3 0x8FBA # +0x95D4 0x8FD4 # +0x95D5 0x904D # +0x95D6 0x4FBF # +0x95D7 0x52C9 # +0x95D8 0x5A29 # +0x95D9 0x5F01 # +0x95DA 0x97AD # +0x95DB 0x4FDD # +0x95DC 0x8217 # +0x95DD 0x92EA # +0x95DE 0x5703 # +0x95DF 0x6355 # +0x95E0 0x6B69 # +0x95E1 0x752B # +0x95E2 0x88DC # +0x95E3 0x8F14 # +0x95E4 0x7A42 # +0x95E5 0x52DF # +0x95E6 0x5893 # +0x95E7 0x6155 # +0x95E8 0x620A # +0x95E9 0x66AE # +0x95EA 0x6BCD # +0x95EB 0x7C3F # +0x95EC 0x83E9 # +0x95ED 0x5023 # +0x95EE 0x4FF8 # +0x95EF 0x5305 # +0x95F0 0x5446 # +0x95F1 0x5831 # +0x95F2 0x5949 # +0x95F3 0x5B9D # +0x95F4 0x5CF0 # +0x95F5 0x5CEF # +0x95F6 0x5D29 # +0x95F7 0x5E96 # +0x95F8 0x62B1 # +0x95F9 0x6367 # +0x95FA 0x653E # +0x95FB 0x65B9 # +0x95FC 0x670B # +0x9640 0x6CD5 # +0x9641 0x6CE1 # +0x9642 0x70F9 # +0x9643 0x7832 # +0x9644 0x7E2B # +0x9645 0x80DE # +0x9646 0x82B3 # +0x9647 0x840C # +0x9648 0x84EC # +0x9649 0x8702 # +0x964A 0x8912 # +0x964B 0x8A2A # +0x964C 0x8C4A # +0x964D 0x90A6 # +0x964E 0x92D2 # +0x964F 0x98FD # +0x9650 0x9CF3 # +0x9651 0x9D6C # +0x9652 0x4E4F # +0x9653 0x4EA1 # +0x9654 0x508D # +0x9655 0x5256 # +0x9656 0x574A # +0x9657 0x59A8 # +0x9658 0x5E3D # +0x9659 0x5FD8 # +0x965A 0x5FD9 # +0x965B 0x623F # +0x965C 0x66B4 # +0x965D 0x671B # +0x965E 0x67D0 # +0x965F 0x68D2 # +0x9660 0x5192 # +0x9661 0x7D21 # +0x9662 0x80AA # +0x9663 0x81A8 # +0x9664 0x8B00 # +0x9665 0x8C8C # +0x9666 0x8CBF # +0x9667 0x927E # +0x9668 0x9632 # +0x9669 0x5420 # +0x966A 0x982C # +0x966B 0x5317 # +0x966C 0x50D5 # +0x966D 0x535C # +0x966E 0x58A8 # +0x966F 0x64B2 # +0x9670 0x6734 # +0x9671 0x7267 # +0x9672 0x7766 # +0x9673 0x7A46 # +0x9674 0x91E6 # +0x9675 0x52C3 # +0x9676 0x6CA1 # +0x9677 0x6B86 # +0x9678 0x5800 # +0x9679 0x5E4C # +0x967A 0x5954 # +0x967B 0x672C # +0x967C 0x7FFB # +0x967D 0x51E1 # +0x967E 0x76C6 # +0x9680 0x6469 # +0x9681 0x78E8 # +0x9682 0x9B54 # +0x9683 0x9EBB # +0x9684 0x57CB # +0x9685 0x59B9 # +0x9686 0x6627 # +0x9687 0x679A # +0x9688 0x6BCE # +0x9689 0x54E9 # +0x968A 0x69D9 # +0x968B 0x5E55 # +0x968C 0x819C # +0x968D 0x6795 # +0x968E 0x9BAA # +0x968F 0x67FE # +0x9690 0x9C52 # +0x9691 0x685D # +0x9692 0x4EA6 # +0x9693 0x4FE3 # +0x9694 0x53C8 # +0x9695 0x62B9 # +0x9696 0x672B # +0x9697 0x6CAB # +0x9698 0x8FC4 # +0x9699 0x4FAD # +0x969A 0x7E6D # +0x969B 0x9EBF # +0x969C 0x4E07 # +0x969D 0x6162 # +0x969E 0x6E80 # +0x969F 0x6F2B # +0x96A0 0x8513 # +0x96A1 0x5473 # +0x96A2 0x672A # +0x96A3 0x9B45 # +0x96A4 0x5DF3 # +0x96A5 0x7B95 # +0x96A6 0x5CAC # +0x96A7 0x5BC6 # +0x96A8 0x871C # +0x96A9 0x6E4A # +0x96AA 0x84D1 # +0x96AB 0x7A14 # +0x96AC 0x8108 # +0x96AD 0x5999 # +0x96AE 0x7C8D # +0x96AF 0x6C11 # +0x96B0 0x7720 # +0x96B1 0x52D9 # +0x96B2 0x5922 # +0x96B3 0x7121 # +0x96B4 0x725F # +0x96B5 0x77DB # +0x96B6 0x9727 # +0x96B7 0x9D61 # +0x96B8 0x690B # +0x96B9 0x5A7F # +0x96BA 0x5A18 # +0x96BB 0x51A5 # +0x96BC 0x540D # +0x96BD 0x547D # +0x96BE 0x660E # +0x96BF 0x76DF # +0x96C0 0x8FF7 # +0x96C1 0x9298 # +0x96C2 0x9CF4 # +0x96C3 0x59EA # +0x96C4 0x725D # +0x96C5 0x6EC5 # +0x96C6 0x514D # +0x96C7 0x68C9 # +0x96C8 0x7DBF # +0x96C9 0x7DEC # +0x96CA 0x9762 # +0x96CB 0x9EBA # +0x96CC 0x6478 # +0x96CD 0x6A21 # +0x96CE 0x8302 # +0x96CF 0x5984 # +0x96D0 0x5B5F # +0x96D1 0x6BDB # +0x96D2 0x731B # +0x96D3 0x76F2 # +0x96D4 0x7DB2 # +0x96D5 0x8017 # +0x96D6 0x8499 # +0x96D7 0x5132 # +0x96D8 0x6728 # +0x96D9 0x9ED9 # +0x96DA 0x76EE # +0x96DB 0x6762 # +0x96DC 0x52FF # +0x96DD 0x9905 # +0x96DE 0x5C24 # +0x96DF 0x623B # +0x96E0 0x7C7E # +0x96E1 0x8CB0 # +0x96E2 0x554F # +0x96E3 0x60B6 # +0x96E4 0x7D0B # +0x96E5 0x9580 # +0x96E6 0x5301 # +0x96E7 0x4E5F # +0x96E8 0x51B6 # +0x96E9 0x591C # +0x96EA 0x723A # +0x96EB 0x8036 # +0x96EC 0x91CE # +0x96ED 0x5F25 # +0x96EE 0x77E2 # +0x96EF 0x5384 # +0x96F0 0x5F79 # +0x96F1 0x7D04 # +0x96F2 0x85AC # +0x96F3 0x8A33 # +0x96F4 0x8E8D # +0x96F5 0x9756 # +0x96F6 0x67F3 # +0x96F7 0x85AE # +0x96F8 0x9453 # +0x96F9 0x6109 # +0x96FA 0x6108 # +0x96FB 0x6CB9 # +0x96FC 0x7652 # +0x9740 0x8AED # +0x9741 0x8F38 # +0x9742 0x552F # +0x9743 0x4F51 # +0x9744 0x512A # +0x9745 0x52C7 # +0x9746 0x53CB # +0x9747 0x5BA5 # +0x9748 0x5E7D # +0x9749 0x60A0 # +0x974A 0x6182 # +0x974B 0x63D6 # +0x974C 0x6709 # +0x974D 0x67DA # +0x974E 0x6E67 # +0x974F 0x6D8C # +0x9750 0x7336 # +0x9751 0x7337 # +0x9752 0x7531 # +0x9753 0x7950 # +0x9754 0x88D5 # +0x9755 0x8A98 # +0x9756 0x904A # +0x9757 0x9091 # +0x9758 0x90F5 # +0x9759 0x96C4 # +0x975A 0x878D # +0x975B 0x5915 # +0x975C 0x4E88 # +0x975D 0x4F59 # +0x975E 0x4E0E # +0x975F 0x8A89 # +0x9760 0x8F3F # +0x9761 0x9810 # +0x9762 0x50AD # +0x9763 0x5E7C # +0x9764 0x5996 # +0x9765 0x5BB9 # +0x9766 0x5EB8 # +0x9767 0x63DA # +0x9768 0x63FA # +0x9769 0x64C1 # +0x976A 0x66DC # +0x976B 0x694A # +0x976C 0x69D8 # +0x976D 0x6D0B # +0x976E 0x6EB6 # +0x976F 0x7194 # +0x9770 0x7528 # +0x9771 0x7AAF # +0x9772 0x7F8A # +0x9773 0x8000 # +0x9774 0x8449 # +0x9775 0x84C9 # +0x9776 0x8981 # +0x9777 0x8B21 # +0x9778 0x8E0A # +0x9779 0x9065 # +0x977A 0x967D # +0x977B 0x990A # +0x977C 0x617E # +0x977D 0x6291 # +0x977E 0x6B32 # +0x9780 0x6C83 # +0x9781 0x6D74 # +0x9782 0x7FCC # +0x9783 0x7FFC # +0x9784 0x6DC0 # +0x9785 0x7F85 # +0x9786 0x87BA # +0x9787 0x88F8 # +0x9788 0x6765 # +0x9789 0x83B1 # +0x978A 0x983C # +0x978B 0x96F7 # +0x978C 0x6D1B # +0x978D 0x7D61 # +0x978E 0x843D # +0x978F 0x916A # +0x9790 0x4E71 # +0x9791 0x5375 # +0x9792 0x5D50 # +0x9793 0x6B04 # +0x9794 0x6FEB # +0x9795 0x85CD # +0x9796 0x862D # +0x9797 0x89A7 # +0x9798 0x5229 # +0x9799 0x540F # +0x979A 0x5C65 # +0x979B 0x674E # +0x979C 0x68A8 # +0x979D 0x7406 # +0x979E 0x7483 # +0x979F 0x75E2 # +0x97A0 0x88CF # +0x97A1 0x88E1 # +0x97A2 0x91CC # +0x97A3 0x96E2 # +0x97A4 0x9678 # +0x97A5 0x5F8B # +0x97A6 0x7387 # +0x97A7 0x7ACB # +0x97A8 0x844E # +0x97A9 0x63A0 # +0x97AA 0x7565 # +0x97AB 0x5289 # +0x97AC 0x6D41 # +0x97AD 0x6E9C # +0x97AE 0x7409 # +0x97AF 0x7559 # +0x97B0 0x786B # +0x97B1 0x7C92 # +0x97B2 0x9686 # +0x97B3 0x7ADC # +0x97B4 0x9F8D # +0x97B5 0x4FB6 # +0x97B6 0x616E # +0x97B7 0x65C5 # +0x97B8 0x865C # +0x97B9 0x4E86 # +0x97BA 0x4EAE # +0x97BB 0x50DA # +0x97BC 0x4E21 # +0x97BD 0x51CC # +0x97BE 0x5BEE # +0x97BF 0x6599 # +0x97C0 0x6881 # +0x97C1 0x6DBC # +0x97C2 0x731F # +0x97C3 0x7642 # +0x97C4 0x77AD # +0x97C5 0x7A1C # +0x97C6 0x7CE7 # +0x97C7 0x826F # +0x97C8 0x8AD2 # +0x97C9 0x907C # +0x97CA 0x91CF # +0x97CB 0x9675 # +0x97CC 0x9818 # +0x97CD 0x529B # +0x97CE 0x7DD1 # +0x97CF 0x502B # +0x97D0 0x5398 # +0x97D1 0x6797 # +0x97D2 0x6DCB # +0x97D3 0x71D0 # +0x97D4 0x7433 # +0x97D5 0x81E8 # +0x97D6 0x8F2A # +0x97D7 0x96A3 # +0x97D8 0x9C57 # +0x97D9 0x9E9F # +0x97DA 0x7460 # +0x97DB 0x5841 # +0x97DC 0x6D99 # +0x97DD 0x7D2F # +0x97DE 0x985E # +0x97DF 0x4EE4 # +0x97E0 0x4F36 # +0x97E1 0x4F8B # +0x97E2 0x51B7 # +0x97E3 0x52B1 # +0x97E4 0x5DBA # +0x97E5 0x601C # +0x97E6 0x73B2 # +0x97E7 0x793C # +0x97E8 0x82D3 # +0x97E9 0x9234 # +0x97EA 0x96B7 # +0x97EB 0x96F6 # +0x97EC 0x970A # +0x97ED 0x9E97 # +0x97EE 0x9F62 # +0x97EF 0x66A6 # +0x97F0 0x6B74 # +0x97F1 0x5217 # +0x97F2 0x52A3 # +0x97F3 0x70C8 # +0x97F4 0x88C2 # +0x97F5 0x5EC9 # +0x97F6 0x604B # +0x97F7 0x6190 # +0x97F8 0x6F23 # +0x97F9 0x7149 # +0x97FA 0x7C3E # +0x97FB 0x7DF4 # +0x97FC 0x806F # +0x9840 0x84EE # +0x9841 0x9023 # +0x9842 0x932C # +0x9843 0x5442 # +0x9844 0x9B6F # +0x9845 0x6AD3 # +0x9846 0x7089 # +0x9847 0x8CC2 # +0x9848 0x8DEF # +0x9849 0x9732 # +0x984A 0x52B4 # +0x984B 0x5A41 # +0x984C 0x5ECA # +0x984D 0x5F04 # +0x984E 0x6717 # +0x984F 0x697C # +0x9850 0x6994 # +0x9851 0x6D6A # +0x9852 0x6F0F # +0x9853 0x7262 # +0x9854 0x72FC # +0x9855 0x7BED # +0x9856 0x8001 # +0x9857 0x807E # +0x9858 0x874B # +0x9859 0x90CE # +0x985A 0x516D # +0x985B 0x9E93 # +0x985C 0x7984 # +0x985D 0x808B # +0x985E 0x9332 # +0x985F 0x8AD6 # +0x9860 0x502D # +0x9861 0x548C # +0x9862 0x8A71 # +0x9863 0x6B6A # +0x9864 0x8CC4 # +0x9865 0x8107 # +0x9866 0x60D1 # +0x9867 0x67A0 # +0x9868 0x9DF2 # +0x9869 0x4E99 # +0x986A 0x4E98 # +0x986B 0x9C10 # +0x986C 0x8A6B # +0x986D 0x85C1 # +0x986E 0x8568 # +0x986F 0x6900 # +0x9870 0x6E7E # +0x9871 0x7897 # +0x9872 0x8155 # +0x989F 0x5F0C # +0x98A0 0x4E10 # +0x98A1 0x4E15 # +0x98A2 0x4E2A # +0x98A3 0x4E31 # +0x98A4 0x4E36 # +0x98A5 0x4E3C # +0x98A6 0x4E3F # +0x98A7 0x4E42 # +0x98A8 0x4E56 # +0x98A9 0x4E58 # +0x98AA 0x4E82 # +0x98AB 0x4E85 # +0x98AC 0x8C6B # +0x98AD 0x4E8A # +0x98AE 0x8212 # +0x98AF 0x5F0D # +0x98B0 0x4E8E # +0x98B1 0x4E9E # +0x98B2 0x4E9F # +0x98B3 0x4EA0 # +0x98B4 0x4EA2 # +0x98B5 0x4EB0 # +0x98B6 0x4EB3 # +0x98B7 0x4EB6 # +0x98B8 0x4ECE # +0x98B9 0x4ECD # +0x98BA 0x4EC4 # +0x98BB 0x4EC6 # +0x98BC 0x4EC2 # +0x98BD 0x4ED7 # +0x98BE 0x4EDE # +0x98BF 0x4EED # +0x98C0 0x4EDF # +0x98C1 0x4EF7 # +0x98C2 0x4F09 # +0x98C3 0x4F5A # +0x98C4 0x4F30 # +0x98C5 0x4F5B # +0x98C6 0x4F5D # +0x98C7 0x4F57 # +0x98C8 0x4F47 # +0x98C9 0x4F76 # +0x98CA 0x4F88 # +0x98CB 0x4F8F # +0x98CC 0x4F98 # +0x98CD 0x4F7B # +0x98CE 0x4F69 # +0x98CF 0x4F70 # +0x98D0 0x4F91 # +0x98D1 0x4F6F # +0x98D2 0x4F86 # +0x98D3 0x4F96 # +0x98D4 0x5118 # +0x98D5 0x4FD4 # +0x98D6 0x4FDF # +0x98D7 0x4FCE # +0x98D8 0x4FD8 # +0x98D9 0x4FDB # +0x98DA 0x4FD1 # +0x98DB 0x4FDA # +0x98DC 0x4FD0 # +0x98DD 0x4FE4 # +0x98DE 0x4FE5 # +0x98DF 0x501A # +0x98E0 0x5028 # +0x98E1 0x5014 # +0x98E2 0x502A # +0x98E3 0x5025 # +0x98E4 0x5005 # +0x98E5 0x4F1C # +0x98E6 0x4FF6 # +0x98E7 0x5021 # +0x98E8 0x5029 # +0x98E9 0x502C # +0x98EA 0x4FFE # +0x98EB 0x4FEF # +0x98EC 0x5011 # +0x98ED 0x5006 # +0x98EE 0x5043 # +0x98EF 0x5047 # +0x98F0 0x6703 # +0x98F1 0x5055 # +0x98F2 0x5050 # +0x98F3 0x5048 # +0x98F4 0x505A # +0x98F5 0x5056 # +0x98F6 0x506C # +0x98F7 0x5078 # +0x98F8 0x5080 # +0x98F9 0x509A # +0x98FA 0x5085 # +0x98FB 0x50B4 # +0x98FC 0x50B2 # +0x9940 0x50C9 # +0x9941 0x50CA # +0x9942 0x50B3 # +0x9943 0x50C2 # +0x9944 0x50D6 # +0x9945 0x50DE # +0x9946 0x50E5 # +0x9947 0x50ED # +0x9948 0x50E3 # +0x9949 0x50EE # +0x994A 0x50F9 # +0x994B 0x50F5 # +0x994C 0x5109 # +0x994D 0x5101 # +0x994E 0x5102 # +0x994F 0x5116 # +0x9950 0x5115 # +0x9951 0x5114 # +0x9952 0x511A # +0x9953 0x5121 # +0x9954 0x513A # +0x9955 0x5137 # +0x9956 0x513C # +0x9957 0x513B # +0x9958 0x513F # +0x9959 0x5140 # +0x995A 0x5152 # +0x995B 0x514C # +0x995C 0x5154 # +0x995D 0x5162 # +0x995E 0x7AF8 # +0x995F 0x5169 # +0x9960 0x516A # +0x9961 0x516E # +0x9962 0x5180 # +0x9963 0x5182 # +0x9964 0x56D8 # +0x9965 0x518C # +0x9966 0x5189 # +0x9967 0x518F # +0x9968 0x5191 # +0x9969 0x5193 # +0x996A 0x5195 # +0x996B 0x5196 # +0x996C 0x51A4 # +0x996D 0x51A6 # +0x996E 0x51A2 # +0x996F 0x51A9 # +0x9970 0x51AA # +0x9971 0x51AB # +0x9972 0x51B3 # +0x9973 0x51B1 # +0x9974 0x51B2 # +0x9975 0x51B0 # +0x9976 0x51B5 # +0x9977 0x51BD # +0x9978 0x51C5 # +0x9979 0x51C9 # +0x997A 0x51DB # +0x997B 0x51E0 # +0x997C 0x8655 # +0x997D 0x51E9 # +0x997E 0x51ED # +0x9980 0x51F0 # +0x9981 0x51F5 # +0x9982 0x51FE # +0x9983 0x5204 # +0x9984 0x520B # +0x9985 0x5214 # +0x9986 0x520E # +0x9987 0x5227 # +0x9988 0x522A # +0x9989 0x522E # +0x998A 0x5233 # +0x998B 0x5239 # +0x998C 0x524F # +0x998D 0x5244 # +0x998E 0x524B # +0x998F 0x524C # +0x9990 0x525E # +0x9991 0x5254 # +0x9992 0x526A # +0x9993 0x5274 # +0x9994 0x5269 # +0x9995 0x5273 # +0x9996 0x527F # +0x9997 0x527D # +0x9998 0x528D # +0x9999 0x5294 # +0x999A 0x5292 # +0x999B 0x5271 # +0x999C 0x5288 # +0x999D 0x5291 # +0x999E 0x8FA8 # +0x999F 0x8FA7 # +0x99A0 0x52AC # +0x99A1 0x52AD # +0x99A2 0x52BC # +0x99A3 0x52B5 # +0x99A4 0x52C1 # +0x99A5 0x52CD # +0x99A6 0x52D7 # +0x99A7 0x52DE # +0x99A8 0x52E3 # +0x99A9 0x52E6 # +0x99AA 0x98ED # +0x99AB 0x52E0 # +0x99AC 0x52F3 # +0x99AD 0x52F5 # +0x99AE 0x52F8 # +0x99AF 0x52F9 # +0x99B0 0x5306 # +0x99B1 0x5308 # +0x99B2 0x7538 # +0x99B3 0x530D # +0x99B4 0x5310 # +0x99B5 0x530F # +0x99B6 0x5315 # +0x99B7 0x531A # +0x99B8 0x5323 # +0x99B9 0x532F # +0x99BA 0x5331 # +0x99BB 0x5333 # +0x99BC 0x5338 # +0x99BD 0x5340 # +0x99BE 0x5346 # +0x99BF 0x5345 # +0x99C0 0x4E17 # +0x99C1 0x5349 # +0x99C2 0x534D # +0x99C3 0x51D6 # +0x99C4 0x535E # +0x99C5 0x5369 # +0x99C6 0x536E # +0x99C7 0x5918 # +0x99C8 0x537B # +0x99C9 0x5377 # +0x99CA 0x5382 # +0x99CB 0x5396 # +0x99CC 0x53A0 # +0x99CD 0x53A6 # +0x99CE 0x53A5 # +0x99CF 0x53AE # +0x99D0 0x53B0 # +0x99D1 0x53B6 # +0x99D2 0x53C3 # +0x99D3 0x7C12 # +0x99D4 0x96D9 # +0x99D5 0x53DF # +0x99D6 0x66FC # +0x99D7 0x71EE # +0x99D8 0x53EE # +0x99D9 0x53E8 # +0x99DA 0x53ED # +0x99DB 0x53FA # +0x99DC 0x5401 # +0x99DD 0x543D # +0x99DE 0x5440 # +0x99DF 0x542C # +0x99E0 0x542D # +0x99E1 0x543C # +0x99E2 0x542E # +0x99E3 0x5436 # +0x99E4 0x5429 # +0x99E5 0x541D # +0x99E6 0x544E # +0x99E7 0x548F # +0x99E8 0x5475 # +0x99E9 0x548E # +0x99EA 0x545F # +0x99EB 0x5471 # +0x99EC 0x5477 # +0x99ED 0x5470 # +0x99EE 0x5492 # +0x99EF 0x547B # +0x99F0 0x5480 # +0x99F1 0x5476 # +0x99F2 0x5484 # +0x99F3 0x5490 # +0x99F4 0x5486 # +0x99F5 0x54C7 # +0x99F6 0x54A2 # +0x99F7 0x54B8 # +0x99F8 0x54A5 # +0x99F9 0x54AC # +0x99FA 0x54C4 # +0x99FB 0x54C8 # +0x99FC 0x54A8 # +0x9A40 0x54AB # +0x9A41 0x54C2 # +0x9A42 0x54A4 # +0x9A43 0x54BE # +0x9A44 0x54BC # +0x9A45 0x54D8 # +0x9A46 0x54E5 # +0x9A47 0x54E6 # +0x9A48 0x550F # +0x9A49 0x5514 # +0x9A4A 0x54FD # +0x9A4B 0x54EE # +0x9A4C 0x54ED # +0x9A4D 0x54FA # +0x9A4E 0x54E2 # +0x9A4F 0x5539 # +0x9A50 0x5540 # +0x9A51 0x5563 # +0x9A52 0x554C # +0x9A53 0x552E # +0x9A54 0x555C # +0x9A55 0x5545 # +0x9A56 0x5556 # +0x9A57 0x5557 # +0x9A58 0x5538 # +0x9A59 0x5533 # +0x9A5A 0x555D # +0x9A5B 0x5599 # +0x9A5C 0x5580 # +0x9A5D 0x54AF # +0x9A5E 0x558A # +0x9A5F 0x559F # +0x9A60 0x557B # +0x9A61 0x557E # +0x9A62 0x5598 # +0x9A63 0x559E # +0x9A64 0x55AE # +0x9A65 0x557C # +0x9A66 0x5583 # +0x9A67 0x55A9 # +0x9A68 0x5587 # +0x9A69 0x55A8 # +0x9A6A 0x55DA # +0x9A6B 0x55C5 # +0x9A6C 0x55DF # +0x9A6D 0x55C4 # +0x9A6E 0x55DC # +0x9A6F 0x55E4 # +0x9A70 0x55D4 # +0x9A71 0x5614 # +0x9A72 0x55F7 # +0x9A73 0x5616 # +0x9A74 0x55FE # +0x9A75 0x55FD # +0x9A76 0x561B # +0x9A77 0x55F9 # +0x9A78 0x564E # +0x9A79 0x5650 # +0x9A7A 0x71DF # +0x9A7B 0x5634 # +0x9A7C 0x5636 # +0x9A7D 0x5632 # +0x9A7E 0x5638 # +0x9A80 0x566B # +0x9A81 0x5664 # +0x9A82 0x562F # +0x9A83 0x566C # +0x9A84 0x566A # +0x9A85 0x5686 # +0x9A86 0x5680 # +0x9A87 0x568A # +0x9A88 0x56A0 # +0x9A89 0x5694 # +0x9A8A 0x568F # +0x9A8B 0x56A5 # +0x9A8C 0x56AE # +0x9A8D 0x56B6 # +0x9A8E 0x56B4 # +0x9A8F 0x56C2 # +0x9A90 0x56BC # +0x9A91 0x56C1 # +0x9A92 0x56C3 # +0x9A93 0x56C0 # +0x9A94 0x56C8 # +0x9A95 0x56CE # +0x9A96 0x56D1 # +0x9A97 0x56D3 # +0x9A98 0x56D7 # +0x9A99 0x56EE # +0x9A9A 0x56F9 # +0x9A9B 0x5700 # +0x9A9C 0x56FF # +0x9A9D 0x5704 # +0x9A9E 0x5709 # +0x9A9F 0x5708 # +0x9AA0 0x570B # +0x9AA1 0x570D # +0x9AA2 0x5713 # +0x9AA3 0x5718 # +0x9AA4 0x5716 # +0x9AA5 0x55C7 # +0x9AA6 0x571C # +0x9AA7 0x5726 # +0x9AA8 0x5737 # +0x9AA9 0x5738 # +0x9AAA 0x574E # +0x9AAB 0x573B # +0x9AAC 0x5740 # +0x9AAD 0x574F # +0x9AAE 0x5769 # +0x9AAF 0x57C0 # +0x9AB0 0x5788 # +0x9AB1 0x5761 # +0x9AB2 0x577F # +0x9AB3 0x5789 # +0x9AB4 0x5793 # +0x9AB5 0x57A0 # +0x9AB6 0x57B3 # +0x9AB7 0x57A4 # +0x9AB8 0x57AA # +0x9AB9 0x57B0 # +0x9ABA 0x57C3 # +0x9ABB 0x57C6 # +0x9ABC 0x57D4 # +0x9ABD 0x57D2 # +0x9ABE 0x57D3 # +0x9ABF 0x580A # +0x9AC0 0x57D6 # +0x9AC1 0x57E3 # +0x9AC2 0x580B # +0x9AC3 0x5819 # +0x9AC4 0x581D # +0x9AC5 0x5872 # +0x9AC6 0x5821 # +0x9AC7 0x5862 # +0x9AC8 0x584B # +0x9AC9 0x5870 # +0x9ACA 0x6BC0 # +0x9ACB 0x5852 # +0x9ACC 0x583D # +0x9ACD 0x5879 # +0x9ACE 0x5885 # +0x9ACF 0x58B9 # +0x9AD0 0x589F # +0x9AD1 0x58AB # +0x9AD2 0x58BA # +0x9AD3 0x58DE # +0x9AD4 0x58BB # +0x9AD5 0x58B8 # +0x9AD6 0x58AE # +0x9AD7 0x58C5 # +0x9AD8 0x58D3 # +0x9AD9 0x58D1 # +0x9ADA 0x58D7 # +0x9ADB 0x58D9 # +0x9ADC 0x58D8 # +0x9ADD 0x58E5 # +0x9ADE 0x58DC # +0x9ADF 0x58E4 # +0x9AE0 0x58DF # +0x9AE1 0x58EF # +0x9AE2 0x58FA # +0x9AE3 0x58F9 # +0x9AE4 0x58FB # +0x9AE5 0x58FC # +0x9AE6 0x58FD # +0x9AE7 0x5902 # +0x9AE8 0x590A # +0x9AE9 0x5910 # +0x9AEA 0x591B # +0x9AEB 0x68A6 # +0x9AEC 0x5925 # +0x9AED 0x592C # +0x9AEE 0x592D # +0x9AEF 0x5932 # +0x9AF0 0x5938 # +0x9AF1 0x593E # +0x9AF2 0x7AD2 # +0x9AF3 0x5955 # +0x9AF4 0x5950 # +0x9AF5 0x594E # +0x9AF6 0x595A # +0x9AF7 0x5958 # +0x9AF8 0x5962 # +0x9AF9 0x5960 # +0x9AFA 0x5967 # +0x9AFB 0x596C # +0x9AFC 0x5969 # +0x9B40 0x5978 # +0x9B41 0x5981 # +0x9B42 0x599D # +0x9B43 0x4F5E # +0x9B44 0x4FAB # +0x9B45 0x59A3 # +0x9B46 0x59B2 # +0x9B47 0x59C6 # +0x9B48 0x59E8 # +0x9B49 0x59DC # +0x9B4A 0x598D # +0x9B4B 0x59D9 # +0x9B4C 0x59DA # +0x9B4D 0x5A25 # +0x9B4E 0x5A1F # +0x9B4F 0x5A11 # +0x9B50 0x5A1C # +0x9B51 0x5A09 # +0x9B52 0x5A1A # +0x9B53 0x5A40 # +0x9B54 0x5A6C # +0x9B55 0x5A49 # +0x9B56 0x5A35 # +0x9B57 0x5A36 # +0x9B58 0x5A62 # +0x9B59 0x5A6A # +0x9B5A 0x5A9A # +0x9B5B 0x5ABC # +0x9B5C 0x5ABE # +0x9B5D 0x5ACB # +0x9B5E 0x5AC2 # +0x9B5F 0x5ABD # +0x9B60 0x5AE3 # +0x9B61 0x5AD7 # +0x9B62 0x5AE6 # +0x9B63 0x5AE9 # +0x9B64 0x5AD6 # +0x9B65 0x5AFA # +0x9B66 0x5AFB # +0x9B67 0x5B0C # +0x9B68 0x5B0B # +0x9B69 0x5B16 # +0x9B6A 0x5B32 # +0x9B6B 0x5AD0 # +0x9B6C 0x5B2A # +0x9B6D 0x5B36 # +0x9B6E 0x5B3E # +0x9B6F 0x5B43 # +0x9B70 0x5B45 # +0x9B71 0x5B40 # +0x9B72 0x5B51 # +0x9B73 0x5B55 # +0x9B74 0x5B5A # +0x9B75 0x5B5B # +0x9B76 0x5B65 # +0x9B77 0x5B69 # +0x9B78 0x5B70 # +0x9B79 0x5B73 # +0x9B7A 0x5B75 # +0x9B7B 0x5B78 # +0x9B7C 0x6588 # +0x9B7D 0x5B7A # +0x9B7E 0x5B80 # +0x9B80 0x5B83 # +0x9B81 0x5BA6 # +0x9B82 0x5BB8 # +0x9B83 0x5BC3 # +0x9B84 0x5BC7 # +0x9B85 0x5BC9 # +0x9B86 0x5BD4 # +0x9B87 0x5BD0 # +0x9B88 0x5BE4 # +0x9B89 0x5BE6 # +0x9B8A 0x5BE2 # +0x9B8B 0x5BDE # +0x9B8C 0x5BE5 # +0x9B8D 0x5BEB # +0x9B8E 0x5BF0 # +0x9B8F 0x5BF6 # +0x9B90 0x5BF3 # +0x9B91 0x5C05 # +0x9B92 0x5C07 # +0x9B93 0x5C08 # +0x9B94 0x5C0D # +0x9B95 0x5C13 # +0x9B96 0x5C20 # +0x9B97 0x5C22 # +0x9B98 0x5C28 # +0x9B99 0x5C38 # +0x9B9A 0x5C39 # +0x9B9B 0x5C41 # +0x9B9C 0x5C46 # +0x9B9D 0x5C4E # +0x9B9E 0x5C53 # +0x9B9F 0x5C50 # +0x9BA0 0x5C4F # +0x9BA1 0x5B71 # +0x9BA2 0x5C6C # +0x9BA3 0x5C6E # +0x9BA4 0x4E62 # +0x9BA5 0x5C76 # +0x9BA6 0x5C79 # +0x9BA7 0x5C8C # +0x9BA8 0x5C91 # +0x9BA9 0x5C94 # +0x9BAA 0x599B # +0x9BAB 0x5CAB # +0x9BAC 0x5CBB # +0x9BAD 0x5CB6 # +0x9BAE 0x5CBC # +0x9BAF 0x5CB7 # +0x9BB0 0x5CC5 # +0x9BB1 0x5CBE # +0x9BB2 0x5CC7 # +0x9BB3 0x5CD9 # +0x9BB4 0x5CE9 # +0x9BB5 0x5CFD # +0x9BB6 0x5CFA # +0x9BB7 0x5CED # +0x9BB8 0x5D8C # +0x9BB9 0x5CEA # +0x9BBA 0x5D0B # +0x9BBB 0x5D15 # +0x9BBC 0x5D17 # +0x9BBD 0x5D5C # +0x9BBE 0x5D1F # +0x9BBF 0x5D1B # +0x9BC0 0x5D11 # +0x9BC1 0x5D14 # +0x9BC2 0x5D22 # +0x9BC3 0x5D1A # +0x9BC4 0x5D19 # +0x9BC5 0x5D18 # +0x9BC6 0x5D4C # +0x9BC7 0x5D52 # +0x9BC8 0x5D4E # +0x9BC9 0x5D4B # +0x9BCA 0x5D6C # +0x9BCB 0x5D73 # +0x9BCC 0x5D76 # +0x9BCD 0x5D87 # +0x9BCE 0x5D84 # +0x9BCF 0x5D82 # +0x9BD0 0x5DA2 # +0x9BD1 0x5D9D # +0x9BD2 0x5DAC # +0x9BD3 0x5DAE # +0x9BD4 0x5DBD # +0x9BD5 0x5D90 # +0x9BD6 0x5DB7 # +0x9BD7 0x5DBC # +0x9BD8 0x5DC9 # +0x9BD9 0x5DCD # +0x9BDA 0x5DD3 # +0x9BDB 0x5DD2 # +0x9BDC 0x5DD6 # +0x9BDD 0x5DDB # +0x9BDE 0x5DEB # +0x9BDF 0x5DF2 # +0x9BE0 0x5DF5 # +0x9BE1 0x5E0B # +0x9BE2 0x5E1A # +0x9BE3 0x5E19 # +0x9BE4 0x5E11 # +0x9BE5 0x5E1B # +0x9BE6 0x5E36 # +0x9BE7 0x5E37 # +0x9BE8 0x5E44 # +0x9BE9 0x5E43 # +0x9BEA 0x5E40 # +0x9BEB 0x5E4E # +0x9BEC 0x5E57 # +0x9BED 0x5E54 # +0x9BEE 0x5E5F # +0x9BEF 0x5E62 # +0x9BF0 0x5E64 # +0x9BF1 0x5E47 # +0x9BF2 0x5E75 # +0x9BF3 0x5E76 # +0x9BF4 0x5E7A # +0x9BF5 0x9EBC # +0x9BF6 0x5E7F # +0x9BF7 0x5EA0 # +0x9BF8 0x5EC1 # +0x9BF9 0x5EC2 # +0x9BFA 0x5EC8 # +0x9BFB 0x5ED0 # +0x9BFC 0x5ECF # +0x9C40 0x5ED6 # +0x9C41 0x5EE3 # +0x9C42 0x5EDD # +0x9C43 0x5EDA # +0x9C44 0x5EDB # +0x9C45 0x5EE2 # +0x9C46 0x5EE1 # +0x9C47 0x5EE8 # +0x9C48 0x5EE9 # +0x9C49 0x5EEC # +0x9C4A 0x5EF1 # +0x9C4B 0x5EF3 # +0x9C4C 0x5EF0 # +0x9C4D 0x5EF4 # +0x9C4E 0x5EF8 # +0x9C4F 0x5EFE # +0x9C50 0x5F03 # +0x9C51 0x5F09 # +0x9C52 0x5F5D # +0x9C53 0x5F5C # +0x9C54 0x5F0B # +0x9C55 0x5F11 # +0x9C56 0x5F16 # +0x9C57 0x5F29 # +0x9C58 0x5F2D # +0x9C59 0x5F38 # +0x9C5A 0x5F41 # +0x9C5B 0x5F48 # +0x9C5C 0x5F4C # +0x9C5D 0x5F4E # +0x9C5E 0x5F2F # +0x9C5F 0x5F51 # +0x9C60 0x5F56 # +0x9C61 0x5F57 # +0x9C62 0x5F59 # +0x9C63 0x5F61 # +0x9C64 0x5F6D # +0x9C65 0x5F73 # +0x9C66 0x5F77 # +0x9C67 0x5F83 # +0x9C68 0x5F82 # +0x9C69 0x5F7F # +0x9C6A 0x5F8A # +0x9C6B 0x5F88 # +0x9C6C 0x5F91 # +0x9C6D 0x5F87 # +0x9C6E 0x5F9E # +0x9C6F 0x5F99 # +0x9C70 0x5F98 # +0x9C71 0x5FA0 # +0x9C72 0x5FA8 # +0x9C73 0x5FAD # +0x9C74 0x5FBC # +0x9C75 0x5FD6 # +0x9C76 0x5FFB # +0x9C77 0x5FE4 # +0x9C78 0x5FF8 # +0x9C79 0x5FF1 # +0x9C7A 0x5FDD # +0x9C7B 0x60B3 # +0x9C7C 0x5FFF # +0x9C7D 0x6021 # +0x9C7E 0x6060 # +0x9C80 0x6019 # +0x9C81 0x6010 # +0x9C82 0x6029 # +0x9C83 0x600E # +0x9C84 0x6031 # +0x9C85 0x601B # +0x9C86 0x6015 # +0x9C87 0x602B # +0x9C88 0x6026 # +0x9C89 0x600F # +0x9C8A 0x603A # +0x9C8B 0x605A # +0x9C8C 0x6041 # +0x9C8D 0x606A # +0x9C8E 0x6077 # +0x9C8F 0x605F # +0x9C90 0x604A # +0x9C91 0x6046 # +0x9C92 0x604D # +0x9C93 0x6063 # +0x9C94 0x6043 # +0x9C95 0x6064 # +0x9C96 0x6042 # +0x9C97 0x606C # +0x9C98 0x606B # +0x9C99 0x6059 # +0x9C9A 0x6081 # +0x9C9B 0x608D # +0x9C9C 0x60E7 # +0x9C9D 0x6083 # +0x9C9E 0x609A # +0x9C9F 0x6084 # +0x9CA0 0x609B # +0x9CA1 0x6096 # +0x9CA2 0x6097 # +0x9CA3 0x6092 # +0x9CA4 0x60A7 # +0x9CA5 0x608B # +0x9CA6 0x60E1 # +0x9CA7 0x60B8 # +0x9CA8 0x60E0 # +0x9CA9 0x60D3 # +0x9CAA 0x60B4 # +0x9CAB 0x5FF0 # +0x9CAC 0x60BD # +0x9CAD 0x60C6 # +0x9CAE 0x60B5 # +0x9CAF 0x60D8 # +0x9CB0 0x614D # +0x9CB1 0x6115 # +0x9CB2 0x6106 # +0x9CB3 0x60F6 # +0x9CB4 0x60F7 # +0x9CB5 0x6100 # +0x9CB6 0x60F4 # +0x9CB7 0x60FA # +0x9CB8 0x6103 # +0x9CB9 0x6121 # +0x9CBA 0x60FB # +0x9CBB 0x60F1 # +0x9CBC 0x610D # +0x9CBD 0x610E # +0x9CBE 0x6147 # +0x9CBF 0x613E # +0x9CC0 0x6128 # +0x9CC1 0x6127 # +0x9CC2 0x614A # +0x9CC3 0x613F # +0x9CC4 0x613C # +0x9CC5 0x612C # +0x9CC6 0x6134 # +0x9CC7 0x613D # +0x9CC8 0x6142 # +0x9CC9 0x6144 # +0x9CCA 0x6173 # +0x9CCB 0x6177 # +0x9CCC 0x6158 # +0x9CCD 0x6159 # +0x9CCE 0x615A # +0x9CCF 0x616B # +0x9CD0 0x6174 # +0x9CD1 0x616F # +0x9CD2 0x6165 # +0x9CD3 0x6171 # +0x9CD4 0x615F # +0x9CD5 0x615D # +0x9CD6 0x6153 # +0x9CD7 0x6175 # +0x9CD8 0x6199 # +0x9CD9 0x6196 # +0x9CDA 0x6187 # +0x9CDB 0x61AC # +0x9CDC 0x6194 # +0x9CDD 0x619A # +0x9CDE 0x618A # +0x9CDF 0x6191 # +0x9CE0 0x61AB # +0x9CE1 0x61AE # +0x9CE2 0x61CC # +0x9CE3 0x61CA # +0x9CE4 0x61C9 # +0x9CE5 0x61F7 # +0x9CE6 0x61C8 # +0x9CE7 0x61C3 # +0x9CE8 0x61C6 # +0x9CE9 0x61BA # +0x9CEA 0x61CB # +0x9CEB 0x7F79 # +0x9CEC 0x61CD # +0x9CED 0x61E6 # +0x9CEE 0x61E3 # +0x9CEF 0x61F6 # +0x9CF0 0x61FA # +0x9CF1 0x61F4 # +0x9CF2 0x61FF # +0x9CF3 0x61FD # +0x9CF4 0x61FC # +0x9CF5 0x61FE # +0x9CF6 0x6200 # +0x9CF7 0x6208 # +0x9CF8 0x6209 # +0x9CF9 0x620D # +0x9CFA 0x620C # +0x9CFB 0x6214 # +0x9CFC 0x621B # +0x9D40 0x621E # +0x9D41 0x6221 # +0x9D42 0x622A # +0x9D43 0x622E # +0x9D44 0x6230 # +0x9D45 0x6232 # +0x9D46 0x6233 # +0x9D47 0x6241 # +0x9D48 0x624E # +0x9D49 0x625E # +0x9D4A 0x6263 # +0x9D4B 0x625B # +0x9D4C 0x6260 # +0x9D4D 0x6268 # +0x9D4E 0x627C # +0x9D4F 0x6282 # +0x9D50 0x6289 # +0x9D51 0x627E # +0x9D52 0x6292 # +0x9D53 0x6293 # +0x9D54 0x6296 # +0x9D55 0x62D4 # +0x9D56 0x6283 # +0x9D57 0x6294 # +0x9D58 0x62D7 # +0x9D59 0x62D1 # +0x9D5A 0x62BB # +0x9D5B 0x62CF # +0x9D5C 0x62FF # +0x9D5D 0x62C6 # +0x9D5E 0x64D4 # +0x9D5F 0x62C8 # +0x9D60 0x62DC # +0x9D61 0x62CC # +0x9D62 0x62CA # +0x9D63 0x62C2 # +0x9D64 0x62C7 # +0x9D65 0x629B # +0x9D66 0x62C9 # +0x9D67 0x630C # +0x9D68 0x62EE # +0x9D69 0x62F1 # +0x9D6A 0x6327 # +0x9D6B 0x6302 # +0x9D6C 0x6308 # +0x9D6D 0x62EF # +0x9D6E 0x62F5 # +0x9D6F 0x6350 # +0x9D70 0x633E # +0x9D71 0x634D # +0x9D72 0x641C # +0x9D73 0x634F # +0x9D74 0x6396 # +0x9D75 0x638E # +0x9D76 0x6380 # +0x9D77 0x63AB # +0x9D78 0x6376 # +0x9D79 0x63A3 # +0x9D7A 0x638F # +0x9D7B 0x6389 # +0x9D7C 0x639F # +0x9D7D 0x63B5 # +0x9D7E 0x636B # +0x9D80 0x6369 # +0x9D81 0x63BE # +0x9D82 0x63E9 # +0x9D83 0x63C0 # +0x9D84 0x63C6 # +0x9D85 0x63E3 # +0x9D86 0x63C9 # +0x9D87 0x63D2 # +0x9D88 0x63F6 # +0x9D89 0x63C4 # +0x9D8A 0x6416 # +0x9D8B 0x6434 # +0x9D8C 0x6406 # +0x9D8D 0x6413 # +0x9D8E 0x6426 # +0x9D8F 0x6436 # +0x9D90 0x651D # +0x9D91 0x6417 # +0x9D92 0x6428 # +0x9D93 0x640F # +0x9D94 0x6467 # +0x9D95 0x646F # +0x9D96 0x6476 # +0x9D97 0x644E # +0x9D98 0x652A # +0x9D99 0x6495 # +0x9D9A 0x6493 # +0x9D9B 0x64A5 # +0x9D9C 0x64A9 # +0x9D9D 0x6488 # +0x9D9E 0x64BC # +0x9D9F 0x64DA # +0x9DA0 0x64D2 # +0x9DA1 0x64C5 # +0x9DA2 0x64C7 # +0x9DA3 0x64BB # +0x9DA4 0x64D8 # +0x9DA5 0x64C2 # +0x9DA6 0x64F1 # +0x9DA7 0x64E7 # +0x9DA8 0x8209 # +0x9DA9 0x64E0 # +0x9DAA 0x64E1 # +0x9DAB 0x62AC # +0x9DAC 0x64E3 # +0x9DAD 0x64EF # +0x9DAE 0x652C # +0x9DAF 0x64F6 # +0x9DB0 0x64F4 # +0x9DB1 0x64F2 # +0x9DB2 0x64FA # +0x9DB3 0x6500 # +0x9DB4 0x64FD # +0x9DB5 0x6518 # +0x9DB6 0x651C # +0x9DB7 0x6505 # +0x9DB8 0x6524 # +0x9DB9 0x6523 # +0x9DBA 0x652B # +0x9DBB 0x6534 # +0x9DBC 0x6535 # +0x9DBD 0x6537 # +0x9DBE 0x6536 # +0x9DBF 0x6538 # +0x9DC0 0x754B # +0x9DC1 0x6548 # +0x9DC2 0x6556 # +0x9DC3 0x6555 # +0x9DC4 0x654D # +0x9DC5 0x6558 # +0x9DC6 0x655E # +0x9DC7 0x655D # +0x9DC8 0x6572 # +0x9DC9 0x6578 # +0x9DCA 0x6582 # +0x9DCB 0x6583 # +0x9DCC 0x8B8A # +0x9DCD 0x659B # +0x9DCE 0x659F # +0x9DCF 0x65AB # +0x9DD0 0x65B7 # +0x9DD1 0x65C3 # +0x9DD2 0x65C6 # +0x9DD3 0x65C1 # +0x9DD4 0x65C4 # +0x9DD5 0x65CC # +0x9DD6 0x65D2 # +0x9DD7 0x65DB # +0x9DD8 0x65D9 # +0x9DD9 0x65E0 # +0x9DDA 0x65E1 # +0x9DDB 0x65F1 # +0x9DDC 0x6772 # +0x9DDD 0x660A # +0x9DDE 0x6603 # +0x9DDF 0x65FB # +0x9DE0 0x6773 # +0x9DE1 0x6635 # +0x9DE2 0x6636 # +0x9DE3 0x6634 # +0x9DE4 0x661C # +0x9DE5 0x664F # +0x9DE6 0x6644 # +0x9DE7 0x6649 # +0x9DE8 0x6641 # +0x9DE9 0x665E # +0x9DEA 0x665D # +0x9DEB 0x6664 # +0x9DEC 0x6667 # +0x9DED 0x6668 # +0x9DEE 0x665F # +0x9DEF 0x6662 # +0x9DF0 0x6670 # +0x9DF1 0x6683 # +0x9DF2 0x6688 # +0x9DF3 0x668E # +0x9DF4 0x6689 # +0x9DF5 0x6684 # +0x9DF6 0x6698 # +0x9DF7 0x669D # +0x9DF8 0x66C1 # +0x9DF9 0x66B9 # +0x9DFA 0x66C9 # +0x9DFB 0x66BE # +0x9DFC 0x66BC # +0x9E40 0x66C4 # +0x9E41 0x66B8 # +0x9E42 0x66D6 # +0x9E43 0x66DA # +0x9E44 0x66E0 # +0x9E45 0x663F # +0x9E46 0x66E6 # +0x9E47 0x66E9 # +0x9E48 0x66F0 # +0x9E49 0x66F5 # +0x9E4A 0x66F7 # +0x9E4B 0x670F # +0x9E4C 0x6716 # +0x9E4D 0x671E # +0x9E4E 0x6726 # +0x9E4F 0x6727 # +0x9E50 0x9738 # +0x9E51 0x672E # +0x9E52 0x673F # +0x9E53 0x6736 # +0x9E54 0x6741 # +0x9E55 0x6738 # +0x9E56 0x6737 # +0x9E57 0x6746 # +0x9E58 0x675E # +0x9E59 0x6760 # +0x9E5A 0x6759 # +0x9E5B 0x6763 # +0x9E5C 0x6764 # +0x9E5D 0x6789 # +0x9E5E 0x6770 # +0x9E5F 0x67A9 # +0x9E60 0x677C # +0x9E61 0x676A # +0x9E62 0x678C # +0x9E63 0x678B # +0x9E64 0x67A6 # +0x9E65 0x67A1 # +0x9E66 0x6785 # +0x9E67 0x67B7 # +0x9E68 0x67EF # +0x9E69 0x67B4 # +0x9E6A 0x67EC # +0x9E6B 0x67B3 # +0x9E6C 0x67E9 # +0x9E6D 0x67B8 # +0x9E6E 0x67E4 # +0x9E6F 0x67DE # +0x9E70 0x67DD # +0x9E71 0x67E2 # +0x9E72 0x67EE # +0x9E73 0x67B9 # +0x9E74 0x67CE # +0x9E75 0x67C6 # +0x9E76 0x67E7 # +0x9E77 0x6A9C # +0x9E78 0x681E # +0x9E79 0x6846 # +0x9E7A 0x6829 # +0x9E7B 0x6840 # +0x9E7C 0x684D # +0x9E7D 0x6832 # +0x9E7E 0x684E # +0x9E80 0x68B3 # +0x9E81 0x682B # +0x9E82 0x6859 # +0x9E83 0x6863 # +0x9E84 0x6877 # +0x9E85 0x687F # +0x9E86 0x689F # +0x9E87 0x688F # +0x9E88 0x68AD # +0x9E89 0x6894 # +0x9E8A 0x689D # +0x9E8B 0x689B # +0x9E8C 0x6883 # +0x9E8D 0x6AAE # +0x9E8E 0x68B9 # +0x9E8F 0x6874 # +0x9E90 0x68B5 # +0x9E91 0x68A0 # +0x9E92 0x68BA # +0x9E93 0x690F # +0x9E94 0x688D # +0x9E95 0x687E # +0x9E96 0x6901 # +0x9E97 0x68CA # +0x9E98 0x6908 # +0x9E99 0x68D8 # +0x9E9A 0x6922 # +0x9E9B 0x6926 # +0x9E9C 0x68E1 # +0x9E9D 0x690C # +0x9E9E 0x68CD # +0x9E9F 0x68D4 # +0x9EA0 0x68E7 # +0x9EA1 0x68D5 # +0x9EA2 0x6936 # +0x9EA3 0x6912 # +0x9EA4 0x6904 # +0x9EA5 0x68D7 # +0x9EA6 0x68E3 # +0x9EA7 0x6925 # +0x9EA8 0x68F9 # +0x9EA9 0x68E0 # +0x9EAA 0x68EF # +0x9EAB 0x6928 # +0x9EAC 0x692A # +0x9EAD 0x691A # +0x9EAE 0x6923 # +0x9EAF 0x6921 # +0x9EB0 0x68C6 # +0x9EB1 0x6979 # +0x9EB2 0x6977 # +0x9EB3 0x695C # +0x9EB4 0x6978 # +0x9EB5 0x696B # +0x9EB6 0x6954 # +0x9EB7 0x697E # +0x9EB8 0x696E # +0x9EB9 0x6939 # +0x9EBA 0x6974 # +0x9EBB 0x693D # +0x9EBC 0x6959 # +0x9EBD 0x6930 # +0x9EBE 0x6961 # +0x9EBF 0x695E # +0x9EC0 0x695D # +0x9EC1 0x6981 # +0x9EC2 0x696A # +0x9EC3 0x69B2 # +0x9EC4 0x69AE # +0x9EC5 0x69D0 # +0x9EC6 0x69BF # +0x9EC7 0x69C1 # +0x9EC8 0x69D3 # +0x9EC9 0x69BE # +0x9ECA 0x69CE # +0x9ECB 0x5BE8 # +0x9ECC 0x69CA # +0x9ECD 0x69DD # +0x9ECE 0x69BB # +0x9ECF 0x69C3 # +0x9ED0 0x69A7 # +0x9ED1 0x6A2E # +0x9ED2 0x6991 # +0x9ED3 0x69A0 # +0x9ED4 0x699C # +0x9ED5 0x6995 # +0x9ED6 0x69B4 # +0x9ED7 0x69DE # +0x9ED8 0x69E8 # +0x9ED9 0x6A02 # +0x9EDA 0x6A1B # +0x9EDB 0x69FF # +0x9EDC 0x6B0A # +0x9EDD 0x69F9 # +0x9EDE 0x69F2 # +0x9EDF 0x69E7 # +0x9EE0 0x6A05 # +0x9EE1 0x69B1 # +0x9EE2 0x6A1E # +0x9EE3 0x69ED # +0x9EE4 0x6A14 # +0x9EE5 0x69EB # +0x9EE6 0x6A0A # +0x9EE7 0x6A12 # +0x9EE8 0x6AC1 # +0x9EE9 0x6A23 # +0x9EEA 0x6A13 # +0x9EEB 0x6A44 # +0x9EEC 0x6A0C # +0x9EED 0x6A72 # +0x9EEE 0x6A36 # +0x9EEF 0x6A78 # +0x9EF0 0x6A47 # +0x9EF1 0x6A62 # +0x9EF2 0x6A59 # +0x9EF3 0x6A66 # +0x9EF4 0x6A48 # +0x9EF5 0x6A38 # +0x9EF6 0x6A22 # +0x9EF7 0x6A90 # +0x9EF8 0x6A8D # +0x9EF9 0x6AA0 # +0x9EFA 0x6A84 # +0x9EFB 0x6AA2 # +0x9EFC 0x6AA3 # +0x9F40 0x6A97 # +0x9F41 0x8617 # +0x9F42 0x6ABB # +0x9F43 0x6AC3 # +0x9F44 0x6AC2 # +0x9F45 0x6AB8 # +0x9F46 0x6AB3 # +0x9F47 0x6AAC # +0x9F48 0x6ADE # +0x9F49 0x6AD1 # +0x9F4A 0x6ADF # +0x9F4B 0x6AAA # +0x9F4C 0x6ADA # +0x9F4D 0x6AEA # +0x9F4E 0x6AFB # +0x9F4F 0x6B05 # +0x9F50 0x8616 # +0x9F51 0x6AFA # +0x9F52 0x6B12 # +0x9F53 0x6B16 # +0x9F54 0x9B31 # +0x9F55 0x6B1F # +0x9F56 0x6B38 # +0x9F57 0x6B37 # +0x9F58 0x76DC # +0x9F59 0x6B39 # +0x9F5A 0x98EE # +0x9F5B 0x6B47 # +0x9F5C 0x6B43 # +0x9F5D 0x6B49 # +0x9F5E 0x6B50 # +0x9F5F 0x6B59 # +0x9F60 0x6B54 # +0x9F61 0x6B5B # +0x9F62 0x6B5F # +0x9F63 0x6B61 # +0x9F64 0x6B78 # +0x9F65 0x6B79 # +0x9F66 0x6B7F # +0x9F67 0x6B80 # +0x9F68 0x6B84 # +0x9F69 0x6B83 # +0x9F6A 0x6B8D # +0x9F6B 0x6B98 # +0x9F6C 0x6B95 # +0x9F6D 0x6B9E # +0x9F6E 0x6BA4 # +0x9F6F 0x6BAA # +0x9F70 0x6BAB # +0x9F71 0x6BAF # +0x9F72 0x6BB2 # +0x9F73 0x6BB1 # +0x9F74 0x6BB3 # +0x9F75 0x6BB7 # +0x9F76 0x6BBC # +0x9F77 0x6BC6 # +0x9F78 0x6BCB # +0x9F79 0x6BD3 # +0x9F7A 0x6BDF # +0x9F7B 0x6BEC # +0x9F7C 0x6BEB # +0x9F7D 0x6BF3 # +0x9F7E 0x6BEF # +0x9F80 0x9EBE # +0x9F81 0x6C08 # +0x9F82 0x6C13 # +0x9F83 0x6C14 # +0x9F84 0x6C1B # +0x9F85 0x6C24 # +0x9F86 0x6C23 # +0x9F87 0x6C5E # +0x9F88 0x6C55 # +0x9F89 0x6C62 # +0x9F8A 0x6C6A # +0x9F8B 0x6C82 # +0x9F8C 0x6C8D # +0x9F8D 0x6C9A # +0x9F8E 0x6C81 # +0x9F8F 0x6C9B # +0x9F90 0x6C7E # +0x9F91 0x6C68 # +0x9F92 0x6C73 # +0x9F93 0x6C92 # +0x9F94 0x6C90 # +0x9F95 0x6CC4 # +0x9F96 0x6CF1 # +0x9F97 0x6CD3 # +0x9F98 0x6CBD # +0x9F99 0x6CD7 # +0x9F9A 0x6CC5 # +0x9F9B 0x6CDD # +0x9F9C 0x6CAE # +0x9F9D 0x6CB1 # +0x9F9E 0x6CBE # +0x9F9F 0x6CBA # +0x9FA0 0x6CDB # +0x9FA1 0x6CEF # +0x9FA2 0x6CD9 # +0x9FA3 0x6CEA # +0x9FA4 0x6D1F # +0x9FA5 0x884D # +0x9FA6 0x6D36 # +0x9FA7 0x6D2B # +0x9FA8 0x6D3D # +0x9FA9 0x6D38 # +0x9FAA 0x6D19 # +0x9FAB 0x6D35 # +0x9FAC 0x6D33 # +0x9FAD 0x6D12 # +0x9FAE 0x6D0C # +0x9FAF 0x6D63 # +0x9FB0 0x6D93 # +0x9FB1 0x6D64 # +0x9FB2 0x6D5A # +0x9FB3 0x6D79 # +0x9FB4 0x6D59 # +0x9FB5 0x6D8E # +0x9FB6 0x6D95 # +0x9FB7 0x6FE4 # +0x9FB8 0x6D85 # +0x9FB9 0x6DF9 # +0x9FBA 0x6E15 # +0x9FBB 0x6E0A # +0x9FBC 0x6DB5 # +0x9FBD 0x6DC7 # +0x9FBE 0x6DE6 # +0x9FBF 0x6DB8 # +0x9FC0 0x6DC6 # +0x9FC1 0x6DEC # +0x9FC2 0x6DDE # +0x9FC3 0x6DCC # +0x9FC4 0x6DE8 # +0x9FC5 0x6DD2 # +0x9FC6 0x6DC5 # +0x9FC7 0x6DFA # +0x9FC8 0x6DD9 # +0x9FC9 0x6DE4 # +0x9FCA 0x6DD5 # +0x9FCB 0x6DEA # +0x9FCC 0x6DEE # +0x9FCD 0x6E2D # +0x9FCE 0x6E6E # +0x9FCF 0x6E2E # +0x9FD0 0x6E19 # +0x9FD1 0x6E72 # +0x9FD2 0x6E5F # +0x9FD3 0x6E3E # +0x9FD4 0x6E23 # +0x9FD5 0x6E6B # +0x9FD6 0x6E2B # +0x9FD7 0x6E76 # +0x9FD8 0x6E4D # +0x9FD9 0x6E1F # +0x9FDA 0x6E43 # +0x9FDB 0x6E3A # +0x9FDC 0x6E4E # +0x9FDD 0x6E24 # +0x9FDE 0x6EFF # +0x9FDF 0x6E1D # +0x9FE0 0x6E38 # +0x9FE1 0x6E82 # +0x9FE2 0x6EAA # +0x9FE3 0x6E98 # +0x9FE4 0x6EC9 # +0x9FE5 0x6EB7 # +0x9FE6 0x6ED3 # +0x9FE7 0x6EBD # +0x9FE8 0x6EAF # +0x9FE9 0x6EC4 # +0x9FEA 0x6EB2 # +0x9FEB 0x6ED4 # +0x9FEC 0x6ED5 # +0x9FED 0x6E8F # +0x9FEE 0x6EA5 # +0x9FEF 0x6EC2 # +0x9FF0 0x6E9F # +0x9FF1 0x6F41 # +0x9FF2 0x6F11 # +0x9FF3 0x704C # +0x9FF4 0x6EEC # +0x9FF5 0x6EF8 # +0x9FF6 0x6EFE # +0x9FF7 0x6F3F # +0x9FF8 0x6EF2 # +0x9FF9 0x6F31 # +0x9FFA 0x6EEF # +0x9FFB 0x6F32 # +0x9FFC 0x6ECC # +0xA1 0xFF61 # HALFWIDTH IDEOGRAPHIC FULL STOP +0xA2 0xFF62 # HALFWIDTH LEFT CORNER BRACKET +0xA3 0xFF63 # HALFWIDTH RIGHT CORNER BRACKET +0xA4 0xFF64 # HALFWIDTH IDEOGRAPHIC COMMA +0xA5 0xFF65 # HALFWIDTH KATAKANA MIDDLE DOT +0xA6 0xFF66 # HALFWIDTH KATAKANA LETTER WO +0xA7 0xFF67 # HALFWIDTH KATAKANA LETTER SMALL A +0xA8 0xFF68 # HALFWIDTH KATAKANA LETTER SMALL I +0xA9 0xFF69 # HALFWIDTH KATAKANA LETTER SMALL U +0xAA 0xFF6A # HALFWIDTH KATAKANA LETTER SMALL E +0xAB 0xFF6B # HALFWIDTH KATAKANA LETTER SMALL O +0xAC 0xFF6C # HALFWIDTH KATAKANA LETTER SMALL YA +0xAD 0xFF6D # HALFWIDTH KATAKANA LETTER SMALL YU +0xAE 0xFF6E # HALFWIDTH KATAKANA LETTER SMALL YO +0xAF 0xFF6F # HALFWIDTH KATAKANA LETTER SMALL TU +0xB0 0xFF70 # HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK +0xB1 0xFF71 # HALFWIDTH KATAKANA LETTER A +0xB2 0xFF72 # HALFWIDTH KATAKANA LETTER I +0xB3 0xFF73 # HALFWIDTH KATAKANA LETTER U +0xB4 0xFF74 # HALFWIDTH KATAKANA LETTER E +0xB5 0xFF75 # HALFWIDTH KATAKANA LETTER O +0xB6 0xFF76 # HALFWIDTH KATAKANA LETTER KA +0xB7 0xFF77 # HALFWIDTH KATAKANA LETTER KI +0xB8 0xFF78 # HALFWIDTH KATAKANA LETTER KU +0xB9 0xFF79 # HALFWIDTH KATAKANA LETTER KE +0xBA 0xFF7A # HALFWIDTH KATAKANA LETTER KO +0xBB 0xFF7B # HALFWIDTH KATAKANA LETTER SA +0xBC 0xFF7C # HALFWIDTH KATAKANA LETTER SI +0xBD 0xFF7D # HALFWIDTH KATAKANA LETTER SU +0xBE 0xFF7E # HALFWIDTH KATAKANA LETTER SE +0xBF 0xFF7F # HALFWIDTH KATAKANA LETTER SO +0xC0 0xFF80 # HALFWIDTH KATAKANA LETTER TA +0xC1 0xFF81 # HALFWIDTH KATAKANA LETTER TI +0xC2 0xFF82 # HALFWIDTH KATAKANA LETTER TU +0xC3 0xFF83 # HALFWIDTH KATAKANA LETTER TE +0xC4 0xFF84 # HALFWIDTH KATAKANA LETTER TO +0xC5 0xFF85 # HALFWIDTH KATAKANA LETTER NA +0xC6 0xFF86 # HALFWIDTH KATAKANA LETTER NI +0xC7 0xFF87 # HALFWIDTH KATAKANA LETTER NU +0xC8 0xFF88 # HALFWIDTH KATAKANA LETTER NE +0xC9 0xFF89 # HALFWIDTH KATAKANA LETTER NO +0xCA 0xFF8A # HALFWIDTH KATAKANA LETTER HA +0xCB 0xFF8B # HALFWIDTH KATAKANA LETTER HI +0xCC 0xFF8C # HALFWIDTH KATAKANA LETTER HU +0xCD 0xFF8D # HALFWIDTH KATAKANA LETTER HE +0xCE 0xFF8E # HALFWIDTH KATAKANA LETTER HO +0xCF 0xFF8F # HALFWIDTH KATAKANA LETTER MA +0xD0 0xFF90 # HALFWIDTH KATAKANA LETTER MI +0xD1 0xFF91 # HALFWIDTH KATAKANA LETTER MU +0xD2 0xFF92 # HALFWIDTH KATAKANA LETTER ME +0xD3 0xFF93 # HALFWIDTH KATAKANA LETTER MO +0xD4 0xFF94 # HALFWIDTH KATAKANA LETTER YA +0xD5 0xFF95 # HALFWIDTH KATAKANA LETTER YU +0xD6 0xFF96 # HALFWIDTH KATAKANA LETTER YO +0xD7 0xFF97 # HALFWIDTH KATAKANA LETTER RA +0xD8 0xFF98 # HALFWIDTH KATAKANA LETTER RI +0xD9 0xFF99 # HALFWIDTH KATAKANA LETTER RU +0xDA 0xFF9A # HALFWIDTH KATAKANA LETTER RE +0xDB 0xFF9B # HALFWIDTH KATAKANA LETTER RO +0xDC 0xFF9C # HALFWIDTH KATAKANA LETTER WA +0xDD 0xFF9D # HALFWIDTH KATAKANA LETTER N +0xDE 0xFF9E # HALFWIDTH KATAKANA VOICED SOUND MARK +0xDF 0xFF9F # HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK +0xE040 0x6F3E # +0xE041 0x6F13 # +0xE042 0x6EF7 # +0xE043 0x6F86 # +0xE044 0x6F7A # +0xE045 0x6F78 # +0xE046 0x6F81 # +0xE047 0x6F80 # +0xE048 0x6F6F # +0xE049 0x6F5B # +0xE04A 0x6FF3 # +0xE04B 0x6F6D # +0xE04C 0x6F82 # +0xE04D 0x6F7C # +0xE04E 0x6F58 # +0xE04F 0x6F8E # +0xE050 0x6F91 # +0xE051 0x6FC2 # +0xE052 0x6F66 # +0xE053 0x6FB3 # +0xE054 0x6FA3 # +0xE055 0x6FA1 # +0xE056 0x6FA4 # +0xE057 0x6FB9 # +0xE058 0x6FC6 # +0xE059 0x6FAA # +0xE05A 0x6FDF # +0xE05B 0x6FD5 # +0xE05C 0x6FEC # +0xE05D 0x6FD4 # +0xE05E 0x6FD8 # +0xE05F 0x6FF1 # +0xE060 0x6FEE # +0xE061 0x6FDB # +0xE062 0x7009 # +0xE063 0x700B # +0xE064 0x6FFA # +0xE065 0x7011 # +0xE066 0x7001 # +0xE067 0x700F # +0xE068 0x6FFE # +0xE069 0x701B # +0xE06A 0x701A # +0xE06B 0x6F74 # +0xE06C 0x701D # +0xE06D 0x7018 # +0xE06E 0x701F # +0xE06F 0x7030 # +0xE070 0x703E # +0xE071 0x7032 # +0xE072 0x7051 # +0xE073 0x7063 # +0xE074 0x7099 # +0xE075 0x7092 # +0xE076 0x70AF # +0xE077 0x70F1 # +0xE078 0x70AC # +0xE079 0x70B8 # +0xE07A 0x70B3 # +0xE07B 0x70AE # +0xE07C 0x70DF # +0xE07D 0x70CB # +0xE07E 0x70DD # +0xE080 0x70D9 # +0xE081 0x7109 # +0xE082 0x70FD # +0xE083 0x711C # +0xE084 0x7119 # +0xE085 0x7165 # +0xE086 0x7155 # +0xE087 0x7188 # +0xE088 0x7166 # +0xE089 0x7162 # +0xE08A 0x714C # +0xE08B 0x7156 # +0xE08C 0x716C # +0xE08D 0x718F # +0xE08E 0x71FB # +0xE08F 0x7184 # +0xE090 0x7195 # +0xE091 0x71A8 # +0xE092 0x71AC # +0xE093 0x71D7 # +0xE094 0x71B9 # +0xE095 0x71BE # +0xE096 0x71D2 # +0xE097 0x71C9 # +0xE098 0x71D4 # +0xE099 0x71CE # +0xE09A 0x71E0 # +0xE09B 0x71EC # +0xE09C 0x71E7 # +0xE09D 0x71F5 # +0xE09E 0x71FC # +0xE09F 0x71F9 # +0xE0A0 0x71FF # +0xE0A1 0x720D # +0xE0A2 0x7210 # +0xE0A3 0x721B # +0xE0A4 0x7228 # +0xE0A5 0x722D # +0xE0A6 0x722C # +0xE0A7 0x7230 # +0xE0A8 0x7232 # +0xE0A9 0x723B # +0xE0AA 0x723C # +0xE0AB 0x723F # +0xE0AC 0x7240 # +0xE0AD 0x7246 # +0xE0AE 0x724B # +0xE0AF 0x7258 # +0xE0B0 0x7274 # +0xE0B1 0x727E # +0xE0B2 0x7282 # +0xE0B3 0x7281 # +0xE0B4 0x7287 # +0xE0B5 0x7292 # +0xE0B6 0x7296 # +0xE0B7 0x72A2 # +0xE0B8 0x72A7 # +0xE0B9 0x72B9 # +0xE0BA 0x72B2 # +0xE0BB 0x72C3 # +0xE0BC 0x72C6 # +0xE0BD 0x72C4 # +0xE0BE 0x72CE # +0xE0BF 0x72D2 # +0xE0C0 0x72E2 # +0xE0C1 0x72E0 # +0xE0C2 0x72E1 # +0xE0C3 0x72F9 # +0xE0C4 0x72F7 # +0xE0C5 0x500F # +0xE0C6 0x7317 # +0xE0C7 0x730A # +0xE0C8 0x731C # +0xE0C9 0x7316 # +0xE0CA 0x731D # +0xE0CB 0x7334 # +0xE0CC 0x732F # +0xE0CD 0x7329 # +0xE0CE 0x7325 # +0xE0CF 0x733E # +0xE0D0 0x734E # +0xE0D1 0x734F # +0xE0D2 0x9ED8 # +0xE0D3 0x7357 # +0xE0D4 0x736A # +0xE0D5 0x7368 # +0xE0D6 0x7370 # +0xE0D7 0x7378 # +0xE0D8 0x7375 # +0xE0D9 0x737B # +0xE0DA 0x737A # +0xE0DB 0x73C8 # +0xE0DC 0x73B3 # +0xE0DD 0x73CE # +0xE0DE 0x73BB # +0xE0DF 0x73C0 # +0xE0E0 0x73E5 # +0xE0E1 0x73EE # +0xE0E2 0x73DE # +0xE0E3 0x74A2 # +0xE0E4 0x7405 # +0xE0E5 0x746F # +0xE0E6 0x7425 # +0xE0E7 0x73F8 # +0xE0E8 0x7432 # +0xE0E9 0x743A # +0xE0EA 0x7455 # +0xE0EB 0x743F # +0xE0EC 0x745F # +0xE0ED 0x7459 # +0xE0EE 0x7441 # +0xE0EF 0x745C # +0xE0F0 0x7469 # +0xE0F1 0x7470 # +0xE0F2 0x7463 # +0xE0F3 0x746A # +0xE0F4 0x7476 # +0xE0F5 0x747E # +0xE0F6 0x748B # +0xE0F7 0x749E # +0xE0F8 0x74A7 # +0xE0F9 0x74CA # +0xE0FA 0x74CF # +0xE0FB 0x74D4 # +0xE0FC 0x73F1 # +0xE140 0x74E0 # +0xE141 0x74E3 # +0xE142 0x74E7 # +0xE143 0x74E9 # +0xE144 0x74EE # +0xE145 0x74F2 # +0xE146 0x74F0 # +0xE147 0x74F1 # +0xE148 0x74F8 # +0xE149 0x74F7 # +0xE14A 0x7504 # +0xE14B 0x7503 # +0xE14C 0x7505 # +0xE14D 0x750C # +0xE14E 0x750E # +0xE14F 0x750D # +0xE150 0x7515 # +0xE151 0x7513 # +0xE152 0x751E # +0xE153 0x7526 # +0xE154 0x752C # +0xE155 0x753C # +0xE156 0x7544 # +0xE157 0x754D # +0xE158 0x754A # +0xE159 0x7549 # +0xE15A 0x755B # +0xE15B 0x7546 # +0xE15C 0x755A # +0xE15D 0x7569 # +0xE15E 0x7564 # +0xE15F 0x7567 # +0xE160 0x756B # +0xE161 0x756D # +0xE162 0x7578 # +0xE163 0x7576 # +0xE164 0x7586 # +0xE165 0x7587 # +0xE166 0x7574 # +0xE167 0x758A # +0xE168 0x7589 # +0xE169 0x7582 # +0xE16A 0x7594 # +0xE16B 0x759A # +0xE16C 0x759D # +0xE16D 0x75A5 # +0xE16E 0x75A3 # +0xE16F 0x75C2 # +0xE170 0x75B3 # +0xE171 0x75C3 # +0xE172 0x75B5 # +0xE173 0x75BD # +0xE174 0x75B8 # +0xE175 0x75BC # +0xE176 0x75B1 # +0xE177 0x75CD # +0xE178 0x75CA # +0xE179 0x75D2 # +0xE17A 0x75D9 # +0xE17B 0x75E3 # +0xE17C 0x75DE # +0xE17D 0x75FE # +0xE17E 0x75FF # +0xE180 0x75FC # +0xE181 0x7601 # +0xE182 0x75F0 # +0xE183 0x75FA # +0xE184 0x75F2 # +0xE185 0x75F3 # +0xE186 0x760B # +0xE187 0x760D # +0xE188 0x7609 # +0xE189 0x761F # +0xE18A 0x7627 # +0xE18B 0x7620 # +0xE18C 0x7621 # +0xE18D 0x7622 # +0xE18E 0x7624 # +0xE18F 0x7634 # +0xE190 0x7630 # +0xE191 0x763B # +0xE192 0x7647 # +0xE193 0x7648 # +0xE194 0x7646 # +0xE195 0x765C # +0xE196 0x7658 # +0xE197 0x7661 # +0xE198 0x7662 # +0xE199 0x7668 # +0xE19A 0x7669 # +0xE19B 0x766A # +0xE19C 0x7667 # +0xE19D 0x766C # +0xE19E 0x7670 # +0xE19F 0x7672 # +0xE1A0 0x7676 # +0xE1A1 0x7678 # +0xE1A2 0x767C # +0xE1A3 0x7680 # +0xE1A4 0x7683 # +0xE1A5 0x7688 # +0xE1A6 0x768B # +0xE1A7 0x768E # +0xE1A8 0x7696 # +0xE1A9 0x7693 # +0xE1AA 0x7699 # +0xE1AB 0x769A # +0xE1AC 0x76B0 # +0xE1AD 0x76B4 # +0xE1AE 0x76B8 # +0xE1AF 0x76B9 # +0xE1B0 0x76BA # +0xE1B1 0x76C2 # +0xE1B2 0x76CD # +0xE1B3 0x76D6 # +0xE1B4 0x76D2 # +0xE1B5 0x76DE # +0xE1B6 0x76E1 # +0xE1B7 0x76E5 # +0xE1B8 0x76E7 # +0xE1B9 0x76EA # +0xE1BA 0x862F # +0xE1BB 0x76FB # +0xE1BC 0x7708 # +0xE1BD 0x7707 # +0xE1BE 0x7704 # +0xE1BF 0x7729 # +0xE1C0 0x7724 # +0xE1C1 0x771E # +0xE1C2 0x7725 # +0xE1C3 0x7726 # +0xE1C4 0x771B # +0xE1C5 0x7737 # +0xE1C6 0x7738 # +0xE1C7 0x7747 # +0xE1C8 0x775A # +0xE1C9 0x7768 # +0xE1CA 0x776B # +0xE1CB 0x775B # +0xE1CC 0x7765 # +0xE1CD 0x777F # +0xE1CE 0x777E # +0xE1CF 0x7779 # +0xE1D0 0x778E # +0xE1D1 0x778B # +0xE1D2 0x7791 # +0xE1D3 0x77A0 # +0xE1D4 0x779E # +0xE1D5 0x77B0 # +0xE1D6 0x77B6 # +0xE1D7 0x77B9 # +0xE1D8 0x77BF # +0xE1D9 0x77BC # +0xE1DA 0x77BD # +0xE1DB 0x77BB # +0xE1DC 0x77C7 # +0xE1DD 0x77CD # +0xE1DE 0x77D7 # +0xE1DF 0x77DA # +0xE1E0 0x77DC # +0xE1E1 0x77E3 # +0xE1E2 0x77EE # +0xE1E3 0x77FC # +0xE1E4 0x780C # +0xE1E5 0x7812 # +0xE1E6 0x7926 # +0xE1E7 0x7820 # +0xE1E8 0x792A # +0xE1E9 0x7845 # +0xE1EA 0x788E # +0xE1EB 0x7874 # +0xE1EC 0x7886 # +0xE1ED 0x787C # +0xE1EE 0x789A # +0xE1EF 0x788C # +0xE1F0 0x78A3 # +0xE1F1 0x78B5 # +0xE1F2 0x78AA # +0xE1F3 0x78AF # +0xE1F4 0x78D1 # +0xE1F5 0x78C6 # +0xE1F6 0x78CB # +0xE1F7 0x78D4 # +0xE1F8 0x78BE # +0xE1F9 0x78BC # +0xE1FA 0x78C5 # +0xE1FB 0x78CA # +0xE1FC 0x78EC # +0xE240 0x78E7 # +0xE241 0x78DA # +0xE242 0x78FD # +0xE243 0x78F4 # +0xE244 0x7907 # +0xE245 0x7912 # +0xE246 0x7911 # +0xE247 0x7919 # +0xE248 0x792C # +0xE249 0x792B # +0xE24A 0x7940 # +0xE24B 0x7960 # +0xE24C 0x7957 # +0xE24D 0x795F # +0xE24E 0x795A # +0xE24F 0x7955 # +0xE250 0x7953 # +0xE251 0x797A # +0xE252 0x797F # +0xE253 0x798A # +0xE254 0x799D # +0xE255 0x79A7 # +0xE256 0x9F4B # +0xE257 0x79AA # +0xE258 0x79AE # +0xE259 0x79B3 # +0xE25A 0x79B9 # +0xE25B 0x79BA # +0xE25C 0x79C9 # +0xE25D 0x79D5 # +0xE25E 0x79E7 # +0xE25F 0x79EC # +0xE260 0x79E1 # +0xE261 0x79E3 # +0xE262 0x7A08 # +0xE263 0x7A0D # +0xE264 0x7A18 # +0xE265 0x7A19 # +0xE266 0x7A20 # +0xE267 0x7A1F # +0xE268 0x7980 # +0xE269 0x7A31 # +0xE26A 0x7A3B # +0xE26B 0x7A3E # +0xE26C 0x7A37 # +0xE26D 0x7A43 # +0xE26E 0x7A57 # +0xE26F 0x7A49 # +0xE270 0x7A61 # +0xE271 0x7A62 # +0xE272 0x7A69 # +0xE273 0x9F9D # +0xE274 0x7A70 # +0xE275 0x7A79 # +0xE276 0x7A7D # +0xE277 0x7A88 # +0xE278 0x7A97 # +0xE279 0x7A95 # +0xE27A 0x7A98 # +0xE27B 0x7A96 # +0xE27C 0x7AA9 # +0xE27D 0x7AC8 # +0xE27E 0x7AB0 # +0xE280 0x7AB6 # +0xE281 0x7AC5 # +0xE282 0x7AC4 # +0xE283 0x7ABF # +0xE284 0x9083 # +0xE285 0x7AC7 # +0xE286 0x7ACA # +0xE287 0x7ACD # +0xE288 0x7ACF # +0xE289 0x7AD5 # +0xE28A 0x7AD3 # +0xE28B 0x7AD9 # +0xE28C 0x7ADA # +0xE28D 0x7ADD # +0xE28E 0x7AE1 # +0xE28F 0x7AE2 # +0xE290 0x7AE6 # +0xE291 0x7AED # +0xE292 0x7AF0 # +0xE293 0x7B02 # +0xE294 0x7B0F # +0xE295 0x7B0A # +0xE296 0x7B06 # +0xE297 0x7B33 # +0xE298 0x7B18 # +0xE299 0x7B19 # +0xE29A 0x7B1E # +0xE29B 0x7B35 # +0xE29C 0x7B28 # +0xE29D 0x7B36 # +0xE29E 0x7B50 # +0xE29F 0x7B7A # +0xE2A0 0x7B04 # +0xE2A1 0x7B4D # +0xE2A2 0x7B0B # +0xE2A3 0x7B4C # +0xE2A4 0x7B45 # +0xE2A5 0x7B75 # +0xE2A6 0x7B65 # +0xE2A7 0x7B74 # +0xE2A8 0x7B67 # +0xE2A9 0x7B70 # +0xE2AA 0x7B71 # +0xE2AB 0x7B6C # +0xE2AC 0x7B6E # +0xE2AD 0x7B9D # +0xE2AE 0x7B98 # +0xE2AF 0x7B9F # +0xE2B0 0x7B8D # +0xE2B1 0x7B9C # +0xE2B2 0x7B9A # +0xE2B3 0x7B8B # +0xE2B4 0x7B92 # +0xE2B5 0x7B8F # +0xE2B6 0x7B5D # +0xE2B7 0x7B99 # +0xE2B8 0x7BCB # +0xE2B9 0x7BC1 # +0xE2BA 0x7BCC # +0xE2BB 0x7BCF # +0xE2BC 0x7BB4 # +0xE2BD 0x7BC6 # +0xE2BE 0x7BDD # +0xE2BF 0x7BE9 # +0xE2C0 0x7C11 # +0xE2C1 0x7C14 # +0xE2C2 0x7BE6 # +0xE2C3 0x7BE5 # +0xE2C4 0x7C60 # +0xE2C5 0x7C00 # +0xE2C6 0x7C07 # +0xE2C7 0x7C13 # +0xE2C8 0x7BF3 # +0xE2C9 0x7BF7 # +0xE2CA 0x7C17 # +0xE2CB 0x7C0D # +0xE2CC 0x7BF6 # +0xE2CD 0x7C23 # +0xE2CE 0x7C27 # +0xE2CF 0x7C2A # +0xE2D0 0x7C1F # +0xE2D1 0x7C37 # +0xE2D2 0x7C2B # +0xE2D3 0x7C3D # +0xE2D4 0x7C4C # +0xE2D5 0x7C43 # +0xE2D6 0x7C54 # +0xE2D7 0x7C4F # +0xE2D8 0x7C40 # +0xE2D9 0x7C50 # +0xE2DA 0x7C58 # +0xE2DB 0x7C5F # +0xE2DC 0x7C64 # +0xE2DD 0x7C56 # +0xE2DE 0x7C65 # +0xE2DF 0x7C6C # +0xE2E0 0x7C75 # +0xE2E1 0x7C83 # +0xE2E2 0x7C90 # +0xE2E3 0x7CA4 # +0xE2E4 0x7CAD # +0xE2E5 0x7CA2 # +0xE2E6 0x7CAB # +0xE2E7 0x7CA1 # +0xE2E8 0x7CA8 # +0xE2E9 0x7CB3 # +0xE2EA 0x7CB2 # +0xE2EB 0x7CB1 # +0xE2EC 0x7CAE # +0xE2ED 0x7CB9 # +0xE2EE 0x7CBD # +0xE2EF 0x7CC0 # +0xE2F0 0x7CC5 # +0xE2F1 0x7CC2 # +0xE2F2 0x7CD8 # +0xE2F3 0x7CD2 # +0xE2F4 0x7CDC # +0xE2F5 0x7CE2 # +0xE2F6 0x9B3B # +0xE2F7 0x7CEF # +0xE2F8 0x7CF2 # +0xE2F9 0x7CF4 # +0xE2FA 0x7CF6 # +0xE2FB 0x7CFA # +0xE2FC 0x7D06 # +0xE340 0x7D02 # +0xE341 0x7D1C # +0xE342 0x7D15 # +0xE343 0x7D0A # +0xE344 0x7D45 # +0xE345 0x7D4B # +0xE346 0x7D2E # +0xE347 0x7D32 # +0xE348 0x7D3F # +0xE349 0x7D35 # +0xE34A 0x7D46 # +0xE34B 0x7D73 # +0xE34C 0x7D56 # +0xE34D 0x7D4E # +0xE34E 0x7D72 # +0xE34F 0x7D68 # +0xE350 0x7D6E # +0xE351 0x7D4F # +0xE352 0x7D63 # +0xE353 0x7D93 # +0xE354 0x7D89 # +0xE355 0x7D5B # +0xE356 0x7D8F # +0xE357 0x7D7D # +0xE358 0x7D9B # +0xE359 0x7DBA # +0xE35A 0x7DAE # +0xE35B 0x7DA3 # +0xE35C 0x7DB5 # +0xE35D 0x7DC7 # +0xE35E 0x7DBD # +0xE35F 0x7DAB # +0xE360 0x7E3D # +0xE361 0x7DA2 # +0xE362 0x7DAF # +0xE363 0x7DDC # +0xE364 0x7DB8 # +0xE365 0x7D9F # +0xE366 0x7DB0 # +0xE367 0x7DD8 # +0xE368 0x7DDD # +0xE369 0x7DE4 # +0xE36A 0x7DDE # +0xE36B 0x7DFB # +0xE36C 0x7DF2 # +0xE36D 0x7DE1 # +0xE36E 0x7E05 # +0xE36F 0x7E0A # +0xE370 0x7E23 # +0xE371 0x7E21 # +0xE372 0x7E12 # +0xE373 0x7E31 # +0xE374 0x7E1F # +0xE375 0x7E09 # +0xE376 0x7E0B # +0xE377 0x7E22 # +0xE378 0x7E46 # +0xE379 0x7E66 # +0xE37A 0x7E3B # +0xE37B 0x7E35 # +0xE37C 0x7E39 # +0xE37D 0x7E43 # +0xE37E 0x7E37 # +0xE380 0x7E32 # +0xE381 0x7E3A # +0xE382 0x7E67 # +0xE383 0x7E5D # +0xE384 0x7E56 # +0xE385 0x7E5E # +0xE386 0x7E59 # +0xE387 0x7E5A # +0xE388 0x7E79 # +0xE389 0x7E6A # +0xE38A 0x7E69 # +0xE38B 0x7E7C # +0xE38C 0x7E7B # +0xE38D 0x7E83 # +0xE38E 0x7DD5 # +0xE38F 0x7E7D # +0xE390 0x8FAE # +0xE391 0x7E7F # +0xE392 0x7E88 # +0xE393 0x7E89 # +0xE394 0x7E8C # +0xE395 0x7E92 # +0xE396 0x7E90 # +0xE397 0x7E93 # +0xE398 0x7E94 # +0xE399 0x7E96 # +0xE39A 0x7E8E # +0xE39B 0x7E9B # +0xE39C 0x7E9C # +0xE39D 0x7F38 # +0xE39E 0x7F3A # +0xE39F 0x7F45 # +0xE3A0 0x7F4C # +0xE3A1 0x7F4D # +0xE3A2 0x7F4E # +0xE3A3 0x7F50 # +0xE3A4 0x7F51 # +0xE3A5 0x7F55 # +0xE3A6 0x7F54 # +0xE3A7 0x7F58 # +0xE3A8 0x7F5F # +0xE3A9 0x7F60 # +0xE3AA 0x7F68 # +0xE3AB 0x7F69 # +0xE3AC 0x7F67 # +0xE3AD 0x7F78 # +0xE3AE 0x7F82 # +0xE3AF 0x7F86 # +0xE3B0 0x7F83 # +0xE3B1 0x7F88 # +0xE3B2 0x7F87 # +0xE3B3 0x7F8C # +0xE3B4 0x7F94 # +0xE3B5 0x7F9E # +0xE3B6 0x7F9D # +0xE3B7 0x7F9A # +0xE3B8 0x7FA3 # +0xE3B9 0x7FAF # +0xE3BA 0x7FB2 # +0xE3BB 0x7FB9 # +0xE3BC 0x7FAE # +0xE3BD 0x7FB6 # +0xE3BE 0x7FB8 # +0xE3BF 0x8B71 # +0xE3C0 0x7FC5 # +0xE3C1 0x7FC6 # +0xE3C2 0x7FCA # +0xE3C3 0x7FD5 # +0xE3C4 0x7FD4 # +0xE3C5 0x7FE1 # +0xE3C6 0x7FE6 # +0xE3C7 0x7FE9 # +0xE3C8 0x7FF3 # +0xE3C9 0x7FF9 # +0xE3CA 0x98DC # +0xE3CB 0x8006 # +0xE3CC 0x8004 # +0xE3CD 0x800B # +0xE3CE 0x8012 # +0xE3CF 0x8018 # +0xE3D0 0x8019 # +0xE3D1 0x801C # +0xE3D2 0x8021 # +0xE3D3 0x8028 # +0xE3D4 0x803F # +0xE3D5 0x803B # +0xE3D6 0x804A # +0xE3D7 0x8046 # +0xE3D8 0x8052 # +0xE3D9 0x8058 # +0xE3DA 0x805A # +0xE3DB 0x805F # +0xE3DC 0x8062 # +0xE3DD 0x8068 # +0xE3DE 0x8073 # +0xE3DF 0x8072 # +0xE3E0 0x8070 # +0xE3E1 0x8076 # +0xE3E2 0x8079 # +0xE3E3 0x807D # +0xE3E4 0x807F # +0xE3E5 0x8084 # +0xE3E6 0x8086 # +0xE3E7 0x8085 # +0xE3E8 0x809B # +0xE3E9 0x8093 # +0xE3EA 0x809A # +0xE3EB 0x80AD # +0xE3EC 0x5190 # +0xE3ED 0x80AC # +0xE3EE 0x80DB # +0xE3EF 0x80E5 # +0xE3F0 0x80D9 # +0xE3F1 0x80DD # +0xE3F2 0x80C4 # +0xE3F3 0x80DA # +0xE3F4 0x80D6 # +0xE3F5 0x8109 # +0xE3F6 0x80EF # +0xE3F7 0x80F1 # +0xE3F8 0x811B # +0xE3F9 0x8129 # +0xE3FA 0x8123 # +0xE3FB 0x812F # +0xE3FC 0x814B # +0xE440 0x968B # +0xE441 0x8146 # +0xE442 0x813E # +0xE443 0x8153 # +0xE444 0x8151 # +0xE445 0x80FC # +0xE446 0x8171 # +0xE447 0x816E # +0xE448 0x8165 # +0xE449 0x8166 # +0xE44A 0x8174 # +0xE44B 0x8183 # +0xE44C 0x8188 # +0xE44D 0x818A # +0xE44E 0x8180 # +0xE44F 0x8182 # +0xE450 0x81A0 # +0xE451 0x8195 # +0xE452 0x81A4 # +0xE453 0x81A3 # +0xE454 0x815F # +0xE455 0x8193 # +0xE456 0x81A9 # +0xE457 0x81B0 # +0xE458 0x81B5 # +0xE459 0x81BE # +0xE45A 0x81B8 # +0xE45B 0x81BD # +0xE45C 0x81C0 # +0xE45D 0x81C2 # +0xE45E 0x81BA # +0xE45F 0x81C9 # +0xE460 0x81CD # +0xE461 0x81D1 # +0xE462 0x81D9 # +0xE463 0x81D8 # +0xE464 0x81C8 # +0xE465 0x81DA # +0xE466 0x81DF # +0xE467 0x81E0 # +0xE468 0x81E7 # +0xE469 0x81FA # +0xE46A 0x81FB # +0xE46B 0x81FE # +0xE46C 0x8201 # +0xE46D 0x8202 # +0xE46E 0x8205 # +0xE46F 0x8207 # +0xE470 0x820A # +0xE471 0x820D # +0xE472 0x8210 # +0xE473 0x8216 # +0xE474 0x8229 # +0xE475 0x822B # +0xE476 0x8238 # +0xE477 0x8233 # +0xE478 0x8240 # +0xE479 0x8259 # +0xE47A 0x8258 # +0xE47B 0x825D # +0xE47C 0x825A # +0xE47D 0x825F # +0xE47E 0x8264 # +0xE480 0x8262 # +0xE481 0x8268 # +0xE482 0x826A # +0xE483 0x826B # +0xE484 0x822E # +0xE485 0x8271 # +0xE486 0x8277 # +0xE487 0x8278 # +0xE488 0x827E # +0xE489 0x828D # +0xE48A 0x8292 # +0xE48B 0x82AB # +0xE48C 0x829F # +0xE48D 0x82BB # +0xE48E 0x82AC # +0xE48F 0x82E1 # +0xE490 0x82E3 # +0xE491 0x82DF # +0xE492 0x82D2 # +0xE493 0x82F4 # +0xE494 0x82F3 # +0xE495 0x82FA # +0xE496 0x8393 # +0xE497 0x8303 # +0xE498 0x82FB # +0xE499 0x82F9 # +0xE49A 0x82DE # +0xE49B 0x8306 # +0xE49C 0x82DC # +0xE49D 0x8309 # +0xE49E 0x82D9 # +0xE49F 0x8335 # +0xE4A0 0x8334 # +0xE4A1 0x8316 # +0xE4A2 0x8332 # +0xE4A3 0x8331 # +0xE4A4 0x8340 # +0xE4A5 0x8339 # +0xE4A6 0x8350 # +0xE4A7 0x8345 # +0xE4A8 0x832F # +0xE4A9 0x832B # +0xE4AA 0x8317 # +0xE4AB 0x8318 # +0xE4AC 0x8385 # +0xE4AD 0x839A # +0xE4AE 0x83AA # +0xE4AF 0x839F # +0xE4B0 0x83A2 # +0xE4B1 0x8396 # +0xE4B2 0x8323 # +0xE4B3 0x838E # +0xE4B4 0x8387 # +0xE4B5 0x838A # +0xE4B6 0x837C # +0xE4B7 0x83B5 # +0xE4B8 0x8373 # +0xE4B9 0x8375 # +0xE4BA 0x83A0 # +0xE4BB 0x8389 # +0xE4BC 0x83A8 # +0xE4BD 0x83F4 # +0xE4BE 0x8413 # +0xE4BF 0x83EB # +0xE4C0 0x83CE # +0xE4C1 0x83FD # +0xE4C2 0x8403 # +0xE4C3 0x83D8 # +0xE4C4 0x840B # +0xE4C5 0x83C1 # +0xE4C6 0x83F7 # +0xE4C7 0x8407 # +0xE4C8 0x83E0 # +0xE4C9 0x83F2 # +0xE4CA 0x840D # +0xE4CB 0x8422 # +0xE4CC 0x8420 # +0xE4CD 0x83BD # +0xE4CE 0x8438 # +0xE4CF 0x8506 # +0xE4D0 0x83FB # +0xE4D1 0x846D # +0xE4D2 0x842A # +0xE4D3 0x843C # +0xE4D4 0x855A # +0xE4D5 0x8484 # +0xE4D6 0x8477 # +0xE4D7 0x846B # +0xE4D8 0x84AD # +0xE4D9 0x846E # +0xE4DA 0x8482 # +0xE4DB 0x8469 # +0xE4DC 0x8446 # +0xE4DD 0x842C # +0xE4DE 0x846F # +0xE4DF 0x8479 # +0xE4E0 0x8435 # +0xE4E1 0x84CA # +0xE4E2 0x8462 # +0xE4E3 0x84B9 # +0xE4E4 0x84BF # +0xE4E5 0x849F # +0xE4E6 0x84D9 # +0xE4E7 0x84CD # +0xE4E8 0x84BB # +0xE4E9 0x84DA # +0xE4EA 0x84D0 # +0xE4EB 0x84C1 # +0xE4EC 0x84C6 # +0xE4ED 0x84D6 # +0xE4EE 0x84A1 # +0xE4EF 0x8521 # +0xE4F0 0x84FF # +0xE4F1 0x84F4 # +0xE4F2 0x8517 # +0xE4F3 0x8518 # +0xE4F4 0x852C # +0xE4F5 0x851F # +0xE4F6 0x8515 # +0xE4F7 0x8514 # +0xE4F8 0x84FC # +0xE4F9 0x8540 # +0xE4FA 0x8563 # +0xE4FB 0x8558 # +0xE4FC 0x8548 # +0xE540 0x8541 # +0xE541 0x8602 # +0xE542 0x854B # +0xE543 0x8555 # +0xE544 0x8580 # +0xE545 0x85A4 # +0xE546 0x8588 # +0xE547 0x8591 # +0xE548 0x858A # +0xE549 0x85A8 # +0xE54A 0x856D # +0xE54B 0x8594 # +0xE54C 0x859B # +0xE54D 0x85EA # +0xE54E 0x8587 # +0xE54F 0x859C # +0xE550 0x8577 # +0xE551 0x857E # +0xE552 0x8590 # +0xE553 0x85C9 # +0xE554 0x85BA # +0xE555 0x85CF # +0xE556 0x85B9 # +0xE557 0x85D0 # +0xE558 0x85D5 # +0xE559 0x85DD # +0xE55A 0x85E5 # +0xE55B 0x85DC # +0xE55C 0x85F9 # +0xE55D 0x860A # +0xE55E 0x8613 # +0xE55F 0x860B # +0xE560 0x85FE # +0xE561 0x85FA # +0xE562 0x8606 # +0xE563 0x8622 # +0xE564 0x861A # +0xE565 0x8630 # +0xE566 0x863F # +0xE567 0x864D # +0xE568 0x4E55 # +0xE569 0x8654 # +0xE56A 0x865F # +0xE56B 0x8667 # +0xE56C 0x8671 # +0xE56D 0x8693 # +0xE56E 0x86A3 # +0xE56F 0x86A9 # +0xE570 0x86AA # +0xE571 0x868B # +0xE572 0x868C # +0xE573 0x86B6 # +0xE574 0x86AF # +0xE575 0x86C4 # +0xE576 0x86C6 # +0xE577 0x86B0 # +0xE578 0x86C9 # +0xE579 0x8823 # +0xE57A 0x86AB # +0xE57B 0x86D4 # +0xE57C 0x86DE # +0xE57D 0x86E9 # +0xE57E 0x86EC # +0xE580 0x86DF # +0xE581 0x86DB # +0xE582 0x86EF # +0xE583 0x8712 # +0xE584 0x8706 # +0xE585 0x8708 # +0xE586 0x8700 # +0xE587 0x8703 # +0xE588 0x86FB # +0xE589 0x8711 # +0xE58A 0x8709 # +0xE58B 0x870D # +0xE58C 0x86F9 # +0xE58D 0x870A # +0xE58E 0x8734 # +0xE58F 0x873F # +0xE590 0x8737 # +0xE591 0x873B # +0xE592 0x8725 # +0xE593 0x8729 # +0xE594 0x871A # +0xE595 0x8760 # +0xE596 0x875F # +0xE597 0x8778 # +0xE598 0x874C # +0xE599 0x874E # +0xE59A 0x8774 # +0xE59B 0x8757 # +0xE59C 0x8768 # +0xE59D 0x876E # +0xE59E 0x8759 # +0xE59F 0x8753 # +0xE5A0 0x8763 # +0xE5A1 0x876A # +0xE5A2 0x8805 # +0xE5A3 0x87A2 # +0xE5A4 0x879F # +0xE5A5 0x8782 # +0xE5A6 0x87AF # +0xE5A7 0x87CB # +0xE5A8 0x87BD # +0xE5A9 0x87C0 # +0xE5AA 0x87D0 # +0xE5AB 0x96D6 # +0xE5AC 0x87AB # +0xE5AD 0x87C4 # +0xE5AE 0x87B3 # +0xE5AF 0x87C7 # +0xE5B0 0x87C6 # +0xE5B1 0x87BB # +0xE5B2 0x87EF # +0xE5B3 0x87F2 # +0xE5B4 0x87E0 # +0xE5B5 0x880F # +0xE5B6 0x880D # +0xE5B7 0x87FE # +0xE5B8 0x87F6 # +0xE5B9 0x87F7 # +0xE5BA 0x880E # +0xE5BB 0x87D2 # +0xE5BC 0x8811 # +0xE5BD 0x8816 # +0xE5BE 0x8815 # +0xE5BF 0x8822 # +0xE5C0 0x8821 # +0xE5C1 0x8831 # +0xE5C2 0x8836 # +0xE5C3 0x8839 # +0xE5C4 0x8827 # +0xE5C5 0x883B # +0xE5C6 0x8844 # +0xE5C7 0x8842 # +0xE5C8 0x8852 # +0xE5C9 0x8859 # +0xE5CA 0x885E # +0xE5CB 0x8862 # +0xE5CC 0x886B # +0xE5CD 0x8881 # +0xE5CE 0x887E # +0xE5CF 0x889E # +0xE5D0 0x8875 # +0xE5D1 0x887D # +0xE5D2 0x88B5 # +0xE5D3 0x8872 # +0xE5D4 0x8882 # +0xE5D5 0x8897 # +0xE5D6 0x8892 # +0xE5D7 0x88AE # +0xE5D8 0x8899 # +0xE5D9 0x88A2 # +0xE5DA 0x888D # +0xE5DB 0x88A4 # +0xE5DC 0x88B0 # +0xE5DD 0x88BF # +0xE5DE 0x88B1 # +0xE5DF 0x88C3 # +0xE5E0 0x88C4 # +0xE5E1 0x88D4 # +0xE5E2 0x88D8 # +0xE5E3 0x88D9 # +0xE5E4 0x88DD # +0xE5E5 0x88F9 # +0xE5E6 0x8902 # +0xE5E7 0x88FC # +0xE5E8 0x88F4 # +0xE5E9 0x88E8 # +0xE5EA 0x88F2 # +0xE5EB 0x8904 # +0xE5EC 0x890C # +0xE5ED 0x890A # +0xE5EE 0x8913 # +0xE5EF 0x8943 # +0xE5F0 0x891E # +0xE5F1 0x8925 # +0xE5F2 0x892A # +0xE5F3 0x892B # +0xE5F4 0x8941 # +0xE5F5 0x8944 # +0xE5F6 0x893B # +0xE5F7 0x8936 # +0xE5F8 0x8938 # +0xE5F9 0x894C # +0xE5FA 0x891D # +0xE5FB 0x8960 # +0xE5FC 0x895E # +0xE640 0x8966 # +0xE641 0x8964 # +0xE642 0x896D # +0xE643 0x896A # +0xE644 0x896F # +0xE645 0x8974 # +0xE646 0x8977 # +0xE647 0x897E # +0xE648 0x8983 # +0xE649 0x8988 # +0xE64A 0x898A # +0xE64B 0x8993 # +0xE64C 0x8998 # +0xE64D 0x89A1 # +0xE64E 0x89A9 # +0xE64F 0x89A6 # +0xE650 0x89AC # +0xE651 0x89AF # +0xE652 0x89B2 # +0xE653 0x89BA # +0xE654 0x89BD # +0xE655 0x89BF # +0xE656 0x89C0 # +0xE657 0x89DA # +0xE658 0x89DC # +0xE659 0x89DD # +0xE65A 0x89E7 # +0xE65B 0x89F4 # +0xE65C 0x89F8 # +0xE65D 0x8A03 # +0xE65E 0x8A16 # +0xE65F 0x8A10 # +0xE660 0x8A0C # +0xE661 0x8A1B # +0xE662 0x8A1D # +0xE663 0x8A25 # +0xE664 0x8A36 # +0xE665 0x8A41 # +0xE666 0x8A5B # +0xE667 0x8A52 # +0xE668 0x8A46 # +0xE669 0x8A48 # +0xE66A 0x8A7C # +0xE66B 0x8A6D # +0xE66C 0x8A6C # +0xE66D 0x8A62 # +0xE66E 0x8A85 # +0xE66F 0x8A82 # +0xE670 0x8A84 # +0xE671 0x8AA8 # +0xE672 0x8AA1 # +0xE673 0x8A91 # +0xE674 0x8AA5 # +0xE675 0x8AA6 # +0xE676 0x8A9A # +0xE677 0x8AA3 # +0xE678 0x8AC4 # +0xE679 0x8ACD # +0xE67A 0x8AC2 # +0xE67B 0x8ADA # +0xE67C 0x8AEB # +0xE67D 0x8AF3 # +0xE67E 0x8AE7 # +0xE680 0x8AE4 # +0xE681 0x8AF1 # +0xE682 0x8B14 # +0xE683 0x8AE0 # +0xE684 0x8AE2 # +0xE685 0x8AF7 # +0xE686 0x8ADE # +0xE687 0x8ADB # +0xE688 0x8B0C # +0xE689 0x8B07 # +0xE68A 0x8B1A # +0xE68B 0x8AE1 # +0xE68C 0x8B16 # +0xE68D 0x8B10 # +0xE68E 0x8B17 # +0xE68F 0x8B20 # +0xE690 0x8B33 # +0xE691 0x97AB # +0xE692 0x8B26 # +0xE693 0x8B2B # +0xE694 0x8B3E # +0xE695 0x8B28 # +0xE696 0x8B41 # +0xE697 0x8B4C # +0xE698 0x8B4F # +0xE699 0x8B4E # +0xE69A 0x8B49 # +0xE69B 0x8B56 # +0xE69C 0x8B5B # +0xE69D 0x8B5A # +0xE69E 0x8B6B # +0xE69F 0x8B5F # +0xE6A0 0x8B6C # +0xE6A1 0x8B6F # +0xE6A2 0x8B74 # +0xE6A3 0x8B7D # +0xE6A4 0x8B80 # +0xE6A5 0x8B8C # +0xE6A6 0x8B8E # +0xE6A7 0x8B92 # +0xE6A8 0x8B93 # +0xE6A9 0x8B96 # +0xE6AA 0x8B99 # +0xE6AB 0x8B9A # +0xE6AC 0x8C3A # +0xE6AD 0x8C41 # +0xE6AE 0x8C3F # +0xE6AF 0x8C48 # +0xE6B0 0x8C4C # +0xE6B1 0x8C4E # +0xE6B2 0x8C50 # +0xE6B3 0x8C55 # +0xE6B4 0x8C62 # +0xE6B5 0x8C6C # +0xE6B6 0x8C78 # +0xE6B7 0x8C7A # +0xE6B8 0x8C82 # +0xE6B9 0x8C89 # +0xE6BA 0x8C85 # +0xE6BB 0x8C8A # +0xE6BC 0x8C8D # +0xE6BD 0x8C8E # +0xE6BE 0x8C94 # +0xE6BF 0x8C7C # +0xE6C0 0x8C98 # +0xE6C1 0x621D # +0xE6C2 0x8CAD # +0xE6C3 0x8CAA # +0xE6C4 0x8CBD # +0xE6C5 0x8CB2 # +0xE6C6 0x8CB3 # +0xE6C7 0x8CAE # +0xE6C8 0x8CB6 # +0xE6C9 0x8CC8 # +0xE6CA 0x8CC1 # +0xE6CB 0x8CE4 # +0xE6CC 0x8CE3 # +0xE6CD 0x8CDA # +0xE6CE 0x8CFD # +0xE6CF 0x8CFA # +0xE6D0 0x8CFB # +0xE6D1 0x8D04 # +0xE6D2 0x8D05 # +0xE6D3 0x8D0A # +0xE6D4 0x8D07 # +0xE6D5 0x8D0F # +0xE6D6 0x8D0D # +0xE6D7 0x8D10 # +0xE6D8 0x9F4E # +0xE6D9 0x8D13 # +0xE6DA 0x8CCD # +0xE6DB 0x8D14 # +0xE6DC 0x8D16 # +0xE6DD 0x8D67 # +0xE6DE 0x8D6D # +0xE6DF 0x8D71 # +0xE6E0 0x8D73 # +0xE6E1 0x8D81 # +0xE6E2 0x8D99 # +0xE6E3 0x8DC2 # +0xE6E4 0x8DBE # +0xE6E5 0x8DBA # +0xE6E6 0x8DCF # +0xE6E7 0x8DDA # +0xE6E8 0x8DD6 # +0xE6E9 0x8DCC # +0xE6EA 0x8DDB # +0xE6EB 0x8DCB # +0xE6EC 0x8DEA # +0xE6ED 0x8DEB # +0xE6EE 0x8DDF # +0xE6EF 0x8DE3 # +0xE6F0 0x8DFC # +0xE6F1 0x8E08 # +0xE6F2 0x8E09 # +0xE6F3 0x8DFF # +0xE6F4 0x8E1D # +0xE6F5 0x8E1E # +0xE6F6 0x8E10 # +0xE6F7 0x8E1F # +0xE6F8 0x8E42 # +0xE6F9 0x8E35 # +0xE6FA 0x8E30 # +0xE6FB 0x8E34 # +0xE6FC 0x8E4A # +0xE740 0x8E47 # +0xE741 0x8E49 # +0xE742 0x8E4C # +0xE743 0x8E50 # +0xE744 0x8E48 # +0xE745 0x8E59 # +0xE746 0x8E64 # +0xE747 0x8E60 # +0xE748 0x8E2A # +0xE749 0x8E63 # +0xE74A 0x8E55 # +0xE74B 0x8E76 # +0xE74C 0x8E72 # +0xE74D 0x8E7C # +0xE74E 0x8E81 # +0xE74F 0x8E87 # +0xE750 0x8E85 # +0xE751 0x8E84 # +0xE752 0x8E8B # +0xE753 0x8E8A # +0xE754 0x8E93 # +0xE755 0x8E91 # +0xE756 0x8E94 # +0xE757 0x8E99 # +0xE758 0x8EAA # +0xE759 0x8EA1 # +0xE75A 0x8EAC # +0xE75B 0x8EB0 # +0xE75C 0x8EC6 # +0xE75D 0x8EB1 # +0xE75E 0x8EBE # +0xE75F 0x8EC5 # +0xE760 0x8EC8 # +0xE761 0x8ECB # +0xE762 0x8EDB # +0xE763 0x8EE3 # +0xE764 0x8EFC # +0xE765 0x8EFB # +0xE766 0x8EEB # +0xE767 0x8EFE # +0xE768 0x8F0A # +0xE769 0x8F05 # +0xE76A 0x8F15 # +0xE76B 0x8F12 # +0xE76C 0x8F19 # +0xE76D 0x8F13 # +0xE76E 0x8F1C # +0xE76F 0x8F1F # +0xE770 0x8F1B # +0xE771 0x8F0C # +0xE772 0x8F26 # +0xE773 0x8F33 # +0xE774 0x8F3B # +0xE775 0x8F39 # +0xE776 0x8F45 # +0xE777 0x8F42 # +0xE778 0x8F3E # +0xE779 0x8F4C # +0xE77A 0x8F49 # +0xE77B 0x8F46 # +0xE77C 0x8F4E # +0xE77D 0x8F57 # +0xE77E 0x8F5C # +0xE780 0x8F62 # +0xE781 0x8F63 # +0xE782 0x8F64 # +0xE783 0x8F9C # +0xE784 0x8F9F # +0xE785 0x8FA3 # +0xE786 0x8FAD # +0xE787 0x8FAF # +0xE788 0x8FB7 # +0xE789 0x8FDA # +0xE78A 0x8FE5 # +0xE78B 0x8FE2 # +0xE78C 0x8FEA # +0xE78D 0x8FEF # +0xE78E 0x9087 # +0xE78F 0x8FF4 # +0xE790 0x9005 # +0xE791 0x8FF9 # +0xE792 0x8FFA # +0xE793 0x9011 # +0xE794 0x9015 # +0xE795 0x9021 # +0xE796 0x900D # +0xE797 0x901E # +0xE798 0x9016 # +0xE799 0x900B # +0xE79A 0x9027 # +0xE79B 0x9036 # +0xE79C 0x9035 # +0xE79D 0x9039 # +0xE79E 0x8FF8 # +0xE79F 0x904F # +0xE7A0 0x9050 # +0xE7A1 0x9051 # +0xE7A2 0x9052 # +0xE7A3 0x900E # +0xE7A4 0x9049 # +0xE7A5 0x903E # +0xE7A6 0x9056 # +0xE7A7 0x9058 # +0xE7A8 0x905E # +0xE7A9 0x9068 # +0xE7AA 0x906F # +0xE7AB 0x9076 # +0xE7AC 0x96A8 # +0xE7AD 0x9072 # +0xE7AE 0x9082 # +0xE7AF 0x907D # +0xE7B0 0x9081 # +0xE7B1 0x9080 # +0xE7B2 0x908A # +0xE7B3 0x9089 # +0xE7B4 0x908F # +0xE7B5 0x90A8 # +0xE7B6 0x90AF # +0xE7B7 0x90B1 # +0xE7B8 0x90B5 # +0xE7B9 0x90E2 # +0xE7BA 0x90E4 # +0xE7BB 0x6248 # +0xE7BC 0x90DB # +0xE7BD 0x9102 # +0xE7BE 0x9112 # +0xE7BF 0x9119 # +0xE7C0 0x9132 # +0xE7C1 0x9130 # +0xE7C2 0x914A # +0xE7C3 0x9156 # +0xE7C4 0x9158 # +0xE7C5 0x9163 # +0xE7C6 0x9165 # +0xE7C7 0x9169 # +0xE7C8 0x9173 # +0xE7C9 0x9172 # +0xE7CA 0x918B # +0xE7CB 0x9189 # +0xE7CC 0x9182 # +0xE7CD 0x91A2 # +0xE7CE 0x91AB # +0xE7CF 0x91AF # +0xE7D0 0x91AA # +0xE7D1 0x91B5 # +0xE7D2 0x91B4 # +0xE7D3 0x91BA # +0xE7D4 0x91C0 # +0xE7D5 0x91C1 # +0xE7D6 0x91C9 # +0xE7D7 0x91CB # +0xE7D8 0x91D0 # +0xE7D9 0x91D6 # +0xE7DA 0x91DF # +0xE7DB 0x91E1 # +0xE7DC 0x91DB # +0xE7DD 0x91FC # +0xE7DE 0x91F5 # +0xE7DF 0x91F6 # +0xE7E0 0x921E # +0xE7E1 0x91FF # +0xE7E2 0x9214 # +0xE7E3 0x922C # +0xE7E4 0x9215 # +0xE7E5 0x9211 # +0xE7E6 0x925E # +0xE7E7 0x9257 # +0xE7E8 0x9245 # +0xE7E9 0x9249 # +0xE7EA 0x9264 # +0xE7EB 0x9248 # +0xE7EC 0x9295 # +0xE7ED 0x923F # +0xE7EE 0x924B # +0xE7EF 0x9250 # +0xE7F0 0x929C # +0xE7F1 0x9296 # +0xE7F2 0x9293 # +0xE7F3 0x929B # +0xE7F4 0x925A # +0xE7F5 0x92CF # +0xE7F6 0x92B9 # +0xE7F7 0x92B7 # +0xE7F8 0x92E9 # +0xE7F9 0x930F # +0xE7FA 0x92FA # +0xE7FB 0x9344 # +0xE7FC 0x932E # +0xE840 0x9319 # +0xE841 0x9322 # +0xE842 0x931A # +0xE843 0x9323 # +0xE844 0x933A # +0xE845 0x9335 # +0xE846 0x933B # +0xE847 0x935C # +0xE848 0x9360 # +0xE849 0x937C # +0xE84A 0x936E # +0xE84B 0x9356 # +0xE84C 0x93B0 # +0xE84D 0x93AC # +0xE84E 0x93AD # +0xE84F 0x9394 # +0xE850 0x93B9 # +0xE851 0x93D6 # +0xE852 0x93D7 # +0xE853 0x93E8 # +0xE854 0x93E5 # +0xE855 0x93D8 # +0xE856 0x93C3 # +0xE857 0x93DD # +0xE858 0x93D0 # +0xE859 0x93C8 # +0xE85A 0x93E4 # +0xE85B 0x941A # +0xE85C 0x9414 # +0xE85D 0x9413 # +0xE85E 0x9403 # +0xE85F 0x9407 # +0xE860 0x9410 # +0xE861 0x9436 # +0xE862 0x942B # +0xE863 0x9435 # +0xE864 0x9421 # +0xE865 0x943A # +0xE866 0x9441 # +0xE867 0x9452 # +0xE868 0x9444 # +0xE869 0x945B # +0xE86A 0x9460 # +0xE86B 0x9462 # +0xE86C 0x945E # +0xE86D 0x946A # +0xE86E 0x9229 # +0xE86F 0x9470 # +0xE870 0x9475 # +0xE871 0x9477 # +0xE872 0x947D # +0xE873 0x945A # +0xE874 0x947C # +0xE875 0x947E # +0xE876 0x9481 # +0xE877 0x947F # +0xE878 0x9582 # +0xE879 0x9587 # +0xE87A 0x958A # +0xE87B 0x9594 # +0xE87C 0x9596 # +0xE87D 0x9598 # +0xE87E 0x9599 # +0xE880 0x95A0 # +0xE881 0x95A8 # +0xE882 0x95A7 # +0xE883 0x95AD # +0xE884 0x95BC # +0xE885 0x95BB # +0xE886 0x95B9 # +0xE887 0x95BE # +0xE888 0x95CA # +0xE889 0x6FF6 # +0xE88A 0x95C3 # +0xE88B 0x95CD # +0xE88C 0x95CC # +0xE88D 0x95D5 # +0xE88E 0x95D4 # +0xE88F 0x95D6 # +0xE890 0x95DC # +0xE891 0x95E1 # +0xE892 0x95E5 # +0xE893 0x95E2 # +0xE894 0x9621 # +0xE895 0x9628 # +0xE896 0x962E # +0xE897 0x962F # +0xE898 0x9642 # +0xE899 0x964C # +0xE89A 0x964F # +0xE89B 0x964B # +0xE89C 0x9677 # +0xE89D 0x965C # +0xE89E 0x965E # +0xE89F 0x965D # +0xE8A0 0x965F # +0xE8A1 0x9666 # +0xE8A2 0x9672 # +0xE8A3 0x966C # +0xE8A4 0x968D # +0xE8A5 0x9698 # +0xE8A6 0x9695 # +0xE8A7 0x9697 # +0xE8A8 0x96AA # +0xE8A9 0x96A7 # +0xE8AA 0x96B1 # +0xE8AB 0x96B2 # +0xE8AC 0x96B0 # +0xE8AD 0x96B4 # +0xE8AE 0x96B6 # +0xE8AF 0x96B8 # +0xE8B0 0x96B9 # +0xE8B1 0x96CE # +0xE8B2 0x96CB # +0xE8B3 0x96C9 # +0xE8B4 0x96CD # +0xE8B5 0x894D # +0xE8B6 0x96DC # +0xE8B7 0x970D # +0xE8B8 0x96D5 # +0xE8B9 0x96F9 # +0xE8BA 0x9704 # +0xE8BB 0x9706 # +0xE8BC 0x9708 # +0xE8BD 0x9713 # +0xE8BE 0x970E # +0xE8BF 0x9711 # +0xE8C0 0x970F # +0xE8C1 0x9716 # +0xE8C2 0x9719 # +0xE8C3 0x9724 # +0xE8C4 0x972A # +0xE8C5 0x9730 # +0xE8C6 0x9739 # +0xE8C7 0x973D # +0xE8C8 0x973E # +0xE8C9 0x9744 # +0xE8CA 0x9746 # +0xE8CB 0x9748 # +0xE8CC 0x9742 # +0xE8CD 0x9749 # +0xE8CE 0x975C # +0xE8CF 0x9760 # +0xE8D0 0x9764 # +0xE8D1 0x9766 # +0xE8D2 0x9768 # +0xE8D3 0x52D2 # +0xE8D4 0x976B # +0xE8D5 0x9771 # +0xE8D6 0x9779 # +0xE8D7 0x9785 # +0xE8D8 0x977C # +0xE8D9 0x9781 # +0xE8DA 0x977A # +0xE8DB 0x9786 # +0xE8DC 0x978B # +0xE8DD 0x978F # +0xE8DE 0x9790 # +0xE8DF 0x979C # +0xE8E0 0x97A8 # +0xE8E1 0x97A6 # +0xE8E2 0x97A3 # +0xE8E3 0x97B3 # +0xE8E4 0x97B4 # +0xE8E5 0x97C3 # +0xE8E6 0x97C6 # +0xE8E7 0x97C8 # +0xE8E8 0x97CB # +0xE8E9 0x97DC # +0xE8EA 0x97ED # +0xE8EB 0x9F4F # +0xE8EC 0x97F2 # +0xE8ED 0x7ADF # +0xE8EE 0x97F6 # +0xE8EF 0x97F5 # +0xE8F0 0x980F # +0xE8F1 0x980C # +0xE8F2 0x9838 # +0xE8F3 0x9824 # +0xE8F4 0x9821 # +0xE8F5 0x9837 # +0xE8F6 0x983D # +0xE8F7 0x9846 # +0xE8F8 0x984F # +0xE8F9 0x984B # +0xE8FA 0x986B # +0xE8FB 0x986F # +0xE8FC 0x9870 # +0xE940 0x9871 # +0xE941 0x9874 # +0xE942 0x9873 # +0xE943 0x98AA # +0xE944 0x98AF # +0xE945 0x98B1 # +0xE946 0x98B6 # +0xE947 0x98C4 # +0xE948 0x98C3 # +0xE949 0x98C6 # +0xE94A 0x98E9 # +0xE94B 0x98EB # +0xE94C 0x9903 # +0xE94D 0x9909 # +0xE94E 0x9912 # +0xE94F 0x9914 # +0xE950 0x9918 # +0xE951 0x9921 # +0xE952 0x991D # +0xE953 0x991E # +0xE954 0x9924 # +0xE955 0x9920 # +0xE956 0x992C # +0xE957 0x992E # +0xE958 0x993D # +0xE959 0x993E # +0xE95A 0x9942 # +0xE95B 0x9949 # +0xE95C 0x9945 # +0xE95D 0x9950 # +0xE95E 0x994B # +0xE95F 0x9951 # +0xE960 0x9952 # +0xE961 0x994C # +0xE962 0x9955 # +0xE963 0x9997 # +0xE964 0x9998 # +0xE965 0x99A5 # +0xE966 0x99AD # +0xE967 0x99AE # +0xE968 0x99BC # +0xE969 0x99DF # +0xE96A 0x99DB # +0xE96B 0x99DD # +0xE96C 0x99D8 # +0xE96D 0x99D1 # +0xE96E 0x99ED # +0xE96F 0x99EE # +0xE970 0x99F1 # +0xE971 0x99F2 # +0xE972 0x99FB # +0xE973 0x99F8 # +0xE974 0x9A01 # +0xE975 0x9A0F # +0xE976 0x9A05 # +0xE977 0x99E2 # +0xE978 0x9A19 # +0xE979 0x9A2B # +0xE97A 0x9A37 # +0xE97B 0x9A45 # +0xE97C 0x9A42 # +0xE97D 0x9A40 # +0xE97E 0x9A43 # +0xE980 0x9A3E # +0xE981 0x9A55 # +0xE982 0x9A4D # +0xE983 0x9A5B # +0xE984 0x9A57 # +0xE985 0x9A5F # +0xE986 0x9A62 # +0xE987 0x9A65 # +0xE988 0x9A64 # +0xE989 0x9A69 # +0xE98A 0x9A6B # +0xE98B 0x9A6A # +0xE98C 0x9AAD # +0xE98D 0x9AB0 # +0xE98E 0x9ABC # +0xE98F 0x9AC0 # +0xE990 0x9ACF # +0xE991 0x9AD1 # +0xE992 0x9AD3 # +0xE993 0x9AD4 # +0xE994 0x9ADE # +0xE995 0x9ADF # +0xE996 0x9AE2 # +0xE997 0x9AE3 # +0xE998 0x9AE6 # +0xE999 0x9AEF # +0xE99A 0x9AEB # +0xE99B 0x9AEE # +0xE99C 0x9AF4 # +0xE99D 0x9AF1 # +0xE99E 0x9AF7 # +0xE99F 0x9AFB # +0xE9A0 0x9B06 # +0xE9A1 0x9B18 # +0xE9A2 0x9B1A # +0xE9A3 0x9B1F # +0xE9A4 0x9B22 # +0xE9A5 0x9B23 # +0xE9A6 0x9B25 # +0xE9A7 0x9B27 # +0xE9A8 0x9B28 # +0xE9A9 0x9B29 # +0xE9AA 0x9B2A # +0xE9AB 0x9B2E # +0xE9AC 0x9B2F # +0xE9AD 0x9B32 # +0xE9AE 0x9B44 # +0xE9AF 0x9B43 # +0xE9B0 0x9B4F # +0xE9B1 0x9B4D # +0xE9B2 0x9B4E # +0xE9B3 0x9B51 # +0xE9B4 0x9B58 # +0xE9B5 0x9B74 # +0xE9B6 0x9B93 # +0xE9B7 0x9B83 # +0xE9B8 0x9B91 # +0xE9B9 0x9B96 # +0xE9BA 0x9B97 # +0xE9BB 0x9B9F # +0xE9BC 0x9BA0 # +0xE9BD 0x9BA8 # +0xE9BE 0x9BB4 # +0xE9BF 0x9BC0 # +0xE9C0 0x9BCA # +0xE9C1 0x9BB9 # +0xE9C2 0x9BC6 # +0xE9C3 0x9BCF # +0xE9C4 0x9BD1 # +0xE9C5 0x9BD2 # +0xE9C6 0x9BE3 # +0xE9C7 0x9BE2 # +0xE9C8 0x9BE4 # +0xE9C9 0x9BD4 # +0xE9CA 0x9BE1 # +0xE9CB 0x9C3A # +0xE9CC 0x9BF2 # +0xE9CD 0x9BF1 # +0xE9CE 0x9BF0 # +0xE9CF 0x9C15 # +0xE9D0 0x9C14 # +0xE9D1 0x9C09 # +0xE9D2 0x9C13 # +0xE9D3 0x9C0C # +0xE9D4 0x9C06 # +0xE9D5 0x9C08 # +0xE9D6 0x9C12 # +0xE9D7 0x9C0A # +0xE9D8 0x9C04 # +0xE9D9 0x9C2E # +0xE9DA 0x9C1B # +0xE9DB 0x9C25 # +0xE9DC 0x9C24 # +0xE9DD 0x9C21 # +0xE9DE 0x9C30 # +0xE9DF 0x9C47 # +0xE9E0 0x9C32 # +0xE9E1 0x9C46 # +0xE9E2 0x9C3E # +0xE9E3 0x9C5A # +0xE9E4 0x9C60 # +0xE9E5 0x9C67 # +0xE9E6 0x9C76 # +0xE9E7 0x9C78 # +0xE9E8 0x9CE7 # +0xE9E9 0x9CEC # +0xE9EA 0x9CF0 # +0xE9EB 0x9D09 # +0xE9EC 0x9D08 # +0xE9ED 0x9CEB # +0xE9EE 0x9D03 # +0xE9EF 0x9D06 # +0xE9F0 0x9D2A # +0xE9F1 0x9D26 # +0xE9F2 0x9DAF # +0xE9F3 0x9D23 # +0xE9F4 0x9D1F # +0xE9F5 0x9D44 # +0xE9F6 0x9D15 # +0xE9F7 0x9D12 # +0xE9F8 0x9D41 # +0xE9F9 0x9D3F # +0xE9FA 0x9D3E # +0xE9FB 0x9D46 # +0xE9FC 0x9D48 # +0xEA40 0x9D5D # +0xEA41 0x9D5E # +0xEA42 0x9D64 # +0xEA43 0x9D51 # +0xEA44 0x9D50 # +0xEA45 0x9D59 # +0xEA46 0x9D72 # +0xEA47 0x9D89 # +0xEA48 0x9D87 # +0xEA49 0x9DAB # +0xEA4A 0x9D6F # +0xEA4B 0x9D7A # +0xEA4C 0x9D9A # +0xEA4D 0x9DA4 # +0xEA4E 0x9DA9 # +0xEA4F 0x9DB2 # +0xEA50 0x9DC4 # +0xEA51 0x9DC1 # +0xEA52 0x9DBB # +0xEA53 0x9DB8 # +0xEA54 0x9DBA # +0xEA55 0x9DC6 # +0xEA56 0x9DCF # +0xEA57 0x9DC2 # +0xEA58 0x9DD9 # +0xEA59 0x9DD3 # +0xEA5A 0x9DF8 # +0xEA5B 0x9DE6 # +0xEA5C 0x9DED # +0xEA5D 0x9DEF # +0xEA5E 0x9DFD # +0xEA5F 0x9E1A # +0xEA60 0x9E1B # +0xEA61 0x9E1E # +0xEA62 0x9E75 # +0xEA63 0x9E79 # +0xEA64 0x9E7D # +0xEA65 0x9E81 # +0xEA66 0x9E88 # +0xEA67 0x9E8B # +0xEA68 0x9E8C # +0xEA69 0x9E92 # +0xEA6A 0x9E95 # +0xEA6B 0x9E91 # +0xEA6C 0x9E9D # +0xEA6D 0x9EA5 # +0xEA6E 0x9EA9 # +0xEA6F 0x9EB8 # +0xEA70 0x9EAA # +0xEA71 0x9EAD # +0xEA72 0x9761 # +0xEA73 0x9ECC # +0xEA74 0x9ECE # +0xEA75 0x9ECF # +0xEA76 0x9ED0 # +0xEA77 0x9ED4 # +0xEA78 0x9EDC # +0xEA79 0x9EDE # +0xEA7A 0x9EDD # +0xEA7B 0x9EE0 # +0xEA7C 0x9EE5 # +0xEA7D 0x9EE8 # +0xEA7E 0x9EEF # +0xEA80 0x9EF4 # +0xEA81 0x9EF6 # +0xEA82 0x9EF7 # +0xEA83 0x9EF9 # +0xEA84 0x9EFB # +0xEA85 0x9EFC # +0xEA86 0x9EFD # +0xEA87 0x9F07 # +0xEA88 0x9F08 # +0xEA89 0x76B7 # +0xEA8A 0x9F15 # +0xEA8B 0x9F21 # +0xEA8C 0x9F2C # +0xEA8D 0x9F3E # +0xEA8E 0x9F4A # +0xEA8F 0x9F52 # +0xEA90 0x9F54 # +0xEA91 0x9F63 # +0xEA92 0x9F5F # +0xEA93 0x9F60 # +0xEA94 0x9F61 # +0xEA95 0x9F66 # +0xEA96 0x9F67 # +0xEA97 0x9F6C # +0xEA98 0x9F6A # +0xEA99 0x9F77 # +0xEA9A 0x9F72 # +0xEA9B 0x9F76 # +0xEA9C 0x9F95 # +0xEA9D 0x9F9C # +0xEA9E 0x9FA0 # +0xEA9F 0x582F # +0xEAA0 0x69C7 # +0xEAA1 0x9059 # +0xEAA2 0x7464 # +0xEAA3 0x51DC # +0xEAA4 0x7199 # diff --git a/backend/tests/tools/gen_test_tab.php b/backend/tests/tools/gen_test_tab.php new file mode 100644 index 00000000..c19cd571 --- /dev/null +++ b/backend/tests/tools/gen_test_tab.php @@ -0,0 +1,57 @@ + +*/ +/* vim: set ts=4 sw=4 et : */ + +$basename = basename(__FILE__); +$dirname = dirname(__FILE__); + +$opts = getopt('d:f:o:s:'); +$data_dirname = isset($opts['d']) ? $opts['d'] : ($dirname . '/data'); // Where to load file from. +$file_name = isset($opts['f']) ? $opts['f'] : 'SHIFTJIS.TXT'; // Name of file. +$out_dirname = isset($opts['o']) ? $opts['o'] : ($dirname . '/..'); // Where to put output. +$suffix_name = isset($opts['s']) ? $opts['s'] : 'sjis_tab'; // Suffix of table and output file. + +$file = $data_dirname . '/' . $file_name; + +// Read the file. + +if (($get = file_get_contents($file)) === false) { + error_log($error = "$basename: ERROR: Could not read mapping file \"$file\""); + exit($error . PHP_EOL); +} + +$lines = explode("\n", $get); + +// Parse the file. + +$tab_lines = array(); +$sort = array(); +foreach ($lines as $line) { + $line = trim($line); + if ($line === '' || strncmp($line, '0x', 2) !== 0) { + continue; + } + $tab_lines[] = preg_replace_callback('/^0x([0-9A-F]{2,4})[ \t]+0x([0-9A-F]{4}).*$/', function ($matches) { + global $sort; + $mb = hexdec($matches[1]); + $unicode = hexdec($matches[2]); + $sort[] = $unicode; + return sprintf(" 0x%04X, 0x%04X,", $mb, $unicode); + }, $line); +} + +array_multisort($sort, $tab_lines); + +// Output. + +$out = array(); +$out[] = '/* Generated by ' . $basename . ' from ' . $file_name . ' */'; +$out[] = 'static const unsigned short test_' . $suffix_name . '[] = {'; +$out = array_merge($out, $tab_lines); +$out[] = '};'; + +file_put_contents($out_dirname . '/test_' . $suffix_name . '.h', implode("\n", $out) . "\n"); diff --git a/backend/zint.h b/backend/zint.h index fc4e41a3..c300353a 100644 --- a/backend/zint.h +++ b/backend/zint.h @@ -28,6 +28,7 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/* vim: set ts=4 sw=4 et : */ #ifndef ZINT_H #define ZINT_H @@ -288,6 +289,10 @@ extern "C" { #define OUT_JPG_FILE 180 #define OUT_TIF_FILE 200 +// Debug flags +#define ZINT_DEBUG_PRINT 1 +#define ZINT_DEBUG_TEST 2 + #if defined(__WIN32__) || defined(_WIN32) || defined(WIN32) || defined(_MSC_VER) #if defined (DLL_EXPORT) || defined(PIC) || defined(_USRDLL) #define ZINT_EXTERN __declspec(dllexport) diff --git a/backend_qt/backend_qt.pro b/backend_qt/backend_qt.pro index eaf37f8d..b8209b4e 100644 --- a/backend_qt/backend_qt.pro +++ b/backend_qt/backend_qt.pro @@ -109,6 +109,7 @@ SOURCES += ../backend/2of5.c \ ../backend/reedsol.c \ ../backend/render.c \ ../backend/rss.c \ + ../backend/sjis.c \ ../backend/svg.c \ ../backend/telepen.c \ ../backend/tif.c \ diff --git a/backend_tcl/zint_tcl.dsp b/backend_tcl/zint_tcl.dsp index 008ced8d..2451e539 100644 --- a/backend_tcl/zint_tcl.dsp +++ b/backend_tcl/zint_tcl.dsp @@ -244,6 +244,10 @@ SOURCE=..\backend\rss.c # End Source File # Begin Source File +SOURCE=..\backend\sjis.c +# End Source File +# Begin Source File + SOURCE=..\backend\svg.c # End Source File # Begin Source File diff --git a/win32/libzint.vcxproj b/win32/libzint.vcxproj index 512f13c2..028f6efd 100644 --- a/win32/libzint.vcxproj +++ b/win32/libzint.vcxproj @@ -319,6 +319,7 @@ + @@ -340,9 +341,11 @@ + + @@ -360,6 +363,7 @@ + @@ -387,4 +391,4 @@ - \ No newline at end of file + diff --git a/win32/zint_cmdline_vc6/zint_cmdline_vc6.dsp b/win32/zint_cmdline_vc6/zint_cmdline_vc6.dsp index 514bb768..3750b53b 100644 --- a/win32/zint_cmdline_vc6/zint_cmdline_vc6.dsp +++ b/win32/zint_cmdline_vc6/zint_cmdline_vc6.dsp @@ -252,6 +252,10 @@ SOURCE=..\..\backend\rss.c # End Source File # Begin Source File +SOURCE=..\..\backend\sjis.c +# End Source File +# Begin Source File + SOURCE=..\..\backend\svg.c # End Source File # Begin Source File