Index: generators/TableGenerator.h ================================================================== --- generators/TableGenerator.h +++ generators/TableGenerator.h @@ -22,23 +22,26 @@ { of_unichar_t _uppercaseTable[0x110000]; of_unichar_t _lowercaseTable[0x110000]; of_unichar_t _titlecaseTable[0x110000]; of_unichar_t _casefoldingTable[0x110000]; - OFMutableString *_decompositionTable[0x110000]; + OFString *_decompositionTable[0x110000]; + OFString *_decompositionCompatTable[0x110000]; char _uppercaseTableUsed[0x1100]; char _lowercaseTableUsed[0x1100]; char _titlecaseTableUsed[0x1100]; char _casefoldingTableUsed[0x1100]; char _decompositionTableUsed[0x1100]; + char _decompositionCompatTableUsed[0x1100]; size_t _uppercaseTableSize; size_t _lowercaseTableSize; size_t _titlecaseTableSize; size_t _casefoldingTableSize; size_t _decompositionTableSize; + size_t _decompositionCompatTableSize; } - (void)parseUnicodeData; - (void)parseCaseFolding; - (void)writeTablesToFile: (OFString *)path; - (void)writeHeaderToFile: (OFString *)path; @end Index: generators/TableGenerator.m ================================================================== --- generators/TableGenerator.m +++ generators/TableGenerator.m @@ -43,14 +43,16 @@ @implementation TableGenerator - init { self = [super init]; - _uppercaseTableSize = SIZE_MAX; - _lowercaseTableSize = SIZE_MAX; - _titlecaseTableSize = SIZE_MAX; - _casefoldingTableSize = SIZE_MAX; + _uppercaseTableSize = SIZE_MAX; + _lowercaseTableSize = SIZE_MAX; + _titlecaseTableSize = SIZE_MAX; + _casefoldingTableSize = SIZE_MAX; + _decompositionTableSize = SIZE_MAX; + _decompositionCompatTableSize = SIZE_MAX; return self; } - (void)applicationDidFinishLaunching @@ -116,22 +118,33 @@ _lowercaseTable[codePoint] = (of_unichar_t) [[components objectAtIndex: 13] hexadecimalValue]; _titlecaseTable[codePoint] = (of_unichar_t) [[components objectAtIndex: 14] hexadecimalValue]; - if ([[components objectAtIndex: 5] length] > 0 && - ![[components objectAtIndex: 5] hasPrefix: @"<"]) { + if ([[components objectAtIndex: 5] length] > 0) { OFArray *decomposed = [[components objectAtIndex: 5] componentsSeparatedByString: @" "]; + bool compat = false; + OFMutableString *string; - _decompositionTable[codePoint] = - [[OFMutableString alloc] init]; + if ([[decomposed firstObject] hasPrefix: @"<"]) { + decomposed = [decomposed objectsInRange: + of_range(1, [decomposed count] - 1)]; + compat = true; + } + + string = [OFMutableString string]; for (OFString *character in decomposed) - [_decompositionTable[codePoint] appendFormat: - @"%C", + [string appendFormat: @"%C", (of_unichar_t)[character hexadecimalValue]]; + + [string makeImmutable]; + + if (!compat) + _decompositionTable[codePoint] = [string copy]; + _decompositionCompatTable[codePoint] = [string copy]; } objc_autoreleasePoolPop(pool2); } @@ -415,10 +428,75 @@ [file writeString: @"};\n\n"]; objc_autoreleasePoolPop(pool2); } } + + /* Write decompCompatPage%u if it does NOT match decompositionPage%u */ + for (of_unichar_t i = 0; i < 0x110000; i += 0x100) { + bool isEmpty = true; + + for (of_unichar_t j = i; j < i + 0x100; j++) { + if (_decompositionCompatTable[j] != 0) { + /* + * We bulk-compare pointers via memcmp here. + * This is safe, as we always set the same + * pointer in both tables if both are the same. + */ + isEmpty = !memcmp(_decompositionTable + i, + _decompositionCompatTable + i, + 256 * sizeof(const char *)); + _decompositionCompatTableSize = i >> 8; + _decompositionCompatTableUsed[ + _decompositionCompatTableSize] = + (isEmpty ? 2 : 1); + + break; + } + } + + if (!isEmpty) { + void *pool2 = objc_autoreleasePoolPush(); + + [file writeString: [OFString stringWithFormat: + @"static const char *const " + @"decompCompatPage%u[0x100] = {\n", i >> 8]]; + + for (of_unichar_t j = i; j < i + 0x100; j++) { + if ((j - i) % 2 == 0) + [file writeString: @"\t"]; + else + [file writeString: @" "]; + + if (_decompositionCompatTable[j] != nil) { + const char *UTF8String = + [_decompositionCompatTable[j] + UTF8String]; + size_t length = + [_decompositionCompatTable[j] + UTF8StringLength]; + + [file writeString: @"\""]; + + for (size_t k = 0; k < length; k++) + [file writeFormat: + @"\\x%02X", + (uint8_t)UTF8String[k]]; + + [file writeString: @"\","]; + } else + [file writeString: @"NULL,"]; + + if ((j - i) % 2 == 1) + [file writeString: @"\n"]; + } + + [file writeString: @"};\n\n"]; + + objc_autoreleasePoolPop(pool2); + } + } /* * Those are currently set to the last index. * But from now on, we need the size. */ @@ -425,10 +503,11 @@ _uppercaseTableSize++; _lowercaseTableSize++; _titlecaseTableSize++; _casefoldingTableSize++; _decompositionTableSize++; + _decompositionCompatTableSize++; /* Write of_unicode_uppercase_table */ [file writeString: [OFString stringWithFormat: @"const of_unichar_t *const of_unicode_uppercase_table[0x%X] = " @"{\n\t", _uppercaseTableSize]]; @@ -539,10 +618,35 @@ [file writeString: @",\n\t"]; else [file writeString: @", "]; } } + + [file writeString: @"\n};\n\n"]; + + /* Write of_unicode_decomposition_compat_table */ + [file writeString: [OFString stringWithFormat: + @"const char *const *of_unicode_decomposition_compat_table[0x%X] = " + @"{\n\t", _decompositionCompatTableSize]]; + + for (of_unichar_t i = 0; i < _decompositionCompatTableSize; i++) { + if (_decompositionCompatTableUsed[i] == 1) + [file writeString: [OFString stringWithFormat: + @"decompCompatPage%u", i]]; + else if (_decompositionCompatTableUsed[i] == 2) + [file writeString: [OFString stringWithFormat: + @"decompositionPage%u", i]]; + else + [file writeString: @"emptyDecompositionPage"]; + + if (i + 1 < _decompositionCompatTableSize) { + if ((i + 1) % 3 == 0) + [file writeString: @",\n\t"]; + else + [file writeString: @", "]; + } + } [file writeString: @"\n};\n"]; objc_autoreleasePoolPop(pool); } @@ -559,13 +663,15 @@ [file writeString: [OFString stringWithFormat: @"#define OF_UNICODE_UPPERCASE_TABLE_SIZE 0x%X\n" @"#define OF_UNICODE_LOWERCASE_TABLE_SIZE 0x%X\n" @"#define OF_UNICODE_TITLECASE_TABLE_SIZE 0x%X\n" @"#define OF_UNICODE_CASEFOLDING_TABLE_SIZE 0x%X\n" - @"#define OF_UNICODE_DECOMPOSITION_TABLE_SIZE 0x%X\n\n", + @"#define OF_UNICODE_DECOMPOSITION_TABLE_SIZE 0x%X\n" + @"#define OF_UNICODE_DECOMPOSITION_COMPAT_TABLE_SIZE 0x%X\n\n", _uppercaseTableSize, _lowercaseTableSize, _titlecaseTableSize, - _casefoldingTableSize, _decompositionTableSize]]; + _casefoldingTableSize, _decompositionTableSize, + _decompositionCompatTableSize]]; [file writeString: @"#ifdef __cplusplus\n" @"extern \"C\" {\n" @"#endif\n" @@ -582,12 +688,15 @@ @" of_unicode_casefolding_table[" @"OF_UNICODE_CASEFOLDING_TABLE_SIZE];\n" @"extern const char *const _Nullable *const _Nonnull\n" @" of_unicode_decomposition_table[" @"OF_UNICODE_DECOMPOSITION_TABLE_SIZE];\n" + @"extern const char *const _Nullable *const _Nonnull\n" + @" of_unicode_decomposition_compat_table[" + @"OF_UNICODE_DECOMPOSITION_COMPAT_TABLE_SIZE];\n" @"#ifdef __cplusplus\n" @"}\n" @"#endif\n"]; objc_autoreleasePoolPop(pool); } @end Index: src/unicode.h ================================================================== --- src/unicode.h +++ src/unicode.h @@ -19,10 +19,11 @@ #define OF_UNICODE_UPPERCASE_TABLE_SIZE 0x1EA #define OF_UNICODE_LOWERCASE_TABLE_SIZE 0x1EA #define OF_UNICODE_TITLECASE_TABLE_SIZE 0x1EA #define OF_UNICODE_CASEFOLDING_TABLE_SIZE 0x1EA #define OF_UNICODE_DECOMPOSITION_TABLE_SIZE 0x2FB +#define OF_UNICODE_DECOMPOSITION_COMPAT_TABLE_SIZE 0x2FB #ifdef __cplusplus extern "C" { #endif extern const of_unichar_t *const _Nonnull @@ -33,8 +34,10 @@ of_unicode_titlecase_table[OF_UNICODE_TITLECASE_TABLE_SIZE]; extern const of_unichar_t *const _Nonnull of_unicode_casefolding_table[OF_UNICODE_CASEFOLDING_TABLE_SIZE]; extern const char *const _Nullable *const _Nonnull of_unicode_decomposition_table[OF_UNICODE_DECOMPOSITION_TABLE_SIZE]; +extern const char *const _Nullable *const _Nonnull + of_unicode_decomposition_compat_table[OF_UNICODE_DECOMPOSITION_COMPAT_TABLE_SIZE]; #ifdef __cplusplus } #endif Index: src/unicode.m ================================================================== --- src/unicode.m +++ src/unicode.m @@ -6292,10 +6292,5250 @@ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, }; + +static const char *const decompCompatPage0[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x20", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x20\xCC\x88", NULL, + "\x61", NULL, + NULL, NULL, + NULL, "\x20\xCC\x84", + NULL, NULL, + "\x32", "\x33", + "\x20\xCC\x81", "\xCE\xBC", + NULL, NULL, + "\x20\xCC\xA7", "\x31", + "\x6F", NULL, + "\x31\xE2\x81\x84\x34", "\x31\xE2\x81\x84\x32", + "\x33\xE2\x81\x84\x34", NULL, + "\x41\xCC\x80", "\x41\xCC\x81", + "\x41\xCC\x82", "\x41\xCC\x83", + "\x41\xCC\x88", "\x41\xCC\x8A", + NULL, "\x43\xCC\xA7", + "\x45\xCC\x80", "\x45\xCC\x81", + "\x45\xCC\x82", "\x45\xCC\x88", + "\x49\xCC\x80", "\x49\xCC\x81", + "\x49\xCC\x82", "\x49\xCC\x88", + NULL, "\x4E\xCC\x83", + "\x4F\xCC\x80", "\x4F\xCC\x81", + "\x4F\xCC\x82", "\x4F\xCC\x83", + "\x4F\xCC\x88", NULL, + NULL, "\x55\xCC\x80", + "\x55\xCC\x81", "\x55\xCC\x82", + "\x55\xCC\x88", "\x59\xCC\x81", + NULL, NULL, + "\x61\xCC\x80", "\x61\xCC\x81", + "\x61\xCC\x82", "\x61\xCC\x83", + "\x61\xCC\x88", "\x61\xCC\x8A", + NULL, "\x63\xCC\xA7", + "\x65\xCC\x80", "\x65\xCC\x81", + "\x65\xCC\x82", "\x65\xCC\x88", + "\x69\xCC\x80", "\x69\xCC\x81", + "\x69\xCC\x82", "\x69\xCC\x88", + NULL, "\x6E\xCC\x83", + "\x6F\xCC\x80", "\x6F\xCC\x81", + "\x6F\xCC\x82", "\x6F\xCC\x83", + "\x6F\xCC\x88", NULL, + NULL, "\x75\xCC\x80", + "\x75\xCC\x81", "\x75\xCC\x82", + "\x75\xCC\x88", "\x79\xCC\x81", + NULL, "\x79\xCC\x88", +}; + +static const char *const decompCompatPage1[0x100] = { + "\x41\xCC\x84", "\x61\xCC\x84", + "\x41\xCC\x86", "\x61\xCC\x86", + "\x41\xCC\xA8", "\x61\xCC\xA8", + "\x43\xCC\x81", "\x63\xCC\x81", + "\x43\xCC\x82", "\x63\xCC\x82", + "\x43\xCC\x87", "\x63\xCC\x87", + "\x43\xCC\x8C", "\x63\xCC\x8C", + "\x44\xCC\x8C", "\x64\xCC\x8C", + NULL, NULL, + "\x45\xCC\x84", "\x65\xCC\x84", + "\x45\xCC\x86", "\x65\xCC\x86", + "\x45\xCC\x87", "\x65\xCC\x87", + "\x45\xCC\xA8", "\x65\xCC\xA8", + "\x45\xCC\x8C", "\x65\xCC\x8C", + "\x47\xCC\x82", "\x67\xCC\x82", + "\x47\xCC\x86", "\x67\xCC\x86", + "\x47\xCC\x87", "\x67\xCC\x87", + "\x47\xCC\xA7", "\x67\xCC\xA7", + "\x48\xCC\x82", "\x68\xCC\x82", + NULL, NULL, + "\x49\xCC\x83", "\x69\xCC\x83", + "\x49\xCC\x84", "\x69\xCC\x84", + "\x49\xCC\x86", "\x69\xCC\x86", + "\x49\xCC\xA8", "\x69\xCC\xA8", + "\x49\xCC\x87", NULL, + "\x49\x4A", "\x69\x6A", + "\x4A\xCC\x82", "\x6A\xCC\x82", + "\x4B\xCC\xA7", "\x6B\xCC\xA7", + NULL, "\x4C\xCC\x81", + "\x6C\xCC\x81", "\x4C\xCC\xA7", + "\x6C\xCC\xA7", "\x4C\xCC\x8C", + "\x6C\xCC\x8C", "\x4C\xC2\xB7", + "\x6C\xC2\xB7", NULL, + NULL, "\x4E\xCC\x81", + "\x6E\xCC\x81", "\x4E\xCC\xA7", + "\x6E\xCC\xA7", "\x4E\xCC\x8C", + "\x6E\xCC\x8C", "\xCA\xBC\x6E", + NULL, NULL, + "\x4F\xCC\x84", "\x6F\xCC\x84", + "\x4F\xCC\x86", "\x6F\xCC\x86", + "\x4F\xCC\x8B", "\x6F\xCC\x8B", + NULL, NULL, + "\x52\xCC\x81", "\x72\xCC\x81", + "\x52\xCC\xA7", "\x72\xCC\xA7", + "\x52\xCC\x8C", "\x72\xCC\x8C", + "\x53\xCC\x81", "\x73\xCC\x81", + "\x53\xCC\x82", "\x73\xCC\x82", + "\x53\xCC\xA7", "\x73\xCC\xA7", + "\x53\xCC\x8C", "\x73\xCC\x8C", + "\x54\xCC\xA7", "\x74\xCC\xA7", + "\x54\xCC\x8C", "\x74\xCC\x8C", + NULL, NULL, + "\x55\xCC\x83", "\x75\xCC\x83", + "\x55\xCC\x84", "\x75\xCC\x84", + "\x55\xCC\x86", "\x75\xCC\x86", + "\x55\xCC\x8A", "\x75\xCC\x8A", + "\x55\xCC\x8B", "\x75\xCC\x8B", + "\x55\xCC\xA8", "\x75\xCC\xA8", + "\x57\xCC\x82", "\x77\xCC\x82", + "\x59\xCC\x82", "\x79\xCC\x82", + "\x59\xCC\x88", "\x5A\xCC\x81", + "\x7A\xCC\x81", "\x5A\xCC\x87", + "\x7A\xCC\x87", "\x5A\xCC\x8C", + "\x7A\xCC\x8C", "\x73", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x4F\xCC\x9B", "\x6F\xCC\x9B", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\x55\xCC\x9B", + "\x75\xCC\x9B", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x44\xC5\xBD", "\x44\xC5\xBE", + "\x64\xC5\xBE", "\x4C\x4A", + "\x4C\x6A", "\x6C\x6A", + "\x4E\x4A", "\x4E\x6A", + "\x6E\x6A", "\x41\xCC\x8C", + "\x61\xCC\x8C", "\x49\xCC\x8C", + "\x69\xCC\x8C", "\x4F\xCC\x8C", + "\x6F\xCC\x8C", "\x55\xCC\x8C", + "\x75\xCC\x8C", "\xC3\x9C\xCC\x84", + "\xC3\xBC\xCC\x84", "\xC3\x9C\xCC\x81", + "\xC3\xBC\xCC\x81", "\xC3\x9C\xCC\x8C", + "\xC3\xBC\xCC\x8C", "\xC3\x9C\xCC\x80", + "\xC3\xBC\xCC\x80", NULL, + "\xC3\x84\xCC\x84", "\xC3\xA4\xCC\x84", + "\xC8\xA6\xCC\x84", "\xC8\xA7\xCC\x84", + "\xC3\x86\xCC\x84", "\xC3\xA6\xCC\x84", + NULL, NULL, + "\x47\xCC\x8C", "\x67\xCC\x8C", + "\x4B\xCC\x8C", "\x6B\xCC\x8C", + "\x4F\xCC\xA8", "\x6F\xCC\xA8", + "\xC7\xAA\xCC\x84", "\xC7\xAB\xCC\x84", + "\xC6\xB7\xCC\x8C", "\xCA\x92\xCC\x8C", + "\x6A\xCC\x8C", "\x44\x5A", + "\x44\x7A", "\x64\x7A", + "\x47\xCC\x81", "\x67\xCC\x81", + NULL, NULL, + "\x4E\xCC\x80", "\x6E\xCC\x80", + "\xC3\x85\xCC\x81", "\xC3\xA5\xCC\x81", + "\xC3\x86\xCC\x81", "\xC3\xA6\xCC\x81", + "\xC3\x98\xCC\x81", "\xC3\xB8\xCC\x81", +}; + +static const char *const decompCompatPage2[0x100] = { + "\x41\xCC\x8F", "\x61\xCC\x8F", + "\x41\xCC\x91", "\x61\xCC\x91", + "\x45\xCC\x8F", "\x65\xCC\x8F", + "\x45\xCC\x91", "\x65\xCC\x91", + "\x49\xCC\x8F", "\x69\xCC\x8F", + "\x49\xCC\x91", "\x69\xCC\x91", + "\x4F\xCC\x8F", "\x6F\xCC\x8F", + "\x4F\xCC\x91", "\x6F\xCC\x91", + "\x52\xCC\x8F", "\x72\xCC\x8F", + "\x52\xCC\x91", "\x72\xCC\x91", + "\x55\xCC\x8F", "\x75\xCC\x8F", + "\x55\xCC\x91", "\x75\xCC\x91", + "\x53\xCC\xA6", "\x73\xCC\xA6", + "\x54\xCC\xA6", "\x74\xCC\xA6", + NULL, NULL, + "\x48\xCC\x8C", "\x68\xCC\x8C", + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x41\xCC\x87", "\x61\xCC\x87", + "\x45\xCC\xA7", "\x65\xCC\xA7", + "\xC3\x96\xCC\x84", "\xC3\xB6\xCC\x84", + "\xC3\x95\xCC\x84", "\xC3\xB5\xCC\x84", + "\x4F\xCC\x87", "\x6F\xCC\x87", + "\xC8\xAE\xCC\x84", "\xC8\xAF\xCC\x84", + "\x59\xCC\x84", "\x79\xCC\x84", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x68", "\xC9\xA6", + "\x6A", "\x72", + "\xC9\xB9", "\xC9\xBB", + "\xCA\x81", "\x77", + "\x79", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x20\xCC\x86", "\x20\xCC\x87", + "\x20\xCC\x8A", "\x20\xCC\xA8", + "\x20\xCC\x83", "\x20\xCC\x8B", + NULL, NULL, + "\xC9\xA3", "\x6C", + "\x73", "\x78", + "\xCA\x95", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage3[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xCC\x80", "\xCC\x81", + NULL, "\xCC\x93", + "\xCC\x88\xCC\x81", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xCA\xB9", NULL, + NULL, NULL, + NULL, NULL, + "\x20\xCD\x85", NULL, + NULL, NULL, + "\x3B", NULL, + NULL, NULL, + NULL, NULL, + "\x20\xCC\x81", "\xC2\xA8\xCC\x81", + "\xCE\x91\xCC\x81", "\xC2\xB7", + "\xCE\x95\xCC\x81", "\xCE\x97\xCC\x81", + "\xCE\x99\xCC\x81", NULL, + "\xCE\x9F\xCC\x81", NULL, + "\xCE\xA5\xCC\x81", "\xCE\xA9\xCC\x81", + "\xCF\x8A\xCC\x81", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xCE\x99\xCC\x88", "\xCE\xA5\xCC\x88", + "\xCE\xB1\xCC\x81", "\xCE\xB5\xCC\x81", + "\xCE\xB7\xCC\x81", "\xCE\xB9\xCC\x81", + "\xCF\x8B\xCC\x81", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xCE\xB9\xCC\x88", "\xCF\x85\xCC\x88", + "\xCE\xBF\xCC\x81", "\xCF\x85\xCC\x81", + "\xCF\x89\xCC\x81", NULL, + "\xCE\xB2", "\xCE\xB8", + "\xCE\xA5", "\xCF\x92\xCC\x81", + "\xCF\x92\xCC\x88", "\xCF\x86", + "\xCF\x80", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xCE\xBA", "\xCF\x81", + "\xCF\x82", NULL, + "\xCE\x98", "\xCE\xB5", + NULL, NULL, + NULL, "\xCE\xA3", + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage5[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xD5\xA5\xD6\x82", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage6[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xD8\xA7\xD9\x93", "\xD8\xA7\xD9\x94", + "\xD9\x88\xD9\x94", "\xD8\xA7\xD9\x95", + "\xD9\x8A\xD9\x94", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xD8\xA7\xD9\xB4", + "\xD9\x88\xD9\xB4", "\xDB\x87\xD9\xB4", + "\xD9\x8A\xD9\xB4", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xDB\x95\xD9\x94", NULL, + "\xDB\x81\xD9\x94", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xDB\x92\xD9\x94", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage14[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xB9\x8D\xE0\xB8\xB2", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xBB\x8D\xE0\xBA\xB2", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE0\xBA\xAB\xE0\xBA\x99", "\xE0\xBA\xAB\xE0\xBA\xA1", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage15[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE0\xBC\x8B", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xBD\x82\xE0\xBE\xB7", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xBD\x8C\xE0\xBE\xB7", + NULL, NULL, + NULL, NULL, + "\xE0\xBD\x91\xE0\xBE\xB7", NULL, + NULL, NULL, + NULL, "\xE0\xBD\x96\xE0\xBE\xB7", + NULL, NULL, + NULL, NULL, + "\xE0\xBD\x9B\xE0\xBE\xB7", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xBD\x80\xE0\xBE\xB5", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xBD\xB1\xE0\xBD\xB2", + NULL, "\xE0\xBD\xB1\xE0\xBD\xB4", + "\xE0\xBE\xB2\xE0\xBE\x80", "\xE0\xBE\xB2\xE0\xBE\x81", + "\xE0\xBE\xB3\xE0\xBE\x80", "\xE0\xBE\xB3\xE0\xBE\x81", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xBD\xB1\xE0\xBE\x80", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xBE\x92\xE0\xBE\xB7", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xBE\x9C\xE0\xBE\xB7", + NULL, NULL, + NULL, NULL, + "\xE0\xBE\xA1\xE0\xBE\xB7", NULL, + NULL, NULL, + NULL, "\xE0\xBE\xA6\xE0\xBE\xB7", + NULL, NULL, + NULL, NULL, + "\xE0\xBE\xAB\xE0\xBE\xB7", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE0\xBE\x90\xE0\xBE\xB5", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage16[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE1\x80\xA5\xE1\x80\xAE", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE1\x83\x9C", NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage29[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x41", "\xC3\x86", + "\x42", NULL, + "\x44", "\x45", + "\xC6\x8E", "\x47", + "\x48", "\x49", + "\x4A", "\x4B", + "\x4C", "\x4D", + "\x4E", NULL, + "\x4F", "\xC8\xA2", + "\x50", "\x52", + "\x54", "\x55", + "\x57", "\x61", + "\xC9\x90", "\xC9\x91", + "\xE1\xB4\x82", "\x62", + "\x64", "\x65", + "\xC9\x99", "\xC9\x9B", + "\xC9\x9C", "\x67", + NULL, "\x6B", + "\x6D", "\xC5\x8B", + "\x6F", "\xC9\x94", + "\xE1\xB4\x96", "\xE1\xB4\x97", + "\x70", "\x74", + "\x75", "\xE1\xB4\x9D", + "\xC9\xAF", "\x76", + "\xE1\xB4\xA5", "\xCE\xB2", + "\xCE\xB3", "\xCE\xB4", + "\xCF\x86", "\xCF\x87", + "\x69", "\x72", + "\x75", "\x76", + "\xCE\xB2", "\xCE\xB3", + "\xCF\x81", "\xCF\x86", + "\xCF\x87", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xD0\xBD", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xC9\x92", + "\x63", "\xC9\x95", + "\xC3\xB0", "\xC9\x9C", + "\x66", "\xC9\x9F", + "\xC9\xA1", "\xC9\xA5", + "\xC9\xA8", "\xC9\xA9", + "\xC9\xAA", "\xE1\xB5\xBB", + "\xCA\x9D", "\xC9\xAD", + "\xE1\xB6\x85", "\xCA\x9F", + "\xC9\xB1", "\xC9\xB0", + "\xC9\xB2", "\xC9\xB3", + "\xC9\xB4", "\xC9\xB5", + "\xC9\xB8", "\xCA\x82", + "\xCA\x83", "\xC6\xAB", + "\xCA\x89", "\xCA\x8A", + "\xE1\xB4\x9C", "\xCA\x8B", + "\xCA\x8C", "\x7A", + "\xCA\x90", "\xCA\x91", + "\xCA\x92", "\xCE\xB8", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage30[0x100] = { + "\x41\xCC\xA5", "\x61\xCC\xA5", + "\x42\xCC\x87", "\x62\xCC\x87", + "\x42\xCC\xA3", "\x62\xCC\xA3", + "\x42\xCC\xB1", "\x62\xCC\xB1", + "\xC3\x87\xCC\x81", "\xC3\xA7\xCC\x81", + "\x44\xCC\x87", "\x64\xCC\x87", + "\x44\xCC\xA3", "\x64\xCC\xA3", + "\x44\xCC\xB1", "\x64\xCC\xB1", + "\x44\xCC\xA7", "\x64\xCC\xA7", + "\x44\xCC\xAD", "\x64\xCC\xAD", + "\xC4\x92\xCC\x80", "\xC4\x93\xCC\x80", + "\xC4\x92\xCC\x81", "\xC4\x93\xCC\x81", + "\x45\xCC\xAD", "\x65\xCC\xAD", + "\x45\xCC\xB0", "\x65\xCC\xB0", + "\xC8\xA8\xCC\x86", "\xC8\xA9\xCC\x86", + "\x46\xCC\x87", "\x66\xCC\x87", + "\x47\xCC\x84", "\x67\xCC\x84", + "\x48\xCC\x87", "\x68\xCC\x87", + "\x48\xCC\xA3", "\x68\xCC\xA3", + "\x48\xCC\x88", "\x68\xCC\x88", + "\x48\xCC\xA7", "\x68\xCC\xA7", + "\x48\xCC\xAE", "\x68\xCC\xAE", + "\x49\xCC\xB0", "\x69\xCC\xB0", + "\xC3\x8F\xCC\x81", "\xC3\xAF\xCC\x81", + "\x4B\xCC\x81", "\x6B\xCC\x81", + "\x4B\xCC\xA3", "\x6B\xCC\xA3", + "\x4B\xCC\xB1", "\x6B\xCC\xB1", + "\x4C\xCC\xA3", "\x6C\xCC\xA3", + "\xE1\xB8\xB6\xCC\x84", "\xE1\xB8\xB7\xCC\x84", + "\x4C\xCC\xB1", "\x6C\xCC\xB1", + "\x4C\xCC\xAD", "\x6C\xCC\xAD", + "\x4D\xCC\x81", "\x6D\xCC\x81", + "\x4D\xCC\x87", "\x6D\xCC\x87", + "\x4D\xCC\xA3", "\x6D\xCC\xA3", + "\x4E\xCC\x87", "\x6E\xCC\x87", + "\x4E\xCC\xA3", "\x6E\xCC\xA3", + "\x4E\xCC\xB1", "\x6E\xCC\xB1", + "\x4E\xCC\xAD", "\x6E\xCC\xAD", + "\xC3\x95\xCC\x81", "\xC3\xB5\xCC\x81", + "\xC3\x95\xCC\x88", "\xC3\xB5\xCC\x88", + "\xC5\x8C\xCC\x80", "\xC5\x8D\xCC\x80", + "\xC5\x8C\xCC\x81", "\xC5\x8D\xCC\x81", + "\x50\xCC\x81", "\x70\xCC\x81", + "\x50\xCC\x87", "\x70\xCC\x87", + "\x52\xCC\x87", "\x72\xCC\x87", + "\x52\xCC\xA3", "\x72\xCC\xA3", + "\xE1\xB9\x9A\xCC\x84", "\xE1\xB9\x9B\xCC\x84", + "\x52\xCC\xB1", "\x72\xCC\xB1", + "\x53\xCC\x87", "\x73\xCC\x87", + "\x53\xCC\xA3", "\x73\xCC\xA3", + "\xC5\x9A\xCC\x87", "\xC5\x9B\xCC\x87", + "\xC5\xA0\xCC\x87", "\xC5\xA1\xCC\x87", + "\xE1\xB9\xA2\xCC\x87", "\xE1\xB9\xA3\xCC\x87", + "\x54\xCC\x87", "\x74\xCC\x87", + "\x54\xCC\xA3", "\x74\xCC\xA3", + "\x54\xCC\xB1", "\x74\xCC\xB1", + "\x54\xCC\xAD", "\x74\xCC\xAD", + "\x55\xCC\xA4", "\x75\xCC\xA4", + "\x55\xCC\xB0", "\x75\xCC\xB0", + "\x55\xCC\xAD", "\x75\xCC\xAD", + "\xC5\xA8\xCC\x81", "\xC5\xA9\xCC\x81", + "\xC5\xAA\xCC\x88", "\xC5\xAB\xCC\x88", + "\x56\xCC\x83", "\x76\xCC\x83", + "\x56\xCC\xA3", "\x76\xCC\xA3", + "\x57\xCC\x80", "\x77\xCC\x80", + "\x57\xCC\x81", "\x77\xCC\x81", + "\x57\xCC\x88", "\x77\xCC\x88", + "\x57\xCC\x87", "\x77\xCC\x87", + "\x57\xCC\xA3", "\x77\xCC\xA3", + "\x58\xCC\x87", "\x78\xCC\x87", + "\x58\xCC\x88", "\x78\xCC\x88", + "\x59\xCC\x87", "\x79\xCC\x87", + "\x5A\xCC\x82", "\x7A\xCC\x82", + "\x5A\xCC\xA3", "\x7A\xCC\xA3", + "\x5A\xCC\xB1", "\x7A\xCC\xB1", + "\x68\xCC\xB1", "\x74\xCC\x88", + "\x77\xCC\x8A", "\x79\xCC\x8A", + "\x61\xCA\xBE", "\xC5\xBF\xCC\x87", + NULL, NULL, + NULL, NULL, + "\x41\xCC\xA3", "\x61\xCC\xA3", + "\x41\xCC\x89", "\x61\xCC\x89", + "\xC3\x82\xCC\x81", "\xC3\xA2\xCC\x81", + "\xC3\x82\xCC\x80", "\xC3\xA2\xCC\x80", + "\xC3\x82\xCC\x89", "\xC3\xA2\xCC\x89", + "\xC3\x82\xCC\x83", "\xC3\xA2\xCC\x83", + "\xE1\xBA\xA0\xCC\x82", "\xE1\xBA\xA1\xCC\x82", + "\xC4\x82\xCC\x81", "\xC4\x83\xCC\x81", + "\xC4\x82\xCC\x80", "\xC4\x83\xCC\x80", + "\xC4\x82\xCC\x89", "\xC4\x83\xCC\x89", + "\xC4\x82\xCC\x83", "\xC4\x83\xCC\x83", + "\xE1\xBA\xA0\xCC\x86", "\xE1\xBA\xA1\xCC\x86", + "\x45\xCC\xA3", "\x65\xCC\xA3", + "\x45\xCC\x89", "\x65\xCC\x89", + "\x45\xCC\x83", "\x65\xCC\x83", + "\xC3\x8A\xCC\x81", "\xC3\xAA\xCC\x81", + "\xC3\x8A\xCC\x80", "\xC3\xAA\xCC\x80", + "\xC3\x8A\xCC\x89", "\xC3\xAA\xCC\x89", + "\xC3\x8A\xCC\x83", "\xC3\xAA\xCC\x83", + "\xE1\xBA\xB8\xCC\x82", "\xE1\xBA\xB9\xCC\x82", + "\x49\xCC\x89", "\x69\xCC\x89", + "\x49\xCC\xA3", "\x69\xCC\xA3", + "\x4F\xCC\xA3", "\x6F\xCC\xA3", + "\x4F\xCC\x89", "\x6F\xCC\x89", + "\xC3\x94\xCC\x81", "\xC3\xB4\xCC\x81", + "\xC3\x94\xCC\x80", "\xC3\xB4\xCC\x80", + "\xC3\x94\xCC\x89", "\xC3\xB4\xCC\x89", + "\xC3\x94\xCC\x83", "\xC3\xB4\xCC\x83", + "\xE1\xBB\x8C\xCC\x82", "\xE1\xBB\x8D\xCC\x82", + "\xC6\xA0\xCC\x81", "\xC6\xA1\xCC\x81", + "\xC6\xA0\xCC\x80", "\xC6\xA1\xCC\x80", + "\xC6\xA0\xCC\x89", "\xC6\xA1\xCC\x89", + "\xC6\xA0\xCC\x83", "\xC6\xA1\xCC\x83", + "\xC6\xA0\xCC\xA3", "\xC6\xA1\xCC\xA3", + "\x55\xCC\xA3", "\x75\xCC\xA3", + "\x55\xCC\x89", "\x75\xCC\x89", + "\xC6\xAF\xCC\x81", "\xC6\xB0\xCC\x81", + "\xC6\xAF\xCC\x80", "\xC6\xB0\xCC\x80", + "\xC6\xAF\xCC\x89", "\xC6\xB0\xCC\x89", + "\xC6\xAF\xCC\x83", "\xC6\xB0\xCC\x83", + "\xC6\xAF\xCC\xA3", "\xC6\xB0\xCC\xA3", + "\x59\xCC\x80", "\x79\xCC\x80", + "\x59\xCC\xA3", "\x79\xCC\xA3", + "\x59\xCC\x89", "\x79\xCC\x89", + "\x59\xCC\x83", "\x79\xCC\x83", + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage31[0x100] = { + "\xCE\xB1\xCC\x93", "\xCE\xB1\xCC\x94", + "\xE1\xBC\x80\xCC\x80", "\xE1\xBC\x81\xCC\x80", + "\xE1\xBC\x80\xCC\x81", "\xE1\xBC\x81\xCC\x81", + "\xE1\xBC\x80\xCD\x82", "\xE1\xBC\x81\xCD\x82", + "\xCE\x91\xCC\x93", "\xCE\x91\xCC\x94", + "\xE1\xBC\x88\xCC\x80", "\xE1\xBC\x89\xCC\x80", + "\xE1\xBC\x88\xCC\x81", "\xE1\xBC\x89\xCC\x81", + "\xE1\xBC\x88\xCD\x82", "\xE1\xBC\x89\xCD\x82", + "\xCE\xB5\xCC\x93", "\xCE\xB5\xCC\x94", + "\xE1\xBC\x90\xCC\x80", "\xE1\xBC\x91\xCC\x80", + "\xE1\xBC\x90\xCC\x81", "\xE1\xBC\x91\xCC\x81", + NULL, NULL, + "\xCE\x95\xCC\x93", "\xCE\x95\xCC\x94", + "\xE1\xBC\x98\xCC\x80", "\xE1\xBC\x99\xCC\x80", + "\xE1\xBC\x98\xCC\x81", "\xE1\xBC\x99\xCC\x81", + NULL, NULL, + "\xCE\xB7\xCC\x93", "\xCE\xB7\xCC\x94", + "\xE1\xBC\xA0\xCC\x80", "\xE1\xBC\xA1\xCC\x80", + "\xE1\xBC\xA0\xCC\x81", "\xE1\xBC\xA1\xCC\x81", + "\xE1\xBC\xA0\xCD\x82", "\xE1\xBC\xA1\xCD\x82", + "\xCE\x97\xCC\x93", "\xCE\x97\xCC\x94", + "\xE1\xBC\xA8\xCC\x80", "\xE1\xBC\xA9\xCC\x80", + "\xE1\xBC\xA8\xCC\x81", "\xE1\xBC\xA9\xCC\x81", + "\xE1\xBC\xA8\xCD\x82", "\xE1\xBC\xA9\xCD\x82", + "\xCE\xB9\xCC\x93", "\xCE\xB9\xCC\x94", + "\xE1\xBC\xB0\xCC\x80", "\xE1\xBC\xB1\xCC\x80", + "\xE1\xBC\xB0\xCC\x81", "\xE1\xBC\xB1\xCC\x81", + "\xE1\xBC\xB0\xCD\x82", "\xE1\xBC\xB1\xCD\x82", + "\xCE\x99\xCC\x93", "\xCE\x99\xCC\x94", + "\xE1\xBC\xB8\xCC\x80", "\xE1\xBC\xB9\xCC\x80", + "\xE1\xBC\xB8\xCC\x81", "\xE1\xBC\xB9\xCC\x81", + "\xE1\xBC\xB8\xCD\x82", "\xE1\xBC\xB9\xCD\x82", + "\xCE\xBF\xCC\x93", "\xCE\xBF\xCC\x94", + "\xE1\xBD\x80\xCC\x80", "\xE1\xBD\x81\xCC\x80", + "\xE1\xBD\x80\xCC\x81", "\xE1\xBD\x81\xCC\x81", + NULL, NULL, + "\xCE\x9F\xCC\x93", "\xCE\x9F\xCC\x94", + "\xE1\xBD\x88\xCC\x80", "\xE1\xBD\x89\xCC\x80", + "\xE1\xBD\x88\xCC\x81", "\xE1\xBD\x89\xCC\x81", + NULL, NULL, + "\xCF\x85\xCC\x93", "\xCF\x85\xCC\x94", + "\xE1\xBD\x90\xCC\x80", "\xE1\xBD\x91\xCC\x80", + "\xE1\xBD\x90\xCC\x81", "\xE1\xBD\x91\xCC\x81", + "\xE1\xBD\x90\xCD\x82", "\xE1\xBD\x91\xCD\x82", + NULL, "\xCE\xA5\xCC\x94", + NULL, "\xE1\xBD\x99\xCC\x80", + NULL, "\xE1\xBD\x99\xCC\x81", + NULL, "\xE1\xBD\x99\xCD\x82", + "\xCF\x89\xCC\x93", "\xCF\x89\xCC\x94", + "\xE1\xBD\xA0\xCC\x80", "\xE1\xBD\xA1\xCC\x80", + "\xE1\xBD\xA0\xCC\x81", "\xE1\xBD\xA1\xCC\x81", + "\xE1\xBD\xA0\xCD\x82", "\xE1\xBD\xA1\xCD\x82", + "\xCE\xA9\xCC\x93", "\xCE\xA9\xCC\x94", + "\xE1\xBD\xA8\xCC\x80", "\xE1\xBD\xA9\xCC\x80", + "\xE1\xBD\xA8\xCC\x81", "\xE1\xBD\xA9\xCC\x81", + "\xE1\xBD\xA8\xCD\x82", "\xE1\xBD\xA9\xCD\x82", + "\xCE\xB1\xCC\x80", "\xCE\xAC", + "\xCE\xB5\xCC\x80", "\xCE\xAD", + "\xCE\xB7\xCC\x80", "\xCE\xAE", + "\xCE\xB9\xCC\x80", "\xCE\xAF", + "\xCE\xBF\xCC\x80", "\xCF\x8C", + "\xCF\x85\xCC\x80", "\xCF\x8D", + "\xCF\x89\xCC\x80", "\xCF\x8E", + NULL, NULL, + "\xE1\xBC\x80\xCD\x85", "\xE1\xBC\x81\xCD\x85", + "\xE1\xBC\x82\xCD\x85", "\xE1\xBC\x83\xCD\x85", + "\xE1\xBC\x84\xCD\x85", "\xE1\xBC\x85\xCD\x85", + "\xE1\xBC\x86\xCD\x85", "\xE1\xBC\x87\xCD\x85", + "\xE1\xBC\x88\xCD\x85", "\xE1\xBC\x89\xCD\x85", + "\xE1\xBC\x8A\xCD\x85", "\xE1\xBC\x8B\xCD\x85", + "\xE1\xBC\x8C\xCD\x85", "\xE1\xBC\x8D\xCD\x85", + "\xE1\xBC\x8E\xCD\x85", "\xE1\xBC\x8F\xCD\x85", + "\xE1\xBC\xA0\xCD\x85", "\xE1\xBC\xA1\xCD\x85", + "\xE1\xBC\xA2\xCD\x85", "\xE1\xBC\xA3\xCD\x85", + "\xE1\xBC\xA4\xCD\x85", "\xE1\xBC\xA5\xCD\x85", + "\xE1\xBC\xA6\xCD\x85", "\xE1\xBC\xA7\xCD\x85", + "\xE1\xBC\xA8\xCD\x85", "\xE1\xBC\xA9\xCD\x85", + "\xE1\xBC\xAA\xCD\x85", "\xE1\xBC\xAB\xCD\x85", + "\xE1\xBC\xAC\xCD\x85", "\xE1\xBC\xAD\xCD\x85", + "\xE1\xBC\xAE\xCD\x85", "\xE1\xBC\xAF\xCD\x85", + "\xE1\xBD\xA0\xCD\x85", "\xE1\xBD\xA1\xCD\x85", + "\xE1\xBD\xA2\xCD\x85", "\xE1\xBD\xA3\xCD\x85", + "\xE1\xBD\xA4\xCD\x85", "\xE1\xBD\xA5\xCD\x85", + "\xE1\xBD\xA6\xCD\x85", "\xE1\xBD\xA7\xCD\x85", + "\xE1\xBD\xA8\xCD\x85", "\xE1\xBD\xA9\xCD\x85", + "\xE1\xBD\xAA\xCD\x85", "\xE1\xBD\xAB\xCD\x85", + "\xE1\xBD\xAC\xCD\x85", "\xE1\xBD\xAD\xCD\x85", + "\xE1\xBD\xAE\xCD\x85", "\xE1\xBD\xAF\xCD\x85", + "\xCE\xB1\xCC\x86", "\xCE\xB1\xCC\x84", + "\xE1\xBD\xB0\xCD\x85", "\xCE\xB1\xCD\x85", + "\xCE\xAC\xCD\x85", NULL, + "\xCE\xB1\xCD\x82", "\xE1\xBE\xB6\xCD\x85", + "\xCE\x91\xCC\x86", "\xCE\x91\xCC\x84", + "\xCE\x91\xCC\x80", "\xCE\x86", + "\xCE\x91\xCD\x85", "\x20\xCC\x93", + "\xCE\xB9", "\x20\xCC\x93", + "\x20\xCD\x82", "\xC2\xA8\xCD\x82", + "\xE1\xBD\xB4\xCD\x85", "\xCE\xB7\xCD\x85", + "\xCE\xAE\xCD\x85", NULL, + "\xCE\xB7\xCD\x82", "\xE1\xBF\x86\xCD\x85", + "\xCE\x95\xCC\x80", "\xCE\x88", + "\xCE\x97\xCC\x80", "\xCE\x89", + "\xCE\x97\xCD\x85", "\xE1\xBE\xBF\xCC\x80", + "\xE1\xBE\xBF\xCC\x81", "\xE1\xBE\xBF\xCD\x82", + "\xCE\xB9\xCC\x86", "\xCE\xB9\xCC\x84", + "\xCF\x8A\xCC\x80", "\xCE\x90", + NULL, NULL, + "\xCE\xB9\xCD\x82", "\xCF\x8A\xCD\x82", + "\xCE\x99\xCC\x86", "\xCE\x99\xCC\x84", + "\xCE\x99\xCC\x80", "\xCE\x8A", + NULL, "\xE1\xBF\xBE\xCC\x80", + "\xE1\xBF\xBE\xCC\x81", "\xE1\xBF\xBE\xCD\x82", + "\xCF\x85\xCC\x86", "\xCF\x85\xCC\x84", + "\xCF\x8B\xCC\x80", "\xCE\xB0", + "\xCF\x81\xCC\x93", "\xCF\x81\xCC\x94", + "\xCF\x85\xCD\x82", "\xCF\x8B\xCD\x82", + "\xCE\xA5\xCC\x86", "\xCE\xA5\xCC\x84", + "\xCE\xA5\xCC\x80", "\xCE\x8E", + "\xCE\xA1\xCC\x94", "\xC2\xA8\xCC\x80", + "\xCE\x85", "\x60", + NULL, NULL, + "\xE1\xBD\xBC\xCD\x85", "\xCF\x89\xCD\x85", + "\xCF\x8E\xCD\x85", NULL, + "\xCF\x89\xCD\x82", "\xE1\xBF\xB6\xCD\x85", + "\xCE\x9F\xCC\x80", "\xCE\x8C", + "\xCE\xA9\xCC\x80", "\xCE\x8F", + "\xCE\xA9\xCD\x85", "\xC2\xB4", + "\x20\xCC\x94", NULL, +}; + +static const char *const decompCompatPage32[0x100] = { + "\xE2\x80\x82", "\xE2\x80\x83", + "\x20", "\x20", + "\x20", "\x20", + "\x20", "\x20", + "\x20", "\x20", + "\x20", NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE2\x80\x90", + NULL, NULL, + NULL, NULL, + NULL, "\x20\xCC\xB3", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x2E", "\x2E\x2E", + "\x2E\x2E\x2E", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\x20", + NULL, NULL, + NULL, "\xE2\x80\xB2\xE2\x80\xB2", + "\xE2\x80\xB2\xE2\x80\xB2\xE2\x80\xB2", NULL, + "\xE2\x80\xB5\xE2\x80\xB5", "\xE2\x80\xB5\xE2\x80\xB5\xE2\x80\xB5", + NULL, NULL, + NULL, NULL, + "\x21\x21", NULL, + "\x20\xCC\x85", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\x3F\x3F", + "\x3F\x21", "\x21\x3F", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE2\x80\xB2\xE2\x80\xB2\xE2\x80\xB2\xE2\x80\xB2", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\x20", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x30", "\x69", + NULL, NULL, + "\x34", "\x35", + "\x36", "\x37", + "\x38", "\x39", + "\x2B", "\xE2\x88\x92", + "\x3D", "\x28", + "\x29", "\x6E", + "\x30", "\x31", + "\x32", "\x33", + "\x34", "\x35", + "\x36", "\x37", + "\x38", "\x39", + "\x2B", "\xE2\x88\x92", + "\x3D", "\x28", + "\x29", NULL, + "\x61", "\x65", + "\x6F", "\x78", + "\xC9\x99", "\x68", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x70", "\x73", + "\x74", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x52\x73", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage33[0x100] = { + "\x61\x2F\x63", "\x61\x2F\x73", + "\x43", "\xC2\xB0\x43", + NULL, "\x63\x2F\x6F", + "\x63\x2F\x75", "\xC6\x90", + NULL, "\xC2\xB0\x46", + "\x67", "\x48", + "\x48", "\x48", + "\x68", "\xC4\xA7", + "\x49", "\x49", + "\x4C", "\x6C", + NULL, "\x4E", + "\x4E\x6F", NULL, + NULL, "\x50", + "\x51", "\x52", + "\x52", "\x52", + NULL, NULL, + "\x53\x4D", "\x54\x45\x4C", + "\x54\x4D", NULL, + "\x5A", NULL, + "\xCE\xA9", NULL, + "\x5A", NULL, + "\x4B", "\xC3\x85", + "\x42", "\x43", + NULL, "\x65", + "\x45", "\x46", + NULL, "\x4D", + "\x6F", "\xD7\x90", + "\xD7\x91", "\xD7\x92", + "\xD7\x93", "\x69", + NULL, "\x46\x41\x58", + "\xCF\x80", "\xCE\xB3", + "\xCE\x93", "\xCE\xA0", + "\xE2\x88\x91", NULL, + NULL, NULL, + NULL, "\x44", + "\x64", "\x65", + "\x69", "\x6A", + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x31\xE2\x81\x84\x37", "\x31\xE2\x81\x84\x39", + "\x31\xE2\x81\x84\x31\x30", "\x31\xE2\x81\x84\x33", + "\x32\xE2\x81\x84\x33", "\x31\xE2\x81\x84\x35", + "\x32\xE2\x81\x84\x35", "\x33\xE2\x81\x84\x35", + "\x34\xE2\x81\x84\x35", "\x31\xE2\x81\x84\x36", + "\x35\xE2\x81\x84\x36", "\x31\xE2\x81\x84\x38", + "\x33\xE2\x81\x84\x38", "\x35\xE2\x81\x84\x38", + "\x37\xE2\x81\x84\x38", "\x31\xE2\x81\x84", + "\x49", "\x49\x49", + "\x49\x49\x49", "\x49\x56", + "\x56", "\x56\x49", + "\x56\x49\x49", "\x56\x49\x49\x49", + "\x49\x58", "\x58", + "\x58\x49", "\x58\x49\x49", + "\x4C", "\x43", + "\x44", "\x4D", + "\x69", "\x69\x69", + "\x69\x69\x69", "\x69\x76", + "\x76", "\x76\x69", + "\x76\x69\x69", "\x76\x69\x69\x69", + "\x69\x78", "\x78", + "\x78\x69", "\x78\x69\x69", + "\x6C", "\x63", + "\x64", "\x6D", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\x30\xE2\x81\x84\x33", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x86\x90\xCC\xB8", "\xE2\x86\x92\xCC\xB8", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x86\x94\xCC\xB8", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE2\x87\x90\xCC\xB8", + "\xE2\x87\x94\xCC\xB8", "\xE2\x87\x92\xCC\xB8", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage34[0x100] = { + NULL, NULL, + NULL, NULL, + "\xE2\x88\x83\xCC\xB8", NULL, + NULL, NULL, + NULL, "\xE2\x88\x88\xCC\xB8", + NULL, NULL, + "\xE2\x88\x8B\xCC\xB8", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x88\xA3\xCC\xB8", NULL, + "\xE2\x88\xA5\xCC\xB8", NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x88\xAB\xE2\x88\xAB", "\xE2\x88\xAB\xE2\x88\xAB\xE2\x88\xAB", + NULL, "\xE2\x88\xAE\xE2\x88\xAE", + "\xE2\x88\xAE\xE2\x88\xAE\xE2\x88\xAE", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE2\x88\xBC\xCC\xB8", + NULL, NULL, + "\xE2\x89\x83\xCC\xB8", NULL, + NULL, "\xE2\x89\x85\xCC\xB8", + NULL, "\xE2\x89\x88\xCC\xB8", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x3D\xCC\xB8", NULL, + "\xE2\x89\xA1\xCC\xB8", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE2\x89\x8D\xCC\xB8", + "\x3C\xCC\xB8", "\x3E\xCC\xB8", + "\xE2\x89\xA4\xCC\xB8", "\xE2\x89\xA5\xCC\xB8", + NULL, NULL, + "\xE2\x89\xB2\xCC\xB8", "\xE2\x89\xB3\xCC\xB8", + NULL, NULL, + "\xE2\x89\xB6\xCC\xB8", "\xE2\x89\xB7\xCC\xB8", + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x89\xBA\xCC\xB8", "\xE2\x89\xBB\xCC\xB8", + NULL, NULL, + "\xE2\x8A\x82\xCC\xB8", "\xE2\x8A\x83\xCC\xB8", + NULL, NULL, + "\xE2\x8A\x86\xCC\xB8", "\xE2\x8A\x87\xCC\xB8", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x8A\xA2\xCC\xB8", "\xE2\x8A\xA8\xCC\xB8", + "\xE2\x8A\xA9\xCC\xB8", "\xE2\x8A\xAB\xCC\xB8", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x89\xBC\xCC\xB8", "\xE2\x89\xBD\xCC\xB8", + "\xE2\x8A\x91\xCC\xB8", "\xE2\x8A\x92\xCC\xB8", + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x8A\xB2\xCC\xB8", "\xE2\x8A\xB3\xCC\xB8", + "\xE2\x8A\xB4\xCC\xB8", "\xE2\x8A\xB5\xCC\xB8", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage36[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x31", "\x32", + "\x33", "\x34", + "\x35", "\x36", + "\x37", "\x38", + "\x39", "\x31\x30", + "\x31\x31", "\x31\x32", + "\x31\x33", "\x31\x34", + "\x31\x35", "\x31\x36", + "\x31\x37", "\x31\x38", + "\x31\x39", "\x32\x30", + "\x28\x31\x29", "\x28\x32\x29", + "\x28\x33\x29", "\x28\x34\x29", + "\x28\x35\x29", "\x28\x36\x29", + "\x28\x37\x29", "\x28\x38\x29", + "\x28\x39\x29", "\x28\x31\x30\x29", + "\x28\x31\x31\x29", "\x28\x31\x32\x29", + "\x28\x31\x33\x29", "\x28\x31\x34\x29", + "\x28\x31\x35\x29", "\x28\x31\x36\x29", + "\x28\x31\x37\x29", "\x28\x31\x38\x29", + "\x28\x31\x39\x29", "\x28\x32\x30\x29", + "\x31\x2E", "\x32\x2E", + "\x33\x2E", "\x34\x2E", + "\x35\x2E", "\x36\x2E", + "\x37\x2E", "\x38\x2E", + "\x39\x2E", "\x31\x30\x2E", + "\x31\x31\x2E", "\x31\x32\x2E", + "\x31\x33\x2E", "\x31\x34\x2E", + "\x31\x35\x2E", "\x31\x36\x2E", + "\x31\x37\x2E", "\x31\x38\x2E", + "\x31\x39\x2E", "\x32\x30\x2E", + "\x28\x61\x29", "\x28\x62\x29", + "\x28\x63\x29", "\x28\x64\x29", + "\x28\x65\x29", "\x28\x66\x29", + "\x28\x67\x29", "\x28\x68\x29", + "\x28\x69\x29", "\x28\x6A\x29", + "\x28\x6B\x29", "\x28\x6C\x29", + "\x28\x6D\x29", "\x28\x6E\x29", + "\x28\x6F\x29", "\x28\x70\x29", + "\x28\x71\x29", "\x28\x72\x29", + "\x28\x73\x29", "\x28\x74\x29", + "\x28\x75\x29", "\x28\x76\x29", + "\x28\x77\x29", "\x28\x78\x29", + "\x28\x79\x29", "\x28\x7A\x29", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x30", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage42[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x88\xAB\xE2\x88\xAB\xE2\x88\xAB\xE2\x88\xAB", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x3A\x3A\x3D", "\x3D\x3D", + "\x3D\x3D\x3D", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\xAB\x9D\xCC\xB8", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage44[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x6A", "\x56", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage45[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE2\xB5\xA1", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage46[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE6\xAF\x8D", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE9\xBE\x9F", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage47[0x100] = { + "\xE4\xB8\x80", "\xE4\xB8\xA8", + "\xE4\xB8\xB6", "\xE4\xB8\xBF", + "\xE4\xB9\x99", "\xE4\xBA\x85", + "\xE4\xBA\x8C", "\xE4\xBA\xA0", + "\xE4\xBA\xBA", "\xE5\x84\xBF", + "\xE5\x85\xA5", "\xE5\x85\xAB", + "\xE5\x86\x82", "\xE5\x86\x96", + "\xE5\x86\xAB", "\xE5\x87\xA0", + "\xE5\x87\xB5", "\xE5\x88\x80", + "\xE5\x8A\x9B", "\xE5\x8B\xB9", + "\xE5\x8C\x95", "\xE5\x8C\x9A", + "\xE5\x8C\xB8", "\xE5\x8D\x81", + "\xE5\x8D\x9C", "\xE5\x8D\xA9", + "\xE5\x8E\x82", "\xE5\x8E\xB6", + "\xE5\x8F\x88", "\xE5\x8F\xA3", + "\xE5\x9B\x97", "\xE5\x9C\x9F", + "\xE5\xA3\xAB", "\xE5\xA4\x82", + "\xE5\xA4\x8A", "\xE5\xA4\x95", + "\xE5\xA4\xA7", "\xE5\xA5\xB3", + "\xE5\xAD\x90", "\xE5\xAE\x80", + "\xE5\xAF\xB8", "\xE5\xB0\x8F", + "\xE5\xB0\xA2", "\xE5\xB0\xB8", + "\xE5\xB1\xAE", "\xE5\xB1\xB1", + "\xE5\xB7\x9B", "\xE5\xB7\xA5", + "\xE5\xB7\xB1", "\xE5\xB7\xBE", + "\xE5\xB9\xB2", "\xE5\xB9\xBA", + "\xE5\xB9\xBF", "\xE5\xBB\xB4", + "\xE5\xBB\xBE", "\xE5\xBC\x8B", + "\xE5\xBC\x93", "\xE5\xBD\x90", + "\xE5\xBD\xA1", "\xE5\xBD\xB3", + "\xE5\xBF\x83", "\xE6\x88\x88", + "\xE6\x88\xB6", "\xE6\x89\x8B", + "\xE6\x94\xAF", "\xE6\x94\xB4", + "\xE6\x96\x87", "\xE6\x96\x97", + "\xE6\x96\xA4", "\xE6\x96\xB9", + "\xE6\x97\xA0", "\xE6\x97\xA5", + "\xE6\x9B\xB0", "\xE6\x9C\x88", + "\xE6\x9C\xA8", "\xE6\xAC\xA0", + "\xE6\xAD\xA2", "\xE6\xAD\xB9", + "\xE6\xAE\xB3", "\xE6\xAF\x8B", + "\xE6\xAF\x94", "\xE6\xAF\x9B", + "\xE6\xB0\x8F", "\xE6\xB0\x94", + "\xE6\xB0\xB4", "\xE7\x81\xAB", + "\xE7\x88\xAA", "\xE7\x88\xB6", + "\xE7\x88\xBB", "\xE7\x88\xBF", + "\xE7\x89\x87", "\xE7\x89\x99", + "\xE7\x89\x9B", "\xE7\x8A\xAC", + "\xE7\x8E\x84", "\xE7\x8E\x89", + "\xE7\x93\x9C", "\xE7\x93\xA6", + "\xE7\x94\x98", "\xE7\x94\x9F", + "\xE7\x94\xA8", "\xE7\x94\xB0", + "\xE7\x96\x8B", "\xE7\x96\x92", + "\xE7\x99\xB6", "\xE7\x99\xBD", + "\xE7\x9A\xAE", "\xE7\x9A\xBF", + "\xE7\x9B\xAE", "\xE7\x9F\x9B", + "\xE7\x9F\xA2", "\xE7\x9F\xB3", + "\xE7\xA4\xBA", "\xE7\xA6\xB8", + "\xE7\xA6\xBE", "\xE7\xA9\xB4", + "\xE7\xAB\x8B", "\xE7\xAB\xB9", + "\xE7\xB1\xB3", "\xE7\xB3\xB8", + "\xE7\xBC\xB6", "\xE7\xBD\x91", + "\xE7\xBE\x8A", "\xE7\xBE\xBD", + "\xE8\x80\x81", "\xE8\x80\x8C", + "\xE8\x80\x92", "\xE8\x80\xB3", + "\xE8\x81\xBF", "\xE8\x82\x89", + "\xE8\x87\xA3", "\xE8\x87\xAA", + "\xE8\x87\xB3", "\xE8\x87\xBC", + "\xE8\x88\x8C", "\xE8\x88\x9B", + "\xE8\x88\x9F", "\xE8\x89\xAE", + "\xE8\x89\xB2", "\xE8\x89\xB8", + "\xE8\x99\x8D", "\xE8\x99\xAB", + "\xE8\xA1\x80", "\xE8\xA1\x8C", + "\xE8\xA1\xA3", "\xE8\xA5\xBE", + "\xE8\xA6\x8B", "\xE8\xA7\x92", + "\xE8\xA8\x80", "\xE8\xB0\xB7", + "\xE8\xB1\x86", "\xE8\xB1\x95", + "\xE8\xB1\xB8", "\xE8\xB2\x9D", + "\xE8\xB5\xA4", "\xE8\xB5\xB0", + "\xE8\xB6\xB3", "\xE8\xBA\xAB", + "\xE8\xBB\x8A", "\xE8\xBE\x9B", + "\xE8\xBE\xB0", "\xE8\xBE\xB5", + "\xE9\x82\x91", "\xE9\x85\x89", + "\xE9\x87\x86", "\xE9\x87\x8C", + "\xE9\x87\x91", "\xE9\x95\xB7", + "\xE9\x96\x80", "\xE9\x98\x9C", + "\xE9\x9A\xB6", "\xE9\x9A\xB9", + "\xE9\x9B\xA8", "\xE9\x9D\x91", + "\xE9\x9D\x9E", "\xE9\x9D\xA2", + "\xE9\x9D\xA9", "\xE9\x9F\x8B", + "\xE9\x9F\xAD", "\xE9\x9F\xB3", + "\xE9\xA0\x81", "\xE9\xA2\xA8", + "\xE9\xA3\x9B", "\xE9\xA3\x9F", + "\xE9\xA6\x96", "\xE9\xA6\x99", + "\xE9\xA6\xAC", "\xE9\xAA\xA8", + "\xE9\xAB\x98", "\xE9\xAB\x9F", + "\xE9\xAC\xA5", "\xE9\xAC\xAF", + "\xE9\xAC\xB2", "\xE9\xAC\xBC", + "\xE9\xAD\x9A", "\xE9\xB3\xA5", + "\xE9\xB9\xB5", "\xE9\xB9\xBF", + "\xE9\xBA\xA5", "\xE9\xBA\xBB", + "\xE9\xBB\x83", "\xE9\xBB\x8D", + "\xE9\xBB\x91", "\xE9\xBB\xB9", + "\xE9\xBB\xBD", "\xE9\xBC\x8E", + "\xE9\xBC\x93", "\xE9\xBC\xA0", + "\xE9\xBC\xBB", "\xE9\xBD\x8A", + "\xE9\xBD\x92", "\xE9\xBE\x8D", + "\xE9\xBE\x9C", "\xE9\xBE\xA0", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage48[0x100] = { + "\x20", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE3\x80\x92", NULL, + "\xE5\x8D\x81", "\xE5\x8D\x84", + "\xE5\x8D\x85", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE3\x81\x8B\xE3\x82\x99", NULL, + "\xE3\x81\x8D\xE3\x82\x99", NULL, + "\xE3\x81\x8F\xE3\x82\x99", NULL, + "\xE3\x81\x91\xE3\x82\x99", NULL, + "\xE3\x81\x93\xE3\x82\x99", NULL, + "\xE3\x81\x95\xE3\x82\x99", NULL, + "\xE3\x81\x97\xE3\x82\x99", NULL, + "\xE3\x81\x99\xE3\x82\x99", NULL, + "\xE3\x81\x9B\xE3\x82\x99", NULL, + "\xE3\x81\x9D\xE3\x82\x99", NULL, + "\xE3\x81\x9F\xE3\x82\x99", NULL, + "\xE3\x81\xA1\xE3\x82\x99", NULL, + NULL, "\xE3\x81\xA4\xE3\x82\x99", + NULL, "\xE3\x81\xA6\xE3\x82\x99", + NULL, "\xE3\x81\xA8\xE3\x82\x99", + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE3\x81\xAF\xE3\x82\x99", "\xE3\x81\xAF\xE3\x82\x9A", + NULL, "\xE3\x81\xB2\xE3\x82\x99", + "\xE3\x81\xB2\xE3\x82\x9A", NULL, + "\xE3\x81\xB5\xE3\x82\x99", "\xE3\x81\xB5\xE3\x82\x9A", + NULL, "\xE3\x81\xB8\xE3\x82\x99", + "\xE3\x81\xB8\xE3\x82\x9A", NULL, + "\xE3\x81\xBB\xE3\x82\x99", "\xE3\x81\xBB\xE3\x82\x9A", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE3\x81\x86\xE3\x82\x99", NULL, + NULL, NULL, + NULL, NULL, + NULL, "\x20\xE3\x82\x99", + "\x20\xE3\x82\x9A", NULL, + "\xE3\x82\x9D\xE3\x82\x99", "\xE3\x82\x88\xE3\x82\x8A", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE3\x82\xAB\xE3\x82\x99", NULL, + "\xE3\x82\xAD\xE3\x82\x99", NULL, + "\xE3\x82\xAF\xE3\x82\x99", NULL, + "\xE3\x82\xB1\xE3\x82\x99", NULL, + "\xE3\x82\xB3\xE3\x82\x99", NULL, + "\xE3\x82\xB5\xE3\x82\x99", NULL, + "\xE3\x82\xB7\xE3\x82\x99", NULL, + "\xE3\x82\xB9\xE3\x82\x99", NULL, + "\xE3\x82\xBB\xE3\x82\x99", NULL, + "\xE3\x82\xBD\xE3\x82\x99", NULL, + "\xE3\x82\xBF\xE3\x82\x99", NULL, + "\xE3\x83\x81\xE3\x82\x99", NULL, + NULL, "\xE3\x83\x84\xE3\x82\x99", + NULL, "\xE3\x83\x86\xE3\x82\x99", + NULL, "\xE3\x83\x88\xE3\x82\x99", + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE3\x83\x8F\xE3\x82\x99", "\xE3\x83\x8F\xE3\x82\x9A", + NULL, "\xE3\x83\x92\xE3\x82\x99", + "\xE3\x83\x92\xE3\x82\x9A", NULL, + "\xE3\x83\x95\xE3\x82\x99", "\xE3\x83\x95\xE3\x82\x9A", + NULL, "\xE3\x83\x98\xE3\x82\x99", + "\xE3\x83\x98\xE3\x82\x9A", NULL, + "\xE3\x83\x9B\xE3\x82\x99", "\xE3\x83\x9B\xE3\x82\x9A", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE3\x82\xA6\xE3\x82\x99", NULL, + NULL, "\xE3\x83\xAF\xE3\x82\x99", + "\xE3\x83\xB0\xE3\x82\x99", "\xE3\x83\xB1\xE3\x82\x99", + "\xE3\x83\xB2\xE3\x82\x99", NULL, + NULL, NULL, + "\xE3\x83\xBD\xE3\x82\x99", "\xE3\x82\xB3\xE3\x83\x88", +}; + +static const char *const decompCompatPage49[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xE1\x84\x80", + "\xE1\x84\x81", "\xE1\x86\xAA", + "\xE1\x84\x82", "\xE1\x86\xAC", + "\xE1\x86\xAD", "\xE1\x84\x83", + "\xE1\x84\x84", "\xE1\x84\x85", + "\xE1\x86\xB0", "\xE1\x86\xB1", + "\xE1\x86\xB2", "\xE1\x86\xB3", + "\xE1\x86\xB4", "\xE1\x86\xB5", + "\xE1\x84\x9A", "\xE1\x84\x86", + "\xE1\x84\x87", "\xE1\x84\x88", + "\xE1\x84\xA1", "\xE1\x84\x89", + "\xE1\x84\x8A", "\xE1\x84\x8B", + "\xE1\x84\x8C", "\xE1\x84\x8D", + "\xE1\x84\x8E", "\xE1\x84\x8F", + "\xE1\x84\x90", "\xE1\x84\x91", + "\xE1\x84\x92", "\xE1\x85\xA1", + "\xE1\x85\xA2", "\xE1\x85\xA3", + "\xE1\x85\xA4", "\xE1\x85\xA5", + "\xE1\x85\xA6", "\xE1\x85\xA7", + "\xE1\x85\xA8", "\xE1\x85\xA9", + "\xE1\x85\xAA", "\xE1\x85\xAB", + "\xE1\x85\xAC", "\xE1\x85\xAD", + "\xE1\x85\xAE", "\xE1\x85\xAF", + "\xE1\x85\xB0", "\xE1\x85\xB1", + "\xE1\x85\xB2", "\xE1\x85\xB3", + "\xE1\x85\xB4", "\xE1\x85\xB5", + "\xE1\x85\xA0", "\xE1\x84\x94", + "\xE1\x84\x95", "\xE1\x87\x87", + "\xE1\x87\x88", "\xE1\x87\x8C", + "\xE1\x87\x8E", "\xE1\x87\x93", + "\xE1\x87\x97", "\xE1\x87\x99", + "\xE1\x84\x9C", "\xE1\x87\x9D", + "\xE1\x87\x9F", "\xE1\x84\x9D", + "\xE1\x84\x9E", "\xE1\x84\xA0", + "\xE1\x84\xA2", "\xE1\x84\xA3", + "\xE1\x84\xA7", "\xE1\x84\xA9", + "\xE1\x84\xAB", "\xE1\x84\xAC", + "\xE1\x84\xAD", "\xE1\x84\xAE", + "\xE1\x84\xAF", "\xE1\x84\xB2", + "\xE1\x84\xB6", "\xE1\x85\x80", + "\xE1\x85\x87", "\xE1\x85\x8C", + "\xE1\x87\xB1", "\xE1\x87\xB2", + "\xE1\x85\x97", "\xE1\x85\x98", + "\xE1\x85\x99", "\xE1\x86\x84", + "\xE1\x86\x85", "\xE1\x86\x88", + "\xE1\x86\x91", "\xE1\x86\x92", + "\xE1\x86\x94", "\xE1\x86\x9E", + "\xE1\x86\xA1", NULL, + NULL, NULL, + "\xE4\xB8\x80", "\xE4\xBA\x8C", + "\xE4\xB8\x89", "\xE5\x9B\x9B", + "\xE4\xB8\x8A", "\xE4\xB8\xAD", + "\xE4\xB8\x8B", "\xE7\x94\xB2", + "\xE4\xB9\x99", "\xE4\xB8\x99", + "\xE4\xB8\x81", "\xE5\xA4\xA9", + "\xE5\x9C\xB0", "\xE4\xBA\xBA", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage50[0x100] = { + "\x28\xE1\x84\x80\x29", "\x28\xE1\x84\x82\x29", + "\x28\xE1\x84\x83\x29", "\x28\xE1\x84\x85\x29", + "\x28\xE1\x84\x86\x29", "\x28\xE1\x84\x87\x29", + "\x28\xE1\x84\x89\x29", "\x28\xE1\x84\x8B\x29", + "\x28\xE1\x84\x8C\x29", "\x28\xE1\x84\x8E\x29", + "\x28\xE1\x84\x8F\x29", "\x28\xE1\x84\x90\x29", + "\x28\xE1\x84\x91\x29", "\x28\xE1\x84\x92\x29", + "\x28\xE1\x84\x80\xE1\x85\xA1\x29", "\x28\xE1\x84\x82\xE1\x85\xA1\x29", + "\x28\xE1\x84\x83\xE1\x85\xA1\x29", "\x28\xE1\x84\x85\xE1\x85\xA1\x29", + "\x28\xE1\x84\x86\xE1\x85\xA1\x29", "\x28\xE1\x84\x87\xE1\x85\xA1\x29", + "\x28\xE1\x84\x89\xE1\x85\xA1\x29", "\x28\xE1\x84\x8B\xE1\x85\xA1\x29", + "\x28\xE1\x84\x8C\xE1\x85\xA1\x29", "\x28\xE1\x84\x8E\xE1\x85\xA1\x29", + "\x28\xE1\x84\x8F\xE1\x85\xA1\x29", "\x28\xE1\x84\x90\xE1\x85\xA1\x29", + "\x28\xE1\x84\x91\xE1\x85\xA1\x29", "\x28\xE1\x84\x92\xE1\x85\xA1\x29", + "\x28\xE1\x84\x8C\xE1\x85\xAE\x29", "\x28\xE1\x84\x8B\xE1\x85\xA9\xE1\x84\x8C\xE1\x85\xA5\xE1\x86\xAB\x29", + "\x28\xE1\x84\x8B\xE1\x85\xA9\xE1\x84\x92\xE1\x85\xAE\x29", NULL, + "\x28\xE4\xB8\x80\x29", "\x28\xE4\xBA\x8C\x29", + "\x28\xE4\xB8\x89\x29", "\x28\xE5\x9B\x9B\x29", + "\x28\xE4\xBA\x94\x29", "\x28\xE5\x85\xAD\x29", + "\x28\xE4\xB8\x83\x29", "\x28\xE5\x85\xAB\x29", + "\x28\xE4\xB9\x9D\x29", "\x28\xE5\x8D\x81\x29", + "\x28\xE6\x9C\x88\x29", "\x28\xE7\x81\xAB\x29", + "\x28\xE6\xB0\xB4\x29", "\x28\xE6\x9C\xA8\x29", + "\x28\xE9\x87\x91\x29", "\x28\xE5\x9C\x9F\x29", + "\x28\xE6\x97\xA5\x29", "\x28\xE6\xA0\xAA\x29", + "\x28\xE6\x9C\x89\x29", "\x28\xE7\xA4\xBE\x29", + "\x28\xE5\x90\x8D\x29", "\x28\xE7\x89\xB9\x29", + "\x28\xE8\xB2\xA1\x29", "\x28\xE7\xA5\x9D\x29", + "\x28\xE5\x8A\xB4\x29", "\x28\xE4\xBB\xA3\x29", + "\x28\xE5\x91\xBC\x29", "\x28\xE5\xAD\xA6\x29", + "\x28\xE7\x9B\xA3\x29", "\x28\xE4\xBC\x81\x29", + "\x28\xE8\xB3\x87\x29", "\x28\xE5\x8D\x94\x29", + "\x28\xE7\xA5\xAD\x29", "\x28\xE4\xBC\x91\x29", + "\x28\xE8\x87\xAA\x29", "\x28\xE8\x87\xB3\x29", + "\xE5\x95\x8F", "\xE5\xB9\xBC", + "\xE6\x96\x87", "\xE7\xAE\x8F", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x50\x54\x45", "\x32\x31", + "\x32\x32", "\x32\x33", + "\x32\x34", "\x32\x35", + "\x32\x36", "\x32\x37", + "\x32\x38", "\x32\x39", + "\x33\x30", "\x33\x31", + "\x33\x32", "\x33\x33", + "\x33\x34", "\x33\x35", + "\xE1\x84\x80", "\xE1\x84\x82", + "\xE1\x84\x83", "\xE1\x84\x85", + "\xE1\x84\x86", "\xE1\x84\x87", + "\xE1\x84\x89", "\xE1\x84\x8B", + "\xE1\x84\x8C", "\xE1\x84\x8E", + "\xE1\x84\x8F", "\xE1\x84\x90", + "\xE1\x84\x91", "\xE1\x84\x92", + "\xE1\x84\x80\xE1\x85\xA1", "\xE1\x84\x82\xE1\x85\xA1", + "\xE1\x84\x83\xE1\x85\xA1", "\xE1\x84\x85\xE1\x85\xA1", + "\xE1\x84\x86\xE1\x85\xA1", "\xE1\x84\x87\xE1\x85\xA1", + "\xE1\x84\x89\xE1\x85\xA1", "\xE1\x84\x8B\xE1\x85\xA1", + "\xE1\x84\x8C\xE1\x85\xA1", "\xE1\x84\x8E\xE1\x85\xA1", + "\xE1\x84\x8F\xE1\x85\xA1", "\xE1\x84\x90\xE1\x85\xA1", + "\xE1\x84\x91\xE1\x85\xA1", "\xE1\x84\x92\xE1\x85\xA1", + "\xE1\x84\x8E\xE1\x85\xA1\xE1\x86\xB7\xE1\x84\x80\xE1\x85\xA9", "\xE1\x84\x8C\xE1\x85\xAE\xE1\x84\x8B\xE1\x85\xB4", + "\xE1\x84\x8B\xE1\x85\xAE", NULL, + "\xE4\xB8\x80", "\xE4\xBA\x8C", + "\xE4\xB8\x89", "\xE5\x9B\x9B", + "\xE4\xBA\x94", "\xE5\x85\xAD", + "\xE4\xB8\x83", "\xE5\x85\xAB", + "\xE4\xB9\x9D", "\xE5\x8D\x81", + "\xE6\x9C\x88", "\xE7\x81\xAB", + "\xE6\xB0\xB4", "\xE6\x9C\xA8", + "\xE9\x87\x91", "\xE5\x9C\x9F", + "\xE6\x97\xA5", "\xE6\xA0\xAA", + "\xE6\x9C\x89", "\xE7\xA4\xBE", + "\xE5\x90\x8D", "\xE7\x89\xB9", + "\xE8\xB2\xA1", "\xE7\xA5\x9D", + "\xE5\x8A\xB4", "\xE7\xA7\x98", + "\xE7\x94\xB7", "\xE5\xA5\xB3", + "\xE9\x81\xA9", "\xE5\x84\xAA", + "\xE5\x8D\xB0", "\xE6\xB3\xA8", + "\xE9\xA0\x85", "\xE4\xBC\x91", + "\xE5\x86\x99", "\xE6\xAD\xA3", + "\xE4\xB8\x8A", "\xE4\xB8\xAD", + "\xE4\xB8\x8B", "\xE5\xB7\xA6", + "\xE5\x8F\xB3", "\xE5\x8C\xBB", + "\xE5\xAE\x97", "\xE5\xAD\xA6", + "\xE7\x9B\xA3", "\xE4\xBC\x81", + "\xE8\xB3\x87", "\xE5\x8D\x94", + "\xE5\xA4\x9C", "\x33\x36", + "\x33\x37", "\x33\x38", + "\x33\x39", "\x34\x30", + "\x34\x31", "\x34\x32", + "\x34\x33", "\x34\x34", + "\x34\x35", "\x34\x36", + "\x34\x37", "\x34\x38", + "\x34\x39", "\x35\x30", + "\x31\xE6\x9C\x88", "\x32\xE6\x9C\x88", + "\x33\xE6\x9C\x88", "\x34\xE6\x9C\x88", + "\x35\xE6\x9C\x88", "\x36\xE6\x9C\x88", + "\x37\xE6\x9C\x88", "\x38\xE6\x9C\x88", + "\x39\xE6\x9C\x88", "\x31\x30\xE6\x9C\x88", + "\x31\x31\xE6\x9C\x88", "\x31\x32\xE6\x9C\x88", + "\x48\x67", "\x65\x72\x67", + "\x65\x56", "\x4C\x54\x44", + "\xE3\x82\xA2", "\xE3\x82\xA4", + "\xE3\x82\xA6", "\xE3\x82\xA8", + "\xE3\x82\xAA", "\xE3\x82\xAB", + "\xE3\x82\xAD", "\xE3\x82\xAF", + "\xE3\x82\xB1", "\xE3\x82\xB3", + "\xE3\x82\xB5", "\xE3\x82\xB7", + "\xE3\x82\xB9", "\xE3\x82\xBB", + "\xE3\x82\xBD", "\xE3\x82\xBF", + "\xE3\x83\x81", "\xE3\x83\x84", + "\xE3\x83\x86", "\xE3\x83\x88", + "\xE3\x83\x8A", "\xE3\x83\x8B", + "\xE3\x83\x8C", "\xE3\x83\x8D", + "\xE3\x83\x8E", "\xE3\x83\x8F", + "\xE3\x83\x92", "\xE3\x83\x95", + "\xE3\x83\x98", "\xE3\x83\x9B", + "\xE3\x83\x9E", "\xE3\x83\x9F", + "\xE3\x83\xA0", "\xE3\x83\xA1", + "\xE3\x83\xA2", "\xE3\x83\xA4", + "\xE3\x83\xA6", "\xE3\x83\xA8", + "\xE3\x83\xA9", "\xE3\x83\xAA", + "\xE3\x83\xAB", "\xE3\x83\xAC", + "\xE3\x83\xAD", "\xE3\x83\xAF", + "\xE3\x83\xB0", "\xE3\x83\xB1", + "\xE3\x83\xB2", NULL, +}; + +static const char *const decompCompatPage51[0x100] = { + "\xE3\x82\xA2\xE3\x83\x91\xE3\x83\xBC\xE3\x83\x88", "\xE3\x82\xA2\xE3\x83\xAB\xE3\x83\x95\xE3\x82\xA1", + "\xE3\x82\xA2\xE3\x83\xB3\xE3\x83\x9A\xE3\x82\xA2", "\xE3\x82\xA2\xE3\x83\xBC\xE3\x83\xAB", + "\xE3\x82\xA4\xE3\x83\x8B\xE3\x83\xB3\xE3\x82\xB0", "\xE3\x82\xA4\xE3\x83\xB3\xE3\x83\x81", + "\xE3\x82\xA6\xE3\x82\xA9\xE3\x83\xB3", "\xE3\x82\xA8\xE3\x82\xB9\xE3\x82\xAF\xE3\x83\xBC\xE3\x83\x89", + "\xE3\x82\xA8\xE3\x83\xBC\xE3\x82\xAB\xE3\x83\xBC", "\xE3\x82\xAA\xE3\x83\xB3\xE3\x82\xB9", + "\xE3\x82\xAA\xE3\x83\xBC\xE3\x83\xA0", "\xE3\x82\xAB\xE3\x82\xA4\xE3\x83\xAA", + "\xE3\x82\xAB\xE3\x83\xA9\xE3\x83\x83\xE3\x83\x88", "\xE3\x82\xAB\xE3\x83\xAD\xE3\x83\xAA\xE3\x83\xBC", + "\xE3\x82\xAC\xE3\x83\xAD\xE3\x83\xB3", "\xE3\x82\xAC\xE3\x83\xB3\xE3\x83\x9E", + "\xE3\x82\xAE\xE3\x82\xAC", "\xE3\x82\xAE\xE3\x83\x8B\xE3\x83\xBC", + "\xE3\x82\xAD\xE3\x83\xA5\xE3\x83\xAA\xE3\x83\xBC", "\xE3\x82\xAE\xE3\x83\xAB\xE3\x83\x80\xE3\x83\xBC", + "\xE3\x82\xAD\xE3\x83\xAD", "\xE3\x82\xAD\xE3\x83\xAD\xE3\x82\xB0\xE3\x83\xA9\xE3\x83\xA0", + "\xE3\x82\xAD\xE3\x83\xAD\xE3\x83\xA1\xE3\x83\xBC\xE3\x83\x88\xE3\x83\xAB", "\xE3\x82\xAD\xE3\x83\xAD\xE3\x83\xAF\xE3\x83\x83\xE3\x83\x88", + "\xE3\x82\xB0\xE3\x83\xA9\xE3\x83\xA0", "\xE3\x82\xB0\xE3\x83\xA9\xE3\x83\xA0\xE3\x83\x88\xE3\x83\xB3", + "\xE3\x82\xAF\xE3\x83\xAB\xE3\x82\xBC\xE3\x82\xA4\xE3\x83\xAD", "\xE3\x82\xAF\xE3\x83\xAD\xE3\x83\xBC\xE3\x83\x8D", + "\xE3\x82\xB1\xE3\x83\xBC\xE3\x82\xB9", "\xE3\x82\xB3\xE3\x83\xAB\xE3\x83\x8A", + "\xE3\x82\xB3\xE3\x83\xBC\xE3\x83\x9D", "\xE3\x82\xB5\xE3\x82\xA4\xE3\x82\xAF\xE3\x83\xAB", + "\xE3\x82\xB5\xE3\x83\xB3\xE3\x83\x81\xE3\x83\xBC\xE3\x83\xA0", "\xE3\x82\xB7\xE3\x83\xAA\xE3\x83\xB3\xE3\x82\xB0", + "\xE3\x82\xBB\xE3\x83\xB3\xE3\x83\x81", "\xE3\x82\xBB\xE3\x83\xB3\xE3\x83\x88", + "\xE3\x83\x80\xE3\x83\xBC\xE3\x82\xB9", "\xE3\x83\x87\xE3\x82\xB7", + "\xE3\x83\x89\xE3\x83\xAB", "\xE3\x83\x88\xE3\x83\xB3", + "\xE3\x83\x8A\xE3\x83\x8E", "\xE3\x83\x8E\xE3\x83\x83\xE3\x83\x88", + "\xE3\x83\x8F\xE3\x82\xA4\xE3\x83\x84", "\xE3\x83\x91\xE3\x83\xBC\xE3\x82\xBB\xE3\x83\xB3\xE3\x83\x88", + "\xE3\x83\x91\xE3\x83\xBC\xE3\x83\x84", "\xE3\x83\x90\xE3\x83\xBC\xE3\x83\xAC\xE3\x83\xAB", + "\xE3\x83\x94\xE3\x82\xA2\xE3\x82\xB9\xE3\x83\x88\xE3\x83\xAB", "\xE3\x83\x94\xE3\x82\xAF\xE3\x83\xAB", + "\xE3\x83\x94\xE3\x82\xB3", "\xE3\x83\x93\xE3\x83\xAB", + "\xE3\x83\x95\xE3\x82\xA1\xE3\x83\xA9\xE3\x83\x83\xE3\x83\x89", "\xE3\x83\x95\xE3\x82\xA3\xE3\x83\xBC\xE3\x83\x88", + "\xE3\x83\x96\xE3\x83\x83\xE3\x82\xB7\xE3\x82\xA7\xE3\x83\xAB", "\xE3\x83\x95\xE3\x83\xA9\xE3\x83\xB3", + "\xE3\x83\x98\xE3\x82\xAF\xE3\x82\xBF\xE3\x83\xBC\xE3\x83\xAB", "\xE3\x83\x9A\xE3\x82\xBD", + "\xE3\x83\x9A\xE3\x83\x8B\xE3\x83\x92", "\xE3\x83\x98\xE3\x83\xAB\xE3\x83\x84", + "\xE3\x83\x9A\xE3\x83\xB3\xE3\x82\xB9", "\xE3\x83\x9A\xE3\x83\xBC\xE3\x82\xB8", + "\xE3\x83\x99\xE3\x83\xBC\xE3\x82\xBF", "\xE3\x83\x9D\xE3\x82\xA4\xE3\x83\xB3\xE3\x83\x88", + "\xE3\x83\x9C\xE3\x83\xAB\xE3\x83\x88", "\xE3\x83\x9B\xE3\x83\xB3", + "\xE3\x83\x9D\xE3\x83\xB3\xE3\x83\x89", "\xE3\x83\x9B\xE3\x83\xBC\xE3\x83\xAB", + "\xE3\x83\x9B\xE3\x83\xBC\xE3\x83\xB3", "\xE3\x83\x9E\xE3\x82\xA4\xE3\x82\xAF\xE3\x83\xAD", + "\xE3\x83\x9E\xE3\x82\xA4\xE3\x83\xAB", "\xE3\x83\x9E\xE3\x83\x83\xE3\x83\x8F", + "\xE3\x83\x9E\xE3\x83\xAB\xE3\x82\xAF", "\xE3\x83\x9E\xE3\x83\xB3\xE3\x82\xB7\xE3\x83\xA7\xE3\x83\xB3", + "\xE3\x83\x9F\xE3\x82\xAF\xE3\x83\xAD\xE3\x83\xB3", "\xE3\x83\x9F\xE3\x83\xAA", + "\xE3\x83\x9F\xE3\x83\xAA\xE3\x83\x90\xE3\x83\xBC\xE3\x83\xAB", "\xE3\x83\xA1\xE3\x82\xAC", + "\xE3\x83\xA1\xE3\x82\xAC\xE3\x83\x88\xE3\x83\xB3", "\xE3\x83\xA1\xE3\x83\xBC\xE3\x83\x88\xE3\x83\xAB", + "\xE3\x83\xA4\xE3\x83\xBC\xE3\x83\x89", "\xE3\x83\xA4\xE3\x83\xBC\xE3\x83\xAB", + "\xE3\x83\xA6\xE3\x82\xA2\xE3\x83\xB3", "\xE3\x83\xAA\xE3\x83\x83\xE3\x83\x88\xE3\x83\xAB", + "\xE3\x83\xAA\xE3\x83\xA9", "\xE3\x83\xAB\xE3\x83\x94\xE3\x83\xBC", + "\xE3\x83\xAB\xE3\x83\xBC\xE3\x83\x96\xE3\x83\xAB", "\xE3\x83\xAC\xE3\x83\xA0", + "\xE3\x83\xAC\xE3\x83\xB3\xE3\x83\x88\xE3\x82\xB2\xE3\x83\xB3", "\xE3\x83\xAF\xE3\x83\x83\xE3\x83\x88", + "\x30\xE7\x82\xB9", "\x31\xE7\x82\xB9", + "\x32\xE7\x82\xB9", "\x33\xE7\x82\xB9", + "\x34\xE7\x82\xB9", "\x35\xE7\x82\xB9", + "\x36\xE7\x82\xB9", "\x37\xE7\x82\xB9", + "\x38\xE7\x82\xB9", "\x39\xE7\x82\xB9", + "\x31\x30\xE7\x82\xB9", "\x31\x31\xE7\x82\xB9", + "\x31\x32\xE7\x82\xB9", "\x31\x33\xE7\x82\xB9", + "\x31\x34\xE7\x82\xB9", "\x31\x35\xE7\x82\xB9", + "\x31\x36\xE7\x82\xB9", "\x31\x37\xE7\x82\xB9", + "\x31\x38\xE7\x82\xB9", "\x31\x39\xE7\x82\xB9", + "\x32\x30\xE7\x82\xB9", "\x32\x31\xE7\x82\xB9", + "\x32\x32\xE7\x82\xB9", "\x32\x33\xE7\x82\xB9", + "\x32\x34\xE7\x82\xB9", "\x68\x50\x61", + "\x64\x61", "\x41\x55", + "\x62\x61\x72", "\x6F\x56", + "\x70\x63", "\x64\x6D", + "\x64\x6D\xC2\xB2", "\x64\x6D\xC2\xB3", + "\x49\x55", "\xE5\xB9\xB3\xE6\x88\x90", + "\xE6\x98\xAD\xE5\x92\x8C", "\xE5\xA4\xA7\xE6\xAD\xA3", + "\xE6\x98\x8E\xE6\xB2\xBB", "\xE6\xA0\xAA\xE5\xBC\x8F\xE4\xBC\x9A\xE7\xA4\xBE", + "\x70\x41", "\x6E\x41", + "\xCE\xBC\x41", "\x6D\x41", + "\x6B\x41", "\x4B\x42", + "\x4D\x42", "\x47\x42", + "\x63\x61\x6C", "\x6B\x63\x61\x6C", + "\x70\x46", "\x6E\x46", + "\xCE\xBC\x46", "\xCE\xBC\x67", + "\x6D\x67", "\x6B\x67", + "\x48\x7A", "\x6B\x48\x7A", + "\x4D\x48\x7A", "\x47\x48\x7A", + "\x54\x48\x7A", "\xCE\xBC\xE2\x84\x93", + "\x6D\xE2\x84\x93", "\x64\xE2\x84\x93", + "\x6B\xE2\x84\x93", "\x66\x6D", + "\x6E\x6D", "\xCE\xBC\x6D", + "\x6D\x6D", "\x63\x6D", + "\x6B\x6D", "\x6D\x6D\xC2\xB2", + "\x63\x6D\xC2\xB2", "\x6D\xC2\xB2", + "\x6B\x6D\xC2\xB2", "\x6D\x6D\xC2\xB3", + "\x63\x6D\xC2\xB3", "\x6D\xC2\xB3", + "\x6B\x6D\xC2\xB3", "\x6D\xE2\x88\x95\x73", + "\x6D\xE2\x88\x95\x73\xC2\xB2", "\x50\x61", + "\x6B\x50\x61", "\x4D\x50\x61", + "\x47\x50\x61", "\x72\x61\x64", + "\x72\x61\x64\xE2\x88\x95\x73", "\x72\x61\x64\xE2\x88\x95\x73\xC2\xB2", + "\x70\x73", "\x6E\x73", + "\xCE\xBC\x73", "\x6D\x73", + "\x70\x56", "\x6E\x56", + "\xCE\xBC\x56", "\x6D\x56", + "\x6B\x56", "\x4D\x56", + "\x70\x57", "\x6E\x57", + "\xCE\xBC\x57", "\x6D\x57", + "\x6B\x57", "\x4D\x57", + "\x6B\xCE\xA9", "\x4D\xCE\xA9", + "\x61\x2E\x6D\x2E", "\x42\x71", + "\x63\x63", "\x63\x64", + "\x43\xE2\x88\x95\x6B\x67", "\x43\x6F\x2E", + "\x64\x42", "\x47\x79", + "\x68\x61", "\x48\x50", + "\x69\x6E", "\x4B\x4B", + "\x4B\x4D", "\x6B\x74", + "\x6C\x6D", "\x6C\x6E", + "\x6C\x6F\x67", "\x6C\x78", + "\x6D\x62", "\x6D\x69\x6C", + "\x6D\x6F\x6C", "\x50\x48", + "\x70\x2E\x6D\x2E", "\x50\x50\x4D", + "\x50\x52", "\x73\x72", + "\x53\x76", "\x57\x62", + "\x56\xE2\x88\x95\x6D", "\x41\xE2\x88\x95\x6D", + "\x31\xE6\x97\xA5", "\x32\xE6\x97\xA5", + "\x33\xE6\x97\xA5", "\x34\xE6\x97\xA5", + "\x35\xE6\x97\xA5", "\x36\xE6\x97\xA5", + "\x37\xE6\x97\xA5", "\x38\xE6\x97\xA5", + "\x39\xE6\x97\xA5", "\x31\x30\xE6\x97\xA5", + "\x31\x31\xE6\x97\xA5", "\x31\x32\xE6\x97\xA5", + "\x31\x33\xE6\x97\xA5", "\x31\x34\xE6\x97\xA5", + "\x31\x35\xE6\x97\xA5", "\x31\x36\xE6\x97\xA5", + "\x31\x37\xE6\x97\xA5", "\x31\x38\xE6\x97\xA5", + "\x31\x39\xE6\x97\xA5", "\x32\x30\xE6\x97\xA5", + "\x32\x31\xE6\x97\xA5", "\x32\x32\xE6\x97\xA5", + "\x32\x33\xE6\x97\xA5", "\x32\x34\xE6\x97\xA5", + "\x32\x35\xE6\x97\xA5", "\x32\x36\xE6\x97\xA5", + "\x32\x37\xE6\x97\xA5", "\x32\x38\xE6\x97\xA5", + "\x32\x39\xE6\x97\xA5", "\x33\x30\xE6\x97\xA5", + "\x33\x31\xE6\x97\xA5", "\x67\x61\x6C", +}; + +static const char *const decompCompatPage166[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xD1\x8A", "\xD1\x8C", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage167[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xEA\x9D\xAF", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xC4\xA6", "\xC5\x93", + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage171[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xEA\x9C\xA7", "\xEA\xAC\xB7", + "\xC9\xAB", "\xEA\xAD\x92", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage251[0x100] = { + "\x66\x66", "\x66\x69", + "\x66\x6C", "\x66\x66\x69", + "\x66\x66\x6C", "\xC5\xBF\x74", + "\x73\x74", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xD5\xB4\xD5\xB6", + "\xD5\xB4\xD5\xA5", "\xD5\xB4\xD5\xAB", + "\xD5\xBE\xD5\xB6", "\xD5\xB4\xD5\xAD", + NULL, NULL, + NULL, NULL, + NULL, "\xD7\x99\xD6\xB4", + NULL, "\xD7\xB2\xD6\xB7", + "\xD7\xA2", "\xD7\x90", + "\xD7\x93", "\xD7\x94", + "\xD7\x9B", "\xD7\x9C", + "\xD7\x9D", "\xD7\xA8", + "\xD7\xAA", "\x2B", + "\xD7\xA9\xD7\x81", "\xD7\xA9\xD7\x82", + "\xEF\xAD\x89\xD7\x81", "\xEF\xAD\x89\xD7\x82", + "\xD7\x90\xD6\xB7", "\xD7\x90\xD6\xB8", + "\xD7\x90\xD6\xBC", "\xD7\x91\xD6\xBC", + "\xD7\x92\xD6\xBC", "\xD7\x93\xD6\xBC", + "\xD7\x94\xD6\xBC", "\xD7\x95\xD6\xBC", + "\xD7\x96\xD6\xBC", NULL, + "\xD7\x98\xD6\xBC", "\xD7\x99\xD6\xBC", + "\xD7\x9A\xD6\xBC", "\xD7\x9B\xD6\xBC", + "\xD7\x9C\xD6\xBC", NULL, + "\xD7\x9E\xD6\xBC", NULL, + "\xD7\xA0\xD6\xBC", "\xD7\xA1\xD6\xBC", + NULL, "\xD7\xA3\xD6\xBC", + "\xD7\xA4\xD6\xBC", NULL, + "\xD7\xA6\xD6\xBC", "\xD7\xA7\xD6\xBC", + "\xD7\xA8\xD6\xBC", "\xD7\xA9\xD6\xBC", + "\xD7\xAA\xD6\xBC", "\xD7\x95\xD6\xB9", + "\xD7\x91\xD6\xBF", "\xD7\x9B\xD6\xBF", + "\xD7\xA4\xD6\xBF", "\xD7\x90\xD7\x9C", + "\xD9\xB1", "\xD9\xB1", + "\xD9\xBB", "\xD9\xBB", + "\xD9\xBB", "\xD9\xBB", + "\xD9\xBE", "\xD9\xBE", + "\xD9\xBE", "\xD9\xBE", + "\xDA\x80", "\xDA\x80", + "\xDA\x80", "\xDA\x80", + "\xD9\xBA", "\xD9\xBA", + "\xD9\xBA", "\xD9\xBA", + "\xD9\xBF", "\xD9\xBF", + "\xD9\xBF", "\xD9\xBF", + "\xD9\xB9", "\xD9\xB9", + "\xD9\xB9", "\xD9\xB9", + "\xDA\xA4", "\xDA\xA4", + "\xDA\xA4", "\xDA\xA4", + "\xDA\xA6", "\xDA\xA6", + "\xDA\xA6", "\xDA\xA6", + "\xDA\x84", "\xDA\x84", + "\xDA\x84", "\xDA\x84", + "\xDA\x83", "\xDA\x83", + "\xDA\x83", "\xDA\x83", + "\xDA\x86", "\xDA\x86", + "\xDA\x86", "\xDA\x86", + "\xDA\x87", "\xDA\x87", + "\xDA\x87", "\xDA\x87", + "\xDA\x8D", "\xDA\x8D", + "\xDA\x8C", "\xDA\x8C", + "\xDA\x8E", "\xDA\x8E", + "\xDA\x88", "\xDA\x88", + "\xDA\x98", "\xDA\x98", + "\xDA\x91", "\xDA\x91", + "\xDA\xA9", "\xDA\xA9", + "\xDA\xA9", "\xDA\xA9", + "\xDA\xAF", "\xDA\xAF", + "\xDA\xAF", "\xDA\xAF", + "\xDA\xB3", "\xDA\xB3", + "\xDA\xB3", "\xDA\xB3", + "\xDA\xB1", "\xDA\xB1", + "\xDA\xB1", "\xDA\xB1", + "\xDA\xBA", "\xDA\xBA", + "\xDA\xBB", "\xDA\xBB", + "\xDA\xBB", "\xDA\xBB", + "\xDB\x80", "\xDB\x80", + "\xDB\x81", "\xDB\x81", + "\xDB\x81", "\xDB\x81", + "\xDA\xBE", "\xDA\xBE", + "\xDA\xBE", "\xDA\xBE", + "\xDB\x92", "\xDB\x92", + "\xDB\x93", "\xDB\x93", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, "\xDA\xAD", + "\xDA\xAD", "\xDA\xAD", + "\xDA\xAD", "\xDB\x87", + "\xDB\x87", "\xDB\x86", + "\xDB\x86", "\xDB\x88", + "\xDB\x88", "\xD9\xB7", + "\xDB\x8B", "\xDB\x8B", + "\xDB\x85", "\xDB\x85", + "\xDB\x89", "\xDB\x89", + "\xDB\x90", "\xDB\x90", + "\xDB\x90", "\xDB\x90", + "\xD9\x89", "\xD9\x89", + "\xD8\xA6\xD8\xA7", "\xD8\xA6\xD8\xA7", + "\xD8\xA6\xDB\x95", "\xD8\xA6\xDB\x95", + "\xD8\xA6\xD9\x88", "\xD8\xA6\xD9\x88", + "\xD8\xA6\xDB\x87", "\xD8\xA6\xDB\x87", + "\xD8\xA6\xDB\x86", "\xD8\xA6\xDB\x86", + "\xD8\xA6\xDB\x88", "\xD8\xA6\xDB\x88", + "\xD8\xA6\xDB\x90", "\xD8\xA6\xDB\x90", + "\xD8\xA6\xDB\x90", "\xD8\xA6\xD9\x89", + "\xD8\xA6\xD9\x89", "\xD8\xA6\xD9\x89", + "\xDB\x8C", "\xDB\x8C", + "\xDB\x8C", "\xDB\x8C", +}; + +static const char *const decompCompatPage252[0x100] = { + "\xD8\xA6\xD8\xAC", "\xD8\xA6\xD8\xAD", + "\xD8\xA6\xD9\x85", "\xD8\xA6\xD9\x89", + "\xD8\xA6\xD9\x8A", "\xD8\xA8\xD8\xAC", + "\xD8\xA8\xD8\xAD", "\xD8\xA8\xD8\xAE", + "\xD8\xA8\xD9\x85", "\xD8\xA8\xD9\x89", + "\xD8\xA8\xD9\x8A", "\xD8\xAA\xD8\xAC", + "\xD8\xAA\xD8\xAD", "\xD8\xAA\xD8\xAE", + "\xD8\xAA\xD9\x85", "\xD8\xAA\xD9\x89", + "\xD8\xAA\xD9\x8A", "\xD8\xAB\xD8\xAC", + "\xD8\xAB\xD9\x85", "\xD8\xAB\xD9\x89", + "\xD8\xAB\xD9\x8A", "\xD8\xAC\xD8\xAD", + "\xD8\xAC\xD9\x85", "\xD8\xAD\xD8\xAC", + "\xD8\xAD\xD9\x85", "\xD8\xAE\xD8\xAC", + "\xD8\xAE\xD8\xAD", "\xD8\xAE\xD9\x85", + "\xD8\xB3\xD8\xAC", "\xD8\xB3\xD8\xAD", + "\xD8\xB3\xD8\xAE", "\xD8\xB3\xD9\x85", + "\xD8\xB5\xD8\xAD", "\xD8\xB5\xD9\x85", + "\xD8\xB6\xD8\xAC", "\xD8\xB6\xD8\xAD", + "\xD8\xB6\xD8\xAE", "\xD8\xB6\xD9\x85", + "\xD8\xB7\xD8\xAD", "\xD8\xB7\xD9\x85", + "\xD8\xB8\xD9\x85", "\xD8\xB9\xD8\xAC", + "\xD8\xB9\xD9\x85", "\xD8\xBA\xD8\xAC", + "\xD8\xBA\xD9\x85", "\xD9\x81\xD8\xAC", + "\xD9\x81\xD8\xAD", "\xD9\x81\xD8\xAE", + "\xD9\x81\xD9\x85", "\xD9\x81\xD9\x89", + "\xD9\x81\xD9\x8A", "\xD9\x82\xD8\xAD", + "\xD9\x82\xD9\x85", "\xD9\x82\xD9\x89", + "\xD9\x82\xD9\x8A", "\xD9\x83\xD8\xA7", + "\xD9\x83\xD8\xAC", "\xD9\x83\xD8\xAD", + "\xD9\x83\xD8\xAE", "\xD9\x83\xD9\x84", + "\xD9\x83\xD9\x85", "\xD9\x83\xD9\x89", + "\xD9\x83\xD9\x8A", "\xD9\x84\xD8\xAC", + "\xD9\x84\xD8\xAD", "\xD9\x84\xD8\xAE", + "\xD9\x84\xD9\x85", "\xD9\x84\xD9\x89", + "\xD9\x84\xD9\x8A", "\xD9\x85\xD8\xAC", + "\xD9\x85\xD8\xAD", "\xD9\x85\xD8\xAE", + "\xD9\x85\xD9\x85", "\xD9\x85\xD9\x89", + "\xD9\x85\xD9\x8A", "\xD9\x86\xD8\xAC", + "\xD9\x86\xD8\xAD", "\xD9\x86\xD8\xAE", + "\xD9\x86\xD9\x85", "\xD9\x86\xD9\x89", + "\xD9\x86\xD9\x8A", "\xD9\x87\xD8\xAC", + "\xD9\x87\xD9\x85", "\xD9\x87\xD9\x89", + "\xD9\x87\xD9\x8A", "\xD9\x8A\xD8\xAC", + "\xD9\x8A\xD8\xAD", "\xD9\x8A\xD8\xAE", + "\xD9\x8A\xD9\x85", "\xD9\x8A\xD9\x89", + "\xD9\x8A\xD9\x8A", "\xD8\xB0\xD9\xB0", + "\xD8\xB1\xD9\xB0", "\xD9\x89\xD9\xB0", + "\x20\xD9\x8C\xD9\x91", "\x20\xD9\x8D\xD9\x91", + "\x20\xD9\x8E\xD9\x91", "\x20\xD9\x8F\xD9\x91", + "\x20\xD9\x90\xD9\x91", "\x20\xD9\x91\xD9\xB0", + "\xD8\xA6\xD8\xB1", "\xD8\xA6\xD8\xB2", + "\xD8\xA6\xD9\x85", "\xD8\xA6\xD9\x86", + "\xD8\xA6\xD9\x89", "\xD8\xA6\xD9\x8A", + "\xD8\xA8\xD8\xB1", "\xD8\xA8\xD8\xB2", + "\xD8\xA8\xD9\x85", "\xD8\xA8\xD9\x86", + "\xD8\xA8\xD9\x89", "\xD8\xA8\xD9\x8A", + "\xD8\xAA\xD8\xB1", "\xD8\xAA\xD8\xB2", + "\xD8\xAA\xD9\x85", "\xD8\xAA\xD9\x86", + "\xD8\xAA\xD9\x89", "\xD8\xAA\xD9\x8A", + "\xD8\xAB\xD8\xB1", "\xD8\xAB\xD8\xB2", + "\xD8\xAB\xD9\x85", "\xD8\xAB\xD9\x86", + "\xD8\xAB\xD9\x89", "\xD8\xAB\xD9\x8A", + "\xD9\x81\xD9\x89", "\xD9\x81\xD9\x8A", + "\xD9\x82\xD9\x89", "\xD9\x82\xD9\x8A", + "\xD9\x83\xD8\xA7", "\xD9\x83\xD9\x84", + "\xD9\x83\xD9\x85", "\xD9\x83\xD9\x89", + "\xD9\x83\xD9\x8A", "\xD9\x84\xD9\x85", + "\xD9\x84\xD9\x89", "\xD9\x84\xD9\x8A", + "\xD9\x85\xD8\xA7", "\xD9\x85\xD9\x85", + "\xD9\x86\xD8\xB1", "\xD9\x86\xD8\xB2", + "\xD9\x86\xD9\x85", "\xD9\x86\xD9\x86", + "\xD9\x86\xD9\x89", "\xD9\x86\xD9\x8A", + "\xD9\x89\xD9\xB0", "\xD9\x8A\xD8\xB1", + "\xD9\x8A\xD8\xB2", "\xD9\x8A\xD9\x85", + "\xD9\x8A\xD9\x86", "\xD9\x8A\xD9\x89", + "\xD9\x8A\xD9\x8A", "\xD8\xA6\xD8\xAC", + "\xD8\xA6\xD8\xAD", "\xD8\xA6\xD8\xAE", + "\xD8\xA6\xD9\x85", "\xD8\xA6\xD9\x87", + "\xD8\xA8\xD8\xAC", "\xD8\xA8\xD8\xAD", + "\xD8\xA8\xD8\xAE", "\xD8\xA8\xD9\x85", + "\xD8\xA8\xD9\x87", "\xD8\xAA\xD8\xAC", + "\xD8\xAA\xD8\xAD", "\xD8\xAA\xD8\xAE", + "\xD8\xAA\xD9\x85", "\xD8\xAA\xD9\x87", + "\xD8\xAB\xD9\x85", "\xD8\xAC\xD8\xAD", + "\xD8\xAC\xD9\x85", "\xD8\xAD\xD8\xAC", + "\xD8\xAD\xD9\x85", "\xD8\xAE\xD8\xAC", + "\xD8\xAE\xD9\x85", "\xD8\xB3\xD8\xAC", + "\xD8\xB3\xD8\xAD", "\xD8\xB3\xD8\xAE", + "\xD8\xB3\xD9\x85", "\xD8\xB5\xD8\xAD", + "\xD8\xB5\xD8\xAE", "\xD8\xB5\xD9\x85", + "\xD8\xB6\xD8\xAC", "\xD8\xB6\xD8\xAD", + "\xD8\xB6\xD8\xAE", "\xD8\xB6\xD9\x85", + "\xD8\xB7\xD8\xAD", "\xD8\xB8\xD9\x85", + "\xD8\xB9\xD8\xAC", "\xD8\xB9\xD9\x85", + "\xD8\xBA\xD8\xAC", "\xD8\xBA\xD9\x85", + "\xD9\x81\xD8\xAC", "\xD9\x81\xD8\xAD", + "\xD9\x81\xD8\xAE", "\xD9\x81\xD9\x85", + "\xD9\x82\xD8\xAD", "\xD9\x82\xD9\x85", + "\xD9\x83\xD8\xAC", "\xD9\x83\xD8\xAD", + "\xD9\x83\xD8\xAE", "\xD9\x83\xD9\x84", + "\xD9\x83\xD9\x85", "\xD9\x84\xD8\xAC", + "\xD9\x84\xD8\xAD", "\xD9\x84\xD8\xAE", + "\xD9\x84\xD9\x85", "\xD9\x84\xD9\x87", + "\xD9\x85\xD8\xAC", "\xD9\x85\xD8\xAD", + "\xD9\x85\xD8\xAE", "\xD9\x85\xD9\x85", + "\xD9\x86\xD8\xAC", "\xD9\x86\xD8\xAD", + "\xD9\x86\xD8\xAE", "\xD9\x86\xD9\x85", + "\xD9\x86\xD9\x87", "\xD9\x87\xD8\xAC", + "\xD9\x87\xD9\x85", "\xD9\x87\xD9\xB0", + "\xD9\x8A\xD8\xAC", "\xD9\x8A\xD8\xAD", + "\xD9\x8A\xD8\xAE", "\xD9\x8A\xD9\x85", + "\xD9\x8A\xD9\x87", "\xD8\xA6\xD9\x85", + "\xD8\xA6\xD9\x87", "\xD8\xA8\xD9\x85", + "\xD8\xA8\xD9\x87", "\xD8\xAA\xD9\x85", + "\xD8\xAA\xD9\x87", "\xD8\xAB\xD9\x85", + "\xD8\xAB\xD9\x87", "\xD8\xB3\xD9\x85", + "\xD8\xB3\xD9\x87", "\xD8\xB4\xD9\x85", + "\xD8\xB4\xD9\x87", "\xD9\x83\xD9\x84", + "\xD9\x83\xD9\x85", "\xD9\x84\xD9\x85", + "\xD9\x86\xD9\x85", "\xD9\x86\xD9\x87", + "\xD9\x8A\xD9\x85", "\xD9\x8A\xD9\x87", + "\xD9\x80\xD9\x8E\xD9\x91", "\xD9\x80\xD9\x8F\xD9\x91", + "\xD9\x80\xD9\x90\xD9\x91", "\xD8\xB7\xD9\x89", + "\xD8\xB7\xD9\x8A", "\xD8\xB9\xD9\x89", + "\xD8\xB9\xD9\x8A", "\xD8\xBA\xD9\x89", + "\xD8\xBA\xD9\x8A", "\xD8\xB3\xD9\x89", + "\xD8\xB3\xD9\x8A", "\xD8\xB4\xD9\x89", + "\xD8\xB4\xD9\x8A", "\xD8\xAD\xD9\x89", +}; + +static const char *const decompCompatPage253[0x100] = { + "\xD8\xAD\xD9\x8A", "\xD8\xAC\xD9\x89", + "\xD8\xAC\xD9\x8A", "\xD8\xAE\xD9\x89", + "\xD8\xAE\xD9\x8A", "\xD8\xB5\xD9\x89", + "\xD8\xB5\xD9\x8A", "\xD8\xB6\xD9\x89", + "\xD8\xB6\xD9\x8A", "\xD8\xB4\xD8\xAC", + "\xD8\xB4\xD8\xAD", "\xD8\xB4\xD8\xAE", + "\xD8\xB4\xD9\x85", "\xD8\xB4\xD8\xB1", + "\xD8\xB3\xD8\xB1", "\xD8\xB5\xD8\xB1", + "\xD8\xB6\xD8\xB1", "\xD8\xB7\xD9\x89", + "\xD8\xB7\xD9\x8A", "\xD8\xB9\xD9\x89", + "\xD8\xB9\xD9\x8A", "\xD8\xBA\xD9\x89", + "\xD8\xBA\xD9\x8A", "\xD8\xB3\xD9\x89", + "\xD8\xB3\xD9\x8A", "\xD8\xB4\xD9\x89", + "\xD8\xB4\xD9\x8A", "\xD8\xAD\xD9\x89", + "\xD8\xAD\xD9\x8A", "\xD8\xAC\xD9\x89", + "\xD8\xAC\xD9\x8A", "\xD8\xAE\xD9\x89", + "\xD8\xAE\xD9\x8A", "\xD8\xB5\xD9\x89", + "\xD8\xB5\xD9\x8A", "\xD8\xB6\xD9\x89", + "\xD8\xB6\xD9\x8A", "\xD8\xB4\xD8\xAC", + "\xD8\xB4\xD8\xAD", "\xD8\xB4\xD8\xAE", + "\xD8\xB4\xD9\x85", "\xD8\xB4\xD8\xB1", + "\xD8\xB3\xD8\xB1", "\xD8\xB5\xD8\xB1", + "\xD8\xB6\xD8\xB1", "\xD8\xB4\xD8\xAC", + "\xD8\xB4\xD8\xAD", "\xD8\xB4\xD8\xAE", + "\xD8\xB4\xD9\x85", "\xD8\xB3\xD9\x87", + "\xD8\xB4\xD9\x87", "\xD8\xB7\xD9\x85", + "\xD8\xB3\xD8\xAC", "\xD8\xB3\xD8\xAD", + "\xD8\xB3\xD8\xAE", "\xD8\xB4\xD8\xAC", + "\xD8\xB4\xD8\xAD", "\xD8\xB4\xD8\xAE", + "\xD8\xB7\xD9\x85", "\xD8\xB8\xD9\x85", + "\xD8\xA7\xD9\x8B", "\xD8\xA7\xD9\x8B", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xD8\xAA\xD8\xAC\xD9\x85", "\xD8\xAA\xD8\xAD\xD8\xAC", + "\xD8\xAA\xD8\xAD\xD8\xAC", "\xD8\xAA\xD8\xAD\xD9\x85", + "\xD8\xAA\xD8\xAE\xD9\x85", "\xD8\xAA\xD9\x85\xD8\xAC", + "\xD8\xAA\xD9\x85\xD8\xAD", "\xD8\xAA\xD9\x85\xD8\xAE", + "\xD8\xAC\xD9\x85\xD8\xAD", "\xD8\xAC\xD9\x85\xD8\xAD", + "\xD8\xAD\xD9\x85\xD9\x8A", "\xD8\xAD\xD9\x85\xD9\x89", + "\xD8\xB3\xD8\xAD\xD8\xAC", "\xD8\xB3\xD8\xAC\xD8\xAD", + "\xD8\xB3\xD8\xAC\xD9\x89", "\xD8\xB3\xD9\x85\xD8\xAD", + "\xD8\xB3\xD9\x85\xD8\xAD", "\xD8\xB3\xD9\x85\xD8\xAC", + "\xD8\xB3\xD9\x85\xD9\x85", "\xD8\xB3\xD9\x85\xD9\x85", + "\xD8\xB5\xD8\xAD\xD8\xAD", "\xD8\xB5\xD8\xAD\xD8\xAD", + "\xD8\xB5\xD9\x85\xD9\x85", "\xD8\xB4\xD8\xAD\xD9\x85", + "\xD8\xB4\xD8\xAD\xD9\x85", "\xD8\xB4\xD8\xAC\xD9\x8A", + "\xD8\xB4\xD9\x85\xD8\xAE", "\xD8\xB4\xD9\x85\xD8\xAE", + "\xD8\xB4\xD9\x85\xD9\x85", "\xD8\xB4\xD9\x85\xD9\x85", + "\xD8\xB6\xD8\xAD\xD9\x89", "\xD8\xB6\xD8\xAE\xD9\x85", + "\xD8\xB6\xD8\xAE\xD9\x85", "\xD8\xB7\xD9\x85\xD8\xAD", + "\xD8\xB7\xD9\x85\xD8\xAD", "\xD8\xB7\xD9\x85\xD9\x85", + "\xD8\xB7\xD9\x85\xD9\x8A", "\xD8\xB9\xD8\xAC\xD9\x85", + "\xD8\xB9\xD9\x85\xD9\x85", "\xD8\xB9\xD9\x85\xD9\x85", + "\xD8\xB9\xD9\x85\xD9\x89", "\xD8\xBA\xD9\x85\xD9\x85", + "\xD8\xBA\xD9\x85\xD9\x8A", "\xD8\xBA\xD9\x85\xD9\x89", + "\xD9\x81\xD8\xAE\xD9\x85", "\xD9\x81\xD8\xAE\xD9\x85", + "\xD9\x82\xD9\x85\xD8\xAD", "\xD9\x82\xD9\x85\xD9\x85", + "\xD9\x84\xD8\xAD\xD9\x85", "\xD9\x84\xD8\xAD\xD9\x8A", + "\xD9\x84\xD8\xAD\xD9\x89", "\xD9\x84\xD8\xAC\xD8\xAC", + "\xD9\x84\xD8\xAC\xD8\xAC", "\xD9\x84\xD8\xAE\xD9\x85", + "\xD9\x84\xD8\xAE\xD9\x85", "\xD9\x84\xD9\x85\xD8\xAD", + "\xD9\x84\xD9\x85\xD8\xAD", "\xD9\x85\xD8\xAD\xD8\xAC", + "\xD9\x85\xD8\xAD\xD9\x85", "\xD9\x85\xD8\xAD\xD9\x8A", + "\xD9\x85\xD8\xAC\xD8\xAD", "\xD9\x85\xD8\xAC\xD9\x85", + "\xD9\x85\xD8\xAE\xD8\xAC", "\xD9\x85\xD8\xAE\xD9\x85", + NULL, NULL, + "\xD9\x85\xD8\xAC\xD8\xAE", "\xD9\x87\xD9\x85\xD8\xAC", + "\xD9\x87\xD9\x85\xD9\x85", "\xD9\x86\xD8\xAD\xD9\x85", + "\xD9\x86\xD8\xAD\xD9\x89", "\xD9\x86\xD8\xAC\xD9\x85", + "\xD9\x86\xD8\xAC\xD9\x85", "\xD9\x86\xD8\xAC\xD9\x89", + "\xD9\x86\xD9\x85\xD9\x8A", "\xD9\x86\xD9\x85\xD9\x89", + "\xD9\x8A\xD9\x85\xD9\x85", "\xD9\x8A\xD9\x85\xD9\x85", + "\xD8\xA8\xD8\xAE\xD9\x8A", "\xD8\xAA\xD8\xAC\xD9\x8A", + "\xD8\xAA\xD8\xAC\xD9\x89", "\xD8\xAA\xD8\xAE\xD9\x8A", + "\xD8\xAA\xD8\xAE\xD9\x89", "\xD8\xAA\xD9\x85\xD9\x8A", + "\xD8\xAA\xD9\x85\xD9\x89", "\xD8\xAC\xD9\x85\xD9\x8A", + "\xD8\xAC\xD8\xAD\xD9\x89", "\xD8\xAC\xD9\x85\xD9\x89", + "\xD8\xB3\xD8\xAE\xD9\x89", "\xD8\xB5\xD8\xAD\xD9\x8A", + "\xD8\xB4\xD8\xAD\xD9\x8A", "\xD8\xB6\xD8\xAD\xD9\x8A", + "\xD9\x84\xD8\xAC\xD9\x8A", "\xD9\x84\xD9\x85\xD9\x8A", + "\xD9\x8A\xD8\xAD\xD9\x8A", "\xD9\x8A\xD8\xAC\xD9\x8A", + "\xD9\x8A\xD9\x85\xD9\x8A", "\xD9\x85\xD9\x85\xD9\x8A", + "\xD9\x82\xD9\x85\xD9\x8A", "\xD9\x86\xD8\xAD\xD9\x8A", + "\xD9\x82\xD9\x85\xD8\xAD", "\xD9\x84\xD8\xAD\xD9\x85", + "\xD8\xB9\xD9\x85\xD9\x8A", "\xD9\x83\xD9\x85\xD9\x8A", + "\xD9\x86\xD8\xAC\xD8\xAD", "\xD9\x85\xD8\xAE\xD9\x8A", + "\xD9\x84\xD8\xAC\xD9\x85", "\xD9\x83\xD9\x85\xD9\x85", + "\xD9\x84\xD8\xAC\xD9\x85", "\xD9\x86\xD8\xAC\xD8\xAD", + "\xD8\xAC\xD8\xAD\xD9\x8A", "\xD8\xAD\xD8\xAC\xD9\x8A", + "\xD9\x85\xD8\xAC\xD9\x8A", "\xD9\x81\xD9\x85\xD9\x8A", + "\xD8\xA8\xD8\xAD\xD9\x8A", "\xD9\x83\xD9\x85\xD9\x85", + "\xD8\xB9\xD8\xAC\xD9\x85", "\xD8\xB5\xD9\x85\xD9\x85", + "\xD8\xB3\xD8\xAE\xD9\x8A", "\xD9\x86\xD8\xAC\xD9\x8A", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xD8\xB5\xD9\x84\xDB\x92", "\xD9\x82\xD9\x84\xDB\x92", + "\xD8\xA7\xD9\x84\xD9\x84\xD9\x87", "\xD8\xA7\xD9\x83\xD8\xA8\xD8\xB1", + "\xD9\x85\xD8\xAD\xD9\x85\xD8\xAF", "\xD8\xB5\xD9\x84\xD8\xB9\xD9\x85", + "\xD8\xB1\xD8\xB3\xD9\x88\xD9\x84", "\xD8\xB9\xD9\x84\xD9\x8A\xD9\x87", + "\xD9\x88\xD8\xB3\xD9\x84\xD9\x85", "\xD8\xB5\xD9\x84\xD9\x89", + "\xD8\xB5\xD9\x84\xD9\x89\x20\xD8\xA7\xD9\x84\xD9\x84\xD9\x87\x20\xD8\xB9\xD9\x84\xD9\x8A\xD9\x87\x20\xD9\x88\xD8\xB3\xD9\x84\xD9\x85", "\xD8\xAC\xD9\x84\x20\xD8\xAC\xD9\x84\xD8\xA7\xD9\x84\xD9\x87", + "\xD8\xB1\xDB\x8C\xD8\xA7\xD9\x84", NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage254[0x100] = { + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x2C", "\xE3\x80\x81", + "\xE3\x80\x82", "\x3A", + "\x3B", "\x21", + "\x3F", "\xE3\x80\x96", + "\xE3\x80\x97", "\xE2\x80\xA6", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE2\x80\xA5", "\xE2\x80\x94", + "\xE2\x80\x93", "\x5F", + "\x5F", "\x28", + "\x29", "\x7B", + "\x7D", "\xE3\x80\x94", + "\xE3\x80\x95", "\xE3\x80\x90", + "\xE3\x80\x91", "\xE3\x80\x8A", + "\xE3\x80\x8B", "\xE3\x80\x88", + "\xE3\x80\x89", "\xE3\x80\x8C", + "\xE3\x80\x8D", "\xE3\x80\x8E", + "\xE3\x80\x8F", NULL, + NULL, "\x5B", + "\x5D", "\xE2\x80\xBE", + "\xE2\x80\xBE", "\xE2\x80\xBE", + "\xE2\x80\xBE", "\x5F", + "\x5F", "\x5F", + "\x2C", "\xE3\x80\x81", + "\x2E", NULL, + "\x3B", "\x3A", + "\x3F", "\x21", + "\xE2\x80\x94", "\x28", + "\x29", "\x7B", + "\x7D", "\xE3\x80\x94", + "\xE3\x80\x95", "\x23", + "\x26", "\x2A", + "\x2B", "\x2D", + "\x3C", "\x3E", + "\x3D", NULL, + "\x5C", "\x24", + "\x25", "\x40", + NULL, NULL, + NULL, NULL, + "\x20\xD9\x8B", "\xD9\x80\xD9\x8B", + "\x20\xD9\x8C", NULL, + "\x20\xD9\x8D", NULL, + "\x20\xD9\x8E", "\xD9\x80\xD9\x8E", + "\x20\xD9\x8F", "\xD9\x80\xD9\x8F", + "\x20\xD9\x90", "\xD9\x80\xD9\x90", + "\x20\xD9\x91", "\xD9\x80\xD9\x91", + "\x20\xD9\x92", "\xD9\x80\xD9\x92", + "\xD8\xA1", "\xD8\xA2", + "\xD8\xA2", "\xD8\xA3", + "\xD8\xA3", "\xD8\xA4", + "\xD8\xA4", "\xD8\xA5", + "\xD8\xA5", "\xD8\xA6", + "\xD8\xA6", "\xD8\xA6", + "\xD8\xA6", "\xD8\xA7", + "\xD8\xA7", "\xD8\xA8", + "\xD8\xA8", "\xD8\xA8", + "\xD8\xA8", "\xD8\xA9", + "\xD8\xA9", "\xD8\xAA", + "\xD8\xAA", "\xD8\xAA", + "\xD8\xAA", "\xD8\xAB", + "\xD8\xAB", "\xD8\xAB", + "\xD8\xAB", "\xD8\xAC", + "\xD8\xAC", "\xD8\xAC", + "\xD8\xAC", "\xD8\xAD", + "\xD8\xAD", "\xD8\xAD", + "\xD8\xAD", "\xD8\xAE", + "\xD8\xAE", "\xD8\xAE", + "\xD8\xAE", "\xD8\xAF", + "\xD8\xAF", "\xD8\xB0", + "\xD8\xB0", "\xD8\xB1", + "\xD8\xB1", "\xD8\xB2", + "\xD8\xB2", "\xD8\xB3", + "\xD8\xB3", "\xD8\xB3", + "\xD8\xB3", "\xD8\xB4", + "\xD8\xB4", "\xD8\xB4", + "\xD8\xB4", "\xD8\xB5", + "\xD8\xB5", "\xD8\xB5", + "\xD8\xB5", "\xD8\xB6", + "\xD8\xB6", "\xD8\xB6", + "\xD8\xB6", "\xD8\xB7", + "\xD8\xB7", "\xD8\xB7", + "\xD8\xB7", "\xD8\xB8", + "\xD8\xB8", "\xD8\xB8", + "\xD8\xB8", "\xD8\xB9", + "\xD8\xB9", "\xD8\xB9", + "\xD8\xB9", "\xD8\xBA", + "\xD8\xBA", "\xD8\xBA", + "\xD8\xBA", "\xD9\x81", + "\xD9\x81", "\xD9\x81", + "\xD9\x81", "\xD9\x82", + "\xD9\x82", "\xD9\x82", + "\xD9\x82", "\xD9\x83", + "\xD9\x83", "\xD9\x83", + "\xD9\x83", "\xD9\x84", + "\xD9\x84", "\xD9\x84", + "\xD9\x84", "\xD9\x85", + "\xD9\x85", "\xD9\x85", + "\xD9\x85", "\xD9\x86", + "\xD9\x86", "\xD9\x86", + "\xD9\x86", "\xD9\x87", + "\xD9\x87", "\xD9\x87", + "\xD9\x87", "\xD9\x88", + "\xD9\x88", "\xD9\x89", + "\xD9\x89", "\xD9\x8A", + "\xD9\x8A", "\xD9\x8A", + "\xD9\x8A", "\xD9\x84\xD8\xA2", + "\xD9\x84\xD8\xA2", "\xD9\x84\xD8\xA3", + "\xD9\x84\xD8\xA3", "\xD9\x84\xD8\xA5", + "\xD9\x84\xD8\xA5", "\xD9\x84\xD8\xA7", + "\xD9\x84\xD8\xA7", NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage255[0x100] = { + NULL, "\x21", + "\x22", "\x23", + "\x24", "\x25", + "\x26", "\x27", + "\x28", "\x29", + "\x2A", "\x2B", + "\x2C", "\x2D", + "\x2E", "\x2F", + "\x30", "\x31", + "\x32", "\x33", + "\x34", "\x35", + "\x36", "\x37", + "\x38", "\x39", + "\x3A", "\x3B", + "\x3C", "\x3D", + "\x3E", "\x3F", + "\x40", "\x41", + "\x42", "\x43", + "\x44", "\x45", + "\x46", "\x47", + "\x48", "\x49", + "\x4A", "\x4B", + "\x4C", "\x4D", + "\x4E", "\x4F", + "\x50", "\x51", + "\x52", "\x53", + "\x54", "\x55", + "\x56", "\x57", + "\x58", "\x59", + "\x5A", "\x5B", + "\x5C", "\x5D", + "\x5E", "\x5F", + "\x60", "\x61", + "\x62", "\x63", + "\x64", "\x65", + "\x66", "\x67", + "\x68", "\x69", + "\x6A", "\x6B", + "\x6C", "\x6D", + "\x6E", "\x6F", + "\x70", "\x71", + "\x72", "\x73", + "\x74", "\x75", + "\x76", "\x77", + "\x78", "\x79", + "\x7A", "\x7B", + "\x7C", "\x7D", + "\x7E", "\xE2\xA6\x85", + "\xE2\xA6\x86", "\xE3\x80\x82", + "\xE3\x80\x8C", "\xE3\x80\x8D", + "\xE3\x80\x81", "\xE3\x83\xBB", + "\xE3\x83\xB2", "\xE3\x82\xA1", + "\xE3\x82\xA3", "\xE3\x82\xA5", + "\xE3\x82\xA7", "\xE3\x82\xA9", + "\xE3\x83\xA3", "\xE3\x83\xA5", + "\xE3\x83\xA7", "\xE3\x83\x83", + "\xE3\x83\xBC", "\xE3\x82\xA2", + "\xE3\x82\xA4", "\xE3\x82\xA6", + "\xE3\x82\xA8", "\xE3\x82\xAA", + "\xE3\x82\xAB", "\xE3\x82\xAD", + "\xE3\x82\xAF", "\xE3\x82\xB1", + "\xE3\x82\xB3", "\xE3\x82\xB5", + "\xE3\x82\xB7", "\xE3\x82\xB9", + "\xE3\x82\xBB", "\xE3\x82\xBD", + "\xE3\x82\xBF", "\xE3\x83\x81", + "\xE3\x83\x84", "\xE3\x83\x86", + "\xE3\x83\x88", "\xE3\x83\x8A", + "\xE3\x83\x8B", "\xE3\x83\x8C", + "\xE3\x83\x8D", "\xE3\x83\x8E", + "\xE3\x83\x8F", "\xE3\x83\x92", + "\xE3\x83\x95", "\xE3\x83\x98", + "\xE3\x83\x9B", "\xE3\x83\x9E", + "\xE3\x83\x9F", "\xE3\x83\xA0", + "\xE3\x83\xA1", "\xE3\x83\xA2", + "\xE3\x83\xA4", "\xE3\x83\xA6", + "\xE3\x83\xA8", "\xE3\x83\xA9", + "\xE3\x83\xAA", "\xE3\x83\xAB", + "\xE3\x83\xAC", "\xE3\x83\xAD", + "\xE3\x83\xAF", "\xE3\x83\xB3", + "\xE3\x82\x99", "\xE3\x82\x9A", + "\xE3\x85\xA4", "\xE3\x84\xB1", + "\xE3\x84\xB2", "\xE3\x84\xB3", + "\xE3\x84\xB4", "\xE3\x84\xB5", + "\xE3\x84\xB6", "\xE3\x84\xB7", + "\xE3\x84\xB8", "\xE3\x84\xB9", + "\xE3\x84\xBA", "\xE3\x84\xBB", + "\xE3\x84\xBC", "\xE3\x84\xBD", + "\xE3\x84\xBE", "\xE3\x84\xBF", + "\xE3\x85\x80", "\xE3\x85\x81", + "\xE3\x85\x82", "\xE3\x85\x83", + "\xE3\x85\x84", "\xE3\x85\x85", + "\xE3\x85\x86", "\xE3\x85\x87", + "\xE3\x85\x88", "\xE3\x85\x89", + "\xE3\x85\x8A", "\xE3\x85\x8B", + "\xE3\x85\x8C", "\xE3\x85\x8D", + "\xE3\x85\x8E", NULL, + NULL, NULL, + "\xE3\x85\x8F", "\xE3\x85\x90", + "\xE3\x85\x91", "\xE3\x85\x92", + "\xE3\x85\x93", "\xE3\x85\x94", + NULL, NULL, + "\xE3\x85\x95", "\xE3\x85\x96", + "\xE3\x85\x97", "\xE3\x85\x98", + "\xE3\x85\x99", "\xE3\x85\x9A", + NULL, NULL, + "\xE3\x85\x9B", "\xE3\x85\x9C", + "\xE3\x85\x9D", "\xE3\x85\x9E", + "\xE3\x85\x9F", "\xE3\x85\xA0", + NULL, NULL, + "\xE3\x85\xA1", "\xE3\x85\xA2", + "\xE3\x85\xA3", NULL, + NULL, NULL, + "\xC2\xA2", "\xC2\xA3", + "\xC2\xAC", "\xC2\xAF", + "\xC2\xA6", "\xC2\xA5", + "\xE2\x82\xA9", NULL, + "\xE2\x94\x82", "\xE2\x86\x90", + "\xE2\x86\x91", "\xE2\x86\x92", + "\xE2\x86\x93", "\xE2\x96\xA0", + "\xE2\x97\x8B", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage468[0x100] = { + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", NULL, + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", NULL, + "\x43", "\x44", + NULL, NULL, + "\x47", NULL, + NULL, "\x4A", + "\x4B", NULL, + NULL, "\x4E", + "\x4F", "\x50", + "\x51", NULL, + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + NULL, "\x66", + NULL, "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + NULL, "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", +}; + +static const char *const decompCompatPage469[0x100] = { + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + NULL, "\x44", + "\x45", "\x46", + "\x47", NULL, + NULL, "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", NULL, + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", NULL, + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + NULL, "\x44", + "\x45", "\x46", + "\x47", NULL, + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", NULL, + "\x4F", NULL, + NULL, NULL, + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", NULL, + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", +}; + +static const char *const decompCompatPage470[0x100] = { + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x61", "\x62", + "\x63", "\x64", + "\x65", "\x66", + "\x67", "\x68", + "\x69", "\x6A", + "\x6B", "\x6C", + "\x6D", "\x6E", + "\x6F", "\x70", + "\x71", "\x72", + "\x73", "\x74", + "\x75", "\x76", + "\x77", "\x78", + "\x79", "\x7A", + "\xC4\xB1", "\xC8\xB7", + NULL, NULL, + "\xCE\x91", "\xCE\x92", + "\xCE\x93", "\xCE\x94", + "\xCE\x95", "\xCE\x96", + "\xCE\x97", "\xCE\x98", + "\xCE\x99", "\xCE\x9A", + "\xCE\x9B", "\xCE\x9C", + "\xCE\x9D", "\xCE\x9E", + "\xCE\x9F", "\xCE\xA0", + "\xCE\xA1", "\xCF\xB4", + "\xCE\xA3", "\xCE\xA4", + "\xCE\xA5", "\xCE\xA6", + "\xCE\xA7", "\xCE\xA8", + "\xCE\xA9", "\xE2\x88\x87", + "\xCE\xB1", "\xCE\xB2", + "\xCE\xB3", "\xCE\xB4", + "\xCE\xB5", "\xCE\xB6", + "\xCE\xB7", "\xCE\xB8", + "\xCE\xB9", "\xCE\xBA", + "\xCE\xBB", "\xCE\xBC", + "\xCE\xBD", "\xCE\xBE", + "\xCE\xBF", "\xCF\x80", + "\xCF\x81", "\xCF\x82", + "\xCF\x83", "\xCF\x84", + "\xCF\x85", "\xCF\x86", + "\xCF\x87", "\xCF\x88", + "\xCF\x89", "\xE2\x88\x82", + "\xCF\xB5", "\xCF\x91", + "\xCF\xB0", "\xCF\x95", + "\xCF\xB1", "\xCF\x96", + "\xCE\x91", "\xCE\x92", + "\xCE\x93", "\xCE\x94", + "\xCE\x95", "\xCE\x96", + "\xCE\x97", "\xCE\x98", + "\xCE\x99", "\xCE\x9A", + "\xCE\x9B", "\xCE\x9C", + "\xCE\x9D", "\xCE\x9E", + "\xCE\x9F", "\xCE\xA0", + "\xCE\xA1", "\xCF\xB4", + "\xCE\xA3", "\xCE\xA4", + "\xCE\xA5", "\xCE\xA6", + "\xCE\xA7", "\xCE\xA8", + "\xCE\xA9", "\xE2\x88\x87", + "\xCE\xB1", "\xCE\xB2", + "\xCE\xB3", "\xCE\xB4", +}; + +static const char *const decompCompatPage471[0x100] = { + "\xCE\xB5", "\xCE\xB6", + "\xCE\xB7", "\xCE\xB8", + "\xCE\xB9", "\xCE\xBA", + "\xCE\xBB", "\xCE\xBC", + "\xCE\xBD", "\xCE\xBE", + "\xCE\xBF", "\xCF\x80", + "\xCF\x81", "\xCF\x82", + "\xCF\x83", "\xCF\x84", + "\xCF\x85", "\xCF\x86", + "\xCF\x87", "\xCF\x88", + "\xCF\x89", "\xE2\x88\x82", + "\xCF\xB5", "\xCF\x91", + "\xCF\xB0", "\xCF\x95", + "\xCF\xB1", "\xCF\x96", + "\xCE\x91", "\xCE\x92", + "\xCE\x93", "\xCE\x94", + "\xCE\x95", "\xCE\x96", + "\xCE\x97", "\xCE\x98", + "\xCE\x99", "\xCE\x9A", + "\xCE\x9B", "\xCE\x9C", + "\xCE\x9D", "\xCE\x9E", + "\xCE\x9F", "\xCE\xA0", + "\xCE\xA1", "\xCF\xB4", + "\xCE\xA3", "\xCE\xA4", + "\xCE\xA5", "\xCE\xA6", + "\xCE\xA7", "\xCE\xA8", + "\xCE\xA9", "\xE2\x88\x87", + "\xCE\xB1", "\xCE\xB2", + "\xCE\xB3", "\xCE\xB4", + "\xCE\xB5", "\xCE\xB6", + "\xCE\xB7", "\xCE\xB8", + "\xCE\xB9", "\xCE\xBA", + "\xCE\xBB", "\xCE\xBC", + "\xCE\xBD", "\xCE\xBE", + "\xCE\xBF", "\xCF\x80", + "\xCF\x81", "\xCF\x82", + "\xCF\x83", "\xCF\x84", + "\xCF\x85", "\xCF\x86", + "\xCF\x87", "\xCF\x88", + "\xCF\x89", "\xE2\x88\x82", + "\xCF\xB5", "\xCF\x91", + "\xCF\xB0", "\xCF\x95", + "\xCF\xB1", "\xCF\x96", + "\xCE\x91", "\xCE\x92", + "\xCE\x93", "\xCE\x94", + "\xCE\x95", "\xCE\x96", + "\xCE\x97", "\xCE\x98", + "\xCE\x99", "\xCE\x9A", + "\xCE\x9B", "\xCE\x9C", + "\xCE\x9D", "\xCE\x9E", + "\xCE\x9F", "\xCE\xA0", + "\xCE\xA1", "\xCF\xB4", + "\xCE\xA3", "\xCE\xA4", + "\xCE\xA5", "\xCE\xA6", + "\xCE\xA7", "\xCE\xA8", + "\xCE\xA9", "\xE2\x88\x87", + "\xCE\xB1", "\xCE\xB2", + "\xCE\xB3", "\xCE\xB4", + "\xCE\xB5", "\xCE\xB6", + "\xCE\xB7", "\xCE\xB8", + "\xCE\xB9", "\xCE\xBA", + "\xCE\xBB", "\xCE\xBC", + "\xCE\xBD", "\xCE\xBE", + "\xCE\xBF", "\xCF\x80", + "\xCF\x81", "\xCF\x82", + "\xCF\x83", "\xCF\x84", + "\xCF\x85", "\xCF\x86", + "\xCF\x87", "\xCF\x88", + "\xCF\x89", "\xE2\x88\x82", + "\xCF\xB5", "\xCF\x91", + "\xCF\xB0", "\xCF\x95", + "\xCF\xB1", "\xCF\x96", + "\xCE\x91", "\xCE\x92", + "\xCE\x93", "\xCE\x94", + "\xCE\x95", "\xCE\x96", + "\xCE\x97", "\xCE\x98", + "\xCE\x99", "\xCE\x9A", + "\xCE\x9B", "\xCE\x9C", + "\xCE\x9D", "\xCE\x9E", + "\xCE\x9F", "\xCE\xA0", + "\xCE\xA1", "\xCF\xB4", + "\xCE\xA3", "\xCE\xA4", + "\xCE\xA5", "\xCE\xA6", + "\xCE\xA7", "\xCE\xA8", + "\xCE\xA9", "\xE2\x88\x87", + "\xCE\xB1", "\xCE\xB2", + "\xCE\xB3", "\xCE\xB4", + "\xCE\xB5", "\xCE\xB6", + "\xCE\xB7", "\xCE\xB8", + "\xCE\xB9", "\xCE\xBA", + "\xCE\xBB", "\xCE\xBC", + "\xCE\xBD", "\xCE\xBE", + "\xCE\xBF", "\xCF\x80", + "\xCF\x81", "\xCF\x82", + "\xCF\x83", "\xCF\x84", + "\xCF\x85", "\xCF\x86", + "\xCF\x87", "\xCF\x88", + "\xCF\x89", "\xE2\x88\x82", + "\xCF\xB5", "\xCF\x91", + "\xCF\xB0", "\xCF\x95", + "\xCF\xB1", "\xCF\x96", + "\xCF\x9C", "\xCF\x9D", + NULL, NULL, + "\x30", "\x31", + "\x32", "\x33", + "\x34", "\x35", + "\x36", "\x37", + "\x38", "\x39", + "\x30", "\x31", + "\x32", "\x33", + "\x34", "\x35", + "\x36", "\x37", + "\x38", "\x39", + "\x30", "\x31", + "\x32", "\x33", + "\x34", "\x35", + "\x36", "\x37", + "\x38", "\x39", + "\x30", "\x31", + "\x32", "\x33", + "\x34", "\x35", + "\x36", "\x37", + "\x38", "\x39", + "\x30", "\x31", + "\x32", "\x33", + "\x34", "\x35", + "\x36", "\x37", + "\x38", "\x39", +}; + +static const char *const decompCompatPage494[0x100] = { + "\xD8\xA7", "\xD8\xA8", + "\xD8\xAC", "\xD8\xAF", + NULL, "\xD9\x88", + "\xD8\xB2", "\xD8\xAD", + "\xD8\xB7", "\xD9\x8A", + "\xD9\x83", "\xD9\x84", + "\xD9\x85", "\xD9\x86", + "\xD8\xB3", "\xD8\xB9", + "\xD9\x81", "\xD8\xB5", + "\xD9\x82", "\xD8\xB1", + "\xD8\xB4", "\xD8\xAA", + "\xD8\xAB", "\xD8\xAE", + "\xD8\xB0", "\xD8\xB6", + "\xD8\xB8", "\xD8\xBA", + "\xD9\xAE", "\xDA\xBA", + "\xDA\xA1", "\xD9\xAF", + NULL, "\xD8\xA8", + "\xD8\xAC", NULL, + "\xD9\x87", NULL, + NULL, "\xD8\xAD", + NULL, "\xD9\x8A", + "\xD9\x83", "\xD9\x84", + "\xD9\x85", "\xD9\x86", + "\xD8\xB3", "\xD8\xB9", + "\xD9\x81", "\xD8\xB5", + "\xD9\x82", NULL, + "\xD8\xB4", "\xD8\xAA", + "\xD8\xAB", "\xD8\xAE", + NULL, "\xD8\xB6", + NULL, "\xD8\xBA", + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xD8\xAC", NULL, + NULL, NULL, + NULL, "\xD8\xAD", + NULL, "\xD9\x8A", + NULL, "\xD9\x84", + NULL, "\xD9\x86", + "\xD8\xB3", "\xD8\xB9", + NULL, "\xD8\xB5", + "\xD9\x82", NULL, + "\xD8\xB4", NULL, + NULL, "\xD8\xAE", + NULL, "\xD8\xB6", + NULL, "\xD8\xBA", + NULL, "\xDA\xBA", + NULL, "\xD9\xAF", + NULL, "\xD8\xA8", + "\xD8\xAC", NULL, + "\xD9\x87", NULL, + NULL, "\xD8\xAD", + "\xD8\xB7", "\xD9\x8A", + "\xD9\x83", NULL, + "\xD9\x85", "\xD9\x86", + "\xD8\xB3", "\xD8\xB9", + "\xD9\x81", "\xD8\xB5", + "\xD9\x82", NULL, + "\xD8\xB4", "\xD8\xAA", + "\xD8\xAB", "\xD8\xAE", + NULL, "\xD8\xB6", + "\xD8\xB8", "\xD8\xBA", + "\xD9\xAE", NULL, + "\xDA\xA1", NULL, + "\xD8\xA7", "\xD8\xA8", + "\xD8\xAC", "\xD8\xAF", + "\xD9\x87", "\xD9\x88", + "\xD8\xB2", "\xD8\xAD", + "\xD8\xB7", "\xD9\x8A", + NULL, "\xD9\x84", + "\xD9\x85", "\xD9\x86", + "\xD8\xB3", "\xD8\xB9", + "\xD9\x81", "\xD8\xB5", + "\xD9\x82", "\xD8\xB1", + "\xD8\xB4", "\xD8\xAA", + "\xD8\xAB", "\xD8\xAE", + "\xD8\xB0", "\xD8\xB6", + "\xD8\xB8", "\xD8\xBA", + NULL, NULL, + NULL, NULL, + NULL, "\xD8\xA8", + "\xD8\xAC", "\xD8\xAF", + NULL, "\xD9\x88", + "\xD8\xB2", "\xD8\xAD", + "\xD8\xB7", "\xD9\x8A", + NULL, "\xD9\x84", + "\xD9\x85", "\xD9\x86", + "\xD8\xB3", "\xD8\xB9", + "\xD9\x81", "\xD8\xB5", + "\xD9\x82", "\xD8\xB1", + "\xD8\xB4", "\xD8\xAA", + "\xD8\xAB", "\xD8\xAE", + "\xD8\xB0", "\xD8\xB6", + "\xD8\xB8", "\xD8\xBA", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage497[0x100] = { + "\x30\x2E", "\x30\x2C", + "\x31\x2C", "\x32\x2C", + "\x33\x2C", "\x34\x2C", + "\x35\x2C", "\x36\x2C", + "\x37\x2C", "\x38\x2C", + "\x39\x2C", NULL, + NULL, NULL, + NULL, NULL, + "\x28\x41\x29", "\x28\x42\x29", + "\x28\x43\x29", "\x28\x44\x29", + "\x28\x45\x29", "\x28\x46\x29", + "\x28\x47\x29", "\x28\x48\x29", + "\x28\x49\x29", "\x28\x4A\x29", + "\x28\x4B\x29", "\x28\x4C\x29", + "\x28\x4D\x29", "\x28\x4E\x29", + "\x28\x4F\x29", "\x28\x50\x29", + "\x28\x51\x29", "\x28\x52\x29", + "\x28\x53\x29", "\x28\x54\x29", + "\x28\x55\x29", "\x28\x56\x29", + "\x28\x57\x29", "\x28\x58\x29", + "\x28\x59\x29", "\x28\x5A\x29", + "\xE3\x80\x94\x53\xE3\x80\x95", "\x43", + "\x52", "\x43\x44", + "\x57\x5A", NULL, + "\x41", "\x42", + "\x43", "\x44", + "\x45", "\x46", + "\x47", "\x48", + "\x49", "\x4A", + "\x4B", "\x4C", + "\x4D", "\x4E", + "\x4F", "\x50", + "\x51", "\x52", + "\x53", "\x54", + "\x55", "\x56", + "\x57", "\x58", + "\x59", "\x5A", + "\x48\x56", "\x4D\x56", + "\x53\x44", "\x53\x53", + "\x50\x50\x56", "\x57\x43", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x4D\x43", "\x4D\x44", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\x44\x4A", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; + +static const char *const decompCompatPage498[0x100] = { + "\xE3\x81\xBB\xE3\x81\x8B", "\xE3\x82\xB3\xE3\x82\xB3", + "\xE3\x82\xB5", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE6\x89\x8B", "\xE5\xAD\x97", + "\xE5\x8F\x8C", "\xE3\x83\x87", + "\xE4\xBA\x8C", "\xE5\xA4\x9A", + "\xE8\xA7\xA3", "\xE5\xA4\xA9", + "\xE4\xBA\xA4", "\xE6\x98\xA0", + "\xE7\x84\xA1", "\xE6\x96\x99", + "\xE5\x89\x8D", "\xE5\xBE\x8C", + "\xE5\x86\x8D", "\xE6\x96\xB0", + "\xE5\x88\x9D", "\xE7\xB5\x82", + "\xE7\x94\x9F", "\xE8\xB2\xA9", + "\xE5\xA3\xB0", "\xE5\x90\xB9", + "\xE6\xBC\x94", "\xE6\x8A\x95", + "\xE6\x8D\x95", "\xE4\xB8\x80", + "\xE4\xB8\x89", "\xE9\x81\x8A", + "\xE5\xB7\xA6", "\xE4\xB8\xAD", + "\xE5\x8F\xB3", "\xE6\x8C\x87", + "\xE8\xB5\xB0", "\xE6\x89\x93", + "\xE7\xA6\x81", "\xE7\xA9\xBA", + "\xE5\x90\x88", "\xE6\xBA\x80", + "\xE6\x9C\x89", "\xE6\x9C\x88", + "\xE7\x94\xB3", "\xE5\x89\xB2", + "\xE5\x96\xB6", "\xE9\x85\x8D", + NULL, NULL, + NULL, NULL, + "\xE3\x80\x94\xE6\x9C\xAC\xE3\x80\x95", "\xE3\x80\x94\xE4\xB8\x89\xE3\x80\x95", + "\xE3\x80\x94\xE4\xBA\x8C\xE3\x80\x95", "\xE3\x80\x94\xE5\xAE\x89\xE3\x80\x95", + "\xE3\x80\x94\xE7\x82\xB9\xE3\x80\x95", "\xE3\x80\x94\xE6\x89\x93\xE3\x80\x95", + "\xE3\x80\x94\xE7\x9B\x97\xE3\x80\x95", "\xE3\x80\x94\xE5\x8B\x9D\xE3\x80\x95", + "\xE3\x80\x94\xE6\x95\x97\xE3\x80\x95", NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + "\xE5\xBE\x97", "\xE5\x8F\xAF", + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, + NULL, NULL, +}; const of_unichar_t *const of_unicode_uppercase_table[0x1EA] = { uppercasePage0, uppercasePage1, uppercasePage2, uppercasePage3, uppercasePage4, uppercasePage5, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, emptyPage, @@ -7006,10 +12246,268 @@ emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, decompositionPage760, decompositionPage761, + decompositionPage762 +}; + +const char *const *of_unicode_decomposition_compat_table[0x2FB] = { + decompCompatPage0, decompCompatPage1, decompCompatPage2, + decompCompatPage3, decompositionPage4, decompCompatPage5, + decompCompatPage6, emptyDecompositionPage, emptyDecompositionPage, + decompositionPage9, decompositionPage10, decompositionPage11, + decompositionPage12, decompositionPage13, decompCompatPage14, + decompCompatPage15, decompCompatPage16, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + decompositionPage27, emptyDecompositionPage, decompCompatPage29, + decompCompatPage30, decompCompatPage31, decompCompatPage32, + decompCompatPage33, decompCompatPage34, decompositionPage35, + decompCompatPage36, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + decompCompatPage42, emptyDecompositionPage, decompCompatPage44, + decompCompatPage45, decompCompatPage46, decompCompatPage47, + decompCompatPage48, decompCompatPage49, decompCompatPage50, + decompCompatPage51, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, decompCompatPage166, decompCompatPage167, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + decompCompatPage171, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + decompositionPage249, decompositionPage250, decompCompatPage251, + decompCompatPage252, decompCompatPage253, decompCompatPage254, + decompCompatPage255, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, decompositionPage272, + decompositionPage273, emptyDecompositionPage, decompositionPage275, + decompositionPage276, decompositionPage277, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + decompositionPage465, emptyDecompositionPage, emptyDecompositionPage, + decompCompatPage468, decompCompatPage469, decompCompatPage470, + decompCompatPage471, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, + emptyDecompositionPage, emptyDecompositionPage, decompCompatPage494, + emptyDecompositionPage, emptyDecompositionPage, decompCompatPage497, + decompCompatPage498, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage, emptyDecompositionPage,