diff --git a/src/org/jcodings/unicode/UnicodeEncoding.java b/src/org/jcodings/unicode/UnicodeEncoding.java index 18f87b8a..436194ac 100644 --- a/src/org/jcodings/unicode/UnicodeEncoding.java +++ b/src/org/jcodings/unicode/UnicodeEncoding.java @@ -477,17 +477,605 @@ private static CaseInsensitiveBytesHash initializeCTypeNameTable() { static final CaseInsensitiveBytesHash CTypeNameHash = initializeCTypeNameTable(); - static final int CaseFold_From[] = readIntArray("CaseFold_From"); - static final int CaseFold_To[][] = readNestedIntArray("CaseFold_To"); - static final int CaseFold_Locale_From[] = readIntArray("CaseFold_Locale_From"); - static final int CaseFold_Locale_To[][] = readNestedIntArray("CaseFold_Locale_To"); - static final int CaseUnfold_11_From[] = readIntArray("CaseUnfold_11_From"); - static final int CaseUnfold_11_To[][] = readNestedIntArray("CaseUnfold_11_To"); - static final int CaseUnfold_11_Locale_From[] = readIntArray("CaseUnfold_11_Locale_From"); - static final int CaseUnfold_11_Locale_To[][] = readNestedIntArray("CaseUnfold_11_Locale_To"); - static final int CaseUnfold_12[][] = readNestedIntArray("CaseUnfold_12"); - static final int CaseUnfold_12_Locale[][] = readNestedIntArray("CaseUnfold_12_Locale"); - static final int CaseUnfold_13[][] = readNestedIntArray("CaseUnfold_13"); + static final int CaseFold_From[] = { + 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, + 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, + 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, + 0x5a, 0xb5, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, + 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, + 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, + 0xd6, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, + 0xdf, 0x100, 0x102, 0x104, 0x106, 0x108, 0x10a, 0x10c, + 0x10e, 0x110, 0x112, 0x114, 0x116, 0x118, 0x11a, 0x11c, + 0x11e, 0x120, 0x122, 0x124, 0x126, 0x128, 0x12a, 0x12c, + 0x12e, 0x132, 0x134, 0x136, 0x139, 0x13b, 0x13d, 0x13f, + 0x141, 0x143, 0x145, 0x147, 0x149, 0x14a, 0x14c, 0x14e, + 0x150, 0x152, 0x154, 0x156, 0x158, 0x15a, 0x15c, 0x15e, + 0x160, 0x162, 0x164, 0x166, 0x168, 0x16a, 0x16c, 0x16e, + 0x170, 0x172, 0x174, 0x176, 0x178, 0x179, 0x17b, 0x17d, + 0x17f, 0x181, 0x182, 0x184, 0x186, 0x187, 0x189, 0x18a, + 0x18b, 0x18e, 0x18f, 0x190, 0x191, 0x193, 0x194, 0x196, + 0x197, 0x198, 0x19c, 0x19d, 0x19f, 0x1a0, 0x1a2, 0x1a4, + 0x1a6, 0x1a7, 0x1a9, 0x1ac, 0x1ae, 0x1af, 0x1b1, 0x1b2, + 0x1b3, 0x1b5, 0x1b7, 0x1b8, 0x1bc, 0x1c4, 0x1c5, 0x1c7, + 0x1c8, 0x1ca, 0x1cb, 0x1cd, 0x1cf, 0x1d1, 0x1d3, 0x1d5, + 0x1d7, 0x1d9, 0x1db, 0x1de, 0x1e0, 0x1e2, 0x1e4, 0x1e6, + 0x1e8, 0x1ea, 0x1ec, 0x1ee, 0x1f0, 0x1f1, 0x1f2, 0x1f4, + 0x1f6, 0x1f7, 0x1f8, 0x1fa, 0x1fc, 0x1fe, 0x200, 0x202, + 0x204, 0x206, 0x208, 0x20a, 0x20c, 0x20e, 0x210, 0x212, + 0x214, 0x216, 0x218, 0x21a, 0x21c, 0x21e, 0x220, 0x222, + 0x224, 0x226, 0x228, 0x22a, 0x22c, 0x22e, 0x230, 0x232, + 0x23b, 0x23d, 0x241, 0x345, 0x386, 0x388, 0x389, 0x38a, + 0x38c, 0x38e, 0x38f, 0x390, 0x391, 0x392, 0x393, 0x394, + 0x395, 0x396, 0x397, 0x398, 0x399, 0x39a, 0x39b, 0x39c, + 0x39d, 0x39e, 0x39f, 0x3a0, 0x3a1, 0x3a3, 0x3a4, 0x3a5, + 0x3a6, 0x3a7, 0x3a8, 0x3a9, 0x3aa, 0x3ab, 0x3b0, 0x3c2, + 0x3d0, 0x3d1, 0x3d5, 0x3d6, 0x3d8, 0x3da, 0x3dc, 0x3de, + 0x3e0, 0x3e2, 0x3e4, 0x3e6, 0x3e8, 0x3ea, 0x3ec, 0x3ee, + 0x3f0, 0x3f1, 0x3f4, 0x3f5, 0x3f7, 0x3f9, 0x3fa, 0x400, + 0x401, 0x402, 0x403, 0x404, 0x405, 0x406, 0x407, 0x408, + 0x409, 0x40a, 0x40b, 0x40c, 0x40d, 0x40e, 0x40f, 0x410, + 0x411, 0x412, 0x413, 0x414, 0x415, 0x416, 0x417, 0x418, + 0x419, 0x41a, 0x41b, 0x41c, 0x41d, 0x41e, 0x41f, 0x420, + 0x421, 0x422, 0x423, 0x424, 0x425, 0x426, 0x427, 0x428, + 0x429, 0x42a, 0x42b, 0x42c, 0x42d, 0x42e, 0x42f, 0x460, + 0x462, 0x464, 0x466, 0x468, 0x46a, 0x46c, 0x46e, 0x470, + 0x472, 0x474, 0x476, 0x478, 0x47a, 0x47c, 0x47e, 0x480, + 0x48a, 0x48c, 0x48e, 0x490, 0x492, 0x494, 0x496, 0x498, + 0x49a, 0x49c, 0x49e, 0x4a0, 0x4a2, 0x4a4, 0x4a6, 0x4a8, + 0x4aa, 0x4ac, 0x4ae, 0x4b0, 0x4b2, 0x4b4, 0x4b6, 0x4b8, + 0x4ba, 0x4bc, 0x4be, 0x4c1, 0x4c3, 0x4c5, 0x4c7, 0x4c9, + 0x4cb, 0x4cd, 0x4d0, 0x4d2, 0x4d4, 0x4d6, 0x4d8, 0x4da, + 0x4dc, 0x4de, 0x4e0, 0x4e2, 0x4e4, 0x4e6, 0x4e8, 0x4ea, + 0x4ec, 0x4ee, 0x4f0, 0x4f2, 0x4f4, 0x4f6, 0x4f8, 0x500, + 0x502, 0x504, 0x506, 0x508, 0x50a, 0x50c, 0x50e, 0x531, + 0x532, 0x533, 0x534, 0x535, 0x536, 0x537, 0x538, 0x539, + 0x53a, 0x53b, 0x53c, 0x53d, 0x53e, 0x53f, 0x540, 0x541, + 0x542, 0x543, 0x544, 0x545, 0x546, 0x547, 0x548, 0x549, + 0x54a, 0x54b, 0x54c, 0x54d, 0x54e, 0x54f, 0x550, 0x551, + 0x552, 0x553, 0x554, 0x555, 0x556, 0x587, 0x10a0, 0x10a1, + 0x10a2, 0x10a3, 0x10a4, 0x10a5, 0x10a6, 0x10a7, 0x10a8, 0x10a9, + 0x10aa, 0x10ab, 0x10ac, 0x10ad, 0x10ae, 0x10af, 0x10b0, 0x10b1, + 0x10b2, 0x10b3, 0x10b4, 0x10b5, 0x10b6, 0x10b7, 0x10b8, 0x10b9, + 0x10ba, 0x10bb, 0x10bc, 0x10bd, 0x10be, 0x10bf, 0x10c0, 0x10c1, + 0x10c2, 0x10c3, 0x10c4, 0x10c5, 0x1e00, 0x1e02, 0x1e04, 0x1e06, + 0x1e08, 0x1e0a, 0x1e0c, 0x1e0e, 0x1e10, 0x1e12, 0x1e14, 0x1e16, + 0x1e18, 0x1e1a, 0x1e1c, 0x1e1e, 0x1e20, 0x1e22, 0x1e24, 0x1e26, + 0x1e28, 0x1e2a, 0x1e2c, 0x1e2e, 0x1e30, 0x1e32, 0x1e34, 0x1e36, + 0x1e38, 0x1e3a, 0x1e3c, 0x1e3e, 0x1e40, 0x1e42, 0x1e44, 0x1e46, + 0x1e48, 0x1e4a, 0x1e4c, 0x1e4e, 0x1e50, 0x1e52, 0x1e54, 0x1e56, + 0x1e58, 0x1e5a, 0x1e5c, 0x1e5e, 0x1e60, 0x1e62, 0x1e64, 0x1e66, + 0x1e68, 0x1e6a, 0x1e6c, 0x1e6e, 0x1e70, 0x1e72, 0x1e74, 0x1e76, + 0x1e78, 0x1e7a, 0x1e7c, 0x1e7e, 0x1e80, 0x1e82, 0x1e84, 0x1e86, + 0x1e88, 0x1e8a, 0x1e8c, 0x1e8e, 0x1e90, 0x1e92, 0x1e94, 0x1e96, + 0x1e97, 0x1e98, 0x1e99, 0x1e9a, 0x1e9b, 0x1ea0, 0x1ea2, 0x1ea4, + 0x1ea6, 0x1ea8, 0x1eaa, 0x1eac, 0x1eae, 0x1eb0, 0x1eb2, 0x1eb4, + 0x1eb6, 0x1eb8, 0x1eba, 0x1ebc, 0x1ebe, 0x1ec0, 0x1ec2, 0x1ec4, + 0x1ec6, 0x1ec8, 0x1eca, 0x1ecc, 0x1ece, 0x1ed0, 0x1ed2, 0x1ed4, + 0x1ed6, 0x1ed8, 0x1eda, 0x1edc, 0x1ede, 0x1ee0, 0x1ee2, 0x1ee4, + 0x1ee6, 0x1ee8, 0x1eea, 0x1eec, 0x1eee, 0x1ef0, 0x1ef2, 0x1ef4, + 0x1ef6, 0x1ef8, 0x1f08, 0x1f09, 0x1f0a, 0x1f0b, 0x1f0c, 0x1f0d, + 0x1f0e, 0x1f0f, 0x1f18, 0x1f19, 0x1f1a, 0x1f1b, 0x1f1c, 0x1f1d, + 0x1f28, 0x1f29, 0x1f2a, 0x1f2b, 0x1f2c, 0x1f2d, 0x1f2e, 0x1f2f, + 0x1f38, 0x1f39, 0x1f3a, 0x1f3b, 0x1f3c, 0x1f3d, 0x1f3e, 0x1f3f, + 0x1f48, 0x1f49, 0x1f4a, 0x1f4b, 0x1f4c, 0x1f4d, 0x1f50, 0x1f52, + 0x1f54, 0x1f56, 0x1f59, 0x1f5b, 0x1f5d, 0x1f5f, 0x1f68, 0x1f69, + 0x1f6a, 0x1f6b, 0x1f6c, 0x1f6d, 0x1f6e, 0x1f6f, 0x1f80, 0x1f81, + 0x1f82, 0x1f83, 0x1f84, 0x1f85, 0x1f86, 0x1f87, 0x1f88, 0x1f89, + 0x1f8a, 0x1f8b, 0x1f8c, 0x1f8d, 0x1f8e, 0x1f8f, 0x1f90, 0x1f91, + 0x1f92, 0x1f93, 0x1f94, 0x1f95, 0x1f96, 0x1f97, 0x1f98, 0x1f99, + 0x1f9a, 0x1f9b, 0x1f9c, 0x1f9d, 0x1f9e, 0x1f9f, 0x1fa0, 0x1fa1, + 0x1fa2, 0x1fa3, 0x1fa4, 0x1fa5, 0x1fa6, 0x1fa7, 0x1fa8, 0x1fa9, + 0x1faa, 0x1fab, 0x1fac, 0x1fad, 0x1fae, 0x1faf, 0x1fb2, 0x1fb3, + 0x1fb4, 0x1fb6, 0x1fb7, 0x1fb8, 0x1fb9, 0x1fba, 0x1fbb, 0x1fbc, + 0x1fbe, 0x1fc2, 0x1fc3, 0x1fc4, 0x1fc6, 0x1fc7, 0x1fc8, 0x1fc9, + 0x1fca, 0x1fcb, 0x1fcc, 0x1fd2, 0x1fd3, 0x1fd6, 0x1fd7, 0x1fd8, + 0x1fd9, 0x1fda, 0x1fdb, 0x1fe2, 0x1fe3, 0x1fe4, 0x1fe6, 0x1fe7, + 0x1fe8, 0x1fe9, 0x1fea, 0x1feb, 0x1fec, 0x1ff2, 0x1ff3, 0x1ff4, + 0x1ff6, 0x1ff7, 0x1ff8, 0x1ff9, 0x1ffa, 0x1ffb, 0x1ffc, 0x2126, + 0x212a, 0x212b, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, + 0x2166, 0x2167, 0x2168, 0x2169, 0x216a, 0x216b, 0x216c, 0x216d, + 0x216e, 0x216f, 0x24b6, 0x24b7, 0x24b8, 0x24b9, 0x24ba, 0x24bb, + 0x24bc, 0x24bd, 0x24be, 0x24bf, 0x24c0, 0x24c1, 0x24c2, 0x24c3, + 0x24c4, 0x24c5, 0x24c6, 0x24c7, 0x24c8, 0x24c9, 0x24ca, 0x24cb, + 0x24cc, 0x24cd, 0x24ce, 0x24cf, 0x2c00, 0x2c01, 0x2c02, 0x2c03, + 0x2c04, 0x2c05, 0x2c06, 0x2c07, 0x2c08, 0x2c09, 0x2c0a, 0x2c0b, + 0x2c0c, 0x2c0d, 0x2c0e, 0x2c0f, 0x2c10, 0x2c11, 0x2c12, 0x2c13, + 0x2c14, 0x2c15, 0x2c16, 0x2c17, 0x2c18, 0x2c19, 0x2c1a, 0x2c1b, + 0x2c1c, 0x2c1d, 0x2c1e, 0x2c1f, 0x2c20, 0x2c21, 0x2c22, 0x2c23, + 0x2c24, 0x2c25, 0x2c26, 0x2c27, 0x2c28, 0x2c29, 0x2c2a, 0x2c2b, + 0x2c2c, 0x2c2d, 0x2c2e, 0x2c80, 0x2c82, 0x2c84, 0x2c86, 0x2c88, + 0x2c8a, 0x2c8c, 0x2c8e, 0x2c90, 0x2c92, 0x2c94, 0x2c96, 0x2c98, + 0x2c9a, 0x2c9c, 0x2c9e, 0x2ca0, 0x2ca2, 0x2ca4, 0x2ca6, 0x2ca8, + 0x2caa, 0x2cac, 0x2cae, 0x2cb0, 0x2cb2, 0x2cb4, 0x2cb6, 0x2cb8, + 0x2cba, 0x2cbc, 0x2cbe, 0x2cc0, 0x2cc2, 0x2cc4, 0x2cc6, 0x2cc8, + 0x2cca, 0x2ccc, 0x2cce, 0x2cd0, 0x2cd2, 0x2cd4, 0x2cd6, 0x2cd8, + 0x2cda, 0x2cdc, 0x2cde, 0x2ce0, 0x2ce2, 0xfb00, 0xfb01, 0xfb02, + 0xfb03, 0xfb04, 0xfb05, 0xfb06, 0xfb13, 0xfb14, 0xfb15, 0xfb16, + 0xfb17, 0xff21, 0xff22, 0xff23, 0xff24, 0xff25, 0xff26, 0xff27, + 0xff28, 0xff29, 0xff2a, 0xff2b, 0xff2c, 0xff2d, 0xff2e, 0xff2f, + 0xff30, 0xff31, 0xff32, 0xff33, 0xff34, 0xff35, 0xff36, 0xff37, + 0xff38, 0xff39, 0xff3a, 0x10400, 0x10401, 0x10402, 0x10403, 0x10404, + 0x10405, 0x10406, 0x10407, 0x10408, 0x10409, 0x1040a, 0x1040b, 0x1040c, + 0x1040d, 0x1040e, 0x1040f, 0x10410, 0x10411, 0x10412, 0x10413, 0x10414, + 0x10415, 0x10416, 0x10417, 0x10418, 0x10419, 0x1041a, 0x1041b, 0x1041c, + 0x1041d, 0x1041e, 0x1041f, 0x10420, 0x10421, 0x10422, 0x10423, 0x10424, + 0x10425, 0x10426, 0x10427 + }; + + static final int CaseFold_To[][] = { + {0x61}, {0x62}, {0x63}, {0x64}, {0x65}, {0x66}, + {0x67}, {0x68}, {0x6a}, {0x6b}, {0x6c}, {0x6d}, + {0x6e}, {0x6f}, {0x70}, {0x71}, {0x72}, {0x73}, + {0x74}, {0x75}, {0x76}, {0x77}, {0x78}, {0x79}, + {0x7a}, {0x3bc}, {0xe0}, {0xe1}, {0xe2}, {0xe3}, + {0xe4}, {0xe5}, {0xe6}, {0xe7}, {0xe8}, {0xe9}, + {0xea}, {0xeb}, {0xec}, {0xed}, {0xee}, {0xef}, + {0xf0}, {0xf1}, {0xf2}, {0xf3}, {0xf4}, {0xf5}, + {0xf6}, {0xf8}, {0xf9}, {0xfa}, {0xfb}, {0xfc}, + {0xfd}, {0xfe}, {0x73, 0x73}, {0x101}, {0x103}, {0x105}, + {0x107}, {0x109}, {0x10b}, {0x10d}, {0x10f}, {0x111}, + {0x113}, {0x115}, {0x117}, {0x119}, {0x11b}, {0x11d}, + {0x11f}, {0x121}, {0x123}, {0x125}, {0x127}, {0x129}, + {0x12b}, {0x12d}, {0x12f}, {0x133}, {0x135}, {0x137}, + {0x13a}, {0x13c}, {0x13e}, {0x140}, {0x142}, {0x144}, + {0x146}, {0x148}, {0x2bc, 0x6e}, {0x14b}, {0x14d}, {0x14f}, + {0x151}, {0x153}, {0x155}, {0x157}, {0x159}, {0x15b}, + {0x15d}, {0x15f}, {0x161}, {0x163}, {0x165}, {0x167}, + {0x169}, {0x16b}, {0x16d}, {0x16f}, {0x171}, {0x173}, + {0x175}, {0x177}, {0xff}, {0x17a}, {0x17c}, {0x17e}, + {0x73}, {0x253}, {0x183}, {0x185}, {0x254}, {0x188}, + {0x256}, {0x257}, {0x18c}, {0x1dd}, {0x259}, {0x25b}, + {0x192}, {0x260}, {0x263}, {0x269}, {0x268}, {0x199}, + {0x26f}, {0x272}, {0x275}, {0x1a1}, {0x1a3}, {0x1a5}, + {0x280}, {0x1a8}, {0x283}, {0x1ad}, {0x288}, {0x1b0}, + {0x28a}, {0x28b}, {0x1b4}, {0x1b6}, {0x292}, {0x1b9}, + {0x1bd}, {0x1c6}, {0x1c6}, {0x1c9}, {0x1c9}, {0x1cc}, + {0x1cc}, {0x1ce}, {0x1d0}, {0x1d2}, {0x1d4}, {0x1d6}, + {0x1d8}, {0x1da}, {0x1dc}, {0x1df}, {0x1e1}, {0x1e3}, + {0x1e5}, {0x1e7}, {0x1e9}, {0x1eb}, {0x1ed}, {0x1ef}, + {0x6a, 0x30c}, {0x1f3}, {0x1f3}, {0x1f5}, {0x195}, {0x1bf}, + {0x1f9}, {0x1fb}, {0x1fd}, {0x1ff}, {0x201}, {0x203}, + {0x205}, {0x207}, {0x209}, {0x20b}, {0x20d}, {0x20f}, + {0x211}, {0x213}, {0x215}, {0x217}, {0x219}, {0x21b}, + {0x21d}, {0x21f}, {0x19e}, {0x223}, {0x225}, {0x227}, + {0x229}, {0x22b}, {0x22d}, {0x22f}, {0x231}, {0x233}, + {0x23c}, {0x19a}, {0x294}, {0x3b9}, {0x3ac}, {0x3ad}, + {0x3ae}, {0x3af}, {0x3cc}, {0x3cd}, {0x3ce}, {0x3b9, 0x308, 0x301}, + {0x3b1}, {0x3b2}, {0x3b3}, {0x3b4}, {0x3b5}, {0x3b6}, + {0x3b7}, {0x3b8}, {0x3b9}, {0x3ba}, {0x3bb}, {0x3bc}, + {0x3bd}, {0x3be}, {0x3bf}, {0x3c0}, {0x3c1}, {0x3c3}, + {0x3c4}, {0x3c5}, {0x3c6}, {0x3c7}, {0x3c8}, {0x3c9}, + {0x3ca}, {0x3cb}, {0x3c5, 0x308, 0x301}, {0x3c3}, {0x3b2}, {0x3b8}, + {0x3c6}, {0x3c0}, {0x3d9}, {0x3db}, {0x3dd}, {0x3df}, + {0x3e1}, {0x3e3}, {0x3e5}, {0x3e7}, {0x3e9}, {0x3eb}, + {0x3ed}, {0x3ef}, {0x3ba}, {0x3c1}, {0x3b8}, {0x3b5}, + {0x3f8}, {0x3f2}, {0x3fb}, {0x450}, {0x451}, {0x452}, + {0x453}, {0x454}, {0x455}, {0x456}, {0x457}, {0x458}, + {0x459}, {0x45a}, {0x45b}, {0x45c}, {0x45d}, {0x45e}, + {0x45f}, {0x430}, {0x431}, {0x432}, {0x433}, {0x434}, + {0x435}, {0x436}, {0x437}, {0x438}, {0x439}, {0x43a}, + {0x43b}, {0x43c}, {0x43d}, {0x43e}, {0x43f}, {0x440}, + {0x441}, {0x442}, {0x443}, {0x444}, {0x445}, {0x446}, + {0x447}, {0x448}, {0x449}, {0x44a}, {0x44b}, {0x44c}, + {0x44d}, {0x44e}, {0x44f}, {0x461}, {0x463}, {0x465}, + {0x467}, {0x469}, {0x46b}, {0x46d}, {0x46f}, {0x471}, + {0x473}, {0x475}, {0x477}, {0x479}, {0x47b}, {0x47d}, + {0x47f}, {0x481}, {0x48b}, {0x48d}, {0x48f}, {0x491}, + {0x493}, {0x495}, {0x497}, {0x499}, {0x49b}, {0x49d}, + {0x49f}, {0x4a1}, {0x4a3}, {0x4a5}, {0x4a7}, {0x4a9}, + {0x4ab}, {0x4ad}, {0x4af}, {0x4b1}, {0x4b3}, {0x4b5}, + {0x4b7}, {0x4b9}, {0x4bb}, {0x4bd}, {0x4bf}, {0x4c2}, + {0x4c4}, {0x4c6}, {0x4c8}, {0x4ca}, {0x4cc}, {0x4ce}, + {0x4d1}, {0x4d3}, {0x4d5}, {0x4d7}, {0x4d9}, {0x4db}, + {0x4dd}, {0x4df}, {0x4e1}, {0x4e3}, {0x4e5}, {0x4e7}, + {0x4e9}, {0x4eb}, {0x4ed}, {0x4ef}, {0x4f1}, {0x4f3}, + {0x4f5}, {0x4f7}, {0x4f9}, {0x501}, {0x503}, {0x505}, + {0x507}, {0x509}, {0x50b}, {0x50d}, {0x50f}, {0x561}, + {0x562}, {0x563}, {0x564}, {0x565}, {0x566}, {0x567}, + {0x568}, {0x569}, {0x56a}, {0x56b}, {0x56c}, {0x56d}, + {0x56e}, {0x56f}, {0x570}, {0x571}, {0x572}, {0x573}, + {0x574}, {0x575}, {0x576}, {0x577}, {0x578}, {0x579}, + {0x57a}, {0x57b}, {0x57c}, {0x57d}, {0x57e}, {0x57f}, + {0x580}, {0x581}, {0x582}, {0x583}, {0x584}, {0x585}, + {0x586}, {0x565, 0x582}, {0x2d00}, {0x2d01}, {0x2d02}, {0x2d03}, + {0x2d04}, {0x2d05}, {0x2d06}, {0x2d07}, {0x2d08}, {0x2d09}, + {0x2d0a}, {0x2d0b}, {0x2d0c}, {0x2d0d}, {0x2d0e}, {0x2d0f}, + {0x2d10}, {0x2d11}, {0x2d12}, {0x2d13}, {0x2d14}, {0x2d15}, + {0x2d16}, {0x2d17}, {0x2d18}, {0x2d19}, {0x2d1a}, {0x2d1b}, + {0x2d1c}, {0x2d1d}, {0x2d1e}, {0x2d1f}, {0x2d20}, {0x2d21}, + {0x2d22}, {0x2d23}, {0x2d24}, {0x2d25}, {0x1e01}, {0x1e03}, + {0x1e05}, {0x1e07}, {0x1e09}, {0x1e0b}, {0x1e0d}, {0x1e0f}, + {0x1e11}, {0x1e13}, {0x1e15}, {0x1e17}, {0x1e19}, {0x1e1b}, + {0x1e1d}, {0x1e1f}, {0x1e21}, {0x1e23}, {0x1e25}, {0x1e27}, + {0x1e29}, {0x1e2b}, {0x1e2d}, {0x1e2f}, {0x1e31}, {0x1e33}, + {0x1e35}, {0x1e37}, {0x1e39}, {0x1e3b}, {0x1e3d}, {0x1e3f}, + {0x1e41}, {0x1e43}, {0x1e45}, {0x1e47}, {0x1e49}, {0x1e4b}, + {0x1e4d}, {0x1e4f}, {0x1e51}, {0x1e53}, {0x1e55}, {0x1e57}, + {0x1e59}, {0x1e5b}, {0x1e5d}, {0x1e5f}, {0x1e61}, {0x1e63}, + {0x1e65}, {0x1e67}, {0x1e69}, {0x1e6b}, {0x1e6d}, {0x1e6f}, + {0x1e71}, {0x1e73}, {0x1e75}, {0x1e77}, {0x1e79}, {0x1e7b}, + {0x1e7d}, {0x1e7f}, {0x1e81}, {0x1e83}, {0x1e85}, {0x1e87}, + {0x1e89}, {0x1e8b}, {0x1e8d}, {0x1e8f}, {0x1e91}, {0x1e93}, + {0x1e95}, {0x68, 0x331}, {0x74, 0x308}, {0x77, 0x30a}, {0x79, 0x30a}, {0x61, 0x2be}, + {0x1e61}, {0x1ea1}, {0x1ea3}, {0x1ea5}, {0x1ea7}, {0x1ea9}, + {0x1eab}, {0x1ead}, {0x1eaf}, {0x1eb1}, {0x1eb3}, {0x1eb5}, + {0x1eb7}, {0x1eb9}, {0x1ebb}, {0x1ebd}, {0x1ebf}, {0x1ec1}, + {0x1ec3}, {0x1ec5}, {0x1ec7}, {0x1ec9}, {0x1ecb}, {0x1ecd}, + {0x1ecf}, {0x1ed1}, {0x1ed3}, {0x1ed5}, {0x1ed7}, {0x1ed9}, + {0x1edb}, {0x1edd}, {0x1edf}, {0x1ee1}, {0x1ee3}, {0x1ee5}, + {0x1ee7}, {0x1ee9}, {0x1eeb}, {0x1eed}, {0x1eef}, {0x1ef1}, + {0x1ef3}, {0x1ef5}, {0x1ef7}, {0x1ef9}, {0x1f00}, {0x1f01}, + {0x1f02}, {0x1f03}, {0x1f04}, {0x1f05}, {0x1f06}, {0x1f07}, + {0x1f10}, {0x1f11}, {0x1f12}, {0x1f13}, {0x1f14}, {0x1f15}, + {0x1f20}, {0x1f21}, {0x1f22}, {0x1f23}, {0x1f24}, {0x1f25}, + {0x1f26}, {0x1f27}, {0x1f30}, {0x1f31}, {0x1f32}, {0x1f33}, + {0x1f34}, {0x1f35}, {0x1f36}, {0x1f37}, {0x1f40}, {0x1f41}, + {0x1f42}, {0x1f43}, {0x1f44}, {0x1f45}, {0x3c5, 0x313}, {0x3c5, 0x313, 0x300}, + {0x3c5, 0x313, 0x301}, {0x3c5, 0x313, 0x342}, {0x1f51}, {0x1f53}, {0x1f55}, {0x1f57}, + {0x1f60}, {0x1f61}, {0x1f62}, {0x1f63}, {0x1f64}, {0x1f65}, + {0x1f66}, {0x1f67}, {0x1f00, 0x3b9}, {0x1f01, 0x3b9}, {0x1f02, 0x3b9}, {0x1f03, 0x3b9}, + {0x1f04, 0x3b9}, {0x1f05, 0x3b9}, {0x1f06, 0x3b9}, {0x1f07, 0x3b9}, {0x1f00, 0x3b9}, {0x1f01, 0x3b9}, + {0x1f02, 0x3b9}, {0x1f03, 0x3b9}, {0x1f04, 0x3b9}, {0x1f05, 0x3b9}, {0x1f06, 0x3b9}, {0x1f07, 0x3b9}, + {0x1f20, 0x3b9}, {0x1f21, 0x3b9}, {0x1f22, 0x3b9}, {0x1f23, 0x3b9}, {0x1f24, 0x3b9}, {0x1f25, 0x3b9}, + {0x1f26, 0x3b9}, {0x1f27, 0x3b9}, {0x1f20, 0x3b9}, {0x1f21, 0x3b9}, {0x1f22, 0x3b9}, {0x1f23, 0x3b9}, + {0x1f24, 0x3b9}, {0x1f25, 0x3b9}, {0x1f26, 0x3b9}, {0x1f27, 0x3b9}, {0x1f60, 0x3b9}, {0x1f61, 0x3b9}, + {0x1f62, 0x3b9}, {0x1f63, 0x3b9}, {0x1f64, 0x3b9}, {0x1f65, 0x3b9}, {0x1f66, 0x3b9}, {0x1f67, 0x3b9}, + {0x1f60, 0x3b9}, {0x1f61, 0x3b9}, {0x1f62, 0x3b9}, {0x1f63, 0x3b9}, {0x1f64, 0x3b9}, {0x1f65, 0x3b9}, + {0x1f66, 0x3b9}, {0x1f67, 0x3b9}, {0x1f70, 0x3b9}, {0x3b1, 0x3b9}, {0x3ac, 0x3b9}, {0x3b1, 0x342}, + {0x3b1, 0x342, 0x3b9}, {0x1fb0}, {0x1fb1}, {0x1f70}, {0x1f71}, {0x3b1, 0x3b9}, + {0x3b9}, {0x1f74, 0x3b9}, {0x3b7, 0x3b9}, {0x3ae, 0x3b9}, {0x3b7, 0x342}, {0x3b7, 0x342, 0x3b9}, + {0x1f72}, {0x1f73}, {0x1f74}, {0x1f75}, {0x3b7, 0x3b9}, {0x3b9, 0x308, 0x300}, + {0x3b9, 0x308, 0x301}, {0x3b9, 0x342}, {0x3b9, 0x308, 0x342}, {0x1fd0}, {0x1fd1}, {0x1f76}, + {0x1f77}, {0x3c5, 0x308, 0x300}, {0x3c5, 0x308, 0x301}, {0x3c1, 0x313}, {0x3c5, 0x342}, {0x3c5, 0x308, 0x342}, + {0x1fe0}, {0x1fe1}, {0x1f7a}, {0x1f7b}, {0x1fe5}, {0x1f7c, 0x3b9}, + {0x3c9, 0x3b9}, {0x3ce, 0x3b9}, {0x3c9, 0x342}, {0x3c9, 0x342, 0x3b9}, {0x1f78}, {0x1f79}, + {0x1f7c}, {0x1f7d}, {0x3c9, 0x3b9}, {0x3c9}, {0x6b}, {0xe5}, + {0x2170}, {0x2171}, {0x2172}, {0x2173}, {0x2174}, {0x2175}, + {0x2176}, {0x2177}, {0x2178}, {0x2179}, {0x217a}, {0x217b}, + {0x217c}, {0x217d}, {0x217e}, {0x217f}, {0x24d0}, {0x24d1}, + {0x24d2}, {0x24d3}, {0x24d4}, {0x24d5}, {0x24d6}, {0x24d7}, + {0x24d8}, {0x24d9}, {0x24da}, {0x24db}, {0x24dc}, {0x24dd}, + {0x24de}, {0x24df}, {0x24e0}, {0x24e1}, {0x24e2}, {0x24e3}, + {0x24e4}, {0x24e5}, {0x24e6}, {0x24e7}, {0x24e8}, {0x24e9}, + {0x2c30}, {0x2c31}, {0x2c32}, {0x2c33}, {0x2c34}, {0x2c35}, + {0x2c36}, {0x2c37}, {0x2c38}, {0x2c39}, {0x2c3a}, {0x2c3b}, + {0x2c3c}, {0x2c3d}, {0x2c3e}, {0x2c3f}, {0x2c40}, {0x2c41}, + {0x2c42}, {0x2c43}, {0x2c44}, {0x2c45}, {0x2c46}, {0x2c47}, + {0x2c48}, {0x2c49}, {0x2c4a}, {0x2c4b}, {0x2c4c}, {0x2c4d}, + {0x2c4e}, {0x2c4f}, {0x2c50}, {0x2c51}, {0x2c52}, {0x2c53}, + {0x2c54}, {0x2c55}, {0x2c56}, {0x2c57}, {0x2c58}, {0x2c59}, + {0x2c5a}, {0x2c5b}, {0x2c5c}, {0x2c5d}, {0x2c5e}, {0x2c81}, + {0x2c83}, {0x2c85}, {0x2c87}, {0x2c89}, {0x2c8b}, {0x2c8d}, + {0x2c8f}, {0x2c91}, {0x2c93}, {0x2c95}, {0x2c97}, {0x2c99}, + {0x2c9b}, {0x2c9d}, {0x2c9f}, {0x2ca1}, {0x2ca3}, {0x2ca5}, + {0x2ca7}, {0x2ca9}, {0x2cab}, {0x2cad}, {0x2caf}, {0x2cb1}, + {0x2cb3}, {0x2cb5}, {0x2cb7}, {0x2cb9}, {0x2cbb}, {0x2cbd}, + {0x2cbf}, {0x2cc1}, {0x2cc3}, {0x2cc5}, {0x2cc7}, {0x2cc9}, + {0x2ccb}, {0x2ccd}, {0x2ccf}, {0x2cd1}, {0x2cd3}, {0x2cd5}, + {0x2cd7}, {0x2cd9}, {0x2cdb}, {0x2cdd}, {0x2cdf}, {0x2ce1}, + {0x2ce3}, {0x66, 0x66}, {0x66, 0x69}, {0x66, 0x6c}, {0x66, 0x66, 0x69}, {0x66, 0x66, 0x6c}, + {0x73, 0x74}, {0x73, 0x74}, {0x574, 0x576}, {0x574, 0x565}, {0x574, 0x56b}, {0x57e, 0x576}, + {0x574, 0x56d}, {0xff41}, {0xff42}, {0xff43}, {0xff44}, {0xff45}, + {0xff46}, {0xff47}, {0xff48}, {0xff49}, {0xff4a}, {0xff4b}, + {0xff4c}, {0xff4d}, {0xff4e}, {0xff4f}, {0xff50}, {0xff51}, + {0xff52}, {0xff53}, {0xff54}, {0xff55}, {0xff56}, {0xff57}, + {0xff58}, {0xff59}, {0xff5a}, {0x10428}, {0x10429}, {0x1042a}, + {0x1042b}, {0x1042c}, {0x1042d}, {0x1042e}, {0x1042f}, {0x10430}, + {0x10431}, {0x10432}, {0x10433}, {0x10434}, {0x10435}, {0x10436}, + {0x10437}, {0x10438}, {0x10439}, {0x1043a}, {0x1043b}, {0x1043c}, + {0x1043d}, {0x1043e}, {0x1043f}, {0x10440}, {0x10441}, {0x10442}, + {0x10443}, {0x10444}, {0x10445}, {0x10446}, {0x10447}, {0x10448}, + {0x10449}, {0x1044a}, {0x1044b}, {0x1044c}, {0x1044d}, {0x1044e}, + {0x1044f} + }; + + static final int CaseFold_Locale_From[] = { + 0x49, 0x130 + }; + + static final int CaseFold_Locale_To[][] = { + {0x69}, {0x69, 0x307} + }; + + static final int CaseUnfold_11_From[] = { + 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, + 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, + 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, + 0x7a, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, + 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, + 0xef, 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, + 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, + 0x101, 0x103, 0x105, 0x107, 0x109, 0x10b, 0x10d, 0x10f, + 0x111, 0x113, 0x115, 0x117, 0x119, 0x11b, 0x11d, 0x11f, + 0x121, 0x123, 0x125, 0x127, 0x129, 0x12b, 0x12d, 0x12f, + 0x133, 0x135, 0x137, 0x13a, 0x13c, 0x13e, 0x140, 0x142, + 0x144, 0x146, 0x148, 0x14b, 0x14d, 0x14f, 0x151, 0x153, + 0x155, 0x157, 0x159, 0x15b, 0x15d, 0x15f, 0x161, 0x163, + 0x165, 0x167, 0x169, 0x16b, 0x16d, 0x16f, 0x171, 0x173, + 0x175, 0x177, 0x17a, 0x17c, 0x17e, 0x183, 0x185, 0x188, + 0x18c, 0x192, 0x195, 0x199, 0x19a, 0x19e, 0x1a1, 0x1a3, + 0x1a5, 0x1a8, 0x1ad, 0x1b0, 0x1b4, 0x1b6, 0x1b9, 0x1bd, + 0x1bf, 0x1c6, 0x1c9, 0x1cc, 0x1ce, 0x1d0, 0x1d2, 0x1d4, + 0x1d6, 0x1d8, 0x1da, 0x1dc, 0x1dd, 0x1df, 0x1e1, 0x1e3, + 0x1e5, 0x1e7, 0x1e9, 0x1eb, 0x1ed, 0x1ef, 0x1f3, 0x1f5, + 0x1f9, 0x1fb, 0x1fd, 0x1ff, 0x201, 0x203, 0x205, 0x207, + 0x209, 0x20b, 0x20d, 0x20f, 0x211, 0x213, 0x215, 0x217, + 0x219, 0x21b, 0x21d, 0x21f, 0x223, 0x225, 0x227, 0x229, + 0x22b, 0x22d, 0x22f, 0x231, 0x233, 0x23c, 0x253, 0x254, + 0x256, 0x257, 0x259, 0x25b, 0x260, 0x263, 0x268, 0x269, + 0x26f, 0x272, 0x275, 0x280, 0x283, 0x288, 0x28a, 0x28b, + 0x292, 0x294, 0x3ac, 0x3ad, 0x3ae, 0x3af, 0x3b1, 0x3b2, + 0x3b3, 0x3b4, 0x3b5, 0x3b6, 0x3b7, 0x3b8, 0x3b9, 0x3ba, + 0x3bb, 0x3bc, 0x3bd, 0x3be, 0x3bf, 0x3c0, 0x3c1, 0x3c3, + 0x3c4, 0x3c5, 0x3c6, 0x3c7, 0x3c8, 0x3c9, 0x3ca, 0x3cb, + 0x3cc, 0x3cd, 0x3ce, 0x3d9, 0x3db, 0x3dd, 0x3df, 0x3e1, + 0x3e3, 0x3e5, 0x3e7, 0x3e9, 0x3eb, 0x3ed, 0x3ef, 0x3f2, + 0x3f8, 0x3fb, 0x430, 0x431, 0x432, 0x433, 0x434, 0x435, + 0x436, 0x437, 0x438, 0x439, 0x43a, 0x43b, 0x43c, 0x43d, + 0x43e, 0x43f, 0x440, 0x441, 0x442, 0x443, 0x444, 0x445, + 0x446, 0x447, 0x448, 0x449, 0x44a, 0x44b, 0x44c, 0x44d, + 0x44e, 0x44f, 0x450, 0x451, 0x452, 0x453, 0x454, 0x455, + 0x456, 0x457, 0x458, 0x459, 0x45a, 0x45b, 0x45c, 0x45d, + 0x45e, 0x45f, 0x461, 0x463, 0x465, 0x467, 0x469, 0x46b, + 0x46d, 0x46f, 0x471, 0x473, 0x475, 0x477, 0x479, 0x47b, + 0x47d, 0x47f, 0x481, 0x48b, 0x48d, 0x48f, 0x491, 0x493, + 0x495, 0x497, 0x499, 0x49b, 0x49d, 0x49f, 0x4a1, 0x4a3, + 0x4a5, 0x4a7, 0x4a9, 0x4ab, 0x4ad, 0x4af, 0x4b1, 0x4b3, + 0x4b5, 0x4b7, 0x4b9, 0x4bb, 0x4bd, 0x4bf, 0x4c2, 0x4c4, + 0x4c6, 0x4c8, 0x4ca, 0x4cc, 0x4ce, 0x4d1, 0x4d3, 0x4d5, + 0x4d7, 0x4d9, 0x4db, 0x4dd, 0x4df, 0x4e1, 0x4e3, 0x4e5, + 0x4e7, 0x4e9, 0x4eb, 0x4ed, 0x4ef, 0x4f1, 0x4f3, 0x4f5, + 0x4f7, 0x4f9, 0x501, 0x503, 0x505, 0x507, 0x509, 0x50b, + 0x50d, 0x50f, 0x561, 0x562, 0x563, 0x564, 0x565, 0x566, + 0x567, 0x568, 0x569, 0x56a, 0x56b, 0x56c, 0x56d, 0x56e, + 0x56f, 0x570, 0x571, 0x572, 0x573, 0x574, 0x575, 0x576, + 0x577, 0x578, 0x579, 0x57a, 0x57b, 0x57c, 0x57d, 0x57e, + 0x57f, 0x580, 0x581, 0x582, 0x583, 0x584, 0x585, 0x586, + 0x1e01, 0x1e03, 0x1e05, 0x1e07, 0x1e09, 0x1e0b, 0x1e0d, 0x1e0f, + 0x1e11, 0x1e13, 0x1e15, 0x1e17, 0x1e19, 0x1e1b, 0x1e1d, 0x1e1f, + 0x1e21, 0x1e23, 0x1e25, 0x1e27, 0x1e29, 0x1e2b, 0x1e2d, 0x1e2f, + 0x1e31, 0x1e33, 0x1e35, 0x1e37, 0x1e39, 0x1e3b, 0x1e3d, 0x1e3f, + 0x1e41, 0x1e43, 0x1e45, 0x1e47, 0x1e49, 0x1e4b, 0x1e4d, 0x1e4f, + 0x1e51, 0x1e53, 0x1e55, 0x1e57, 0x1e59, 0x1e5b, 0x1e5d, 0x1e5f, + 0x1e61, 0x1e63, 0x1e65, 0x1e67, 0x1e69, 0x1e6b, 0x1e6d, 0x1e6f, + 0x1e71, 0x1e73, 0x1e75, 0x1e77, 0x1e79, 0x1e7b, 0x1e7d, 0x1e7f, + 0x1e81, 0x1e83, 0x1e85, 0x1e87, 0x1e89, 0x1e8b, 0x1e8d, 0x1e8f, + 0x1e91, 0x1e93, 0x1e95, 0x1ea1, 0x1ea3, 0x1ea5, 0x1ea7, 0x1ea9, + 0x1eab, 0x1ead, 0x1eaf, 0x1eb1, 0x1eb3, 0x1eb5, 0x1eb7, 0x1eb9, + 0x1ebb, 0x1ebd, 0x1ebf, 0x1ec1, 0x1ec3, 0x1ec5, 0x1ec7, 0x1ec9, + 0x1ecb, 0x1ecd, 0x1ecf, 0x1ed1, 0x1ed3, 0x1ed5, 0x1ed7, 0x1ed9, + 0x1edb, 0x1edd, 0x1edf, 0x1ee1, 0x1ee3, 0x1ee5, 0x1ee7, 0x1ee9, + 0x1eeb, 0x1eed, 0x1eef, 0x1ef1, 0x1ef3, 0x1ef5, 0x1ef7, 0x1ef9, + 0x1f00, 0x1f01, 0x1f02, 0x1f03, 0x1f04, 0x1f05, 0x1f06, 0x1f07, + 0x1f10, 0x1f11, 0x1f12, 0x1f13, 0x1f14, 0x1f15, 0x1f20, 0x1f21, + 0x1f22, 0x1f23, 0x1f24, 0x1f25, 0x1f26, 0x1f27, 0x1f30, 0x1f31, + 0x1f32, 0x1f33, 0x1f34, 0x1f35, 0x1f36, 0x1f37, 0x1f40, 0x1f41, + 0x1f42, 0x1f43, 0x1f44, 0x1f45, 0x1f51, 0x1f53, 0x1f55, 0x1f57, + 0x1f60, 0x1f61, 0x1f62, 0x1f63, 0x1f64, 0x1f65, 0x1f66, 0x1f67, + 0x1f70, 0x1f71, 0x1f72, 0x1f73, 0x1f74, 0x1f75, 0x1f76, 0x1f77, + 0x1f78, 0x1f79, 0x1f7a, 0x1f7b, 0x1f7c, 0x1f7d, 0x1fb0, 0x1fb1, + 0x1fd0, 0x1fd1, 0x1fe0, 0x1fe1, 0x1fe5, 0x2170, 0x2171, 0x2172, + 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x217a, + 0x217b, 0x217c, 0x217d, 0x217e, 0x217f, 0x24d0, 0x24d1, 0x24d2, + 0x24d3, 0x24d4, 0x24d5, 0x24d6, 0x24d7, 0x24d8, 0x24d9, 0x24da, + 0x24db, 0x24dc, 0x24dd, 0x24de, 0x24df, 0x24e0, 0x24e1, 0x24e2, + 0x24e3, 0x24e4, 0x24e5, 0x24e6, 0x24e7, 0x24e8, 0x24e9, 0x2c30, + 0x2c31, 0x2c32, 0x2c33, 0x2c34, 0x2c35, 0x2c36, 0x2c37, 0x2c38, + 0x2c39, 0x2c3a, 0x2c3b, 0x2c3c, 0x2c3d, 0x2c3e, 0x2c3f, 0x2c40, + 0x2c41, 0x2c42, 0x2c43, 0x2c44, 0x2c45, 0x2c46, 0x2c47, 0x2c48, + 0x2c49, 0x2c4a, 0x2c4b, 0x2c4c, 0x2c4d, 0x2c4e, 0x2c4f, 0x2c50, + 0x2c51, 0x2c52, 0x2c53, 0x2c54, 0x2c55, 0x2c56, 0x2c57, 0x2c58, + 0x2c59, 0x2c5a, 0x2c5b, 0x2c5c, 0x2c5d, 0x2c5e, 0x2c81, 0x2c83, + 0x2c85, 0x2c87, 0x2c89, 0x2c8b, 0x2c8d, 0x2c8f, 0x2c91, 0x2c93, + 0x2c95, 0x2c97, 0x2c99, 0x2c9b, 0x2c9d, 0x2c9f, 0x2ca1, 0x2ca3, + 0x2ca5, 0x2ca7, 0x2ca9, 0x2cab, 0x2cad, 0x2caf, 0x2cb1, 0x2cb3, + 0x2cb5, 0x2cb7, 0x2cb9, 0x2cbb, 0x2cbd, 0x2cbf, 0x2cc1, 0x2cc3, + 0x2cc5, 0x2cc7, 0x2cc9, 0x2ccb, 0x2ccd, 0x2ccf, 0x2cd1, 0x2cd3, + 0x2cd5, 0x2cd7, 0x2cd9, 0x2cdb, 0x2cdd, 0x2cdf, 0x2ce1, 0x2ce3, + 0x2d00, 0x2d01, 0x2d02, 0x2d03, 0x2d04, 0x2d05, 0x2d06, 0x2d07, + 0x2d08, 0x2d09, 0x2d0a, 0x2d0b, 0x2d0c, 0x2d0d, 0x2d0e, 0x2d0f, + 0x2d10, 0x2d11, 0x2d12, 0x2d13, 0x2d14, 0x2d15, 0x2d16, 0x2d17, + 0x2d18, 0x2d19, 0x2d1a, 0x2d1b, 0x2d1c, 0x2d1d, 0x2d1e, 0x2d1f, + 0x2d20, 0x2d21, 0x2d22, 0x2d23, 0x2d24, 0x2d25, 0xff41, 0xff42, + 0xff43, 0xff44, 0xff45, 0xff46, 0xff47, 0xff48, 0xff49, 0xff4a, + 0xff4b, 0xff4c, 0xff4d, 0xff4e, 0xff4f, 0xff50, 0xff51, 0xff52, + 0xff53, 0xff54, 0xff55, 0xff56, 0xff57, 0xff58, 0xff59, 0xff5a, + 0x10428, 0x10429, 0x1042a, 0x1042b, 0x1042c, 0x1042d, 0x1042e, 0x1042f, + 0x10430, 0x10431, 0x10432, 0x10433, 0x10434, 0x10435, 0x10436, 0x10437, + 0x10438, 0x10439, 0x1043a, 0x1043b, 0x1043c, 0x1043d, 0x1043e, 0x1043f, + 0x10440, 0x10441, 0x10442, 0x10443, 0x10444, 0x10445, 0x10446, 0x10447, + 0x10448, 0x10449, 0x1044a, 0x1044b, 0x1044c, 0x1044d, 0x1044e, 0x1044f + }; + + static final int CaseUnfold_11_To[][] = { + {0x41}, {0x42}, {0x43}, {0x44}, {0x45}, {0x46}, + {0x47}, {0x48}, {0x4a}, {0x212a, 0x4b}, {0x4c}, {0x4d}, + {0x4e}, {0x4f}, {0x50}, {0x51}, {0x52}, {0x53, 0x17f}, + {0x54}, {0x55}, {0x56}, {0x57}, {0x58}, {0x59}, + {0x5a}, {0xc0}, {0xc1}, {0xc2}, {0xc3}, {0xc4}, + {0x212b, 0xc5}, {0xc6}, {0xc7}, {0xc8}, {0xc9}, {0xca}, + {0xcb}, {0xcc}, {0xcd}, {0xce}, {0xcf}, {0xd0}, + {0xd1}, {0xd2}, {0xd3}, {0xd4}, {0xd5}, {0xd6}, + {0xd8}, {0xd9}, {0xda}, {0xdb}, {0xdc}, {0xdd}, + {0xde}, {0x178}, {0x100}, {0x102}, {0x104}, {0x106}, + {0x108}, {0x10a}, {0x10c}, {0x10e}, {0x110}, {0x112}, + {0x114}, {0x116}, {0x118}, {0x11a}, {0x11c}, {0x11e}, + {0x120}, {0x122}, {0x124}, {0x126}, {0x128}, {0x12a}, + {0x12c}, {0x12e}, {0x132}, {0x134}, {0x136}, {0x139}, + {0x13b}, {0x13d}, {0x13f}, {0x141}, {0x143}, {0x145}, + {0x147}, {0x14a}, {0x14c}, {0x14e}, {0x150}, {0x152}, + {0x154}, {0x156}, {0x158}, {0x15a}, {0x15c}, {0x15e}, + {0x160}, {0x162}, {0x164}, {0x166}, {0x168}, {0x16a}, + {0x16c}, {0x16e}, {0x170}, {0x172}, {0x174}, {0x176}, + {0x179}, {0x17b}, {0x17d}, {0x182}, {0x184}, {0x187}, + {0x18b}, {0x191}, {0x1f6}, {0x198}, {0x23d}, {0x220}, + {0x1a0}, {0x1a2}, {0x1a4}, {0x1a7}, {0x1ac}, {0x1af}, + {0x1b3}, {0x1b5}, {0x1b8}, {0x1bc}, {0x1f7}, {0x1c4, 0x1c5}, + {0x1c7, 0x1c8}, {0x1ca, 0x1cb}, {0x1cd}, {0x1cf}, {0x1d1}, {0x1d3}, + {0x1d5}, {0x1d7}, {0x1d9}, {0x1db}, {0x18e}, {0x1de}, + {0x1e0}, {0x1e2}, {0x1e4}, {0x1e6}, {0x1e8}, {0x1ea}, + {0x1ec}, {0x1ee}, {0x1f1, 0x1f2}, {0x1f4}, {0x1f8}, {0x1fa}, + {0x1fc}, {0x1fe}, {0x200}, {0x202}, {0x204}, {0x206}, + {0x208}, {0x20a}, {0x20c}, {0x20e}, {0x210}, {0x212}, + {0x214}, {0x216}, {0x218}, {0x21a}, {0x21c}, {0x21e}, + {0x222}, {0x224}, {0x226}, {0x228}, {0x22a}, {0x22c}, + {0x22e}, {0x230}, {0x232}, {0x23b}, {0x181}, {0x186}, + {0x189}, {0x18a}, {0x18f}, {0x190}, {0x193}, {0x194}, + {0x197}, {0x196}, {0x19c}, {0x19d}, {0x19f}, {0x1a6}, + {0x1a9}, {0x1ae}, {0x1b1}, {0x1b2}, {0x1b7}, {0x241}, + {0x386}, {0x388}, {0x389}, {0x38a}, {0x391}, {0x392, 0x3d0}, + {0x393}, {0x394}, {0x3f5, 0x395}, {0x396}, {0x397}, {0x3f4, 0x398, 0x3d1}, + {0x1fbe, 0x399, 0x345}, {0x3f0, 0x39a}, {0x39b}, {0xb5, 0x39c}, {0x39d}, {0x39e}, + {0x39f}, {0x3a0, 0x3d6}, {0x3f1, 0x3a1}, {0x3a3, 0x3c2}, {0x3a4}, {0x3a5}, + {0x3a6, 0x3d5}, {0x3a7}, {0x3a8}, {0x3a9, 0x2126}, {0x3aa}, {0x3ab}, + {0x38c}, {0x38e}, {0x38f}, {0x3d8}, {0x3da}, {0x3dc}, + {0x3de}, {0x3e0}, {0x3e2}, {0x3e4}, {0x3e6}, {0x3e8}, + {0x3ea}, {0x3ec}, {0x3ee}, {0x3f9}, {0x3f7}, {0x3fa}, + {0x410}, {0x411}, {0x412}, {0x413}, {0x414}, {0x415}, + {0x416}, {0x417}, {0x418}, {0x419}, {0x41a}, {0x41b}, + {0x41c}, {0x41d}, {0x41e}, {0x41f}, {0x420}, {0x421}, + {0x422}, {0x423}, {0x424}, {0x425}, {0x426}, {0x427}, + {0x428}, {0x429}, {0x42a}, {0x42b}, {0x42c}, {0x42d}, + {0x42e}, {0x42f}, {0x400}, {0x401}, {0x402}, {0x403}, + {0x404}, {0x405}, {0x406}, {0x407}, {0x408}, {0x409}, + {0x40a}, {0x40b}, {0x40c}, {0x40d}, {0x40e}, {0x40f}, + {0x460}, {0x462}, {0x464}, {0x466}, {0x468}, {0x46a}, + {0x46c}, {0x46e}, {0x470}, {0x472}, {0x474}, {0x476}, + {0x478}, {0x47a}, {0x47c}, {0x47e}, {0x480}, {0x48a}, + {0x48c}, {0x48e}, {0x490}, {0x492}, {0x494}, {0x496}, + {0x498}, {0x49a}, {0x49c}, {0x49e}, {0x4a0}, {0x4a2}, + {0x4a4}, {0x4a6}, {0x4a8}, {0x4aa}, {0x4ac}, {0x4ae}, + {0x4b0}, {0x4b2}, {0x4b4}, {0x4b6}, {0x4b8}, {0x4ba}, + {0x4bc}, {0x4be}, {0x4c1}, {0x4c3}, {0x4c5}, {0x4c7}, + {0x4c9}, {0x4cb}, {0x4cd}, {0x4d0}, {0x4d2}, {0x4d4}, + {0x4d6}, {0x4d8}, {0x4da}, {0x4dc}, {0x4de}, {0x4e0}, + {0x4e2}, {0x4e4}, {0x4e6}, {0x4e8}, {0x4ea}, {0x4ec}, + {0x4ee}, {0x4f0}, {0x4f2}, {0x4f4}, {0x4f6}, {0x4f8}, + {0x500}, {0x502}, {0x504}, {0x506}, {0x508}, {0x50a}, + {0x50c}, {0x50e}, {0x531}, {0x532}, {0x533}, {0x534}, + {0x535}, {0x536}, {0x537}, {0x538}, {0x539}, {0x53a}, + {0x53b}, {0x53c}, {0x53d}, {0x53e}, {0x53f}, {0x540}, + {0x541}, {0x542}, {0x543}, {0x544}, {0x545}, {0x546}, + {0x547}, {0x548}, {0x549}, {0x54a}, {0x54b}, {0x54c}, + {0x54d}, {0x54e}, {0x54f}, {0x550}, {0x551}, {0x552}, + {0x553}, {0x554}, {0x555}, {0x556}, {0x1e00}, {0x1e02}, + {0x1e04}, {0x1e06}, {0x1e08}, {0x1e0a}, {0x1e0c}, {0x1e0e}, + {0x1e10}, {0x1e12}, {0x1e14}, {0x1e16}, {0x1e18}, {0x1e1a}, + {0x1e1c}, {0x1e1e}, {0x1e20}, {0x1e22}, {0x1e24}, {0x1e26}, + {0x1e28}, {0x1e2a}, {0x1e2c}, {0x1e2e}, {0x1e30}, {0x1e32}, + {0x1e34}, {0x1e36}, {0x1e38}, {0x1e3a}, {0x1e3c}, {0x1e3e}, + {0x1e40}, {0x1e42}, {0x1e44}, {0x1e46}, {0x1e48}, {0x1e4a}, + {0x1e4c}, {0x1e4e}, {0x1e50}, {0x1e52}, {0x1e54}, {0x1e56}, + {0x1e58}, {0x1e5a}, {0x1e5c}, {0x1e5e}, {0x1e9b, 0x1e60}, {0x1e62}, + {0x1e64}, {0x1e66}, {0x1e68}, {0x1e6a}, {0x1e6c}, {0x1e6e}, + {0x1e70}, {0x1e72}, {0x1e74}, {0x1e76}, {0x1e78}, {0x1e7a}, + {0x1e7c}, {0x1e7e}, {0x1e80}, {0x1e82}, {0x1e84}, {0x1e86}, + {0x1e88}, {0x1e8a}, {0x1e8c}, {0x1e8e}, {0x1e90}, {0x1e92}, + {0x1e94}, {0x1ea0}, {0x1ea2}, {0x1ea4}, {0x1ea6}, {0x1ea8}, + {0x1eaa}, {0x1eac}, {0x1eae}, {0x1eb0}, {0x1eb2}, {0x1eb4}, + {0x1eb6}, {0x1eb8}, {0x1eba}, {0x1ebc}, {0x1ebe}, {0x1ec0}, + {0x1ec2}, {0x1ec4}, {0x1ec6}, {0x1ec8}, {0x1eca}, {0x1ecc}, + {0x1ece}, {0x1ed0}, {0x1ed2}, {0x1ed4}, {0x1ed6}, {0x1ed8}, + {0x1eda}, {0x1edc}, {0x1ede}, {0x1ee0}, {0x1ee2}, {0x1ee4}, + {0x1ee6}, {0x1ee8}, {0x1eea}, {0x1eec}, {0x1eee}, {0x1ef0}, + {0x1ef2}, {0x1ef4}, {0x1ef6}, {0x1ef8}, {0x1f08}, {0x1f09}, + {0x1f0a}, {0x1f0b}, {0x1f0c}, {0x1f0d}, {0x1f0e}, {0x1f0f}, + {0x1f18}, {0x1f19}, {0x1f1a}, {0x1f1b}, {0x1f1c}, {0x1f1d}, + {0x1f28}, {0x1f29}, {0x1f2a}, {0x1f2b}, {0x1f2c}, {0x1f2d}, + {0x1f2e}, {0x1f2f}, {0x1f38}, {0x1f39}, {0x1f3a}, {0x1f3b}, + {0x1f3c}, {0x1f3d}, {0x1f3e}, {0x1f3f}, {0x1f48}, {0x1f49}, + {0x1f4a}, {0x1f4b}, {0x1f4c}, {0x1f4d}, {0x1f59}, {0x1f5b}, + {0x1f5d}, {0x1f5f}, {0x1f68}, {0x1f69}, {0x1f6a}, {0x1f6b}, + {0x1f6c}, {0x1f6d}, {0x1f6e}, {0x1f6f}, {0x1fba}, {0x1fbb}, + {0x1fc8}, {0x1fc9}, {0x1fca}, {0x1fcb}, {0x1fda}, {0x1fdb}, + {0x1ff8}, {0x1ff9}, {0x1fea}, {0x1feb}, {0x1ffa}, {0x1ffb}, + {0x1fb8}, {0x1fb9}, {0x1fd8}, {0x1fd9}, {0x1fe8}, {0x1fe9}, + {0x1fec}, {0x2160}, {0x2161}, {0x2162}, {0x2163}, {0x2164}, + {0x2165}, {0x2166}, {0x2167}, {0x2168}, {0x2169}, {0x216a}, + {0x216b}, {0x216c}, {0x216d}, {0x216e}, {0x216f}, {0x24b6}, + {0x24b7}, {0x24b8}, {0x24b9}, {0x24ba}, {0x24bb}, {0x24bc}, + {0x24bd}, {0x24be}, {0x24bf}, {0x24c0}, {0x24c1}, {0x24c2}, + {0x24c3}, {0x24c4}, {0x24c5}, {0x24c6}, {0x24c7}, {0x24c8}, + {0x24c9}, {0x24ca}, {0x24cb}, {0x24cc}, {0x24cd}, {0x24ce}, + {0x24cf}, {0x2c00}, {0x2c01}, {0x2c02}, {0x2c03}, {0x2c04}, + {0x2c05}, {0x2c06}, {0x2c07}, {0x2c08}, {0x2c09}, {0x2c0a}, + {0x2c0b}, {0x2c0c}, {0x2c0d}, {0x2c0e}, {0x2c0f}, {0x2c10}, + {0x2c11}, {0x2c12}, {0x2c13}, {0x2c14}, {0x2c15}, {0x2c16}, + {0x2c17}, {0x2c18}, {0x2c19}, {0x2c1a}, {0x2c1b}, {0x2c1c}, + {0x2c1d}, {0x2c1e}, {0x2c1f}, {0x2c20}, {0x2c21}, {0x2c22}, + {0x2c23}, {0x2c24}, {0x2c25}, {0x2c26}, {0x2c27}, {0x2c28}, + {0x2c29}, {0x2c2a}, {0x2c2b}, {0x2c2c}, {0x2c2d}, {0x2c2e}, + {0x2c80}, {0x2c82}, {0x2c84}, {0x2c86}, {0x2c88}, {0x2c8a}, + {0x2c8c}, {0x2c8e}, {0x2c90}, {0x2c92}, {0x2c94}, {0x2c96}, + {0x2c98}, {0x2c9a}, {0x2c9c}, {0x2c9e}, {0x2ca0}, {0x2ca2}, + {0x2ca4}, {0x2ca6}, {0x2ca8}, {0x2caa}, {0x2cac}, {0x2cae}, + {0x2cb0}, {0x2cb2}, {0x2cb4}, {0x2cb6}, {0x2cb8}, {0x2cba}, + {0x2cbc}, {0x2cbe}, {0x2cc0}, {0x2cc2}, {0x2cc4}, {0x2cc6}, + {0x2cc8}, {0x2cca}, {0x2ccc}, {0x2cce}, {0x2cd0}, {0x2cd2}, + {0x2cd4}, {0x2cd6}, {0x2cd8}, {0x2cda}, {0x2cdc}, {0x2cde}, + {0x2ce0}, {0x2ce2}, {0x10a0}, {0x10a1}, {0x10a2}, {0x10a3}, + {0x10a4}, {0x10a5}, {0x10a6}, {0x10a7}, {0x10a8}, {0x10a9}, + {0x10aa}, {0x10ab}, {0x10ac}, {0x10ad}, {0x10ae}, {0x10af}, + {0x10b0}, {0x10b1}, {0x10b2}, {0x10b3}, {0x10b4}, {0x10b5}, + {0x10b6}, {0x10b7}, {0x10b8}, {0x10b9}, {0x10ba}, {0x10bb}, + {0x10bc}, {0x10bd}, {0x10be}, {0x10bf}, {0x10c0}, {0x10c1}, + {0x10c2}, {0x10c3}, {0x10c4}, {0x10c5}, {0xff21}, {0xff22}, + {0xff23}, {0xff24}, {0xff25}, {0xff26}, {0xff27}, {0xff28}, + {0xff29}, {0xff2a}, {0xff2b}, {0xff2c}, {0xff2d}, {0xff2e}, + {0xff2f}, {0xff30}, {0xff31}, {0xff32}, {0xff33}, {0xff34}, + {0xff35}, {0xff36}, {0xff37}, {0xff38}, {0xff39}, {0xff3a}, + {0x10400}, {0x10401}, {0x10402}, {0x10403}, {0x10404}, {0x10405}, + {0x10406}, {0x10407}, {0x10408}, {0x10409}, {0x1040a}, {0x1040b}, + {0x1040c}, {0x1040d}, {0x1040e}, {0x1040f}, {0x10410}, {0x10411}, + {0x10412}, {0x10413}, {0x10414}, {0x10415}, {0x10416}, {0x10417}, + {0x10418}, {0x10419}, {0x1041a}, {0x1041b}, {0x1041c}, {0x1041d}, + {0x1041e}, {0x1041f}, {0x10420}, {0x10421}, {0x10422}, {0x10423}, + {0x10424}, {0x10425}, {0x10426}, {0x10427} + }; + + static final int CaseUnfold_11_Locale_From[] = { + 0x69 + }; + + static final int CaseUnfold_11_Locale_To[][] = { + {0x49} + }; + + static final int CaseUnfold_12[][] = { + {0x61, 0x2be}, {0x1e9a}, {0x66, 0x66}, {0xfb00}, {0x66, 0x69}, {0xfb01}, + {0x66, 0x6c}, {0xfb02}, {0x68, 0x331}, {0x1e96}, {0x6a, 0x30c}, {0x1f0}, + {0x73, 0x73}, {0xdf}, {0x73, 0x74}, {0xfb05, 0xfb06}, {0x74, 0x308}, {0x1e97}, + {0x77, 0x30a}, {0x1e98}, {0x79, 0x30a}, {0x1e99}, {0x2bc, 0x6e}, {0x149}, + {0x3ac, 0x3b9}, {0x1fb4}, {0x3ae, 0x3b9}, {0x1fc4}, {0x3b1, 0x342}, {0x1fb6}, + {0x3b1, 0x3b9}, {0x1fb3, 0x1fbc}, {0x3b7, 0x342}, {0x1fc6}, {0x3b7, 0x3b9}, {0x1fc3, 0x1fcc}, + {0x3b9, 0x342}, {0x1fd6}, {0x3c1, 0x313}, {0x1fe4}, {0x3c5, 0x313}, {0x1f50}, + {0x3c5, 0x342}, {0x1fe6}, {0x3c9, 0x342}, {0x1ff6}, {0x3c9, 0x3b9}, {0x1ff3, 0x1ffc}, + {0x3ce, 0x3b9}, {0x1ff4}, {0x565, 0x582}, {0x587}, {0x574, 0x565}, {0xfb14}, + {0x574, 0x56b}, {0xfb15}, {0x574, 0x56d}, {0xfb17}, {0x574, 0x576}, {0xfb13}, + {0x57e, 0x576}, {0xfb16}, {0x1f00, 0x3b9}, {0x1f88, 0x1f80}, {0x1f01, 0x3b9}, {0x1f81, 0x1f89}, + {0x1f02, 0x3b9}, {0x1f82, 0x1f8a}, {0x1f03, 0x3b9}, {0x1f83, 0x1f8b}, {0x1f04, 0x3b9}, {0x1f84, 0x1f8c}, + {0x1f05, 0x3b9}, {0x1f85, 0x1f8d}, {0x1f06, 0x3b9}, {0x1f86, 0x1f8e}, {0x1f07, 0x3b9}, {0x1f87, 0x1f8f}, + {0x1f20, 0x3b9}, {0x1f90, 0x1f98}, {0x1f21, 0x3b9}, {0x1f91, 0x1f99}, {0x1f22, 0x3b9}, {0x1f92, 0x1f9a}, + {0x1f23, 0x3b9}, {0x1f93, 0x1f9b}, {0x1f24, 0x3b9}, {0x1f94, 0x1f9c}, {0x1f25, 0x3b9}, {0x1f95, 0x1f9d}, + {0x1f26, 0x3b9}, {0x1f96, 0x1f9e}, {0x1f27, 0x3b9}, {0x1f97, 0x1f9f}, {0x1f60, 0x3b9}, {0x1fa0, 0x1fa8}, + {0x1f61, 0x3b9}, {0x1fa1, 0x1fa9}, {0x1f62, 0x3b9}, {0x1fa2, 0x1faa}, {0x1f63, 0x3b9}, {0x1fa3, 0x1fab}, + {0x1f64, 0x3b9}, {0x1fa4, 0x1fac}, {0x1f65, 0x3b9}, {0x1fa5, 0x1fad}, {0x1f66, 0x3b9}, {0x1fa6, 0x1fae}, + {0x1f67, 0x3b9}, {0x1fa7, 0x1faf}, {0x1f70, 0x3b9}, {0x1fb2}, {0x1f74, 0x3b9}, {0x1fc2}, + {0x1f7c, 0x3b9}, {0x1ff2} + }; + + static final int CaseUnfold_12_Locale[][] = { + {0x69, 0x307}, {0x130} + }; + + static final int CaseUnfold_13[][] = { + {0x66, 0x66, 0x69}, {0xfb03}, {0x66, 0x66, 0x6c}, {0xfb04}, {0x3b1, 0x342, 0x3b9}, {0x1fb7}, + {0x3b7, 0x342, 0x3b9}, {0x1fc7}, {0x3b9, 0x308, 0x300}, {0x1fd2}, {0x3b9, 0x308, 0x301}, {0x390, 0x1fd3}, + {0x3b9, 0x308, 0x342}, {0x1fd7}, {0x3c5, 0x308, 0x300}, {0x1fe2}, {0x3c5, 0x308, 0x301}, {0x3b0, 0x1fe3}, + {0x3c5, 0x308, 0x342}, {0x1fe7}, {0x3c5, 0x313, 0x300}, {0x1f52}, {0x3c5, 0x313, 0x301}, {0x1f54}, + {0x3c5, 0x313, 0x342}, {0x1f56}, {0x3c9, 0x342, 0x3b9}, {0x1ff7} + }; private static IntHash initializeFoldHash() { IntHash fold = new IntHash(1200);