ssa: avoid duplicate logic in simplify_instr
[ajla.git] / newlib / uni_case.ajla
blobc90ecb130d691615c2a47aab2fd5bc9b08f21839
1 {*
2  * Copyright (C) 2024 Mikulas Patocka
3  *
4  * This file is part of Ajla.
5  *
6  * Ajla is free software: you can redistribute it and/or modify it under the
7  * terms of the GNU General Public License as published by the Free Software
8  * Foundation, either version 3 of the License, or (at your option) any later
9  * version.
10  *
11  * Ajla is distributed in the hope that it will be useful, but WITHOUT ANY
12  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
13  * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along with
16  * Ajla. If not, see <https://www.gnu.org/licenses/>.
17  *}
19 private unit uni_case;
21 const uni_upcase~cache : array(char, [#110000]);
22 const uni_locase~cache : array(char, [#110000]);
24 implementation
26 const uni_upcase~cache : array(char, [#110000])
28         var am := array_sparse(char, 0, [#110000]);
30         am[#000061] := #000041;
31         am[#000062] := #000042;
32         am[#000063] := #000043;
33         am[#000064] := #000044;
34         am[#000065] := #000045;
35         am[#000066] := #000046;
36         am[#000067] := #000047;
37         am[#000068] := #000048;
38         am[#000069] := #000049;
39         am[#00006A] := #00004A;
40         am[#00006B] := #00004B;
41         am[#00006C] := #00004C;
42         am[#00006D] := #00004D;
43         am[#00006E] := #00004E;
44         am[#00006F] := #00004F;
45         am[#000070] := #000050;
46         am[#000071] := #000051;
47         am[#000072] := #000052;
48         am[#000073] := #000053;
49         am[#000074] := #000054;
50         am[#000075] := #000055;
51         am[#000076] := #000056;
52         am[#000077] := #000057;
53         am[#000078] := #000058;
54         am[#000079] := #000059;
55         am[#00007A] := #00005A;
56         am[#0000B5] := #00039C;
57         am[#0000E0] := #0000C0;
58         am[#0000E1] := #0000C1;
59         am[#0000E2] := #0000C2;
60         am[#0000E3] := #0000C3;
61         am[#0000E4] := #0000C4;
62         am[#0000E5] := #0000C5;
63         am[#0000E6] := #0000C6;
64         am[#0000E7] := #0000C7;
65         am[#0000E8] := #0000C8;
66         am[#0000E9] := #0000C9;
67         am[#0000EA] := #0000CA;
68         am[#0000EB] := #0000CB;
69         am[#0000EC] := #0000CC;
70         am[#0000ED] := #0000CD;
71         am[#0000EE] := #0000CE;
72         am[#0000EF] := #0000CF;
73         am[#0000F0] := #0000D0;
74         am[#0000F1] := #0000D1;
75         am[#0000F2] := #0000D2;
76         am[#0000F3] := #0000D3;
77         am[#0000F4] := #0000D4;
78         am[#0000F5] := #0000D5;
79         am[#0000F6] := #0000D6;
80         am[#0000F8] := #0000D8;
81         am[#0000F9] := #0000D9;
82         am[#0000FA] := #0000DA;
83         am[#0000FB] := #0000DB;
84         am[#0000FC] := #0000DC;
85         am[#0000FD] := #0000DD;
86         am[#0000FE] := #0000DE;
87         am[#0000FF] := #000178;
88         am[#000101] := #000100;
89         am[#000103] := #000102;
90         am[#000105] := #000104;
91         am[#000107] := #000106;
92         am[#000109] := #000108;
93         am[#00010B] := #00010A;
94         am[#00010D] := #00010C;
95         am[#00010F] := #00010E;
96         am[#000111] := #000110;
97         am[#000113] := #000112;
98         am[#000115] := #000114;
99         am[#000117] := #000116;
100         am[#000119] := #000118;
101         am[#00011B] := #00011A;
102         am[#00011D] := #00011C;
103         am[#00011F] := #00011E;
104         am[#000121] := #000120;
105         am[#000123] := #000122;
106         am[#000125] := #000124;
107         am[#000127] := #000126;
108         am[#000129] := #000128;
109         am[#00012B] := #00012A;
110         am[#00012D] := #00012C;
111         am[#00012F] := #00012E;
112         am[#000131] := #000049;
113         am[#000133] := #000132;
114         am[#000135] := #000134;
115         am[#000137] := #000136;
116         am[#00013A] := #000139;
117         am[#00013C] := #00013B;
118         am[#00013E] := #00013D;
119         am[#000140] := #00013F;
120         am[#000142] := #000141;
121         am[#000144] := #000143;
122         am[#000146] := #000145;
123         am[#000148] := #000147;
124         am[#00014B] := #00014A;
125         am[#00014D] := #00014C;
126         am[#00014F] := #00014E;
127         am[#000151] := #000150;
128         am[#000153] := #000152;
129         am[#000155] := #000154;
130         am[#000157] := #000156;
131         am[#000159] := #000158;
132         am[#00015B] := #00015A;
133         am[#00015D] := #00015C;
134         am[#00015F] := #00015E;
135         am[#000161] := #000160;
136         am[#000163] := #000162;
137         am[#000165] := #000164;
138         am[#000167] := #000166;
139         am[#000169] := #000168;
140         am[#00016B] := #00016A;
141         am[#00016D] := #00016C;
142         am[#00016F] := #00016E;
143         am[#000171] := #000170;
144         am[#000173] := #000172;
145         am[#000175] := #000174;
146         am[#000177] := #000176;
147         am[#00017A] := #000179;
148         am[#00017C] := #00017B;
149         am[#00017E] := #00017D;
150         am[#00017F] := #000053;
151         am[#000180] := #000243;
152         am[#000183] := #000182;
153         am[#000185] := #000184;
154         am[#000188] := #000187;
155         am[#00018C] := #00018B;
156         am[#000192] := #000191;
157         am[#000195] := #0001F6;
158         am[#000199] := #000198;
159         am[#00019A] := #00023D;
160         am[#00019E] := #000220;
161         am[#0001A1] := #0001A0;
162         am[#0001A3] := #0001A2;
163         am[#0001A5] := #0001A4;
164         am[#0001A8] := #0001A7;
165         am[#0001AD] := #0001AC;
166         am[#0001B0] := #0001AF;
167         am[#0001B4] := #0001B3;
168         am[#0001B6] := #0001B5;
169         am[#0001B9] := #0001B8;
170         am[#0001BD] := #0001BC;
171         am[#0001BF] := #0001F7;
172         am[#0001C4] := #0001C5;
173         am[#0001C5] := #0001C5;
174         am[#0001C6] := #0001C5;
175         am[#0001C7] := #0001C8;
176         am[#0001C8] := #0001C8;
177         am[#0001C9] := #0001C8;
178         am[#0001CA] := #0001CB;
179         am[#0001CB] := #0001CB;
180         am[#0001CC] := #0001CB;
181         am[#0001CE] := #0001CD;
182         am[#0001D0] := #0001CF;
183         am[#0001D2] := #0001D1;
184         am[#0001D4] := #0001D3;
185         am[#0001D6] := #0001D5;
186         am[#0001D8] := #0001D7;
187         am[#0001DA] := #0001D9;
188         am[#0001DC] := #0001DB;
189         am[#0001DD] := #00018E;
190         am[#0001DF] := #0001DE;
191         am[#0001E1] := #0001E0;
192         am[#0001E3] := #0001E2;
193         am[#0001E5] := #0001E4;
194         am[#0001E7] := #0001E6;
195         am[#0001E9] := #0001E8;
196         am[#0001EB] := #0001EA;
197         am[#0001ED] := #0001EC;
198         am[#0001EF] := #0001EE;
199         am[#0001F1] := #0001F2;
200         am[#0001F2] := #0001F2;
201         am[#0001F3] := #0001F2;
202         am[#0001F5] := #0001F4;
203         am[#0001F9] := #0001F8;
204         am[#0001FB] := #0001FA;
205         am[#0001FD] := #0001FC;
206         am[#0001FF] := #0001FE;
207         am[#000201] := #000200;
208         am[#000203] := #000202;
209         am[#000205] := #000204;
210         am[#000207] := #000206;
211         am[#000209] := #000208;
212         am[#00020B] := #00020A;
213         am[#00020D] := #00020C;
214         am[#00020F] := #00020E;
215         am[#000211] := #000210;
216         am[#000213] := #000212;
217         am[#000215] := #000214;
218         am[#000217] := #000216;
219         am[#000219] := #000218;
220         am[#00021B] := #00021A;
221         am[#00021D] := #00021C;
222         am[#00021F] := #00021E;
223         am[#000223] := #000222;
224         am[#000225] := #000224;
225         am[#000227] := #000226;
226         am[#000229] := #000228;
227         am[#00022B] := #00022A;
228         am[#00022D] := #00022C;
229         am[#00022F] := #00022E;
230         am[#000231] := #000230;
231         am[#000233] := #000232;
232         am[#00023C] := #00023B;
233         am[#00023F] := #002C7E;
234         am[#000240] := #002C7F;
235         am[#000242] := #000241;
236         am[#000247] := #000246;
237         am[#000249] := #000248;
238         am[#00024B] := #00024A;
239         am[#00024D] := #00024C;
240         am[#00024F] := #00024E;
241         am[#000250] := #002C6F;
242         am[#000251] := #002C6D;
243         am[#000252] := #002C70;
244         am[#000253] := #000181;
245         am[#000254] := #000186;
246         am[#000256] := #000189;
247         am[#000257] := #00018A;
248         am[#000259] := #00018F;
249         am[#00025B] := #000190;
250         am[#00025C] := #00A7AB;
251         am[#000260] := #000193;
252         am[#000261] := #00A7AC;
253         am[#000263] := #000194;
254         am[#000265] := #00A78D;
255         am[#000266] := #00A7AA;
256         am[#000268] := #000197;
257         am[#000269] := #000196;
258         am[#00026A] := #00A7AE;
259         am[#00026B] := #002C62;
260         am[#00026C] := #00A7AD;
261         am[#00026F] := #00019C;
262         am[#000271] := #002C6E;
263         am[#000272] := #00019D;
264         am[#000275] := #00019F;
265         am[#00027D] := #002C64;
266         am[#000280] := #0001A6;
267         am[#000283] := #0001A9;
268         am[#000287] := #00A7B1;
269         am[#000288] := #0001AE;
270         am[#000289] := #000244;
271         am[#00028A] := #0001B1;
272         am[#00028B] := #0001B2;
273         am[#00028C] := #000245;
274         am[#000292] := #0001B7;
275         am[#00029D] := #00A7B2;
276         am[#00029E] := #00A7B0;
277         am[#000345] := #000399;
278         am[#000371] := #000370;
279         am[#000373] := #000372;
280         am[#000377] := #000376;
281         am[#00037B] := #0003FD;
282         am[#00037C] := #0003FE;
283         am[#00037D] := #0003FF;
284         am[#0003AC] := #000386;
285         am[#0003AD] := #000388;
286         am[#0003AE] := #000389;
287         am[#0003AF] := #00038A;
288         am[#0003B1] := #000391;
289         am[#0003B2] := #000392;
290         am[#0003B3] := #000393;
291         am[#0003B4] := #000394;
292         am[#0003B5] := #000395;
293         am[#0003B6] := #000396;
294         am[#0003B7] := #000397;
295         am[#0003B8] := #000398;
296         am[#0003B9] := #000399;
297         am[#0003BA] := #00039A;
298         am[#0003BB] := #00039B;
299         am[#0003BC] := #00039C;
300         am[#0003BD] := #00039D;
301         am[#0003BE] := #00039E;
302         am[#0003BF] := #00039F;
303         am[#0003C0] := #0003A0;
304         am[#0003C1] := #0003A1;
305         am[#0003C2] := #0003A3;
306         am[#0003C3] := #0003A3;
307         am[#0003C4] := #0003A4;
308         am[#0003C5] := #0003A5;
309         am[#0003C6] := #0003A6;
310         am[#0003C7] := #0003A7;
311         am[#0003C8] := #0003A8;
312         am[#0003C9] := #0003A9;
313         am[#0003CA] := #0003AA;
314         am[#0003CB] := #0003AB;
315         am[#0003CC] := #00038C;
316         am[#0003CD] := #00038E;
317         am[#0003CE] := #00038F;
318         am[#0003D0] := #000392;
319         am[#0003D1] := #000398;
320         am[#0003D5] := #0003A6;
321         am[#0003D6] := #0003A0;
322         am[#0003D7] := #0003CF;
323         am[#0003D9] := #0003D8;
324         am[#0003DB] := #0003DA;
325         am[#0003DD] := #0003DC;
326         am[#0003DF] := #0003DE;
327         am[#0003E1] := #0003E0;
328         am[#0003E3] := #0003E2;
329         am[#0003E5] := #0003E4;
330         am[#0003E7] := #0003E6;
331         am[#0003E9] := #0003E8;
332         am[#0003EB] := #0003EA;
333         am[#0003ED] := #0003EC;
334         am[#0003EF] := #0003EE;
335         am[#0003F0] := #00039A;
336         am[#0003F1] := #0003A1;
337         am[#0003F2] := #0003F9;
338         am[#0003F3] := #00037F;
339         am[#0003F5] := #000395;
340         am[#0003F8] := #0003F7;
341         am[#0003FB] := #0003FA;
342         am[#000430] := #000410;
343         am[#000431] := #000411;
344         am[#000432] := #000412;
345         am[#000433] := #000413;
346         am[#000434] := #000414;
347         am[#000435] := #000415;
348         am[#000436] := #000416;
349         am[#000437] := #000417;
350         am[#000438] := #000418;
351         am[#000439] := #000419;
352         am[#00043A] := #00041A;
353         am[#00043B] := #00041B;
354         am[#00043C] := #00041C;
355         am[#00043D] := #00041D;
356         am[#00043E] := #00041E;
357         am[#00043F] := #00041F;
358         am[#000440] := #000420;
359         am[#000441] := #000421;
360         am[#000442] := #000422;
361         am[#000443] := #000423;
362         am[#000444] := #000424;
363         am[#000445] := #000425;
364         am[#000446] := #000426;
365         am[#000447] := #000427;
366         am[#000448] := #000428;
367         am[#000449] := #000429;
368         am[#00044A] := #00042A;
369         am[#00044B] := #00042B;
370         am[#00044C] := #00042C;
371         am[#00044D] := #00042D;
372         am[#00044E] := #00042E;
373         am[#00044F] := #00042F;
374         am[#000450] := #000400;
375         am[#000451] := #000401;
376         am[#000452] := #000402;
377         am[#000453] := #000403;
378         am[#000454] := #000404;
379         am[#000455] := #000405;
380         am[#000456] := #000406;
381         am[#000457] := #000407;
382         am[#000458] := #000408;
383         am[#000459] := #000409;
384         am[#00045A] := #00040A;
385         am[#00045B] := #00040B;
386         am[#00045C] := #00040C;
387         am[#00045D] := #00040D;
388         am[#00045E] := #00040E;
389         am[#00045F] := #00040F;
390         am[#000461] := #000460;
391         am[#000463] := #000462;
392         am[#000465] := #000464;
393         am[#000467] := #000466;
394         am[#000469] := #000468;
395         am[#00046B] := #00046A;
396         am[#00046D] := #00046C;
397         am[#00046F] := #00046E;
398         am[#000471] := #000470;
399         am[#000473] := #000472;
400         am[#000475] := #000474;
401         am[#000477] := #000476;
402         am[#000479] := #000478;
403         am[#00047B] := #00047A;
404         am[#00047D] := #00047C;
405         am[#00047F] := #00047E;
406         am[#000481] := #000480;
407         am[#00048B] := #00048A;
408         am[#00048D] := #00048C;
409         am[#00048F] := #00048E;
410         am[#000491] := #000490;
411         am[#000493] := #000492;
412         am[#000495] := #000494;
413         am[#000497] := #000496;
414         am[#000499] := #000498;
415         am[#00049B] := #00049A;
416         am[#00049D] := #00049C;
417         am[#00049F] := #00049E;
418         am[#0004A1] := #0004A0;
419         am[#0004A3] := #0004A2;
420         am[#0004A5] := #0004A4;
421         am[#0004A7] := #0004A6;
422         am[#0004A9] := #0004A8;
423         am[#0004AB] := #0004AA;
424         am[#0004AD] := #0004AC;
425         am[#0004AF] := #0004AE;
426         am[#0004B1] := #0004B0;
427         am[#0004B3] := #0004B2;
428         am[#0004B5] := #0004B4;
429         am[#0004B7] := #0004B6;
430         am[#0004B9] := #0004B8;
431         am[#0004BB] := #0004BA;
432         am[#0004BD] := #0004BC;
433         am[#0004BF] := #0004BE;
434         am[#0004C2] := #0004C1;
435         am[#0004C4] := #0004C3;
436         am[#0004C6] := #0004C5;
437         am[#0004C8] := #0004C7;
438         am[#0004CA] := #0004C9;
439         am[#0004CC] := #0004CB;
440         am[#0004CE] := #0004CD;
441         am[#0004CF] := #0004C0;
442         am[#0004D1] := #0004D0;
443         am[#0004D3] := #0004D2;
444         am[#0004D5] := #0004D4;
445         am[#0004D7] := #0004D6;
446         am[#0004D9] := #0004D8;
447         am[#0004DB] := #0004DA;
448         am[#0004DD] := #0004DC;
449         am[#0004DF] := #0004DE;
450         am[#0004E1] := #0004E0;
451         am[#0004E3] := #0004E2;
452         am[#0004E5] := #0004E4;
453         am[#0004E7] := #0004E6;
454         am[#0004E9] := #0004E8;
455         am[#0004EB] := #0004EA;
456         am[#0004ED] := #0004EC;
457         am[#0004EF] := #0004EE;
458         am[#0004F1] := #0004F0;
459         am[#0004F3] := #0004F2;
460         am[#0004F5] := #0004F4;
461         am[#0004F7] := #0004F6;
462         am[#0004F9] := #0004F8;
463         am[#0004FB] := #0004FA;
464         am[#0004FD] := #0004FC;
465         am[#0004FF] := #0004FE;
466         am[#000501] := #000500;
467         am[#000503] := #000502;
468         am[#000505] := #000504;
469         am[#000507] := #000506;
470         am[#000509] := #000508;
471         am[#00050B] := #00050A;
472         am[#00050D] := #00050C;
473         am[#00050F] := #00050E;
474         am[#000511] := #000510;
475         am[#000513] := #000512;
476         am[#000515] := #000514;
477         am[#000517] := #000516;
478         am[#000519] := #000518;
479         am[#00051B] := #00051A;
480         am[#00051D] := #00051C;
481         am[#00051F] := #00051E;
482         am[#000521] := #000520;
483         am[#000523] := #000522;
484         am[#000525] := #000524;
485         am[#000527] := #000526;
486         am[#000529] := #000528;
487         am[#00052B] := #00052A;
488         am[#00052D] := #00052C;
489         am[#00052F] := #00052E;
490         am[#000561] := #000531;
491         am[#000562] := #000532;
492         am[#000563] := #000533;
493         am[#000564] := #000534;
494         am[#000565] := #000535;
495         am[#000566] := #000536;
496         am[#000567] := #000537;
497         am[#000568] := #000538;
498         am[#000569] := #000539;
499         am[#00056A] := #00053A;
500         am[#00056B] := #00053B;
501         am[#00056C] := #00053C;
502         am[#00056D] := #00053D;
503         am[#00056E] := #00053E;
504         am[#00056F] := #00053F;
505         am[#000570] := #000540;
506         am[#000571] := #000541;
507         am[#000572] := #000542;
508         am[#000573] := #000543;
509         am[#000574] := #000544;
510         am[#000575] := #000545;
511         am[#000576] := #000546;
512         am[#000577] := #000547;
513         am[#000578] := #000548;
514         am[#000579] := #000549;
515         am[#00057A] := #00054A;
516         am[#00057B] := #00054B;
517         am[#00057C] := #00054C;
518         am[#00057D] := #00054D;
519         am[#00057E] := #00054E;
520         am[#00057F] := #00054F;
521         am[#000580] := #000550;
522         am[#000581] := #000551;
523         am[#000582] := #000552;
524         am[#000583] := #000553;
525         am[#000584] := #000554;
526         am[#000585] := #000555;
527         am[#000586] := #000556;
528         am[#0013F8] := #0013F0;
529         am[#0013F9] := #0013F1;
530         am[#0013FA] := #0013F2;
531         am[#0013FB] := #0013F3;
532         am[#0013FC] := #0013F4;
533         am[#0013FD] := #0013F5;
534         am[#001C80] := #000412;
535         am[#001C81] := #000414;
536         am[#001C82] := #00041E;
537         am[#001C83] := #000421;
538         am[#001C84] := #000422;
539         am[#001C85] := #000422;
540         am[#001C86] := #00042A;
541         am[#001C87] := #000462;
542         am[#001C88] := #00A64A;
543         am[#001D79] := #00A77D;
544         am[#001D7D] := #002C63;
545         am[#001E01] := #001E00;
546         am[#001E03] := #001E02;
547         am[#001E05] := #001E04;
548         am[#001E07] := #001E06;
549         am[#001E09] := #001E08;
550         am[#001E0B] := #001E0A;
551         am[#001E0D] := #001E0C;
552         am[#001E0F] := #001E0E;
553         am[#001E11] := #001E10;
554         am[#001E13] := #001E12;
555         am[#001E15] := #001E14;
556         am[#001E17] := #001E16;
557         am[#001E19] := #001E18;
558         am[#001E1B] := #001E1A;
559         am[#001E1D] := #001E1C;
560         am[#001E1F] := #001E1E;
561         am[#001E21] := #001E20;
562         am[#001E23] := #001E22;
563         am[#001E25] := #001E24;
564         am[#001E27] := #001E26;
565         am[#001E29] := #001E28;
566         am[#001E2B] := #001E2A;
567         am[#001E2D] := #001E2C;
568         am[#001E2F] := #001E2E;
569         am[#001E31] := #001E30;
570         am[#001E33] := #001E32;
571         am[#001E35] := #001E34;
572         am[#001E37] := #001E36;
573         am[#001E39] := #001E38;
574         am[#001E3B] := #001E3A;
575         am[#001E3D] := #001E3C;
576         am[#001E3F] := #001E3E;
577         am[#001E41] := #001E40;
578         am[#001E43] := #001E42;
579         am[#001E45] := #001E44;
580         am[#001E47] := #001E46;
581         am[#001E49] := #001E48;
582         am[#001E4B] := #001E4A;
583         am[#001E4D] := #001E4C;
584         am[#001E4F] := #001E4E;
585         am[#001E51] := #001E50;
586         am[#001E53] := #001E52;
587         am[#001E55] := #001E54;
588         am[#001E57] := #001E56;
589         am[#001E59] := #001E58;
590         am[#001E5B] := #001E5A;
591         am[#001E5D] := #001E5C;
592         am[#001E5F] := #001E5E;
593         am[#001E61] := #001E60;
594         am[#001E63] := #001E62;
595         am[#001E65] := #001E64;
596         am[#001E67] := #001E66;
597         am[#001E69] := #001E68;
598         am[#001E6B] := #001E6A;
599         am[#001E6D] := #001E6C;
600         am[#001E6F] := #001E6E;
601         am[#001E71] := #001E70;
602         am[#001E73] := #001E72;
603         am[#001E75] := #001E74;
604         am[#001E77] := #001E76;
605         am[#001E79] := #001E78;
606         am[#001E7B] := #001E7A;
607         am[#001E7D] := #001E7C;
608         am[#001E7F] := #001E7E;
609         am[#001E81] := #001E80;
610         am[#001E83] := #001E82;
611         am[#001E85] := #001E84;
612         am[#001E87] := #001E86;
613         am[#001E89] := #001E88;
614         am[#001E8B] := #001E8A;
615         am[#001E8D] := #001E8C;
616         am[#001E8F] := #001E8E;
617         am[#001E91] := #001E90;
618         am[#001E93] := #001E92;
619         am[#001E95] := #001E94;
620         am[#001E9B] := #001E60;
621         am[#001EA1] := #001EA0;
622         am[#001EA3] := #001EA2;
623         am[#001EA5] := #001EA4;
624         am[#001EA7] := #001EA6;
625         am[#001EA9] := #001EA8;
626         am[#001EAB] := #001EAA;
627         am[#001EAD] := #001EAC;
628         am[#001EAF] := #001EAE;
629         am[#001EB1] := #001EB0;
630         am[#001EB3] := #001EB2;
631         am[#001EB5] := #001EB4;
632         am[#001EB7] := #001EB6;
633         am[#001EB9] := #001EB8;
634         am[#001EBB] := #001EBA;
635         am[#001EBD] := #001EBC;
636         am[#001EBF] := #001EBE;
637         am[#001EC1] := #001EC0;
638         am[#001EC3] := #001EC2;
639         am[#001EC5] := #001EC4;
640         am[#001EC7] := #001EC6;
641         am[#001EC9] := #001EC8;
642         am[#001ECB] := #001ECA;
643         am[#001ECD] := #001ECC;
644         am[#001ECF] := #001ECE;
645         am[#001ED1] := #001ED0;
646         am[#001ED3] := #001ED2;
647         am[#001ED5] := #001ED4;
648         am[#001ED7] := #001ED6;
649         am[#001ED9] := #001ED8;
650         am[#001EDB] := #001EDA;
651         am[#001EDD] := #001EDC;
652         am[#001EDF] := #001EDE;
653         am[#001EE1] := #001EE0;
654         am[#001EE3] := #001EE2;
655         am[#001EE5] := #001EE4;
656         am[#001EE7] := #001EE6;
657         am[#001EE9] := #001EE8;
658         am[#001EEB] := #001EEA;
659         am[#001EED] := #001EEC;
660         am[#001EEF] := #001EEE;
661         am[#001EF1] := #001EF0;
662         am[#001EF3] := #001EF2;
663         am[#001EF5] := #001EF4;
664         am[#001EF7] := #001EF6;
665         am[#001EF9] := #001EF8;
666         am[#001EFB] := #001EFA;
667         am[#001EFD] := #001EFC;
668         am[#001EFF] := #001EFE;
669         am[#001F00] := #001F08;
670         am[#001F01] := #001F09;
671         am[#001F02] := #001F0A;
672         am[#001F03] := #001F0B;
673         am[#001F04] := #001F0C;
674         am[#001F05] := #001F0D;
675         am[#001F06] := #001F0E;
676         am[#001F07] := #001F0F;
677         am[#001F10] := #001F18;
678         am[#001F11] := #001F19;
679         am[#001F12] := #001F1A;
680         am[#001F13] := #001F1B;
681         am[#001F14] := #001F1C;
682         am[#001F15] := #001F1D;
683         am[#001F20] := #001F28;
684         am[#001F21] := #001F29;
685         am[#001F22] := #001F2A;
686         am[#001F23] := #001F2B;
687         am[#001F24] := #001F2C;
688         am[#001F25] := #001F2D;
689         am[#001F26] := #001F2E;
690         am[#001F27] := #001F2F;
691         am[#001F30] := #001F38;
692         am[#001F31] := #001F39;
693         am[#001F32] := #001F3A;
694         am[#001F33] := #001F3B;
695         am[#001F34] := #001F3C;
696         am[#001F35] := #001F3D;
697         am[#001F36] := #001F3E;
698         am[#001F37] := #001F3F;
699         am[#001F40] := #001F48;
700         am[#001F41] := #001F49;
701         am[#001F42] := #001F4A;
702         am[#001F43] := #001F4B;
703         am[#001F44] := #001F4C;
704         am[#001F45] := #001F4D;
705         am[#001F51] := #001F59;
706         am[#001F53] := #001F5B;
707         am[#001F55] := #001F5D;
708         am[#001F57] := #001F5F;
709         am[#001F60] := #001F68;
710         am[#001F61] := #001F69;
711         am[#001F62] := #001F6A;
712         am[#001F63] := #001F6B;
713         am[#001F64] := #001F6C;
714         am[#001F65] := #001F6D;
715         am[#001F66] := #001F6E;
716         am[#001F67] := #001F6F;
717         am[#001F70] := #001FBA;
718         am[#001F71] := #001FBB;
719         am[#001F72] := #001FC8;
720         am[#001F73] := #001FC9;
721         am[#001F74] := #001FCA;
722         am[#001F75] := #001FCB;
723         am[#001F76] := #001FDA;
724         am[#001F77] := #001FDB;
725         am[#001F78] := #001FF8;
726         am[#001F79] := #001FF9;
727         am[#001F7A] := #001FEA;
728         am[#001F7B] := #001FEB;
729         am[#001F7C] := #001FFA;
730         am[#001F7D] := #001FFB;
731         am[#001F80] := #001F88;
732         am[#001F81] := #001F89;
733         am[#001F82] := #001F8A;
734         am[#001F83] := #001F8B;
735         am[#001F84] := #001F8C;
736         am[#001F85] := #001F8D;
737         am[#001F86] := #001F8E;
738         am[#001F87] := #001F8F;
739         am[#001F90] := #001F98;
740         am[#001F91] := #001F99;
741         am[#001F92] := #001F9A;
742         am[#001F93] := #001F9B;
743         am[#001F94] := #001F9C;
744         am[#001F95] := #001F9D;
745         am[#001F96] := #001F9E;
746         am[#001F97] := #001F9F;
747         am[#001FA0] := #001FA8;
748         am[#001FA1] := #001FA9;
749         am[#001FA2] := #001FAA;
750         am[#001FA3] := #001FAB;
751         am[#001FA4] := #001FAC;
752         am[#001FA5] := #001FAD;
753         am[#001FA6] := #001FAE;
754         am[#001FA7] := #001FAF;
755         am[#001FB0] := #001FB8;
756         am[#001FB1] := #001FB9;
757         am[#001FB3] := #001FBC;
758         am[#001FBE] := #000399;
759         am[#001FC3] := #001FCC;
760         am[#001FD0] := #001FD8;
761         am[#001FD1] := #001FD9;
762         am[#001FE0] := #001FE8;
763         am[#001FE1] := #001FE9;
764         am[#001FE5] := #001FEC;
765         am[#001FF3] := #001FFC;
766         am[#00214E] := #002132;
767         am[#002170] := #002160;
768         am[#002171] := #002161;
769         am[#002172] := #002162;
770         am[#002173] := #002163;
771         am[#002174] := #002164;
772         am[#002175] := #002165;
773         am[#002176] := #002166;
774         am[#002177] := #002167;
775         am[#002178] := #002168;
776         am[#002179] := #002169;
777         am[#00217A] := #00216A;
778         am[#00217B] := #00216B;
779         am[#00217C] := #00216C;
780         am[#00217D] := #00216D;
781         am[#00217E] := #00216E;
782         am[#00217F] := #00216F;
783         am[#002184] := #002183;
784         am[#0024D0] := #0024B6;
785         am[#0024D1] := #0024B7;
786         am[#0024D2] := #0024B8;
787         am[#0024D3] := #0024B9;
788         am[#0024D4] := #0024BA;
789         am[#0024D5] := #0024BB;
790         am[#0024D6] := #0024BC;
791         am[#0024D7] := #0024BD;
792         am[#0024D8] := #0024BE;
793         am[#0024D9] := #0024BF;
794         am[#0024DA] := #0024C0;
795         am[#0024DB] := #0024C1;
796         am[#0024DC] := #0024C2;
797         am[#0024DD] := #0024C3;
798         am[#0024DE] := #0024C4;
799         am[#0024DF] := #0024C5;
800         am[#0024E0] := #0024C6;
801         am[#0024E1] := #0024C7;
802         am[#0024E2] := #0024C8;
803         am[#0024E3] := #0024C9;
804         am[#0024E4] := #0024CA;
805         am[#0024E5] := #0024CB;
806         am[#0024E6] := #0024CC;
807         am[#0024E7] := #0024CD;
808         am[#0024E8] := #0024CE;
809         am[#0024E9] := #0024CF;
810         am[#002C30] := #002C00;
811         am[#002C31] := #002C01;
812         am[#002C32] := #002C02;
813         am[#002C33] := #002C03;
814         am[#002C34] := #002C04;
815         am[#002C35] := #002C05;
816         am[#002C36] := #002C06;
817         am[#002C37] := #002C07;
818         am[#002C38] := #002C08;
819         am[#002C39] := #002C09;
820         am[#002C3A] := #002C0A;
821         am[#002C3B] := #002C0B;
822         am[#002C3C] := #002C0C;
823         am[#002C3D] := #002C0D;
824         am[#002C3E] := #002C0E;
825         am[#002C3F] := #002C0F;
826         am[#002C40] := #002C10;
827         am[#002C41] := #002C11;
828         am[#002C42] := #002C12;
829         am[#002C43] := #002C13;
830         am[#002C44] := #002C14;
831         am[#002C45] := #002C15;
832         am[#002C46] := #002C16;
833         am[#002C47] := #002C17;
834         am[#002C48] := #002C18;
835         am[#002C49] := #002C19;
836         am[#002C4A] := #002C1A;
837         am[#002C4B] := #002C1B;
838         am[#002C4C] := #002C1C;
839         am[#002C4D] := #002C1D;
840         am[#002C4E] := #002C1E;
841         am[#002C4F] := #002C1F;
842         am[#002C50] := #002C20;
843         am[#002C51] := #002C21;
844         am[#002C52] := #002C22;
845         am[#002C53] := #002C23;
846         am[#002C54] := #002C24;
847         am[#002C55] := #002C25;
848         am[#002C56] := #002C26;
849         am[#002C57] := #002C27;
850         am[#002C58] := #002C28;
851         am[#002C59] := #002C29;
852         am[#002C5A] := #002C2A;
853         am[#002C5B] := #002C2B;
854         am[#002C5C] := #002C2C;
855         am[#002C5D] := #002C2D;
856         am[#002C5E] := #002C2E;
857         am[#002C61] := #002C60;
858         am[#002C65] := #00023A;
859         am[#002C66] := #00023E;
860         am[#002C68] := #002C67;
861         am[#002C6A] := #002C69;
862         am[#002C6C] := #002C6B;
863         am[#002C73] := #002C72;
864         am[#002C76] := #002C75;
865         am[#002C81] := #002C80;
866         am[#002C83] := #002C82;
867         am[#002C85] := #002C84;
868         am[#002C87] := #002C86;
869         am[#002C89] := #002C88;
870         am[#002C8B] := #002C8A;
871         am[#002C8D] := #002C8C;
872         am[#002C8F] := #002C8E;
873         am[#002C91] := #002C90;
874         am[#002C93] := #002C92;
875         am[#002C95] := #002C94;
876         am[#002C97] := #002C96;
877         am[#002C99] := #002C98;
878         am[#002C9B] := #002C9A;
879         am[#002C9D] := #002C9C;
880         am[#002C9F] := #002C9E;
881         am[#002CA1] := #002CA0;
882         am[#002CA3] := #002CA2;
883         am[#002CA5] := #002CA4;
884         am[#002CA7] := #002CA6;
885         am[#002CA9] := #002CA8;
886         am[#002CAB] := #002CAA;
887         am[#002CAD] := #002CAC;
888         am[#002CAF] := #002CAE;
889         am[#002CB1] := #002CB0;
890         am[#002CB3] := #002CB2;
891         am[#002CB5] := #002CB4;
892         am[#002CB7] := #002CB6;
893         am[#002CB9] := #002CB8;
894         am[#002CBB] := #002CBA;
895         am[#002CBD] := #002CBC;
896         am[#002CBF] := #002CBE;
897         am[#002CC1] := #002CC0;
898         am[#002CC3] := #002CC2;
899         am[#002CC5] := #002CC4;
900         am[#002CC7] := #002CC6;
901         am[#002CC9] := #002CC8;
902         am[#002CCB] := #002CCA;
903         am[#002CCD] := #002CCC;
904         am[#002CCF] := #002CCE;
905         am[#002CD1] := #002CD0;
906         am[#002CD3] := #002CD2;
907         am[#002CD5] := #002CD4;
908         am[#002CD7] := #002CD6;
909         am[#002CD9] := #002CD8;
910         am[#002CDB] := #002CDA;
911         am[#002CDD] := #002CDC;
912         am[#002CDF] := #002CDE;
913         am[#002CE1] := #002CE0;
914         am[#002CE3] := #002CE2;
915         am[#002CEC] := #002CEB;
916         am[#002CEE] := #002CED;
917         am[#002CF3] := #002CF2;
918         am[#002D00] := #0010A0;
919         am[#002D01] := #0010A1;
920         am[#002D02] := #0010A2;
921         am[#002D03] := #0010A3;
922         am[#002D04] := #0010A4;
923         am[#002D05] := #0010A5;
924         am[#002D06] := #0010A6;
925         am[#002D07] := #0010A7;
926         am[#002D08] := #0010A8;
927         am[#002D09] := #0010A9;
928         am[#002D0A] := #0010AA;
929         am[#002D0B] := #0010AB;
930         am[#002D0C] := #0010AC;
931         am[#002D0D] := #0010AD;
932         am[#002D0E] := #0010AE;
933         am[#002D0F] := #0010AF;
934         am[#002D10] := #0010B0;
935         am[#002D11] := #0010B1;
936         am[#002D12] := #0010B2;
937         am[#002D13] := #0010B3;
938         am[#002D14] := #0010B4;
939         am[#002D15] := #0010B5;
940         am[#002D16] := #0010B6;
941         am[#002D17] := #0010B7;
942         am[#002D18] := #0010B8;
943         am[#002D19] := #0010B9;
944         am[#002D1A] := #0010BA;
945         am[#002D1B] := #0010BB;
946         am[#002D1C] := #0010BC;
947         am[#002D1D] := #0010BD;
948         am[#002D1E] := #0010BE;
949         am[#002D1F] := #0010BF;
950         am[#002D20] := #0010C0;
951         am[#002D21] := #0010C1;
952         am[#002D22] := #0010C2;
953         am[#002D23] := #0010C3;
954         am[#002D24] := #0010C4;
955         am[#002D25] := #0010C5;
956         am[#002D27] := #0010C7;
957         am[#002D2D] := #0010CD;
958         am[#00A641] := #00A640;
959         am[#00A643] := #00A642;
960         am[#00A645] := #00A644;
961         am[#00A647] := #00A646;
962         am[#00A649] := #00A648;
963         am[#00A64B] := #00A64A;
964         am[#00A64D] := #00A64C;
965         am[#00A64F] := #00A64E;
966         am[#00A651] := #00A650;
967         am[#00A653] := #00A652;
968         am[#00A655] := #00A654;
969         am[#00A657] := #00A656;
970         am[#00A659] := #00A658;
971         am[#00A65B] := #00A65A;
972         am[#00A65D] := #00A65C;
973         am[#00A65F] := #00A65E;
974         am[#00A661] := #00A660;
975         am[#00A663] := #00A662;
976         am[#00A665] := #00A664;
977         am[#00A667] := #00A666;
978         am[#00A669] := #00A668;
979         am[#00A66B] := #00A66A;
980         am[#00A66D] := #00A66C;
981         am[#00A681] := #00A680;
982         am[#00A683] := #00A682;
983         am[#00A685] := #00A684;
984         am[#00A687] := #00A686;
985         am[#00A689] := #00A688;
986         am[#00A68B] := #00A68A;
987         am[#00A68D] := #00A68C;
988         am[#00A68F] := #00A68E;
989         am[#00A691] := #00A690;
990         am[#00A693] := #00A692;
991         am[#00A695] := #00A694;
992         am[#00A697] := #00A696;
993         am[#00A699] := #00A698;
994         am[#00A69B] := #00A69A;
995         am[#00A723] := #00A722;
996         am[#00A725] := #00A724;
997         am[#00A727] := #00A726;
998         am[#00A729] := #00A728;
999         am[#00A72B] := #00A72A;
1000         am[#00A72D] := #00A72C;
1001         am[#00A72F] := #00A72E;
1002         am[#00A733] := #00A732;
1003         am[#00A735] := #00A734;
1004         am[#00A737] := #00A736;
1005         am[#00A739] := #00A738;
1006         am[#00A73B] := #00A73A;
1007         am[#00A73D] := #00A73C;
1008         am[#00A73F] := #00A73E;
1009         am[#00A741] := #00A740;
1010         am[#00A743] := #00A742;
1011         am[#00A745] := #00A744;
1012         am[#00A747] := #00A746;
1013         am[#00A749] := #00A748;
1014         am[#00A74B] := #00A74A;
1015         am[#00A74D] := #00A74C;
1016         am[#00A74F] := #00A74E;
1017         am[#00A751] := #00A750;
1018         am[#00A753] := #00A752;
1019         am[#00A755] := #00A754;
1020         am[#00A757] := #00A756;
1021         am[#00A759] := #00A758;
1022         am[#00A75B] := #00A75A;
1023         am[#00A75D] := #00A75C;
1024         am[#00A75F] := #00A75E;
1025         am[#00A761] := #00A760;
1026         am[#00A763] := #00A762;
1027         am[#00A765] := #00A764;
1028         am[#00A767] := #00A766;
1029         am[#00A769] := #00A768;
1030         am[#00A76B] := #00A76A;
1031         am[#00A76D] := #00A76C;
1032         am[#00A76F] := #00A76E;
1033         am[#00A77A] := #00A779;
1034         am[#00A77C] := #00A77B;
1035         am[#00A77F] := #00A77E;
1036         am[#00A781] := #00A780;
1037         am[#00A783] := #00A782;
1038         am[#00A785] := #00A784;
1039         am[#00A787] := #00A786;
1040         am[#00A78C] := #00A78B;
1041         am[#00A791] := #00A790;
1042         am[#00A793] := #00A792;
1043         am[#00A797] := #00A796;
1044         am[#00A799] := #00A798;
1045         am[#00A79B] := #00A79A;
1046         am[#00A79D] := #00A79C;
1047         am[#00A79F] := #00A79E;
1048         am[#00A7A1] := #00A7A0;
1049         am[#00A7A3] := #00A7A2;
1050         am[#00A7A5] := #00A7A4;
1051         am[#00A7A7] := #00A7A6;
1052         am[#00A7A9] := #00A7A8;
1053         am[#00A7B5] := #00A7B4;
1054         am[#00A7B7] := #00A7B6;
1055         am[#00AB53] := #00A7B3;
1056         am[#00AB70] := #0013A0;
1057         am[#00AB71] := #0013A1;
1058         am[#00AB72] := #0013A2;
1059         am[#00AB73] := #0013A3;
1060         am[#00AB74] := #0013A4;
1061         am[#00AB75] := #0013A5;
1062         am[#00AB76] := #0013A6;
1063         am[#00AB77] := #0013A7;
1064         am[#00AB78] := #0013A8;
1065         am[#00AB79] := #0013A9;
1066         am[#00AB7A] := #0013AA;
1067         am[#00AB7B] := #0013AB;
1068         am[#00AB7C] := #0013AC;
1069         am[#00AB7D] := #0013AD;
1070         am[#00AB7E] := #0013AE;
1071         am[#00AB7F] := #0013AF;
1072         am[#00AB80] := #0013B0;
1073         am[#00AB81] := #0013B1;
1074         am[#00AB82] := #0013B2;
1075         am[#00AB83] := #0013B3;
1076         am[#00AB84] := #0013B4;
1077         am[#00AB85] := #0013B5;
1078         am[#00AB86] := #0013B6;
1079         am[#00AB87] := #0013B7;
1080         am[#00AB88] := #0013B8;
1081         am[#00AB89] := #0013B9;
1082         am[#00AB8A] := #0013BA;
1083         am[#00AB8B] := #0013BB;
1084         am[#00AB8C] := #0013BC;
1085         am[#00AB8D] := #0013BD;
1086         am[#00AB8E] := #0013BE;
1087         am[#00AB8F] := #0013BF;
1088         am[#00AB90] := #0013C0;
1089         am[#00AB91] := #0013C1;
1090         am[#00AB92] := #0013C2;
1091         am[#00AB93] := #0013C3;
1092         am[#00AB94] := #0013C4;
1093         am[#00AB95] := #0013C5;
1094         am[#00AB96] := #0013C6;
1095         am[#00AB97] := #0013C7;
1096         am[#00AB98] := #0013C8;
1097         am[#00AB99] := #0013C9;
1098         am[#00AB9A] := #0013CA;
1099         am[#00AB9B] := #0013CB;
1100         am[#00AB9C] := #0013CC;
1101         am[#00AB9D] := #0013CD;
1102         am[#00AB9E] := #0013CE;
1103         am[#00AB9F] := #0013CF;
1104         am[#00ABA0] := #0013D0;
1105         am[#00ABA1] := #0013D1;
1106         am[#00ABA2] := #0013D2;
1107         am[#00ABA3] := #0013D3;
1108         am[#00ABA4] := #0013D4;
1109         am[#00ABA5] := #0013D5;
1110         am[#00ABA6] := #0013D6;
1111         am[#00ABA7] := #0013D7;
1112         am[#00ABA8] := #0013D8;
1113         am[#00ABA9] := #0013D9;
1114         am[#00ABAA] := #0013DA;
1115         am[#00ABAB] := #0013DB;
1116         am[#00ABAC] := #0013DC;
1117         am[#00ABAD] := #0013DD;
1118         am[#00ABAE] := #0013DE;
1119         am[#00ABAF] := #0013DF;
1120         am[#00ABB0] := #0013E0;
1121         am[#00ABB1] := #0013E1;
1122         am[#00ABB2] := #0013E2;
1123         am[#00ABB3] := #0013E3;
1124         am[#00ABB4] := #0013E4;
1125         am[#00ABB5] := #0013E5;
1126         am[#00ABB6] := #0013E6;
1127         am[#00ABB7] := #0013E7;
1128         am[#00ABB8] := #0013E8;
1129         am[#00ABB9] := #0013E9;
1130         am[#00ABBA] := #0013EA;
1131         am[#00ABBB] := #0013EB;
1132         am[#00ABBC] := #0013EC;
1133         am[#00ABBD] := #0013ED;
1134         am[#00ABBE] := #0013EE;
1135         am[#00ABBF] := #0013EF;
1136         am[#00FF41] := #00FF21;
1137         am[#00FF42] := #00FF22;
1138         am[#00FF43] := #00FF23;
1139         am[#00FF44] := #00FF24;
1140         am[#00FF45] := #00FF25;
1141         am[#00FF46] := #00FF26;
1142         am[#00FF47] := #00FF27;
1143         am[#00FF48] := #00FF28;
1144         am[#00FF49] := #00FF29;
1145         am[#00FF4A] := #00FF2A;
1146         am[#00FF4B] := #00FF2B;
1147         am[#00FF4C] := #00FF2C;
1148         am[#00FF4D] := #00FF2D;
1149         am[#00FF4E] := #00FF2E;
1150         am[#00FF4F] := #00FF2F;
1151         am[#00FF50] := #00FF30;
1152         am[#00FF51] := #00FF31;
1153         am[#00FF52] := #00FF32;
1154         am[#00FF53] := #00FF33;
1155         am[#00FF54] := #00FF34;
1156         am[#00FF55] := #00FF35;
1157         am[#00FF56] := #00FF36;
1158         am[#00FF57] := #00FF37;
1159         am[#00FF58] := #00FF38;
1160         am[#00FF59] := #00FF39;
1161         am[#00FF5A] := #00FF3A;
1163         return am;
1166 const uni_locase~cache : array(char, [#110000])
1168         var am := array_sparse(char, 0, [#110000]);
1170         am[#000041] := #000061;
1171         am[#000042] := #000062;
1172         am[#000043] := #000063;
1173         am[#000044] := #000064;
1174         am[#000045] := #000065;
1175         am[#000046] := #000066;
1176         am[#000047] := #000067;
1177         am[#000048] := #000068;
1178         am[#000049] := #000069;
1179         am[#00004A] := #00006A;
1180         am[#00004B] := #00006B;
1181         am[#00004C] := #00006C;
1182         am[#00004D] := #00006D;
1183         am[#00004E] := #00006E;
1184         am[#00004F] := #00006F;
1185         am[#000050] := #000070;
1186         am[#000051] := #000071;
1187         am[#000052] := #000072;
1188         am[#000053] := #000073;
1189         am[#000054] := #000074;
1190         am[#000055] := #000075;
1191         am[#000056] := #000076;
1192         am[#000057] := #000077;
1193         am[#000058] := #000078;
1194         am[#000059] := #000079;
1195         am[#00005A] := #00007A;
1196         am[#00039C] := #0000B5;
1197         am[#0000C0] := #0000E0;
1198         am[#0000C1] := #0000E1;
1199         am[#0000C2] := #0000E2;
1200         am[#0000C3] := #0000E3;
1201         am[#0000C4] := #0000E4;
1202         am[#0000C5] := #0000E5;
1203         am[#0000C6] := #0000E6;
1204         am[#0000C7] := #0000E7;
1205         am[#0000C8] := #0000E8;
1206         am[#0000C9] := #0000E9;
1207         am[#0000CA] := #0000EA;
1208         am[#0000CB] := #0000EB;
1209         am[#0000CC] := #0000EC;
1210         am[#0000CD] := #0000ED;
1211         am[#0000CE] := #0000EE;
1212         am[#0000CF] := #0000EF;
1213         am[#0000D0] := #0000F0;
1214         am[#0000D1] := #0000F1;
1215         am[#0000D2] := #0000F2;
1216         am[#0000D3] := #0000F3;
1217         am[#0000D4] := #0000F4;
1218         am[#0000D5] := #0000F5;
1219         am[#0000D6] := #0000F6;
1220         am[#0000D8] := #0000F8;
1221         am[#0000D9] := #0000F9;
1222         am[#0000DA] := #0000FA;
1223         am[#0000DB] := #0000FB;
1224         am[#0000DC] := #0000FC;
1225         am[#0000DD] := #0000FD;
1226         am[#0000DE] := #0000FE;
1227         am[#000178] := #0000FF;
1228         am[#000100] := #000101;
1229         am[#000102] := #000103;
1230         am[#000104] := #000105;
1231         am[#000106] := #000107;
1232         am[#000108] := #000109;
1233         am[#00010A] := #00010B;
1234         am[#00010C] := #00010D;
1235         am[#00010E] := #00010F;
1236         am[#000110] := #000111;
1237         am[#000112] := #000113;
1238         am[#000114] := #000115;
1239         am[#000116] := #000117;
1240         am[#000118] := #000119;
1241         am[#00011A] := #00011B;
1242         am[#00011C] := #00011D;
1243         am[#00011E] := #00011F;
1244         am[#000120] := #000121;
1245         am[#000122] := #000123;
1246         am[#000124] := #000125;
1247         am[#000126] := #000127;
1248         am[#000128] := #000129;
1249         am[#00012A] := #00012B;
1250         am[#00012C] := #00012D;
1251         am[#00012E] := #00012F;
1252         am[#000049] := #000131;
1253         am[#000132] := #000133;
1254         am[#000134] := #000135;
1255         am[#000136] := #000137;
1256         am[#000139] := #00013A;
1257         am[#00013B] := #00013C;
1258         am[#00013D] := #00013E;
1259         am[#00013F] := #000140;
1260         am[#000141] := #000142;
1261         am[#000143] := #000144;
1262         am[#000145] := #000146;
1263         am[#000147] := #000148;
1264         am[#00014A] := #00014B;
1265         am[#00014C] := #00014D;
1266         am[#00014E] := #00014F;
1267         am[#000150] := #000151;
1268         am[#000152] := #000153;
1269         am[#000154] := #000155;
1270         am[#000156] := #000157;
1271         am[#000158] := #000159;
1272         am[#00015A] := #00015B;
1273         am[#00015C] := #00015D;
1274         am[#00015E] := #00015F;
1275         am[#000160] := #000161;
1276         am[#000162] := #000163;
1277         am[#000164] := #000165;
1278         am[#000166] := #000167;
1279         am[#000168] := #000169;
1280         am[#00016A] := #00016B;
1281         am[#00016C] := #00016D;
1282         am[#00016E] := #00016F;
1283         am[#000170] := #000171;
1284         am[#000172] := #000173;
1285         am[#000174] := #000175;
1286         am[#000176] := #000177;
1287         am[#000179] := #00017A;
1288         am[#00017B] := #00017C;
1289         am[#00017D] := #00017E;
1290         am[#000053] := #00017F;
1291         am[#000243] := #000180;
1292         am[#000182] := #000183;
1293         am[#000184] := #000185;
1294         am[#000187] := #000188;
1295         am[#00018B] := #00018C;
1296         am[#000191] := #000192;
1297         am[#0001F6] := #000195;
1298         am[#000198] := #000199;
1299         am[#00023D] := #00019A;
1300         am[#000220] := #00019E;
1301         am[#0001A0] := #0001A1;
1302         am[#0001A2] := #0001A3;
1303         am[#0001A4] := #0001A5;
1304         am[#0001A7] := #0001A8;
1305         am[#0001AC] := #0001AD;
1306         am[#0001AF] := #0001B0;
1307         am[#0001B3] := #0001B4;
1308         am[#0001B5] := #0001B6;
1309         am[#0001B8] := #0001B9;
1310         am[#0001BC] := #0001BD;
1311         am[#0001F7] := #0001BF;
1312         am[#0001C5] := #0001C4;
1313         am[#0001C5] := #0001C5;
1314         am[#0001C5] := #0001C6;
1315         am[#0001C8] := #0001C7;
1316         am[#0001C8] := #0001C8;
1317         am[#0001C8] := #0001C9;
1318         am[#0001CB] := #0001CA;
1319         am[#0001CB] := #0001CB;
1320         am[#0001CB] := #0001CC;
1321         am[#0001CD] := #0001CE;
1322         am[#0001CF] := #0001D0;
1323         am[#0001D1] := #0001D2;
1324         am[#0001D3] := #0001D4;
1325         am[#0001D5] := #0001D6;
1326         am[#0001D7] := #0001D8;
1327         am[#0001D9] := #0001DA;
1328         am[#0001DB] := #0001DC;
1329         am[#00018E] := #0001DD;
1330         am[#0001DE] := #0001DF;
1331         am[#0001E0] := #0001E1;
1332         am[#0001E2] := #0001E3;
1333         am[#0001E4] := #0001E5;
1334         am[#0001E6] := #0001E7;
1335         am[#0001E8] := #0001E9;
1336         am[#0001EA] := #0001EB;
1337         am[#0001EC] := #0001ED;
1338         am[#0001EE] := #0001EF;
1339         am[#0001F2] := #0001F1;
1340         am[#0001F2] := #0001F2;
1341         am[#0001F2] := #0001F3;
1342         am[#0001F4] := #0001F5;
1343         am[#0001F8] := #0001F9;
1344         am[#0001FA] := #0001FB;
1345         am[#0001FC] := #0001FD;
1346         am[#0001FE] := #0001FF;
1347         am[#000200] := #000201;
1348         am[#000202] := #000203;
1349         am[#000204] := #000205;
1350         am[#000206] := #000207;
1351         am[#000208] := #000209;
1352         am[#00020A] := #00020B;
1353         am[#00020C] := #00020D;
1354         am[#00020E] := #00020F;
1355         am[#000210] := #000211;
1356         am[#000212] := #000213;
1357         am[#000214] := #000215;
1358         am[#000216] := #000217;
1359         am[#000218] := #000219;
1360         am[#00021A] := #00021B;
1361         am[#00021C] := #00021D;
1362         am[#00021E] := #00021F;
1363         am[#000222] := #000223;
1364         am[#000224] := #000225;
1365         am[#000226] := #000227;
1366         am[#000228] := #000229;
1367         am[#00022A] := #00022B;
1368         am[#00022C] := #00022D;
1369         am[#00022E] := #00022F;
1370         am[#000230] := #000231;
1371         am[#000232] := #000233;
1372         am[#00023B] := #00023C;
1373         am[#002C7E] := #00023F;
1374         am[#002C7F] := #000240;
1375         am[#000241] := #000242;
1376         am[#000246] := #000247;
1377         am[#000248] := #000249;
1378         am[#00024A] := #00024B;
1379         am[#00024C] := #00024D;
1380         am[#00024E] := #00024F;
1381         am[#002C6F] := #000250;
1382         am[#002C6D] := #000251;
1383         am[#002C70] := #000252;
1384         am[#000181] := #000253;
1385         am[#000186] := #000254;
1386         am[#000189] := #000256;
1387         am[#00018A] := #000257;
1388         am[#00018F] := #000259;
1389         am[#000190] := #00025B;
1390         am[#00A7AB] := #00025C;
1391         am[#000193] := #000260;
1392         am[#00A7AC] := #000261;
1393         am[#000194] := #000263;
1394         am[#00A78D] := #000265;
1395         am[#00A7AA] := #000266;
1396         am[#000197] := #000268;
1397         am[#000196] := #000269;
1398         am[#00A7AE] := #00026A;
1399         am[#002C62] := #00026B;
1400         am[#00A7AD] := #00026C;
1401         am[#00019C] := #00026F;
1402         am[#002C6E] := #000271;
1403         am[#00019D] := #000272;
1404         am[#00019F] := #000275;
1405         am[#002C64] := #00027D;
1406         am[#0001A6] := #000280;
1407         am[#0001A9] := #000283;
1408         am[#00A7B1] := #000287;
1409         am[#0001AE] := #000288;
1410         am[#000244] := #000289;
1411         am[#0001B1] := #00028A;
1412         am[#0001B2] := #00028B;
1413         am[#000245] := #00028C;
1414         am[#0001B7] := #000292;
1415         am[#00A7B2] := #00029D;
1416         am[#00A7B0] := #00029E;
1417         am[#000399] := #000345;
1418         am[#000370] := #000371;
1419         am[#000372] := #000373;
1420         am[#000376] := #000377;
1421         am[#0003FD] := #00037B;
1422         am[#0003FE] := #00037C;
1423         am[#0003FF] := #00037D;
1424         am[#000386] := #0003AC;
1425         am[#000388] := #0003AD;
1426         am[#000389] := #0003AE;
1427         am[#00038A] := #0003AF;
1428         am[#000391] := #0003B1;
1429         am[#000392] := #0003B2;
1430         am[#000393] := #0003B3;
1431         am[#000394] := #0003B4;
1432         am[#000395] := #0003B5;
1433         am[#000396] := #0003B6;
1434         am[#000397] := #0003B7;
1435         am[#000398] := #0003B8;
1436         am[#000399] := #0003B9;
1437         am[#00039A] := #0003BA;
1438         am[#00039B] := #0003BB;
1439         am[#00039C] := #0003BC;
1440         am[#00039D] := #0003BD;
1441         am[#00039E] := #0003BE;
1442         am[#00039F] := #0003BF;
1443         am[#0003A0] := #0003C0;
1444         am[#0003A1] := #0003C1;
1445         am[#0003A3] := #0003C2;
1446         am[#0003A3] := #0003C3;
1447         am[#0003A4] := #0003C4;
1448         am[#0003A5] := #0003C5;
1449         am[#0003A6] := #0003C6;
1450         am[#0003A7] := #0003C7;
1451         am[#0003A8] := #0003C8;
1452         am[#0003A9] := #0003C9;
1453         am[#0003AA] := #0003CA;
1454         am[#0003AB] := #0003CB;
1455         am[#00038C] := #0003CC;
1456         am[#00038E] := #0003CD;
1457         am[#00038F] := #0003CE;
1458         am[#000392] := #0003D0;
1459         am[#000398] := #0003D1;
1460         am[#0003A6] := #0003D5;
1461         am[#0003A0] := #0003D6;
1462         am[#0003CF] := #0003D7;
1463         am[#0003D8] := #0003D9;
1464         am[#0003DA] := #0003DB;
1465         am[#0003DC] := #0003DD;
1466         am[#0003DE] := #0003DF;
1467         am[#0003E0] := #0003E1;
1468         am[#0003E2] := #0003E3;
1469         am[#0003E4] := #0003E5;
1470         am[#0003E6] := #0003E7;
1471         am[#0003E8] := #0003E9;
1472         am[#0003EA] := #0003EB;
1473         am[#0003EC] := #0003ED;
1474         am[#0003EE] := #0003EF;
1475         am[#00039A] := #0003F0;
1476         am[#0003A1] := #0003F1;
1477         am[#0003F9] := #0003F2;
1478         am[#00037F] := #0003F3;
1479         am[#000395] := #0003F5;
1480         am[#0003F7] := #0003F8;
1481         am[#0003FA] := #0003FB;
1482         am[#000410] := #000430;
1483         am[#000411] := #000431;
1484         am[#000412] := #000432;
1485         am[#000413] := #000433;
1486         am[#000414] := #000434;
1487         am[#000415] := #000435;
1488         am[#000416] := #000436;
1489         am[#000417] := #000437;
1490         am[#000418] := #000438;
1491         am[#000419] := #000439;
1492         am[#00041A] := #00043A;
1493         am[#00041B] := #00043B;
1494         am[#00041C] := #00043C;
1495         am[#00041D] := #00043D;
1496         am[#00041E] := #00043E;
1497         am[#00041F] := #00043F;
1498         am[#000420] := #000440;
1499         am[#000421] := #000441;
1500         am[#000422] := #000442;
1501         am[#000423] := #000443;
1502         am[#000424] := #000444;
1503         am[#000425] := #000445;
1504         am[#000426] := #000446;
1505         am[#000427] := #000447;
1506         am[#000428] := #000448;
1507         am[#000429] := #000449;
1508         am[#00042A] := #00044A;
1509         am[#00042B] := #00044B;
1510         am[#00042C] := #00044C;
1511         am[#00042D] := #00044D;
1512         am[#00042E] := #00044E;
1513         am[#00042F] := #00044F;
1514         am[#000400] := #000450;
1515         am[#000401] := #000451;
1516         am[#000402] := #000452;
1517         am[#000403] := #000453;
1518         am[#000404] := #000454;
1519         am[#000405] := #000455;
1520         am[#000406] := #000456;
1521         am[#000407] := #000457;
1522         am[#000408] := #000458;
1523         am[#000409] := #000459;
1524         am[#00040A] := #00045A;
1525         am[#00040B] := #00045B;
1526         am[#00040C] := #00045C;
1527         am[#00040D] := #00045D;
1528         am[#00040E] := #00045E;
1529         am[#00040F] := #00045F;
1530         am[#000460] := #000461;
1531         am[#000462] := #000463;
1532         am[#000464] := #000465;
1533         am[#000466] := #000467;
1534         am[#000468] := #000469;
1535         am[#00046A] := #00046B;
1536         am[#00046C] := #00046D;
1537         am[#00046E] := #00046F;
1538         am[#000470] := #000471;
1539         am[#000472] := #000473;
1540         am[#000474] := #000475;
1541         am[#000476] := #000477;
1542         am[#000478] := #000479;
1543         am[#00047A] := #00047B;
1544         am[#00047C] := #00047D;
1545         am[#00047E] := #00047F;
1546         am[#000480] := #000481;
1547         am[#00048A] := #00048B;
1548         am[#00048C] := #00048D;
1549         am[#00048E] := #00048F;
1550         am[#000490] := #000491;
1551         am[#000492] := #000493;
1552         am[#000494] := #000495;
1553         am[#000496] := #000497;
1554         am[#000498] := #000499;
1555         am[#00049A] := #00049B;
1556         am[#00049C] := #00049D;
1557         am[#00049E] := #00049F;
1558         am[#0004A0] := #0004A1;
1559         am[#0004A2] := #0004A3;
1560         am[#0004A4] := #0004A5;
1561         am[#0004A6] := #0004A7;
1562         am[#0004A8] := #0004A9;
1563         am[#0004AA] := #0004AB;
1564         am[#0004AC] := #0004AD;
1565         am[#0004AE] := #0004AF;
1566         am[#0004B0] := #0004B1;
1567         am[#0004B2] := #0004B3;
1568         am[#0004B4] := #0004B5;
1569         am[#0004B6] := #0004B7;
1570         am[#0004B8] := #0004B9;
1571         am[#0004BA] := #0004BB;
1572         am[#0004BC] := #0004BD;
1573         am[#0004BE] := #0004BF;
1574         am[#0004C1] := #0004C2;
1575         am[#0004C3] := #0004C4;
1576         am[#0004C5] := #0004C6;
1577         am[#0004C7] := #0004C8;
1578         am[#0004C9] := #0004CA;
1579         am[#0004CB] := #0004CC;
1580         am[#0004CD] := #0004CE;
1581         am[#0004C0] := #0004CF;
1582         am[#0004D0] := #0004D1;
1583         am[#0004D2] := #0004D3;
1584         am[#0004D4] := #0004D5;
1585         am[#0004D6] := #0004D7;
1586         am[#0004D8] := #0004D9;
1587         am[#0004DA] := #0004DB;
1588         am[#0004DC] := #0004DD;
1589         am[#0004DE] := #0004DF;
1590         am[#0004E0] := #0004E1;
1591         am[#0004E2] := #0004E3;
1592         am[#0004E4] := #0004E5;
1593         am[#0004E6] := #0004E7;
1594         am[#0004E8] := #0004E9;
1595         am[#0004EA] := #0004EB;
1596         am[#0004EC] := #0004ED;
1597         am[#0004EE] := #0004EF;
1598         am[#0004F0] := #0004F1;
1599         am[#0004F2] := #0004F3;
1600         am[#0004F4] := #0004F5;
1601         am[#0004F6] := #0004F7;
1602         am[#0004F8] := #0004F9;
1603         am[#0004FA] := #0004FB;
1604         am[#0004FC] := #0004FD;
1605         am[#0004FE] := #0004FF;
1606         am[#000500] := #000501;
1607         am[#000502] := #000503;
1608         am[#000504] := #000505;
1609         am[#000506] := #000507;
1610         am[#000508] := #000509;
1611         am[#00050A] := #00050B;
1612         am[#00050C] := #00050D;
1613         am[#00050E] := #00050F;
1614         am[#000510] := #000511;
1615         am[#000512] := #000513;
1616         am[#000514] := #000515;
1617         am[#000516] := #000517;
1618         am[#000518] := #000519;
1619         am[#00051A] := #00051B;
1620         am[#00051C] := #00051D;
1621         am[#00051E] := #00051F;
1622         am[#000520] := #000521;
1623         am[#000522] := #000523;
1624         am[#000524] := #000525;
1625         am[#000526] := #000527;
1626         am[#000528] := #000529;
1627         am[#00052A] := #00052B;
1628         am[#00052C] := #00052D;
1629         am[#00052E] := #00052F;
1630         am[#000531] := #000561;
1631         am[#000532] := #000562;
1632         am[#000533] := #000563;
1633         am[#000534] := #000564;
1634         am[#000535] := #000565;
1635         am[#000536] := #000566;
1636         am[#000537] := #000567;
1637         am[#000538] := #000568;
1638         am[#000539] := #000569;
1639         am[#00053A] := #00056A;
1640         am[#00053B] := #00056B;
1641         am[#00053C] := #00056C;
1642         am[#00053D] := #00056D;
1643         am[#00053E] := #00056E;
1644         am[#00053F] := #00056F;
1645         am[#000540] := #000570;
1646         am[#000541] := #000571;
1647         am[#000542] := #000572;
1648         am[#000543] := #000573;
1649         am[#000544] := #000574;
1650         am[#000545] := #000575;
1651         am[#000546] := #000576;
1652         am[#000547] := #000577;
1653         am[#000548] := #000578;
1654         am[#000549] := #000579;
1655         am[#00054A] := #00057A;
1656         am[#00054B] := #00057B;
1657         am[#00054C] := #00057C;
1658         am[#00054D] := #00057D;
1659         am[#00054E] := #00057E;
1660         am[#00054F] := #00057F;
1661         am[#000550] := #000580;
1662         am[#000551] := #000581;
1663         am[#000552] := #000582;
1664         am[#000553] := #000583;
1665         am[#000554] := #000584;
1666         am[#000555] := #000585;
1667         am[#000556] := #000586;
1668         am[#0013F0] := #0013F8;
1669         am[#0013F1] := #0013F9;
1670         am[#0013F2] := #0013FA;
1671         am[#0013F3] := #0013FB;
1672         am[#0013F4] := #0013FC;
1673         am[#0013F5] := #0013FD;
1674         am[#000412] := #001C80;
1675         am[#000414] := #001C81;
1676         am[#00041E] := #001C82;
1677         am[#000421] := #001C83;
1678         am[#000422] := #001C84;
1679         am[#000422] := #001C85;
1680         am[#00042A] := #001C86;
1681         am[#000462] := #001C87;
1682         am[#00A64A] := #001C88;
1683         am[#00A77D] := #001D79;
1684         am[#002C63] := #001D7D;
1685         am[#001E00] := #001E01;
1686         am[#001E02] := #001E03;
1687         am[#001E04] := #001E05;
1688         am[#001E06] := #001E07;
1689         am[#001E08] := #001E09;
1690         am[#001E0A] := #001E0B;
1691         am[#001E0C] := #001E0D;
1692         am[#001E0E] := #001E0F;
1693         am[#001E10] := #001E11;
1694         am[#001E12] := #001E13;
1695         am[#001E14] := #001E15;
1696         am[#001E16] := #001E17;
1697         am[#001E18] := #001E19;
1698         am[#001E1A] := #001E1B;
1699         am[#001E1C] := #001E1D;
1700         am[#001E1E] := #001E1F;
1701         am[#001E20] := #001E21;
1702         am[#001E22] := #001E23;
1703         am[#001E24] := #001E25;
1704         am[#001E26] := #001E27;
1705         am[#001E28] := #001E29;
1706         am[#001E2A] := #001E2B;
1707         am[#001E2C] := #001E2D;
1708         am[#001E2E] := #001E2F;
1709         am[#001E30] := #001E31;
1710         am[#001E32] := #001E33;
1711         am[#001E34] := #001E35;
1712         am[#001E36] := #001E37;
1713         am[#001E38] := #001E39;
1714         am[#001E3A] := #001E3B;
1715         am[#001E3C] := #001E3D;
1716         am[#001E3E] := #001E3F;
1717         am[#001E40] := #001E41;
1718         am[#001E42] := #001E43;
1719         am[#001E44] := #001E45;
1720         am[#001E46] := #001E47;
1721         am[#001E48] := #001E49;
1722         am[#001E4A] := #001E4B;
1723         am[#001E4C] := #001E4D;
1724         am[#001E4E] := #001E4F;
1725         am[#001E50] := #001E51;
1726         am[#001E52] := #001E53;
1727         am[#001E54] := #001E55;
1728         am[#001E56] := #001E57;
1729         am[#001E58] := #001E59;
1730         am[#001E5A] := #001E5B;
1731         am[#001E5C] := #001E5D;
1732         am[#001E5E] := #001E5F;
1733         am[#001E60] := #001E61;
1734         am[#001E62] := #001E63;
1735         am[#001E64] := #001E65;
1736         am[#001E66] := #001E67;
1737         am[#001E68] := #001E69;
1738         am[#001E6A] := #001E6B;
1739         am[#001E6C] := #001E6D;
1740         am[#001E6E] := #001E6F;
1741         am[#001E70] := #001E71;
1742         am[#001E72] := #001E73;
1743         am[#001E74] := #001E75;
1744         am[#001E76] := #001E77;
1745         am[#001E78] := #001E79;
1746         am[#001E7A] := #001E7B;
1747         am[#001E7C] := #001E7D;
1748         am[#001E7E] := #001E7F;
1749         am[#001E80] := #001E81;
1750         am[#001E82] := #001E83;
1751         am[#001E84] := #001E85;
1752         am[#001E86] := #001E87;
1753         am[#001E88] := #001E89;
1754         am[#001E8A] := #001E8B;
1755         am[#001E8C] := #001E8D;
1756         am[#001E8E] := #001E8F;
1757         am[#001E90] := #001E91;
1758         am[#001E92] := #001E93;
1759         am[#001E94] := #001E95;
1760         am[#001E60] := #001E9B;
1761         am[#001EA0] := #001EA1;
1762         am[#001EA2] := #001EA3;
1763         am[#001EA4] := #001EA5;
1764         am[#001EA6] := #001EA7;
1765         am[#001EA8] := #001EA9;
1766         am[#001EAA] := #001EAB;
1767         am[#001EAC] := #001EAD;
1768         am[#001EAE] := #001EAF;
1769         am[#001EB0] := #001EB1;
1770         am[#001EB2] := #001EB3;
1771         am[#001EB4] := #001EB5;
1772         am[#001EB6] := #001EB7;
1773         am[#001EB8] := #001EB9;
1774         am[#001EBA] := #001EBB;
1775         am[#001EBC] := #001EBD;
1776         am[#001EBE] := #001EBF;
1777         am[#001EC0] := #001EC1;
1778         am[#001EC2] := #001EC3;
1779         am[#001EC4] := #001EC5;
1780         am[#001EC6] := #001EC7;
1781         am[#001EC8] := #001EC9;
1782         am[#001ECA] := #001ECB;
1783         am[#001ECC] := #001ECD;
1784         am[#001ECE] := #001ECF;
1785         am[#001ED0] := #001ED1;
1786         am[#001ED2] := #001ED3;
1787         am[#001ED4] := #001ED5;
1788         am[#001ED6] := #001ED7;
1789         am[#001ED8] := #001ED9;
1790         am[#001EDA] := #001EDB;
1791         am[#001EDC] := #001EDD;
1792         am[#001EDE] := #001EDF;
1793         am[#001EE0] := #001EE1;
1794         am[#001EE2] := #001EE3;
1795         am[#001EE4] := #001EE5;
1796         am[#001EE6] := #001EE7;
1797         am[#001EE8] := #001EE9;
1798         am[#001EEA] := #001EEB;
1799         am[#001EEC] := #001EED;
1800         am[#001EEE] := #001EEF;
1801         am[#001EF0] := #001EF1;
1802         am[#001EF2] := #001EF3;
1803         am[#001EF4] := #001EF5;
1804         am[#001EF6] := #001EF7;
1805         am[#001EF8] := #001EF9;
1806         am[#001EFA] := #001EFB;
1807         am[#001EFC] := #001EFD;
1808         am[#001EFE] := #001EFF;
1809         am[#001F08] := #001F00;
1810         am[#001F09] := #001F01;
1811         am[#001F0A] := #001F02;
1812         am[#001F0B] := #001F03;
1813         am[#001F0C] := #001F04;
1814         am[#001F0D] := #001F05;
1815         am[#001F0E] := #001F06;
1816         am[#001F0F] := #001F07;
1817         am[#001F18] := #001F10;
1818         am[#001F19] := #001F11;
1819         am[#001F1A] := #001F12;
1820         am[#001F1B] := #001F13;
1821         am[#001F1C] := #001F14;
1822         am[#001F1D] := #001F15;
1823         am[#001F28] := #001F20;
1824         am[#001F29] := #001F21;
1825         am[#001F2A] := #001F22;
1826         am[#001F2B] := #001F23;
1827         am[#001F2C] := #001F24;
1828         am[#001F2D] := #001F25;
1829         am[#001F2E] := #001F26;
1830         am[#001F2F] := #001F27;
1831         am[#001F38] := #001F30;
1832         am[#001F39] := #001F31;
1833         am[#001F3A] := #001F32;
1834         am[#001F3B] := #001F33;
1835         am[#001F3C] := #001F34;
1836         am[#001F3D] := #001F35;
1837         am[#001F3E] := #001F36;
1838         am[#001F3F] := #001F37;
1839         am[#001F48] := #001F40;
1840         am[#001F49] := #001F41;
1841         am[#001F4A] := #001F42;
1842         am[#001F4B] := #001F43;
1843         am[#001F4C] := #001F44;
1844         am[#001F4D] := #001F45;
1845         am[#001F59] := #001F51;
1846         am[#001F5B] := #001F53;
1847         am[#001F5D] := #001F55;
1848         am[#001F5F] := #001F57;
1849         am[#001F68] := #001F60;
1850         am[#001F69] := #001F61;
1851         am[#001F6A] := #001F62;
1852         am[#001F6B] := #001F63;
1853         am[#001F6C] := #001F64;
1854         am[#001F6D] := #001F65;
1855         am[#001F6E] := #001F66;
1856         am[#001F6F] := #001F67;
1857         am[#001FBA] := #001F70;
1858         am[#001FBB] := #001F71;
1859         am[#001FC8] := #001F72;
1860         am[#001FC9] := #001F73;
1861         am[#001FCA] := #001F74;
1862         am[#001FCB] := #001F75;
1863         am[#001FDA] := #001F76;
1864         am[#001FDB] := #001F77;
1865         am[#001FF8] := #001F78;
1866         am[#001FF9] := #001F79;
1867         am[#001FEA] := #001F7A;
1868         am[#001FEB] := #001F7B;
1869         am[#001FFA] := #001F7C;
1870         am[#001FFB] := #001F7D;
1871         am[#001F88] := #001F80;
1872         am[#001F89] := #001F81;
1873         am[#001F8A] := #001F82;
1874         am[#001F8B] := #001F83;
1875         am[#001F8C] := #001F84;
1876         am[#001F8D] := #001F85;
1877         am[#001F8E] := #001F86;
1878         am[#001F8F] := #001F87;
1879         am[#001F98] := #001F90;
1880         am[#001F99] := #001F91;
1881         am[#001F9A] := #001F92;
1882         am[#001F9B] := #001F93;
1883         am[#001F9C] := #001F94;
1884         am[#001F9D] := #001F95;
1885         am[#001F9E] := #001F96;
1886         am[#001F9F] := #001F97;
1887         am[#001FA8] := #001FA0;
1888         am[#001FA9] := #001FA1;
1889         am[#001FAA] := #001FA2;
1890         am[#001FAB] := #001FA3;
1891         am[#001FAC] := #001FA4;
1892         am[#001FAD] := #001FA5;
1893         am[#001FAE] := #001FA6;
1894         am[#001FAF] := #001FA7;
1895         am[#001FB8] := #001FB0;
1896         am[#001FB9] := #001FB1;
1897         am[#001FBC] := #001FB3;
1898         am[#000399] := #001FBE;
1899         am[#001FCC] := #001FC3;
1900         am[#001FD8] := #001FD0;
1901         am[#001FD9] := #001FD1;
1902         am[#001FE8] := #001FE0;
1903         am[#001FE9] := #001FE1;
1904         am[#001FEC] := #001FE5;
1905         am[#001FFC] := #001FF3;
1906         am[#002132] := #00214E;
1907         am[#002160] := #002170;
1908         am[#002161] := #002171;
1909         am[#002162] := #002172;
1910         am[#002163] := #002173;
1911         am[#002164] := #002174;
1912         am[#002165] := #002175;
1913         am[#002166] := #002176;
1914         am[#002167] := #002177;
1915         am[#002168] := #002178;
1916         am[#002169] := #002179;
1917         am[#00216A] := #00217A;
1918         am[#00216B] := #00217B;
1919         am[#00216C] := #00217C;
1920         am[#00216D] := #00217D;
1921         am[#00216E] := #00217E;
1922         am[#00216F] := #00217F;
1923         am[#002183] := #002184;
1924         am[#0024B6] := #0024D0;
1925         am[#0024B7] := #0024D1;
1926         am[#0024B8] := #0024D2;
1927         am[#0024B9] := #0024D3;
1928         am[#0024BA] := #0024D4;
1929         am[#0024BB] := #0024D5;
1930         am[#0024BC] := #0024D6;
1931         am[#0024BD] := #0024D7;
1932         am[#0024BE] := #0024D8;
1933         am[#0024BF] := #0024D9;
1934         am[#0024C0] := #0024DA;
1935         am[#0024C1] := #0024DB;
1936         am[#0024C2] := #0024DC;
1937         am[#0024C3] := #0024DD;
1938         am[#0024C4] := #0024DE;
1939         am[#0024C5] := #0024DF;
1940         am[#0024C6] := #0024E0;
1941         am[#0024C7] := #0024E1;
1942         am[#0024C8] := #0024E2;
1943         am[#0024C9] := #0024E3;
1944         am[#0024CA] := #0024E4;
1945         am[#0024CB] := #0024E5;
1946         am[#0024CC] := #0024E6;
1947         am[#0024CD] := #0024E7;
1948         am[#0024CE] := #0024E8;
1949         am[#0024CF] := #0024E9;
1950         am[#002C00] := #002C30;
1951         am[#002C01] := #002C31;
1952         am[#002C02] := #002C32;
1953         am[#002C03] := #002C33;
1954         am[#002C04] := #002C34;
1955         am[#002C05] := #002C35;
1956         am[#002C06] := #002C36;
1957         am[#002C07] := #002C37;
1958         am[#002C08] := #002C38;
1959         am[#002C09] := #002C39;
1960         am[#002C0A] := #002C3A;
1961         am[#002C0B] := #002C3B;
1962         am[#002C0C] := #002C3C;
1963         am[#002C0D] := #002C3D;
1964         am[#002C0E] := #002C3E;
1965         am[#002C0F] := #002C3F;
1966         am[#002C10] := #002C40;
1967         am[#002C11] := #002C41;
1968         am[#002C12] := #002C42;
1969         am[#002C13] := #002C43;
1970         am[#002C14] := #002C44;
1971         am[#002C15] := #002C45;
1972         am[#002C16] := #002C46;
1973         am[#002C17] := #002C47;
1974         am[#002C18] := #002C48;
1975         am[#002C19] := #002C49;
1976         am[#002C1A] := #002C4A;
1977         am[#002C1B] := #002C4B;
1978         am[#002C1C] := #002C4C;
1979         am[#002C1D] := #002C4D;
1980         am[#002C1E] := #002C4E;
1981         am[#002C1F] := #002C4F;
1982         am[#002C20] := #002C50;
1983         am[#002C21] := #002C51;
1984         am[#002C22] := #002C52;
1985         am[#002C23] := #002C53;
1986         am[#002C24] := #002C54;
1987         am[#002C25] := #002C55;
1988         am[#002C26] := #002C56;
1989         am[#002C27] := #002C57;
1990         am[#002C28] := #002C58;
1991         am[#002C29] := #002C59;
1992         am[#002C2A] := #002C5A;
1993         am[#002C2B] := #002C5B;
1994         am[#002C2C] := #002C5C;
1995         am[#002C2D] := #002C5D;
1996         am[#002C2E] := #002C5E;
1997         am[#002C60] := #002C61;
1998         am[#00023A] := #002C65;
1999         am[#00023E] := #002C66;
2000         am[#002C67] := #002C68;
2001         am[#002C69] := #002C6A;
2002         am[#002C6B] := #002C6C;
2003         am[#002C72] := #002C73;
2004         am[#002C75] := #002C76;
2005         am[#002C80] := #002C81;
2006         am[#002C82] := #002C83;
2007         am[#002C84] := #002C85;
2008         am[#002C86] := #002C87;
2009         am[#002C88] := #002C89;
2010         am[#002C8A] := #002C8B;
2011         am[#002C8C] := #002C8D;
2012         am[#002C8E] := #002C8F;
2013         am[#002C90] := #002C91;
2014         am[#002C92] := #002C93;
2015         am[#002C94] := #002C95;
2016         am[#002C96] := #002C97;
2017         am[#002C98] := #002C99;
2018         am[#002C9A] := #002C9B;
2019         am[#002C9C] := #002C9D;
2020         am[#002C9E] := #002C9F;
2021         am[#002CA0] := #002CA1;
2022         am[#002CA2] := #002CA3;
2023         am[#002CA4] := #002CA5;
2024         am[#002CA6] := #002CA7;
2025         am[#002CA8] := #002CA9;
2026         am[#002CAA] := #002CAB;
2027         am[#002CAC] := #002CAD;
2028         am[#002CAE] := #002CAF;
2029         am[#002CB0] := #002CB1;
2030         am[#002CB2] := #002CB3;
2031         am[#002CB4] := #002CB5;
2032         am[#002CB6] := #002CB7;
2033         am[#002CB8] := #002CB9;
2034         am[#002CBA] := #002CBB;
2035         am[#002CBC] := #002CBD;
2036         am[#002CBE] := #002CBF;
2037         am[#002CC0] := #002CC1;
2038         am[#002CC2] := #002CC3;
2039         am[#002CC4] := #002CC5;
2040         am[#002CC6] := #002CC7;
2041         am[#002CC8] := #002CC9;
2042         am[#002CCA] := #002CCB;
2043         am[#002CCC] := #002CCD;
2044         am[#002CCE] := #002CCF;
2045         am[#002CD0] := #002CD1;
2046         am[#002CD2] := #002CD3;
2047         am[#002CD4] := #002CD5;
2048         am[#002CD6] := #002CD7;
2049         am[#002CD8] := #002CD9;
2050         am[#002CDA] := #002CDB;
2051         am[#002CDC] := #002CDD;
2052         am[#002CDE] := #002CDF;
2053         am[#002CE0] := #002CE1;
2054         am[#002CE2] := #002CE3;
2055         am[#002CEB] := #002CEC;
2056         am[#002CED] := #002CEE;
2057         am[#002CF2] := #002CF3;
2058         am[#0010A0] := #002D00;
2059         am[#0010A1] := #002D01;
2060         am[#0010A2] := #002D02;
2061         am[#0010A3] := #002D03;
2062         am[#0010A4] := #002D04;
2063         am[#0010A5] := #002D05;
2064         am[#0010A6] := #002D06;
2065         am[#0010A7] := #002D07;
2066         am[#0010A8] := #002D08;
2067         am[#0010A9] := #002D09;
2068         am[#0010AA] := #002D0A;
2069         am[#0010AB] := #002D0B;
2070         am[#0010AC] := #002D0C;
2071         am[#0010AD] := #002D0D;
2072         am[#0010AE] := #002D0E;
2073         am[#0010AF] := #002D0F;
2074         am[#0010B0] := #002D10;
2075         am[#0010B1] := #002D11;
2076         am[#0010B2] := #002D12;
2077         am[#0010B3] := #002D13;
2078         am[#0010B4] := #002D14;
2079         am[#0010B5] := #002D15;
2080         am[#0010B6] := #002D16;
2081         am[#0010B7] := #002D17;
2082         am[#0010B8] := #002D18;
2083         am[#0010B9] := #002D19;
2084         am[#0010BA] := #002D1A;
2085         am[#0010BB] := #002D1B;
2086         am[#0010BC] := #002D1C;
2087         am[#0010BD] := #002D1D;
2088         am[#0010BE] := #002D1E;
2089         am[#0010BF] := #002D1F;
2090         am[#0010C0] := #002D20;
2091         am[#0010C1] := #002D21;
2092         am[#0010C2] := #002D22;
2093         am[#0010C3] := #002D23;
2094         am[#0010C4] := #002D24;
2095         am[#0010C5] := #002D25;
2096         am[#0010C7] := #002D27;
2097         am[#0010CD] := #002D2D;
2098         am[#00A640] := #00A641;
2099         am[#00A642] := #00A643;
2100         am[#00A644] := #00A645;
2101         am[#00A646] := #00A647;
2102         am[#00A648] := #00A649;
2103         am[#00A64A] := #00A64B;
2104         am[#00A64C] := #00A64D;
2105         am[#00A64E] := #00A64F;
2106         am[#00A650] := #00A651;
2107         am[#00A652] := #00A653;
2108         am[#00A654] := #00A655;
2109         am[#00A656] := #00A657;
2110         am[#00A658] := #00A659;
2111         am[#00A65A] := #00A65B;
2112         am[#00A65C] := #00A65D;
2113         am[#00A65E] := #00A65F;
2114         am[#00A660] := #00A661;
2115         am[#00A662] := #00A663;
2116         am[#00A664] := #00A665;
2117         am[#00A666] := #00A667;
2118         am[#00A668] := #00A669;
2119         am[#00A66A] := #00A66B;
2120         am[#00A66C] := #00A66D;
2121         am[#00A680] := #00A681;
2122         am[#00A682] := #00A683;
2123         am[#00A684] := #00A685;
2124         am[#00A686] := #00A687;
2125         am[#00A688] := #00A689;
2126         am[#00A68A] := #00A68B;
2127         am[#00A68C] := #00A68D;
2128         am[#00A68E] := #00A68F;
2129         am[#00A690] := #00A691;
2130         am[#00A692] := #00A693;
2131         am[#00A694] := #00A695;
2132         am[#00A696] := #00A697;
2133         am[#00A698] := #00A699;
2134         am[#00A69A] := #00A69B;
2135         am[#00A722] := #00A723;
2136         am[#00A724] := #00A725;
2137         am[#00A726] := #00A727;
2138         am[#00A728] := #00A729;
2139         am[#00A72A] := #00A72B;
2140         am[#00A72C] := #00A72D;
2141         am[#00A72E] := #00A72F;
2142         am[#00A732] := #00A733;
2143         am[#00A734] := #00A735;
2144         am[#00A736] := #00A737;
2145         am[#00A738] := #00A739;
2146         am[#00A73A] := #00A73B;
2147         am[#00A73C] := #00A73D;
2148         am[#00A73E] := #00A73F;
2149         am[#00A740] := #00A741;
2150         am[#00A742] := #00A743;
2151         am[#00A744] := #00A745;
2152         am[#00A746] := #00A747;
2153         am[#00A748] := #00A749;
2154         am[#00A74A] := #00A74B;
2155         am[#00A74C] := #00A74D;
2156         am[#00A74E] := #00A74F;
2157         am[#00A750] := #00A751;
2158         am[#00A752] := #00A753;
2159         am[#00A754] := #00A755;
2160         am[#00A756] := #00A757;
2161         am[#00A758] := #00A759;
2162         am[#00A75A] := #00A75B;
2163         am[#00A75C] := #00A75D;
2164         am[#00A75E] := #00A75F;
2165         am[#00A760] := #00A761;
2166         am[#00A762] := #00A763;
2167         am[#00A764] := #00A765;
2168         am[#00A766] := #00A767;
2169         am[#00A768] := #00A769;
2170         am[#00A76A] := #00A76B;
2171         am[#00A76C] := #00A76D;
2172         am[#00A76E] := #00A76F;
2173         am[#00A779] := #00A77A;
2174         am[#00A77B] := #00A77C;
2175         am[#00A77E] := #00A77F;
2176         am[#00A780] := #00A781;
2177         am[#00A782] := #00A783;
2178         am[#00A784] := #00A785;
2179         am[#00A786] := #00A787;
2180         am[#00A78B] := #00A78C;
2181         am[#00A790] := #00A791;
2182         am[#00A792] := #00A793;
2183         am[#00A796] := #00A797;
2184         am[#00A798] := #00A799;
2185         am[#00A79A] := #00A79B;
2186         am[#00A79C] := #00A79D;
2187         am[#00A79E] := #00A79F;
2188         am[#00A7A0] := #00A7A1;
2189         am[#00A7A2] := #00A7A3;
2190         am[#00A7A4] := #00A7A5;
2191         am[#00A7A6] := #00A7A7;
2192         am[#00A7A8] := #00A7A9;
2193         am[#00A7B4] := #00A7B5;
2194         am[#00A7B6] := #00A7B7;
2195         am[#00A7B3] := #00AB53;
2196         am[#0013A0] := #00AB70;
2197         am[#0013A1] := #00AB71;
2198         am[#0013A2] := #00AB72;
2199         am[#0013A3] := #00AB73;
2200         am[#0013A4] := #00AB74;
2201         am[#0013A5] := #00AB75;
2202         am[#0013A6] := #00AB76;
2203         am[#0013A7] := #00AB77;
2204         am[#0013A8] := #00AB78;
2205         am[#0013A9] := #00AB79;
2206         am[#0013AA] := #00AB7A;
2207         am[#0013AB] := #00AB7B;
2208         am[#0013AC] := #00AB7C;
2209         am[#0013AD] := #00AB7D;
2210         am[#0013AE] := #00AB7E;
2211         am[#0013AF] := #00AB7F;
2212         am[#0013B0] := #00AB80;
2213         am[#0013B1] := #00AB81;
2214         am[#0013B2] := #00AB82;
2215         am[#0013B3] := #00AB83;
2216         am[#0013B4] := #00AB84;
2217         am[#0013B5] := #00AB85;
2218         am[#0013B6] := #00AB86;
2219         am[#0013B7] := #00AB87;
2220         am[#0013B8] := #00AB88;
2221         am[#0013B9] := #00AB89;
2222         am[#0013BA] := #00AB8A;
2223         am[#0013BB] := #00AB8B;
2224         am[#0013BC] := #00AB8C;
2225         am[#0013BD] := #00AB8D;
2226         am[#0013BE] := #00AB8E;
2227         am[#0013BF] := #00AB8F;
2228         am[#0013C0] := #00AB90;
2229         am[#0013C1] := #00AB91;
2230         am[#0013C2] := #00AB92;
2231         am[#0013C3] := #00AB93;
2232         am[#0013C4] := #00AB94;
2233         am[#0013C5] := #00AB95;
2234         am[#0013C6] := #00AB96;
2235         am[#0013C7] := #00AB97;
2236         am[#0013C8] := #00AB98;
2237         am[#0013C9] := #00AB99;
2238         am[#0013CA] := #00AB9A;
2239         am[#0013CB] := #00AB9B;
2240         am[#0013CC] := #00AB9C;
2241         am[#0013CD] := #00AB9D;
2242         am[#0013CE] := #00AB9E;
2243         am[#0013CF] := #00AB9F;
2244         am[#0013D0] := #00ABA0;
2245         am[#0013D1] := #00ABA1;
2246         am[#0013D2] := #00ABA2;
2247         am[#0013D3] := #00ABA3;
2248         am[#0013D4] := #00ABA4;
2249         am[#0013D5] := #00ABA5;
2250         am[#0013D6] := #00ABA6;
2251         am[#0013D7] := #00ABA7;
2252         am[#0013D8] := #00ABA8;
2253         am[#0013D9] := #00ABA9;
2254         am[#0013DA] := #00ABAA;
2255         am[#0013DB] := #00ABAB;
2256         am[#0013DC] := #00ABAC;
2257         am[#0013DD] := #00ABAD;
2258         am[#0013DE] := #00ABAE;
2259         am[#0013DF] := #00ABAF;
2260         am[#0013E0] := #00ABB0;
2261         am[#0013E1] := #00ABB1;
2262         am[#0013E2] := #00ABB2;
2263         am[#0013E3] := #00ABB3;
2264         am[#0013E4] := #00ABB4;
2265         am[#0013E5] := #00ABB5;
2266         am[#0013E6] := #00ABB6;
2267         am[#0013E7] := #00ABB7;
2268         am[#0013E8] := #00ABB8;
2269         am[#0013E9] := #00ABB9;
2270         am[#0013EA] := #00ABBA;
2271         am[#0013EB] := #00ABBB;
2272         am[#0013EC] := #00ABBC;
2273         am[#0013ED] := #00ABBD;
2274         am[#0013EE] := #00ABBE;
2275         am[#0013EF] := #00ABBF;
2276         am[#00FF21] := #00FF41;
2277         am[#00FF22] := #00FF42;
2278         am[#00FF23] := #00FF43;
2279         am[#00FF24] := #00FF44;
2280         am[#00FF25] := #00FF45;
2281         am[#00FF26] := #00FF46;
2282         am[#00FF27] := #00FF47;
2283         am[#00FF28] := #00FF48;
2284         am[#00FF29] := #00FF49;
2285         am[#00FF2A] := #00FF4A;
2286         am[#00FF2B] := #00FF4B;
2287         am[#00FF2C] := #00FF4C;
2288         am[#00FF2D] := #00FF4D;
2289         am[#00FF2E] := #00FF4E;
2290         am[#00FF2F] := #00FF4F;
2291         am[#00FF30] := #00FF50;
2292         am[#00FF31] := #00FF51;
2293         am[#00FF32] := #00FF52;
2294         am[#00FF33] := #00FF53;
2295         am[#00FF34] := #00FF54;
2296         am[#00FF35] := #00FF55;
2297         am[#00FF36] := #00FF56;
2298         am[#00FF37] := #00FF57;
2299         am[#00FF38] := #00FF58;
2300         am[#00FF39] := #00FF59;
2301         am[#00FF3A] := #00FF5A;
2303         return am;