"Fossies" - the Fresh Open Source Software Archive 
Member "xorriso-1.5.4/libisofs/hfsplus_decompose_old.c" (30 Jan 2021, 40531 Bytes) of package /linux/misc/xorriso-1.5.4.pl02.tar.gz:
As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style:
standard) with prefixed line numbers and
code folding option.
Alternatively you can here
view or
download the uninterpreted source code file.
For more information about "hfsplus_decompose_old.c" see the
Fossies "Dox" file reference documentation.
1 #ifdef HAVE_CONFIG_H
2 #include "../config.h"
3 #endif
4
5 #include "hfsplus.h"
6
7 /*
8 Cased on tn1150 (HFS+ format specification)
9 */
10
11
12 static uint16_t page00[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
13 [0xc0] = { 0x0041, 0x0300, 0x0000 },
14 [0xc1] = { 0x0041, 0x0301, 0x0000 },
15 [0xc2] = { 0x0041, 0x0302, 0x0000 },
16 [0xc3] = { 0x0041, 0x0303, 0x0000 },
17 [0xc4] = { 0x0041, 0x0308, 0x0000 },
18 [0xc5] = { 0x0041, 0x030A, 0x0000 },
19 [0xc7] = { 0x0043, 0x0327, 0x0000 },
20 [0xc8] = { 0x0045, 0x0300, 0x0000 },
21 [0xc9] = { 0x0045, 0x0301, 0x0000 },
22 [0xca] = { 0x0045, 0x0302, 0x0000 },
23 [0xcb] = { 0x0045, 0x0308, 0x0000 },
24 [0xcc] = { 0x0049, 0x0300, 0x0000 },
25 [0xcd] = { 0x0049, 0x0301, 0x0000 },
26 [0xce] = { 0x0049, 0x0302, 0x0000 },
27 [0xcf] = { 0x0049, 0x0308, 0x0000 },
28 [0xd1] = { 0x004E, 0x0303, 0x0000 },
29 [0xd2] = { 0x004F, 0x0300, 0x0000 },
30 [0xd3] = { 0x004F, 0x0301, 0x0000 },
31 [0xd4] = { 0x004F, 0x0302, 0x0000 },
32 [0xd5] = { 0x004F, 0x0303, 0x0000 },
33 [0xd6] = { 0x004F, 0x0308, 0x0000 },
34 [0xd9] = { 0x0055, 0x0300, 0x0000 },
35 [0xda] = { 0x0055, 0x0301, 0x0000 },
36 [0xdb] = { 0x0055, 0x0302, 0x0000 },
37 [0xdc] = { 0x0055, 0x0308, 0x0000 },
38 [0xdd] = { 0x0059, 0x0301, 0x0000 },
39 [0xe0] = { 0x0061, 0x0300, 0x0000 },
40 [0xe1] = { 0x0061, 0x0301, 0x0000 },
41 [0xe2] = { 0x0061, 0x0302, 0x0000 },
42 [0xe3] = { 0x0061, 0x0303, 0x0000 },
43 [0xe4] = { 0x0061, 0x0308, 0x0000 },
44 [0xe5] = { 0x0061, 0x030A, 0x0000 },
45 [0xe7] = { 0x0063, 0x0327, 0x0000 },
46 [0xe8] = { 0x0065, 0x0300, 0x0000 },
47 [0xe9] = { 0x0065, 0x0301, 0x0000 },
48 [0xea] = { 0x0065, 0x0302, 0x0000 },
49 [0xeb] = { 0x0065, 0x0308, 0x0000 },
50 [0xec] = { 0x0069, 0x0300, 0x0000 },
51 [0xed] = { 0x0069, 0x0301, 0x0000 },
52 [0xee] = { 0x0069, 0x0302, 0x0000 },
53 [0xef] = { 0x0069, 0x0308, 0x0000 },
54 [0xf1] = { 0x006E, 0x0303, 0x0000 },
55 [0xf2] = { 0x006F, 0x0300, 0x0000 },
56 [0xf3] = { 0x006F, 0x0301, 0x0000 },
57 [0xf4] = { 0x006F, 0x0302, 0x0000 },
58 [0xf5] = { 0x006F, 0x0303, 0x0000 },
59 [0xf6] = { 0x006F, 0x0308, 0x0000 },
60 [0xf9] = { 0x0075, 0x0300, 0x0000 },
61 [0xfa] = { 0x0075, 0x0301, 0x0000 },
62 [0xfb] = { 0x0075, 0x0302, 0x0000 },
63 [0xfc] = { 0x0075, 0x0308, 0x0000 },
64 [0xfd] = { 0x0079, 0x0301, 0x0000 },
65 [0xff] = { 0x0079, 0x0308, 0x0000 },
66 };
67
68 static uint16_t page01[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
69 [0x00] = { 0x0041, 0x0304, 0x0000 },
70 [0x01] = { 0x0061, 0x0304, 0x0000 },
71 [0x02] = { 0x0041, 0x0306, 0x0000 },
72 [0x03] = { 0x0061, 0x0306, 0x0000 },
73 [0x04] = { 0x0041, 0x0328, 0x0000 },
74 [0x05] = { 0x0061, 0x0328, 0x0000 },
75 [0x06] = { 0x0043, 0x0301, 0x0000 },
76 [0x07] = { 0x0063, 0x0301, 0x0000 },
77 [0x08] = { 0x0043, 0x0302, 0x0000 },
78 [0x09] = { 0x0063, 0x0302, 0x0000 },
79 [0x0a] = { 0x0043, 0x0307, 0x0000 },
80 [0x0b] = { 0x0063, 0x0307, 0x0000 },
81 [0x0c] = { 0x0043, 0x030C, 0x0000 },
82 [0x0d] = { 0x0063, 0x030C, 0x0000 },
83 [0x0e] = { 0x0044, 0x030C, 0x0000 },
84 [0x0f] = { 0x0064, 0x030C, 0x0000 },
85 [0x12] = { 0x0045, 0x0304, 0x0000 },
86 [0x13] = { 0x0065, 0x0304, 0x0000 },
87 [0x14] = { 0x0045, 0x0306, 0x0000 },
88 [0x15] = { 0x0065, 0x0306, 0x0000 },
89 [0x16] = { 0x0045, 0x0307, 0x0000 },
90 [0x17] = { 0x0065, 0x0307, 0x0000 },
91 [0x18] = { 0x0045, 0x0328, 0x0000 },
92 [0x19] = { 0x0065, 0x0328, 0x0000 },
93 [0x1a] = { 0x0045, 0x030C, 0x0000 },
94 [0x1b] = { 0x0065, 0x030C, 0x0000 },
95 [0x1c] = { 0x0047, 0x0302, 0x0000 },
96 [0x1d] = { 0x0067, 0x0302, 0x0000 },
97 [0x1e] = { 0x0047, 0x0306, 0x0000 },
98 [0x1f] = { 0x0067, 0x0306, 0x0000 },
99 [0x20] = { 0x0047, 0x0307, 0x0000 },
100 [0x21] = { 0x0067, 0x0307, 0x0000 },
101 [0x22] = { 0x0047, 0x0327, 0x0000 },
102 [0x23] = { 0x0067, 0x0327, 0x0000 },
103 [0x24] = { 0x0048, 0x0302, 0x0000 },
104 [0x25] = { 0x0068, 0x0302, 0x0000 },
105 [0x28] = { 0x0049, 0x0303, 0x0000 },
106 [0x29] = { 0x0069, 0x0303, 0x0000 },
107 [0x2a] = { 0x0049, 0x0304, 0x0000 },
108 [0x2b] = { 0x0069, 0x0304, 0x0000 },
109 [0x2c] = { 0x0049, 0x0306, 0x0000 },
110 [0x2d] = { 0x0069, 0x0306, 0x0000 },
111 [0x2e] = { 0x0049, 0x0328, 0x0000 },
112 [0x2f] = { 0x0069, 0x0328, 0x0000 },
113 [0x30] = { 0x0049, 0x0307, 0x0000 },
114 [0x34] = { 0x004A, 0x0302, 0x0000 },
115 [0x35] = { 0x006A, 0x0302, 0x0000 },
116 [0x36] = { 0x004B, 0x0327, 0x0000 },
117 [0x37] = { 0x006B, 0x0327, 0x0000 },
118 [0x39] = { 0x004C, 0x0301, 0x0000 },
119 [0x3a] = { 0x006C, 0x0301, 0x0000 },
120 [0x3b] = { 0x004C, 0x0327, 0x0000 },
121 [0x3c] = { 0x006C, 0x0327, 0x0000 },
122 [0x3d] = { 0x004C, 0x030C, 0x0000 },
123 [0x3e] = { 0x006C, 0x030C, 0x0000 },
124 [0x43] = { 0x004E, 0x0301, 0x0000 },
125 [0x44] = { 0x006E, 0x0301, 0x0000 },
126 [0x45] = { 0x004E, 0x0327, 0x0000 },
127 [0x46] = { 0x006E, 0x0327, 0x0000 },
128 [0x47] = { 0x004E, 0x030C, 0x0000 },
129 [0x48] = { 0x006E, 0x030C, 0x0000 },
130 [0x4c] = { 0x004F, 0x0304, 0x0000 },
131 [0x4d] = { 0x006F, 0x0304, 0x0000 },
132 [0x4e] = { 0x004F, 0x0306, 0x0000 },
133 [0x4f] = { 0x006F, 0x0306, 0x0000 },
134 [0x50] = { 0x004F, 0x030B, 0x0000 },
135 [0x51] = { 0x006F, 0x030B, 0x0000 },
136 [0x54] = { 0x0052, 0x0301, 0x0000 },
137 [0x55] = { 0x0072, 0x0301, 0x0000 },
138 [0x56] = { 0x0052, 0x0327, 0x0000 },
139 [0x57] = { 0x0072, 0x0327, 0x0000 },
140 [0x58] = { 0x0052, 0x030C, 0x0000 },
141 [0x59] = { 0x0072, 0x030C, 0x0000 },
142 [0x5a] = { 0x0053, 0x0301, 0x0000 },
143 [0x5b] = { 0x0073, 0x0301, 0x0000 },
144 [0x5c] = { 0x0053, 0x0302, 0x0000 },
145 [0x5d] = { 0x0073, 0x0302, 0x0000 },
146 [0x5e] = { 0x0053, 0x0327, 0x0000 },
147 [0x5f] = { 0x0073, 0x0327, 0x0000 },
148 [0x60] = { 0x0053, 0x030C, 0x0000 },
149 [0x61] = { 0x0073, 0x030C, 0x0000 },
150 [0x62] = { 0x0054, 0x0327, 0x0000 },
151 [0x63] = { 0x0074, 0x0327, 0x0000 },
152 [0x64] = { 0x0054, 0x030C, 0x0000 },
153 [0x65] = { 0x0074, 0x030C, 0x0000 },
154 [0x68] = { 0x0055, 0x0303, 0x0000 },
155 [0x69] = { 0x0075, 0x0303, 0x0000 },
156 [0x6a] = { 0x0055, 0x0304, 0x0000 },
157 [0x6b] = { 0x0075, 0x0304, 0x0000 },
158 [0x6c] = { 0x0055, 0x0306, 0x0000 },
159 [0x6d] = { 0x0075, 0x0306, 0x0000 },
160 [0x6e] = { 0x0055, 0x030A, 0x0000 },
161 [0x6f] = { 0x0075, 0x030A, 0x0000 },
162 [0x70] = { 0x0055, 0x030B, 0x0000 },
163 [0x71] = { 0x0075, 0x030B, 0x0000 },
164 [0x72] = { 0x0055, 0x0328, 0x0000 },
165 [0x73] = { 0x0075, 0x0328, 0x0000 },
166 [0x74] = { 0x0057, 0x0302, 0x0000 },
167 [0x75] = { 0x0077, 0x0302, 0x0000 },
168 [0x76] = { 0x0059, 0x0302, 0x0000 },
169 [0x77] = { 0x0079, 0x0302, 0x0000 },
170 [0x78] = { 0x0059, 0x0308, 0x0000 },
171 [0x79] = { 0x005A, 0x0301, 0x0000 },
172 [0x7a] = { 0x007A, 0x0301, 0x0000 },
173 [0x7b] = { 0x005A, 0x0307, 0x0000 },
174 [0x7c] = { 0x007A, 0x0307, 0x0000 },
175 [0x7d] = { 0x005A, 0x030C, 0x0000 },
176 [0x7e] = { 0x007A, 0x030C, 0x0000 },
177 [0xa0] = { 0x004F, 0x031B, 0x0000 },
178 [0xa1] = { 0x006F, 0x031B, 0x0000 },
179 [0xaf] = { 0x0055, 0x031B, 0x0000 },
180 [0xb0] = { 0x0075, 0x031B, 0x0000 },
181 [0xcd] = { 0x0041, 0x030C, 0x0000 },
182 [0xce] = { 0x0061, 0x030C, 0x0000 },
183 [0xcf] = { 0x0049, 0x030C, 0x0000 },
184 [0xd0] = { 0x0069, 0x030C, 0x0000 },
185 [0xd1] = { 0x004F, 0x030C, 0x0000 },
186 [0xd2] = { 0x006F, 0x030C, 0x0000 },
187 [0xd3] = { 0x0055, 0x030C, 0x0000 },
188 [0xd4] = { 0x0075, 0x030C, 0x0000 },
189 [0xd5] = { 0x0055, 0x0308, 0x0304, 0x0000 },
190 [0xd6] = { 0x0075, 0x0308, 0x0304, 0x0000 },
191 [0xd7] = { 0x0055, 0x0308, 0x0301, 0x0000 },
192 [0xd8] = { 0x0075, 0x0308, 0x0301, 0x0000 },
193 [0xd9] = { 0x0055, 0x0308, 0x030C, 0x0000 },
194 [0xda] = { 0x0075, 0x0308, 0x030C, 0x0000 },
195 [0xdb] = { 0x0055, 0x0308, 0x0300, 0x0000 },
196 [0xdc] = { 0x0075, 0x0308, 0x0300, 0x0000 },
197 [0xde] = { 0x0041, 0x0308, 0x0304, 0x0000 },
198 [0xdf] = { 0x0061, 0x0308, 0x0304, 0x0000 },
199 [0xe0] = { 0x0041, 0x0307, 0x0304, 0x0000 },
200 [0xe1] = { 0x0061, 0x0307, 0x0304, 0x0000 },
201 [0xe2] = { 0x00C6, 0x0304, 0x0000 },
202 [0xe3] = { 0x00E6, 0x0304, 0x0000 },
203 [0xe6] = { 0x0047, 0x030C, 0x0000 },
204 [0xe7] = { 0x0067, 0x030C, 0x0000 },
205 [0xe8] = { 0x004B, 0x030C, 0x0000 },
206 [0xe9] = { 0x006B, 0x030C, 0x0000 },
207 [0xea] = { 0x004F, 0x0328, 0x0000 },
208 [0xeb] = { 0x006F, 0x0328, 0x0000 },
209 [0xec] = { 0x004F, 0x0328, 0x0304, 0x0000 },
210 [0xed] = { 0x006F, 0x0328, 0x0304, 0x0000 },
211 [0xee] = { 0x01B7, 0x030C, 0x0000 },
212 [0xef] = { 0x0292, 0x030C, 0x0000 },
213 [0xf0] = { 0x006A, 0x030C, 0x0000 },
214 [0xf4] = { 0x0047, 0x0301, 0x0000 },
215 [0xf5] = { 0x0067, 0x0301, 0x0000 },
216 [0xfa] = { 0x0041, 0x030A, 0x0301, 0x0000 },
217 [0xfb] = { 0x0061, 0x030A, 0x0301, 0x0000 },
218 [0xfc] = { 0x00C6, 0x0301, 0x0000 },
219 [0xfd] = { 0x00E6, 0x0301, 0x0000 },
220 [0xfe] = { 0x00D8, 0x0301, 0x0000 },
221 [0xff] = { 0x00F8, 0x0301, 0x0000 },
222 };
223
224 static uint16_t page02[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
225 [0x00] = { 0x0041, 0x030F, 0x0000 },
226 [0x01] = { 0x0061, 0x030F, 0x0000 },
227 [0x02] = { 0x0041, 0x0311, 0x0000 },
228 [0x03] = { 0x0061, 0x0311, 0x0000 },
229 [0x04] = { 0x0045, 0x030F, 0x0000 },
230 [0x05] = { 0x0065, 0x030F, 0x0000 },
231 [0x06] = { 0x0045, 0x0311, 0x0000 },
232 [0x07] = { 0x0065, 0x0311, 0x0000 },
233 [0x08] = { 0x0049, 0x030F, 0x0000 },
234 [0x09] = { 0x0069, 0x030F, 0x0000 },
235 [0x0a] = { 0x0049, 0x0311, 0x0000 },
236 [0x0b] = { 0x0069, 0x0311, 0x0000 },
237 [0x0c] = { 0x004F, 0x030F, 0x0000 },
238 [0x0d] = { 0x006F, 0x030F, 0x0000 },
239 [0x0e] = { 0x004F, 0x0311, 0x0000 },
240 [0x0f] = { 0x006F, 0x0311, 0x0000 },
241 [0x10] = { 0x0052, 0x030F, 0x0000 },
242 [0x11] = { 0x0072, 0x030F, 0x0000 },
243 [0x12] = { 0x0052, 0x0311, 0x0000 },
244 [0x13] = { 0x0072, 0x0311, 0x0000 },
245 [0x14] = { 0x0055, 0x030F, 0x0000 },
246 [0x15] = { 0x0075, 0x030F, 0x0000 },
247 [0x16] = { 0x0055, 0x0311, 0x0000 },
248 [0x17] = { 0x0075, 0x0311, 0x0000 },
249 };
250
251 static uint16_t page03[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
252 [0x10] = { 0x0306, 0x0307, 0x0000 },
253 [0x40] = { 0x0300, 0x0000 },
254 [0x41] = { 0x0301, 0x0000 },
255 [0x43] = { 0x0313, 0x0000 },
256 [0x44] = { 0x0308, 0x030D, 0x0000 },
257 [0x74] = { 0x02B9, 0x0000 },
258 [0x7e] = { 0x003B, 0x0000 },
259 [0x85] = { 0x00A8, 0x030D, 0x0000 },
260 [0x86] = { 0x0391, 0x030D, 0x0000 },
261 [0x87] = { 0x00B7, 0x0000 },
262 [0x88] = { 0x0395, 0x030D, 0x0000 },
263 [0x89] = { 0x0397, 0x030D, 0x0000 },
264 [0x8a] = { 0x0399, 0x030D, 0x0000 },
265 [0x8c] = { 0x039F, 0x030D, 0x0000 },
266 [0x8e] = { 0x03A5, 0x030D, 0x0000 },
267 [0x8f] = { 0x03A9, 0x030D, 0x0000 },
268 [0x90] = { 0x03B9, 0x0308, 0x030D, 0x0000 },
269 [0xaa] = { 0x0399, 0x0308, 0x0000 },
270 [0xab] = { 0x03A5, 0x0308, 0x0000 },
271 [0xac] = { 0x03B1, 0x030D, 0x0000 },
272 [0xad] = { 0x03B5, 0x030D, 0x0000 },
273 [0xae] = { 0x03B7, 0x030D, 0x0000 },
274 [0xaf] = { 0x03B9, 0x030D, 0x0000 },
275 [0xb0] = { 0x03C5, 0x0308, 0x030D, 0x0000 },
276 [0xca] = { 0x03B9, 0x0308, 0x0000 },
277 [0xcb] = { 0x03C5, 0x0308, 0x0000 },
278 [0xcc] = { 0x03BF, 0x030D, 0x0000 },
279 [0xcd] = { 0x03C5, 0x030D, 0x0000 },
280 [0xce] = { 0x03C9, 0x030D, 0x0000 },
281 [0xd3] = { 0x03D2, 0x030D, 0x0000 },
282 [0xd4] = { 0x03D2, 0x0308, 0x0000 },
283 };
284
285 static uint16_t page04[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
286 [0x01] = { 0x0415, 0x0308, 0x0000 },
287 [0x03] = { 0x0413, 0x0301, 0x0000 },
288 [0x07] = { 0x0406, 0x0308, 0x0000 },
289 [0x0c] = { 0x041A, 0x0301, 0x0000 },
290 [0x0e] = { 0x0423, 0x0306, 0x0000 },
291 [0x19] = { 0x0418, 0x0306, 0x0000 },
292 [0x39] = { 0x0438, 0x0306, 0x0000 },
293 [0x51] = { 0x0435, 0x0308, 0x0000 },
294 [0x53] = { 0x0433, 0x0301, 0x0000 },
295 [0x57] = { 0x0456, 0x0308, 0x0000 },
296 [0x5c] = { 0x043A, 0x0301, 0x0000 },
297 [0x5e] = { 0x0443, 0x0306, 0x0000 },
298 [0x76] = { 0x0474, 0x030F, 0x0000 },
299 [0x77] = { 0x0475, 0x030F, 0x0000 },
300 [0xc1] = { 0x0416, 0x0306, 0x0000 },
301 [0xc2] = { 0x0436, 0x0306, 0x0000 },
302 [0xd0] = { 0x0410, 0x0306, 0x0000 },
303 [0xd1] = { 0x0430, 0x0306, 0x0000 },
304 [0xd2] = { 0x0410, 0x0308, 0x0000 },
305 [0xd3] = { 0x0430, 0x0308, 0x0000 },
306 [0xd4] = { 0x00C6, 0x0000 },
307 [0xd5] = { 0x00E6, 0x0000 },
308 [0xd6] = { 0x0415, 0x0306, 0x0000 },
309 [0xd7] = { 0x0435, 0x0306, 0x0000 },
310 [0xd8] = { 0x018F, 0x0000 },
311 [0xd9] = { 0x0259, 0x0000 },
312 [0xda] = { 0x018F, 0x0308, 0x0000 },
313 [0xdb] = { 0x0259, 0x0308, 0x0000 },
314 [0xdc] = { 0x0416, 0x0308, 0x0000 },
315 [0xdd] = { 0x0436, 0x0308, 0x0000 },
316 [0xde] = { 0x0417, 0x0308, 0x0000 },
317 [0xdf] = { 0x0437, 0x0308, 0x0000 },
318 [0xe0] = { 0x01B7, 0x0000 },
319 [0xe1] = { 0x0292, 0x0000 },
320 [0xe2] = { 0x0418, 0x0304, 0x0000 },
321 [0xe3] = { 0x0438, 0x0304, 0x0000 },
322 [0xe4] = { 0x0418, 0x0308, 0x0000 },
323 [0xe5] = { 0x0438, 0x0308, 0x0000 },
324 [0xe6] = { 0x041E, 0x0308, 0x0000 },
325 [0xe7] = { 0x043E, 0x0308, 0x0000 },
326 [0xe8] = { 0x019F, 0x0000 },
327 [0xe9] = { 0x0275, 0x0000 },
328 [0xea] = { 0x019F, 0x0308, 0x0000 },
329 [0xeb] = { 0x0275, 0x0308, 0x0000 },
330 [0xee] = { 0x0423, 0x0304, 0x0000 },
331 [0xef] = { 0x0443, 0x0304, 0x0000 },
332 [0xf0] = { 0x0423, 0x0308, 0x0000 },
333 [0xf1] = { 0x0443, 0x0308, 0x0000 },
334 [0xf2] = { 0x0423, 0x030B, 0x0000 },
335 [0xf3] = { 0x0443, 0x030B, 0x0000 },
336 [0xf4] = { 0x0427, 0x0308, 0x0000 },
337 [0xf5] = { 0x0447, 0x0308, 0x0000 },
338 [0xf8] = { 0x042B, 0x0308, 0x0000 },
339 [0xf9] = { 0x044B, 0x0308, 0x0000 },
340 };
341
342 static uint16_t page09[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
343 [0x29] = { 0x0928, 0x093C, 0x0000 },
344 [0x31] = { 0x0930, 0x093C, 0x0000 },
345 [0x34] = { 0x0933, 0x093C, 0x0000 },
346 [0x58] = { 0x0915, 0x093C, 0x0000 },
347 [0x59] = { 0x0916, 0x093C, 0x0000 },
348 [0x5a] = { 0x0917, 0x093C, 0x0000 },
349 [0x5b] = { 0x091C, 0x093C, 0x0000 },
350 [0x5c] = { 0x0921, 0x093C, 0x0000 },
351 [0x5d] = { 0x0922, 0x093C, 0x0000 },
352 [0x5e] = { 0x092B, 0x093C, 0x0000 },
353 [0x5f] = { 0x092F, 0x093C, 0x0000 },
354 [0xb0] = { 0x09AC, 0x09BC, 0x0000 },
355 [0xcb] = { 0x09C7, 0x09BE, 0x0000 },
356 [0xcc] = { 0x09C7, 0x09D7, 0x0000 },
357 [0xdc] = { 0x09A1, 0x09BC, 0x0000 },
358 [0xdd] = { 0x09A2, 0x09BC, 0x0000 },
359 [0xdf] = { 0x09AF, 0x09BC, 0x0000 },
360 };
361
362 static uint16_t page0a[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
363 [0x59] = { 0x0A16, 0x0A3C, 0x0000 },
364 [0x5a] = { 0x0A17, 0x0A3C, 0x0000 },
365 [0x5b] = { 0x0A1C, 0x0A3C, 0x0000 },
366 [0x5c] = { 0x0A21, 0x0A3C, 0x0000 },
367 [0x5e] = { 0x0A2B, 0x0A3C, 0x0000 },
368 };
369
370 static uint16_t page0b[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
371 [0x48] = { 0x0B47, 0x0B56, 0x0000 },
372 [0x4b] = { 0x0B47, 0x0B3E, 0x0000 },
373 [0x4c] = { 0x0B47, 0x0B57, 0x0000 },
374 [0x5c] = { 0x0B21, 0x0B3C, 0x0000 },
375 [0x5d] = { 0x0B22, 0x0B3C, 0x0000 },
376 [0x5f] = { 0x0B2F, 0x0B3C, 0x0000 },
377 [0x94] = { 0x0B92, 0x0BD7, 0x0000 },
378 [0xca] = { 0x0BC6, 0x0BBE, 0x0000 },
379 [0xcb] = { 0x0BC7, 0x0BBE, 0x0000 },
380 [0xcc] = { 0x0BC6, 0x0BD7, 0x0000 },
381 };
382
383 static uint16_t page0c[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
384 [0x48] = { 0x0C46, 0x0C56, 0x0000 },
385 [0xc0] = { 0x0CBF, 0x0CD5, 0x0000 },
386 [0xc7] = { 0x0CC6, 0x0CD5, 0x0000 },
387 [0xc8] = { 0x0CC6, 0x0CD6, 0x0000 },
388 [0xca] = { 0x0CC6, 0x0CC2, 0x0000 },
389 [0xcb] = { 0x0CC6, 0x0CC2, 0x0CD5, 0x0000 },
390 };
391
392 static uint16_t page0d[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
393 [0x4a] = { 0x0D46, 0x0D3E, 0x0000 },
394 [0x4b] = { 0x0D47, 0x0D3E, 0x0000 },
395 [0x4c] = { 0x0D46, 0x0D57, 0x0000 },
396 };
397
398 static uint16_t page0e[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
399 [0x33] = { 0x0E4D, 0x0E32, 0x0000 },
400 [0xb3] = { 0x0ECD, 0x0EB2, 0x0000 },
401 };
402
403 static uint16_t page0f[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
404 [0x43] = { 0x0F42, 0x0FB7, 0x0000 },
405 [0x4d] = { 0x0F4C, 0x0FB7, 0x0000 },
406 [0x52] = { 0x0F51, 0x0FB7, 0x0000 },
407 [0x57] = { 0x0F56, 0x0FB7, 0x0000 },
408 [0x5c] = { 0x0F5B, 0x0FB7, 0x0000 },
409 [0x69] = { 0x0F40, 0x0FB5, 0x0000 },
410 [0x73] = { 0x0F72, 0x0F71, 0x0000 },
411 [0x75] = { 0x0F74, 0x0F71, 0x0000 },
412 [0x76] = { 0x0FB2, 0x0F80, 0x0000 },
413 [0x77] = { 0x0FB2, 0x0F80, 0x0F71, 0x0000 },
414 [0x78] = { 0x0FB3, 0x0F80, 0x0000 },
415 [0x79] = { 0x0FB3, 0x0F80, 0x0F71, 0x0000 },
416 [0x81] = { 0x0F80, 0x0F71, 0x0000 },
417 [0x93] = { 0x0F92, 0x0FB7, 0x0000 },
418 [0x9d] = { 0x0F9C, 0x0FB7, 0x0000 },
419 [0xa2] = { 0x0FA1, 0x0FB7, 0x0000 },
420 [0xa7] = { 0x0FA6, 0x0FB7, 0x0000 },
421 [0xac] = { 0x0FAB, 0x0FB7, 0x0000 },
422 [0xb9] = { 0x0F90, 0x0FB5, 0x0000 },
423 };
424
425 static uint16_t page1e[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
426 [0x00] = { 0x0041, 0x0325, 0x0000 },
427 [0x01] = { 0x0061, 0x0325, 0x0000 },
428 [0x02] = { 0x0042, 0x0307, 0x0000 },
429 [0x03] = { 0x0062, 0x0307, 0x0000 },
430 [0x04] = { 0x0042, 0x0323, 0x0000 },
431 [0x05] = { 0x0062, 0x0323, 0x0000 },
432 [0x06] = { 0x0042, 0x0331, 0x0000 },
433 [0x07] = { 0x0062, 0x0331, 0x0000 },
434 [0x08] = { 0x0043, 0x0327, 0x0301, 0x0000 },
435 [0x09] = { 0x0063, 0x0327, 0x0301, 0x0000 },
436 [0x0a] = { 0x0044, 0x0307, 0x0000 },
437 [0x0b] = { 0x0064, 0x0307, 0x0000 },
438 [0x0c] = { 0x0044, 0x0323, 0x0000 },
439 [0x0d] = { 0x0064, 0x0323, 0x0000 },
440 [0x0e] = { 0x0044, 0x0331, 0x0000 },
441 [0x0f] = { 0x0064, 0x0331, 0x0000 },
442 [0x10] = { 0x0044, 0x0327, 0x0000 },
443 [0x11] = { 0x0064, 0x0327, 0x0000 },
444 [0x12] = { 0x0044, 0x032D, 0x0000 },
445 [0x13] = { 0x0064, 0x032D, 0x0000 },
446 [0x14] = { 0x0045, 0x0304, 0x0300, 0x0000 },
447 [0x15] = { 0x0065, 0x0304, 0x0300, 0x0000 },
448 [0x16] = { 0x0045, 0x0304, 0x0301, 0x0000 },
449 [0x17] = { 0x0065, 0x0304, 0x0301, 0x0000 },
450 [0x18] = { 0x0045, 0x032D, 0x0000 },
451 [0x19] = { 0x0065, 0x032D, 0x0000 },
452 [0x1a] = { 0x0045, 0x0330, 0x0000 },
453 [0x1b] = { 0x0065, 0x0330, 0x0000 },
454 [0x1c] = { 0x0045, 0x0327, 0x0306, 0x0000 },
455 [0x1d] = { 0x0065, 0x0327, 0x0306, 0x0000 },
456 [0x1e] = { 0x0046, 0x0307, 0x0000 },
457 [0x1f] = { 0x0066, 0x0307, 0x0000 },
458 [0x20] = { 0x0047, 0x0304, 0x0000 },
459 [0x21] = { 0x0067, 0x0304, 0x0000 },
460 [0x22] = { 0x0048, 0x0307, 0x0000 },
461 [0x23] = { 0x0068, 0x0307, 0x0000 },
462 [0x24] = { 0x0048, 0x0323, 0x0000 },
463 [0x25] = { 0x0068, 0x0323, 0x0000 },
464 [0x26] = { 0x0048, 0x0308, 0x0000 },
465 [0x27] = { 0x0068, 0x0308, 0x0000 },
466 [0x28] = { 0x0048, 0x0327, 0x0000 },
467 [0x29] = { 0x0068, 0x0327, 0x0000 },
468 [0x2a] = { 0x0048, 0x032E, 0x0000 },
469 [0x2b] = { 0x0068, 0x032E, 0x0000 },
470 [0x2c] = { 0x0049, 0x0330, 0x0000 },
471 [0x2d] = { 0x0069, 0x0330, 0x0000 },
472 [0x2e] = { 0x0049, 0x0308, 0x0301, 0x0000 },
473 [0x2f] = { 0x0069, 0x0308, 0x0301, 0x0000 },
474 [0x30] = { 0x004B, 0x0301, 0x0000 },
475 [0x31] = { 0x006B, 0x0301, 0x0000 },
476 [0x32] = { 0x004B, 0x0323, 0x0000 },
477 [0x33] = { 0x006B, 0x0323, 0x0000 },
478 [0x34] = { 0x004B, 0x0331, 0x0000 },
479 [0x35] = { 0x006B, 0x0331, 0x0000 },
480 [0x36] = { 0x004C, 0x0323, 0x0000 },
481 [0x37] = { 0x006C, 0x0323, 0x0000 },
482 [0x38] = { 0x004C, 0x0323, 0x0304, 0x0000 },
483 [0x39] = { 0x006C, 0x0323, 0x0304, 0x0000 },
484 [0x3a] = { 0x004C, 0x0331, 0x0000 },
485 [0x3b] = { 0x006C, 0x0331, 0x0000 },
486 [0x3c] = { 0x004C, 0x032D, 0x0000 },
487 [0x3d] = { 0x006C, 0x032D, 0x0000 },
488 [0x3e] = { 0x004D, 0x0301, 0x0000 },
489 [0x3f] = { 0x006D, 0x0301, 0x0000 },
490 [0x40] = { 0x004D, 0x0307, 0x0000 },
491 [0x41] = { 0x006D, 0x0307, 0x0000 },
492 [0x42] = { 0x004D, 0x0323, 0x0000 },
493 [0x43] = { 0x006D, 0x0323, 0x0000 },
494 [0x44] = { 0x004E, 0x0307, 0x0000 },
495 [0x45] = { 0x006E, 0x0307, 0x0000 },
496 [0x46] = { 0x004E, 0x0323, 0x0000 },
497 [0x47] = { 0x006E, 0x0323, 0x0000 },
498 [0x48] = { 0x004E, 0x0331, 0x0000 },
499 [0x49] = { 0x006E, 0x0331, 0x0000 },
500 [0x4a] = { 0x004E, 0x032D, 0x0000 },
501 [0x4b] = { 0x006E, 0x032D, 0x0000 },
502 [0x4c] = { 0x004F, 0x0303, 0x0301, 0x0000 },
503 [0x4d] = { 0x006F, 0x0303, 0x0301, 0x0000 },
504 [0x4e] = { 0x004F, 0x0303, 0x0308, 0x0000 },
505 [0x4f] = { 0x006F, 0x0303, 0x0308, 0x0000 },
506 [0x50] = { 0x004F, 0x0304, 0x0300, 0x0000 },
507 [0x51] = { 0x006F, 0x0304, 0x0300, 0x0000 },
508 [0x52] = { 0x004F, 0x0304, 0x0301, 0x0000 },
509 [0x53] = { 0x006F, 0x0304, 0x0301, 0x0000 },
510 [0x54] = { 0x0050, 0x0301, 0x0000 },
511 [0x55] = { 0x0070, 0x0301, 0x0000 },
512 [0x56] = { 0x0050, 0x0307, 0x0000 },
513 [0x57] = { 0x0070, 0x0307, 0x0000 },
514 [0x58] = { 0x0052, 0x0307, 0x0000 },
515 [0x59] = { 0x0072, 0x0307, 0x0000 },
516 [0x5a] = { 0x0052, 0x0323, 0x0000 },
517 [0x5b] = { 0x0072, 0x0323, 0x0000 },
518 [0x5c] = { 0x0052, 0x0323, 0x0304, 0x0000 },
519 [0x5d] = { 0x0072, 0x0323, 0x0304, 0x0000 },
520 [0x5e] = { 0x0052, 0x0331, 0x0000 },
521 [0x5f] = { 0x0072, 0x0331, 0x0000 },
522 [0x60] = { 0x0053, 0x0307, 0x0000 },
523 [0x61] = { 0x0073, 0x0307, 0x0000 },
524 [0x62] = { 0x0053, 0x0323, 0x0000 },
525 [0x63] = { 0x0073, 0x0323, 0x0000 },
526 [0x64] = { 0x0053, 0x0301, 0x0307, 0x0000 },
527 [0x65] = { 0x0073, 0x0301, 0x0307, 0x0000 },
528 [0x66] = { 0x0053, 0x030C, 0x0307, 0x0000 },
529 [0x67] = { 0x0073, 0x030C, 0x0307, 0x0000 },
530 [0x68] = { 0x0053, 0x0323, 0x0307, 0x0000 },
531 [0x69] = { 0x0073, 0x0323, 0x0307, 0x0000 },
532 [0x6a] = { 0x0054, 0x0307, 0x0000 },
533 [0x6b] = { 0x0074, 0x0307, 0x0000 },
534 [0x6c] = { 0x0054, 0x0323, 0x0000 },
535 [0x6d] = { 0x0074, 0x0323, 0x0000 },
536 [0x6e] = { 0x0054, 0x0331, 0x0000 },
537 [0x6f] = { 0x0074, 0x0331, 0x0000 },
538 [0x70] = { 0x0054, 0x032D, 0x0000 },
539 [0x71] = { 0x0074, 0x032D, 0x0000 },
540 [0x72] = { 0x0055, 0x0324, 0x0000 },
541 [0x73] = { 0x0075, 0x0324, 0x0000 },
542 [0x74] = { 0x0055, 0x0330, 0x0000 },
543 [0x75] = { 0x0075, 0x0330, 0x0000 },
544 [0x76] = { 0x0055, 0x032D, 0x0000 },
545 [0x77] = { 0x0075, 0x032D, 0x0000 },
546 [0x78] = { 0x0055, 0x0303, 0x0301, 0x0000 },
547 [0x79] = { 0x0075, 0x0303, 0x0301, 0x0000 },
548 [0x7a] = { 0x0055, 0x0304, 0x0308, 0x0000 },
549 [0x7b] = { 0x0075, 0x0304, 0x0308, 0x0000 },
550 [0x7c] = { 0x0056, 0x0303, 0x0000 },
551 [0x7d] = { 0x0076, 0x0303, 0x0000 },
552 [0x7e] = { 0x0056, 0x0323, 0x0000 },
553 [0x7f] = { 0x0076, 0x0323, 0x0000 },
554 [0x80] = { 0x0057, 0x0300, 0x0000 },
555 [0x81] = { 0x0077, 0x0300, 0x0000 },
556 [0x82] = { 0x0057, 0x0301, 0x0000 },
557 [0x83] = { 0x0077, 0x0301, 0x0000 },
558 [0x84] = { 0x0057, 0x0308, 0x0000 },
559 [0x85] = { 0x0077, 0x0308, 0x0000 },
560 [0x86] = { 0x0057, 0x0307, 0x0000 },
561 [0x87] = { 0x0077, 0x0307, 0x0000 },
562 [0x88] = { 0x0057, 0x0323, 0x0000 },
563 [0x89] = { 0x0077, 0x0323, 0x0000 },
564 [0x8a] = { 0x0058, 0x0307, 0x0000 },
565 [0x8b] = { 0x0078, 0x0307, 0x0000 },
566 [0x8c] = { 0x0058, 0x0308, 0x0000 },
567 [0x8d] = { 0x0078, 0x0308, 0x0000 },
568 [0x8e] = { 0x0059, 0x0307, 0x0000 },
569 [0x8f] = { 0x0079, 0x0307, 0x0000 },
570 [0x90] = { 0x005A, 0x0302, 0x0000 },
571 [0x91] = { 0x007A, 0x0302, 0x0000 },
572 [0x92] = { 0x005A, 0x0323, 0x0000 },
573 [0x93] = { 0x007A, 0x0323, 0x0000 },
574 [0x94] = { 0x005A, 0x0331, 0x0000 },
575 [0x95] = { 0x007A, 0x0331, 0x0000 },
576 [0x96] = { 0x0068, 0x0331, 0x0000 },
577 [0x97] = { 0x0074, 0x0308, 0x0000 },
578 [0x98] = { 0x0077, 0x030A, 0x0000 },
579 [0x99] = { 0x0079, 0x030A, 0x0000 },
580 [0x9b] = { 0x017F, 0x0307, 0x0000 },
581 [0xa0] = { 0x0041, 0x0323, 0x0000 },
582 [0xa1] = { 0x0061, 0x0323, 0x0000 },
583 [0xa2] = { 0x0041, 0x0309, 0x0000 },
584 [0xa3] = { 0x0061, 0x0309, 0x0000 },
585 [0xa4] = { 0x0041, 0x0302, 0x0301, 0x0000 },
586 [0xa5] = { 0x0061, 0x0302, 0x0301, 0x0000 },
587 [0xa6] = { 0x0041, 0x0302, 0x0300, 0x0000 },
588 [0xa7] = { 0x0061, 0x0302, 0x0300, 0x0000 },
589 [0xa8] = { 0x0041, 0x0302, 0x0309, 0x0000 },
590 [0xa9] = { 0x0061, 0x0302, 0x0309, 0x0000 },
591 [0xaa] = { 0x0041, 0x0302, 0x0303, 0x0000 },
592 [0xab] = { 0x0061, 0x0302, 0x0303, 0x0000 },
593 [0xac] = { 0x0041, 0x0323, 0x0302, 0x0000 },
594 [0xad] = { 0x0061, 0x0323, 0x0302, 0x0000 },
595 [0xae] = { 0x0041, 0x0306, 0x0301, 0x0000 },
596 [0xaf] = { 0x0061, 0x0306, 0x0301, 0x0000 },
597 [0xb0] = { 0x0041, 0x0306, 0x0300, 0x0000 },
598 [0xb1] = { 0x0061, 0x0306, 0x0300, 0x0000 },
599 [0xb2] = { 0x0041, 0x0306, 0x0309, 0x0000 },
600 [0xb3] = { 0x0061, 0x0306, 0x0309, 0x0000 },
601 [0xb4] = { 0x0041, 0x0306, 0x0303, 0x0000 },
602 [0xb5] = { 0x0061, 0x0306, 0x0303, 0x0000 },
603 [0xb6] = { 0x0041, 0x0323, 0x0306, 0x0000 },
604 [0xb7] = { 0x0061, 0x0323, 0x0306, 0x0000 },
605 [0xb8] = { 0x0045, 0x0323, 0x0000 },
606 [0xb9] = { 0x0065, 0x0323, 0x0000 },
607 [0xba] = { 0x0045, 0x0309, 0x0000 },
608 [0xbb] = { 0x0065, 0x0309, 0x0000 },
609 [0xbc] = { 0x0045, 0x0303, 0x0000 },
610 [0xbd] = { 0x0065, 0x0303, 0x0000 },
611 [0xbe] = { 0x0045, 0x0302, 0x0301, 0x0000 },
612 [0xbf] = { 0x0065, 0x0302, 0x0301, 0x0000 },
613 [0xc0] = { 0x0045, 0x0302, 0x0300, 0x0000 },
614 [0xc1] = { 0x0065, 0x0302, 0x0300, 0x0000 },
615 [0xc2] = { 0x0045, 0x0302, 0x0309, 0x0000 },
616 [0xc3] = { 0x0065, 0x0302, 0x0309, 0x0000 },
617 [0xc4] = { 0x0045, 0x0302, 0x0303, 0x0000 },
618 [0xc5] = { 0x0065, 0x0302, 0x0303, 0x0000 },
619 [0xc6] = { 0x0045, 0x0323, 0x0302, 0x0000 },
620 [0xc7] = { 0x0065, 0x0323, 0x0302, 0x0000 },
621 [0xc8] = { 0x0049, 0x0309, 0x0000 },
622 [0xc9] = { 0x0069, 0x0309, 0x0000 },
623 [0xca] = { 0x0049, 0x0323, 0x0000 },
624 [0xcb] = { 0x0069, 0x0323, 0x0000 },
625 [0xcc] = { 0x004F, 0x0323, 0x0000 },
626 [0xcd] = { 0x006F, 0x0323, 0x0000 },
627 [0xce] = { 0x004F, 0x0309, 0x0000 },
628 [0xcf] = { 0x006F, 0x0309, 0x0000 },
629 [0xd0] = { 0x004F, 0x0302, 0x0301, 0x0000 },
630 [0xd1] = { 0x006F, 0x0302, 0x0301, 0x0000 },
631 [0xd2] = { 0x004F, 0x0302, 0x0300, 0x0000 },
632 [0xd3] = { 0x006F, 0x0302, 0x0300, 0x0000 },
633 [0xd4] = { 0x004F, 0x0302, 0x0309, 0x0000 },
634 [0xd5] = { 0x006F, 0x0302, 0x0309, 0x0000 },
635 [0xd6] = { 0x004F, 0x0302, 0x0303, 0x0000 },
636 [0xd7] = { 0x006F, 0x0302, 0x0303, 0x0000 },
637 [0xd8] = { 0x004F, 0x0323, 0x0302, 0x0000 },
638 [0xd9] = { 0x006F, 0x0323, 0x0302, 0x0000 },
639 [0xda] = { 0x004F, 0x031B, 0x0301, 0x0000 },
640 [0xdb] = { 0x006F, 0x031B, 0x0301, 0x0000 },
641 [0xdc] = { 0x004F, 0x031B, 0x0300, 0x0000 },
642 [0xdd] = { 0x006F, 0x031B, 0x0300, 0x0000 },
643 [0xde] = { 0x004F, 0x031B, 0x0309, 0x0000 },
644 [0xdf] = { 0x006F, 0x031B, 0x0309, 0x0000 },
645 [0xe0] = { 0x004F, 0x031B, 0x0303, 0x0000 },
646 [0xe1] = { 0x006F, 0x031B, 0x0303, 0x0000 },
647 [0xe2] = { 0x004F, 0x031B, 0x0323, 0x0000 },
648 [0xe3] = { 0x006F, 0x031B, 0x0323, 0x0000 },
649 [0xe4] = { 0x0055, 0x0323, 0x0000 },
650 [0xe5] = { 0x0075, 0x0323, 0x0000 },
651 [0xe6] = { 0x0055, 0x0309, 0x0000 },
652 [0xe7] = { 0x0075, 0x0309, 0x0000 },
653 [0xe8] = { 0x0055, 0x031B, 0x0301, 0x0000 },
654 [0xe9] = { 0x0075, 0x031B, 0x0301, 0x0000 },
655 [0xea] = { 0x0055, 0x031B, 0x0300, 0x0000 },
656 [0xeb] = { 0x0075, 0x031B, 0x0300, 0x0000 },
657 [0xec] = { 0x0055, 0x031B, 0x0309, 0x0000 },
658 [0xed] = { 0x0075, 0x031B, 0x0309, 0x0000 },
659 [0xee] = { 0x0055, 0x031B, 0x0303, 0x0000 },
660 [0xef] = { 0x0075, 0x031B, 0x0303, 0x0000 },
661 [0xf0] = { 0x0055, 0x031B, 0x0323, 0x0000 },
662 [0xf1] = { 0x0075, 0x031B, 0x0323, 0x0000 },
663 [0xf2] = { 0x0059, 0x0300, 0x0000 },
664 [0xf3] = { 0x0079, 0x0300, 0x0000 },
665 [0xf4] = { 0x0059, 0x0323, 0x0000 },
666 [0xf5] = { 0x0079, 0x0323, 0x0000 },
667 [0xf6] = { 0x0059, 0x0309, 0x0000 },
668 [0xf7] = { 0x0079, 0x0309, 0x0000 },
669 [0xf8] = { 0x0059, 0x0303, 0x0000 },
670 [0xf9] = { 0x0079, 0x0303, 0x0000 },
671 };
672
673 static uint16_t page1f[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
674 [0x00] = { 0x03B1, 0x0313, 0x0000 },
675 [0x01] = { 0x03B1, 0x0314, 0x0000 },
676 [0x02] = { 0x03B1, 0x0313, 0x0300, 0x0000 },
677 [0x03] = { 0x03B1, 0x0314, 0x0300, 0x0000 },
678 [0x04] = { 0x03B1, 0x0313, 0x0301, 0x0000 },
679 [0x05] = { 0x03B1, 0x0314, 0x0301, 0x0000 },
680 [0x06] = { 0x03B1, 0x0313, 0x0342, 0x0000 },
681 [0x07] = { 0x03B1, 0x0314, 0x0342, 0x0000 },
682 [0x08] = { 0x0391, 0x0313, 0x0000 },
683 [0x09] = { 0x0391, 0x0314, 0x0000 },
684 [0x0a] = { 0x0391, 0x0313, 0x0300, 0x0000 },
685 [0x0b] = { 0x0391, 0x0314, 0x0300, 0x0000 },
686 [0x0c] = { 0x0391, 0x0313, 0x0301, 0x0000 },
687 [0x0d] = { 0x0391, 0x0314, 0x0301, 0x0000 },
688 [0x0e] = { 0x0391, 0x0313, 0x0342, 0x0000 },
689 [0x0f] = { 0x0391, 0x0314, 0x0342, 0x0000 },
690 [0x10] = { 0x03B5, 0x0313, 0x0000 },
691 [0x11] = { 0x03B5, 0x0314, 0x0000 },
692 [0x12] = { 0x03B5, 0x0313, 0x0300, 0x0000 },
693 [0x13] = { 0x03B5, 0x0314, 0x0300, 0x0000 },
694 [0x14] = { 0x03B5, 0x0313, 0x0301, 0x0000 },
695 [0x15] = { 0x03B5, 0x0314, 0x0301, 0x0000 },
696 [0x18] = { 0x0395, 0x0313, 0x0000 },
697 [0x19] = { 0x0395, 0x0314, 0x0000 },
698 [0x1a] = { 0x0395, 0x0313, 0x0300, 0x0000 },
699 [0x1b] = { 0x0395, 0x0314, 0x0300, 0x0000 },
700 [0x1c] = { 0x0395, 0x0313, 0x0301, 0x0000 },
701 [0x1d] = { 0x0395, 0x0314, 0x0301, 0x0000 },
702 [0x20] = { 0x03B7, 0x0313, 0x0000 },
703 [0x21] = { 0x03B7, 0x0314, 0x0000 },
704 [0x22] = { 0x03B7, 0x0313, 0x0300, 0x0000 },
705 [0x23] = { 0x03B7, 0x0314, 0x0300, 0x0000 },
706 [0x24] = { 0x03B7, 0x0313, 0x0301, 0x0000 },
707 [0x25] = { 0x03B7, 0x0314, 0x0301, 0x0000 },
708 [0x26] = { 0x03B7, 0x0313, 0x0342, 0x0000 },
709 [0x27] = { 0x03B7, 0x0314, 0x0342, 0x0000 },
710 [0x28] = { 0x0397, 0x0313, 0x0000 },
711 [0x29] = { 0x0397, 0x0314, 0x0000 },
712 [0x2a] = { 0x0397, 0x0313, 0x0300, 0x0000 },
713 [0x2b] = { 0x0397, 0x0314, 0x0300, 0x0000 },
714 [0x2c] = { 0x0397, 0x0313, 0x0301, 0x0000 },
715 [0x2d] = { 0x0397, 0x0314, 0x0301, 0x0000 },
716 [0x2e] = { 0x0397, 0x0313, 0x0342, 0x0000 },
717 [0x2f] = { 0x0397, 0x0314, 0x0342, 0x0000 },
718 [0x30] = { 0x03B9, 0x0313, 0x0000 },
719 [0x31] = { 0x03B9, 0x0314, 0x0000 },
720 [0x32] = { 0x03B9, 0x0313, 0x0300, 0x0000 },
721 [0x33] = { 0x03B9, 0x0314, 0x0300, 0x0000 },
722 [0x34] = { 0x03B9, 0x0313, 0x0301, 0x0000 },
723 [0x35] = { 0x03B9, 0x0314, 0x0301, 0x0000 },
724 [0x36] = { 0x03B9, 0x0313, 0x0342, 0x0000 },
725 [0x37] = { 0x03B9, 0x0314, 0x0342, 0x0000 },
726 [0x38] = { 0x0399, 0x0313, 0x0000 },
727 [0x39] = { 0x0399, 0x0314, 0x0000 },
728 [0x3a] = { 0x0399, 0x0313, 0x0300, 0x0000 },
729 [0x3b] = { 0x0399, 0x0314, 0x0300, 0x0000 },
730 [0x3c] = { 0x0399, 0x0313, 0x0301, 0x0000 },
731 [0x3d] = { 0x0399, 0x0314, 0x0301, 0x0000 },
732 [0x3e] = { 0x0399, 0x0313, 0x0342, 0x0000 },
733 [0x3f] = { 0x0399, 0x0314, 0x0342, 0x0000 },
734 [0x40] = { 0x03BF, 0x0313, 0x0000 },
735 [0x41] = { 0x03BF, 0x0314, 0x0000 },
736 [0x42] = { 0x03BF, 0x0313, 0x0300, 0x0000 },
737 [0x43] = { 0x03BF, 0x0314, 0x0300, 0x0000 },
738 [0x44] = { 0x03BF, 0x0313, 0x0301, 0x0000 },
739 [0x45] = { 0x03BF, 0x0314, 0x0301, 0x0000 },
740 [0x48] = { 0x039F, 0x0313, 0x0000 },
741 [0x49] = { 0x039F, 0x0314, 0x0000 },
742 [0x4a] = { 0x039F, 0x0313, 0x0300, 0x0000 },
743 [0x4b] = { 0x039F, 0x0314, 0x0300, 0x0000 },
744 [0x4c] = { 0x039F, 0x0313, 0x0301, 0x0000 },
745 [0x4d] = { 0x039F, 0x0314, 0x0301, 0x0000 },
746 [0x50] = { 0x03C5, 0x0313, 0x0000 },
747 [0x51] = { 0x03C5, 0x0314, 0x0000 },
748 [0x52] = { 0x03C5, 0x0313, 0x0300, 0x0000 },
749 [0x53] = { 0x03C5, 0x0314, 0x0300, 0x0000 },
750 [0x54] = { 0x03C5, 0x0313, 0x0301, 0x0000 },
751 [0x55] = { 0x03C5, 0x0314, 0x0301, 0x0000 },
752 [0x56] = { 0x03C5, 0x0313, 0x0342, 0x0000 },
753 [0x57] = { 0x03C5, 0x0314, 0x0342, 0x0000 },
754 [0x59] = { 0x03A5, 0x0314, 0x0000 },
755 [0x5b] = { 0x03A5, 0x0314, 0x0300, 0x0000 },
756 [0x5d] = { 0x03A5, 0x0314, 0x0301, 0x0000 },
757 [0x5f] = { 0x03A5, 0x0314, 0x0342, 0x0000 },
758 [0x60] = { 0x03C9, 0x0313, 0x0000 },
759 [0x61] = { 0x03C9, 0x0314, 0x0000 },
760 [0x62] = { 0x03C9, 0x0313, 0x0300, 0x0000 },
761 [0x63] = { 0x03C9, 0x0314, 0x0300, 0x0000 },
762 [0x64] = { 0x03C9, 0x0313, 0x0301, 0x0000 },
763 [0x65] = { 0x03C9, 0x0314, 0x0301, 0x0000 },
764 [0x66] = { 0x03C9, 0x0313, 0x0342, 0x0000 },
765 [0x67] = { 0x03C9, 0x0314, 0x0342, 0x0000 },
766 [0x68] = { 0x03A9, 0x0313, 0x0000 },
767 [0x69] = { 0x03A9, 0x0314, 0x0000 },
768 [0x6a] = { 0x03A9, 0x0313, 0x0300, 0x0000 },
769 [0x6b] = { 0x03A9, 0x0314, 0x0300, 0x0000 },
770 [0x6c] = { 0x03A9, 0x0313, 0x0301, 0x0000 },
771 [0x6d] = { 0x03A9, 0x0314, 0x0301, 0x0000 },
772 [0x6e] = { 0x03A9, 0x0313, 0x0342, 0x0000 },
773 [0x6f] = { 0x03A9, 0x0314, 0x0342, 0x0000 },
774 [0x70] = { 0x03B1, 0x0300, 0x0000 },
775 [0x71] = { 0x03B1, 0x0301, 0x0000 },
776 [0x72] = { 0x03B5, 0x0300, 0x0000 },
777 [0x73] = { 0x03B5, 0x0301, 0x0000 },
778 [0x74] = { 0x03B7, 0x0300, 0x0000 },
779 [0x75] = { 0x03B7, 0x0301, 0x0000 },
780 [0x76] = { 0x03B9, 0x0300, 0x0000 },
781 [0x77] = { 0x03B9, 0x0301, 0x0000 },
782 [0x78] = { 0x03BF, 0x0300, 0x0000 },
783 [0x79] = { 0x03BF, 0x0301, 0x0000 },
784 [0x7a] = { 0x03C5, 0x0300, 0x0000 },
785 [0x7b] = { 0x03C5, 0x0301, 0x0000 },
786 [0x7c] = { 0x03C9, 0x0300, 0x0000 },
787 [0x7d] = { 0x03C9, 0x0301, 0x0000 },
788 [0x80] = { 0x03B1, 0x0345, 0x0313, 0x0000 },
789 [0x81] = { 0x03B1, 0x0345, 0x0314, 0x0000 },
790 [0x82] = { 0x03B1, 0x0345, 0x0313, 0x0300, 0x0000 },
791 [0x83] = { 0x03B1, 0x0345, 0x0314, 0x0300, 0x0000 },
792 [0x84] = { 0x03B1, 0x0345, 0x0313, 0x0301, 0x0000 },
793 [0x85] = { 0x03B1, 0x0345, 0x0314, 0x0301, 0x0000 },
794 [0x86] = { 0x03B1, 0x0345, 0x0313, 0x0342, 0x0000 },
795 [0x87] = { 0x03B1, 0x0345, 0x0314, 0x0342, 0x0000 },
796 [0x88] = { 0x0391, 0x0345, 0x0313, 0x0000 },
797 [0x89] = { 0x0391, 0x0345, 0x0314, 0x0000 },
798 [0x8a] = { 0x0391, 0x0345, 0x0313, 0x0300, 0x0000 },
799 [0x8b] = { 0x0391, 0x0345, 0x0314, 0x0300, 0x0000 },
800 [0x8c] = { 0x0391, 0x0345, 0x0313, 0x0301, 0x0000 },
801 [0x8d] = { 0x0391, 0x0345, 0x0314, 0x0301, 0x0000 },
802 [0x8e] = { 0x0391, 0x0345, 0x0313, 0x0342, 0x0000 },
803 [0x8f] = { 0x0391, 0x0345, 0x0314, 0x0342, 0x0000 },
804 [0x90] = { 0x03B7, 0x0345, 0x0313, 0x0000 },
805 [0x91] = { 0x03B7, 0x0345, 0x0314, 0x0000 },
806 [0x92] = { 0x03B7, 0x0345, 0x0313, 0x0300, 0x0000 },
807 [0x93] = { 0x03B7, 0x0345, 0x0314, 0x0300, 0x0000 },
808 [0x94] = { 0x03B7, 0x0345, 0x0313, 0x0301, 0x0000 },
809 [0x95] = { 0x03B7, 0x0345, 0x0314, 0x0301, 0x0000 },
810 [0x96] = { 0x03B7, 0x0345, 0x0313, 0x0342, 0x0000 },
811 [0x97] = { 0x03B7, 0x0345, 0x0314, 0x0342, 0x0000 },
812 [0x98] = { 0x0397, 0x0345, 0x0313, 0x0000 },
813 [0x99] = { 0x0397, 0x0345, 0x0314, 0x0000 },
814 [0x9a] = { 0x0397, 0x0345, 0x0313, 0x0300, 0x0000 },
815 [0x9b] = { 0x0397, 0x0345, 0x0314, 0x0300, 0x0000 },
816 [0x9c] = { 0x0397, 0x0345, 0x0313, 0x0301, 0x0000 },
817 [0x9d] = { 0x0397, 0x0345, 0x0314, 0x0301, 0x0000 },
818 [0x9e] = { 0x0397, 0x0345, 0x0313, 0x0342, 0x0000 },
819 [0x9f] = { 0x0397, 0x0345, 0x0314, 0x0342, 0x0000 },
820 [0xa0] = { 0x03C9, 0x0345, 0x0313, 0x0000 },
821 [0xa1] = { 0x03C9, 0x0345, 0x0314, 0x0000 },
822 [0xa2] = { 0x03C9, 0x0345, 0x0313, 0x0300, 0x0000 },
823 [0xa3] = { 0x03C9, 0x0345, 0x0314, 0x0300, 0x0000 },
824 [0xa4] = { 0x03C9, 0x0345, 0x0313, 0x0301, 0x0000 },
825 [0xa5] = { 0x03C9, 0x0345, 0x0314, 0x0301, 0x0000 },
826 [0xa6] = { 0x03C9, 0x0345, 0x0313, 0x0342, 0x0000 },
827 [0xa7] = { 0x03C9, 0x0345, 0x0314, 0x0342, 0x0000 },
828 [0xa8] = { 0x03A9, 0x0345, 0x0313, 0x0000 },
829 [0xa9] = { 0x03A9, 0x0345, 0x0314, 0x0000 },
830 [0xaa] = { 0x03A9, 0x0345, 0x0313, 0x0300, 0x0000 },
831 [0xab] = { 0x03A9, 0x0345, 0x0314, 0x0300, 0x0000 },
832 [0xac] = { 0x03A9, 0x0345, 0x0313, 0x0301, 0x0000 },
833 [0xad] = { 0x03A9, 0x0345, 0x0314, 0x0301, 0x0000 },
834 [0xae] = { 0x03A9, 0x0345, 0x0313, 0x0342, 0x0000 },
835 [0xaf] = { 0x03A9, 0x0345, 0x0314, 0x0342, 0x0000 },
836 [0xb0] = { 0x03B1, 0x0306, 0x0000 },
837 [0xb1] = { 0x03B1, 0x0304, 0x0000 },
838 [0xb2] = { 0x03B1, 0x0345, 0x0300, 0x0000 },
839 [0xb3] = { 0x03B1, 0x0345, 0x0000 },
840 [0xb4] = { 0x03B1, 0x0345, 0x0301, 0x0000 },
841 [0xb6] = { 0x03B1, 0x0342, 0x0000 },
842 [0xb7] = { 0x03B1, 0x0345, 0x0342, 0x0000 },
843 [0xb8] = { 0x0391, 0x0306, 0x0000 },
844 [0xb9] = { 0x0391, 0x0304, 0x0000 },
845 [0xba] = { 0x0391, 0x0300, 0x0000 },
846 [0xbb] = { 0x0391, 0x0301, 0x0000 },
847 [0xbc] = { 0x0391, 0x0345, 0x0000 },
848 [0xbe] = { 0x03B9, 0x0000 },
849 [0xc1] = { 0x00A8, 0x0342, 0x0000 },
850 [0xc2] = { 0x03B7, 0x0345, 0x0300, 0x0000 },
851 [0xc3] = { 0x03B7, 0x0345, 0x0000 },
852 [0xc4] = { 0x03B7, 0x0345, 0x0301, 0x0000 },
853 [0xc6] = { 0x03B7, 0x0342, 0x0000 },
854 [0xc7] = { 0x03B7, 0x0345, 0x0342, 0x0000 },
855 [0xc8] = { 0x0395, 0x0300, 0x0000 },
856 [0xc9] = { 0x0395, 0x0301, 0x0000 },
857 [0xca] = { 0x0397, 0x0300, 0x0000 },
858 [0xcb] = { 0x0397, 0x0301, 0x0000 },
859 [0xcc] = { 0x0397, 0x0345, 0x0000 },
860 [0xcd] = { 0x1FBF, 0x0300, 0x0000 },
861 [0xce] = { 0x1FBF, 0x0301, 0x0000 },
862 [0xcf] = { 0x1FBF, 0x0342, 0x0000 },
863 [0xd0] = { 0x03B9, 0x0306, 0x0000 },
864 [0xd1] = { 0x03B9, 0x0304, 0x0000 },
865 [0xd2] = { 0x03B9, 0x0308, 0x0300, 0x0000 },
866 [0xd3] = { 0x03B9, 0x0308, 0x0301, 0x0000 },
867 [0xd6] = { 0x03B9, 0x0342, 0x0000 },
868 [0xd7] = { 0x03B9, 0x0308, 0x0342, 0x0000 },
869 [0xd8] = { 0x0399, 0x0306, 0x0000 },
870 [0xd9] = { 0x0399, 0x0304, 0x0000 },
871 [0xda] = { 0x0399, 0x0300, 0x0000 },
872 [0xdb] = { 0x0399, 0x0301, 0x0000 },
873 [0xdd] = { 0x1FFE, 0x0300, 0x0000 },
874 [0xde] = { 0x1FFE, 0x0301, 0x0000 },
875 [0xdf] = { 0x1FFE, 0x0342, 0x0000 },
876 [0xe0] = { 0x03C5, 0x0306, 0x0000 },
877 [0xe1] = { 0x03C5, 0x0304, 0x0000 },
878 [0xe2] = { 0x03C5, 0x0308, 0x0300, 0x0000 },
879 [0xe3] = { 0x03C5, 0x0308, 0x0301, 0x0000 },
880 [0xe4] = { 0x03C1, 0x0313, 0x0000 },
881 [0xe5] = { 0x03C1, 0x0314, 0x0000 },
882 [0xe6] = { 0x03C5, 0x0342, 0x0000 },
883 [0xe7] = { 0x03C5, 0x0308, 0x0342, 0x0000 },
884 [0xe8] = { 0x03A5, 0x0306, 0x0000 },
885 [0xe9] = { 0x03A5, 0x0304, 0x0000 },
886 [0xea] = { 0x03A5, 0x0300, 0x0000 },
887 [0xeb] = { 0x03A5, 0x0301, 0x0000 },
888 [0xec] = { 0x03A1, 0x0314, 0x0000 },
889 [0xed] = { 0x00A8, 0x0300, 0x0000 },
890 [0xee] = { 0x00A8, 0x0301, 0x0000 },
891 [0xef] = { 0x0060, 0x0000 },
892 [0xf2] = { 0x03C9, 0x0345, 0x0300, 0x0000 },
893 [0xf3] = { 0x03C9, 0x0345, 0x0000 },
894 [0xf4] = { 0x03BF, 0x0345, 0x0301, 0x0000 },
895 [0xf6] = { 0x03C9, 0x0342, 0x0000 },
896 [0xf7] = { 0x03C9, 0x0345, 0x0342, 0x0000 },
897 [0xf8] = { 0x039F, 0x0300, 0x0000 },
898 [0xf9] = { 0x039F, 0x0301, 0x0000 },
899 [0xfa] = { 0x03A9, 0x0300, 0x0000 },
900 [0xfb] = { 0x03A9, 0x0301, 0x0000 },
901 [0xfc] = { 0x03A9, 0x0345, 0x0000 },
902 [0xfd] = { 0x00B4, 0x0000 },
903 };
904
905 static uint16_t page30[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
906 [0x4c] = { 0x304B, 0x3099, 0x0000 },
907 [0x4e] = { 0x304D, 0x3099, 0x0000 },
908 [0x50] = { 0x304F, 0x3099, 0x0000 },
909 [0x52] = { 0x3051, 0x3099, 0x0000 },
910 [0x54] = { 0x3053, 0x3099, 0x0000 },
911 [0x56] = { 0x3055, 0x3099, 0x0000 },
912 [0x58] = { 0x3057, 0x3099, 0x0000 },
913 [0x5a] = { 0x3059, 0x3099, 0x0000 },
914 [0x5c] = { 0x305B, 0x3099, 0x0000 },
915 [0x5e] = { 0x305D, 0x3099, 0x0000 },
916 [0x60] = { 0x305F, 0x3099, 0x0000 },
917 [0x62] = { 0x3061, 0x3099, 0x0000 },
918 [0x65] = { 0x3064, 0x3099, 0x0000 },
919 [0x67] = { 0x3066, 0x3099, 0x0000 },
920 [0x69] = { 0x3068, 0x3099, 0x0000 },
921 [0x70] = { 0x306F, 0x3099, 0x0000 },
922 [0x71] = { 0x306F, 0x309A, 0x0000 },
923 [0x73] = { 0x3072, 0x3099, 0x0000 },
924 [0x74] = { 0x3072, 0x309A, 0x0000 },
925 [0x76] = { 0x3075, 0x3099, 0x0000 },
926 [0x77] = { 0x3075, 0x309A, 0x0000 },
927 [0x79] = { 0x3078, 0x3099, 0x0000 },
928 [0x7a] = { 0x3078, 0x309A, 0x0000 },
929 [0x7c] = { 0x307B, 0x3099, 0x0000 },
930 [0x7d] = { 0x307B, 0x309A, 0x0000 },
931 [0x94] = { 0x3046, 0x3099, 0x0000 },
932 [0x9e] = { 0x309D, 0x3099, 0x0000 },
933 [0xac] = { 0x30AB, 0x3099, 0x0000 },
934 [0xae] = { 0x30AD, 0x3099, 0x0000 },
935 [0xb0] = { 0x30AF, 0x3099, 0x0000 },
936 [0xb2] = { 0x30B1, 0x3099, 0x0000 },
937 [0xb4] = { 0x30B3, 0x3099, 0x0000 },
938 [0xb6] = { 0x30B5, 0x3099, 0x0000 },
939 [0xb8] = { 0x30B7, 0x3099, 0x0000 },
940 [0xba] = { 0x30B9, 0x3099, 0x0000 },
941 [0xbc] = { 0x30BB, 0x3099, 0x0000 },
942 [0xbe] = { 0x30BD, 0x3099, 0x0000 },
943 [0xc0] = { 0x30BF, 0x3099, 0x0000 },
944 [0xc2] = { 0x30C1, 0x3099, 0x0000 },
945 [0xc5] = { 0x30C4, 0x3099, 0x0000 },
946 [0xc7] = { 0x30C6, 0x3099, 0x0000 },
947 [0xc9] = { 0x30C8, 0x3099, 0x0000 },
948 [0xd0] = { 0x30CF, 0x3099, 0x0000 },
949 [0xd1] = { 0x30CF, 0x309A, 0x0000 },
950 [0xd3] = { 0x30D2, 0x3099, 0x0000 },
951 [0xd4] = { 0x30D2, 0x309A, 0x0000 },
952 [0xd6] = { 0x30D5, 0x3099, 0x0000 },
953 [0xd7] = { 0x30D5, 0x309A, 0x0000 },
954 [0xd9] = { 0x30D8, 0x3099, 0x0000 },
955 [0xda] = { 0x30D8, 0x309A, 0x0000 },
956 [0xdc] = { 0x30DB, 0x3099, 0x0000 },
957 [0xdd] = { 0x30DB, 0x309A, 0x0000 },
958 [0xf4] = { 0x30A6, 0x3099, 0x0000 },
959 [0xf7] = { 0x30EF, 0x3099, 0x0000 },
960 [0xf8] = { 0x30F0, 0x3099, 0x0000 },
961 [0xf9] = { 0x30F1, 0x3099, 0x0000 },
962 [0xfa] = { 0x30F2, 0x3099, 0x0000 },
963 [0xfe] = { 0x30FD, 0x3099, 0x0000 },
964 };
965
966 static uint16_t pagefb[256][HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
967 [0x1f] = { 0x05F2, 0x05B7, 0x0000 },
968 [0x2a] = { 0x05E9, 0x05C1, 0x0000 },
969 [0x2b] = { 0x05E9, 0x05C2, 0x0000 },
970 [0x2c] = { 0x05E9, 0x05BC, 0x05C1, 0x0000 },
971 [0x2d] = { 0x05E9, 0x05BC, 0x05C2, 0x0000 },
972 [0x2e] = { 0x05D0, 0x05B7, 0x0000 },
973 [0x2f] = { 0x05D0, 0x05B8, 0x0000 },
974 [0x30] = { 0x05D0, 0x05BC, 0x0000 },
975 [0x31] = { 0x05D1, 0x05BC, 0x0000 },
976 [0x32] = { 0x05D2, 0x05BC, 0x0000 },
977 [0x33] = { 0x05D3, 0x05BC, 0x0000 },
978 [0x34] = { 0x05D4, 0x05BC, 0x0000 },
979 [0x35] = { 0x05D5, 0x05BC, 0x0000 },
980 [0x36] = { 0x05D6, 0x05BC, 0x0000 },
981 [0x38] = { 0x05D8, 0x05BC, 0x0000 },
982 [0x39] = { 0x05D9, 0x05BC, 0x0000 },
983 [0x3a] = { 0x05DA, 0x05BC, 0x0000 },
984 [0x3b] = { 0x05DB, 0x05BC, 0x0000 },
985 [0x3c] = { 0x05DC, 0x05BC, 0x0000 },
986 [0x3e] = { 0x05DE, 0x05BC, 0x0000 },
987 [0x40] = { 0x05E0, 0x05BC, 0x0000 },
988 [0x41] = { 0x05E1, 0x05BC, 0x0000 },
989 [0x43] = { 0x05E3, 0x05BC, 0x0000 },
990 [0x44] = { 0x05E4, 0x05BC, 0x0000 },
991 [0x46] = { 0x05E6, 0x05BC, 0x0000 },
992 [0x47] = { 0x05E7, 0x05BC, 0x0000 },
993 [0x48] = { 0x05E8, 0x05BC, 0x0000 },
994 [0x49] = { 0x05E9, 0x05BC, 0x0000 },
995 [0x4a] = { 0x05EA, 0x05BC, 0x0000 },
996 [0x4b] = { 0x05D5, 0x05B9, 0x0000 },
997 [0x4c] = { 0x05D1, 0x05BF, 0x0000 },
998 [0x4d] = { 0x05DB, 0x05BF, 0x0000 },
999 [0x4e] = { 0x05E4, 0x05BF, 0x0000 },
1000 };
1001
1002 uint16_t (*hfsplus_decompose_pages[256])[HFSPLUS_MAX_DECOMPOSE_LEN + 1] = {
1003 [0x00] = page00,
1004 [0x01] = page01,
1005 [0x02] = page02,
1006 [0x03] = page03,
1007 [0x04] = page04,
1008 [0x09] = page09,
1009 [0x0a] = page0a,
1010 [0x0b] = page0b,
1011 [0x0c] = page0c,
1012 [0x0d] = page0d,
1013 [0x0e] = page0e,
1014 [0x0f] = page0f,
1015 [0x1e] = page1e,
1016 [0x1f] = page1f,
1017 [0x30] = page30,
1018 [0xfb] = pagefb,
1019 };
1020
1021 void make_hfsplus_decompose_pages()
1022 {
1023 return;
1024 }