fccase.h revision ca08ab68
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
25ca08ab68Smrg#define FC_NUM_CASE_FOLD	264
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
30a6844aabSmrg#define FC_MAX_FOLD_CHAR	0x00010427
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 },
104a6844aabSmrg    { 0x00000386, FC_CASE_FOLD_RANGE,    0x0001,     38 },
105a6844aabSmrg    { 0x00000388, FC_CASE_FOLD_RANGE,    0x0003,     37 },
106a6844aabSmrg    { 0x0000038c, FC_CASE_FOLD_RANGE,    0x0001,     64 },
107a6844aabSmrg    { 0x0000038e, FC_CASE_FOLD_RANGE,    0x0002,     63 },
108a6844aabSmrg    { 0x00000390, FC_CASE_FOLD_FULL,     0x0006,     11 },
109a6844aabSmrg    { 0x00000391, FC_CASE_FOLD_RANGE,    0x0011,     32 },
110a6844aabSmrg    { 0x000003a3, FC_CASE_FOLD_RANGE,    0x0009,     32 },
111a6844aabSmrg    { 0x000003b0, FC_CASE_FOLD_FULL,     0x0006,     17 },
112a6844aabSmrg    { 0x000003c2, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
113a6844aabSmrg    { 0x000003cf, FC_CASE_FOLD_RANGE,    0x0001,      8 },
114a6844aabSmrg    { 0x000003d0, FC_CASE_FOLD_RANGE,    0x0001,    -30 },
115a6844aabSmrg    { 0x000003d1, FC_CASE_FOLD_RANGE,    0x0001,    -25 },
116a6844aabSmrg    { 0x000003d5, FC_CASE_FOLD_RANGE,    0x0001,    -15 },
117a6844aabSmrg    { 0x000003d6, FC_CASE_FOLD_RANGE,    0x0001,    -22 },
118a6844aabSmrg    { 0x000003d8, FC_CASE_FOLD_EVEN_ODD, 0x0017,      1 },
119a6844aabSmrg    { 0x000003f0, FC_CASE_FOLD_RANGE,    0x0001,    -54 },
120a6844aabSmrg    { 0x000003f1, FC_CASE_FOLD_RANGE,    0x0001,    -48 },
121a6844aabSmrg    { 0x000003f4, FC_CASE_FOLD_RANGE,    0x0001,    -60 },
122a6844aabSmrg    { 0x000003f5, FC_CASE_FOLD_RANGE,    0x0001,    -64 },
123a6844aabSmrg    { 0x000003f7, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
124a6844aabSmrg    { 0x000003f9, FC_CASE_FOLD_RANGE,    0x0001,     -7 },
125a6844aabSmrg    { 0x000003fa, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
126a6844aabSmrg    { 0x000003fd, FC_CASE_FOLD_RANGE,    0x0003,   -130 },
127a6844aabSmrg    { 0x00000400, FC_CASE_FOLD_RANGE,    0x0010,     80 },
128a6844aabSmrg    { 0x00000410, FC_CASE_FOLD_RANGE,    0x0020,     32 },
129a6844aabSmrg    { 0x00000460, FC_CASE_FOLD_EVEN_ODD, 0x0021,      1 },
130a6844aabSmrg    { 0x0000048a, FC_CASE_FOLD_EVEN_ODD, 0x0035,      1 },
131a6844aabSmrg    { 0x000004c0, FC_CASE_FOLD_RANGE,    0x0001,     15 },
132a6844aabSmrg    { 0x000004c1, FC_CASE_FOLD_EVEN_ODD, 0x000d,      1 },
133ca08ab68Smrg    { 0x000004d0, FC_CASE_FOLD_EVEN_ODD, 0x0057,      1 },
134a6844aabSmrg    { 0x00000531, FC_CASE_FOLD_RANGE,    0x0026,     48 },
135a6844aabSmrg    { 0x00000587, FC_CASE_FOLD_FULL,     0x0004,     23 },
136a6844aabSmrg    { 0x000010a0, FC_CASE_FOLD_RANGE,    0x0026,   7264 },
137ca08ab68Smrg    { 0x000010c7, FC_CASE_FOLD_RANGE,    0x0001,   7264 },
138ca08ab68Smrg    { 0x000010cd, FC_CASE_FOLD_RANGE,    0x0001,   7264 },
139a6844aabSmrg    { 0x00001e00, FC_CASE_FOLD_EVEN_ODD, 0x0095,      1 },
140a6844aabSmrg    { 0x00001e96, FC_CASE_FOLD_FULL,     0x0003,     27 },
141a6844aabSmrg    { 0x00001e97, FC_CASE_FOLD_FULL,     0x0003,     30 },
142a6844aabSmrg    { 0x00001e98, FC_CASE_FOLD_FULL,     0x0003,     33 },
143a6844aabSmrg    { 0x00001e99, FC_CASE_FOLD_FULL,     0x0003,     36 },
144a6844aabSmrg    { 0x00001e9a, FC_CASE_FOLD_FULL,     0x0003,     39 },
145a6844aabSmrg    { 0x00001e9b, FC_CASE_FOLD_RANGE,    0x0001,    -58 },
146a6844aabSmrg    { 0x00001e9e, FC_CASE_FOLD_FULL,     0x0002,     42 },
147a6844aabSmrg    { 0x00001ea0, FC_CASE_FOLD_EVEN_ODD, 0x005f,      1 },
148a6844aabSmrg    { 0x00001f08, FC_CASE_FOLD_RANGE,    0x0008,     -8 },
149a6844aabSmrg    { 0x00001f18, FC_CASE_FOLD_RANGE,    0x0006,     -8 },
150a6844aabSmrg    { 0x00001f28, FC_CASE_FOLD_RANGE,    0x0008,     -8 },
151a6844aabSmrg    { 0x00001f38, FC_CASE_FOLD_RANGE,    0x0008,     -8 },
152a6844aabSmrg    { 0x00001f48, FC_CASE_FOLD_RANGE,    0x0006,     -8 },
153a6844aabSmrg    { 0x00001f50, FC_CASE_FOLD_FULL,     0x0004,     44 },
154a6844aabSmrg    { 0x00001f52, FC_CASE_FOLD_FULL,     0x0006,     48 },
155a6844aabSmrg    { 0x00001f54, FC_CASE_FOLD_FULL,     0x0006,     54 },
156a6844aabSmrg    { 0x00001f56, FC_CASE_FOLD_FULL,     0x0006,     60 },
157a6844aabSmrg    { 0x00001f59, FC_CASE_FOLD_RANGE,    0x0001,     -8 },
158a6844aabSmrg    { 0x00001f5b, FC_CASE_FOLD_RANGE,    0x0001,     -8 },
159a6844aabSmrg    { 0x00001f5d, FC_CASE_FOLD_RANGE,    0x0001,     -8 },
160a6844aabSmrg    { 0x00001f5f, FC_CASE_FOLD_RANGE,    0x0001,     -8 },
161a6844aabSmrg    { 0x00001f68, FC_CASE_FOLD_RANGE,    0x0008,     -8 },
162a6844aabSmrg    { 0x00001f80, FC_CASE_FOLD_FULL,     0x0005,     66 },
163a6844aabSmrg    { 0x00001f81, FC_CASE_FOLD_FULL,     0x0005,     71 },
164a6844aabSmrg    { 0x00001f82, FC_CASE_FOLD_FULL,     0x0005,     76 },
165a6844aabSmrg    { 0x00001f83, FC_CASE_FOLD_FULL,     0x0005,     81 },
166a6844aabSmrg    { 0x00001f84, FC_CASE_FOLD_FULL,     0x0005,     86 },
167a6844aabSmrg    { 0x00001f85, FC_CASE_FOLD_FULL,     0x0005,     91 },
168a6844aabSmrg    { 0x00001f86, FC_CASE_FOLD_FULL,     0x0005,     96 },
169a6844aabSmrg    { 0x00001f87, FC_CASE_FOLD_FULL,     0x0005,    101 },
170a6844aabSmrg    { 0x00001f88, FC_CASE_FOLD_FULL,     0x0005,    106 },
171a6844aabSmrg    { 0x00001f89, FC_CASE_FOLD_FULL,     0x0005,    111 },
172a6844aabSmrg    { 0x00001f8a, FC_CASE_FOLD_FULL,     0x0005,    116 },
173a6844aabSmrg    { 0x00001f8b, FC_CASE_FOLD_FULL,     0x0005,    121 },
174a6844aabSmrg    { 0x00001f8c, FC_CASE_FOLD_FULL,     0x0005,    126 },
175a6844aabSmrg    { 0x00001f8d, FC_CASE_FOLD_FULL,     0x0005,    131 },
176a6844aabSmrg    { 0x00001f8e, FC_CASE_FOLD_FULL,     0x0005,    136 },
177a6844aabSmrg    { 0x00001f8f, FC_CASE_FOLD_FULL,     0x0005,    141 },
178a6844aabSmrg    { 0x00001f90, FC_CASE_FOLD_FULL,     0x0005,    146 },
179a6844aabSmrg    { 0x00001f91, FC_CASE_FOLD_FULL,     0x0005,    151 },
180a6844aabSmrg    { 0x00001f92, FC_CASE_FOLD_FULL,     0x0005,    156 },
181a6844aabSmrg    { 0x00001f93, FC_CASE_FOLD_FULL,     0x0005,    161 },
182a6844aabSmrg    { 0x00001f94, FC_CASE_FOLD_FULL,     0x0005,    166 },
183a6844aabSmrg    { 0x00001f95, FC_CASE_FOLD_FULL,     0x0005,    171 },
184a6844aabSmrg    { 0x00001f96, FC_CASE_FOLD_FULL,     0x0005,    176 },
185a6844aabSmrg    { 0x00001f97, FC_CASE_FOLD_FULL,     0x0005,    181 },
186a6844aabSmrg    { 0x00001f98, FC_CASE_FOLD_FULL,     0x0005,    186 },
187a6844aabSmrg    { 0x00001f99, FC_CASE_FOLD_FULL,     0x0005,    191 },
188a6844aabSmrg    { 0x00001f9a, FC_CASE_FOLD_FULL,     0x0005,    196 },
189a6844aabSmrg    { 0x00001f9b, FC_CASE_FOLD_FULL,     0x0005,    201 },
190a6844aabSmrg    { 0x00001f9c, FC_CASE_FOLD_FULL,     0x0005,    206 },
191a6844aabSmrg    { 0x00001f9d, FC_CASE_FOLD_FULL,     0x0005,    211 },
192a6844aabSmrg    { 0x00001f9e, FC_CASE_FOLD_FULL,     0x0005,    216 },
193a6844aabSmrg    { 0x00001f9f, FC_CASE_FOLD_FULL,     0x0005,    221 },
194a6844aabSmrg    { 0x00001fa0, FC_CASE_FOLD_FULL,     0x0005,    226 },
195a6844aabSmrg    { 0x00001fa1, FC_CASE_FOLD_FULL,     0x0005,    231 },
196a6844aabSmrg    { 0x00001fa2, FC_CASE_FOLD_FULL,     0x0005,    236 },
197a6844aabSmrg    { 0x00001fa3, FC_CASE_FOLD_FULL,     0x0005,    241 },
198a6844aabSmrg    { 0x00001fa4, FC_CASE_FOLD_FULL,     0x0005,    246 },
199a6844aabSmrg    { 0x00001fa5, FC_CASE_FOLD_FULL,     0x0005,    251 },
200a6844aabSmrg    { 0x00001fa6, FC_CASE_FOLD_FULL,     0x0005,    256 },
201a6844aabSmrg    { 0x00001fa7, FC_CASE_FOLD_FULL,     0x0005,    261 },
202a6844aabSmrg    { 0x00001fa8, FC_CASE_FOLD_FULL,     0x0005,    266 },
203a6844aabSmrg    { 0x00001fa9, FC_CASE_FOLD_FULL,     0x0005,    271 },
204a6844aabSmrg    { 0x00001faa, FC_CASE_FOLD_FULL,     0x0005,    276 },
205a6844aabSmrg    { 0x00001fab, FC_CASE_FOLD_FULL,     0x0005,    281 },
206a6844aabSmrg    { 0x00001fac, FC_CASE_FOLD_FULL,     0x0005,    286 },
207a6844aabSmrg    { 0x00001fad, FC_CASE_FOLD_FULL,     0x0005,    291 },
208a6844aabSmrg    { 0x00001fae, FC_CASE_FOLD_FULL,     0x0005,    296 },
209a6844aabSmrg    { 0x00001faf, FC_CASE_FOLD_FULL,     0x0005,    301 },
210a6844aabSmrg    { 0x00001fb2, FC_CASE_FOLD_FULL,     0x0005,    306 },
211a6844aabSmrg    { 0x00001fb3, FC_CASE_FOLD_FULL,     0x0004,    311 },
212a6844aabSmrg    { 0x00001fb4, FC_CASE_FOLD_FULL,     0x0004,    315 },
213a6844aabSmrg    { 0x00001fb6, FC_CASE_FOLD_FULL,     0x0004,    319 },
214a6844aabSmrg    { 0x00001fb7, FC_CASE_FOLD_FULL,     0x0006,    323 },
215a6844aabSmrg    { 0x00001fb8, FC_CASE_FOLD_RANGE,    0x0002,     -8 },
216a6844aabSmrg    { 0x00001fba, FC_CASE_FOLD_RANGE,    0x0002,    -74 },
217a6844aabSmrg    { 0x00001fbc, FC_CASE_FOLD_FULL,     0x0004,    329 },
218a6844aabSmrg    { 0x00001fbe, FC_CASE_FOLD_RANGE,    0x0001,  -7173 },
219a6844aabSmrg    { 0x00001fc2, FC_CASE_FOLD_FULL,     0x0005,    333 },
220a6844aabSmrg    { 0x00001fc3, FC_CASE_FOLD_FULL,     0x0004,    338 },
221a6844aabSmrg    { 0x00001fc4, FC_CASE_FOLD_FULL,     0x0004,    342 },
222a6844aabSmrg    { 0x00001fc6, FC_CASE_FOLD_FULL,     0x0004,    346 },
223a6844aabSmrg    { 0x00001fc7, FC_CASE_FOLD_FULL,     0x0006,    350 },
224a6844aabSmrg    { 0x00001fc8, FC_CASE_FOLD_RANGE,    0x0004,    -86 },
225a6844aabSmrg    { 0x00001fcc, FC_CASE_FOLD_FULL,     0x0004,    356 },
226a6844aabSmrg    { 0x00001fd2, FC_CASE_FOLD_FULL,     0x0006,    360 },
227a6844aabSmrg    { 0x00001fd3, FC_CASE_FOLD_FULL,     0x0006,    366 },
228a6844aabSmrg    { 0x00001fd6, FC_CASE_FOLD_FULL,     0x0004,    372 },
229a6844aabSmrg    { 0x00001fd7, FC_CASE_FOLD_FULL,     0x0006,    376 },
230a6844aabSmrg    { 0x00001fd8, FC_CASE_FOLD_RANGE,    0x0002,     -8 },
231a6844aabSmrg    { 0x00001fda, FC_CASE_FOLD_RANGE,    0x0002,   -100 },
232a6844aabSmrg    { 0x00001fe2, FC_CASE_FOLD_FULL,     0x0006,    382 },
233a6844aabSmrg    { 0x00001fe3, FC_CASE_FOLD_FULL,     0x0006,    388 },
234a6844aabSmrg    { 0x00001fe4, FC_CASE_FOLD_FULL,     0x0004,    394 },
235a6844aabSmrg    { 0x00001fe6, FC_CASE_FOLD_FULL,     0x0004,    398 },
236a6844aabSmrg    { 0x00001fe7, FC_CASE_FOLD_FULL,     0x0006,    402 },
237a6844aabSmrg    { 0x00001fe8, FC_CASE_FOLD_RANGE,    0x0002,     -8 },
238a6844aabSmrg    { 0x00001fea, FC_CASE_FOLD_RANGE,    0x0002,   -112 },
239a6844aabSmrg    { 0x00001fec, FC_CASE_FOLD_RANGE,    0x0001,     -7 },
240a6844aabSmrg    { 0x00001ff2, FC_CASE_FOLD_FULL,     0x0005,    408 },
241a6844aabSmrg    { 0x00001ff3, FC_CASE_FOLD_FULL,     0x0004,    413 },
242a6844aabSmrg    { 0x00001ff4, FC_CASE_FOLD_FULL,     0x0004,    417 },
243a6844aabSmrg    { 0x00001ff6, FC_CASE_FOLD_FULL,     0x0004,    421 },
244a6844aabSmrg    { 0x00001ff7, FC_CASE_FOLD_FULL,     0x0006,    425 },
245a6844aabSmrg    { 0x00001ff8, FC_CASE_FOLD_RANGE,    0x0002,   -128 },
246a6844aabSmrg    { 0x00001ffa, FC_CASE_FOLD_RANGE,    0x0002,   -126 },
247a6844aabSmrg    { 0x00001ffc, FC_CASE_FOLD_FULL,     0x0004,    431 },
248a6844aabSmrg    { 0x00002126, FC_CASE_FOLD_RANGE,    0x0001,  -7517 },
249a6844aabSmrg    { 0x0000212a, FC_CASE_FOLD_RANGE,    0x0001,  -8383 },
250a6844aabSmrg    { 0x0000212b, FC_CASE_FOLD_RANGE,    0x0001,  -8262 },
251a6844aabSmrg    { 0x00002132, FC_CASE_FOLD_RANGE,    0x0001,     28 },
252a6844aabSmrg    { 0x00002160, FC_CASE_FOLD_RANGE,    0x0010,     16 },
253a6844aabSmrg    { 0x00002183, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
254a6844aabSmrg    { 0x000024b6, FC_CASE_FOLD_RANGE,    0x001a,     26 },
255a6844aabSmrg    { 0x00002c00, FC_CASE_FOLD_RANGE,    0x002f,     48 },
256a6844aabSmrg    { 0x00002c60, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
257a6844aabSmrg    { 0x00002c62, FC_CASE_FOLD_RANGE,    0x0001, -10743 },
258a6844aabSmrg    { 0x00002c63, FC_CASE_FOLD_RANGE,    0x0001,  -3814 },
259a6844aabSmrg    { 0x00002c64, FC_CASE_FOLD_RANGE,    0x0001, -10727 },
260a6844aabSmrg    { 0x00002c67, FC_CASE_FOLD_EVEN_ODD, 0x0005,      1 },
261a6844aabSmrg    { 0x00002c6d, FC_CASE_FOLD_RANGE,    0x0001, -10780 },
262a6844aabSmrg    { 0x00002c6e, FC_CASE_FOLD_RANGE,    0x0001, -10749 },
263a6844aabSmrg    { 0x00002c6f, FC_CASE_FOLD_RANGE,    0x0001, -10783 },
264a6844aabSmrg    { 0x00002c70, FC_CASE_FOLD_RANGE,    0x0001, -10782 },
265a6844aabSmrg    { 0x00002c72, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
266a6844aabSmrg    { 0x00002c75, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
267a6844aabSmrg    { 0x00002c7e, FC_CASE_FOLD_RANGE,    0x0002, -10815 },
268a6844aabSmrg    { 0x00002c80, FC_CASE_FOLD_EVEN_ODD, 0x0063,      1 },
269a6844aabSmrg    { 0x00002ceb, FC_CASE_FOLD_EVEN_ODD, 0x0003,      1 },
270ca08ab68Smrg    { 0x00002cf2, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
271ca08ab68Smrg    { 0x0000a640, FC_CASE_FOLD_EVEN_ODD, 0x002d,      1 },
272a6844aabSmrg    { 0x0000a680, FC_CASE_FOLD_EVEN_ODD, 0x0017,      1 },
273a6844aabSmrg    { 0x0000a722, FC_CASE_FOLD_EVEN_ODD, 0x000d,      1 },
274a6844aabSmrg    { 0x0000a732, FC_CASE_FOLD_EVEN_ODD, 0x003d,      1 },
275a6844aabSmrg    { 0x0000a779, FC_CASE_FOLD_EVEN_ODD, 0x0003,      1 },
276a6844aabSmrg    { 0x0000a77d, FC_CASE_FOLD_RANGE,    0x0001,  30204 },
277a6844aabSmrg    { 0x0000a77e, FC_CASE_FOLD_EVEN_ODD, 0x0009,      1 },
278a6844aabSmrg    { 0x0000a78b, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
279ca08ab68Smrg    { 0x0000a78d, FC_CASE_FOLD_RANGE,    0x0001,  23256 },
280ca08ab68Smrg    { 0x0000a790, FC_CASE_FOLD_EVEN_ODD, 0x0003,      1 },
281ca08ab68Smrg    { 0x0000a7a0, FC_CASE_FOLD_EVEN_ODD, 0x0009,      1 },
282ca08ab68Smrg    { 0x0000a7aa, FC_CASE_FOLD_RANGE,    0x0001,  23228 },
283a6844aabSmrg    { 0x0000fb00, FC_CASE_FOLD_FULL,     0x0002,    435 },
284a6844aabSmrg    { 0x0000fb01, FC_CASE_FOLD_FULL,     0x0002,    437 },
285a6844aabSmrg    { 0x0000fb02, FC_CASE_FOLD_FULL,     0x0002,    439 },
286a6844aabSmrg    { 0x0000fb03, FC_CASE_FOLD_FULL,     0x0003,    441 },
287a6844aabSmrg    { 0x0000fb04, FC_CASE_FOLD_FULL,     0x0003,    444 },
288a6844aabSmrg    { 0x0000fb05, FC_CASE_FOLD_FULL,     0x0002,    447 },
289a6844aabSmrg    { 0x0000fb06, FC_CASE_FOLD_FULL,     0x0002,    449 },
290a6844aabSmrg    { 0x0000fb13, FC_CASE_FOLD_FULL,     0x0004,    451 },
291a6844aabSmrg    { 0x0000fb14, FC_CASE_FOLD_FULL,     0x0004,    455 },
292a6844aabSmrg    { 0x0000fb15, FC_CASE_FOLD_FULL,     0x0004,    459 },
293a6844aabSmrg    { 0x0000fb16, FC_CASE_FOLD_FULL,     0x0004,    463 },
294a6844aabSmrg    { 0x0000fb17, FC_CASE_FOLD_FULL,     0x0004,    467 },
295a6844aabSmrg    { 0x0000ff21, FC_CASE_FOLD_RANGE,    0x001a,     32 },
296a6844aabSmrg    { 0x00010400, FC_CASE_FOLD_RANGE,    0x0028,     40 },
297a6844aabSmrg};
298a6844aabSmrg
299a6844aabSmrgstatic const FcChar8	fcCaseFoldChars[FC_NUM_CASE_FOLD_CHARS] = {
300a6844aabSmrg0x73,0x73,0x69,0xcc,0x87,0xca,0xbc,0x6e,0x6a,0xcc,0x8c,0xce,0xb9,0xcc,0x88,0xcc,
301a6844aabSmrg0x81,0xcf,0x85,0xcc,0x88,0xcc,0x81,0xd5,0xa5,0xd6,0x82,0x68,0xcc,0xb1,0x74,0xcc,
302a6844aabSmrg0x88,0x77,0xcc,0x8a,0x79,0xcc,0x8a,0x61,0xca,0xbe,0x73,0x73,0xcf,0x85,0xcc,0x93,
303a6844aabSmrg0xcf,0x85,0xcc,0x93,0xcc,0x80,0xcf,0x85,0xcc,0x93,0xcc,0x81,0xcf,0x85,0xcc,0x93,
304a6844aabSmrg0xcd,0x82,0xe1,0xbc,0x80,0xce,0xb9,0xe1,0xbc,0x81,0xce,0xb9,0xe1,0xbc,0x82,0xce,
305a6844aabSmrg0xb9,0xe1,0xbc,0x83,0xce,0xb9,0xe1,0xbc,0x84,0xce,0xb9,0xe1,0xbc,0x85,0xce,0xb9,
306a6844aabSmrg0xe1,0xbc,0x86,0xce,0xb9,0xe1,0xbc,0x87,0xce,0xb9,0xe1,0xbc,0x80,0xce,0xb9,0xe1,
307a6844aabSmrg0xbc,0x81,0xce,0xb9,0xe1,0xbc,0x82,0xce,0xb9,0xe1,0xbc,0x83,0xce,0xb9,0xe1,0xbc,
308a6844aabSmrg0x84,0xce,0xb9,0xe1,0xbc,0x85,0xce,0xb9,0xe1,0xbc,0x86,0xce,0xb9,0xe1,0xbc,0x87,
309a6844aabSmrg0xce,0xb9,0xe1,0xbc,0xa0,0xce,0xb9,0xe1,0xbc,0xa1,0xce,0xb9,0xe1,0xbc,0xa2,0xce,
310a6844aabSmrg0xb9,0xe1,0xbc,0xa3,0xce,0xb9,0xe1,0xbc,0xa4,0xce,0xb9,0xe1,0xbc,0xa5,0xce,0xb9,
311a6844aabSmrg0xe1,0xbc,0xa6,0xce,0xb9,0xe1,0xbc,0xa7,0xce,0xb9,0xe1,0xbc,0xa0,0xce,0xb9,0xe1,
312a6844aabSmrg0xbc,0xa1,0xce,0xb9,0xe1,0xbc,0xa2,0xce,0xb9,0xe1,0xbc,0xa3,0xce,0xb9,0xe1,0xbc,
313a6844aabSmrg0xa4,0xce,0xb9,0xe1,0xbc,0xa5,0xce,0xb9,0xe1,0xbc,0xa6,0xce,0xb9,0xe1,0xbc,0xa7,
314a6844aabSmrg0xce,0xb9,0xe1,0xbd,0xa0,0xce,0xb9,0xe1,0xbd,0xa1,0xce,0xb9,0xe1,0xbd,0xa2,0xce,
315a6844aabSmrg0xb9,0xe1,0xbd,0xa3,0xce,0xb9,0xe1,0xbd,0xa4,0xce,0xb9,0xe1,0xbd,0xa5,0xce,0xb9,
316a6844aabSmrg0xe1,0xbd,0xa6,0xce,0xb9,0xe1,0xbd,0xa7,0xce,0xb9,0xe1,0xbd,0xa0,0xce,0xb9,0xe1,
317a6844aabSmrg0xbd,0xa1,0xce,0xb9,0xe1,0xbd,0xa2,0xce,0xb9,0xe1,0xbd,0xa3,0xce,0xb9,0xe1,0xbd,
318a6844aabSmrg0xa4,0xce,0xb9,0xe1,0xbd,0xa5,0xce,0xb9,0xe1,0xbd,0xa6,0xce,0xb9,0xe1,0xbd,0xa7,
319a6844aabSmrg0xce,0xb9,0xe1,0xbd,0xb0,0xce,0xb9,0xce,0xb1,0xce,0xb9,0xce,0xac,0xce,0xb9,0xce,
320a6844aabSmrg0xb1,0xcd,0x82,0xce,0xb1,0xcd,0x82,0xce,0xb9,0xce,0xb1,0xce,0xb9,0xe1,0xbd,0xb4,
321a6844aabSmrg0xce,0xb9,0xce,0xb7,0xce,0xb9,0xce,0xae,0xce,0xb9,0xce,0xb7,0xcd,0x82,0xce,0xb7,
322a6844aabSmrg0xcd,0x82,0xce,0xb9,0xce,0xb7,0xce,0xb9,0xce,0xb9,0xcc,0x88,0xcc,0x80,0xce,0xb9,
323a6844aabSmrg0xcc,0x88,0xcc,0x81,0xce,0xb9,0xcd,0x82,0xce,0xb9,0xcc,0x88,0xcd,0x82,0xcf,0x85,
324a6844aabSmrg0xcc,0x88,0xcc,0x80,0xcf,0x85,0xcc,0x88,0xcc,0x81,0xcf,0x81,0xcc,0x93,0xcf,0x85,
325a6844aabSmrg0xcd,0x82,0xcf,0x85,0xcc,0x88,0xcd,0x82,0xe1,0xbd,0xbc,0xce,0xb9,0xcf,0x89,0xce,
326a6844aabSmrg0xb9,0xcf,0x8e,0xce,0xb9,0xcf,0x89,0xcd,0x82,0xcf,0x89,0xcd,0x82,0xce,0xb9,0xcf,
327a6844aabSmrg0x89,0xce,0xb9,0x66,0x66,0x66,0x69,0x66,0x6c,0x66,0x66,0x69,0x66,0x66,0x6c,0x73,
328a6844aabSmrg0x74,0x73,0x74,0xd5,0xb4,0xd5,0xb6,0xd5,0xb4,0xd5,0xa5,0xd5,0xb4,0xd5,0xab,0xd5,
329a6844aabSmrg0xbe,0xd5,0xb6,0xd5,0xb4,0xd5,0xad
330a6844aabSmrg};
331