18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * fs/cifs/winucase.c 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright (c) Jeffrey Layton <jlayton@redhat.com>, 2013 68c2ecf20Sopenharmony_ci * 78c2ecf20Sopenharmony_ci * The const tables in this file were converted from the following info 88c2ecf20Sopenharmony_ci * provided by Microsoft: 98c2ecf20Sopenharmony_ci * 108c2ecf20Sopenharmony_ci * 3.1.5.3 Mapping UTF-16 Strings to Upper Case: 118c2ecf20Sopenharmony_ci * 128c2ecf20Sopenharmony_ci * https://msdn.microsoft.com/en-us/library/hh877830.aspx 138c2ecf20Sopenharmony_ci * http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=10921 148c2ecf20Sopenharmony_ci * 158c2ecf20Sopenharmony_ci * In particular, the table in "Windows 8 Upper Case Mapping Table.txt" was 168c2ecf20Sopenharmony_ci * post-processed using the winucase_convert.pl script. 178c2ecf20Sopenharmony_ci */ 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci#include <linux/nls.h> 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ciwchar_t cifs_toupper(wchar_t in); /* quiet sparse */ 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_cistatic const wchar_t t2_00[256] = { 248c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 258c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 268c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 278c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 288c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 298c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 308c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 318c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 328c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 338c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 348c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 358c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 368c2ecf20Sopenharmony_ci 0x0000, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 378c2ecf20Sopenharmony_ci 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 388c2ecf20Sopenharmony_ci 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 398c2ecf20Sopenharmony_ci 0x0058, 0x0059, 0x005a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 408c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 418c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 428c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 438c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 448c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 458c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 468c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 478c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 488c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 498c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 508c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 518c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 528c2ecf20Sopenharmony_ci 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7, 538c2ecf20Sopenharmony_ci 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf, 548c2ecf20Sopenharmony_ci 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x0000, 558c2ecf20Sopenharmony_ci 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x0178, 568c2ecf20Sopenharmony_ci}; 578c2ecf20Sopenharmony_ci 588c2ecf20Sopenharmony_cistatic const wchar_t t2_01[256] = { 598c2ecf20Sopenharmony_ci 0x0000, 0x0100, 0x0000, 0x0102, 0x0000, 0x0104, 0x0000, 0x0106, 608c2ecf20Sopenharmony_ci 0x0000, 0x0108, 0x0000, 0x010a, 0x0000, 0x010c, 0x0000, 0x010e, 618c2ecf20Sopenharmony_ci 0x0000, 0x0110, 0x0000, 0x0112, 0x0000, 0x0114, 0x0000, 0x0116, 628c2ecf20Sopenharmony_ci 0x0000, 0x0118, 0x0000, 0x011a, 0x0000, 0x011c, 0x0000, 0x011e, 638c2ecf20Sopenharmony_ci 0x0000, 0x0120, 0x0000, 0x0122, 0x0000, 0x0124, 0x0000, 0x0126, 648c2ecf20Sopenharmony_ci 0x0000, 0x0128, 0x0000, 0x012a, 0x0000, 0x012c, 0x0000, 0x012e, 658c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0132, 0x0000, 0x0134, 0x0000, 0x0136, 668c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0139, 0x0000, 0x013b, 0x0000, 0x013d, 0x0000, 678c2ecf20Sopenharmony_ci 0x013f, 0x0000, 0x0141, 0x0000, 0x0143, 0x0000, 0x0145, 0x0000, 688c2ecf20Sopenharmony_ci 0x0147, 0x0000, 0x0000, 0x014a, 0x0000, 0x014c, 0x0000, 0x014e, 698c2ecf20Sopenharmony_ci 0x0000, 0x0150, 0x0000, 0x0152, 0x0000, 0x0154, 0x0000, 0x0156, 708c2ecf20Sopenharmony_ci 0x0000, 0x0158, 0x0000, 0x015a, 0x0000, 0x015c, 0x0000, 0x015e, 718c2ecf20Sopenharmony_ci 0x0000, 0x0160, 0x0000, 0x0162, 0x0000, 0x0164, 0x0000, 0x0166, 728c2ecf20Sopenharmony_ci 0x0000, 0x0168, 0x0000, 0x016a, 0x0000, 0x016c, 0x0000, 0x016e, 738c2ecf20Sopenharmony_ci 0x0000, 0x0170, 0x0000, 0x0172, 0x0000, 0x0174, 0x0000, 0x0176, 748c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0179, 0x0000, 0x017b, 0x0000, 0x017d, 0x0000, 758c2ecf20Sopenharmony_ci 0x0243, 0x0000, 0x0000, 0x0182, 0x0000, 0x0184, 0x0000, 0x0000, 768c2ecf20Sopenharmony_ci 0x0187, 0x0000, 0x0000, 0x0000, 0x018b, 0x0000, 0x0000, 0x0000, 778c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0191, 0x0000, 0x0000, 0x01f6, 0x0000, 0x0000, 788c2ecf20Sopenharmony_ci 0x0000, 0x0198, 0x023d, 0x0000, 0x0000, 0x0000, 0x0220, 0x0000, 798c2ecf20Sopenharmony_ci 0x0000, 0x01a0, 0x0000, 0x01a2, 0x0000, 0x01a4, 0x0000, 0x0000, 808c2ecf20Sopenharmony_ci 0x01a7, 0x0000, 0x0000, 0x0000, 0x0000, 0x01ac, 0x0000, 0x0000, 818c2ecf20Sopenharmony_ci 0x01af, 0x0000, 0x0000, 0x0000, 0x01b3, 0x0000, 0x01b5, 0x0000, 828c2ecf20Sopenharmony_ci 0x0000, 0x01b8, 0x0000, 0x0000, 0x0000, 0x01bc, 0x0000, 0x01f7, 838c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x01c4, 0x0000, 848c2ecf20Sopenharmony_ci 0x0000, 0x01c7, 0x0000, 0x0000, 0x01ca, 0x0000, 0x01cd, 0x0000, 858c2ecf20Sopenharmony_ci 0x01cf, 0x0000, 0x01d1, 0x0000, 0x01d3, 0x0000, 0x01d5, 0x0000, 868c2ecf20Sopenharmony_ci 0x01d7, 0x0000, 0x01d9, 0x0000, 0x01db, 0x018e, 0x0000, 0x01de, 878c2ecf20Sopenharmony_ci 0x0000, 0x01e0, 0x0000, 0x01e2, 0x0000, 0x01e4, 0x0000, 0x01e6, 888c2ecf20Sopenharmony_ci 0x0000, 0x01e8, 0x0000, 0x01ea, 0x0000, 0x01ec, 0x0000, 0x01ee, 898c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x01f1, 0x0000, 0x01f4, 0x0000, 0x0000, 908c2ecf20Sopenharmony_ci 0x0000, 0x01f8, 0x0000, 0x01fa, 0x0000, 0x01fc, 0x0000, 0x01fe, 918c2ecf20Sopenharmony_ci}; 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_cistatic const wchar_t t2_02[256] = { 948c2ecf20Sopenharmony_ci 0x0000, 0x0200, 0x0000, 0x0202, 0x0000, 0x0204, 0x0000, 0x0206, 958c2ecf20Sopenharmony_ci 0x0000, 0x0208, 0x0000, 0x020a, 0x0000, 0x020c, 0x0000, 0x020e, 968c2ecf20Sopenharmony_ci 0x0000, 0x0210, 0x0000, 0x0212, 0x0000, 0x0214, 0x0000, 0x0216, 978c2ecf20Sopenharmony_ci 0x0000, 0x0218, 0x0000, 0x021a, 0x0000, 0x021c, 0x0000, 0x021e, 988c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0222, 0x0000, 0x0224, 0x0000, 0x0226, 998c2ecf20Sopenharmony_ci 0x0000, 0x0228, 0x0000, 0x022a, 0x0000, 0x022c, 0x0000, 0x022e, 1008c2ecf20Sopenharmony_ci 0x0000, 0x0230, 0x0000, 0x0232, 0x0000, 0x0000, 0x0000, 0x0000, 1018c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x023b, 0x0000, 0x0000, 0x0000, 1028c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0241, 0x0000, 0x0000, 0x0000, 0x0000, 0x0246, 1038c2ecf20Sopenharmony_ci 0x0000, 0x0248, 0x0000, 0x024a, 0x0000, 0x024c, 0x0000, 0x024e, 1048c2ecf20Sopenharmony_ci 0x2c6f, 0x2c6d, 0x0000, 0x0181, 0x0186, 0x0000, 0x0189, 0x018a, 1058c2ecf20Sopenharmony_ci 0x0000, 0x018f, 0x0000, 0x0190, 0x0000, 0x0000, 0x0000, 0x0000, 1068c2ecf20Sopenharmony_ci 0x0193, 0x0000, 0x0000, 0x0194, 0x0000, 0x0000, 0x0000, 0x0000, 1078c2ecf20Sopenharmony_ci 0x0197, 0x0196, 0x0000, 0x2c62, 0x0000, 0x0000, 0x0000, 0x019c, 1088c2ecf20Sopenharmony_ci 0x0000, 0x2c6e, 0x019d, 0x0000, 0x0000, 0x019f, 0x0000, 0x0000, 1098c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2c64, 0x0000, 0x0000, 1108c2ecf20Sopenharmony_ci 0x01a6, 0x0000, 0x0000, 0x01a9, 0x0000, 0x0000, 0x0000, 0x0000, 1118c2ecf20Sopenharmony_ci 0x01ae, 0x0244, 0x01b1, 0x01b2, 0x0245, 0x0000, 0x0000, 0x0000, 1128c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x01b7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1138c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1148c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1158c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1168c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1178c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1188c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1198c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1208c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1218c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1228c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1238c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1248c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1258c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1268c2ecf20Sopenharmony_ci}; 1278c2ecf20Sopenharmony_ci 1288c2ecf20Sopenharmony_cistatic const wchar_t t2_03[256] = { 1298c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1308c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1318c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1328c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1338c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1348c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1358c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1368c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1378c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1388c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1398c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1408c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1418c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1428c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1438c2ecf20Sopenharmony_ci 0x0000, 0x0370, 0x0000, 0x0372, 0x0000, 0x0000, 0x0000, 0x0376, 1448c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x03fd, 0x03fe, 0x03ff, 0x0000, 0x0000, 1458c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1468c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1478c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1488c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1498c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1508c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0386, 0x0388, 0x0389, 0x038a, 1518c2ecf20Sopenharmony_ci 0x0000, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 1528c2ecf20Sopenharmony_ci 0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 1538c2ecf20Sopenharmony_ci 0x03a0, 0x03a1, 0x0000, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7, 1548c2ecf20Sopenharmony_ci 0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x038c, 0x038e, 0x038f, 0x0000, 1558c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03cf, 1568c2ecf20Sopenharmony_ci 0x0000, 0x03d8, 0x0000, 0x03da, 0x0000, 0x03dc, 0x0000, 0x03de, 1578c2ecf20Sopenharmony_ci 0x0000, 0x03e0, 0x0000, 0x03e2, 0x0000, 0x03e4, 0x0000, 0x03e6, 1588c2ecf20Sopenharmony_ci 0x0000, 0x03e8, 0x0000, 0x03ea, 0x0000, 0x03ec, 0x0000, 0x03ee, 1598c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x03f9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1608c2ecf20Sopenharmony_ci 0x03f7, 0x0000, 0x0000, 0x03fa, 0x0000, 0x0000, 0x0000, 0x0000, 1618c2ecf20Sopenharmony_ci}; 1628c2ecf20Sopenharmony_ci 1638c2ecf20Sopenharmony_cistatic const wchar_t t2_04[256] = { 1648c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1658c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1668c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1678c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1688c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1698c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1708c2ecf20Sopenharmony_ci 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417, 1718c2ecf20Sopenharmony_ci 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 1728c2ecf20Sopenharmony_ci 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 1738c2ecf20Sopenharmony_ci 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f, 1748c2ecf20Sopenharmony_ci 0x0400, 0x0401, 0x0402, 0x0403, 0x0404, 0x0405, 0x0406, 0x0407, 1758c2ecf20Sopenharmony_ci 0x0408, 0x0409, 0x040a, 0x040b, 0x040c, 0x040d, 0x040e, 0x040f, 1768c2ecf20Sopenharmony_ci 0x0000, 0x0460, 0x0000, 0x0462, 0x0000, 0x0464, 0x0000, 0x0466, 1778c2ecf20Sopenharmony_ci 0x0000, 0x0468, 0x0000, 0x046a, 0x0000, 0x046c, 0x0000, 0x046e, 1788c2ecf20Sopenharmony_ci 0x0000, 0x0470, 0x0000, 0x0472, 0x0000, 0x0474, 0x0000, 0x0476, 1798c2ecf20Sopenharmony_ci 0x0000, 0x0478, 0x0000, 0x047a, 0x0000, 0x047c, 0x0000, 0x047e, 1808c2ecf20Sopenharmony_ci 0x0000, 0x0480, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 1818c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x048a, 0x0000, 0x048c, 0x0000, 0x048e, 1828c2ecf20Sopenharmony_ci 0x0000, 0x0490, 0x0000, 0x0492, 0x0000, 0x0494, 0x0000, 0x0496, 1838c2ecf20Sopenharmony_ci 0x0000, 0x0498, 0x0000, 0x049a, 0x0000, 0x049c, 0x0000, 0x049e, 1848c2ecf20Sopenharmony_ci 0x0000, 0x04a0, 0x0000, 0x04a2, 0x0000, 0x04a4, 0x0000, 0x04a6, 1858c2ecf20Sopenharmony_ci 0x0000, 0x04a8, 0x0000, 0x04aa, 0x0000, 0x04ac, 0x0000, 0x04ae, 1868c2ecf20Sopenharmony_ci 0x0000, 0x04b0, 0x0000, 0x04b2, 0x0000, 0x04b4, 0x0000, 0x04b6, 1878c2ecf20Sopenharmony_ci 0x0000, 0x04b8, 0x0000, 0x04ba, 0x0000, 0x04bc, 0x0000, 0x04be, 1888c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x04c1, 0x0000, 0x04c3, 0x0000, 0x04c5, 0x0000, 1898c2ecf20Sopenharmony_ci 0x04c7, 0x0000, 0x04c9, 0x0000, 0x04cb, 0x0000, 0x04cd, 0x04c0, 1908c2ecf20Sopenharmony_ci 0x0000, 0x04d0, 0x0000, 0x04d2, 0x0000, 0x04d4, 0x0000, 0x04d6, 1918c2ecf20Sopenharmony_ci 0x0000, 0x04d8, 0x0000, 0x04da, 0x0000, 0x04dc, 0x0000, 0x04de, 1928c2ecf20Sopenharmony_ci 0x0000, 0x04e0, 0x0000, 0x04e2, 0x0000, 0x04e4, 0x0000, 0x04e6, 1938c2ecf20Sopenharmony_ci 0x0000, 0x04e8, 0x0000, 0x04ea, 0x0000, 0x04ec, 0x0000, 0x04ee, 1948c2ecf20Sopenharmony_ci 0x0000, 0x04f0, 0x0000, 0x04f2, 0x0000, 0x04f4, 0x0000, 0x04f6, 1958c2ecf20Sopenharmony_ci 0x0000, 0x04f8, 0x0000, 0x04fa, 0x0000, 0x04fc, 0x0000, 0x04fe, 1968c2ecf20Sopenharmony_ci}; 1978c2ecf20Sopenharmony_ci 1988c2ecf20Sopenharmony_cistatic const wchar_t t2_05[256] = { 1998c2ecf20Sopenharmony_ci 0x0000, 0x0500, 0x0000, 0x0502, 0x0000, 0x0504, 0x0000, 0x0506, 2008c2ecf20Sopenharmony_ci 0x0000, 0x0508, 0x0000, 0x050a, 0x0000, 0x050c, 0x0000, 0x050e, 2018c2ecf20Sopenharmony_ci 0x0000, 0x0510, 0x0000, 0x0512, 0x0000, 0x0514, 0x0000, 0x0516, 2028c2ecf20Sopenharmony_ci 0x0000, 0x0518, 0x0000, 0x051a, 0x0000, 0x051c, 0x0000, 0x051e, 2038c2ecf20Sopenharmony_ci 0x0000, 0x0520, 0x0000, 0x0522, 0x0000, 0x0000, 0x0000, 0x0000, 2048c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2058c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2068c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2078c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2088c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2098c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2108c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2118c2ecf20Sopenharmony_ci 0x0000, 0x0531, 0x0532, 0x0533, 0x0534, 0x0535, 0x0536, 0x0537, 2128c2ecf20Sopenharmony_ci 0x0538, 0x0539, 0x053a, 0x053b, 0x053c, 0x053d, 0x053e, 0x053f, 2138c2ecf20Sopenharmony_ci 0x0540, 0x0541, 0x0542, 0x0543, 0x0544, 0x0545, 0x0546, 0x0547, 2148c2ecf20Sopenharmony_ci 0x0548, 0x0549, 0x054a, 0x054b, 0x054c, 0x054d, 0x054e, 0x054f, 2158c2ecf20Sopenharmony_ci 0x0550, 0x0551, 0x0552, 0x0553, 0x0554, 0x0555, 0x0556, 0x0000, 2168c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2178c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2188c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2198c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2208c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2218c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2228c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2238c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2248c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2258c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2268c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2278c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2288c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2298c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2308c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2318c2ecf20Sopenharmony_ci}; 2328c2ecf20Sopenharmony_ci 2338c2ecf20Sopenharmony_cistatic const wchar_t t2_1d[256] = { 2348c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2358c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2368c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2378c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2388c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2398c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2408c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2418c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2428c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2438c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2448c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2458c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2468c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2478c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2488c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2498c2ecf20Sopenharmony_ci 0x0000, 0xa77d, 0x0000, 0x0000, 0x0000, 0x2c63, 0x0000, 0x0000, 2508c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2518c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2528c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2538c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2548c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2558c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2568c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2578c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2588c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2598c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2608c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2618c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2628c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2638c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2648c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2658c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2668c2ecf20Sopenharmony_ci}; 2678c2ecf20Sopenharmony_ci 2688c2ecf20Sopenharmony_cistatic const wchar_t t2_1e[256] = { 2698c2ecf20Sopenharmony_ci 0x0000, 0x1e00, 0x0000, 0x1e02, 0x0000, 0x1e04, 0x0000, 0x1e06, 2708c2ecf20Sopenharmony_ci 0x0000, 0x1e08, 0x0000, 0x1e0a, 0x0000, 0x1e0c, 0x0000, 0x1e0e, 2718c2ecf20Sopenharmony_ci 0x0000, 0x1e10, 0x0000, 0x1e12, 0x0000, 0x1e14, 0x0000, 0x1e16, 2728c2ecf20Sopenharmony_ci 0x0000, 0x1e18, 0x0000, 0x1e1a, 0x0000, 0x1e1c, 0x0000, 0x1e1e, 2738c2ecf20Sopenharmony_ci 0x0000, 0x1e20, 0x0000, 0x1e22, 0x0000, 0x1e24, 0x0000, 0x1e26, 2748c2ecf20Sopenharmony_ci 0x0000, 0x1e28, 0x0000, 0x1e2a, 0x0000, 0x1e2c, 0x0000, 0x1e2e, 2758c2ecf20Sopenharmony_ci 0x0000, 0x1e30, 0x0000, 0x1e32, 0x0000, 0x1e34, 0x0000, 0x1e36, 2768c2ecf20Sopenharmony_ci 0x0000, 0x1e38, 0x0000, 0x1e3a, 0x0000, 0x1e3c, 0x0000, 0x1e3e, 2778c2ecf20Sopenharmony_ci 0x0000, 0x1e40, 0x0000, 0x1e42, 0x0000, 0x1e44, 0x0000, 0x1e46, 2788c2ecf20Sopenharmony_ci 0x0000, 0x1e48, 0x0000, 0x1e4a, 0x0000, 0x1e4c, 0x0000, 0x1e4e, 2798c2ecf20Sopenharmony_ci 0x0000, 0x1e50, 0x0000, 0x1e52, 0x0000, 0x1e54, 0x0000, 0x1e56, 2808c2ecf20Sopenharmony_ci 0x0000, 0x1e58, 0x0000, 0x1e5a, 0x0000, 0x1e5c, 0x0000, 0x1e5e, 2818c2ecf20Sopenharmony_ci 0x0000, 0x1e60, 0x0000, 0x1e62, 0x0000, 0x1e64, 0x0000, 0x1e66, 2828c2ecf20Sopenharmony_ci 0x0000, 0x1e68, 0x0000, 0x1e6a, 0x0000, 0x1e6c, 0x0000, 0x1e6e, 2838c2ecf20Sopenharmony_ci 0x0000, 0x1e70, 0x0000, 0x1e72, 0x0000, 0x1e74, 0x0000, 0x1e76, 2848c2ecf20Sopenharmony_ci 0x0000, 0x1e78, 0x0000, 0x1e7a, 0x0000, 0x1e7c, 0x0000, 0x1e7e, 2858c2ecf20Sopenharmony_ci 0x0000, 0x1e80, 0x0000, 0x1e82, 0x0000, 0x1e84, 0x0000, 0x1e86, 2868c2ecf20Sopenharmony_ci 0x0000, 0x1e88, 0x0000, 0x1e8a, 0x0000, 0x1e8c, 0x0000, 0x1e8e, 2878c2ecf20Sopenharmony_ci 0x0000, 0x1e90, 0x0000, 0x1e92, 0x0000, 0x1e94, 0x0000, 0x0000, 2888c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 2898c2ecf20Sopenharmony_ci 0x0000, 0x1ea0, 0x0000, 0x1ea2, 0x0000, 0x1ea4, 0x0000, 0x1ea6, 2908c2ecf20Sopenharmony_ci 0x0000, 0x1ea8, 0x0000, 0x1eaa, 0x0000, 0x1eac, 0x0000, 0x1eae, 2918c2ecf20Sopenharmony_ci 0x0000, 0x1eb0, 0x0000, 0x1eb2, 0x0000, 0x1eb4, 0x0000, 0x1eb6, 2928c2ecf20Sopenharmony_ci 0x0000, 0x1eb8, 0x0000, 0x1eba, 0x0000, 0x1ebc, 0x0000, 0x1ebe, 2938c2ecf20Sopenharmony_ci 0x0000, 0x1ec0, 0x0000, 0x1ec2, 0x0000, 0x1ec4, 0x0000, 0x1ec6, 2948c2ecf20Sopenharmony_ci 0x0000, 0x1ec8, 0x0000, 0x1eca, 0x0000, 0x1ecc, 0x0000, 0x1ece, 2958c2ecf20Sopenharmony_ci 0x0000, 0x1ed0, 0x0000, 0x1ed2, 0x0000, 0x1ed4, 0x0000, 0x1ed6, 2968c2ecf20Sopenharmony_ci 0x0000, 0x1ed8, 0x0000, 0x1eda, 0x0000, 0x1edc, 0x0000, 0x1ede, 2978c2ecf20Sopenharmony_ci 0x0000, 0x1ee0, 0x0000, 0x1ee2, 0x0000, 0x1ee4, 0x0000, 0x1ee6, 2988c2ecf20Sopenharmony_ci 0x0000, 0x1ee8, 0x0000, 0x1eea, 0x0000, 0x1eec, 0x0000, 0x1eee, 2998c2ecf20Sopenharmony_ci 0x0000, 0x1ef0, 0x0000, 0x1ef2, 0x0000, 0x1ef4, 0x0000, 0x1ef6, 3008c2ecf20Sopenharmony_ci 0x0000, 0x1ef8, 0x0000, 0x1efa, 0x0000, 0x1efc, 0x0000, 0x1efe, 3018c2ecf20Sopenharmony_ci}; 3028c2ecf20Sopenharmony_ci 3038c2ecf20Sopenharmony_cistatic const wchar_t t2_1f[256] = { 3048c2ecf20Sopenharmony_ci 0x1f08, 0x1f09, 0x1f0a, 0x1f0b, 0x1f0c, 0x1f0d, 0x1f0e, 0x1f0f, 3058c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3068c2ecf20Sopenharmony_ci 0x1f18, 0x1f19, 0x1f1a, 0x1f1b, 0x1f1c, 0x1f1d, 0x0000, 0x0000, 3078c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3088c2ecf20Sopenharmony_ci 0x1f28, 0x1f29, 0x1f2a, 0x1f2b, 0x1f2c, 0x1f2d, 0x1f2e, 0x1f2f, 3098c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3108c2ecf20Sopenharmony_ci 0x1f38, 0x1f39, 0x1f3a, 0x1f3b, 0x1f3c, 0x1f3d, 0x1f3e, 0x1f3f, 3118c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3128c2ecf20Sopenharmony_ci 0x1f48, 0x1f49, 0x1f4a, 0x1f4b, 0x1f4c, 0x1f4d, 0x0000, 0x0000, 3138c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3148c2ecf20Sopenharmony_ci 0x0000, 0x1f59, 0x0000, 0x1f5b, 0x0000, 0x1f5d, 0x0000, 0x1f5f, 3158c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3168c2ecf20Sopenharmony_ci 0x1f68, 0x1f69, 0x1f6a, 0x1f6b, 0x1f6c, 0x1f6d, 0x1f6e, 0x1f6f, 3178c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3188c2ecf20Sopenharmony_ci 0x1fba, 0x1fbb, 0x1fc8, 0x1fc9, 0x1fca, 0x1fcb, 0x1fda, 0x1fdb, 3198c2ecf20Sopenharmony_ci 0x1ff8, 0x1ff9, 0x1fea, 0x1feb, 0x1ffa, 0x1ffb, 0x0000, 0x0000, 3208c2ecf20Sopenharmony_ci 0x1f88, 0x1f89, 0x1f8a, 0x1f8b, 0x1f8c, 0x1f8d, 0x1f8e, 0x1f8f, 3218c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3228c2ecf20Sopenharmony_ci 0x1f98, 0x1f99, 0x1f9a, 0x1f9b, 0x1f9c, 0x1f9d, 0x1f9e, 0x1f9f, 3238c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3248c2ecf20Sopenharmony_ci 0x1fa8, 0x1fa9, 0x1faa, 0x1fab, 0x1fac, 0x1fad, 0x1fae, 0x1faf, 3258c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3268c2ecf20Sopenharmony_ci 0x1fb8, 0x1fb9, 0x0000, 0x1fbc, 0x0000, 0x0000, 0x0000, 0x0000, 3278c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3288c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x1fcc, 0x0000, 0x0000, 0x0000, 0x0000, 3298c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3308c2ecf20Sopenharmony_ci 0x1fd8, 0x1fd9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3318c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3328c2ecf20Sopenharmony_ci 0x1fe8, 0x1fe9, 0x0000, 0x0000, 0x0000, 0x1fec, 0x0000, 0x0000, 3338c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3348c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x1ffc, 0x0000, 0x0000, 0x0000, 0x0000, 3358c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3368c2ecf20Sopenharmony_ci}; 3378c2ecf20Sopenharmony_ci 3388c2ecf20Sopenharmony_cistatic const wchar_t t2_21[256] = { 3398c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3408c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3418c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3428c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3438c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3448c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3458c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3468c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3478c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3488c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2132, 0x0000, 3498c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3508c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3518c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3528c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3538c2ecf20Sopenharmony_ci 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 3548c2ecf20Sopenharmony_ci 0x2168, 0x2169, 0x216a, 0x216b, 0x216c, 0x216d, 0x216e, 0x216f, 3558c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x2183, 0x0000, 0x0000, 0x0000, 3568c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3578c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3588c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3598c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3608c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3618c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3628c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3638c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3648c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3658c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3668c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3678c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3688c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3698c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3708c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3718c2ecf20Sopenharmony_ci}; 3728c2ecf20Sopenharmony_ci 3738c2ecf20Sopenharmony_cistatic const wchar_t t2_24[256] = { 3748c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3758c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3768c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3778c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3788c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3798c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3808c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3818c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3828c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3838c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3848c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3858c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3868c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3878c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3888c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3898c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3908c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3918c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3928c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3938c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3948c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3958c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3968c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3978c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3988c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 3998c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4008c2ecf20Sopenharmony_ci 0x24b6, 0x24b7, 0x24b8, 0x24b9, 0x24ba, 0x24bb, 0x24bc, 0x24bd, 4018c2ecf20Sopenharmony_ci 0x24be, 0x24bf, 0x24c0, 0x24c1, 0x24c2, 0x24c3, 0x24c4, 0x24c5, 4028c2ecf20Sopenharmony_ci 0x24c6, 0x24c7, 0x24c8, 0x24c9, 0x24ca, 0x24cb, 0x24cc, 0x24cd, 4038c2ecf20Sopenharmony_ci 0x24ce, 0x24cf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4048c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4058c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4068c2ecf20Sopenharmony_ci}; 4078c2ecf20Sopenharmony_ci 4088c2ecf20Sopenharmony_cistatic const wchar_t t2_2c[256] = { 4098c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4108c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4118c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4128c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4138c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4148c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4158c2ecf20Sopenharmony_ci 0x2c00, 0x2c01, 0x2c02, 0x2c03, 0x2c04, 0x2c05, 0x2c06, 0x2c07, 4168c2ecf20Sopenharmony_ci 0x2c08, 0x2c09, 0x2c0a, 0x2c0b, 0x2c0c, 0x2c0d, 0x2c0e, 0x2c0f, 4178c2ecf20Sopenharmony_ci 0x2c10, 0x2c11, 0x2c12, 0x2c13, 0x2c14, 0x2c15, 0x2c16, 0x2c17, 4188c2ecf20Sopenharmony_ci 0x2c18, 0x2c19, 0x2c1a, 0x2c1b, 0x2c1c, 0x2c1d, 0x2c1e, 0x2c1f, 4198c2ecf20Sopenharmony_ci 0x2c20, 0x2c21, 0x2c22, 0x2c23, 0x2c24, 0x2c25, 0x2c26, 0x2c27, 4208c2ecf20Sopenharmony_ci 0x2c28, 0x2c29, 0x2c2a, 0x2c2b, 0x2c2c, 0x2c2d, 0x2c2e, 0x0000, 4218c2ecf20Sopenharmony_ci 0x0000, 0x2c60, 0x0000, 0x0000, 0x0000, 0x023a, 0x023e, 0x0000, 4228c2ecf20Sopenharmony_ci 0x2c67, 0x0000, 0x2c69, 0x0000, 0x2c6b, 0x0000, 0x0000, 0x0000, 4238c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x2c72, 0x0000, 0x0000, 0x2c75, 0x0000, 4248c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4258c2ecf20Sopenharmony_ci 0x0000, 0x2c80, 0x0000, 0x2c82, 0x0000, 0x2c84, 0x0000, 0x2c86, 4268c2ecf20Sopenharmony_ci 0x0000, 0x2c88, 0x0000, 0x2c8a, 0x0000, 0x2c8c, 0x0000, 0x2c8e, 4278c2ecf20Sopenharmony_ci 0x0000, 0x2c90, 0x0000, 0x2c92, 0x0000, 0x2c94, 0x0000, 0x2c96, 4288c2ecf20Sopenharmony_ci 0x0000, 0x2c98, 0x0000, 0x2c9a, 0x0000, 0x2c9c, 0x0000, 0x2c9e, 4298c2ecf20Sopenharmony_ci 0x0000, 0x2ca0, 0x0000, 0x2ca2, 0x0000, 0x2ca4, 0x0000, 0x2ca6, 4308c2ecf20Sopenharmony_ci 0x0000, 0x2ca8, 0x0000, 0x2caa, 0x0000, 0x2cac, 0x0000, 0x2cae, 4318c2ecf20Sopenharmony_ci 0x0000, 0x2cb0, 0x0000, 0x2cb2, 0x0000, 0x2cb4, 0x0000, 0x2cb6, 4328c2ecf20Sopenharmony_ci 0x0000, 0x2cb8, 0x0000, 0x2cba, 0x0000, 0x2cbc, 0x0000, 0x2cbe, 4338c2ecf20Sopenharmony_ci 0x0000, 0x2cc0, 0x0000, 0x2cc2, 0x0000, 0x2cc4, 0x0000, 0x2cc6, 4348c2ecf20Sopenharmony_ci 0x0000, 0x2cc8, 0x0000, 0x2cca, 0x0000, 0x2ccc, 0x0000, 0x2cce, 4358c2ecf20Sopenharmony_ci 0x0000, 0x2cd0, 0x0000, 0x2cd2, 0x0000, 0x2cd4, 0x0000, 0x2cd6, 4368c2ecf20Sopenharmony_ci 0x0000, 0x2cd8, 0x0000, 0x2cda, 0x0000, 0x2cdc, 0x0000, 0x2cde, 4378c2ecf20Sopenharmony_ci 0x0000, 0x2ce0, 0x0000, 0x2ce2, 0x0000, 0x0000, 0x0000, 0x0000, 4388c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4398c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4408c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4418c2ecf20Sopenharmony_ci}; 4428c2ecf20Sopenharmony_ci 4438c2ecf20Sopenharmony_cistatic const wchar_t t2_2d[256] = { 4448c2ecf20Sopenharmony_ci 0x10a0, 0x10a1, 0x10a2, 0x10a3, 0x10a4, 0x10a5, 0x10a6, 0x10a7, 4458c2ecf20Sopenharmony_ci 0x10a8, 0x10a9, 0x10aa, 0x10ab, 0x10ac, 0x10ad, 0x10ae, 0x10af, 4468c2ecf20Sopenharmony_ci 0x10b0, 0x10b1, 0x10b2, 0x10b3, 0x10b4, 0x10b5, 0x10b6, 0x10b7, 4478c2ecf20Sopenharmony_ci 0x10b8, 0x10b9, 0x10ba, 0x10bb, 0x10bc, 0x10bd, 0x10be, 0x10bf, 4488c2ecf20Sopenharmony_ci 0x10c0, 0x10c1, 0x10c2, 0x10c3, 0x10c4, 0x10c5, 0x0000, 0x0000, 4498c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4508c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4518c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4528c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4538c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4548c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4558c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4568c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4578c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4588c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4598c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4608c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4618c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4628c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4638c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4648c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4658c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4668c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4678c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4688c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4698c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4708c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4718c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4728c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4738c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4748c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4758c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4768c2ecf20Sopenharmony_ci}; 4778c2ecf20Sopenharmony_ci 4788c2ecf20Sopenharmony_cistatic const wchar_t t2_a6[256] = { 4798c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4808c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4818c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4828c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4838c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4848c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4858c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4868c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4878c2ecf20Sopenharmony_ci 0x0000, 0xa640, 0x0000, 0xa642, 0x0000, 0xa644, 0x0000, 0xa646, 4888c2ecf20Sopenharmony_ci 0x0000, 0xa648, 0x0000, 0xa64a, 0x0000, 0xa64c, 0x0000, 0xa64e, 4898c2ecf20Sopenharmony_ci 0x0000, 0xa650, 0x0000, 0xa652, 0x0000, 0xa654, 0x0000, 0xa656, 4908c2ecf20Sopenharmony_ci 0x0000, 0xa658, 0x0000, 0xa65a, 0x0000, 0xa65c, 0x0000, 0xa65e, 4918c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0xa662, 0x0000, 0xa664, 0x0000, 0xa666, 4928c2ecf20Sopenharmony_ci 0x0000, 0xa668, 0x0000, 0xa66a, 0x0000, 0xa66c, 0x0000, 0x0000, 4938c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4948c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4958c2ecf20Sopenharmony_ci 0x0000, 0xa680, 0x0000, 0xa682, 0x0000, 0xa684, 0x0000, 0xa686, 4968c2ecf20Sopenharmony_ci 0x0000, 0xa688, 0x0000, 0xa68a, 0x0000, 0xa68c, 0x0000, 0xa68e, 4978c2ecf20Sopenharmony_ci 0x0000, 0xa690, 0x0000, 0xa692, 0x0000, 0xa694, 0x0000, 0xa696, 4988c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 4998c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5008c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5018c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5028c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5038c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5048c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5058c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5068c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5078c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5088c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5098c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5108c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5118c2ecf20Sopenharmony_ci}; 5128c2ecf20Sopenharmony_ci 5138c2ecf20Sopenharmony_cistatic const wchar_t t2_a7[256] = { 5148c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5158c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5168c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5178c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5188c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0xa722, 0x0000, 0xa724, 0x0000, 0xa726, 5198c2ecf20Sopenharmony_ci 0x0000, 0xa728, 0x0000, 0xa72a, 0x0000, 0xa72c, 0x0000, 0xa72e, 5208c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0xa732, 0x0000, 0xa734, 0x0000, 0xa736, 5218c2ecf20Sopenharmony_ci 0x0000, 0xa738, 0x0000, 0xa73a, 0x0000, 0xa73c, 0x0000, 0xa73e, 5228c2ecf20Sopenharmony_ci 0x0000, 0xa740, 0x0000, 0xa742, 0x0000, 0xa744, 0x0000, 0xa746, 5238c2ecf20Sopenharmony_ci 0x0000, 0xa748, 0x0000, 0xa74a, 0x0000, 0xa74c, 0x0000, 0xa74e, 5248c2ecf20Sopenharmony_ci 0x0000, 0xa750, 0x0000, 0xa752, 0x0000, 0xa754, 0x0000, 0xa756, 5258c2ecf20Sopenharmony_ci 0x0000, 0xa758, 0x0000, 0xa75a, 0x0000, 0xa75c, 0x0000, 0xa75e, 5268c2ecf20Sopenharmony_ci 0x0000, 0xa760, 0x0000, 0xa762, 0x0000, 0xa764, 0x0000, 0xa766, 5278c2ecf20Sopenharmony_ci 0x0000, 0xa768, 0x0000, 0xa76a, 0x0000, 0xa76c, 0x0000, 0xa76e, 5288c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5298c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0xa779, 0x0000, 0xa77b, 0x0000, 0x0000, 0xa77e, 5308c2ecf20Sopenharmony_ci 0x0000, 0xa780, 0x0000, 0xa782, 0x0000, 0xa784, 0x0000, 0xa786, 5318c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0xa78b, 0x0000, 0x0000, 0x0000, 5328c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5338c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5348c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5358c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5368c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5378c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5388c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5398c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5408c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5418c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5428c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5438c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5448c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5458c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5468c2ecf20Sopenharmony_ci}; 5478c2ecf20Sopenharmony_ci 5488c2ecf20Sopenharmony_cistatic const wchar_t t2_ff[256] = { 5498c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5508c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5518c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5528c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5538c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5548c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5558c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5568c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5578c2ecf20Sopenharmony_ci 0x0000, 0xff21, 0xff22, 0xff23, 0xff24, 0xff25, 0xff26, 0xff27, 5588c2ecf20Sopenharmony_ci 0xff28, 0xff29, 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e, 0xff2f, 5598c2ecf20Sopenharmony_ci 0xff30, 0xff31, 0xff32, 0xff33, 0xff34, 0xff35, 0xff36, 0xff37, 5608c2ecf20Sopenharmony_ci 0xff38, 0xff39, 0xff3a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5618c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5628c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5638c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5648c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5658c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5668c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5678c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5688c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5698c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5708c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5718c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5728c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5738c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5748c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5758c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5768c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5778c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5788c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5798c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5808c2ecf20Sopenharmony_ci 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 5818c2ecf20Sopenharmony_ci}; 5828c2ecf20Sopenharmony_ci 5838c2ecf20Sopenharmony_cistatic const wchar_t *const toplevel[256] = { 5848c2ecf20Sopenharmony_ci t2_00, t2_01, t2_02, t2_03, t2_04, t2_05, NULL, NULL, 5858c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5868c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5878c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, t2_1d, t2_1e, t2_1f, 5888c2ecf20Sopenharmony_ci NULL, t2_21, NULL, NULL, t2_24, NULL, NULL, NULL, 5898c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, t2_2c, t2_2d, NULL, NULL, 5908c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5918c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5928c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5938c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5948c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5958c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5968c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5978c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5988c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 5998c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6008c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6018c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6028c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6038c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6048c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, t2_a6, t2_a7, 6058c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6068c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6078c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6088c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6098c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6108c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6118c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6128c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6138c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6148c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 6158c2ecf20Sopenharmony_ci NULL, NULL, NULL, NULL, NULL, NULL, NULL, t2_ff, 6168c2ecf20Sopenharmony_ci}; 6178c2ecf20Sopenharmony_ci 6188c2ecf20Sopenharmony_ci/** 6198c2ecf20Sopenharmony_ci * cifs_toupper - convert a wchar_t from lower to uppercase 6208c2ecf20Sopenharmony_ci * @in: character to convert from lower to uppercase 6218c2ecf20Sopenharmony_ci * 6228c2ecf20Sopenharmony_ci * This function consults the static tables above to convert a wchar_t from 6238c2ecf20Sopenharmony_ci * lower to uppercase. In the event that there is no mapping, the original 6248c2ecf20Sopenharmony_ci * "in" character is returned. 6258c2ecf20Sopenharmony_ci */ 6268c2ecf20Sopenharmony_ciwchar_t 6278c2ecf20Sopenharmony_cicifs_toupper(wchar_t in) 6288c2ecf20Sopenharmony_ci{ 6298c2ecf20Sopenharmony_ci unsigned char idx; 6308c2ecf20Sopenharmony_ci const wchar_t *tbl; 6318c2ecf20Sopenharmony_ci wchar_t out; 6328c2ecf20Sopenharmony_ci 6338c2ecf20Sopenharmony_ci /* grab upper byte */ 6348c2ecf20Sopenharmony_ci idx = (in & 0xff00) >> 8; 6358c2ecf20Sopenharmony_ci 6368c2ecf20Sopenharmony_ci /* find pointer to 2nd layer table */ 6378c2ecf20Sopenharmony_ci tbl = toplevel[idx]; 6388c2ecf20Sopenharmony_ci if (!tbl) 6398c2ecf20Sopenharmony_ci return in; 6408c2ecf20Sopenharmony_ci 6418c2ecf20Sopenharmony_ci /* grab lower byte */ 6428c2ecf20Sopenharmony_ci idx = in & 0xff; 6438c2ecf20Sopenharmony_ci 6448c2ecf20Sopenharmony_ci /* look up character in table */ 6458c2ecf20Sopenharmony_ci out = tbl[idx]; 6468c2ecf20Sopenharmony_ci if (out) 6478c2ecf20Sopenharmony_ci return out; 6488c2ecf20Sopenharmony_ci 6498c2ecf20Sopenharmony_ci return in; 6508c2ecf20Sopenharmony_ci} 651