1a6844aabSmrg/* 2a6844aabSmrg * fontconfig/fc-case/fccase.tmpl.h 3a6844aabSmrg * 4a6844aabSmrg * Copyright © 2003 Keith Packard 5a6844aabSmrg * 6a6844aabSmrg * Permission to use, copy, modify, distribute, and sell this software and its 7a6844aabSmrg * documentation for any purpose is hereby granted without fee, provided that 8a6844aabSmrg * the above copyright notice appear in all copies and that both that 9a6844aabSmrg * copyright notice and this permission notice appear in supporting 10ca08ab68Smrg * documentation, and that the name of the author(s) not be used in 11a6844aabSmrg * advertising or publicity pertaining to distribution of the software without 12ca08ab68Smrg * specific, written prior permission. The authors make no 13a6844aabSmrg * representations about the suitability of this software for any purpose. It 14a6844aabSmrg * is provided "as is" without express or implied warranty. 15a6844aabSmrg * 16a6844aabSmrg * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 17a6844aabSmrg * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 18a6844aabSmrg * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR 19a6844aabSmrg * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 20a6844aabSmrg * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 21a6844aabSmrg * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 22a6844aabSmrg * PERFORMANCE OF THIS SOFTWARE. 23a6844aabSmrg */ 24a6844aabSmrg 25a4e54154Smrg#define FC_NUM_CASE_FOLD 302 26a6844aabSmrg#define FC_NUM_CASE_FOLD_CHARS 471 27a6844aabSmrg#define FC_MAX_CASE_FOLD_CHARS 6 28a6844aabSmrg#define FC_MAX_CASE_FOLD_EXPAND 4 29a6844aabSmrg#define FC_MIN_FOLD_CHAR 0x00000041 30953daebaSmrg#define FC_MAX_FOLD_CHAR 0x0001e921 31a6844aabSmrg 32a6844aabSmrgstatic const FcCaseFold fcCaseFold[FC_NUM_CASE_FOLD] = { 33a6844aabSmrg { 0x00000041, FC_CASE_FOLD_RANGE, 0x001a, 32 }, 34a6844aabSmrg { 0x000000b5, FC_CASE_FOLD_RANGE, 0x0001, 775 }, 35a6844aabSmrg { 0x000000c0, FC_CASE_FOLD_RANGE, 0x0017, 32 }, 36a6844aabSmrg { 0x000000d8, FC_CASE_FOLD_RANGE, 0x0007, 32 }, 37a6844aabSmrg { 0x000000df, FC_CASE_FOLD_FULL, 0x0002, 0 }, 38a6844aabSmrg { 0x00000100, FC_CASE_FOLD_EVEN_ODD, 0x002f, 1 }, 39a6844aabSmrg { 0x00000130, FC_CASE_FOLD_FULL, 0x0003, 2 }, 40a6844aabSmrg { 0x00000132, FC_CASE_FOLD_EVEN_ODD, 0x0005, 1 }, 41a6844aabSmrg { 0x00000139, FC_CASE_FOLD_EVEN_ODD, 0x000f, 1 }, 42a6844aabSmrg { 0x00000149, FC_CASE_FOLD_FULL, 0x0003, 5 }, 43a6844aabSmrg { 0x0000014a, FC_CASE_FOLD_EVEN_ODD, 0x002d, 1 }, 44a6844aabSmrg { 0x00000178, FC_CASE_FOLD_RANGE, 0x0001, -121 }, 45a6844aabSmrg { 0x00000179, FC_CASE_FOLD_EVEN_ODD, 0x0005, 1 }, 46a6844aabSmrg { 0x0000017f, FC_CASE_FOLD_RANGE, 0x0001, -268 }, 47a6844aabSmrg { 0x00000181, FC_CASE_FOLD_RANGE, 0x0001, 210 }, 48a6844aabSmrg { 0x00000182, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 }, 49a6844aabSmrg { 0x00000186, FC_CASE_FOLD_RANGE, 0x0001, 206 }, 50a6844aabSmrg { 0x00000187, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 51a6844aabSmrg { 0x00000189, FC_CASE_FOLD_RANGE, 0x0002, 205 }, 52a6844aabSmrg { 0x0000018b, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 53a6844aabSmrg { 0x0000018e, FC_CASE_FOLD_RANGE, 0x0001, 79 }, 54a6844aabSmrg { 0x0000018f, FC_CASE_FOLD_RANGE, 0x0001, 202 }, 55a6844aabSmrg { 0x00000190, FC_CASE_FOLD_RANGE, 0x0001, 203 }, 56a6844aabSmrg { 0x00000191, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 57a6844aabSmrg { 0x00000193, FC_CASE_FOLD_RANGE, 0x0001, 205 }, 58a6844aabSmrg { 0x00000194, FC_CASE_FOLD_RANGE, 0x0001, 207 }, 59a6844aabSmrg { 0x00000196, FC_CASE_FOLD_RANGE, 0x0001, 211 }, 60a6844aabSmrg { 0x00000197, FC_CASE_FOLD_RANGE, 0x0001, 209 }, 61a6844aabSmrg { 0x00000198, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 62a6844aabSmrg { 0x0000019c, FC_CASE_FOLD_RANGE, 0x0001, 211 }, 63a6844aabSmrg { 0x0000019d, FC_CASE_FOLD_RANGE, 0x0001, 213 }, 64a6844aabSmrg { 0x0000019f, FC_CASE_FOLD_RANGE, 0x0001, 214 }, 65a6844aabSmrg { 0x000001a0, FC_CASE_FOLD_EVEN_ODD, 0x0005, 1 }, 66a6844aabSmrg { 0x000001a6, FC_CASE_FOLD_RANGE, 0x0001, 218 }, 67a6844aabSmrg { 0x000001a7, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 68a6844aabSmrg { 0x000001a9, FC_CASE_FOLD_RANGE, 0x0001, 218 }, 69a6844aabSmrg { 0x000001ac, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 70a6844aabSmrg { 0x000001ae, FC_CASE_FOLD_RANGE, 0x0001, 218 }, 71a6844aabSmrg { 0x000001af, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 72a6844aabSmrg { 0x000001b1, FC_CASE_FOLD_RANGE, 0x0002, 217 }, 73a6844aabSmrg { 0x000001b3, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 }, 74a6844aabSmrg { 0x000001b7, FC_CASE_FOLD_RANGE, 0x0001, 219 }, 75a6844aabSmrg { 0x000001b8, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 76a6844aabSmrg { 0x000001bc, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 77a6844aabSmrg { 0x000001c4, FC_CASE_FOLD_RANGE, 0x0001, 2 }, 78a6844aabSmrg { 0x000001c5, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 79a6844aabSmrg { 0x000001c7, FC_CASE_FOLD_RANGE, 0x0001, 2 }, 80a6844aabSmrg { 0x000001c8, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 81a6844aabSmrg { 0x000001ca, FC_CASE_FOLD_RANGE, 0x0001, 2 }, 82a6844aabSmrg { 0x000001cb, FC_CASE_FOLD_EVEN_ODD, 0x0011, 1 }, 83a6844aabSmrg { 0x000001de, FC_CASE_FOLD_EVEN_ODD, 0x0011, 1 }, 84a6844aabSmrg { 0x000001f0, FC_CASE_FOLD_FULL, 0x0003, 8 }, 85a6844aabSmrg { 0x000001f1, FC_CASE_FOLD_RANGE, 0x0001, 2 }, 86a6844aabSmrg { 0x000001f2, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 }, 87a6844aabSmrg { 0x000001f6, FC_CASE_FOLD_RANGE, 0x0001, -97 }, 88a6844aabSmrg { 0x000001f7, FC_CASE_FOLD_RANGE, 0x0001, -56 }, 89a6844aabSmrg { 0x000001f8, FC_CASE_FOLD_EVEN_ODD, 0x0027, 1 }, 90a6844aabSmrg { 0x00000220, FC_CASE_FOLD_RANGE, 0x0001, -130 }, 91a6844aabSmrg { 0x00000222, FC_CASE_FOLD_EVEN_ODD, 0x0011, 1 }, 92a6844aabSmrg { 0x0000023a, FC_CASE_FOLD_RANGE, 0x0001, 10795 }, 93a6844aabSmrg { 0x0000023b, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 94a6844aabSmrg { 0x0000023d, FC_CASE_FOLD_RANGE, 0x0001, -163 }, 95a6844aabSmrg { 0x0000023e, FC_CASE_FOLD_RANGE, 0x0001, 10792 }, 96a6844aabSmrg { 0x00000241, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 97a6844aabSmrg { 0x00000243, FC_CASE_FOLD_RANGE, 0x0001, -195 }, 98a6844aabSmrg { 0x00000244, FC_CASE_FOLD_RANGE, 0x0001, 69 }, 99a6844aabSmrg { 0x00000245, FC_CASE_FOLD_RANGE, 0x0001, 71 }, 100a6844aabSmrg { 0x00000246, FC_CASE_FOLD_EVEN_ODD, 0x0009, 1 }, 101a6844aabSmrg { 0x00000345, FC_CASE_FOLD_RANGE, 0x0001, 116 }, 102a6844aabSmrg { 0x00000370, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 }, 103a6844aabSmrg { 0x00000376, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 104953daebaSmrg { 0x0000037f, FC_CASE_FOLD_RANGE, 0x0001, 116 }, 105a6844aabSmrg { 0x00000386, FC_CASE_FOLD_RANGE, 0x0001, 38 }, 106a6844aabSmrg { 0x00000388, FC_CASE_FOLD_RANGE, 0x0003, 37 }, 107a6844aabSmrg { 0x0000038c, FC_CASE_FOLD_RANGE, 0x0001, 64 }, 108a6844aabSmrg { 0x0000038e, FC_CASE_FOLD_RANGE, 0x0002, 63 }, 109a6844aabSmrg { 0x00000390, FC_CASE_FOLD_FULL, 0x0006, 11 }, 110a6844aabSmrg { 0x00000391, FC_CASE_FOLD_RANGE, 0x0011, 32 }, 111a6844aabSmrg { 0x000003a3, FC_CASE_FOLD_RANGE, 0x0009, 32 }, 112a6844aabSmrg { 0x000003b0, FC_CASE_FOLD_FULL, 0x0006, 17 }, 113a6844aabSmrg { 0x000003c2, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 114a6844aabSmrg { 0x000003cf, FC_CASE_FOLD_RANGE, 0x0001, 8 }, 115a6844aabSmrg { 0x000003d0, FC_CASE_FOLD_RANGE, 0x0001, -30 }, 116a6844aabSmrg { 0x000003d1, FC_CASE_FOLD_RANGE, 0x0001, -25 }, 117a6844aabSmrg { 0x000003d5, FC_CASE_FOLD_RANGE, 0x0001, -15 }, 118a6844aabSmrg { 0x000003d6, FC_CASE_FOLD_RANGE, 0x0001, -22 }, 119a6844aabSmrg { 0x000003d8, FC_CASE_FOLD_EVEN_ODD, 0x0017, 1 }, 120a6844aabSmrg { 0x000003f0, FC_CASE_FOLD_RANGE, 0x0001, -54 }, 121a6844aabSmrg { 0x000003f1, FC_CASE_FOLD_RANGE, 0x0001, -48 }, 122a6844aabSmrg { 0x000003f4, FC_CASE_FOLD_RANGE, 0x0001, -60 }, 123a6844aabSmrg { 0x000003f5, FC_CASE_FOLD_RANGE, 0x0001, -64 }, 124a6844aabSmrg { 0x000003f7, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 125a6844aabSmrg { 0x000003f9, FC_CASE_FOLD_RANGE, 0x0001, -7 }, 126a6844aabSmrg { 0x000003fa, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 127a6844aabSmrg { 0x000003fd, FC_CASE_FOLD_RANGE, 0x0003, -130 }, 128a6844aabSmrg { 0x00000400, FC_CASE_FOLD_RANGE, 0x0010, 80 }, 129a6844aabSmrg { 0x00000410, FC_CASE_FOLD_RANGE, 0x0020, 32 }, 130a6844aabSmrg { 0x00000460, FC_CASE_FOLD_EVEN_ODD, 0x0021, 1 }, 131a6844aabSmrg { 0x0000048a, FC_CASE_FOLD_EVEN_ODD, 0x0035, 1 }, 132a6844aabSmrg { 0x000004c0, FC_CASE_FOLD_RANGE, 0x0001, 15 }, 133a6844aabSmrg { 0x000004c1, FC_CASE_FOLD_EVEN_ODD, 0x000d, 1 }, 134953daebaSmrg { 0x000004d0, FC_CASE_FOLD_EVEN_ODD, 0x005f, 1 }, 135a6844aabSmrg { 0x00000531, FC_CASE_FOLD_RANGE, 0x0026, 48 }, 136a6844aabSmrg { 0x00000587, FC_CASE_FOLD_FULL, 0x0004, 23 }, 137a6844aabSmrg { 0x000010a0, FC_CASE_FOLD_RANGE, 0x0026, 7264 }, 138ca08ab68Smrg { 0x000010c7, FC_CASE_FOLD_RANGE, 0x0001, 7264 }, 139ca08ab68Smrg { 0x000010cd, FC_CASE_FOLD_RANGE, 0x0001, 7264 }, 140953daebaSmrg { 0x000013f8, FC_CASE_FOLD_RANGE, 0x0006, -8 }, 141953daebaSmrg { 0x00001c80, FC_CASE_FOLD_RANGE, 0x0001, -6222 }, 142953daebaSmrg { 0x00001c81, FC_CASE_FOLD_RANGE, 0x0001, -6221 }, 143953daebaSmrg { 0x00001c82, FC_CASE_FOLD_RANGE, 0x0001, -6212 }, 144953daebaSmrg { 0x00001c83, FC_CASE_FOLD_RANGE, 0x0002, -6210 }, 145953daebaSmrg { 0x00001c85, FC_CASE_FOLD_RANGE, 0x0001, -6211 }, 146953daebaSmrg { 0x00001c86, FC_CASE_FOLD_RANGE, 0x0001, -6204 }, 147953daebaSmrg { 0x00001c87, FC_CASE_FOLD_RANGE, 0x0001, -6180 }, 148953daebaSmrg { 0x00001c88, FC_CASE_FOLD_RANGE, 0x0001, -30269 }, 149a32e9e42Smrg { 0x00001c90, FC_CASE_FOLD_RANGE, 0x002b, -3008 }, 150a32e9e42Smrg { 0x00001cbd, FC_CASE_FOLD_RANGE, 0x0003, -3008 }, 151a6844aabSmrg { 0x00001e00, FC_CASE_FOLD_EVEN_ODD, 0x0095, 1 }, 152a6844aabSmrg { 0x00001e96, FC_CASE_FOLD_FULL, 0x0003, 27 }, 153a6844aabSmrg { 0x00001e97, FC_CASE_FOLD_FULL, 0x0003, 30 }, 154a6844aabSmrg { 0x00001e98, FC_CASE_FOLD_FULL, 0x0003, 33 }, 155a6844aabSmrg { 0x00001e99, FC_CASE_FOLD_FULL, 0x0003, 36 }, 156a6844aabSmrg { 0x00001e9a, FC_CASE_FOLD_FULL, 0x0003, 39 }, 157a6844aabSmrg { 0x00001e9b, FC_CASE_FOLD_RANGE, 0x0001, -58 }, 158a6844aabSmrg { 0x00001e9e, FC_CASE_FOLD_FULL, 0x0002, 42 }, 159a6844aabSmrg { 0x00001ea0, FC_CASE_FOLD_EVEN_ODD, 0x005f, 1 }, 160a6844aabSmrg { 0x00001f08, FC_CASE_FOLD_RANGE, 0x0008, -8 }, 161a6844aabSmrg { 0x00001f18, FC_CASE_FOLD_RANGE, 0x0006, -8 }, 162a6844aabSmrg { 0x00001f28, FC_CASE_FOLD_RANGE, 0x0008, -8 }, 163a6844aabSmrg { 0x00001f38, FC_CASE_FOLD_RANGE, 0x0008, -8 }, 164a6844aabSmrg { 0x00001f48, FC_CASE_FOLD_RANGE, 0x0006, -8 }, 165a6844aabSmrg { 0x00001f50, FC_CASE_FOLD_FULL, 0x0004, 44 }, 166a6844aabSmrg { 0x00001f52, FC_CASE_FOLD_FULL, 0x0006, 48 }, 167a6844aabSmrg { 0x00001f54, FC_CASE_FOLD_FULL, 0x0006, 54 }, 168a6844aabSmrg { 0x00001f56, FC_CASE_FOLD_FULL, 0x0006, 60 }, 169a6844aabSmrg { 0x00001f59, FC_CASE_FOLD_RANGE, 0x0001, -8 }, 170a6844aabSmrg { 0x00001f5b, FC_CASE_FOLD_RANGE, 0x0001, -8 }, 171a6844aabSmrg { 0x00001f5d, FC_CASE_FOLD_RANGE, 0x0001, -8 }, 172a6844aabSmrg { 0x00001f5f, FC_CASE_FOLD_RANGE, 0x0001, -8 }, 173a6844aabSmrg { 0x00001f68, FC_CASE_FOLD_RANGE, 0x0008, -8 }, 174a6844aabSmrg { 0x00001f80, FC_CASE_FOLD_FULL, 0x0005, 66 }, 175a6844aabSmrg { 0x00001f81, FC_CASE_FOLD_FULL, 0x0005, 71 }, 176a6844aabSmrg { 0x00001f82, FC_CASE_FOLD_FULL, 0x0005, 76 }, 177a6844aabSmrg { 0x00001f83, FC_CASE_FOLD_FULL, 0x0005, 81 }, 178a6844aabSmrg { 0x00001f84, FC_CASE_FOLD_FULL, 0x0005, 86 }, 179a6844aabSmrg { 0x00001f85, FC_CASE_FOLD_FULL, 0x0005, 91 }, 180a6844aabSmrg { 0x00001f86, FC_CASE_FOLD_FULL, 0x0005, 96 }, 181a6844aabSmrg { 0x00001f87, FC_CASE_FOLD_FULL, 0x0005, 101 }, 182a6844aabSmrg { 0x00001f88, FC_CASE_FOLD_FULL, 0x0005, 106 }, 183a6844aabSmrg { 0x00001f89, FC_CASE_FOLD_FULL, 0x0005, 111 }, 184a6844aabSmrg { 0x00001f8a, FC_CASE_FOLD_FULL, 0x0005, 116 }, 185a6844aabSmrg { 0x00001f8b, FC_CASE_FOLD_FULL, 0x0005, 121 }, 186a6844aabSmrg { 0x00001f8c, FC_CASE_FOLD_FULL, 0x0005, 126 }, 187a6844aabSmrg { 0x00001f8d, FC_CASE_FOLD_FULL, 0x0005, 131 }, 188a6844aabSmrg { 0x00001f8e, FC_CASE_FOLD_FULL, 0x0005, 136 }, 189a6844aabSmrg { 0x00001f8f, FC_CASE_FOLD_FULL, 0x0005, 141 }, 190a6844aabSmrg { 0x00001f90, FC_CASE_FOLD_FULL, 0x0005, 146 }, 191a6844aabSmrg { 0x00001f91, FC_CASE_FOLD_FULL, 0x0005, 151 }, 192a6844aabSmrg { 0x00001f92, FC_CASE_FOLD_FULL, 0x0005, 156 }, 193a6844aabSmrg { 0x00001f93, FC_CASE_FOLD_FULL, 0x0005, 161 }, 194a6844aabSmrg { 0x00001f94, FC_CASE_FOLD_FULL, 0x0005, 166 }, 195a6844aabSmrg { 0x00001f95, FC_CASE_FOLD_FULL, 0x0005, 171 }, 196a6844aabSmrg { 0x00001f96, FC_CASE_FOLD_FULL, 0x0005, 176 }, 197a6844aabSmrg { 0x00001f97, FC_CASE_FOLD_FULL, 0x0005, 181 }, 198a6844aabSmrg { 0x00001f98, FC_CASE_FOLD_FULL, 0x0005, 186 }, 199a6844aabSmrg { 0x00001f99, FC_CASE_FOLD_FULL, 0x0005, 191 }, 200a6844aabSmrg { 0x00001f9a, FC_CASE_FOLD_FULL, 0x0005, 196 }, 201a6844aabSmrg { 0x00001f9b, FC_CASE_FOLD_FULL, 0x0005, 201 }, 202a6844aabSmrg { 0x00001f9c, FC_CASE_FOLD_FULL, 0x0005, 206 }, 203a6844aabSmrg { 0x00001f9d, FC_CASE_FOLD_FULL, 0x0005, 211 }, 204a6844aabSmrg { 0x00001f9e, FC_CASE_FOLD_FULL, 0x0005, 216 }, 205a6844aabSmrg { 0x00001f9f, FC_CASE_FOLD_FULL, 0x0005, 221 }, 206a6844aabSmrg { 0x00001fa0, FC_CASE_FOLD_FULL, 0x0005, 226 }, 207a6844aabSmrg { 0x00001fa1, FC_CASE_FOLD_FULL, 0x0005, 231 }, 208a6844aabSmrg { 0x00001fa2, FC_CASE_FOLD_FULL, 0x0005, 236 }, 209a6844aabSmrg { 0x00001fa3, FC_CASE_FOLD_FULL, 0x0005, 241 }, 210a6844aabSmrg { 0x00001fa4, FC_CASE_FOLD_FULL, 0x0005, 246 }, 211a6844aabSmrg { 0x00001fa5, FC_CASE_FOLD_FULL, 0x0005, 251 }, 212a6844aabSmrg { 0x00001fa6, FC_CASE_FOLD_FULL, 0x0005, 256 }, 213a6844aabSmrg { 0x00001fa7, FC_CASE_FOLD_FULL, 0x0005, 261 }, 214a6844aabSmrg { 0x00001fa8, FC_CASE_FOLD_FULL, 0x0005, 266 }, 215a6844aabSmrg { 0x00001fa9, FC_CASE_FOLD_FULL, 0x0005, 271 }, 216a6844aabSmrg { 0x00001faa, FC_CASE_FOLD_FULL, 0x0005, 276 }, 217a6844aabSmrg { 0x00001fab, FC_CASE_FOLD_FULL, 0x0005, 281 }, 218a6844aabSmrg { 0x00001fac, FC_CASE_FOLD_FULL, 0x0005, 286 }, 219a6844aabSmrg { 0x00001fad, FC_CASE_FOLD_FULL, 0x0005, 291 }, 220a6844aabSmrg { 0x00001fae, FC_CASE_FOLD_FULL, 0x0005, 296 }, 221a6844aabSmrg { 0x00001faf, FC_CASE_FOLD_FULL, 0x0005, 301 }, 222a6844aabSmrg { 0x00001fb2, FC_CASE_FOLD_FULL, 0x0005, 306 }, 223a6844aabSmrg { 0x00001fb3, FC_CASE_FOLD_FULL, 0x0004, 311 }, 224a6844aabSmrg { 0x00001fb4, FC_CASE_FOLD_FULL, 0x0004, 315 }, 225a6844aabSmrg { 0x00001fb6, FC_CASE_FOLD_FULL, 0x0004, 319 }, 226a6844aabSmrg { 0x00001fb7, FC_CASE_FOLD_FULL, 0x0006, 323 }, 227a6844aabSmrg { 0x00001fb8, FC_CASE_FOLD_RANGE, 0x0002, -8 }, 228a6844aabSmrg { 0x00001fba, FC_CASE_FOLD_RANGE, 0x0002, -74 }, 229a6844aabSmrg { 0x00001fbc, FC_CASE_FOLD_FULL, 0x0004, 329 }, 230a6844aabSmrg { 0x00001fbe, FC_CASE_FOLD_RANGE, 0x0001, -7173 }, 231a6844aabSmrg { 0x00001fc2, FC_CASE_FOLD_FULL, 0x0005, 333 }, 232a6844aabSmrg { 0x00001fc3, FC_CASE_FOLD_FULL, 0x0004, 338 }, 233a6844aabSmrg { 0x00001fc4, FC_CASE_FOLD_FULL, 0x0004, 342 }, 234a6844aabSmrg { 0x00001fc6, FC_CASE_FOLD_FULL, 0x0004, 346 }, 235a6844aabSmrg { 0x00001fc7, FC_CASE_FOLD_FULL, 0x0006, 350 }, 236a6844aabSmrg { 0x00001fc8, FC_CASE_FOLD_RANGE, 0x0004, -86 }, 237a6844aabSmrg { 0x00001fcc, FC_CASE_FOLD_FULL, 0x0004, 356 }, 238a6844aabSmrg { 0x00001fd2, FC_CASE_FOLD_FULL, 0x0006, 360 }, 239a6844aabSmrg { 0x00001fd3, FC_CASE_FOLD_FULL, 0x0006, 366 }, 240a6844aabSmrg { 0x00001fd6, FC_CASE_FOLD_FULL, 0x0004, 372 }, 241a6844aabSmrg { 0x00001fd7, FC_CASE_FOLD_FULL, 0x0006, 376 }, 242a6844aabSmrg { 0x00001fd8, FC_CASE_FOLD_RANGE, 0x0002, -8 }, 243a6844aabSmrg { 0x00001fda, FC_CASE_FOLD_RANGE, 0x0002, -100 }, 244a6844aabSmrg { 0x00001fe2, FC_CASE_FOLD_FULL, 0x0006, 382 }, 245a6844aabSmrg { 0x00001fe3, FC_CASE_FOLD_FULL, 0x0006, 388 }, 246a6844aabSmrg { 0x00001fe4, FC_CASE_FOLD_FULL, 0x0004, 394 }, 247a6844aabSmrg { 0x00001fe6, FC_CASE_FOLD_FULL, 0x0004, 398 }, 248a6844aabSmrg { 0x00001fe7, FC_CASE_FOLD_FULL, 0x0006, 402 }, 249a6844aabSmrg { 0x00001fe8, FC_CASE_FOLD_RANGE, 0x0002, -8 }, 250a6844aabSmrg { 0x00001fea, FC_CASE_FOLD_RANGE, 0x0002, -112 }, 251a6844aabSmrg { 0x00001fec, FC_CASE_FOLD_RANGE, 0x0001, -7 }, 252a6844aabSmrg { 0x00001ff2, FC_CASE_FOLD_FULL, 0x0005, 408 }, 253a6844aabSmrg { 0x00001ff3, FC_CASE_FOLD_FULL, 0x0004, 413 }, 254a6844aabSmrg { 0x00001ff4, FC_CASE_FOLD_FULL, 0x0004, 417 }, 255a6844aabSmrg { 0x00001ff6, FC_CASE_FOLD_FULL, 0x0004, 421 }, 256a6844aabSmrg { 0x00001ff7, FC_CASE_FOLD_FULL, 0x0006, 425 }, 257a6844aabSmrg { 0x00001ff8, FC_CASE_FOLD_RANGE, 0x0002, -128 }, 258a6844aabSmrg { 0x00001ffa, FC_CASE_FOLD_RANGE, 0x0002, -126 }, 259a6844aabSmrg { 0x00001ffc, FC_CASE_FOLD_FULL, 0x0004, 431 }, 260a6844aabSmrg { 0x00002126, FC_CASE_FOLD_RANGE, 0x0001, -7517 }, 261a6844aabSmrg { 0x0000212a, FC_CASE_FOLD_RANGE, 0x0001, -8383 }, 262a6844aabSmrg { 0x0000212b, FC_CASE_FOLD_RANGE, 0x0001, -8262 }, 263a6844aabSmrg { 0x00002132, FC_CASE_FOLD_RANGE, 0x0001, 28 }, 264a6844aabSmrg { 0x00002160, FC_CASE_FOLD_RANGE, 0x0010, 16 }, 265a6844aabSmrg { 0x00002183, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 266a6844aabSmrg { 0x000024b6, FC_CASE_FOLD_RANGE, 0x001a, 26 }, 267a4e54154Smrg { 0x00002c00, FC_CASE_FOLD_RANGE, 0x0030, 48 }, 268a6844aabSmrg { 0x00002c60, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 269a6844aabSmrg { 0x00002c62, FC_CASE_FOLD_RANGE, 0x0001, -10743 }, 270a6844aabSmrg { 0x00002c63, FC_CASE_FOLD_RANGE, 0x0001, -3814 }, 271a6844aabSmrg { 0x00002c64, FC_CASE_FOLD_RANGE, 0x0001, -10727 }, 272a6844aabSmrg { 0x00002c67, FC_CASE_FOLD_EVEN_ODD, 0x0005, 1 }, 273a6844aabSmrg { 0x00002c6d, FC_CASE_FOLD_RANGE, 0x0001, -10780 }, 274a6844aabSmrg { 0x00002c6e, FC_CASE_FOLD_RANGE, 0x0001, -10749 }, 275a6844aabSmrg { 0x00002c6f, FC_CASE_FOLD_RANGE, 0x0001, -10783 }, 276a6844aabSmrg { 0x00002c70, FC_CASE_FOLD_RANGE, 0x0001, -10782 }, 277a6844aabSmrg { 0x00002c72, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 278a6844aabSmrg { 0x00002c75, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 279a6844aabSmrg { 0x00002c7e, FC_CASE_FOLD_RANGE, 0x0002, -10815 }, 280a6844aabSmrg { 0x00002c80, FC_CASE_FOLD_EVEN_ODD, 0x0063, 1 }, 281a6844aabSmrg { 0x00002ceb, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 }, 282ca08ab68Smrg { 0x00002cf2, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 283ca08ab68Smrg { 0x0000a640, FC_CASE_FOLD_EVEN_ODD, 0x002d, 1 }, 284953daebaSmrg { 0x0000a680, FC_CASE_FOLD_EVEN_ODD, 0x001b, 1 }, 285a6844aabSmrg { 0x0000a722, FC_CASE_FOLD_EVEN_ODD, 0x000d, 1 }, 286a6844aabSmrg { 0x0000a732, FC_CASE_FOLD_EVEN_ODD, 0x003d, 1 }, 287a6844aabSmrg { 0x0000a779, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 }, 288a6844aabSmrg { 0x0000a77d, FC_CASE_FOLD_RANGE, 0x0001, 30204 }, 289a6844aabSmrg { 0x0000a77e, FC_CASE_FOLD_EVEN_ODD, 0x0009, 1 }, 290a6844aabSmrg { 0x0000a78b, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 291ca08ab68Smrg { 0x0000a78d, FC_CASE_FOLD_RANGE, 0x0001, 23256 }, 292ca08ab68Smrg { 0x0000a790, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 }, 293953daebaSmrg { 0x0000a796, FC_CASE_FOLD_EVEN_ODD, 0x0013, 1 }, 294ca08ab68Smrg { 0x0000a7aa, FC_CASE_FOLD_RANGE, 0x0001, 23228 }, 295953daebaSmrg { 0x0000a7ab, FC_CASE_FOLD_RANGE, 0x0001, 23217 }, 296953daebaSmrg { 0x0000a7ac, FC_CASE_FOLD_RANGE, 0x0001, 23221 }, 297953daebaSmrg { 0x0000a7ad, FC_CASE_FOLD_RANGE, 0x0001, 23231 }, 298953daebaSmrg { 0x0000a7ae, FC_CASE_FOLD_RANGE, 0x0001, 23228 }, 299953daebaSmrg { 0x0000a7b0, FC_CASE_FOLD_RANGE, 0x0001, 23278 }, 300953daebaSmrg { 0x0000a7b1, FC_CASE_FOLD_RANGE, 0x0001, 23254 }, 301953daebaSmrg { 0x0000a7b2, FC_CASE_FOLD_RANGE, 0x0001, 23275 }, 302953daebaSmrg { 0x0000a7b3, FC_CASE_FOLD_RANGE, 0x0001, 928 }, 303a4e54154Smrg { 0x0000a7b4, FC_CASE_FOLD_EVEN_ODD, 0x000f, 1 }, 304a4e54154Smrg { 0x0000a7c4, FC_CASE_FOLD_RANGE, 0x0001, -48 }, 305a4e54154Smrg { 0x0000a7c5, FC_CASE_FOLD_RANGE, 0x0001, 23229 }, 306a4e54154Smrg { 0x0000a7c6, FC_CASE_FOLD_RANGE, 0x0001, 30152 }, 307a4e54154Smrg { 0x0000a7c7, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 }, 308a4e54154Smrg { 0x0000a7d0, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 309a4e54154Smrg { 0x0000a7d6, FC_CASE_FOLD_EVEN_ODD, 0x0003, 1 }, 310a4e54154Smrg { 0x0000a7f5, FC_CASE_FOLD_EVEN_ODD, 0x0001, 1 }, 311953daebaSmrg { 0x0000ab70, FC_CASE_FOLD_RANGE, 0x0050, 26672 }, 312a6844aabSmrg { 0x0000fb00, FC_CASE_FOLD_FULL, 0x0002, 435 }, 313a6844aabSmrg { 0x0000fb01, FC_CASE_FOLD_FULL, 0x0002, 437 }, 314a6844aabSmrg { 0x0000fb02, FC_CASE_FOLD_FULL, 0x0002, 439 }, 315a6844aabSmrg { 0x0000fb03, FC_CASE_FOLD_FULL, 0x0003, 441 }, 316a6844aabSmrg { 0x0000fb04, FC_CASE_FOLD_FULL, 0x0003, 444 }, 317a6844aabSmrg { 0x0000fb05, FC_CASE_FOLD_FULL, 0x0002, 447 }, 318a6844aabSmrg { 0x0000fb06, FC_CASE_FOLD_FULL, 0x0002, 449 }, 319a6844aabSmrg { 0x0000fb13, FC_CASE_FOLD_FULL, 0x0004, 451 }, 320a6844aabSmrg { 0x0000fb14, FC_CASE_FOLD_FULL, 0x0004, 455 }, 321a6844aabSmrg { 0x0000fb15, FC_CASE_FOLD_FULL, 0x0004, 459 }, 322a6844aabSmrg { 0x0000fb16, FC_CASE_FOLD_FULL, 0x0004, 463 }, 323a6844aabSmrg { 0x0000fb17, FC_CASE_FOLD_FULL, 0x0004, 467 }, 324a6844aabSmrg { 0x0000ff21, FC_CASE_FOLD_RANGE, 0x001a, 32 }, 325a6844aabSmrg { 0x00010400, FC_CASE_FOLD_RANGE, 0x0028, 40 }, 326953daebaSmrg { 0x000104b0, FC_CASE_FOLD_RANGE, 0x0024, 40 }, 327a4e54154Smrg { 0x00010570, FC_CASE_FOLD_RANGE, 0x000b, 39 }, 328a4e54154Smrg { 0x0001057c, FC_CASE_FOLD_RANGE, 0x000f, 39 }, 329a4e54154Smrg { 0x0001058c, FC_CASE_FOLD_RANGE, 0x0007, 39 }, 330a4e54154Smrg { 0x00010594, FC_CASE_FOLD_RANGE, 0x0002, 39 }, 331953daebaSmrg { 0x00010c80, FC_CASE_FOLD_RANGE, 0x0033, 64 }, 332953daebaSmrg { 0x000118a0, FC_CASE_FOLD_RANGE, 0x0020, 32 }, 333a32e9e42Smrg { 0x00016e40, FC_CASE_FOLD_RANGE, 0x0020, 32 }, 334953daebaSmrg { 0x0001e900, FC_CASE_FOLD_RANGE, 0x0022, 34 }, 335a6844aabSmrg}; 336a6844aabSmrg 337a6844aabSmrgstatic const FcChar8 fcCaseFoldChars[FC_NUM_CASE_FOLD_CHARS] = { 338a6844aabSmrg0x73,0x73,0x69,0xcc,0x87,0xca,0xbc,0x6e,0x6a,0xcc,0x8c,0xce,0xb9,0xcc,0x88,0xcc, 339a6844aabSmrg0x81,0xcf,0x85,0xcc,0x88,0xcc,0x81,0xd5,0xa5,0xd6,0x82,0x68,0xcc,0xb1,0x74,0xcc, 340a6844aabSmrg0x88,0x77,0xcc,0x8a,0x79,0xcc,0x8a,0x61,0xca,0xbe,0x73,0x73,0xcf,0x85,0xcc,0x93, 341a6844aabSmrg0xcf,0x85,0xcc,0x93,0xcc,0x80,0xcf,0x85,0xcc,0x93,0xcc,0x81,0xcf,0x85,0xcc,0x93, 342a6844aabSmrg0xcd,0x82,0xe1,0xbc,0x80,0xce,0xb9,0xe1,0xbc,0x81,0xce,0xb9,0xe1,0xbc,0x82,0xce, 343a6844aabSmrg0xb9,0xe1,0xbc,0x83,0xce,0xb9,0xe1,0xbc,0x84,0xce,0xb9,0xe1,0xbc,0x85,0xce,0xb9, 344a6844aabSmrg0xe1,0xbc,0x86,0xce,0xb9,0xe1,0xbc,0x87,0xce,0xb9,0xe1,0xbc,0x80,0xce,0xb9,0xe1, 345a6844aabSmrg0xbc,0x81,0xce,0xb9,0xe1,0xbc,0x82,0xce,0xb9,0xe1,0xbc,0x83,0xce,0xb9,0xe1,0xbc, 346a6844aabSmrg0x84,0xce,0xb9,0xe1,0xbc,0x85,0xce,0xb9,0xe1,0xbc,0x86,0xce,0xb9,0xe1,0xbc,0x87, 347a6844aabSmrg0xce,0xb9,0xe1,0xbc,0xa0,0xce,0xb9,0xe1,0xbc,0xa1,0xce,0xb9,0xe1,0xbc,0xa2,0xce, 348a6844aabSmrg0xb9,0xe1,0xbc,0xa3,0xce,0xb9,0xe1,0xbc,0xa4,0xce,0xb9,0xe1,0xbc,0xa5,0xce,0xb9, 349a6844aabSmrg0xe1,0xbc,0xa6,0xce,0xb9,0xe1,0xbc,0xa7,0xce,0xb9,0xe1,0xbc,0xa0,0xce,0xb9,0xe1, 350a6844aabSmrg0xbc,0xa1,0xce,0xb9,0xe1,0xbc,0xa2,0xce,0xb9,0xe1,0xbc,0xa3,0xce,0xb9,0xe1,0xbc, 351a6844aabSmrg0xa4,0xce,0xb9,0xe1,0xbc,0xa5,0xce,0xb9,0xe1,0xbc,0xa6,0xce,0xb9,0xe1,0xbc,0xa7, 352a6844aabSmrg0xce,0xb9,0xe1,0xbd,0xa0,0xce,0xb9,0xe1,0xbd,0xa1,0xce,0xb9,0xe1,0xbd,0xa2,0xce, 353a6844aabSmrg0xb9,0xe1,0xbd,0xa3,0xce,0xb9,0xe1,0xbd,0xa4,0xce,0xb9,0xe1,0xbd,0xa5,0xce,0xb9, 354a6844aabSmrg0xe1,0xbd,0xa6,0xce,0xb9,0xe1,0xbd,0xa7,0xce,0xb9,0xe1,0xbd,0xa0,0xce,0xb9,0xe1, 355a6844aabSmrg0xbd,0xa1,0xce,0xb9,0xe1,0xbd,0xa2,0xce,0xb9,0xe1,0xbd,0xa3,0xce,0xb9,0xe1,0xbd, 356a6844aabSmrg0xa4,0xce,0xb9,0xe1,0xbd,0xa5,0xce,0xb9,0xe1,0xbd,0xa6,0xce,0xb9,0xe1,0xbd,0xa7, 357a6844aabSmrg0xce,0xb9,0xe1,0xbd,0xb0,0xce,0xb9,0xce,0xb1,0xce,0xb9,0xce,0xac,0xce,0xb9,0xce, 358a6844aabSmrg0xb1,0xcd,0x82,0xce,0xb1,0xcd,0x82,0xce,0xb9,0xce,0xb1,0xce,0xb9,0xe1,0xbd,0xb4, 359a6844aabSmrg0xce,0xb9,0xce,0xb7,0xce,0xb9,0xce,0xae,0xce,0xb9,0xce,0xb7,0xcd,0x82,0xce,0xb7, 360a6844aabSmrg0xcd,0x82,0xce,0xb9,0xce,0xb7,0xce,0xb9,0xce,0xb9,0xcc,0x88,0xcc,0x80,0xce,0xb9, 361a6844aabSmrg0xcc,0x88,0xcc,0x81,0xce,0xb9,0xcd,0x82,0xce,0xb9,0xcc,0x88,0xcd,0x82,0xcf,0x85, 362a6844aabSmrg0xcc,0x88,0xcc,0x80,0xcf,0x85,0xcc,0x88,0xcc,0x81,0xcf,0x81,0xcc,0x93,0xcf,0x85, 363a6844aabSmrg0xcd,0x82,0xcf,0x85,0xcc,0x88,0xcd,0x82,0xe1,0xbd,0xbc,0xce,0xb9,0xcf,0x89,0xce, 364a6844aabSmrg0xb9,0xcf,0x8e,0xce,0xb9,0xcf,0x89,0xcd,0x82,0xcf,0x89,0xcd,0x82,0xce,0xb9,0xcf, 365a6844aabSmrg0x89,0xce,0xb9,0x66,0x66,0x66,0x69,0x66,0x6c,0x66,0x66,0x69,0x66,0x66,0x6c,0x73, 366a6844aabSmrg0x74,0x73,0x74,0xd5,0xb4,0xd5,0xb6,0xd5,0xb4,0xd5,0xa5,0xd5,0xb4,0xd5,0xab,0xd5, 367a6844aabSmrg0xbe,0xd5,0xb6,0xd5,0xb4,0xd5,0xad 368a6844aabSmrg}; 369