summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ggml-common.h623
-rw-r--r--ggml-cuda/convert.cu19
-rw-r--r--ggml-cuda/vecdotq.cuh38
-rw-r--r--ggml-quants.h1
-rw-r--r--iqk-quantize.cpp77
-rw-r--r--iqk_mul_mat.cpp1
6 files changed, 475 insertions, 284 deletions
diff --git a/ggml-common.h b/ggml-common.h
index 4de80794..81175c64 100644
--- a/ggml-common.h
+++ b/ggml-common.h
@@ -1847,213 +1847,213 @@ GGML_TABLE_BEGIN(uint32_t, iq1s_grid_gpu, NGRID_IQ1S)
GGML_TABLE_END()
#endif
-GGML_TABLE_BEGIN(uint16_t, iq1bn_grid_u16, 3281)
- 0x0000, 0x0001, 0x0002, 0x0004, 0x0005, 0x0006, 0x0008, 0x0009, 0x000a, 0x0010, 0x0011, 0x0012, 0x0014, 0x0015, 0x0016, 0x0018,
- 0x0019, 0x001a, 0x0020, 0x0021, 0x0022, 0x0024, 0x0025, 0x0026, 0x0028, 0x0029, 0x002a, 0x0040, 0x0041, 0x0042, 0x0044, 0x0045,
- 0x0046, 0x0048, 0x0049, 0x004a, 0x0050, 0x0051, 0x0052, 0x0054, 0x0055, 0x0056, 0x0058, 0x0059, 0x005a, 0x0060, 0x0061, 0x0062,
- 0x0064, 0x0065, 0x0066, 0x0068, 0x0069, 0x006a, 0x0080, 0x0081, 0x0082, 0x0084, 0x0085, 0x0086, 0x0088, 0x0089, 0x008a, 0x0090,
- 0x0091, 0x0092, 0x0094, 0x0095, 0x0096, 0x0098, 0x0099, 0x009a, 0x00a0, 0x00a1, 0x00a2, 0x00a4, 0x00a5, 0x00a6, 0x00a8, 0x00a9,
- 0x00aa, 0x0100, 0x0101, 0x0102, 0x0104, 0x0105, 0x0106, 0x0108, 0x0109, 0x010a, 0x0110, 0x0111, 0x0112, 0x0114, 0x0115, 0x0116,
- 0x0118, 0x0119, 0x011a, 0x0120, 0x0121, 0x0122, 0x0124, 0x0125, 0x0126, 0x0128, 0x0129, 0x012a, 0x0140, 0x0141, 0x0142, 0x0144,
- 0x0145, 0x0146, 0x0148, 0x0149, 0x014a, 0x0150, 0x0151, 0x0152, 0x0154, 0x0155, 0x0156, 0x0158, 0x0159, 0x015a, 0x0160, 0x0161,
- 0x0162, 0x0164, 0x0165, 0x0166, 0x0168, 0x0169, 0x016a, 0x0180, 0x0181, 0x0182, 0x0184, 0x0185, 0x0186, 0x0188, 0x0189, 0x018a,
- 0x0190, 0x0191, 0x0192, 0x0194, 0x0195, 0x0196, 0x0198, 0x0199, 0x019a, 0x01a0, 0x01a1, 0x01a2, 0x01a4, 0x01a5, 0x01a6, 0x01a8,
- 0x01a9, 0x01aa, 0x0200, 0x0201, 0x0202, 0x0204, 0x0205, 0x0206, 0x0208, 0x0209, 0x020a, 0x0210, 0x0211, 0x0212, 0x0214, 0x0215,
- 0x0216, 0x0218, 0x0219, 0x021a, 0x0220, 0x0221, 0x0222, 0x0224, 0x0225, 0x0226, 0x0228, 0x0229, 0x022a, 0x0240, 0x0241, 0x0242,
- 0x0244, 0x0245, 0x0246, 0x0248, 0x0249, 0x024a, 0x0250, 0x0251, 0x0252, 0x0254, 0x0255, 0x0256, 0x0258, 0x0259, 0x025a, 0x0260,
- 0x0261, 0x0262, 0x0264, 0x0265, 0x0266, 0x0268, 0x0269, 0x026a, 0x0280, 0x0281, 0x0282, 0x0284, 0x0285, 0x0286, 0x0288, 0x0289,
- 0x028a, 0x0290, 0x0291, 0x0292, 0x0294, 0x0295, 0x0296, 0x0298, 0x0299, 0x029a, 0x02a0, 0x02a1, 0x02a2, 0x02a4, 0x02a5, 0x02a6,
- 0x02a8, 0x02a9, 0x02aa, 0x0400, 0x0401, 0x0402, 0x0404, 0x0405, 0x0406, 0x0408, 0x0409, 0x040a, 0x0410, 0x0411, 0x0412, 0x0414,
- 0x0415, 0x0416, 0x0418, 0x0419, 0x041a, 0x0420, 0x0421, 0x0422, 0x0424, 0x0425, 0x0426, 0x0428, 0x0429, 0x042a, 0x0440, 0x0441,
- 0x0442, 0x0444, 0x0445, 0x0446, 0x0448, 0x0449, 0x044a, 0x0450, 0x0451, 0x0452, 0x0454, 0x0455, 0x0456, 0x0458, 0x0459, 0x045a,
- 0x0460, 0x0461, 0x0462, 0x0464, 0x0465, 0x0466, 0x0468, 0x0469, 0x046a, 0x0480, 0x0481, 0x0482, 0x0484, 0x0485, 0x0486, 0x0488,
- 0x0489, 0x048a, 0x0490, 0x0491, 0x0492, 0x0494, 0x0495, 0x0496, 0x0498, 0x0499, 0x049a, 0x04a0, 0x04a1, 0x04a2, 0x04a4, 0x04a5,
- 0x04a6, 0x04a8, 0x04a9, 0x04aa, 0x0500, 0x0501, 0x0502, 0x0504, 0x0505, 0x0506, 0x0508, 0x0509, 0x050a, 0x0510, 0x0511, 0x0512,
- 0x0514, 0x0515, 0x0516, 0x0518, 0x0519, 0x051a, 0x0520, 0x0521, 0x0522, 0x0524, 0x0525, 0x0526, 0x0528, 0x0529, 0x052a, 0x0540,
- 0x0541, 0x0542, 0x0544, 0x0545, 0x0546, 0x0548, 0x0549, 0x054a, 0x0550, 0x0551, 0x0552, 0x0554, 0x0555, 0x0556, 0x0558, 0x0559,
- 0x055a, 0x0560, 0x0561, 0x0562, 0x0564, 0x0565, 0x0566, 0x0568, 0x0569, 0x056a, 0x0580, 0x0581, 0x0582, 0x0584, 0x0585, 0x0586,
- 0x0588, 0x0589, 0x058a, 0x0590, 0x0591, 0x0592, 0x0594, 0x0595, 0x0596, 0x0598, 0x0599, 0x059a, 0x05a0, 0x05a1, 0x05a2, 0x05a4,
- 0x05a5, 0x05a6, 0x05a8, 0x05a9, 0x05aa, 0x0600, 0x0601, 0x0602, 0x0604, 0x0605, 0x0606, 0x0608, 0x0609, 0x060a, 0x0610, 0x0611,
- 0x0612, 0x0614, 0x0615, 0x0616, 0x0618, 0x0619, 0x061a, 0x0620, 0x0621, 0x0622, 0x0624, 0x0625, 0x0626, 0x0628, 0x0629, 0x062a,
- 0x0640, 0x0641, 0x0642, 0x0644, 0x0645, 0x0646, 0x0648, 0x0649, 0x064a, 0x0650, 0x0651, 0x0652, 0x0654, 0x0655, 0x0656, 0x0658,
- 0x0659, 0x065a, 0x0660, 0x0661, 0x0662, 0x0664, 0x0665, 0x0666, 0x0668, 0x0669, 0x066a, 0x0680, 0x0681, 0x0682, 0x0684, 0x0685,
- 0x0686, 0x0688, 0x0689, 0x068a, 0x0690, 0x0691, 0x0692, 0x0694, 0x0695, 0x0696, 0x0698, 0x0699, 0x069a, 0x06a0, 0x06a1, 0x06a2,
- 0x06a4, 0x06a5, 0x06a6, 0x06a8, 0x06a9, 0x06aa, 0x0800, 0x0801, 0x0802, 0x0804, 0x0805, 0x0806, 0x0808, 0x0809, 0x080a, 0x0810,
- 0x0811, 0x0812, 0x0814, 0x0815, 0x0816, 0x0818, 0x0819, 0x081a, 0x0820, 0x0821, 0x0822, 0x0824, 0x0825, 0x0826, 0x0828, 0x0829,
- 0x082a, 0x0840, 0x0841, 0x0842, 0x0844, 0x0845, 0x0846, 0x0848, 0x0849, 0x084a, 0x0850, 0x0851, 0x0852, 0x0854, 0x0855, 0x0856,
- 0x0858, 0x0859, 0x085a, 0x0860, 0x0861, 0x0862, 0x0864, 0x0865, 0x0866, 0x0868, 0x0869, 0x086a, 0x0880, 0x0881, 0x0882, 0x0884,
- 0x0885, 0x0886, 0x0888, 0x0889, 0x088a, 0x0890, 0x0891, 0x0892, 0x0894, 0x0895, 0x0896, 0x0898, 0x0899, 0x089a, 0x08a0, 0x08a1,
- 0x08a2, 0x08a4, 0x08a5, 0x08a6, 0x08a8, 0x08a9, 0x08aa, 0x0900, 0x0901, 0x0902, 0x0904, 0x0905, 0x0906, 0x0908, 0x0909, 0x090a,
- 0x0910, 0x0911, 0x0912, 0x0914, 0x0915, 0x0916, 0x0918, 0x0919, 0x091a, 0x0920, 0x0921, 0x0922, 0x0924, 0x0925, 0x0926, 0x0928,
- 0x0929, 0x092a, 0x0940, 0x0941, 0x0942, 0x0944, 0x0945, 0x0946, 0x0948, 0x0949, 0x094a, 0x0950, 0x0951, 0x0952, 0x0954, 0x0955,
- 0x0956, 0x0958, 0x0959, 0x095a, 0x0960, 0x0961, 0x0962, 0x0964, 0x0965, 0x0966, 0x0968, 0x0969, 0x096a, 0x0980, 0x0981, 0x0982,
- 0x0984, 0x0985, 0x0986, 0x0988, 0x0989, 0x098a, 0x0990, 0x0991, 0x0992, 0x0994, 0x0995, 0x0996, 0x0998, 0x0999, 0x099a, 0x09a0,
- 0x09a1, 0x09a2, 0x09a4, 0x09a5, 0x09a6, 0x09a8, 0x09a9, 0x09aa, 0x0a00, 0x0a01, 0x0a02, 0x0a04, 0x0a05, 0x0a06, 0x0a08, 0x0a09,
- 0x0a0a, 0x0a10, 0x0a11, 0x0a12, 0x0a14, 0x0a15, 0x0a16, 0x0a18, 0x0a19, 0x0a1a, 0x0a20, 0x0a21, 0x0a22, 0x0a24, 0x0a25, 0x0a26,
- 0x0a28, 0x0a29, 0x0a2a, 0x0a40, 0x0a41, 0x0a42, 0x0a44, 0x0a45, 0x0a46, 0x0a48, 0x0a49, 0x0a4a, 0x0a50, 0x0a51, 0x0a52, 0x0a54,
- 0x0a55, 0x0a56, 0x0a58, 0x0a59, 0x0a5a, 0x0a60, 0x0a61, 0x0a62, 0x0a64, 0x0a65, 0x0a66, 0x0a68, 0x0a69, 0x0a6a, 0x0a80, 0x0a81,
- 0x0a82, 0x0a84, 0x0a85, 0x0a86, 0x0a88, 0x0a89, 0x0a8a, 0x0a90, 0x0a91, 0x0a92, 0x0a94, 0x0a95, 0x0a96, 0x0a98, 0x0a99, 0x0a9a,
- 0x0aa0, 0x0aa1, 0x0aa2, 0x0aa4, 0x0aa5, 0x0aa6, 0x0aa8, 0x0aa9, 0x0aaa, 0x1000, 0x1001, 0x1002, 0x1004, 0x1005, 0x1006, 0x1008,
- 0x1009, 0x100a, 0x1010, 0x1011, 0x1012, 0x1014, 0x1015, 0x1016, 0x1018, 0x1019, 0x101a, 0x1020, 0x1021, 0x1022, 0x1024, 0x1025,
- 0x1026, 0x1028, 0x1029, 0x102a, 0x1040, 0x1041, 0x1042, 0x1044, 0x1045, 0x1046, 0x1048, 0x1049, 0x104a, 0x1050, 0x1051, 0x1052,
- 0x1054, 0x1055, 0x1056, 0x1058, 0x1059, 0x105a, 0x1060, 0x1061, 0x1062, 0x1064, 0x1065, 0x1066, 0x1068, 0x1069, 0x106a, 0x1080,
- 0x1081, 0x1082, 0x1084, 0x1085, 0x1086, 0x1088, 0x1089, 0x108a, 0x1090, 0x1091, 0x1092, 0x1094, 0x1095, 0x1096, 0x1098, 0x1099,
- 0x109a, 0x10a0, 0x10a1, 0x10a2, 0x10a4, 0x10a5, 0x10a6, 0x10a8, 0x10a9, 0x10aa, 0x1100, 0x1101, 0x1102, 0x1104, 0x1105, 0x1106,
- 0x1108, 0x1109, 0x110a, 0x1110, 0x1111, 0x1112, 0x1114, 0x1115, 0x1116, 0x1118, 0x1119, 0x111a, 0x1120, 0x1121, 0x1122, 0x1124,
- 0x1125, 0x1126, 0x1128, 0x1129, 0x112a, 0x1140, 0x1141, 0x1142, 0x1144, 0x1145, 0x1146, 0x1148, 0x1149, 0x114a, 0x1150, 0x1151,
- 0x1152, 0x1154, 0x1155, 0x1156, 0x1158, 0x1159, 0x115a, 0x1160, 0x1161, 0x1162, 0x1164, 0x1165, 0x1166, 0x1168, 0x1169, 0x116a,
- 0x1180, 0x1181, 0x1182, 0x1184, 0x1185, 0x1186, 0x1188, 0x1189, 0x118a, 0x1190, 0x1191, 0x1192, 0x1194, 0x1195, 0x1196, 0x1198,
- 0x1199, 0x119a, 0x11a0, 0x11a1, 0x11a2, 0x11a4, 0x11a5, 0x11a6, 0x11a8, 0x11a9, 0x11aa, 0x1200, 0x1201, 0x1202, 0x1204, 0x1205,
- 0x1206, 0x1208, 0x1209, 0x120a, 0x1210, 0x1211, 0x1212, 0x1214, 0x1215, 0x1216, 0x1218, 0x1219, 0x121a, 0x1220, 0x1221, 0x1222,
- 0x1224, 0x1225, 0x1226, 0x1228, 0x1229, 0x122a, 0x1240, 0x1241, 0x1242, 0x1244, 0x1245, 0x1246, 0x1248, 0x1249, 0x124a, 0x1250,
- 0x1251, 0x1252, 0x1254, 0x1255, 0x1256, 0x1258, 0x1259, 0x125a, 0x1260, 0x1261, 0x1262, 0x1264, 0x1265, 0x1266, 0x1268, 0x1269,
- 0x126a, 0x1280, 0x1281, 0x1282, 0x1284, 0x1285, 0x1286, 0x1288, 0x1289, 0x128a, 0x1290, 0x1291, 0x1292, 0x1294, 0x1295, 0x1296,
- 0x1298, 0x1299, 0x129a, 0x12a0, 0x12a1, 0x12a2, 0x12a4, 0x12a5, 0x12a6, 0x12a8, 0x12a9, 0x12aa, 0x1400, 0x1401, 0x1402, 0x1404,
- 0x1405, 0x1406, 0x1408, 0x1409, 0x140a, 0x1410, 0x1411, 0x1412, 0x1414, 0x1415, 0x1416, 0x1418, 0x1419, 0x141a, 0x1420, 0x1421,
- 0x1422, 0x1424, 0x1425, 0x1426, 0x1428, 0x1429, 0x142a, 0x1440, 0x1441, 0x1442, 0x1444, 0x1445, 0x1446, 0x1448, 0x1449, 0x144a,
- 0x1450, 0x1451, 0x1452, 0x1454, 0x1455, 0x1456, 0x1458, 0x1459, 0x145a, 0x1460, 0x1461, 0x1462, 0x1464, 0x1465, 0x1466, 0x1468,
- 0x1469, 0x146a, 0x1480, 0x1481, 0x1482, 0x1484, 0x1485, 0x1486, 0x1488, 0x1489, 0x148a, 0x1490, 0x1491, 0x1492, 0x1494, 0x1495,
- 0x1496, 0x1498, 0x1499, 0x149a, 0x14a0, 0x14a1, 0x14a2, 0x14a4, 0x14a5, 0x14a6, 0x14a8, 0x14a9, 0x14aa, 0x1500, 0x1501, 0x1502,
- 0x1504, 0x1505, 0x1506, 0x1508, 0x1509, 0x150a, 0x1510, 0x1511, 0x1512, 0x1514, 0x1515, 0x1516, 0x1518, 0x1519, 0x151a, 0x1520,
- 0x1521, 0x1522, 0x1524, 0x1525, 0x1526, 0x1528, 0x1529, 0x152a, 0x1540, 0x1541, 0x1542, 0x1544, 0x1545, 0x1546, 0x1548, 0x1549,
- 0x154a, 0x1550, 0x1551, 0x1552, 0x1554, 0x1555, 0x1556, 0x1558, 0x1559, 0x155a, 0x1560, 0x1561, 0x1562, 0x1564, 0x1565, 0x1566,
- 0x1568, 0x1569, 0x156a, 0x1580, 0x1581, 0x1582, 0x1584, 0x1585, 0x1586, 0x1588, 0x1589, 0x158a, 0x1590, 0x1591, 0x1592, 0x1594,
- 0x1595, 0x1596, 0x1598, 0x1599, 0x159a, 0x15a0, 0x15a1, 0x15a2, 0x15a4, 0x15a5, 0x15a6, 0x15a8, 0x15a9, 0x15aa, 0x1600, 0x1601,
- 0x1602, 0x1604, 0x1605, 0x1606, 0x1608, 0x1609, 0x160a, 0x1610, 0x1611, 0x1612, 0x1614, 0x1615, 0x1616, 0x1618, 0x1619, 0x161a,
- 0x1620, 0x1621, 0x1622, 0x1624, 0x1625, 0x1626, 0x1628, 0x1629, 0x162a, 0x1640, 0x1641, 0x1642, 0x1644, 0x1645, 0x1646, 0x1648,
- 0x1649, 0x164a, 0x1650, 0x1651, 0x1652, 0x1654, 0x1655, 0x1656, 0x1658, 0x1659, 0x165a, 0x1660, 0x1661, 0x1662, 0x1664, 0x1665,
- 0x1666, 0x1668, 0x1669, 0x166a, 0x1680, 0x1681, 0x1682, 0x1684, 0x1685, 0x1686, 0x1688, 0x1689, 0x168a, 0x1690, 0x1691, 0x1692,
- 0x1694, 0x1695, 0x1696, 0x1698, 0x1699, 0x169a, 0x16a0, 0x16a1, 0x16a2, 0x16a4, 0x16a5, 0x16a6, 0x16a8, 0x16a9, 0x16aa, 0x1800,
- 0x1801, 0x1802, 0x1804, 0x1805, 0x1806, 0x1808, 0x1809, 0x180a, 0x1810, 0x1811, 0x1812, 0x1814, 0x1815, 0x1816, 0x1818, 0x1819,
- 0x181a, 0x1820, 0x1821, 0x1822, 0x1824, 0x1825, 0x1826, 0x1828, 0x1829, 0x182a, 0x1840, 0x1841, 0x1842, 0x1844, 0x1845, 0x1846,
- 0x1848, 0x1849, 0x184a, 0x1850, 0x1851, 0x1852, 0x1854, 0x1855, 0x1856, 0x1858, 0x1859, 0x185a, 0x1860, 0x1861, 0x1862, 0x1864,
- 0x1865, 0x1866, 0x1868, 0x1869, 0x186a, 0x1880, 0x1881, 0x1882, 0x1884, 0x1885, 0x1886, 0x1888, 0x1889, 0x188a, 0x1890, 0x1891,
- 0x1892, 0x1894, 0x1895, 0x1896, 0x1898, 0x1899, 0x189a, 0x18a0, 0x18a1, 0x18a2, 0x18a4, 0x18a5, 0x18a6, 0x18a8, 0x18a9, 0x18aa,
- 0x1900, 0x1901, 0x1902, 0x1904, 0x1905, 0x1906, 0x1908, 0x1909, 0x190a, 0x1910, 0x1911, 0x1912, 0x1914, 0x1915, 0x1916, 0x1918,
- 0x1919, 0x191a, 0x1920, 0x1921, 0x1922, 0x1924, 0x1925, 0x1926, 0x1928, 0x1929, 0x192a, 0x1940, 0x1941, 0x1942, 0x1944, 0x1945,
- 0x1946, 0x1948, 0x1949, 0x194a, 0x1950, 0x1951, 0x1952, 0x1954, 0x1955, 0x1956, 0x1958, 0x1959, 0x195a, 0x1960, 0x1961, 0x1962,
- 0x1964, 0x1965, 0x1966, 0x1968, 0x1969, 0x196a, 0x1980, 0x1981, 0x1982, 0x1984, 0x1985, 0x1986, 0x1988, 0x1989, 0x198a, 0x1990,
- 0x1991, 0x1992, 0x1994, 0x1995, 0x1996, 0x1998, 0x1999, 0x199a, 0x19a0, 0x19a1, 0x19a2, 0x19a4, 0x19a5, 0x19a6, 0x19a8, 0x19a9,
- 0x19aa, 0x1a00, 0x1a01, 0x1a02, 0x1a04, 0x1a05, 0x1a06, 0x1a08, 0x1a09, 0x1a0a, 0x1a10, 0x1a11, 0x1a12, 0x1a14, 0x1a15, 0x1a16,
- 0x1a18, 0x1a19, 0x1a1a, 0x1a20, 0x1a21, 0x1a22, 0x1a24, 0x1a25, 0x1a26, 0x1a28, 0x1a29, 0x1a2a, 0x1a40, 0x1a41, 0x1a42, 0x1a44,
- 0x1a45, 0x1a46, 0x1a48, 0x1a49, 0x1a4a, 0x1a50, 0x1a51, 0x1a52, 0x1a54, 0x1a55, 0x1a56, 0x1a58, 0x1a59, 0x1a5a, 0x1a60, 0x1a61,
- 0x1a62, 0x1a64, 0x1a65, 0x1a66, 0x1a68, 0x1a69, 0x1a6a, 0x1a80, 0x1a81, 0x1a82, 0x1a84, 0x1a85, 0x1a86, 0x1a88, 0x1a89, 0x1a8a,
- 0x1a90, 0x1a91, 0x1a92, 0x1a94, 0x1a95, 0x1a96, 0x1a98, 0x1a99, 0x1a9a, 0x1aa0, 0x1aa1, 0x1aa2, 0x1aa4, 0x1aa5, 0x1aa6, 0x1aa8,
- 0x1aa9, 0x1aaa, 0x2000, 0x2001, 0x2002, 0x2004, 0x2005, 0x2006, 0x2008, 0x2009, 0x200a, 0x2010, 0x2011, 0x2012, 0x2014, 0x2015,
- 0x2016, 0x2018, 0x2019, 0x201a, 0x2020, 0x2021, 0x2022, 0x2024, 0x2025, 0x2026, 0x2028, 0x2029, 0x202a, 0x2040, 0x2041, 0x2042,
- 0x2044, 0x2045, 0x2046, 0x2048, 0x2049, 0x204a, 0x2050, 0x2051, 0x2052, 0x2054, 0x2055, 0x2056, 0x2058, 0x2059, 0x205a, 0x2060,
- 0x2061, 0x2062, 0x2064, 0x2065, 0x2066, 0x2068, 0x2069, 0x206a, 0x2080, 0x2081, 0x2082, 0x2084, 0x2085, 0x2086, 0x2088, 0x2089,
- 0x208a, 0x2090, 0x2091, 0x2092, 0x2094, 0x2095, 0x2096, 0x2098, 0x2099, 0x209a, 0x20a0, 0x20a1, 0x20a2, 0x20a4, 0x20a5, 0x20a6,
- 0x20a8, 0x20a9, 0x20aa, 0x2100, 0x2101, 0x2102, 0x2104, 0x2105, 0x2106, 0x2108, 0x2109, 0x210a, 0x2110, 0x2111, 0x2112, 0x2114,
- 0x2115, 0x2116, 0x2118, 0x2119, 0x211a, 0x2120, 0x2121, 0x2122, 0x2124, 0x2125, 0x2126, 0x2128, 0x2129, 0x212a, 0x2140, 0x2141,
- 0x2142, 0x2144, 0x2145, 0x2146, 0x2148, 0x2149, 0x214a, 0x2150, 0x2151, 0x2152, 0x2154, 0x2155, 0x2156, 0x2158, 0x2159, 0x215a,
- 0x2160, 0x2161, 0x2162, 0x2164, 0x2165, 0x2166, 0x2168, 0x2169, 0x216a, 0x2180, 0x2181, 0x2182, 0x2184, 0x2185, 0x2186, 0x2188,
- 0x2189, 0x218a, 0x2190, 0x2191, 0x2192, 0x2194, 0x2195, 0x2196, 0x2198, 0x2199, 0x219a, 0x21a0, 0x21a1, 0x21a2, 0x21a4, 0x21a5,
- 0x21a6, 0x21a8, 0x21a9, 0x21aa, 0x2200, 0x2201, 0x2202, 0x2204, 0x2205, 0x2206, 0x2208, 0x2209, 0x220a, 0x2210, 0x2211, 0x2212,
- 0x2214, 0x2215, 0x2216, 0x2218, 0x2219, 0x221a, 0x2220, 0x2221, 0x2222, 0x2224, 0x2225, 0x2226, 0x2228, 0x2229, 0x222a, 0x2240,
- 0x2241, 0x2242, 0x2244, 0x2245, 0x2246, 0x2248, 0x2249, 0x224a, 0x2250, 0x2251, 0x2252, 0x2254, 0x2255, 0x2256, 0x2258, 0x2259,
- 0x225a, 0x2260, 0x2261, 0x2262, 0x2264, 0x2265, 0x2266, 0x2268, 0x2269, 0x226a, 0x2280, 0x2281, 0x2282, 0x2284, 0x2285, 0x2286,
- 0x2288, 0x2289, 0x228a, 0x2290, 0x2291, 0x2292, 0x2294, 0x2295, 0x2296, 0x2298, 0x2299, 0x229a, 0x22a0, 0x22a1, 0x22a2, 0x22a4,
- 0x22a5, 0x22a6, 0x22a8, 0x22a9, 0x22aa, 0x2400, 0x2401, 0x2402, 0x2404, 0x2405, 0x2406, 0x2408, 0x2409, 0x240a, 0x2410, 0x2411,
- 0x2412, 0x2414, 0x2415, 0x2416, 0x2418, 0x2419, 0x241a, 0x2420, 0x2421, 0x2422, 0x2424, 0x2425, 0x2426, 0x2428, 0x2429, 0x242a,
- 0x2440, 0x2441, 0x2442, 0x2444, 0x2445, 0x2446, 0x2448, 0x2449, 0x244a, 0x2450, 0x2451, 0x2452, 0x2454, 0x2455, 0x2456, 0x2458,
- 0x2459, 0x245a, 0x2460, 0x2461, 0x2462, 0x2464, 0x2465, 0x2466, 0x2468, 0x2469, 0x246a, 0x2480, 0x2481, 0x2482, 0x2484, 0x2485,
- 0x2486, 0x2488, 0x2489, 0x248a, 0x2490, 0x2491, 0x2492, 0x2494, 0x2495, 0x2496, 0x2498, 0x2499, 0x249a, 0x24a0, 0x24a1, 0x24a2,
- 0x24a4, 0x24a5, 0x24a6, 0x24a8, 0x24a9, 0x24aa, 0x2500, 0x2501, 0x2502, 0x2504, 0x2505, 0x2506, 0x2508, 0x2509, 0x250a, 0x2510,
- 0x2511, 0x2512, 0x2514, 0x2515, 0x2516, 0x2518, 0x2519, 0x251a, 0x2520, 0x2521, 0x2522, 0x2524, 0x2525, 0x2526, 0x2528, 0x2529,
- 0x252a, 0x2540, 0x2541, 0x2542, 0x2544, 0x2545, 0x2546, 0x2548, 0x2549, 0x254a, 0x2550, 0x2551, 0x2552, 0x2554, 0x2555, 0x2556,
- 0x2558, 0x2559, 0x255a, 0x2560, 0x2561, 0x2562, 0x2564, 0x2565, 0x2566, 0x2568, 0x2569, 0x256a, 0x2580, 0x2581, 0x2582, 0x2584,
- 0x2585, 0x2586, 0x2588, 0x2589, 0x258a, 0x2590, 0x2591, 0x2592, 0x2594, 0x2595, 0x2596, 0x2598, 0x2599, 0x259a, 0x25a0, 0x25a1,
- 0x25a2, 0x25a4, 0x25a5, 0x25a6, 0x25a8, 0x25a9, 0x25aa, 0x2600, 0x2601, 0x2602, 0x2604, 0x2605, 0x2606, 0x2608, 0x2609, 0x260a,
- 0x2610, 0x2611, 0x2612, 0x2614, 0x2615, 0x2616, 0x2618, 0x2619, 0x261a, 0x2620, 0x2621, 0x2622, 0x2624, 0x2625, 0x2626, 0x2628,
- 0x2629, 0x262a, 0x2640, 0x2641, 0x2642, 0x2644, 0x2645, 0x2646, 0x2648, 0x2649, 0x264a, 0x2650, 0x2651, 0x2652, 0x2654, 0x2655,
- 0x2656, 0x2658, 0x2659, 0x265a, 0x2660, 0x2661, 0x2662, 0x2664, 0x2665, 0x2666, 0x2668, 0x2669, 0x266a, 0x2680, 0x2681, 0x2682,
- 0x2684, 0x2685, 0x2686, 0x2688, 0x2689, 0x268a, 0x2690, 0x2691, 0x2692, 0x2694, 0x2695, 0x2696, 0x2698, 0x2699, 0x269a, 0x26a0,
- 0x26a1, 0x26a2, 0x26a4, 0x26a5, 0x26a6, 0x26a8, 0x26a9, 0x26aa, 0x2800, 0x2801, 0x2802, 0x2804, 0x2805, 0x2806, 0x2808, 0x2809,
- 0x280a, 0x2810, 0x2811, 0x2812, 0x2814, 0x2815, 0x2816, 0x2818, 0x2819, 0x281a, 0x2820, 0x2821, 0x2822, 0x2824, 0x2825, 0x2826,
- 0x2828, 0x2829, 0x282a, 0x2840, 0x2841, 0x2842, 0x2844, 0x2845, 0x2846, 0x2848, 0x2849, 0x284a, 0x2850, 0x2851, 0x2852, 0x2854,
- 0x2855, 0x2856, 0x2858, 0x2859, 0x285a, 0x2860, 0x2861, 0x2862, 0x2864, 0x2865, 0x2866, 0x2868, 0x2869, 0x286a, 0x2880, 0x2881,
- 0x2882, 0x2884, 0x2885, 0x2886, 0x2888, 0x2889, 0x288a, 0x2890, 0x2891, 0x2892, 0x2894, 0x2895, 0x2896, 0x2898, 0x2899, 0x289a,
- 0x28a0, 0x28a1, 0x28a2, 0x28a4, 0x28a5, 0x28a6, 0x28a8, 0x28a9, 0x28aa, 0x2900, 0x2901, 0x2902, 0x2904, 0x2905, 0x2906, 0x2908,
- 0x2909, 0x290a, 0x2910, 0x2911, 0x2912, 0x2914, 0x2915, 0x2916, 0x2918, 0x2919, 0x291a, 0x2920, 0x2921, 0x2922, 0x2924, 0x2925,
- 0x2926, 0x2928, 0x2929, 0x292a, 0x2940, 0x2941, 0x2942, 0x2944, 0x2945, 0x2946, 0x2948, 0x2949, 0x294a, 0x2950, 0x2951, 0x2952,
- 0x2954, 0x2955, 0x2956, 0x2958, 0x2959, 0x295a, 0x2960, 0x2961, 0x2962, 0x2964, 0x2965, 0x2966, 0x2968, 0x2969, 0x296a, 0x2980,
- 0x2981, 0x2982, 0x2984, 0x2985, 0x2986, 0x2988, 0x2989, 0x298a, 0x2990, 0x2991, 0x2992, 0x2994, 0x2995, 0x2996, 0x2998, 0x2999,
- 0x299a, 0x29a0, 0x29a1, 0x29a2, 0x29a4, 0x29a5, 0x29a6, 0x29a8, 0x29a9, 0x29aa, 0x2a00, 0x2a01, 0x2a02, 0x2a04, 0x2a05, 0x2a06,
- 0x2a08, 0x2a09, 0x2a0a, 0x2a10, 0x2a11, 0x2a12, 0x2a14, 0x2a15, 0x2a16, 0x2a18, 0x2a19, 0x2a1a, 0x2a20, 0x2a21, 0x2a22, 0x2a24,
- 0x2a25, 0x2a26, 0x2a28, 0x2a29, 0x2a2a, 0x2a40, 0x2a41, 0x2a42, 0x2a44, 0x2a45, 0x2a46, 0x2a48, 0x2a49, 0x2a4a, 0x2a50, 0x2a51,
- 0x2a52, 0x2a54, 0x2a55, 0x2a56, 0x2a58, 0x2a59, 0x2a5a, 0x2a60, 0x2a61, 0x2a62, 0x2a64, 0x2a65, 0x2a66, 0x2a68, 0x2a69, 0x2a6a,
- 0x2a80, 0x2a81, 0x2a82, 0x2a84, 0x2a85, 0x2a86, 0x2a88, 0x2a89, 0x2a8a, 0x2a90, 0x2a91, 0x2a92, 0x2a94, 0x2a95, 0x2a96, 0x2a98,
- 0x2a99, 0x2a9a, 0x2aa0, 0x2aa1, 0x2aa2, 0x2aa4, 0x2aa5, 0x2aa6, 0x2aa8, 0x2aa9, 0x2aaa, 0x4000, 0x4001, 0x4002, 0x4004, 0x4005,
- 0x4006, 0x4008, 0x4009, 0x400a, 0x4010, 0x4011, 0x4012, 0x4014, 0x4015, 0x4016, 0x4018, 0x4019, 0x401a, 0x4020, 0x4021, 0x4022,
- 0x4024, 0x4025, 0x4026, 0x4028, 0x4029, 0x402a, 0x4040, 0x4041, 0x4042, 0x4044, 0x4045, 0x4046, 0x4048, 0x4049, 0x404a, 0x4050,
- 0x4051, 0x4052, 0x4054, 0x4055, 0x4056, 0x4058, 0x4059, 0x405a, 0x4060, 0x4061, 0x4062, 0x4064, 0x4065, 0x4066, 0x4068, 0x4069,
- 0x406a, 0x4080, 0x4081, 0x4082, 0x4084, 0x4085, 0x4086, 0x4088, 0x4089, 0x408a, 0x4090, 0x4091, 0x4092, 0x4094, 0x4095, 0x4096,
- 0x4098, 0x4099, 0x409a, 0x40a0, 0x40a1, 0x40a2, 0x40a4, 0x40a5, 0x40a6, 0x40a8, 0x40a9, 0x40aa, 0x4100, 0x4101, 0x4102, 0x4104,
- 0x4105, 0x4106, 0x4108, 0x4109, 0x410a, 0x4110, 0x4111, 0x4112, 0x4114, 0x4115, 0x4116, 0x4118, 0x4119, 0x411a, 0x4120, 0x4121,
- 0x4122, 0x4124, 0x4125, 0x4126, 0x4128, 0x4129, 0x412a, 0x4140, 0x4141, 0x4142, 0x4144, 0x4145, 0x4146, 0x4148, 0x4149, 0x414a,
- 0x4150, 0x4151, 0x4152, 0x4154, 0x4155, 0x4156, 0x4158, 0x4159, 0x415a, 0x4160, 0x4161, 0x4162, 0x4164, 0x4165, 0x4166, 0x4168,
- 0x4169, 0x416a, 0x4180, 0x4181, 0x4182, 0x4184, 0x4185, 0x4186, 0x4188, 0x4189, 0x418a, 0x4190, 0x4191, 0x4192, 0x4194, 0x4195,
- 0x4196, 0x4198, 0x4199, 0x419a, 0x41a0, 0x41a1, 0x41a2, 0x41a4, 0x41a5, 0x41a6, 0x41a8, 0x41a9, 0x41aa, 0x4200, 0x4201, 0x4202,
- 0x4204, 0x4205, 0x4206, 0x4208, 0x4209, 0x420a, 0x4210, 0x4211, 0x4212, 0x4214, 0x4215, 0x4216, 0x4218, 0x4219, 0x421a, 0x4220,
- 0x4221, 0x4222, 0x4224, 0x4225, 0x4226, 0x4228, 0x4229, 0x422a, 0x4240, 0x4241, 0x4242, 0x4244, 0x4245, 0x4246, 0x4248, 0x4249,
- 0x424a, 0x4250, 0x4251, 0x4252, 0x4254, 0x4255, 0x4256, 0x4258, 0x4259, 0x425a, 0x4260, 0x4261, 0x4262, 0x4264, 0x4265, 0x4266,
- 0x4268, 0x4269, 0x426a, 0x4280, 0x4281, 0x4282, 0x4284, 0x4285, 0x4286, 0x4288, 0x4289, 0x428a, 0x4290, 0x4291, 0x4292, 0x4294,
- 0x4295, 0x4296, 0x4298, 0x4299, 0x429a, 0x42a0, 0x42a1, 0x42a2, 0x42a4, 0x42a5, 0x42a6, 0x42a8, 0x42a9, 0x42aa, 0x4400, 0x4401,
- 0x4402, 0x4404, 0x4405, 0x4406, 0x4408, 0x4409, 0x440a, 0x4410, 0x4411, 0x4412, 0x4414, 0x4415, 0x4416, 0x4418, 0x4419, 0x441a,
- 0x4420, 0x4421, 0x4422, 0x4424, 0x4425, 0x4426, 0x4428, 0x4429, 0x442a, 0x4440, 0x4441, 0x4442, 0x4444, 0x4445, 0x4446, 0x4448,
- 0x4449, 0x444a, 0x4450, 0x4451, 0x4452, 0x4454, 0x4455, 0x4456, 0x4458, 0x4459, 0x445a, 0x4460, 0x4461, 0x4462, 0x4464, 0x4465,
- 0x4466, 0x4468, 0x4469, 0x446a, 0x4480, 0x4481, 0x4482, 0x4484, 0x4485, 0x4486, 0x4488, 0x4489, 0x448a, 0x4490, 0x4491, 0x4492,
- 0x4494, 0x4495, 0x4496, 0x4498, 0x4499, 0x449a, 0x44a0, 0x44a1, 0x44a2, 0x44a4, 0x44a5, 0x44a6, 0x44a8, 0x44a9, 0x44aa, 0x4500,
- 0x4501, 0x4502, 0x4504, 0x4505, 0x4506, 0x4508, 0x4509, 0x450a, 0x4510, 0x4511, 0x4512, 0x4514, 0x4515, 0x4516, 0x4518, 0x4519,
- 0x451a, 0x4520, 0x4521, 0x4522, 0x4524, 0x4525, 0x4526, 0x4528, 0x4529, 0x452a, 0x4540, 0x4541, 0x4542, 0x4544, 0x4545, 0x4546,
- 0x4548, 0x4549, 0x454a, 0x4550, 0x4551, 0x4552, 0x4554, 0x4555, 0x4556, 0x4558, 0x4559, 0x455a, 0x4560, 0x4561, 0x4562, 0x4564,
- 0x4565, 0x4566, 0x4568, 0x4569, 0x456a, 0x4580, 0x4581, 0x4582, 0x4584, 0x4585, 0x4586, 0x4588, 0x4589, 0x458a, 0x4590, 0x4591,
- 0x4592, 0x4594, 0x4595, 0x4596, 0x4598, 0x4599, 0x459a, 0x45a0, 0x45a1, 0x45a2, 0x45a4, 0x45a5, 0x45a6, 0x45a8, 0x45a9, 0x45aa,
- 0x4600, 0x4601, 0x4602, 0x4604, 0x4605, 0x4606, 0x4608, 0x4609, 0x460a, 0x4610, 0x4611, 0x4612, 0x4614, 0x4615, 0x4616, 0x4618,
- 0x4619, 0x461a, 0x4620, 0x4621, 0x4622, 0x4624, 0x4625, 0x4626, 0x4628, 0x4629, 0x462a, 0x4640, 0x4641, 0x4642, 0x4644, 0x4645,
- 0x4646, 0x4648, 0x4649, 0x464a, 0x4650, 0x4651, 0x4652, 0x4654, 0x4655, 0x4656, 0x4658, 0x4659, 0x465a, 0x4660, 0x4661, 0x4662,
- 0x4664, 0x4665, 0x4666, 0x4668, 0x4669, 0x466a, 0x4680, 0x4681, 0x4682, 0x4684, 0x4685, 0x4686, 0x4688, 0x4689, 0x468a, 0x4690,
- 0x4691, 0x4692, 0x4694, 0x4695, 0x4696, 0x4698, 0x4699, 0x469a, 0x46a0, 0x46a1, 0x46a2, 0x46a4, 0x46a5, 0x46a6, 0x46a8, 0x46a9,
- 0x46aa, 0x4800, 0x4801, 0x4802, 0x4804, 0x4805, 0x4806, 0x4808, 0x4809, 0x480a, 0x4810, 0x4811, 0x4812, 0x4814, 0x4815, 0x4816,
- 0x4818, 0x4819, 0x481a, 0x4820, 0x4821, 0x4822, 0x4824, 0x4825, 0x4826, 0x4828, 0x4829, 0x482a, 0x4840, 0x4841, 0x4842, 0x4844,
- 0x4845, 0x4846, 0x4848, 0x4849, 0x484a, 0x4850, 0x4851, 0x4852, 0x4854, 0x4855, 0x4856, 0x4858, 0x4859, 0x485a, 0x4860, 0x4861,
- 0x4862, 0x4864, 0x4865, 0x4866, 0x4868, 0x4869, 0x486a, 0x4880, 0x4881, 0x4882, 0x4884, 0x4885, 0x4886, 0x4888, 0x4889, 0x488a,
- 0x4890, 0x4891, 0x4892, 0x4894, 0x4895, 0x4896, 0x4898, 0x4899, 0x489a, 0x48a0, 0x48a1, 0x48a2, 0x48a4, 0x48a5, 0x48a6, 0x48a8,
- 0x48a9, 0x48aa, 0x4900, 0x4901, 0x4902, 0x4904, 0x4905, 0x4906, 0x4908, 0x4909, 0x490a, 0x4910, 0x4911, 0x4912, 0x4914, 0x4915,
- 0x4916, 0x4918, 0x4919, 0x491a, 0x4920, 0x4921, 0x4922, 0x4924, 0x4925, 0x4926, 0x4928, 0x4929, 0x492a, 0x4940, 0x4941, 0x4942,
- 0x4944, 0x4945, 0x4946, 0x4948, 0x4949, 0x494a, 0x4950, 0x4951, 0x4952, 0x4954, 0x4955, 0x4956, 0x4958, 0x4959, 0x495a, 0x4960,
- 0x4961, 0x4962, 0x4964, 0x4965, 0x4966, 0x4968, 0x4969, 0x496a, 0x4980, 0x4981, 0x4982, 0x4984, 0x4985, 0x4986, 0x4988, 0x4989,
- 0x498a, 0x4990, 0x4991, 0x4992, 0x4994, 0x4995, 0x4996, 0x4998, 0x4999, 0x499a, 0x49a0, 0x49a1, 0x49a2, 0x49a4, 0x49a5, 0x49a6,
- 0x49a8, 0x49a9, 0x49aa, 0x4a00, 0x4a01, 0x4a02, 0x4a04, 0x4a05, 0x4a06, 0x4a08, 0x4a09, 0x4a0a, 0x4a10, 0x4a11, 0x4a12, 0x4a14,
- 0x4a15, 0x4a16, 0x4a18, 0x4a19, 0x4a1a, 0x4a20, 0x4a21, 0x4a22, 0x4a24, 0x4a25, 0x4a26, 0x4a28, 0x4a29, 0x4a2a, 0x4a40, 0x4a41,
- 0x4a42, 0x4a44, 0x4a45, 0x4a46, 0x4a48, 0x4a49, 0x4a4a, 0x4a50, 0x4a51, 0x4a52, 0x4a54, 0x4a55, 0x4a56, 0x4a58, 0x4a59, 0x4a5a,
- 0x4a60, 0x4a61, 0x4a62, 0x4a64, 0x4a65, 0x4a66, 0x4a68, 0x4a69, 0x4a6a, 0x4a80, 0x4a81, 0x4a82, 0x4a84, 0x4a85, 0x4a86, 0x4a88,
- 0x4a89, 0x4a8a, 0x4a90, 0x4a91, 0x4a92, 0x4a94, 0x4a95, 0x4a96, 0x4a98, 0x4a99, 0x4a9a, 0x4aa0, 0x4aa1, 0x4aa2, 0x4aa4, 0x4aa5,
- 0x4aa6, 0x4aa8, 0x4aa9, 0x4aaa, 0x5000, 0x5001, 0x5002, 0x5004, 0x5005, 0x5006, 0x5008, 0x5009, 0x500a, 0x5010, 0x5011, 0x5012,
- 0x5014, 0x5015, 0x5016, 0x5018, 0x5019, 0x501a, 0x5020, 0x5021, 0x5022, 0x5024, 0x5025, 0x5026, 0x5028, 0x5029, 0x502a, 0x5040,
- 0x5041, 0x5042, 0x5044, 0x5045, 0x5046, 0x5048, 0x5049, 0x504a, 0x5050, 0x5051, 0x5052, 0x5054, 0x5055, 0x5056, 0x5058, 0x5059,
- 0x505a, 0x5060, 0x5061, 0x5062, 0x5064, 0x5065, 0x5066, 0x5068, 0x5069, 0x506a, 0x5080, 0x5081, 0x5082, 0x5084, 0x5085, 0x5086,
- 0x5088, 0x5089, 0x508a, 0x5090, 0x5091, 0x5092, 0x5094, 0x5095, 0x5096, 0x5098, 0x5099, 0x509a, 0x50a0, 0x50a1, 0x50a2, 0x50a4,
- 0x50a5, 0x50a6, 0x50a8, 0x50a9, 0x50aa, 0x5100, 0x5101, 0x5102, 0x5104, 0x5105, 0x5106, 0x5108, 0x5109, 0x510a, 0x5110, 0x5111,
- 0x5112, 0x5114, 0x5115, 0x5116, 0x5118, 0x5119, 0x511a, 0x5120, 0x5121, 0x5122, 0x5124, 0x5125, 0x5126, 0x5128, 0x5129, 0x512a,
- 0x5140, 0x5141, 0x5142, 0x5144, 0x5145, 0x5146, 0x5148, 0x5149, 0x514a, 0x5150, 0x5151, 0x5152, 0x5154, 0x5155, 0x5156, 0x5158,
- 0x5159, 0x515a, 0x5160, 0x5161, 0x5162, 0x5164, 0x5165, 0x5166, 0x5168, 0x5169, 0x516a, 0x5180, 0x5181, 0x5182, 0x5184, 0x5185,
- 0x5186, 0x5188, 0x5189, 0x518a, 0x5190, 0x5191, 0x5192, 0x5194, 0x5195, 0x5196, 0x5198, 0x5199, 0x519a, 0x51a0, 0x51a1, 0x51a2,
- 0x51a4, 0x51a5, 0x51a6, 0x51a8, 0x51a9, 0x51aa, 0x5200, 0x5201, 0x5202, 0x5204, 0x5205, 0x5206, 0x5208, 0x5209, 0x520a, 0x5210,
- 0x5211, 0x5212, 0x5214, 0x5215, 0x5216, 0x5218, 0x5219, 0x521a, 0x5220, 0x5221, 0x5222, 0x5224, 0x5225, 0x5226, 0x5228, 0x5229,
- 0x522a, 0x5240, 0x5241, 0x5242, 0x5244, 0x5245, 0x5246, 0x5248, 0x5249, 0x524a, 0x5250, 0x5251, 0x5252, 0x5254, 0x5255, 0x5256,
- 0x5258, 0x5259, 0x525a, 0x5260, 0x5261, 0x5262, 0x5264, 0x5265, 0x5266, 0x5268, 0x5269, 0x526a, 0x5280, 0x5281, 0x5282, 0x5284,
- 0x5285, 0x5286, 0x5288, 0x5289, 0x528a, 0x5290, 0x5291, 0x5292, 0x5294, 0x5295, 0x5296, 0x5298, 0x5299, 0x529a, 0x52a0, 0x52a1,
- 0x52a2, 0x52a4, 0x52a5, 0x52a6, 0x52a8, 0x52a9, 0x52aa, 0x5400, 0x5401, 0x5402, 0x5404, 0x5405, 0x5406, 0x5408, 0x5409, 0x540a,
- 0x5410, 0x5411, 0x5412, 0x5414, 0x5415, 0x5416, 0x5418, 0x5419, 0x541a, 0x5420, 0x5421, 0x5422, 0x5424, 0x5425, 0x5426, 0x5428,
- 0x5429, 0x542a, 0x5440, 0x5441, 0x5442, 0x5444, 0x5445, 0x5446, 0x5448, 0x5449, 0x544a, 0x5450, 0x5451, 0x5452, 0x5454, 0x5455,
- 0x5456, 0x5458, 0x5459, 0x545a, 0x5460, 0x5461, 0x5462, 0x5464, 0x5465, 0x5466, 0x5468, 0x5469, 0x546a, 0x5480, 0x5481, 0x5482,
- 0x5484, 0x5485, 0x5486, 0x5488, 0x5489, 0x548a, 0x5490, 0x5491, 0x5492, 0x5494, 0x5495, 0x5496, 0x5498, 0x5499, 0x549a, 0x54a0,
- 0x54a1, 0x54a2, 0x54a4, 0x54a5, 0x54a6, 0x54a8, 0x54a9, 0x54aa, 0x5500, 0x5501, 0x5502, 0x5504, 0x5505, 0x5506, 0x5508, 0x5509,
- 0x550a, 0x5510, 0x5511, 0x5512, 0x5514, 0x5515, 0x5516, 0x5518, 0x5519, 0x551a, 0x5520, 0x5521, 0x5522, 0x5524, 0x5525, 0x5526,
- 0x5528, 0x5529, 0x552a, 0x5540, 0x5541, 0x5542, 0x5544, 0x5545, 0x5546, 0x5548, 0x5549, 0x554a, 0x5550, 0x5551, 0x5552, 0x5554, 0x5555,
-GGML_TABLE_END()
+//GGML_TABLE_BEGIN(uint16_t, iq1bn_grid_u16, 3281)
+// 0x0000, 0x0001, 0x0002, 0x0004, 0x0005, 0x0006, 0x0008, 0x0009, 0x000a, 0x0010, 0x0011, 0x0012, 0x0014, 0x0015, 0x0016, 0x0018,
+// 0x0019, 0x001a, 0x0020, 0x0021, 0x0022, 0x0024, 0x0025, 0x0026, 0x0028, 0x0029, 0x002a, 0x0040, 0x0041, 0x0042, 0x0044, 0x0045,
+// 0x0046, 0x0048, 0x0049, 0x004a, 0x0050, 0x0051, 0x0052, 0x0054, 0x0055, 0x0056, 0x0058, 0x0059, 0x005a, 0x0060, 0x0061, 0x0062,
+// 0x0064, 0x0065, 0x0066, 0x0068, 0x0069, 0x006a, 0x0080, 0x0081, 0x0082, 0x0084, 0x0085, 0x0086, 0x0088, 0x0089, 0x008a, 0x0090,
+// 0x0091, 0x0092, 0x0094, 0x0095, 0x0096, 0x0098, 0x0099, 0x009a, 0x00a0, 0x00a1, 0x00a2, 0x00a4, 0x00a5, 0x00a6, 0x00a8, 0x00a9,
+// 0x00aa, 0x0100, 0x0101, 0x0102, 0x0104, 0x0105, 0x0106, 0x0108, 0x0109, 0x010a, 0x0110, 0x0111, 0x0112, 0x0114, 0x0115, 0x0116,
+// 0x0118, 0x0119, 0x011a, 0x0120, 0x0121, 0x0122, 0x0124, 0x0125, 0x0126, 0x0128, 0x0129, 0x012a, 0x0140, 0x0141, 0x0142, 0x0144,
+// 0x0145, 0x0146, 0x0148, 0x0149, 0x014a, 0x0150, 0x0151, 0x0152, 0x0154, 0x0155, 0x0156, 0x0158, 0x0159, 0x015a, 0x0160, 0x0161,
+// 0x0162, 0x0164, 0x0165, 0x0166, 0x0168, 0x0169, 0x016a, 0x0180, 0x0181, 0x0182, 0x0184, 0x0185, 0x0186, 0x0188, 0x0189, 0x018a,
+// 0x0190, 0x0191, 0x0192, 0x0194, 0x0195, 0x0196, 0x0198, 0x0199, 0x019a, 0x01a0, 0x01a1, 0x01a2, 0x01a4, 0x01a5, 0x01a6, 0x01a8,
+// 0x01a9, 0x01aa, 0x0200, 0x0201, 0x0202, 0x0204, 0x0205, 0x0206, 0x0208, 0x0209, 0x020a, 0x0210, 0x0211, 0x0212, 0x0214, 0x0215,
+// 0x0216, 0x0218, 0x0219, 0x021a, 0x0220, 0x0221, 0x0222, 0x0224, 0x0225, 0x0226, 0x0228, 0x0229, 0x022a, 0x0240, 0x0241, 0x0242,
+// 0x0244, 0x0245, 0x0246, 0x0248, 0x0249, 0x024a, 0x0250, 0x0251, 0x0252, 0x0254, 0x0255, 0x0256, 0x0258, 0x0259, 0x025a, 0x0260,
+// 0x0261, 0x0262, 0x0264, 0x0265, 0x0266, 0x0268, 0x0269, 0x026a, 0x0280, 0x0281, 0x0282, 0x0284, 0x0285, 0x0286, 0x0288, 0x0289,
+// 0x028a, 0x0290, 0x0291, 0x0292, 0x0294, 0x0295, 0x0296, 0x0298, 0x0299, 0x029a, 0x02a0, 0x02a1, 0x02a2, 0x02a4, 0x02a5, 0x02a6,
+// 0x02a8, 0x02a9, 0x02aa, 0x0400, 0x0401, 0x0402, 0x0404, 0x0405, 0x0406, 0x0408, 0x0409, 0x040a, 0x0410, 0x0411, 0x0412, 0x0414,
+// 0x0415, 0x0416, 0x0418, 0x0419, 0x041a, 0x0420, 0x0421, 0x0422, 0x0424, 0x0425, 0x0426, 0x0428, 0x0429, 0x042a, 0x0440, 0x0441,
+// 0x0442, 0x0444, 0x0445, 0x0446, 0x0448, 0x0449, 0x044a, 0x0450, 0x0451, 0x0452, 0x0454, 0x0455, 0x0456, 0x0458, 0x0459, 0x045a,
+// 0x0460, 0x0461, 0x0462, 0x0464, 0x0465, 0x0466, 0x0468, 0x0469, 0x046a, 0x0480, 0x0481, 0x0482, 0x0484, 0x0485, 0x0486, 0x0488,
+// 0x0489, 0x048a, 0x0490, 0x0491, 0x0492, 0x0494, 0x0495, 0x0496, 0x0498, 0x0499, 0x049a, 0x04a0, 0x04a1, 0x04a2, 0x04a4, 0x04a5,
+// 0x04a6, 0x04a8, 0x04a9, 0x04aa, 0x0500, 0x0501, 0x0502, 0x0504, 0x0505, 0x0506, 0x0508, 0x0509, 0x050a, 0x0510, 0x0511, 0x0512,
+// 0x0514, 0x0515, 0x0516, 0x0518, 0x0519, 0x051a, 0x0520, 0x0521, 0x0522, 0x0524, 0x0525, 0x0526, 0x0528, 0x0529, 0x052a, 0x0540,
+// 0x0541, 0x0542, 0x0544, 0x0545, 0x0546, 0x0548, 0x0549, 0x054a, 0x0550, 0x0551, 0x0552, 0x0554, 0x0555, 0x0556, 0x0558, 0x0559,
+// 0x055a, 0x0560, 0x0561, 0x0562, 0x0564, 0x0565, 0x0566, 0x0568, 0x0569, 0x056a, 0x0580, 0x0581, 0x0582, 0x0584, 0x0585, 0x0586,
+// 0x0588, 0x0589, 0x058a, 0x0590, 0x0591, 0x0592, 0x0594, 0x0595, 0x0596, 0x0598, 0x0599, 0x059a, 0x05a0, 0x05a1, 0x05a2, 0x05a4,
+// 0x05a5, 0x05a6, 0x05a8, 0x05a9, 0x05aa, 0x0600, 0x0601, 0x0602, 0x0604, 0x0605, 0x0606, 0x0608, 0x0609, 0x060a, 0x0610, 0x0611,
+// 0x0612, 0x0614, 0x0615, 0x0616, 0x0618, 0x0619, 0x061a, 0x0620, 0x0621, 0x0622, 0x0624, 0x0625, 0x0626, 0x0628, 0x0629, 0x062a,
+// 0x0640, 0x0641, 0x0642, 0x0644, 0x0645, 0x0646, 0x0648, 0x0649, 0x064a, 0x0650, 0x0651, 0x0652, 0x0654, 0x0655, 0x0656, 0x0658,
+// 0x0659, 0x065a, 0x0660, 0x0661, 0x0662, 0x0664, 0x0665, 0x0666, 0x0668, 0x0669, 0x066a, 0x0680, 0x0681, 0x0682, 0x0684, 0x0685,
+// 0x0686, 0x0688, 0x0689, 0x068a, 0x0690, 0x0691, 0x0692, 0x0694, 0x0695, 0x0696, 0x0698, 0x0699, 0x069a, 0x06a0, 0x06a1, 0x06a2,
+// 0x06a4, 0x06a5, 0x06a6, 0x06a8, 0x06a9, 0x06aa, 0x0800, 0x0801, 0x0802, 0x0804, 0x0805, 0x0806, 0x0808, 0x0809, 0x080a, 0x0810,
+// 0x0811, 0x0812, 0x0814, 0x0815, 0x0816, 0x0818, 0x0819, 0x081a, 0x0820, 0x0821, 0x0822, 0x0824, 0x0825, 0x0826, 0x0828, 0x0829,
+// 0x082a, 0x0840, 0x0841, 0x0842, 0x0844, 0x0845, 0x0846, 0x0848, 0x0849, 0x084a, 0x0850, 0x0851, 0x0852, 0x0854, 0x0855, 0x0856,
+// 0x0858, 0x0859, 0x085a, 0x0860, 0x0861, 0x0862, 0x0864, 0x0865, 0x0866, 0x0868, 0x0869, 0x086a, 0x0880, 0x0881, 0x0882, 0x0884,
+// 0x0885, 0x0886, 0x0888, 0x0889, 0x088a, 0x0890, 0x0891, 0x0892, 0x0894, 0x0895, 0x0896, 0x0898, 0x0899, 0x089a, 0x08a0, 0x08a1,
+// 0x08a2, 0x08a4, 0x08a5, 0x08a6, 0x08a8, 0x08a9, 0x08aa, 0x0900, 0x0901, 0x0902, 0x0904, 0x0905, 0x0906, 0x0908, 0x0909, 0x090a,
+// 0x0910, 0x0911, 0x0912, 0x0914, 0x0915, 0x0916, 0x0918, 0x0919, 0x091a, 0x0920, 0x0921, 0x0922, 0x0924, 0x0925, 0x0926, 0x0928,
+// 0x0929, 0x092a, 0x0940, 0x0941, 0x0942, 0x0944, 0x0945, 0x0946, 0x0948, 0x0949, 0x094a, 0x0950, 0x0951, 0x0952, 0x0954, 0x0955,
+// 0x0956, 0x0958, 0x0959, 0x095a, 0x0960, 0x0961, 0x0962, 0x0964, 0x0965, 0x0966, 0x0968, 0x0969, 0x096a, 0x0980, 0x0981, 0x0982,
+// 0x0984, 0x0985, 0x0986, 0x0988, 0x0989, 0x098a, 0x0990, 0x0991, 0x0992, 0x0994, 0x0995, 0x0996, 0x0998, 0x0999, 0x099a, 0x09a0,
+// 0x09a1, 0x09a2, 0x09a4, 0x09a5, 0x09a6, 0x09a8, 0x09a9, 0x09aa, 0x0a00, 0x0a01, 0x0a02, 0x0a04, 0x0a05, 0x0a06, 0x0a08, 0x0a09,
+// 0x0a0a, 0x0a10, 0x0a11, 0x0a12, 0x0a14, 0x0a15, 0x0a16, 0x0a18, 0x0a19, 0x0a1a, 0x0a20, 0x0a21, 0x0a22, 0x0a24, 0x0a25, 0x0a26,
+// 0x0a28, 0x0a29, 0x0a2a, 0x0a40, 0x0a41, 0x0a42, 0x0a44, 0x0a45, 0x0a46, 0x0a48, 0x0a49, 0x0a4a, 0x0a50, 0x0a51, 0x0a52, 0x0a54,
+// 0x0a55, 0x0a56, 0x0a58, 0x0a59, 0x0a5a, 0x0a60, 0x0a61, 0x0a62, 0x0a64, 0x0a65, 0x0a66, 0x0a68, 0x0a69, 0x0a6a, 0x0a80, 0x0a81,
+// 0x0a82, 0x0a84, 0x0a85, 0x0a86, 0x0a88, 0x0a89, 0x0a8a, 0x0a90, 0x0a91, 0x0a92, 0x0a94, 0x0a95, 0x0a96, 0x0a98, 0x0a99, 0x0a9a,
+// 0x0aa0, 0x0aa1, 0x0aa2, 0x0aa4, 0x0aa5, 0x0aa6, 0x0aa8, 0x0aa9, 0x0aaa, 0x1000, 0x1001, 0x1002, 0x1004, 0x1005, 0x1006, 0x1008,
+// 0x1009, 0x100a, 0x1010, 0x1011, 0x1012, 0x1014, 0x1015, 0x1016, 0x1018, 0x1019, 0x101a, 0x1020, 0x1021, 0x1022, 0x1024, 0x1025,
+// 0x1026, 0x1028, 0x1029, 0x102a, 0x1040, 0x1041, 0x1042, 0x1044, 0x1045, 0x1046, 0x1048, 0x1049, 0x104a, 0x1050, 0x1051, 0x1052,
+// 0x1054, 0x1055, 0x1056, 0x1058, 0x1059, 0x105a, 0x1060, 0x1061, 0x1062, 0x1064, 0x1065, 0x1066, 0x1068, 0x1069, 0x106a, 0x1080,
+// 0x1081, 0x1082, 0x1084, 0x1085, 0x1086, 0x1088, 0x1089, 0x108a, 0x1090, 0x1091, 0x1092, 0x1094, 0x1095, 0x1096, 0x1098, 0x1099,
+// 0x109a, 0x10a0, 0x10a1, 0x10a2, 0x10a4, 0x10a5, 0x10a6, 0x10a8, 0x10a9, 0x10aa, 0x1100, 0x1101, 0x1102, 0x1104, 0x1105, 0x1106,
+// 0x1108, 0x1109, 0x110a, 0x1110, 0x1111, 0x1112, 0x1114, 0x1115, 0x1116, 0x1118, 0x1119, 0x111a, 0x1120, 0x1121, 0x1122, 0x1124,
+// 0x1125, 0x1126, 0x1128, 0x1129, 0x112a, 0x1140, 0x1141, 0x1142, 0x1144, 0x1145, 0x1146, 0x1148, 0x1149, 0x114a, 0x1150, 0x1151,
+// 0x1152, 0x1154, 0x1155, 0x1156, 0x1158, 0x1159, 0x115a, 0x1160, 0x1161, 0x1162, 0x1164, 0x1165, 0x1166, 0x1168, 0x1169, 0x116a,
+// 0x1180, 0x1181, 0x1182, 0x1184, 0x1185, 0x1186, 0x1188, 0x1189, 0x118a, 0x1190, 0x1191, 0x1192, 0x1194, 0x1195, 0x1196, 0x1198,
+// 0x1199, 0x119a, 0x11a0, 0x11a1, 0x11a2, 0x11a4, 0x11a5, 0x11a6, 0x11a8, 0x11a9, 0x11aa, 0x1200, 0x1201, 0x1202, 0x1204, 0x1205,
+// 0x1206, 0x1208, 0x1209, 0x120a, 0x1210, 0x1211, 0x1212, 0x1214, 0x1215, 0x1216, 0x1218, 0x1219, 0x121a, 0x1220, 0x1221, 0x1222,
+// 0x1224, 0x1225, 0x1226, 0x1228, 0x1229, 0x122a, 0x1240, 0x1241, 0x1242, 0x1244, 0x1245, 0x1246, 0x1248, 0x1249, 0x124a, 0x1250,
+// 0x1251, 0x1252, 0x1254, 0x1255, 0x1256, 0x1258, 0x1259, 0x125a, 0x1260, 0x1261, 0x1262, 0x1264, 0x1265, 0x1266, 0x1268, 0x1269,
+// 0x126a, 0x1280, 0x1281, 0x1282, 0x1284, 0x1285, 0x1286, 0x1288, 0x1289, 0x128a, 0x1290, 0x1291, 0x1292, 0x1294, 0x1295, 0x1296,
+// 0x1298, 0x1299, 0x129a, 0x12a0, 0x12a1, 0x12a2, 0x12a4, 0x12a5, 0x12a6, 0x12a8, 0x12a9, 0x12aa, 0x1400, 0x1401, 0x1402, 0x1404,
+// 0x1405, 0x1406, 0x1408, 0x1409, 0x140a, 0x1410, 0x1411, 0x1412, 0x1414, 0x1415, 0x1416, 0x1418, 0x1419, 0x141a, 0x1420, 0x1421,
+// 0x1422, 0x1424, 0x1425, 0x1426, 0x1428, 0x1429, 0x142a, 0x1440, 0x1441, 0x1442, 0x1444, 0x1445, 0x1446, 0x1448, 0x1449, 0x144a,
+// 0x1450, 0x1451, 0x1452, 0x1454, 0x1455, 0x1456, 0x1458, 0x1459, 0x145a, 0x1460, 0x1461, 0x1462, 0x1464, 0x1465, 0x1466, 0x1468,
+// 0x1469, 0x146a, 0x1480, 0x1481, 0x1482, 0x1484, 0x1485, 0x1486, 0x1488, 0x1489, 0x148a, 0x1490, 0x1491, 0x1492, 0x1494, 0x1495,
+// 0x1496, 0x1498, 0x1499, 0x149a, 0x14a0, 0x14a1, 0x14a2, 0x14a4, 0x14a5, 0x14a6, 0x14a8, 0x14a9, 0x14aa, 0x1500, 0x1501, 0x1502,
+// 0x1504, 0x1505, 0x1506, 0x1508, 0x1509, 0x150a, 0x1510, 0x1511, 0x1512, 0x1514, 0x1515, 0x1516, 0x1518, 0x1519, 0x151a, 0x1520,
+// 0x1521, 0x1522, 0x1524, 0x1525, 0x1526, 0x1528, 0x1529, 0x152a, 0x1540, 0x1541, 0x1542, 0x1544, 0x1545, 0x1546, 0x1548, 0x1549,
+// 0x154a, 0x1550, 0x1551, 0x1552, 0x1554, 0x1555, 0x1556, 0x1558, 0x1559, 0x155a, 0x1560, 0x1561, 0x1562, 0x1564, 0x1565, 0x1566,
+// 0x1568, 0x1569, 0x156a, 0x1580, 0x1581, 0x1582, 0x1584, 0x1585, 0x1586, 0x1588, 0x1589, 0x158a, 0x1590, 0x1591, 0x1592, 0x1594,
+// 0x1595, 0x1596, 0x1598, 0x1599, 0x159a, 0x15a0, 0x15a1, 0x15a2, 0x15a4, 0x15a5, 0x15a6, 0x15a8, 0x15a9, 0x15aa, 0x1600, 0x1601,
+// 0x1602, 0x1604, 0x1605, 0x1606, 0x1608, 0x1609, 0x160a, 0x1610, 0x1611, 0x1612, 0x1614, 0x1615, 0x1616, 0x1618, 0x1619, 0x161a,
+// 0x1620, 0x1621, 0x1622, 0x1624, 0x1625, 0x1626, 0x1628, 0x1629, 0x162a, 0x1640, 0x1641, 0x1642, 0x1644, 0x1645, 0x1646, 0x1648,
+// 0x1649, 0x164a, 0x1650, 0x1651, 0x1652, 0x1654, 0x1655, 0x1656, 0x1658, 0x1659, 0x165a, 0x1660, 0x1661, 0x1662, 0x1664, 0x1665,
+// 0x1666, 0x1668, 0x1669, 0x166a, 0x1680, 0x1681, 0x1682, 0x1684, 0x1685, 0x1686, 0x1688, 0x1689, 0x168a, 0x1690, 0x1691, 0x1692,
+// 0x1694, 0x1695, 0x1696, 0x1698, 0x1699, 0x169a, 0x16a0, 0x16a1, 0x16a2, 0x16a4, 0x16a5, 0x16a6, 0x16a8, 0x16a9, 0x16aa, 0x1800,
+// 0x1801, 0x1802, 0x1804, 0x1805, 0x1806, 0x1808, 0x1809, 0x180a, 0x1810, 0x1811, 0x1812, 0x1814, 0x1815, 0x1816, 0x1818, 0x1819,
+// 0x181a, 0x1820, 0x1821, 0x1822, 0x1824, 0x1825, 0x1826, 0x1828, 0x1829, 0x182a, 0x1840, 0x1841, 0x1842, 0x1844, 0x1845, 0x1846,
+// 0x1848, 0x1849, 0x184a, 0x1850, 0x1851, 0x1852, 0x1854, 0x1855, 0x1856, 0x1858, 0x1859, 0x185a, 0x1860, 0x1861, 0x1862, 0x1864,
+// 0x1865, 0x1866, 0x1868, 0x1869, 0x186a, 0x1880, 0x1881, 0x1882, 0x1884, 0x1885, 0x1886, 0x1888, 0x1889, 0x188a, 0x1890, 0x1891,
+// 0x1892, 0x1894, 0x1895, 0x1896, 0x1898, 0x1899, 0x189a, 0x18a0, 0x18a1, 0x18a2, 0x18a4, 0x18a5, 0x18a6, 0x18a8, 0x18a9, 0x18aa,
+// 0x1900, 0x1901, 0x1902, 0x1904, 0x1905, 0x1906, 0x1908, 0x1909, 0x190a, 0x1910, 0x1911, 0x1912, 0x1914, 0x1915, 0x1916, 0x1918,
+// 0x1919, 0x191a, 0x1920, 0x1921, 0x1922, 0x1924, 0x1925, 0x1926, 0x1928, 0x1929, 0x192a, 0x1940, 0x1941, 0x1942, 0x1944, 0x1945,
+// 0x1946, 0x1948, 0x1949, 0x194a, 0x1950, 0x1951, 0x1952, 0x1954, 0x1955, 0x1956, 0x1958, 0x1959, 0x195a, 0x1960, 0x1961, 0x1962,
+// 0x1964, 0x1965, 0x1966, 0x1968, 0x1969, 0x196a, 0x1980, 0x1981, 0x1982, 0x1984, 0x1985, 0x1986, 0x1988, 0x1989, 0x198a, 0x1990,
+// 0x1991, 0x1992, 0x1994, 0x1995, 0x1996, 0x1998, 0x1999, 0x199a, 0x19a0, 0x19a1, 0x19a2, 0x19a4, 0x19a5, 0x19a6, 0x19a8, 0x19a9,
+// 0x19aa, 0x1a00, 0x1a01, 0x1a02, 0x1a04, 0x1a05, 0x1a06, 0x1a08, 0x1a09, 0x1a0a, 0x1a10, 0x1a11, 0x1a12, 0x1a14, 0x1a15, 0x1a16,
+// 0x1a18, 0x1a19, 0x1a1a, 0x1a20, 0x1a21, 0x1a22, 0x1a24, 0x1a25, 0x1a26, 0x1a28, 0x1a29, 0x1a2a, 0x1a40, 0x1a41, 0x1a42, 0x1a44,
+// 0x1a45, 0x1a46, 0x1a48, 0x1a49, 0x1a4a, 0x1a50, 0x1a51, 0x1a52, 0x1a54, 0x1a55, 0x1a56, 0x1a58, 0x1a59, 0x1a5a, 0x1a60, 0x1a61,
+// 0x1a62, 0x1a64, 0x1a65, 0x1a66, 0x1a68, 0x1a69, 0x1a6a, 0x1a80, 0x1a81, 0x1a82, 0x1a84, 0x1a85, 0x1a86, 0x1a88, 0x1a89, 0x1a8a,
+// 0x1a90, 0x1a91, 0x1a92, 0x1a94, 0x1a95, 0x1a96, 0x1a98, 0x1a99, 0x1a9a, 0x1aa0, 0x1aa1, 0x1aa2, 0x1aa4, 0x1aa5, 0x1aa6, 0x1aa8,
+// 0x1aa9, 0x1aaa, 0x2000, 0x2001, 0x2002, 0x2004, 0x2005, 0x2006, 0x2008, 0x2009, 0x200a, 0x2010, 0x2011, 0x2012, 0x2014, 0x2015,
+// 0x2016, 0x2018, 0x2019, 0x201a, 0x2020, 0x2021, 0x2022, 0x2024, 0x2025, 0x2026, 0x2028, 0x2029, 0x202a, 0x2040, 0x2041, 0x2042,
+// 0x2044, 0x2045, 0x2046, 0x2048, 0x2049, 0x204a, 0x2050, 0x2051, 0x2052, 0x2054, 0x2055, 0x2056, 0x2058, 0x2059, 0x205a, 0x2060,
+// 0x2061, 0x2062, 0x2064, 0x2065, 0x2066, 0x2068, 0x2069, 0x206a, 0x2080, 0x2081, 0x2082, 0x2084, 0x2085, 0x2086, 0x2088, 0x2089,
+// 0x208a, 0x2090, 0x2091, 0x2092, 0x2094, 0x2095, 0x2096, 0x2098, 0x2099, 0x209a, 0x20a0, 0x20a1, 0x20a2, 0x20a4, 0x20a5, 0x20a6,
+// 0x20a8, 0x20a9, 0x20aa, 0x2100, 0x2101, 0x2102, 0x2104, 0x2105, 0x2106, 0x2108, 0x2109, 0x210a, 0x2110, 0x2111, 0x2112, 0x2114,
+// 0x2115, 0x2116, 0x2118, 0x2119, 0x211a, 0x2120, 0x2121, 0x2122, 0x2124, 0x2125, 0x2126, 0x2128, 0x2129, 0x212a, 0x2140, 0x2141,
+// 0x2142, 0x2144, 0x2145, 0x2146, 0x2148, 0x2149, 0x214a, 0x2150, 0x2151, 0x2152, 0x2154, 0x2155, 0x2156, 0x2158, 0x2159, 0x215a,
+// 0x2160, 0x2161, 0x2162, 0x2164, 0x2165, 0x2166, 0x2168, 0x2169, 0x216a, 0x2180, 0x2181, 0x2182, 0x2184, 0x2185, 0x2186, 0x2188,
+// 0x2189, 0x218a, 0x2190, 0x2191, 0x2192, 0x2194, 0x2195, 0x2196, 0x2198, 0x2199, 0x219a, 0x21a0, 0x21a1, 0x21a2, 0x21a4, 0x21a5,
+// 0x21a6, 0x21a8, 0x21a9, 0x21aa, 0x2200, 0x2201, 0x2202, 0x2204, 0x2205, 0x2206, 0x2208, 0x2209, 0x220a, 0x2210, 0x2211, 0x2212,
+// 0x2214, 0x2215, 0x2216, 0x2218, 0x2219, 0x221a, 0x2220, 0x2221, 0x2222, 0x2224, 0x2225, 0x2226, 0x2228, 0x2229, 0x222a, 0x2240,
+// 0x2241, 0x2242, 0x2244, 0x2245, 0x2246, 0x2248, 0x2249, 0x224a, 0x2250, 0x2251, 0x2252, 0x2254, 0x2255, 0x2256, 0x2258, 0x2259,
+// 0x225a, 0x2260, 0x2261, 0x2262, 0x2264, 0x2265, 0x2266, 0x2268, 0x2269, 0x226a, 0x2280, 0x2281, 0x2282, 0x2284, 0x2285, 0x2286,
+// 0x2288, 0x2289, 0x228a, 0x2290, 0x2291, 0x2292, 0x2294, 0x2295, 0x2296, 0x2298, 0x2299, 0x229a, 0x22a0, 0x22a1, 0x22a2, 0x22a4,
+// 0x22a5, 0x22a6, 0x22a8, 0x22a9, 0x22aa, 0x2400, 0x2401, 0x2402, 0x2404, 0x2405, 0x2406, 0x2408, 0x2409, 0x240a, 0x2410, 0x2411,
+// 0x2412, 0x2414, 0x2415, 0x2416, 0x2418, 0x2419, 0x241a, 0x2420, 0x2421, 0x2422, 0x2424, 0x2425, 0x2426, 0x2428, 0x2429, 0x242a,
+// 0x2440, 0x2441, 0x2442, 0x2444, 0x2445, 0x2446, 0x2448, 0x2449, 0x244a, 0x2450, 0x2451, 0x2452, 0x2454, 0x2455, 0x2456, 0x2458,
+// 0x2459, 0x245a, 0x2460, 0x2461, 0x2462, 0x2464, 0x2465, 0x2466, 0x2468, 0x2469, 0x246a, 0x2480, 0x2481, 0x2482, 0x2484, 0x2485,
+// 0x2486, 0x2488, 0x2489, 0x248a, 0x2490, 0x2491, 0x2492, 0x2494, 0x2495, 0x2496, 0x2498, 0x2499, 0x249a, 0x24a0, 0x24a1, 0x24a2,
+// 0x24a4, 0x24a5, 0x24a6, 0x24a8, 0x24a9, 0x24aa, 0x2500, 0x2501, 0x2502, 0x2504, 0x2505, 0x2506, 0x2508, 0x2509, 0x250a, 0x2510,
+// 0x2511, 0x2512, 0x2514, 0x2515, 0x2516, 0x2518, 0x2519, 0x251a, 0x2520, 0x2521, 0x2522, 0x2524, 0x2525, 0x2526, 0x2528, 0x2529,
+// 0x252a, 0x2540, 0x2541, 0x2542, 0x2544, 0x2545, 0x2546, 0x2548, 0x2549, 0x254a, 0x2550, 0x2551, 0x2552, 0x2554, 0x2555, 0x2556,
+// 0x2558, 0x2559, 0x255a, 0x2560, 0x2561, 0x2562, 0x2564, 0x2565, 0x2566, 0x2568, 0x2569, 0x256a, 0x2580, 0x2581, 0x2582, 0x2584,
+// 0x2585, 0x2586, 0x2588, 0x2589, 0x258a, 0x2590, 0x2591, 0x2592, 0x2594, 0x2595, 0x2596, 0x2598, 0x2599, 0x259a, 0x25a0, 0x25a1,
+// 0x25a2, 0x25a4, 0x25a5, 0x25a6, 0x25a8, 0x25a9, 0x25aa, 0x2600, 0x2601, 0x2602, 0x2604, 0x2605, 0x2606, 0x2608, 0x2609, 0x260a,
+// 0x2610, 0x2611, 0x2612, 0x2614, 0x2615, 0x2616, 0x2618, 0x2619, 0x261a, 0x2620, 0x2621, 0x2622, 0x2624, 0x2625, 0x2626, 0x2628,
+// 0x2629, 0x262a, 0x2640, 0x2641, 0x2642, 0x2644, 0x2645, 0x2646, 0x2648, 0x2649, 0x264a, 0x2650, 0x2651, 0x2652, 0x2654, 0x2655,
+// 0x2656, 0x2658, 0x2659, 0x265a, 0x2660, 0x2661, 0x2662, 0x2664, 0x2665, 0x2666, 0x2668, 0x2669, 0x266a, 0x2680, 0x2681, 0x2682,
+// 0x2684, 0x2685, 0x2686, 0x2688, 0x2689, 0x268a, 0x2690, 0x2691, 0x2692, 0x2694, 0x2695, 0x2696, 0x2698, 0x2699, 0x269a, 0x26a0,
+// 0x26a1, 0x26a2, 0x26a4, 0x26a5, 0x26a6, 0x26a8, 0x26a9, 0x26aa, 0x2800, 0x2801, 0x2802, 0x2804, 0x2805, 0x2806, 0x2808, 0x2809,
+// 0x280a, 0x2810, 0x2811, 0x2812, 0x2814, 0x2815, 0x2816, 0x2818, 0x2819, 0x281a, 0x2820, 0x2821, 0x2822, 0x2824, 0x2825, 0x2826,
+// 0x2828, 0x2829, 0x282a, 0x2840, 0x2841, 0x2842, 0x2844, 0x2845, 0x2846, 0x2848, 0x2849, 0x284a, 0x2850, 0x2851, 0x2852, 0x2854,
+// 0x2855, 0x2856, 0x2858, 0x2859, 0x285a, 0x2860, 0x2861, 0x2862, 0x2864, 0x2865, 0x2866, 0x2868, 0x2869, 0x286a, 0x2880, 0x2881,
+// 0x2882, 0x2884, 0x2885, 0x2886, 0x2888, 0x2889, 0x288a, 0x2890, 0x2891, 0x2892, 0x2894, 0x2895, 0x2896, 0x2898, 0x2899, 0x289a,
+// 0x28a0, 0x28a1, 0x28a2, 0x28a4, 0x28a5, 0x28a6, 0x28a8, 0x28a9, 0x28aa, 0x2900, 0x2901, 0x2902, 0x2904, 0x2905, 0x2906, 0x2908,
+// 0x2909, 0x290a, 0x2910, 0x2911, 0x2912, 0x2914, 0x2915, 0x2916, 0x2918, 0x2919, 0x291a, 0x2920, 0x2921, 0x2922, 0x2924, 0x2925,
+// 0x2926, 0x2928, 0x2929, 0x292a, 0x2940, 0x2941, 0x2942, 0x2944, 0x2945, 0x2946, 0x2948, 0x2949, 0x294a, 0x2950, 0x2951, 0x2952,
+// 0x2954, 0x2955, 0x2956, 0x2958, 0x2959, 0x295a, 0x2960, 0x2961, 0x2962, 0x2964, 0x2965, 0x2966, 0x2968, 0x2969, 0x296a, 0x2980,
+// 0x2981, 0x2982, 0x2984, 0x2985, 0x2986, 0x2988, 0x2989, 0x298a, 0x2990, 0x2991, 0x2992, 0x2994, 0x2995, 0x2996, 0x2998, 0x2999,
+// 0x299a, 0x29a0, 0x29a1, 0x29a2, 0x29a4, 0x29a5, 0x29a6, 0x29a8, 0x29a9, 0x29aa, 0x2a00, 0x2a01, 0x2a02, 0x2a04, 0x2a05, 0x2a06,
+// 0x2a08, 0x2a09, 0x2a0a, 0x2a10, 0x2a11, 0x2a12, 0x2a14, 0x2a15, 0x2a16, 0x2a18, 0x2a19, 0x2a1a, 0x2a20, 0x2a21, 0x2a22, 0x2a24,
+// 0x2a25, 0x2a26, 0x2a28, 0x2a29, 0x2a2a, 0x2a40, 0x2a41, 0x2a42, 0x2a44, 0x2a45, 0x2a46, 0x2a48, 0x2a49, 0x2a4a, 0x2a50, 0x2a51,
+// 0x2a52, 0x2a54, 0x2a55, 0x2a56, 0x2a58, 0x2a59, 0x2a5a, 0x2a60, 0x2a61, 0x2a62, 0x2a64, 0x2a65, 0x2a66, 0x2a68, 0x2a69, 0x2a6a,
+// 0x2a80, 0x2a81, 0x2a82, 0x2a84, 0x2a85, 0x2a86, 0x2a88, 0x2a89, 0x2a8a, 0x2a90, 0x2a91, 0x2a92, 0x2a94, 0x2a95, 0x2a96, 0x2a98,
+// 0x2a99, 0x2a9a, 0x2aa0, 0x2aa1, 0x2aa2, 0x2aa4, 0x2aa5, 0x2aa6, 0x2aa8, 0x2aa9, 0x2aaa, 0x4000, 0x4001, 0x4002, 0x4004, 0x4005,
+// 0x4006, 0x4008, 0x4009, 0x400a, 0x4010, 0x4011, 0x4012, 0x4014, 0x4015, 0x4016, 0x4018, 0x4019, 0x401a, 0x4020, 0x4021, 0x4022,
+// 0x4024, 0x4025, 0x4026, 0x4028, 0x4029, 0x402a, 0x4040, 0x4041, 0x4042, 0x4044, 0x4045, 0x4046, 0x4048, 0x4049, 0x404a, 0x4050,
+// 0x4051, 0x4052, 0x4054, 0x4055, 0x4056, 0x4058, 0x4059, 0x405a, 0x4060, 0x4061, 0x4062, 0x4064, 0x4065, 0x4066, 0x4068, 0x4069,
+// 0x406a, 0x4080, 0x4081, 0x4082, 0x4084, 0x4085, 0x4086, 0x4088, 0x4089, 0x408a, 0x4090, 0x4091, 0x4092, 0x4094, 0x4095, 0x4096,
+// 0x4098, 0x4099, 0x409a, 0x40a0, 0x40a1, 0x40a2, 0x40a4, 0x40a5, 0x40a6, 0x40a8, 0x40a9, 0x40aa, 0x4100, 0x4101, 0x4102, 0x4104,
+// 0x4105, 0x4106, 0x4108, 0x4109, 0x410a, 0x4110, 0x4111, 0x4112, 0x4114, 0x4115, 0x4116, 0x4118, 0x4119, 0x411a, 0x4120, 0x4121,
+// 0x4122, 0x4124, 0x4125, 0x4126, 0x4128, 0x4129, 0x412a, 0x4140, 0x4141, 0x4142, 0x4144, 0x4145, 0x4146, 0x4148, 0x4149, 0x414a,
+// 0x4150, 0x4151, 0x4152, 0x4154, 0x4155, 0x4156, 0x4158, 0x4159, 0x415a, 0x4160, 0x4161, 0x4162, 0x4164, 0x4165, 0x4166, 0x4168,
+// 0x4169, 0x416a, 0x4180, 0x4181, 0x4182, 0x4184, 0x4185, 0x4186, 0x4188, 0x4189, 0x418a, 0x4190, 0x4191, 0x4192, 0x4194, 0x4195,
+// 0x4196, 0x4198, 0x4199, 0x419a, 0x41a0, 0x41a1, 0x41a2, 0x41a4, 0x41a5, 0x41a6, 0x41a8, 0x41a9, 0x41aa, 0x4200, 0x4201, 0x4202,
+// 0x4204, 0x4205, 0x4206, 0x4208, 0x4209, 0x420a, 0x4210, 0x4211, 0x4212, 0x4214, 0x4215, 0x4216, 0x4218, 0x4219, 0x421a, 0x4220,
+// 0x4221, 0x4222, 0x4224, 0x4225, 0x4226, 0x4228, 0x4229, 0x422a, 0x4240, 0x4241, 0x4242, 0x4244, 0x4245, 0x4246, 0x4248, 0x4249,
+// 0x424a, 0x4250, 0x4251, 0x4252, 0x4254, 0x4255, 0x4256, 0x4258, 0x4259, 0x425a, 0x4260, 0x4261, 0x4262, 0x4264, 0x4265, 0x4266,
+// 0x4268, 0x4269, 0x426a, 0x4280, 0x4281, 0x4282, 0x4284, 0x4285, 0x4286, 0x4288, 0x4289, 0x428a, 0x4290, 0x4291, 0x4292, 0x4294,
+// 0x4295, 0x4296, 0x4298, 0x4299, 0x429a, 0x42a0, 0x42a1, 0x42a2, 0x42a4, 0x42a5, 0x42a6, 0x42a8, 0x42a9, 0x42aa, 0x4400, 0x4401,
+// 0x4402, 0x4404, 0x4405, 0x4406, 0x4408, 0x4409, 0x440a, 0x4410, 0x4411, 0x4412, 0x4414, 0x4415, 0x4416, 0x4418, 0x4419, 0x441a,
+// 0x4420, 0x4421, 0x4422, 0x4424, 0x4425, 0x4426, 0x4428, 0x4429, 0x442a, 0x4440, 0x4441, 0x4442, 0x4444, 0x4445, 0x4446, 0x4448,
+// 0x4449, 0x444a, 0x4450, 0x4451, 0x4452, 0x4454, 0x4455, 0x4456, 0x4458, 0x4459, 0x445a, 0x4460, 0x4461, 0x4462, 0x4464, 0x4465,
+// 0x4466, 0x4468, 0x4469, 0x446a, 0x4480, 0x4481, 0x4482, 0x4484, 0x4485, 0x4486, 0x4488, 0x4489, 0x448a, 0x4490, 0x4491, 0x4492,
+// 0x4494, 0x4495, 0x4496, 0x4498, 0x4499, 0x449a, 0x44a0, 0x44a1, 0x44a2, 0x44a4, 0x44a5, 0x44a6, 0x44a8, 0x44a9, 0x44aa, 0x4500,
+// 0x4501, 0x4502, 0x4504, 0x4505, 0x4506, 0x4508, 0x4509, 0x450a, 0x4510, 0x4511, 0x4512, 0x4514, 0x4515, 0x4516, 0x4518, 0x4519,
+// 0x451a, 0x4520, 0x4521, 0x4522, 0x4524, 0x4525, 0x4526, 0x4528, 0x4529, 0x452a, 0x4540, 0x4541, 0x4542, 0x4544, 0x4545, 0x4546,
+// 0x4548, 0x4549, 0x454a, 0x4550, 0x4551, 0x4552, 0x4554, 0x4555, 0x4556, 0x4558, 0x4559, 0x455a, 0x4560, 0x4561, 0x4562, 0x4564,
+// 0x4565, 0x4566, 0x4568, 0x4569, 0x456a, 0x4580, 0x4581, 0x4582, 0x4584, 0x4585, 0x4586, 0x4588, 0x4589, 0x458a, 0x4590, 0x4591,
+// 0x4592, 0x4594, 0x4595, 0x4596, 0x4598, 0x4599, 0x459a, 0x45a0, 0x45a1, 0x45a2, 0x45a4, 0x45a5, 0x45a6, 0x45a8, 0x45a9, 0x45aa,
+// 0x4600, 0x4601, 0x4602, 0x4604, 0x4605, 0x4606, 0x4608, 0x4609, 0x460a, 0x4610, 0x4611, 0x4612, 0x4614, 0x4615, 0x4616, 0x4618,
+// 0x4619, 0x461a, 0x4620, 0x4621, 0x4622, 0x4624, 0x4625, 0x4626, 0x4628, 0x4629, 0x462a, 0x4640, 0x4641, 0x4642, 0x4644, 0x4645,
+// 0x4646, 0x4648, 0x4649, 0x464a, 0x4650, 0x4651, 0x4652, 0x4654, 0x4655, 0x4656, 0x4658, 0x4659, 0x465a, 0x4660, 0x4661, 0x4662,
+// 0x4664, 0x4665, 0x4666, 0x4668, 0x4669, 0x466a, 0x4680, 0x4681, 0x4682, 0x4684, 0x4685, 0x4686, 0x4688, 0x4689, 0x468a, 0x4690,
+// 0x4691, 0x4692, 0x4694, 0x4695, 0x4696, 0x4698, 0x4699, 0x469a, 0x46a0, 0x46a1, 0x46a2, 0x46a4, 0x46a5, 0x46a6, 0x46a8, 0x46a9,
+// 0x46aa, 0x4800, 0x4801, 0x4802, 0x4804, 0x4805, 0x4806, 0x4808, 0x4809, 0x480a, 0x4810, 0x4811, 0x4812, 0x4814, 0x4815, 0x4816,
+// 0x4818, 0x4819, 0x481a, 0x4820, 0x4821, 0x4822, 0x4824, 0x4825, 0x4826, 0x4828, 0x4829, 0x482a, 0x4840, 0x4841, 0x4842, 0x4844,
+// 0x4845, 0x4846, 0x4848, 0x4849, 0x484a, 0x4850, 0x4851, 0x4852, 0x4854, 0x4855, 0x4856, 0x4858, 0x4859, 0x485a, 0x4860, 0x4861,
+// 0x4862, 0x4864, 0x4865, 0x4866, 0x4868, 0x4869, 0x486a, 0x4880, 0x4881, 0x4882, 0x4884, 0x4885, 0x4886, 0x4888, 0x4889, 0x488a,
+// 0x4890, 0x4891, 0x4892, 0x4894, 0x4895, 0x4896, 0x4898, 0x4899, 0x489a, 0x48a0, 0x48a1, 0x48a2, 0x48a4, 0x48a5, 0x48a6, 0x48a8,
+// 0x48a9, 0x48aa, 0x4900, 0x4901, 0x4902, 0x4904, 0x4905, 0x4906, 0x4908, 0x4909, 0x490a, 0x4910, 0x4911, 0x4912, 0x4914, 0x4915,
+// 0x4916, 0x4918, 0x4919, 0x491a, 0x4920, 0x4921, 0x4922, 0x4924, 0x4925, 0x4926, 0x4928, 0x4929, 0x492a, 0x4940, 0x4941, 0x4942,
+// 0x4944, 0x4945, 0x4946, 0x4948, 0x4949, 0x494a, 0x4950, 0x4951, 0x4952, 0x4954, 0x4955, 0x4956, 0x4958, 0x4959, 0x495a, 0x4960,
+// 0x4961, 0x4962, 0x4964, 0x4965, 0x4966, 0x4968, 0x4969, 0x496a, 0x4980, 0x4981, 0x4982, 0x4984, 0x4985, 0x4986, 0x4988, 0x4989,
+// 0x498a, 0x4990, 0x4991, 0x4992, 0x4994, 0x4995, 0x4996, 0x4998, 0x4999, 0x499a, 0x49a0, 0x49a1, 0x49a2, 0x49a4, 0x49a5, 0x49a6,
+// 0x49a8, 0x49a9, 0x49aa, 0x4a00, 0x4a01, 0x4a02, 0x4a04, 0x4a05, 0x4a06, 0x4a08, 0x4a09, 0x4a0a, 0x4a10, 0x4a11, 0x4a12, 0x4a14,
+// 0x4a15, 0x4a16, 0x4a18, 0x4a19, 0x4a1a, 0x4a20, 0x4a21, 0x4a22, 0x4a24, 0x4a25, 0x4a26, 0x4a28, 0x4a29, 0x4a2a, 0x4a40, 0x4a41,
+// 0x4a42, 0x4a44, 0x4a45, 0x4a46, 0x4a48, 0x4a49, 0x4a4a, 0x4a50, 0x4a51, 0x4a52, 0x4a54, 0x4a55, 0x4a56, 0x4a58, 0x4a59, 0x4a5a,
+// 0x4a60, 0x4a61, 0x4a62, 0x4a64, 0x4a65, 0x4a66, 0x4a68, 0x4a69, 0x4a6a, 0x4a80, 0x4a81, 0x4a82, 0x4a84, 0x4a85, 0x4a86, 0x4a88,
+// 0x4a89, 0x4a8a, 0x4a90, 0x4a91, 0x4a92, 0x4a94, 0x4a95, 0x4a96, 0x4a98, 0x4a99, 0x4a9a, 0x4aa0, 0x4aa1, 0x4aa2, 0x4aa4, 0x4aa5,
+// 0x4aa6, 0x4aa8, 0x4aa9, 0x4aaa, 0x5000, 0x5001, 0x5002, 0x5004, 0x5005, 0x5006, 0x5008, 0x5009, 0x500a, 0x5010, 0x5011, 0x5012,
+// 0x5014, 0x5015, 0x5016, 0x5018, 0x5019, 0x501a, 0x5020, 0x5021, 0x5022, 0x5024, 0x5025, 0x5026, 0x5028, 0x5029, 0x502a, 0x5040,
+// 0x5041, 0x5042, 0x5044, 0x5045, 0x5046, 0x5048, 0x5049, 0x504a, 0x5050, 0x5051, 0x5052, 0x5054, 0x5055, 0x5056, 0x5058, 0x5059,
+// 0x505a, 0x5060, 0x5061, 0x5062, 0x5064, 0x5065, 0x5066, 0x5068, 0x5069, 0x506a, 0x5080, 0x5081, 0x5082, 0x5084, 0x5085, 0x5086,
+// 0x5088, 0x5089, 0x508a, 0x5090, 0x5091, 0x5092, 0x5094, 0x5095, 0x5096, 0x5098, 0x5099, 0x509a, 0x50a0, 0x50a1, 0x50a2, 0x50a4,
+// 0x50a5, 0x50a6, 0x50a8, 0x50a9, 0x50aa, 0x5100, 0x5101, 0x5102, 0x5104, 0x5105, 0x5106, 0x5108, 0x5109, 0x510a, 0x5110, 0x5111,
+// 0x5112, 0x5114, 0x5115, 0x5116, 0x5118, 0x5119, 0x511a, 0x5120, 0x5121, 0x5122, 0x5124, 0x5125, 0x5126, 0x5128, 0x5129, 0x512a,
+// 0x5140, 0x5141, 0x5142, 0x5144, 0x5145, 0x5146, 0x5148, 0x5149, 0x514a, 0x5150, 0x5151, 0x5152, 0x5154, 0x5155, 0x5156, 0x5158,
+// 0x5159, 0x515a, 0x5160, 0x5161, 0x5162, 0x5164, 0x5165, 0x5166, 0x5168, 0x5169, 0x516a, 0x5180, 0x5181, 0x5182, 0x5184, 0x5185,
+// 0x5186, 0x5188, 0x5189, 0x518a, 0x5190, 0x5191, 0x5192, 0x5194, 0x5195, 0x5196, 0x5198, 0x5199, 0x519a, 0x51a0, 0x51a1, 0x51a2,
+// 0x51a4, 0x51a5, 0x51a6, 0x51a8, 0x51a9, 0x51aa, 0x5200, 0x5201, 0x5202, 0x5204, 0x5205, 0x5206, 0x5208, 0x5209, 0x520a, 0x5210,
+// 0x5211, 0x5212, 0x5214, 0x5215, 0x5216, 0x5218, 0x5219, 0x521a, 0x5220, 0x5221, 0x5222, 0x5224, 0x5225, 0x5226, 0x5228, 0x5229,
+// 0x522a, 0x5240, 0x5241, 0x5242, 0x5244, 0x5245, 0x5246, 0x5248, 0x5249, 0x524a, 0x5250, 0x5251, 0x5252, 0x5254, 0x5255, 0x5256,
+// 0x5258, 0x5259, 0x525a, 0x5260, 0x5261, 0x5262, 0x5264, 0x5265, 0x5266, 0x5268, 0x5269, 0x526a, 0x5280, 0x5281, 0x5282, 0x5284,
+// 0x5285, 0x5286, 0x5288, 0x5289, 0x528a, 0x5290, 0x5291, 0x5292, 0x5294, 0x5295, 0x5296, 0x5298, 0x5299, 0x529a, 0x52a0, 0x52a1,
+// 0x52a2, 0x52a4, 0x52a5, 0x52a6, 0x52a8, 0x52a9, 0x52aa, 0x5400, 0x5401, 0x5402, 0x5404, 0x5405, 0x5406, 0x5408, 0x5409, 0x540a,
+// 0x5410, 0x5411, 0x5412, 0x5414, 0x5415, 0x5416, 0x5418, 0x5419, 0x541a, 0x5420, 0x5421, 0x5422, 0x5424, 0x5425, 0x5426, 0x5428,
+// 0x5429, 0x542a, 0x5440, 0x5441, 0x5442, 0x5444, 0x5445, 0x5446, 0x5448, 0x5449, 0x544a, 0x5450, 0x5451, 0x5452, 0x5454, 0x5455,
+// 0x5456, 0x5458, 0x5459, 0x545a, 0x5460, 0x5461, 0x5462, 0x5464, 0x5465, 0x5466, 0x5468, 0x5469, 0x546a, 0x5480, 0x5481, 0x5482,
+// 0x5484, 0x5485, 0x5486, 0x5488, 0x5489, 0x548a, 0x5490, 0x5491, 0x5492, 0x5494, 0x5495, 0x5496, 0x5498, 0x5499, 0x549a, 0x54a0,
+// 0x54a1, 0x54a2, 0x54a4, 0x54a5, 0x54a6, 0x54a8, 0x54a9, 0x54aa, 0x5500, 0x5501, 0x5502, 0x5504, 0x5505, 0x5506, 0x5508, 0x5509,
+// 0x550a, 0x5510, 0x5511, 0x5512, 0x5514, 0x5515, 0x5516, 0x5518, 0x5519, 0x551a, 0x5520, 0x5521, 0x5522, 0x5524, 0x5525, 0x5526,
+// 0x5528, 0x5529, 0x552a, 0x5540, 0x5541, 0x5542, 0x5544, 0x5545, 0x5546, 0x5548, 0x5549, 0x554a, 0x5550, 0x5551, 0x5552, 0x5554, 0x5555,
+//GGML_TABLE_END()
GGML_TABLE_BEGIN(uint16_t, iq1bn_grid_xxx, 3281)
0xff00, 0xfe00, 0xfe01, 0xfd00, 0xfc00, 0xfc01, 0xfd02, 0xfc02, 0xfc03, 0xfb00, 0xfa00, 0xfa01, 0xf900, 0xf800, 0xf801, 0xf902,
@@ -2263,5 +2263,214 @@ GGML_TABLE_BEGIN(uint16_t, iq1bn_grid_xxx, 3281)
0x0906, 0x0806, 0x0807, 0x0700, 0x0600, 0x0601, 0x0500, 0x0400, 0x0401, 0x0502, 0x0402, 0x0403, 0x0300, 0x0200, 0x0201, 0x0100, 0x0000,
GGML_TABLE_END()
+GGML_TABLE_BEGIN(uint16_t, iq1bn_grid_zzz, 3281)
+ 0x0000, 0x0001, 0x0002, 0x0100, 0x0101, 0x0102, 0x0200, 0x0201, 0x0202, 0x0004, 0x0005, 0x0006, 0x0104, 0x0105, 0x0106, 0x0204,
+ 0x0205, 0x0206, 0x0008, 0x0009, 0x000a, 0x0108, 0x0109, 0x010a, 0x0208, 0x0209, 0x020a, 0x0400, 0x0401, 0x0402, 0x0500, 0x0501,
+ 0x0502, 0x0600, 0x0601, 0x0602, 0x0404, 0x0405, 0x0406, 0x0504, 0x0505, 0x0506, 0x0604, 0x0605, 0x0606, 0x0408, 0x0409, 0x040a,
+ 0x0508, 0x0509, 0x050a, 0x0608, 0x0609, 0x060a, 0x0800, 0x0801, 0x0802, 0x0900, 0x0901, 0x0902, 0x0a00, 0x0a01, 0x0a02, 0x0804,
+ 0x0805, 0x0806, 0x0904, 0x0905, 0x0906, 0x0a04, 0x0a05, 0x0a06, 0x0808, 0x0809, 0x080a, 0x0908, 0x0909, 0x090a, 0x0a08, 0x0a09,
+ 0x0a0a, 0x0010, 0x0011, 0x0012, 0x0110, 0x0111, 0x0112, 0x0210, 0x0211, 0x0212, 0x0014, 0x0015, 0x0016, 0x0114, 0x0115, 0x0116,
+ 0x0214, 0x0215, 0x0216, 0x0018, 0x0019, 0x001a, 0x0118, 0x0119, 0x011a, 0x0218, 0x0219, 0x021a, 0x0410, 0x0411, 0x0412, 0x0510,
+ 0x0511, 0x0512, 0x0610, 0x0611, 0x0612, 0x0414, 0x0415, 0x0416, 0x0514, 0x0515, 0x0516, 0x0614, 0x0615, 0x0616, 0x0418, 0x0419,
+ 0x041a, 0x0518, 0x0519, 0x051a, 0x0618, 0x0619, 0x061a, 0x0810, 0x0811, 0x0812, 0x0910, 0x0911, 0x0912, 0x0a10, 0x0a11, 0x0a12,
+ 0x0814, 0x0815, 0x0816, 0x0914, 0x0915, 0x0916, 0x0a14, 0x0a15, 0x0a16, 0x0818, 0x0819, 0x081a, 0x0918, 0x0919, 0x091a, 0x0a18,
+ 0x0a19, 0x0a1a, 0x0020, 0x0021, 0x0022, 0x0120, 0x0121, 0x0122, 0x0220, 0x0221, 0x0222, 0x0024, 0x0025, 0x0026, 0x0124, 0x0125,
+ 0x0126, 0x0224, 0x0225, 0x0226, 0x0028, 0x0029, 0x002a, 0x0128, 0x0129, 0x012a, 0x0228, 0x0229, 0x022a, 0x0420, 0x0421, 0x0422,
+ 0x0520, 0x0521, 0x0522, 0x0620, 0x0621, 0x0622, 0x0424, 0x0425, 0x0426, 0x0524, 0x0525, 0x0526, 0x0624, 0x0625, 0x0626, 0x0428,
+ 0x0429, 0x042a, 0x0528, 0x0529, 0x052a, 0x0628, 0x0629, 0x062a, 0x0820, 0x0821, 0x0822, 0x0920, 0x0921, 0x0922, 0x0a20, 0x0a21,
+ 0x0a22, 0x0824, 0x0825, 0x0826, 0x0924, 0x0925, 0x0926, 0x0a24, 0x0a25, 0x0a26, 0x0828, 0x0829, 0x082a, 0x0928, 0x0929, 0x092a,
+ 0x0a28, 0x0a29, 0x0a2a, 0x1000, 0x1001, 0x1002, 0x1100, 0x1101, 0x1102, 0x1200, 0x1201, 0x1202, 0x1004, 0x1005, 0x1006, 0x1104,
+ 0x1105, 0x1106, 0x1204, 0x1205, 0x1206, 0x1008, 0x1009, 0x100a, 0x1108, 0x1109, 0x110a, 0x1208, 0x1209, 0x120a, 0x1400, 0x1401,
+ 0x1402, 0x1500, 0x1501, 0x1502, 0x1600, 0x1601, 0x1602, 0x1404, 0x1405, 0x1406, 0x1504, 0x1505, 0x1506, 0x1604, 0x1605, 0x1606,
+ 0x1408, 0x1409, 0x140a, 0x1508, 0x1509, 0x150a, 0x1608, 0x1609, 0x160a, 0x1800, 0x1801, 0x1802, 0x1900, 0x1901, 0x1902, 0x1a00,
+ 0x1a01, 0x1a02, 0x1804, 0x1805, 0x1806, 0x1904, 0x1905, 0x1906, 0x1a04, 0x1a05, 0x1a06, 0x1808, 0x1809, 0x180a, 0x1908, 0x1909,
+ 0x190a, 0x1a08, 0x1a09, 0x1a0a, 0x1010, 0x1011, 0x1012, 0x1110, 0x1111, 0x1112, 0x1210, 0x1211, 0x1212, 0x1014, 0x1015, 0x1016,
+ 0x1114, 0x1115, 0x1116, 0x1214, 0x1215, 0x1216, 0x1018, 0x1019, 0x101a, 0x1118, 0x1119, 0x111a, 0x1218, 0x1219, 0x121a, 0x1410,
+ 0x1411, 0x1412, 0x1510, 0x1511, 0x1512, 0x1610, 0x1611, 0x1612, 0x1414, 0x1415, 0x1416, 0x1514, 0x1515, 0x1516, 0x1614, 0x1615,
+ 0x1616, 0x1418, 0x1419, 0x141a, 0x1518, 0x1519, 0x151a, 0x1618, 0x1619, 0x161a, 0x1810, 0x1811, 0x1812, 0x1910, 0x1911, 0x1912,
+ 0x1a10, 0x1a11, 0x1a12, 0x1814, 0x1815, 0x1816, 0x1914, 0x1915, 0x1916, 0x1a14, 0x1a15, 0x1a16, 0x1818, 0x1819, 0x181a, 0x1918,
+ 0x1919, 0x191a, 0x1a18, 0x1a19, 0x1a1a, 0x1020, 0x1021, 0x1022, 0x1120, 0x1121, 0x1122, 0x1220, 0x1221, 0x1222, 0x1024, 0x1025,
+ 0x1026, 0x1124, 0x1125, 0x1126, 0x1224, 0x1225, 0x1226, 0x1028, 0x1029, 0x102a, 0x1128, 0x1129, 0x112a, 0x1228, 0x1229, 0x122a,
+ 0x1420, 0x1421, 0x1422, 0x1520, 0x1521, 0x1522, 0x1620, 0x1621, 0x1622, 0x1424, 0x1425, 0x1426, 0x1524, 0x1525, 0x1526, 0x1624,
+ 0x1625, 0x1626, 0x1428, 0x1429, 0x142a, 0x1528, 0x1529, 0x152a, 0x1628, 0x1629, 0x162a, 0x1820, 0x1821, 0x1822, 0x1920, 0x1921,
+ 0x1922, 0x1a20, 0x1a21, 0x1a22, 0x1824, 0x1825, 0x1826, 0x1924, 0x1925, 0x1926, 0x1a24, 0x1a25, 0x1a26, 0x1828, 0x1829, 0x182a,
+ 0x1928, 0x1929, 0x192a, 0x1a28, 0x1a29, 0x1a2a, 0x2000, 0x2001, 0x2002, 0x2100, 0x2101, 0x2102, 0x2200, 0x2201, 0x2202, 0x2004,
+ 0x2005, 0x2006, 0x2104, 0x2105, 0x2106, 0x2204, 0x2205, 0x2206, 0x2008, 0x2009, 0x200a, 0x2108, 0x2109, 0x210a, 0x2208, 0x2209,
+ 0x220a, 0x2400, 0x2401, 0x2402, 0x2500, 0x2501, 0x2502, 0x2600, 0x2601, 0x2602, 0x2404, 0x2405, 0x2406, 0x2504, 0x2505, 0x2506,
+ 0x2604, 0x2605, 0x2606, 0x2408, 0x2409, 0x240a, 0x2508, 0x2509, 0x250a, 0x2608, 0x2609, 0x260a, 0x2800, 0x2801, 0x2802, 0x2900,
+ 0x2901, 0x2902, 0x2a00, 0x2a01, 0x2a02, 0x2804, 0x2805, 0x2806, 0x2904, 0x2905, 0x2906, 0x2a04, 0x2a05, 0x2a06, 0x2808, 0x2809,
+ 0x280a, 0x2908, 0x2909, 0x290a, 0x2a08, 0x2a09, 0x2a0a, 0x2010, 0x2011, 0x2012, 0x2110, 0x2111, 0x2112, 0x2210, 0x2211, 0x2212,
+ 0x2014, 0x2015, 0x2016, 0x2114, 0x2115, 0x2116, 0x2214, 0x2215, 0x2216, 0x2018, 0x2019, 0x201a, 0x2118, 0x2119, 0x211a, 0x2218,
+ 0x2219, 0x221a, 0x2410, 0x2411, 0x2412, 0x2510, 0x2511, 0x2512, 0x2610, 0x2611, 0x2612, 0x2414, 0x2415, 0x2416, 0x2514, 0x2515,
+ 0x2516, 0x2614, 0x2615, 0x2616, 0x2418, 0x2419, 0x241a, 0x2518, 0x2519, 0x251a, 0x2618, 0x2619, 0x261a, 0x2810, 0x2811, 0x2812,
+ 0x2910, 0x2911, 0x2912, 0x2a10, 0x2a11, 0x2a12, 0x2814, 0x2815, 0x2816, 0x2914, 0x2915, 0x2916, 0x2a14, 0x2a15, 0x2a16, 0x2818,
+ 0x2819, 0x281a, 0x2918, 0x2919, 0x291a, 0x2a18, 0x2a19, 0x2a1a, 0x2020, 0x2021, 0x2022, 0x2120, 0x2121, 0x2122, 0x2220, 0x2221,
+ 0x2222, 0x2024, 0x2025, 0x2026, 0x2124, 0x2125, 0x2126, 0x2224, 0x2225, 0x2226, 0x2028, 0x2029, 0x202a, 0x2128, 0x2129, 0x212a,
+ 0x2228, 0x2229, 0x222a, 0x2420, 0x2421, 0x2422, 0x2520, 0x2521, 0x2522, 0x2620, 0x2621, 0x2622, 0x2424, 0x2425, 0x2426, 0x2524,
+ 0x2525, 0x2526, 0x2624, 0x2625, 0x2626, 0x2428, 0x2429, 0x242a, 0x2528, 0x2529, 0x252a, 0x2628, 0x2629, 0x262a, 0x2820, 0x2821,
+ 0x2822, 0x2920, 0x2921, 0x2922, 0x2a20, 0x2a21, 0x2a22, 0x2824, 0x2825, 0x2826, 0x2924, 0x2925, 0x2926, 0x2a24, 0x2a25, 0x2a26,
+ 0x2828, 0x2829, 0x282a, 0x2928, 0x2929, 0x292a, 0x2a28, 0x2a29, 0x2a2a, 0x0040, 0x0041, 0x0042, 0x0140, 0x0141, 0x0142, 0x0240,
+ 0x0241, 0x0242, 0x0044, 0x0045, 0x0046, 0x0144, 0x0145, 0x0146, 0x0244, 0x0245, 0x0246, 0x0048, 0x0049, 0x004a, 0x0148, 0x0149,
+ 0x014a, 0x0248, 0x0249, 0x024a, 0x0440, 0x0441, 0x0442, 0x0540, 0x0541, 0x0542, 0x0640, 0x0641, 0x0642, 0x0444, 0x0445, 0x0446,
+ 0x0544, 0x0545, 0x0546, 0x0644, 0x0645, 0x0646, 0x0448, 0x0449, 0x044a, 0x0548, 0x0549, 0x054a, 0x0648, 0x0649, 0x064a, 0x0840,
+ 0x0841, 0x0842, 0x0940, 0x0941, 0x0942, 0x0a40, 0x0a41, 0x0a42, 0x0844, 0x0845, 0x0846, 0x0944, 0x0945, 0x0946, 0x0a44, 0x0a45,
+ 0x0a46, 0x0848, 0x0849, 0x084a, 0x0948, 0x0949, 0x094a, 0x0a48, 0x0a49, 0x0a4a, 0x0050, 0x0051, 0x0052, 0x0150, 0x0151, 0x0152,
+ 0x0250, 0x0251, 0x0252, 0x0054, 0x0055, 0x0056, 0x0154, 0x0155, 0x0156, 0x0254, 0x0255, 0x0256, 0x0058, 0x0059, 0x005a, 0x0158,
+ 0x0159, 0x015a, 0x0258, 0x0259, 0x025a, 0x0450, 0x0451, 0x0452, 0x0550, 0x0551, 0x0552, 0x0650, 0x0651, 0x0652, 0x0454, 0x0455,
+ 0x0456, 0x0554, 0x0555, 0x0556, 0x0654, 0x0655, 0x0656, 0x0458, 0x0459, 0x045a, 0x0558, 0x0559, 0x055a, 0x0658, 0x0659, 0x065a,
+ 0x0850, 0x0851, 0x0852, 0x0950, 0x0951, 0x0952, 0x0a50, 0x0a51, 0x0a52, 0x0854, 0x0855, 0x0856, 0x0954, 0x0955, 0x0956, 0x0a54,
+ 0x0a55, 0x0a56, 0x0858, 0x0859, 0x085a, 0x0958, 0x0959, 0x095a, 0x0a58, 0x0a59, 0x0a5a, 0x0060, 0x0061, 0x0062, 0x0160, 0x0161,
+ 0x0162, 0x0260, 0x0261, 0x0262, 0x0064, 0x0065, 0x0066, 0x0164, 0x0165, 0x0166, 0x0264, 0x0265, 0x0266, 0x0068, 0x0069, 0x006a,
+ 0x0168, 0x0169, 0x016a, 0x0268, 0x0269, 0x026a, 0x0460, 0x0461, 0x0462, 0x0560, 0x0561, 0x0562, 0x0660, 0x0661, 0x0662, 0x0464,
+ 0x0465, 0x0466, 0x0564, 0x0565, 0x0566, 0x0664, 0x0665, 0x0666, 0x0468, 0x0469, 0x046a, 0x0568, 0x0569, 0x056a, 0x0668, 0x0669,
+ 0x066a, 0x0860, 0x0861, 0x0862, 0x0960, 0x0961, 0x0962, 0x0a60, 0x0a61, 0x0a62, 0x0864, 0x0865, 0x0866, 0x0964, 0x0965, 0x0966,
+ 0x0a64, 0x0a65, 0x0a66, 0x0868, 0x0869, 0x086a, 0x0968, 0x0969, 0x096a, 0x0a68, 0x0a69, 0x0a6a, 0x1040, 0x1041, 0x1042, 0x1140,
+ 0x1141, 0x1142, 0x1240, 0x1241, 0x1242, 0x1044, 0x1045, 0x1046, 0x1144, 0x1145, 0x1146, 0x1244, 0x1245, 0x1246, 0x1048, 0x1049,
+ 0x104a, 0x1148, 0x1149, 0x114a, 0x1248, 0x1249, 0x124a, 0x1440, 0x1441, 0x1442, 0x1540, 0x1541, 0x1542, 0x1640, 0x1641, 0x1642,
+ 0x1444, 0x1445, 0x1446, 0x1544, 0x1545, 0x1546, 0x1644, 0x1645, 0x1646, 0x1448, 0x1449, 0x144a, 0x1548, 0x1549, 0x154a, 0x1648,
+ 0x1649, 0x164a, 0x1840, 0x1841, 0x1842, 0x1940, 0x1941, 0x1942, 0x1a40, 0x1a41, 0x1a42, 0x1844, 0x1845, 0x1846, 0x1944, 0x1945,
+ 0x1946, 0x1a44, 0x1a45, 0x1a46, 0x1848, 0x1849, 0x184a, 0x1948, 0x1949, 0x194a, 0x1a48, 0x1a49, 0x1a4a, 0x1050, 0x1051, 0x1052,
+ 0x1150, 0x1151, 0x1152, 0x1250, 0x1251, 0x1252, 0x1054, 0x1055, 0x1056, 0x1154, 0x1155, 0x1156, 0x1254, 0x1255, 0x1256, 0x1058,
+ 0x1059, 0x105a, 0x1158, 0x1159, 0x115a, 0x1258, 0x1259, 0x125a, 0x1450, 0x1451, 0x1452, 0x1550, 0x1551, 0x1552, 0x1650, 0x1651,
+ 0x1652, 0x1454, 0x1455, 0x1456, 0x1554, 0x1555, 0x1556, 0x1654, 0x1655, 0x1656, 0x1458, 0x1459, 0x145a, 0x1558, 0x1559, 0x155a,
+ 0x1658, 0x1659, 0x165a, 0x1850, 0x1851, 0x1852, 0x1950, 0x1951, 0x1952, 0x1a50, 0x1a51, 0x1a52, 0x1854, 0x1855, 0x1856, 0x1954,
+ 0x1955, 0x1956, 0x1a54, 0x1a55, 0x1a56, 0x1858, 0x1859, 0x185a, 0x1958, 0x1959, 0x195a, 0x1a58, 0x1a59, 0x1a5a, 0x1060, 0x1061,
+ 0x1062, 0x1160, 0x1161, 0x1162, 0x1260, 0x1261, 0x1262, 0x1064, 0x1065, 0x1066, 0x1164, 0x1165, 0x1166, 0x1264, 0x1265, 0x1266,
+ 0x1068, 0x1069, 0x106a, 0x1168, 0x1169, 0x116a, 0x1268, 0x1269, 0x126a, 0x1460, 0x1461, 0x1462, 0x1560, 0x1561, 0x1562, 0x1660,
+ 0x1661, 0x1662, 0x1464, 0x1465, 0x1466, 0x1564, 0x1565, 0x1566, 0x1664, 0x1665, 0x1666, 0x1468, 0x1469, 0x146a, 0x1568, 0x1569,
+ 0x156a, 0x1668, 0x1669, 0x166a, 0x1860, 0x1861, 0x1862, 0x1960, 0x1961, 0x1962, 0x1a60, 0x1a61, 0x1a62, 0x1864, 0x1865, 0x1866,
+ 0x1964, 0x1965, 0x1966, 0x1a64, 0x1a65, 0x1a66, 0x1868, 0x1869, 0x186a, 0x1968, 0x1969, 0x196a, 0x1a68, 0x1a69, 0x1a6a, 0x2040,
+ 0x2041, 0x2042, 0x2140, 0x2141, 0x2142, 0x2240, 0x2241, 0x2242, 0x2044, 0x2045, 0x2046, 0x2144, 0x2145, 0x2146, 0x2244, 0x2245,
+ 0x2246, 0x2048, 0x2049, 0x204a, 0x2148, 0x2149, 0x214a, 0x2248, 0x2249, 0x224a, 0x2440, 0x2441, 0x2442, 0x2540, 0x2541, 0x2542,
+ 0x2640, 0x2641, 0x2642, 0x2444, 0x2445, 0x2446, 0x2544, 0x2545, 0x2546, 0x2644, 0x2645, 0x2646, 0x2448, 0x2449, 0x244a, 0x2548,
+ 0x2549, 0x254a, 0x2648, 0x2649, 0x264a, 0x2840, 0x2841, 0x2842, 0x2940, 0x2941, 0x2942, 0x2a40, 0x2a41, 0x2a42, 0x2844, 0x2845,
+ 0x2846, 0x2944, 0x2945, 0x2946, 0x2a44, 0x2a45, 0x2a46, 0x2848, 0x2849, 0x284a, 0x2948, 0x2949, 0x294a, 0x2a48, 0x2a49, 0x2a4a,
+ 0x2050, 0x2051, 0x2052, 0x2150, 0x2151, 0x2152, 0x2250, 0x2251, 0x2252, 0x2054, 0x2055, 0x2056, 0x2154, 0x2155, 0x2156, 0x2254,
+ 0x2255, 0x2256, 0x2058, 0x2059, 0x205a, 0x2158, 0x2159, 0x215a, 0x2258, 0x2259, 0x225a, 0x2450, 0x2451, 0x2452, 0x2550, 0x2551,
+ 0x2552, 0x2650, 0x2651, 0x2652, 0x2454, 0x2455, 0x2456, 0x2554, 0x2555, 0x2556, 0x2654, 0x2655, 0x2656, 0x2458, 0x2459, 0x245a,
+ 0x2558, 0x2559, 0x255a, 0x2658, 0x2659, 0x265a, 0x2850, 0x2851, 0x2852, 0x2950, 0x2951, 0x2952, 0x2a50, 0x2a51, 0x2a52, 0x2854,
+ 0x2855, 0x2856, 0x2954, 0x2955, 0x2956, 0x2a54, 0x2a55, 0x2a56, 0x2858, 0x2859, 0x285a, 0x2958, 0x2959, 0x295a, 0x2a58, 0x2a59,
+ 0x2a5a, 0x2060, 0x2061, 0x2062, 0x2160, 0x2161, 0x2162, 0x2260, 0x2261, 0x2262, 0x2064, 0x2065, 0x2066, 0x2164, 0x2165, 0x2166,
+ 0x2264, 0x2265, 0x2266, 0x2068, 0x2069, 0x206a, 0x2168, 0x2169, 0x216a, 0x2268, 0x2269, 0x226a, 0x2460, 0x2461, 0x2462, 0x2560,
+ 0x2561, 0x2562, 0x2660, 0x2661, 0x2662, 0x2464, 0x2465, 0x2466, 0x2564, 0x2565, 0x2566, 0x2664, 0x2665, 0x2666, 0x2468, 0x2469,
+ 0x246a, 0x2568, 0x2569, 0x256a, 0x2668, 0x2669, 0x266a, 0x2860, 0x2861, 0x2862, 0x2960, 0x2961, 0x2962, 0x2a60, 0x2a61, 0x2a62,
+ 0x2864, 0x2865, 0x2866, 0x2964, 0x2965, 0x2966, 0x2a64, 0x2a65, 0x2a66, 0x2868, 0x2869, 0x286a, 0x2968, 0x2969, 0x296a, 0x2a68,
+ 0x2a69, 0x2a6a, 0x0080, 0x0081, 0x0082, 0x0180, 0x0181, 0x0182, 0x0280, 0x0281, 0x0282, 0x0084, 0x0085, 0x0086, 0x0184, 0x0185,
+ 0x0186, 0x0284, 0x0285, 0x0286, 0x0088, 0x0089, 0x008a, 0x0188, 0x0189, 0x018a, 0x0288, 0x0289, 0x028a, 0x0480, 0x0481, 0x0482,
+ 0x0580, 0x0581, 0x0582, 0x0680, 0x0681, 0x0682, 0x0484, 0x0485, 0x0486, 0x0584, 0x0585, 0x0586, 0x0684, 0x0685, 0x0686, 0x0488,
+ 0x0489, 0x048a, 0x0588, 0x0589, 0x058a, 0x0688, 0x0689, 0x068a, 0x0880, 0x0881, 0x0882, 0x0980, 0x0981, 0x0982, 0x0a80, 0x0a81,
+ 0x0a82, 0x0884, 0x0885, 0x0886, 0x0984, 0x0985, 0x0986, 0x0a84, 0x0a85, 0x0a86, 0x0888, 0x0889, 0x088a, 0x0988, 0x0989, 0x098a,
+ 0x0a88, 0x0a89, 0x0a8a, 0x0090, 0x0091, 0x0092, 0x0190, 0x0191, 0x0192, 0x0290, 0x0291, 0x0292, 0x0094, 0x0095, 0x0096, 0x0194,
+ 0x0195, 0x0196, 0x0294, 0x0295, 0x0296, 0x0098, 0x0099, 0x009a, 0x0198, 0x0199, 0x019a, 0x0298, 0x0299, 0x029a, 0x0490, 0x0491,
+ 0x0492, 0x0590, 0x0591, 0x0592, 0x0690, 0x0691, 0x0692, 0x0494, 0x0495, 0x0496, 0x0594, 0x0595, 0x0596, 0x0694, 0x0695, 0x0696,
+ 0x0498, 0x0499, 0x049a, 0x0598, 0x0599, 0x059a, 0x0698, 0x0699, 0x069a, 0x0890, 0x0891, 0x0892, 0x0990, 0x0991, 0x0992, 0x0a90,
+ 0x0a91, 0x0a92, 0x0894, 0x0895, 0x0896, 0x0994, 0x0995, 0x0996, 0x0a94, 0x0a95, 0x0a96, 0x0898, 0x0899, 0x089a, 0x0998, 0x0999,
+ 0x099a, 0x0a98, 0x0a99, 0x0a9a, 0x00a0, 0x00a1, 0x00a2, 0x01a0, 0x01a1, 0x01a2, 0x02a0, 0x02a1, 0x02a2, 0x00a4, 0x00a5, 0x00a6,
+ 0x01a4, 0x01a5, 0x01a6, 0x02a4, 0x02a5, 0x02a6, 0x00a8, 0x00a9, 0x00aa, 0x01a8, 0x01a9, 0x01aa, 0x02a8, 0x02a9, 0x02aa, 0x04a0,
+ 0x04a1, 0x04a2, 0x05a0, 0x05a1, 0x05a2, 0x06a0, 0x06a1, 0x06a2, 0x04a4, 0x04a5, 0x04a6, 0x05a4, 0x05a5, 0x05a6, 0x06a4, 0x06a5,
+ 0x06a6, 0x04a8, 0x04a9, 0x04aa, 0x05a8, 0x05a9, 0x05aa, 0x06a8, 0x06a9, 0x06aa, 0x08a0, 0x08a1, 0x08a2, 0x09a0, 0x09a1, 0x09a2,
+ 0x0aa0, 0x0aa1, 0x0aa2, 0x08a4, 0x08a5, 0x08a6, 0x09a4, 0x09a5, 0x09a6, 0x0aa4, 0x0aa5, 0x0aa6, 0x08a8, 0x08a9, 0x08aa, 0x09a8,
+ 0x09a9, 0x09aa, 0x0aa8, 0x0aa9, 0x0aaa, 0x1080, 0x1081, 0x1082, 0x1180, 0x1181, 0x1182, 0x1280, 0x1281, 0x1282, 0x1084, 0x1085,
+ 0x1086, 0x1184, 0x1185, 0x1186, 0x1284, 0x1285, 0x1286, 0x1088, 0x1089, 0x108a, 0x1188, 0x1189, 0x118a, 0x1288, 0x1289, 0x128a,
+ 0x1480, 0x1481, 0x1482, 0x1580, 0x1581, 0x1582, 0x1680, 0x1681, 0x1682, 0x1484, 0x1485, 0x1486, 0x1584, 0x1585, 0x1586, 0x1684,
+ 0x1685, 0x1686, 0x1488, 0x1489, 0x148a, 0x1588, 0x1589, 0x158a, 0x1688, 0x1689, 0x168a, 0x1880, 0x1881, 0x1882, 0x1980, 0x1981,
+ 0x1982, 0x1a80, 0x1a81, 0x1a82, 0x1884, 0x1885, 0x1886, 0x1984, 0x1985, 0x1986, 0x1a84, 0x1a85, 0x1a86, 0x1888, 0x1889, 0x188a,
+ 0x1988, 0x1989, 0x198a, 0x1a88, 0x1a89, 0x1a8a, 0x1090, 0x1091, 0x1092, 0x1190, 0x1191, 0x1192, 0x1290, 0x1291, 0x1292, 0x1094,
+ 0x1095, 0x1096, 0x1194, 0x1195, 0x1196, 0x1294, 0x1295, 0x1296, 0x1098, 0x1099, 0x109a, 0x1198, 0x1199, 0x119a, 0x1298, 0x1299,
+ 0x129a, 0x1490, 0x1491, 0x1492, 0x1590, 0x1591, 0x1592, 0x1690, 0x1691, 0x1692, 0x1494, 0x1495, 0x1496, 0x1594, 0x1595, 0x1596,
+ 0x1694, 0x1695, 0x1696, 0x1498, 0x1499, 0x149a, 0x1598, 0x1599, 0x159a, 0x1698, 0x1699, 0x169a, 0x1890, 0x1891, 0x1892, 0x1990,
+ 0x1991, 0x1992, 0x1a90, 0x1a91, 0x1a92, 0x1894, 0x1895, 0x1896, 0x1994, 0x1995, 0x1996, 0x1a94, 0x1a95, 0x1a96, 0x1898, 0x1899,
+ 0x189a, 0x1998, 0x1999, 0x199a, 0x1a98, 0x1a99, 0x1a9a, 0x10a0, 0x10a1, 0x10a2, 0x11a0, 0x11a1, 0x11a2, 0x12a0, 0x12a1, 0x12a2,
+ 0x10a4, 0x10a5, 0x10a6, 0x11a4, 0x11a5, 0x11a6, 0x12a4, 0x12a5, 0x12a6, 0x10a8, 0x10a9, 0x10aa, 0x11a8, 0x11a9, 0x11aa, 0x12a8,
+ 0x12a9, 0x12aa, 0x14a0, 0x14a1, 0x14a2, 0x15a0, 0x15a1, 0x15a2, 0x16a0, 0x16a1, 0x16a2, 0x14a4, 0x14a5, 0x14a6, 0x15a4, 0x15a5,
+ 0x15a6, 0x16a4, 0x16a5, 0x16a6, 0x14a8, 0x14a9, 0x14aa, 0x15a8, 0x15a9, 0x15aa, 0x16a8, 0x16a9, 0x16aa, 0x18a0, 0x18a1, 0x18a2,
+ 0x19a0, 0x19a1, 0x19a2, 0x1aa0, 0x1aa1, 0x1aa2, 0x18a4, 0x18a5, 0x18a6, 0x19a4, 0x19a5, 0x19a6, 0x1aa4, 0x1aa5, 0x1aa6, 0x18a8,
+ 0x18a9, 0x18aa, 0x19a8, 0x19a9, 0x19aa, 0x1aa8, 0x1aa9, 0x1aaa, 0x2080, 0x2081, 0x2082, 0x2180, 0x2181, 0x2182, 0x2280, 0x2281,
+ 0x2282, 0x2084, 0x2085, 0x2086, 0x2184, 0x2185, 0x2186, 0x2284, 0x2285, 0x2286, 0x2088, 0x2089, 0x208a, 0x2188, 0x2189, 0x218a,
+ 0x2288, 0x2289, 0x228a, 0x2480, 0x2481, 0x2482, 0x2580, 0x2581, 0x2582, 0x2680, 0x2681, 0x2682, 0x2484, 0x2485, 0x2486, 0x2584,
+ 0x2585, 0x2586, 0x2684, 0x2685, 0x2686, 0x2488, 0x2489, 0x248a, 0x2588, 0x2589, 0x258a, 0x2688, 0x2689, 0x268a, 0x2880, 0x2881,
+ 0x2882, 0x2980, 0x2981, 0x2982, 0x2a80, 0x2a81, 0x2a82, 0x2884, 0x2885, 0x2886, 0x2984, 0x2985, 0x2986, 0x2a84, 0x2a85, 0x2a86,
+ 0x2888, 0x2889, 0x288a, 0x2988, 0x2989, 0x298a, 0x2a88, 0x2a89, 0x2a8a, 0x2090, 0x2091, 0x2092, 0x2190, 0x2191, 0x2192, 0x2290,
+ 0x2291, 0x2292, 0x2094, 0x2095, 0x2096, 0x2194, 0x2195, 0x2196, 0x2294, 0x2295, 0x2296, 0x2098, 0x2099, 0x209a, 0x2198, 0x2199,
+ 0x219a, 0x2298, 0x2299, 0x229a, 0x2490, 0x2491, 0x2492, 0x2590, 0x2591, 0x2592, 0x2690, 0x2691, 0x2692, 0x2494, 0x2495, 0x2496,
+ 0x2594, 0x2595, 0x2596, 0x2694, 0x2695, 0x2696, 0x2498, 0x2499, 0x249a, 0x2598, 0x2599, 0x259a, 0x2698, 0x2699, 0x269a, 0x2890,
+ 0x2891, 0x2892, 0x2990, 0x2991, 0x2992, 0x2a90, 0x2a91, 0x2a92, 0x2894, 0x2895, 0x2896, 0x2994, 0x2995, 0x2996, 0x2a94, 0x2a95,
+ 0x2a96, 0x2898, 0x2899, 0x289a, 0x2998, 0x2999, 0x299a, 0x2a98, 0x2a99, 0x2a9a, 0x20a0, 0x20a1, 0x20a2, 0x21a0, 0x21a1, 0x21a2,
+ 0x22a0, 0x22a1, 0x22a2, 0x20a4, 0x20a5, 0x20a6, 0x21a4, 0x21a5, 0x21a6, 0x22a4, 0x22a5, 0x22a6, 0x20a8, 0x20a9, 0x20aa, 0x21a8,
+ 0x21a9, 0x21aa, 0x22a8, 0x22a9, 0x22aa, 0x24a0, 0x24a1, 0x24a2, 0x25a0, 0x25a1, 0x25a2, 0x26a0, 0x26a1, 0x26a2, 0x24a4, 0x24a5,
+ 0x24a6, 0x25a4, 0x25a5, 0x25a6, 0x26a4, 0x26a5, 0x26a6, 0x24a8, 0x24a9, 0x24aa, 0x25a8, 0x25a9, 0x25aa, 0x26a8, 0x26a9, 0x26aa,
+ 0x28a0, 0x28a1, 0x28a2, 0x29a0, 0x29a1, 0x29a2, 0x2aa0, 0x2aa1, 0x2aa2, 0x28a4, 0x28a5, 0x28a6, 0x29a4, 0x29a5, 0x29a6, 0x2aa4,
+ 0x2aa5, 0x2aa6, 0x28a8, 0x28a9, 0x28aa, 0x29a8, 0x29a9, 0x29aa, 0x2aa8, 0x2aa9, 0x2aaa, 0x4000, 0x4001, 0x4002, 0x4100, 0x4101,
+ 0x4102, 0x4200, 0x4201, 0x4202, 0x4004, 0x4005, 0x4006, 0x4104, 0x4105, 0x4106, 0x4204, 0x4205, 0x4206, 0x4008, 0x4009, 0x400a,
+ 0x4108, 0x4109, 0x410a, 0x4208, 0x4209, 0x420a, 0x4400, 0x4401, 0x4402, 0x4500, 0x4501, 0x4502, 0x4600, 0x4601, 0x4602, 0x4404,
+ 0x4405, 0x4406, 0x4504, 0x4505, 0x4506, 0x4604, 0x4605, 0x4606, 0x4408, 0x4409, 0x440a, 0x4508, 0x4509, 0x450a, 0x4608, 0x4609,
+ 0x460a, 0x4800, 0x4801, 0x4802, 0x4900, 0x4901, 0x4902, 0x4a00, 0x4a01, 0x4a02, 0x4804, 0x4805, 0x4806, 0x4904, 0x4905, 0x4906,
+ 0x4a04, 0x4a05, 0x4a06, 0x4808, 0x4809, 0x480a, 0x4908, 0x4909, 0x490a, 0x4a08, 0x4a09, 0x4a0a, 0x4010, 0x4011, 0x4012, 0x4110,
+ 0x4111, 0x4112, 0x4210, 0x4211, 0x4212, 0x4014, 0x4015, 0x4016, 0x4114, 0x4115, 0x4116, 0x4214, 0x4215, 0x4216, 0x4018, 0x4019,
+ 0x401a, 0x4118, 0x4119, 0x411a, 0x4218, 0x4219, 0x421a, 0x4410, 0x4411, 0x4412, 0x4510, 0x4511, 0x4512, 0x4610, 0x4611, 0x4612,
+ 0x4414, 0x4415, 0x4416, 0x4514, 0x4515, 0x4516, 0x4614, 0x4615, 0x4616, 0x4418, 0x4419, 0x441a, 0x4518, 0x4519, 0x451a, 0x4618,
+ 0x4619, 0x461a, 0x4810, 0x4811, 0x4812, 0x4910, 0x4911, 0x4912, 0x4a10, 0x4a11, 0x4a12, 0x4814, 0x4815, 0x4816, 0x4914, 0x4915,
+ 0x4916, 0x4a14, 0x4a15, 0x4a16, 0x4818, 0x4819, 0x481a, 0x4918, 0x4919, 0x491a, 0x4a18, 0x4a19, 0x4a1a, 0x4020, 0x4021, 0x4022,
+ 0x4120, 0x4121, 0x4122, 0x4220, 0x4221, 0x4222, 0x4024, 0x4025, 0x4026, 0x4124, 0x4125, 0x4126, 0x4224, 0x4225, 0x4226, 0x4028,
+ 0x4029, 0x402a, 0x4128, 0x4129, 0x412a, 0x4228, 0x4229, 0x422a, 0x4420, 0x4421, 0x4422, 0x4520, 0x4521, 0x4522, 0x4620, 0x4621,
+ 0x4622, 0x4424, 0x4425, 0x4426, 0x4524, 0x4525, 0x4526, 0x4624, 0x4625, 0x4626, 0x4428, 0x4429, 0x442a, 0x4528, 0x4529, 0x452a,
+ 0x4628, 0x4629, 0x462a, 0x4820, 0x4821, 0x4822, 0x4920, 0x4921, 0x4922, 0x4a20, 0x4a21, 0x4a22, 0x4824, 0x4825, 0x4826, 0x4924,
+ 0x4925, 0x4926, 0x4a24, 0x4a25, 0x4a26, 0x4828, 0x4829, 0x482a, 0x4928, 0x4929, 0x492a, 0x4a28, 0x4a29, 0x4a2a, 0x5000, 0x5001,
+ 0x5002, 0x5100, 0x5101, 0x5102, 0x5200, 0x5201, 0x5202, 0x5004, 0x5005, 0x5006, 0x5104, 0x5105, 0x5106, 0x5204, 0x5205, 0x5206,
+ 0x5008, 0x5009, 0x500a, 0x5108, 0x5109, 0x510a, 0x5208, 0x5209, 0x520a, 0x5400, 0x5401, 0x5402, 0x5500, 0x5501, 0x5502, 0x5600,
+ 0x5601, 0x5602, 0x5404, 0x5405, 0x5406, 0x5504, 0x5505, 0x5506, 0x5604, 0x5605, 0x5606, 0x5408, 0x5409, 0x540a, 0x5508, 0x5509,
+ 0x550a, 0x5608, 0x5609, 0x560a, 0x5800, 0x5801, 0x5802, 0x5900, 0x5901, 0x5902, 0x5a00, 0x5a01, 0x5a02, 0x5804, 0x5805, 0x5806,
+ 0x5904, 0x5905, 0x5906, 0x5a04, 0x5a05, 0x5a06, 0x5808, 0x5809, 0x580a, 0x5908, 0x5909, 0x590a, 0x5a08, 0x5a09, 0x5a0a, 0x5010,
+ 0x5011, 0x5012, 0x5110, 0x5111, 0x5112, 0x5210, 0x5211, 0x5212, 0x5014, 0x5015, 0x5016, 0x5114, 0x5115, 0x5116, 0x5214, 0x5215,
+ 0x5216, 0x5018, 0x5019, 0x501a, 0x5118, 0x5119, 0x511a, 0x5218, 0x5219, 0x521a, 0x5410, 0x5411, 0x5412, 0x5510, 0x5511, 0x5512,
+ 0x5610, 0x5611, 0x5612, 0x5414, 0x5415, 0x5416, 0x5514, 0x5515, 0x5516, 0x5614, 0x5615, 0x5616, 0x5418, 0x5419, 0x541a, 0x5518,
+ 0x5519, 0x551a, 0x5618, 0x5619, 0x561a, 0x5810, 0x5811, 0x5812, 0x5910, 0x5911, 0x5912, 0x5a10, 0x5a11, 0x5a12, 0x5814, 0x5815,
+ 0x5816, 0x5914, 0x5915, 0x5916, 0x5a14, 0x5a15, 0x5a16, 0x5818, 0x5819, 0x581a, 0x5918, 0x5919, 0x591a, 0x5a18, 0x5a19, 0x5a1a,
+ 0x5020, 0x5021, 0x5022, 0x5120, 0x5121, 0x5122, 0x5220, 0x5221, 0x5222, 0x5024, 0x5025, 0x5026, 0x5124, 0x5125, 0x5126, 0x5224,
+ 0x5225, 0x5226, 0x5028, 0x5029, 0x502a, 0x5128, 0x5129, 0x512a, 0x5228, 0x5229, 0x522a, 0x5420, 0x5421, 0x5422, 0x5520, 0x5521,
+ 0x5522, 0x5620, 0x5621, 0x5622, 0x5424, 0x5425, 0x5426, 0x5524, 0x5525, 0x5526, 0x5624, 0x5625, 0x5626, 0x5428, 0x5429, 0x542a,
+ 0x5528, 0x5529, 0x552a, 0x5628, 0x5629, 0x562a, 0x5820, 0x5821, 0x5822, 0x5920, 0x5921, 0x5922, 0x5a20, 0x5a21, 0x5a22, 0x5824,
+ 0x5825, 0x5826, 0x5924, 0x5925, 0x5926, 0x5a24, 0x5a25, 0x5a26, 0x5828, 0x5829, 0x582a, 0x5928, 0x5929, 0x592a, 0x5a28, 0x5a29,
+ 0x5a2a, 0x6000, 0x6001, 0x6002, 0x6100, 0x6101, 0x6102, 0x6200, 0x6201, 0x6202, 0x6004, 0x6005, 0x6006, 0x6104, 0x6105, 0x6106,
+ 0x6204, 0x6205, 0x6206, 0x6008, 0x6009, 0x600a, 0x6108, 0x6109, 0x610a, 0x6208, 0x6209, 0x620a, 0x6400, 0x6401, 0x6402, 0x6500,
+ 0x6501, 0x6502, 0x6600, 0x6601, 0x6602, 0x6404, 0x6405, 0x6406, 0x6504, 0x6505, 0x6506, 0x6604, 0x6605, 0x6606, 0x6408, 0x6409,
+ 0x640a, 0x6508, 0x6509, 0x650a, 0x6608, 0x6609, 0x660a, 0x6800, 0x6801, 0x6802, 0x6900, 0x6901, 0x6902, 0x6a00, 0x6a01, 0x6a02,
+ 0x6804, 0x6805, 0x6806, 0x6904, 0x6905, 0x6906, 0x6a04, 0x6a05, 0x6a06, 0x6808, 0x6809, 0x680a, 0x6908, 0x6909, 0x690a, 0x6a08,
+ 0x6a09, 0x6a0a, 0x6010, 0x6011, 0x6012, 0x6110, 0x6111, 0x6112, 0x6210, 0x6211, 0x6212, 0x6014, 0x6015, 0x6016, 0x6114, 0x6115,
+ 0x6116, 0x6214, 0x6215, 0x6216, 0x6018, 0x6019, 0x601a, 0x6118, 0x6119, 0x611a, 0x6218, 0x6219, 0x621a, 0x6410, 0x6411, 0x6412,
+ 0x6510, 0x6511, 0x6512, 0x6610, 0x6611, 0x6612, 0x6414, 0x6415, 0x6416, 0x6514, 0x6515, 0x6516, 0x6614, 0x6615, 0x6616, 0x6418,
+ 0x6419, 0x641a, 0x6518, 0x6519, 0x651a, 0x6618, 0x6619, 0x661a, 0x6810, 0x6811, 0x6812, 0x6910, 0x6911, 0x6912, 0x6a10, 0x6a11,
+ 0x6a12, 0x6814, 0x6815, 0x6816, 0x6914, 0x6915, 0x6916, 0x6a14, 0x6a15, 0x6a16, 0x6818, 0x6819, 0x681a, 0x6918, 0x6919, 0x691a,
+ 0x6a18, 0x6a19, 0x6a1a, 0x6020, 0x6021, 0x6022, 0x6120, 0x6121, 0x6122, 0x6220, 0x6221, 0x6222, 0x6024, 0x6025, 0x6026, 0x6124,
+ 0x6125, 0x6126, 0x6224, 0x6225, 0x6226, 0x6028, 0x6029, 0x602a, 0x6128, 0x6129, 0x612a, 0x6228, 0x6229, 0x622a, 0x6420, 0x6421,
+ 0x6422, 0x6520, 0x6521, 0x6522, 0x6620, 0x6621, 0x6622, 0x6424, 0x6425, 0x6426, 0x6524, 0x6525, 0x6526, 0x6624, 0x6625, 0x6626,
+ 0x6428, 0x6429, 0x642a, 0x6528, 0x6529, 0x652a, 0x6628, 0x6629, 0x662a, 0x6820, 0x6821, 0x6822, 0x6920, 0x6921, 0x6922, 0x6a20,
+ 0x6a21, 0x6a22, 0x6824, 0x6825, 0x6826, 0x6924, 0x6925, 0x6926, 0x6a24, 0x6a25, 0x6a26, 0x6828, 0x6829, 0x682a, 0x6928, 0x6929,
+ 0x692a, 0x6a28, 0x6a29, 0x6a2a, 0x4040, 0x4041, 0x4042, 0x4140, 0x4141, 0x4142, 0x4240, 0x4241, 0x4242, 0x4044, 0x4045, 0x4046,
+ 0x4144, 0x4145, 0x4146, 0x4244, 0x4245, 0x4246, 0x4048, 0x4049, 0x404a, 0x4148, 0x4149, 0x414a, 0x4248, 0x4249, 0x424a, 0x4440,
+ 0x4441, 0x4442, 0x4540, 0x4541, 0x4542, 0x4640, 0x4641, 0x4642, 0x4444, 0x4445, 0x4446, 0x4544, 0x4545, 0x4546, 0x4644, 0x4645,
+ 0x4646, 0x4448, 0x4449, 0x444a, 0x4548, 0x4549, 0x454a, 0x4648, 0x4649, 0x464a, 0x4840, 0x4841, 0x4842, 0x4940, 0x4941, 0x4942,
+ 0x4a40, 0x4a41, 0x4a42, 0x4844, 0x4845, 0x4846, 0x4944, 0x4945, 0x4946, 0x4a44, 0x4a45, 0x4a46, 0x4848, 0x4849, 0x484a, 0x4948,
+ 0x4949, 0x494a, 0x4a48, 0x4a49, 0x4a4a, 0x4050, 0x4051, 0x4052, 0x4150, 0x4151, 0x4152, 0x4250, 0x4251, 0x4252, 0x4054, 0x4055,
+ 0x4056, 0x4154, 0x4155, 0x4156, 0x4254, 0x4255, 0x4256, 0x4058, 0x4059, 0x405a, 0x4158, 0x4159, 0x415a, 0x4258, 0x4259, 0x425a,
+ 0x4450, 0x4451, 0x4452, 0x4550, 0x4551, 0x4552, 0x4650, 0x4651, 0x4652, 0x4454, 0x4455, 0x4456, 0x4554, 0x4555, 0x4556, 0x4654,
+ 0x4655, 0x4656, 0x4458, 0x4459, 0x445a, 0x4558, 0x4559, 0x455a, 0x4658, 0x4659, 0x465a, 0x4850, 0x4851, 0x4852, 0x4950, 0x4951,
+ 0x4952, 0x4a50, 0x4a51, 0x4a52, 0x4854, 0x4855, 0x4856, 0x4954, 0x4955, 0x4956, 0x4a54, 0x4a55, 0x4a56, 0x4858, 0x4859, 0x485a,
+ 0x4958, 0x4959, 0x495a, 0x4a58, 0x4a59, 0x4a5a, 0x4060, 0x4061, 0x4062, 0x4160, 0x4161, 0x4162, 0x4260, 0x4261, 0x4262, 0x4064,
+ 0x4065, 0x4066, 0x4164, 0x4165, 0x4166, 0x4264, 0x4265, 0x4266, 0x4068, 0x4069, 0x406a, 0x4168, 0x4169, 0x416a, 0x4268, 0x4269,
+ 0x426a, 0x4460, 0x4461, 0x4462, 0x4560, 0x4561, 0x4562, 0x4660, 0x4661, 0x4662, 0x4464, 0x4465, 0x4466, 0x4564, 0x4565, 0x4566,
+ 0x4664, 0x4665, 0x4666, 0x4468, 0x4469, 0x446a, 0x4568, 0x4569, 0x456a, 0x4668, 0x4669, 0x466a, 0x4860, 0x4861, 0x4862, 0x4960,
+ 0x4961, 0x4962, 0x4a60, 0x4a61, 0x4a62, 0x4864, 0x4865, 0x4866, 0x4964, 0x4965, 0x4966, 0x4a64, 0x4a65, 0x4a66, 0x4868, 0x4869,
+ 0x486a, 0x4968, 0x4969, 0x496a, 0x4a68, 0x4a69, 0x4a6a, 0x5040, 0x5041, 0x5042, 0x5140, 0x5141, 0x5142, 0x5240, 0x5241, 0x5242,
+ 0x5044, 0x5045, 0x5046, 0x5144, 0x5145, 0x5146, 0x5244, 0x5245, 0x5246, 0x5048, 0x5049, 0x504a, 0x5148, 0x5149, 0x514a, 0x5248,
+ 0x5249, 0x524a, 0x5440, 0x5441, 0x5442, 0x5540, 0x5541, 0x5542, 0x5640, 0x5641, 0x5642, 0x5444, 0x5445, 0x5446, 0x5544, 0x5545,
+ 0x5546, 0x5644, 0x5645, 0x5646, 0x5448, 0x5449, 0x544a, 0x5548, 0x5549, 0x554a, 0x5648, 0x5649, 0x564a, 0x5840, 0x5841, 0x5842,
+ 0x5940, 0x5941, 0x5942, 0x5a40, 0x5a41, 0x5a42, 0x5844, 0x5845, 0x5846, 0x5944, 0x5945, 0x5946, 0x5a44, 0x5a45, 0x5a46, 0x5848,
+ 0x5849, 0x584a, 0x5948, 0x5949, 0x594a, 0x5a48, 0x5a49, 0x5a4a, 0x5050, 0x5051, 0x5052, 0x5150, 0x5151, 0x5152, 0x5250, 0x5251,
+ 0x5252, 0x5054, 0x5055, 0x5056, 0x5154, 0x5155, 0x5156, 0x5254, 0x5255, 0x5256, 0x5058, 0x5059, 0x505a, 0x5158, 0x5159, 0x515a,
+ 0x5258, 0x5259, 0x525a, 0x5450, 0x5451, 0x5452, 0x5550, 0x5551, 0x5552, 0x5650, 0x5651, 0x5652, 0x5454, 0x5455, 0x5456, 0x5554, 0x5555,
+GGML_TABLE_END()
+
+
#endif // GGML_COMMON_IMPL
#endif // GGML_COMMON_IMPL
diff --git a/ggml-cuda/convert.cu b/ggml-cuda/convert.cu
index 2be03a3e..888c8452 100644
--- a/ggml-cuda/convert.cu
+++ b/ggml-cuda/convert.cu
@@ -432,13 +432,20 @@ static __global__ void dequantize_block_iq1_bn(const void * __restrict__ vx, dst
int64_t i = QK_K/QK_IQ1BN * ii + ib/(QK_IQ1BN/32);
if (i >= nb64) return;
ib = ib%(QK_IQ1BN/32);
- const float dl = x[i].extra & (1 << (4*ib + il)) ? -1 : 1;
- const float ml = -dl;
uint16_t idx = x[i].ql[4*ib + il] | ((x[i].qh[2*ib + il/2] << (8 - 4*(il%2))) & 0x0f00);
- const uint16_t gp = iq1bn_grid_u16[idx];
- for (int j = 0; j < 8; ++j) {
- y[j] = dl * ((gp >> 2*j) & 3) + ml;
- }
+ uint16_t val = x[i].extra & (1 << (4*ib + il)) ? 0xaaaa - iq1bn_grid_zzz[idx] : iq1bn_grid_zzz[idx];
+ uint32_t aux32[2];
+ const int8_t * aux8 = (const int8_t *)aux32;
+ aux32[0] = val | (val << 14);
+//#if __CUDA_ARCH__ >= MIN_CC_DP4A // lowest compute capability for integer intrinsics
+// aux32[1] = __vsub4((aux32[0] >> 4) & 0x03030303, 0x01010101);
+// aux32[0] = __vsub4(aux32[0] & 0x03030303, 0x01010101);
+// for (int j = 0; j < 8; ++j) y[j] = aux8[j];
+//#else
+ aux32[1] = (aux32[0] >> 4) & 0x03030303;
+ aux32[0] &= 0x03030303;
+ for (int j = 0; j < 8; ++j) y[j] = aux8[j] - 1;
+//#endif
}
template<typename dst_t>
diff --git a/ggml-cuda/vecdotq.cuh b/ggml-cuda/vecdotq.cuh
index 6b831cf6..bce2c154 100644
--- a/ggml-cuda/vecdotq.cuh
+++ b/ggml-cuda/vecdotq.cuh
@@ -1082,27 +1082,35 @@ static __device__ __forceinline__ float vec_dot_iq1_bn_q8_1(
int sumi = 0;
#if __CUDA_ARCH__ >= MIN_CC_DP4A // lowest compute capability for integer intrinsics
const int * q8 = (const int *)bq8_1[iqs].qs;
- for (int l = 0; l < 4; ++l) {
- uint16_t val = iq1bn_grid_xxx[bq1->ql[4*iqs + l] | ((bq1->qh[2*iqs + l/2] << (8 - 4*(l%2))) & 0x0f00)];
- uint8_t vp = val & 0xff, vm = val >> 8;
- int32_t vp1 = __vcmpeq4(((vp & 0xf) * 0x01010101) & 0x08040201, 0x08040201);
- int32_t vp2 = __vcmpeq4(((vp >> 4) * 0x01010101) & 0x08040201, 0x08040201);
- int32_t vm1 = __vcmpeq4(((vm & 0xf) * 0x01010101) & 0x08040201, 0x08040201);
- int32_t vm2 = __vcmpeq4(((vm >> 4) * 0x01010101) & 0x08040201, 0x08040201);
- int32_t pm = __dp4a(q8[2*l+0], vm1, __dp4a(q8[2*l+1], vm2, 0));
- int32_t pp = __dp4a(q8[2*l+0], vp1, __dp4a(q8[2*l+1], vp2, 0));
- sumi += extra & (1 << l) ? pp - pm : pm - pp;
+ int val32, v1, v2;
+ for (int l = 0; l < 2; ++l) {
+ uint16_t idx1 = bq1->ql[4*iqs + 2*l+0] | ((bq1->qh[2*iqs + l] << 8) & 0x0f00);
+ uint16_t idx2 = bq1->ql[4*iqs + 2*l+1] | ((bq1->qh[2*iqs + l] << 4) & 0x0f00);
+ uint16_t val1 = extra & 1 ? 0xaaaa - iq1bn_grid_zzz[idx1] : iq1bn_grid_zzz[idx1];
+ uint16_t val2 = extra & 2 ? 0xaaaa - iq1bn_grid_zzz[idx2] : iq1bn_grid_zzz[idx2];
+ val32 = val1 | (val1 << 14);
+ v1 = __vsub4(val32 & 0x03030303, 0x01010101);
+ v2 = __vsub4((val32 >> 4) & 0x03030303, 0x01010101);
+ sumi = __dp4a(v1, q8[4*l+0], __dp4a(v2, q8[4*l+1], sumi));
+ val32 = val2 | (val2 << 14);
+ v1 = __vsub4(val32 & 0x03030303, 0x01010101);
+ v2 = __vsub4((val32 >> 4) & 0x03030303, 0x01010101);
+ sumi = __dp4a(v1, q8[4*l+2], __dp4a(v2, q8[4*l+3], sumi));
+ extra >>= 2;
}
#else
+ uint32_t aux32[2];
+ const int8_t * aux8 = (const int8_t *)aux32;
const int8_t * q8 = bq8_1[iqs].qs;
for (int l = 0; l < 4; ++l) {
- uint16_t val = iq1bn_grid_u16[bq1->ql[4*iqs + l] | ((bq1->qh[2*iqs + l/2] << (8 - 4*(l%2))) & 0x0f00)];
- int s1 = 0, s2 = 0;
+ uint16_t idx = bq1->ql[4*iqs + l] | ((bq1->qh[2*iqs + l/2] << (8 - 4*(l%2))) & 0x0f00);
+ uint16_t val = extra & 1 ? 0xaaaa - iq1bn_grid_zzz[idx] : iq1bn_grid_zzz[idx];
+ aux32[0] = val | (val << 14);
+ aux32[1] = (aux32[0] >> 4) & 0x03030303;
+ aux32[0] &= 0x03030303;
for (int j = 0; j < 8; ++j) {
- s1 += q8[j] * ((val >> 2*j) & 3);
- s2 += q8[j];
+ sumi += q8[j] * (aux8[j] - 1);
}
- sumi += extra & (1 << l) ? s2 - s1 : s1 - s2;
q8 += 8;
}
#endif
diff --git a/ggml-quants.h b/ggml-quants.h
index cc677207..3535f178 100644
--- a/ggml-quants.h
+++ b/ggml-quants.h
@@ -107,7 +107,6 @@ void ggml_vec_dot_iq1_m_q8_K (int n, float * GGML_RESTRICT s, size_t bs, const
void ggml_vec_dot_iq4_nl_q8_0 (int n, float * GGML_RESTRICT s, size_t bs, const void * GGML_RESTRICT vx, size_t bx, const void * GGML_RESTRICT vy, size_t by, int nrc);
void ggml_vec_dot_iq4_xs_q8_K (int n, float * GGML_RESTRICT s, size_t bs, const void * GGML_RESTRICT vx, size_t bx, const void * GGML_RESTRICT vy, size_t by, int nrc);
void ggml_vec_dot_iq3_s_q8_K (int n, float * GGML_RESTRICT s, size_t bs, const void * GGML_RESTRICT vx, size_t bx, const void * GGML_RESTRICT vy, size_t by, int nrc);
-void ggml_vec_dot_iq1_bn_q8_0 (int n, float * GGML_RESTRICT s, size_t bs, const void * GGML_RESTRICT vx, size_t bx, const void * GGML_RESTRICT vy, size_t by, int nrc);
void ggml_vec_dot_iq1_bn_q8_K64(int n, float * GGML_RESTRICT s, size_t bs, const void * GGML_RESTRICT vx, size_t bx, const void * GGML_RESTRICT vy, size_t by, int nrc);
void ggml_vec_dot_iq2_bn_q8_K64(int n, float * GGML_RESTRICT s, size_t bs, const void * GGML_RESTRICT vx, size_t bx, const void * GGML_RESTRICT vy, size_t by, int nrc);
diff --git a/iqk-quantize.cpp b/iqk-quantize.cpp
index 350f9062..b7cb14ad 100644
--- a/iqk-quantize.cpp
+++ b/iqk-quantize.cpp
@@ -182,16 +182,21 @@ void dequantize_row_iq1_bn(const block_iq1_bn * x, float * y, int64_t k) {
assert(k%QK_IQ1BN == 0);
int nblock = k / QK_IQ1BN;
+ uint32_t aux32[2];
+ const int8_t * aux8 = (const int8_t *)aux32;
for (int i = 0; i < nblock; ++i) {
uint8_t extra = x[i].extra;
auto qh = x[i].qh;
auto ql = x[i].ql;
for (int k = 0; k < QK_IQ1BN/8; ++k) {
uint16_t idx = ql[k] | ((qh[k/2] << (8 - 4*(k%2))) & 0x0f00);
- uint16_t val = iq1bn_grid_u16[idx];
- float dls = extra & (1 << k) ? -1 : 1;
- for (int j = 0; j < 8; ++j) y[j] = dls * (((val >> 2*j) & 3) - 1);
+ uint16_t val = extra & 1 ? 0xaaaa - iq1bn_grid_zzz[idx] : iq1bn_grid_zzz[idx];
+ aux32[0] = val | (val << 14);
+ aux32[1] = (aux32[0] >> 4) & 0x03030303;
+ aux32[0] &= 0x03030303;
+ for (int j = 0; j < 8; ++j) y[j] = aux8[j] - 1;
y += 8;
+ extra >>= 1;
}
}
}
@@ -233,51 +238,6 @@ void dequantize_row_iq2_bn(const block_iq2_bn * x, float * y, int64_t k) {
}
}
-void ggml_vec_dot_iq1_bn_q8_0 (int n, float * s, size_t bs, const void * vx, size_t bx, const void * vy, size_t by, int nrc) {
-
- GGML_UNUSED(bs);
- GGML_UNUSED(bx);
- GGML_UNUSED(by);
- GGML_UNUSED(nrc);
-
- static_assert(QK_IQ1BN == 64, "This dot product implementation for iq1_bn requires a block size of 64");
-
- const block_iq1_bn * x = (const block_iq1_bn *)vx;
- const block_q8_0 * y = (const block_q8_0 *)vy;
- int nblock = n / QK_IQ1BN;
-
- float sumf = 0;
-
- for (int i = 0; i < nblock; ++i) {
- auto qh = x[i].qh;
- auto ql = x[i].ql;
- auto q8 = y[2*i+0].qs;
- int16_t sumi1 = 0;
- for (int k = 0; k < 4; ++k) {
- uint16_t idx = ql[k] | ((qh[k/2] << (8 - 4*(k%2))) & 0x0f00);
- uint16_t val = iq1bn_grid_u16[idx];
- int16_t sl = 0;
- for (int j = 0; j < 8; ++j) sl += q8[j] * (((val >> 2*j) & 3) - 1);
- sumi1 += x[i].extra & (1 << k) ? -sl : sl;
- q8 += 8;
- }
- q8 = y[2*i+1].qs;
- int16_t sumi2 = 0;
- for (int k = 4; k < 8; ++k) {
- uint16_t idx = ql[k] | ((qh[k/2] << (8 - 4*(k%2))) & 0x0f00);
- uint16_t val = iq1bn_grid_u16[idx];
- int16_t sl = 0;
- for (int j = 0; j < 8; ++j) sl += q8[j] * (((val >> 2*j) & 3) - 1);
- sumi2 += x[i].extra & (1 << k) ? -sl : sl;
- q8 += 8;
- }
- sumf += GGML_FP16_TO_FP32(y[2*i+0].d) * sumi1 + GGML_FP16_TO_FP32(y[2*i+1].d) * sumi2;
- }
-
- *s = sumf;
-
-}
-
void ggml_vec_dot_iq1_bn_q8_K64(int n, float * s, size_t bs, const void * vx, size_t bx, const void * vy, size_t by, int nrc) {
GGML_UNUSED(bs);
@@ -300,6 +260,8 @@ void ggml_vec_dot_iq1_bn_q8_K64(int n, float * s, size_t bs, const void * vx, si
int nblock = n / QK_IQ1BN;
int sumi[8] = {};
+ uint32_t aux32[2];
+ const int8_t * aux8 = (const int8_t *)aux32;
for (int i = 0; i < nblock; ++i) {
auto qh = x[i].qh;
@@ -308,14 +270,19 @@ void ggml_vec_dot_iq1_bn_q8_K64(int n, float * s, size_t bs, const void * vx, si
for (int j = 0; j < QK_IQ1BN/16; ++j) {
uint16_t idx1 = ql[2*j+0] | ((qh[j] << 8) & 0x0f00);
uint16_t idx2 = ql[2*j+1] | ((qh[j] << 4) & 0x0f00);
- uint16_t val1 = extra & 1 ? k_magic - iq1bn_grid_u16[idx1] : iq1bn_grid_u16[idx1];
- uint16_t val2 = extra & 2 ? k_magic - iq1bn_grid_u16[idx2] : iq1bn_grid_u16[idx2];
+ uint16_t val1 = extra & 1 ? k_magic - iq1bn_grid_zzz[idx1] : iq1bn_grid_zzz[idx1];
+ uint16_t val2 = extra & 2 ? k_magic - iq1bn_grid_zzz[idx2] : iq1bn_grid_zzz[idx2];
extra >>= 2;
- for (int k = 0; k < 8; ++k) {
- sumi[k] += q8[k+0] * (((val1 >> 2*k) & 3) - 1);
- sumi[k] += q8[k+8] * (((val2 >> 2*k) & 3) - 1);
- }
- q8 += 16;
+ aux32[0] = val1 | (val1 << 14);
+ aux32[1] = (aux32[0] >> 4) & 0x03030303;
+ aux32[0] &= 0x03030303;
+ for (int k = 0; k < 8; ++k) sumi[k] += q8[k] * (aux8[k] - 1);
+ q8 += 8;
+ aux32[0] = val2 | (val2 << 14);
+ aux32[1] = (aux32[0] >> 4) & 0x03030303;
+ aux32[0] &= 0x03030303;
+ for (int k = 0; k < 8; ++k) sumi[k] += q8[k] * (aux8[k] - 1);
+ q8 += 8;
}
}
diff --git a/iqk_mul_mat.cpp b/iqk_mul_mat.cpp
index 1e195ec2..907b0d19 100644
--- a/iqk_mul_mat.cpp
+++ b/iqk_mul_mat.cpp
@@ -2788,6 +2788,7 @@ bool MulMat::prepare(int typeA, int typeB, int ne00, MulMat& mm, int Ny) {
MulMat::set_functions<DequantizerIQ2XXS>(mm);
break;
case GGML_TYPE_IQ1_BN:
+ return false;
assert (ne00 % QK_IQ1BN == 0);
mm.funcs[0] = mul_mat_iq1bn_q8_K64<1>;
mm.funcs[1] = mul_mat_iq1bn_q8_K64<2>;