xref: /trunk/main/sal/textenc/tcvtkr6.tab (revision 11594ab6)
1*11594ab6SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3*11594ab6SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4*11594ab6SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5*11594ab6SAndrew Rist * distributed with this work for additional information
6*11594ab6SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7*11594ab6SAndrew Rist * to you under the Apache License, Version 2.0 (the
8*11594ab6SAndrew Rist * "License"); you may not use this file except in compliance
9*11594ab6SAndrew Rist * with the License.  You may obtain a copy of the License at
10*11594ab6SAndrew Rist *
11*11594ab6SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12*11594ab6SAndrew Rist *
13*11594ab6SAndrew Rist * Unless required by applicable law or agreed to in writing,
14*11594ab6SAndrew Rist * software distributed under the License is distributed on an
15*11594ab6SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*11594ab6SAndrew Rist * KIND, either express or implied.  See the License for the
17*11594ab6SAndrew Rist * specific language governing permissions and limitations
18*11594ab6SAndrew Rist * under the License.
19*11594ab6SAndrew Rist *
20*11594ab6SAndrew Rist *************************************************************/
21*11594ab6SAndrew Rist
22*11594ab6SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir/* ======================================================================= */
25cdf0e10cSrcweir
26cdf0e10cSrcweir/* This file contain the information tables for all  */
27cdf0e10cSrcweir/* korean charsets: */
28cdf0e10cSrcweir/* CP949, JOHAB */
29cdf0e10cSrcweir
30cdf0e10cSrcweir/* ======================================================================= */
31cdf0e10cSrcweir
32cdf0e10cSrcweirstatic ImplDBCSToUniLeadTab const aKSC5601UniLeadTab[256] =
33cdf0e10cSrcweir{
34cdf0e10cSrcweir    { 0x0000,    0,    0, NULL },                               /* 0x00 */
35cdf0e10cSrcweir    { 0x0001,    0,    0, NULL },                               /* 0x01 */
36cdf0e10cSrcweir    { 0x0002,    0,    0, NULL },                               /* 0x02 */
37cdf0e10cSrcweir    { 0x0003,    0,    0, NULL },                               /* 0x03 */
38cdf0e10cSrcweir    { 0x0004,    0,    0, NULL },                               /* 0x04 */
39cdf0e10cSrcweir    { 0x0005,    0,    0, NULL },                               /* 0x05 */
40cdf0e10cSrcweir    { 0x0006,    0,    0, NULL },                               /* 0x06 */
41cdf0e10cSrcweir    { 0x0007,    0,    0, NULL },                               /* 0x07 */
42cdf0e10cSrcweir    { 0x0008,    0,    0, NULL },                               /* 0x08 */
43cdf0e10cSrcweir    { 0x0009,    0,    0, NULL },                               /* 0x09 */
44cdf0e10cSrcweir    { 0x000A,    0,    0, NULL },                               /* 0x0A */
45cdf0e10cSrcweir    { 0x000B,    0,    0, NULL },                               /* 0x0B */
46cdf0e10cSrcweir    { 0x000C,    0,    0, NULL },                               /* 0x0C */
47cdf0e10cSrcweir    { 0x000D,    0,    0, NULL },                               /* 0x0D */
48cdf0e10cSrcweir    { 0x000E,    0,    0, NULL },                               /* 0x0E */
49cdf0e10cSrcweir    { 0x000F,    0,    0, NULL },                               /* 0x0F */
50cdf0e10cSrcweir    { 0x0010,    0,    0, NULL },                               /* 0x10 */
51cdf0e10cSrcweir    { 0x0011,    0,    0, NULL },                               /* 0x11 */
52cdf0e10cSrcweir    { 0x0012,    0,    0, NULL },                               /* 0x12 */
53cdf0e10cSrcweir    { 0x0013,    0,    0, NULL },                               /* 0x13 */
54cdf0e10cSrcweir    { 0x0014,    0,    0, NULL },                               /* 0x14 */
55cdf0e10cSrcweir    { 0x0015,    0,    0, NULL },                               /* 0x15 */
56cdf0e10cSrcweir    { 0x0016,    0,    0, NULL },                               /* 0x16 */
57cdf0e10cSrcweir    { 0x0017,    0,    0, NULL },                               /* 0x17 */
58cdf0e10cSrcweir    { 0x0018,    0,    0, NULL },                               /* 0x18 */
59cdf0e10cSrcweir    { 0x0019,    0,    0, NULL },                               /* 0x19 */
60cdf0e10cSrcweir    { 0x001A,    0,    0, NULL },                               /* 0x1A */
61cdf0e10cSrcweir    { 0x001B,    0,    0, NULL },                               /* 0x1B */
62cdf0e10cSrcweir    { 0x001C,    0,    0, NULL },                               /* 0x1C */
63cdf0e10cSrcweir    { 0x001D,    0,    0, NULL },                               /* 0x1D */
64cdf0e10cSrcweir    { 0x001E,    0,    0, NULL },                               /* 0x1E */
65cdf0e10cSrcweir    { 0x001F,    0,    0, NULL },                               /* 0x1F */
66cdf0e10cSrcweir    { 0x0020,    0,    0, NULL },                               /* 0x20 */
67cdf0e10cSrcweir    { 0x0021,    0,    0, NULL },                               /* 0x21 */
68cdf0e10cSrcweir    { 0x0022,    0,    0, NULL },                               /* 0x22 */
69cdf0e10cSrcweir    { 0x0023,    0,    0, NULL },                               /* 0x23 */
70cdf0e10cSrcweir    { 0x0024,    0,    0, NULL },                               /* 0x24 */
71cdf0e10cSrcweir    { 0x0025,    0,    0, NULL },                               /* 0x25 */
72cdf0e10cSrcweir    { 0x0026,    0,    0, NULL },                               /* 0x26 */
73cdf0e10cSrcweir    { 0x0027,    0,    0, NULL },                               /* 0x27 */
74cdf0e10cSrcweir    { 0x0028,    0,    0, NULL },                               /* 0x28 */
75cdf0e10cSrcweir    { 0x0029,    0,    0, NULL },                               /* 0x29 */
76cdf0e10cSrcweir    { 0x002A,    0,    0, NULL },                               /* 0x2A */
77cdf0e10cSrcweir    { 0x002B,    0,    0, NULL },                               /* 0x2B */
78cdf0e10cSrcweir    { 0x002C,    0,    0, NULL },                               /* 0x2C */
79cdf0e10cSrcweir    { 0x002D,    0,    0, NULL },                               /* 0x2D */
80cdf0e10cSrcweir    { 0x002E,    0,    0, NULL },                               /* 0x2E */
81cdf0e10cSrcweir    { 0x002F,    0,    0, NULL },                               /* 0x2F */
82cdf0e10cSrcweir    { 0x0030,    0,    0, NULL },                               /* 0x30 */
83cdf0e10cSrcweir    { 0x0031,    0,    0, NULL },                               /* 0x31 */
84cdf0e10cSrcweir    { 0x0032,    0,    0, NULL },                               /* 0x32 */
85cdf0e10cSrcweir    { 0x0033,    0,    0, NULL },                               /* 0x33 */
86cdf0e10cSrcweir    { 0x0034,    0,    0, NULL },                               /* 0x34 */
87cdf0e10cSrcweir    { 0x0035,    0,    0, NULL },                               /* 0x35 */
88cdf0e10cSrcweir    { 0x0036,    0,    0, NULL },                               /* 0x36 */
89cdf0e10cSrcweir    { 0x0037,    0,    0, NULL },                               /* 0x37 */
90cdf0e10cSrcweir    { 0x0038,    0,    0, NULL },                               /* 0x38 */
91cdf0e10cSrcweir    { 0x0039,    0,    0, NULL },                               /* 0x39 */
92cdf0e10cSrcweir    { 0x003A,    0,    0, NULL },                               /* 0x3A */
93cdf0e10cSrcweir    { 0x003B,    0,    0, NULL },                               /* 0x3B */
94cdf0e10cSrcweir    { 0x003C,    0,    0, NULL },                               /* 0x3C */
95cdf0e10cSrcweir    { 0x003D,    0,    0, NULL },                               /* 0x3D */
96cdf0e10cSrcweir    { 0x003E,    0,    0, NULL },                               /* 0x3E */
97cdf0e10cSrcweir    { 0x003F,    0,    0, NULL },                               /* 0x3F */
98cdf0e10cSrcweir    { 0x0040,    0,    0, NULL },                               /* 0x40 */
99cdf0e10cSrcweir    { 0x0041,    0,    0, NULL },                               /* 0x41 */
100cdf0e10cSrcweir    { 0x0042,    0,    0, NULL },                               /* 0x42 */
101cdf0e10cSrcweir    { 0x0043,    0,    0, NULL },                               /* 0x43 */
102cdf0e10cSrcweir    { 0x0044,    0,    0, NULL },                               /* 0x44 */
103cdf0e10cSrcweir    { 0x0045,    0,    0, NULL },                               /* 0x45 */
104cdf0e10cSrcweir    { 0x0046,    0,    0, NULL },                               /* 0x46 */
105cdf0e10cSrcweir    { 0x0047,    0,    0, NULL },                               /* 0x47 */
106cdf0e10cSrcweir    { 0x0048,    0,    0, NULL },                               /* 0x48 */
107cdf0e10cSrcweir    { 0x0049,    0,    0, NULL },                               /* 0x49 */
108cdf0e10cSrcweir    { 0x004A,    0,    0, NULL },                               /* 0x4A */
109cdf0e10cSrcweir    { 0x004B,    0,    0, NULL },                               /* 0x4B */
110cdf0e10cSrcweir    { 0x004C,    0,    0, NULL },                               /* 0x4C */
111cdf0e10cSrcweir    { 0x004D,    0,    0, NULL },                               /* 0x4D */
112cdf0e10cSrcweir    { 0x004E,    0,    0, NULL },                               /* 0x4E */
113cdf0e10cSrcweir    { 0x004F,    0,    0, NULL },                               /* 0x4F */
114cdf0e10cSrcweir    { 0x0050,    0,    0, NULL },                               /* 0x50 */
115cdf0e10cSrcweir    { 0x0051,    0,    0, NULL },                               /* 0x51 */
116cdf0e10cSrcweir    { 0x0052,    0,    0, NULL },                               /* 0x52 */
117cdf0e10cSrcweir    { 0x0053,    0,    0, NULL },                               /* 0x53 */
118cdf0e10cSrcweir    { 0x0054,    0,    0, NULL },                               /* 0x54 */
119cdf0e10cSrcweir    { 0x0055,    0,    0, NULL },                               /* 0x55 */
120cdf0e10cSrcweir    { 0x0056,    0,    0, NULL },                               /* 0x56 */
121cdf0e10cSrcweir    { 0x0057,    0,    0, NULL },                               /* 0x57 */
122cdf0e10cSrcweir    { 0x0058,    0,    0, NULL },                               /* 0x58 */
123cdf0e10cSrcweir    { 0x0059,    0,    0, NULL },                               /* 0x59 */
124cdf0e10cSrcweir    { 0x005A,    0,    0, NULL },                               /* 0x5A */
125cdf0e10cSrcweir    { 0x005B,    0,    0, NULL },                               /* 0x5B */
126cdf0e10cSrcweir    { 0x005C,    0,    0, NULL },                               /* 0x5C */
127cdf0e10cSrcweir    { 0x005D,    0,    0, NULL },                               /* 0x5D */
128cdf0e10cSrcweir    { 0x005E,    0,    0, NULL },                               /* 0x5E */
129cdf0e10cSrcweir    { 0x005F,    0,    0, NULL },                               /* 0x5F */
130cdf0e10cSrcweir    { 0x0060,    0,    0, NULL },                               /* 0x60 */
131cdf0e10cSrcweir    { 0x0061,    0,    0, NULL },                               /* 0x61 */
132cdf0e10cSrcweir    { 0x0062,    0,    0, NULL },                               /* 0x62 */
133cdf0e10cSrcweir    { 0x0063,    0,    0, NULL },                               /* 0x63 */
134cdf0e10cSrcweir    { 0x0064,    0,    0, NULL },                               /* 0x64 */
135cdf0e10cSrcweir    { 0x0065,    0,    0, NULL },                               /* 0x65 */
136cdf0e10cSrcweir    { 0x0066,    0,    0, NULL },                               /* 0x66 */
137cdf0e10cSrcweir    { 0x0067,    0,    0, NULL },                               /* 0x67 */
138cdf0e10cSrcweir    { 0x0068,    0,    0, NULL },                               /* 0x68 */
139cdf0e10cSrcweir    { 0x0069,    0,    0, NULL },                               /* 0x69 */
140cdf0e10cSrcweir    { 0x006A,    0,    0, NULL },                               /* 0x6A */
141cdf0e10cSrcweir    { 0x006B,    0,    0, NULL },                               /* 0x6B */
142cdf0e10cSrcweir    { 0x006C,    0,    0, NULL },                               /* 0x6C */
143cdf0e10cSrcweir    { 0x006D,    0,    0, NULL },                               /* 0x6D */
144cdf0e10cSrcweir    { 0x006E,    0,    0, NULL },                               /* 0x6E */
145cdf0e10cSrcweir    { 0x006F,    0,    0, NULL },                               /* 0x6F */
146cdf0e10cSrcweir    { 0x0070,    0,    0, NULL },                               /* 0x70 */
147cdf0e10cSrcweir    { 0x0071,    0,    0, NULL },                               /* 0x71 */
148cdf0e10cSrcweir    { 0x0072,    0,    0, NULL },                               /* 0x72 */
149cdf0e10cSrcweir    { 0x0073,    0,    0, NULL },                               /* 0x73 */
150cdf0e10cSrcweir    { 0x0074,    0,    0, NULL },                               /* 0x74 */
151cdf0e10cSrcweir    { 0x0075,    0,    0, NULL },                               /* 0x75 */
152cdf0e10cSrcweir    { 0x0076,    0,    0, NULL },                               /* 0x76 */
153cdf0e10cSrcweir    { 0x0077,    0,    0, NULL },                               /* 0x77 */
154cdf0e10cSrcweir    { 0x0078,    0,    0, NULL },                               /* 0x78 */
155cdf0e10cSrcweir    { 0x0079,    0,    0, NULL },                               /* 0x79 */
156cdf0e10cSrcweir    { 0x007A,    0,    0, NULL },                               /* 0x7A */
157cdf0e10cSrcweir    { 0x007B,    0,    0, NULL },                               /* 0x7B */
158cdf0e10cSrcweir    { 0x007C,    0,    0, NULL },                               /* 0x7C */
159cdf0e10cSrcweir    { 0x007D,    0,    0, NULL },                               /* 0x7D */
160cdf0e10cSrcweir    { 0x007E,    0,    0, NULL },                               /* 0x7E */
161cdf0e10cSrcweir    { 0x007F,    0,    0, NULL },                               /* 0x7F */
162cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0x80 */
163cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_81 },       /* 0x81 */
164cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_82 },       /* 0x82 */
165cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_83 },       /* 0x83 */
166cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_84 },       /* 0x84 */
167cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_85 },       /* 0x85 */
168cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_86 },       /* 0x86 */
169cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_87 },       /* 0x87 */
170cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_88 },       /* 0x88 */
171cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_89 },       /* 0x89 */
172cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_8A },       /* 0x8A */
173cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_8B },       /* 0x8B */
174cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_8C },       /* 0x8C */
175cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_8D },       /* 0x8D */
176cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_8E },       /* 0x8E */
177cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_8F },       /* 0x8F */
178cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_90 },       /* 0x90 */
179cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_91 },       /* 0x91 */
180cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_92 },       /* 0x92 */
181cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_93 },       /* 0x93 */
182cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_94 },       /* 0x94 */
183cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_95 },       /* 0x95 */
184cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_96 },       /* 0x96 */
185cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_97 },       /* 0x97 */
186cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_98 },       /* 0x98 */
187cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_99 },       /* 0x99 */
188cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_9A },       /* 0x9A */
189cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_9B },       /* 0x9B */
190cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_9C },       /* 0x9C */
191cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_9D },       /* 0x9D */
192cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_9E },       /* 0x9E */
193cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_9F },       /* 0x9F */
194cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_A0 },       /* 0xA0 */
195cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_A1 },       /* 0xA1 */
196cdf0e10cSrcweir    {      0, 0x41, 0xE7, aImplDBCSToUniTab_KSC5601_A2 },       /* 0xA2 */
197cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_A3 },       /* 0xA3 */
198cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_A4 },       /* 0xA4 */
199cdf0e10cSrcweir    {      0, 0x41, 0xF8, aImplDBCSToUniTab_KSC5601_A5 },       /* 0xA5 */
200cdf0e10cSrcweir    {      0, 0x41, 0xE4, aImplDBCSToUniTab_KSC5601_A6 },       /* 0xA6 */
201cdf0e10cSrcweir    {      0, 0x41, 0xEF, aImplDBCSToUniTab_KSC5601_A7 },       /* 0xA7 */
202cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_A8 },       /* 0xA8 */
203cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_A9 },       /* 0xA9 */
204cdf0e10cSrcweir    {      0, 0x41, 0xF3, aImplDBCSToUniTab_KSC5601_AA },       /* 0xAA */
205cdf0e10cSrcweir    {      0, 0x41, 0xF6, aImplDBCSToUniTab_KSC5601_AB },       /* 0xAB */
206cdf0e10cSrcweir    {      0, 0x41, 0xF1, aImplDBCSToUniTab_KSC5601_AC },       /* 0xAC */
207cdf0e10cSrcweir    {      0, 0x41, 0xA0, aImplDBCSToUniTab_KSC5601_AD },       /* 0xAD */
208cdf0e10cSrcweir    {      0, 0x41, 0xA0, aImplDBCSToUniTab_KSC5601_AE },       /* 0xAE */
209cdf0e10cSrcweir    {      0, 0x41, 0xA0, aImplDBCSToUniTab_KSC5601_AF },       /* 0xAF */
210cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B0 },       /* 0xB0 */
211cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B1 },       /* 0xB1 */
212cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B2 },       /* 0xB2 */
213cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B3 },       /* 0xB3 */
214cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B4 },       /* 0xB4 */
215cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B5 },       /* 0xB5 */
216cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B6 },       /* 0xB6 */
217cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B7 },       /* 0xB7 */
218cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B8 },       /* 0xB8 */
219cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_B9 },       /* 0xB9 */
220cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_BA },       /* 0xBA */
221cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_BB },       /* 0xBB */
222cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_BC },       /* 0xBC */
223cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_BD },       /* 0xBD */
224cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_BE },       /* 0xBE */
225cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_BF },       /* 0xBF */
226cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_C0 },       /* 0xC0 */
227cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_C1 },       /* 0xC1 */
228cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_C2 },       /* 0xC2 */
229cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_C3 },       /* 0xC3 */
230cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_C4 },       /* 0xC4 */
231cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_C5 },       /* 0xC5 */
232cdf0e10cSrcweir    {      0, 0x41, 0xFE, aImplDBCSToUniTab_KSC5601_C6 },       /* 0xC6 */
233cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_C7 },       /* 0xC7 */
234cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_C8 },       /* 0xC8 */
235cdf0e10cSrcweir    {      0,    1,    0, aImplDoubleByteIdentifierTab },       /* 0xC9 */
236cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_CA },       /* 0xCA */
237cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_CB },       /* 0xCB */
238cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_CC },       /* 0xCC */
239cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_CD },       /* 0xCD */
240cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_CE },       /* 0xCE */
241cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_CF },       /* 0xCF */
242cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D0 },       /* 0xD0 */
243cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D1 },       /* 0xD1 */
244cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D2 },       /* 0xD2 */
245cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D3 },       /* 0xD3 */
246cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D4 },       /* 0xD4 */
247cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D5 },       /* 0xD5 */
248cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D6 },       /* 0xD6 */
249cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D7 },       /* 0xD7 */
250cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D8 },       /* 0xD8 */
251cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_D9 },       /* 0xD9 */
252cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_DA },       /* 0xDA */
253cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_DB },       /* 0xDB */
254cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_DC },       /* 0xDC */
255cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_DD },       /* 0xDD */
256cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_DE },       /* 0xDE */
257cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_DF },       /* 0xDF */
258cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E0 },       /* 0xE0 */
259cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E1 },       /* 0xE1 */
260cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E2 },       /* 0xE2 */
261cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E3 },       /* 0xE3 */
262cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E4 },       /* 0xE4 */
263cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E5 },       /* 0xE5 */
264cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E6 },       /* 0xE6 */
265cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E7 },       /* 0xE7 */
266cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E8 },       /* 0xE8 */
267cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_E9 },       /* 0xE9 */
268cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_EA },       /* 0xEA */
269cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_EB },       /* 0xEB */
270cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_EC },       /* 0xEC */
271cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_ED },       /* 0xED */
272cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_EE },       /* 0xEE */
273cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_EF },       /* 0xEF */
274cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F0 },       /* 0xF0 */
275cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F1 },       /* 0xF1 */
276cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F2 },       /* 0xF2 */
277cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F3 },       /* 0xF3 */
278cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F4 },       /* 0xF4 */
279cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F5 },       /* 0xF5 */
280cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F6 },       /* 0xF6 */
281cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F7 },       /* 0xF7 */
282cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F8 },       /* 0xF8 */
283cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_F9 },       /* 0xF9 */
284cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_FA },       /* 0xFA */
285cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_FB },       /* 0xFB */
286cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_FC },       /* 0xFC */
287cdf0e10cSrcweir    {      0, 0xA1, 0xFE, aImplDBCSToUniTab_KSC5601_FD },       /* 0xFD */
288cdf0e10cSrcweir    {      0,    1,    0, aImplDoubleByteIdentifierTab },       /* 0xFE */
289cdf0e10cSrcweir    {      0,    1,    0, NULL }                                /* 0xFF */
290cdf0e10cSrcweir};
291cdf0e10cSrcweir
292cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
293cdf0e10cSrcweir
294cdf0e10cSrcweirstatic ImplUniToDBCSHighTab const aKSC5601DBCSHighTab[256] =
295cdf0e10cSrcweir{
296cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_KSC5601_00 },               /* 0x00 */
297cdf0e10cSrcweir    { 0x11, 0x67, aImplUniToDBCSTab_KSC5601_01 },               /* 0x01 */
298cdf0e10cSrcweir    { 0xC7, 0xDD, aImplUniToDBCSTab_KSC5601_02 },               /* 0x02 */
299cdf0e10cSrcweir    { 0x91, 0xC9, aImplUniToDBCSTab_KSC5601_03 },               /* 0x03 */
300cdf0e10cSrcweir    { 0x01, 0x51, aImplUniToDBCSTab_KSC5601_04 },               /* 0x04 */
301cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x05 */
302cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x06 */
303cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x07 */
304cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x08 */
305cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x09 */
306cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0A */
307cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0B */
308cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0C */
309cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0D */
310cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0E */
311cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0F */
312cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x10 */
313cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x11 */
314cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x12 */
315cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x13 */
316cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x14 */
317cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x15 */
318cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x16 */
319cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x17 */
320cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x18 */
321cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x19 */
322cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1A */
323cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1B */
324cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1C */
325cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1D */
326cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1E */
327cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1F */
328cdf0e10cSrcweir    { 0x15, 0xAC, aImplUniToDBCSTab_KSC5601_20 },               /* 0x20 */
329cdf0e10cSrcweir    { 0x03, 0xD4, aImplUniToDBCSTab_KSC5601_21 },               /* 0x21 */
330cdf0e10cSrcweir    { 0x00, 0xA5, aImplUniToDBCSTab_KSC5601_22 },               /* 0x22 */
331cdf0e10cSrcweir    { 0x12, 0x12, aImplUniToDBCSTab_KSC5601_23 },               /* 0x23 */
332cdf0e10cSrcweir    { 0x60, 0xE9, aImplUniToDBCSTab_KSC5601_24 },               /* 0x24 */
333cdf0e10cSrcweir    { 0x00, 0xD1, aImplUniToDBCSTab_KSC5601_25 },               /* 0x25 */
334cdf0e10cSrcweir    { 0x05, 0x6D, aImplUniToDBCSTab_KSC5601_26 },               /* 0x26 */
335cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x27 */
336cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x28 */
337cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x29 */
338cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2A */
339cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2B */
340cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2C */
341cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2D */
342cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2E */
343cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2F */
344cdf0e10cSrcweir    { 0x00, 0xF7, aImplUniToDBCSTab_KSC5601_30 },               /* 0x30 */
345cdf0e10cSrcweir    { 0x31, 0xFE, aImplUniToDBCSTab_KSC5601_31 },               /* 0x31 */
346cdf0e10cSrcweir    { 0x00, 0x7F, aImplUniToDBCSTab_KSC5601_32 },               /* 0x32 */
347cdf0e10cSrcweir    { 0x80, 0xDD, aImplUniToDBCSTab_KSC5601_33 },               /* 0x33 */
348cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x34 */
349cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x35 */
350cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x36 */
351cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x37 */
352cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x38 */
353cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x39 */
354cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3A */
355cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3B */
356cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3C */
357cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3D */
358cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3E */
359cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3F */
360cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x40 */
361cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x41 */
362cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x42 */
363cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x43 */
364cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x44 */
365cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x45 */
366cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x46 */
367cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x47 */
368cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x48 */
369cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x49 */
370cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x4A */
371cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x4B */
372cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x4C */
373cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x4D */
374cdf0e10cSrcweir    { 0x00, 0xFB, aImplUniToDBCSTab_KSC5601_4E },               /* 0x4E */
375cdf0e10cSrcweir    { 0x01, 0xFA, aImplUniToDBCSTab_KSC5601_4F },               /* 0x4F */
376cdf0e10cSrcweir    { 0x02, 0xFF, aImplUniToDBCSTab_KSC5601_50 },               /* 0x50 */
377cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_KSC5601_51 },               /* 0x51 */
378cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_52 },               /* 0x52 */
379cdf0e10cSrcweir    { 0x05, 0xF8, aImplUniToDBCSTab_KSC5601_53 },               /* 0x53 */
380cdf0e10cSrcweir    { 0x03, 0xFA, aImplUniToDBCSTab_KSC5601_54 },               /* 0x54 */
381cdf0e10cSrcweir    { 0x04, 0xFE, aImplUniToDBCSTab_KSC5601_55 },               /* 0x55 */
382cdf0e10cSrcweir    { 0x06, 0xFA, aImplUniToDBCSTab_KSC5601_56 },               /* 0x56 */
383cdf0e10cSrcweir    { 0x03, 0xFC, aImplUniToDBCSTab_KSC5601_57 },               /* 0x57 */
384cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_KSC5601_58 },               /* 0x58 */
385cdf0e10cSrcweir    { 0x07, 0xFF, aImplUniToDBCSTab_KSC5601_59 },               /* 0x59 */
386cdf0e10cSrcweir    { 0x01, 0xE9, aImplUniToDBCSTab_KSC5601_5A },               /* 0x5A */
387cdf0e10cSrcweir    { 0x05, 0xFA, aImplUniToDBCSTab_KSC5601_5B },               /* 0x5B */
388cdf0e10cSrcweir    { 0x01, 0xFD, aImplUniToDBCSTab_KSC5601_5C },               /* 0x5C */
389cdf0e10cSrcweir    { 0x07, 0xFE, aImplUniToDBCSTab_KSC5601_5D },               /* 0x5D */
390cdf0e10cSrcweir    { 0x02, 0xFB, aImplUniToDBCSTab_KSC5601_5E },               /* 0x5E */
391cdf0e10cSrcweir    { 0x01, 0xFF, aImplUniToDBCSTab_KSC5601_5F },               /* 0x5F */
392cdf0e10cSrcweir    { 0x07, 0xFB, aImplUniToDBCSTab_KSC5601_60 },               /* 0x60 */
393cdf0e10cSrcweir    { 0x01, 0xFF, aImplUniToDBCSTab_KSC5601_61 },               /* 0x61 */
394cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_62 },               /* 0x62 */
395cdf0e10cSrcweir    { 0x01, 0xF7, aImplUniToDBCSTab_KSC5601_63 },               /* 0x63 */
396cdf0e10cSrcweir    { 0x0D, 0xFE, aImplUniToDBCSTab_KSC5601_64 },               /* 0x64 */
397cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_65 },               /* 0x65 */
398cdf0e10cSrcweir    { 0x06, 0xFF, aImplUniToDBCSTab_KSC5601_66 },               /* 0x66 */
399cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_KSC5601_67 },               /* 0x67 */
400cdf0e10cSrcweir    { 0x12, 0xFA, aImplUniToDBCSTab_KSC5601_68 },               /* 0x68 */
401cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_69 },               /* 0x69 */
402cdf0e10cSrcweir    { 0x02, 0xFB, aImplUniToDBCSTab_KSC5601_6A },               /* 0x6A */
403cdf0e10cSrcweir    { 0x04, 0xEC, aImplUniToDBCSTab_KSC5601_6B },               /* 0x6B */
404cdf0e10cSrcweir    { 0x08, 0xF3, aImplUniToDBCSTab_KSC5601_6C },               /* 0x6C */
405cdf0e10cSrcweir    { 0x03, 0xFB, aImplUniToDBCSTab_KSC5601_6D },               /* 0x6D */
406cdf0e10cSrcweir    { 0x17, 0xFF, aImplUniToDBCSTab_KSC5601_6E },               /* 0x6E */
407cdf0e10cSrcweir    { 0x01, 0xFE, aImplUniToDBCSTab_KSC5601_6F },               /* 0x6F */
408cdf0e10cSrcweir    { 0x01, 0xFD, aImplUniToDBCSTab_KSC5601_70 },               /* 0x70 */
409cdf0e10cSrcweir    { 0x04, 0xFF, aImplUniToDBCSTab_KSC5601_71 },               /* 0x71 */
410cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_KSC5601_72 },               /* 0x72 */
411cdf0e10cSrcweir    { 0x02, 0xFE, aImplUniToDBCSTab_KSC5601_73 },               /* 0x73 */
412cdf0e10cSrcweir    { 0x01, 0xF7, aImplUniToDBCSTab_KSC5601_74 },               /* 0x74 */
413cdf0e10cSrcweir    { 0x01, 0xFC, aImplUniToDBCSTab_KSC5601_75 },               /* 0x75 */
414cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_KSC5601_76 },               /* 0x76 */
415cdf0e10cSrcweir    { 0x01, 0xFB, aImplUniToDBCSTab_KSC5601_77 },               /* 0x77 */
416cdf0e10cSrcweir    { 0x02, 0xFB, aImplUniToDBCSTab_KSC5601_78 },               /* 0x78 */
417cdf0e10cSrcweir    { 0x01, 0xFB, aImplUniToDBCSTab_KSC5601_79 },               /* 0x79 */
418cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_7A },               /* 0x7A */
419cdf0e10cSrcweir    { 0x0F, 0xE9, aImplUniToDBCSTab_KSC5601_7B },               /* 0x7B */
420cdf0e10cSrcweir    { 0x07, 0xFE, aImplUniToDBCSTab_KSC5601_7C },               /* 0x7C */
421cdf0e10cSrcweir    { 0x00, 0xFB, aImplUniToDBCSTab_KSC5601_7D },               /* 0x7D */
422cdf0e10cSrcweir    { 0x09, 0x9C, aImplUniToDBCSTab_KSC5601_7E },               /* 0x7E */
423cdf0e10cSrcweir    { 0x36, 0xFC, aImplUniToDBCSTab_KSC5601_7F },               /* 0x7F */
424cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_KSC5601_80 },               /* 0x80 */
425cdf0e10cSrcweir    { 0x02, 0xFE, aImplUniToDBCSTab_KSC5601_81 },               /* 0x81 */
426cdf0e10cSrcweir    { 0x05, 0xFE, aImplUniToDBCSTab_KSC5601_82 },               /* 0x82 */
427cdf0e10cSrcweir    { 0x01, 0xFD, aImplUniToDBCSTab_KSC5601_83 },               /* 0x83 */
428cdf0e10cSrcweir    { 0x03, 0xFC, aImplUniToDBCSTab_KSC5601_84 },               /* 0x84 */
429cdf0e10cSrcweir    { 0x11, 0xFF, aImplUniToDBCSTab_KSC5601_85 },               /* 0x85 */
430cdf0e10cSrcweir    { 0x02, 0xFE, aImplUniToDBCSTab_KSC5601_86 },               /* 0x86 */
431cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_KSC5601_87 },               /* 0x87 */
432cdf0e10cSrcweir    { 0x05, 0xFD, aImplUniToDBCSTab_KSC5601_88 },               /* 0x88 */
433cdf0e10cSrcweir    { 0x07, 0xF8, aImplUniToDBCSTab_KSC5601_89 },               /* 0x89 */
434cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_KSC5601_8A },               /* 0x8A */
435cdf0e10cSrcweir    { 0x00, 0x9A, aImplUniToDBCSTab_KSC5601_8B },               /* 0x8B */
436cdf0e10cSrcweir    { 0x37, 0xFD, aImplUniToDBCSTab_KSC5601_8C },               /* 0x8C */
437cdf0e10cSrcweir    { 0x04, 0xFB, aImplUniToDBCSTab_KSC5601_8D },               /* 0x8D */
438cdf0e10cSrcweir    { 0x0A, 0xFE, aImplUniToDBCSTab_KSC5601_8E },               /* 0x8E */
439cdf0e10cSrcweir    { 0x03, 0xFD, aImplUniToDBCSTab_KSC5601_8F },               /* 0x8F */
440cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_KSC5601_90 },               /* 0x90 */
441cdf0e10cSrcweir    { 0x02, 0xF5, aImplUniToDBCSTab_KSC5601_91 },               /* 0x91 */
442cdf0e10cSrcweir    { 0x0D, 0xFC, aImplUniToDBCSTab_KSC5601_92 },               /* 0x92 */
443cdf0e10cSrcweir    { 0x04, 0xF6, aImplUniToDBCSTab_KSC5601_93 },               /* 0x93 */
444cdf0e10cSrcweir    { 0x04, 0x7F, aImplUniToDBCSTab_KSC5601_94 },               /* 0x94 */
445cdf0e10cSrcweir    { 0x77, 0xE2, aImplUniToDBCSTab_KSC5601_95 },               /* 0x95 */
446cdf0e10cSrcweir    { 0x1C, 0xFB, aImplUniToDBCSTab_KSC5601_96 },               /* 0x96 */
447cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_97 },               /* 0x97 */
448cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_KSC5601_98 },               /* 0x98 */
449cdf0e10cSrcweir    { 0x03, 0xFF, aImplUniToDBCSTab_KSC5601_99 },               /* 0x99 */
450cdf0e10cSrcweir    { 0x01, 0xEE, aImplUniToDBCSTab_KSC5601_9A },               /* 0x9A */
451cdf0e10cSrcweir    { 0x1A, 0xE8, aImplUniToDBCSTab_KSC5601_9B },               /* 0x9B */
452cdf0e10cSrcweir    { 0x0D, 0xF6, aImplUniToDBCSTab_KSC5601_9C },               /* 0x9C */
453cdf0e10cSrcweir    { 0x09, 0xFA, aImplUniToDBCSTab_KSC5601_9D },               /* 0x9D */
454cdf0e10cSrcweir    { 0x1A, 0xF4, aImplUniToDBCSTab_KSC5601_9E },               /* 0x9E */
455cdf0e10cSrcweir    { 0x07, 0x9C, aImplUniToDBCSTab_KSC5601_9F },               /* 0x9F */
456cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA0 */
457cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA1 */
458cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA2 */
459cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA3 */
460cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA4 */
461cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA5 */
462cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA6 */
463cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA7 */
464cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA8 */
465cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA9 */
466cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xAA */
467cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xAB */
468cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_AC },               /* 0xAC */
469cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_AD },               /* 0xAD */
470cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_AE },               /* 0xAE */
471cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_AF },               /* 0xAF */
472cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B0 },               /* 0xB0 */
473cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B1 },               /* 0xB1 */
474cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B2 },               /* 0xB2 */
475cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B3 },               /* 0xB3 */
476cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B4 },               /* 0xB4 */
477cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B5 },               /* 0xB5 */
478cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B6 },               /* 0xB6 */
479cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B7 },               /* 0xB7 */
480cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B8 },               /* 0xB8 */
481cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_B9 },               /* 0xB9 */
482cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_BA },               /* 0xBA */
483cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_BB },               /* 0xBB */
484cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_BC },               /* 0xBC */
485cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_BD },               /* 0xBD */
486cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_BE },               /* 0xBE */
487cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_BF },               /* 0xBF */
488cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C0 },               /* 0xC0 */
489cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C1 },               /* 0xC1 */
490cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C2 },               /* 0xC2 */
491cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C3 },               /* 0xC3 */
492cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C4 },               /* 0xC4 */
493cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C5 },               /* 0xC5 */
494cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C6 },               /* 0xC6 */
495cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C7 },               /* 0xC7 */
496cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C8 },               /* 0xC8 */
497cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_C9 },               /* 0xC9 */
498cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_CA },               /* 0xCA */
499cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_CB },               /* 0xCB */
500cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_CC },               /* 0xCC */
501cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_CD },               /* 0xCD */
502cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_CE },               /* 0xCE */
503cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_CF },               /* 0xCF */
504cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_D0 },               /* 0xD0 */
505cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_D1 },               /* 0xD1 */
506cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_D2 },               /* 0xD2 */
507cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_D3 },               /* 0xD3 */
508cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_D4 },               /* 0xD4 */
509cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_D5 },               /* 0xD5 */
510cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_D6 },               /* 0xD6 */
511cdf0e10cSrcweir    { 0x00, 0xA3, aImplUniToDBCSTab_KSC5601_D7 },               /* 0xD7 */
512cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xD8 */
513cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xD9 */
514cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDA */
515cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDB */
516cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDC */
517cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDD */
518cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDE */
519cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDF */
520cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE0 */
521cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE1 */
522cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE2 */
523cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE3 */
524cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE4 */
525cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE5 */
526cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE6 */
527cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE7 */
528cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE8 */
529cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE9 */
530cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEA */
531cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEB */
532cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEC */
533cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xED */
534cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEE */
535cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEF */
536cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF0 */
537cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF1 */
538cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF2 */
539cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF3 */
540cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF4 */
541cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF5 */
542cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF6 */
543cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF7 */
544cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF8 */
545cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_KSC5601_F9 },               /* 0xF9 */
546cdf0e10cSrcweir    { 0x00, 0x0B, aImplUniToDBCSTab_KSC5601_FA },               /* 0xFA */
547cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xFB */
548cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xFC */
549cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xFD */
550cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xFE */
551cdf0e10cSrcweir    { 0x01, 0xE6, aImplUniToDBCSTab_KSC5601_FF }                /* 0xFF */
552cdf0e10cSrcweir};
553cdf0e10cSrcweir
554cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
555cdf0e10cSrcweir
556cdf0e10cSrcweir/* C9A1-C9FE    -> E000-E05D */
557cdf0e10cSrcweir/* FEA1-FEFE    -> E05E-E0BB */
558cdf0e10cSrcweir
559cdf0e10cSrcweir#define DBCS_EUDC_MS949_COUNT    2
560cdf0e10cSrcweirstatic ImplDBCSEUDCData const aImplMS949DBCSEUDCTab[DBCS_EUDC_MS949_COUNT] =
561cdf0e10cSrcweir{
562cdf0e10cSrcweir    /* EUDC-Range */
563cdf0e10cSrcweir    /* Lead:    C9-C9 */
564cdf0e10cSrcweir    /* Trail:   A1-FE */
565cdf0e10cSrcweir    { 0xC9, 0xC9, 0xA1, 0xFE, 0, 0, 0, 0, 1, 0x5E, 0xE000, 0xE05D },
566cdf0e10cSrcweir    /* Lead:    FE-FE */
567cdf0e10cSrcweir    /* Trail:   A1-FE */
568cdf0e10cSrcweir    { 0xFE, 0xFE, 0xA1, 0xFE, 0, 0, 0, 0, 1, 0x5E, 0xE05E, 0xE0BB }
569cdf0e10cSrcweir};
570cdf0e10cSrcweir
571cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
572cdf0e10cSrcweir
573cdf0e10cSrcweirstatic ImplDBCSConvertData const aImplKSC5601DBCSCvtData =
574cdf0e10cSrcweir{
575cdf0e10cSrcweir    aKSC5601UniLeadTab,
576cdf0e10cSrcweir    aKSC5601DBCSHighTab,
577cdf0e10cSrcweir    0xA1, 0xFE,
578cdf0e10cSrcweir    0xA1, 0xFE,
579cdf0e10cSrcweir    aImplMS949DBCSEUDCTab,
580cdf0e10cSrcweir    DBCS_EUDC_MS949_COUNT
581cdf0e10cSrcweir};
582cdf0e10cSrcweir
583cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
584cdf0e10cSrcweir
585cdf0e10cSrcweirstatic ImplDBCSConvertData const aImplMS949DBCSCvtData =
586cdf0e10cSrcweir{
587cdf0e10cSrcweir    aKSC5601UniLeadTab,
588cdf0e10cSrcweir    aKSC5601DBCSHighTab,
589cdf0e10cSrcweir    0x00, 0xFF,
590cdf0e10cSrcweir    0x41, 0xFE,
591cdf0e10cSrcweir    aImplMS949DBCSEUDCTab,
592cdf0e10cSrcweir    DBCS_EUDC_MS949_COUNT
593cdf0e10cSrcweir};
594cdf0e10cSrcweir
595cdf0e10cSrcweir/* ======================================================================= */
596cdf0e10cSrcweir
597cdf0e10cSrcweirstatic ImplTextEncodingData const aImplEUCKRTextEncodingData
598cdf0e10cSrcweir    = { { &aImplKSC5601DBCSCvtData,
599cdf0e10cSrcweir          ImplDBCSToUnicode,
600cdf0e10cSrcweir          ImplUnicodeToDBCS,
601cdf0e10cSrcweir          NULL,
602cdf0e10cSrcweir          NULL,
603cdf0e10cSrcweir          NULL,
604cdf0e10cSrcweir          NULL,
605cdf0e10cSrcweir          NULL,
606cdf0e10cSrcweir          NULL },
607cdf0e10cSrcweir        1,
608cdf0e10cSrcweir        2,
609cdf0e10cSrcweir        2,
610cdf0e10cSrcweir        129,
611cdf0e10cSrcweir        "euc-kr",
612cdf0e10cSrcweir        "euc-kr",
613cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_ASCII
614cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_MULTIBYTE
615cdf0e10cSrcweir            | RTL_TEXTENCODING_INFO_MIME };
616cdf0e10cSrcweir    /* SCRIPT_KOREAN, pc code page 934, mac encoding 3 */
617cdf0e10cSrcweir
618cdf0e10cSrcweir/* ======================================================================= */
619cdf0e10cSrcweir
620cdf0e10cSrcweirstatic ImplTextEncodingData const aImplMS949TextEncodingData
621cdf0e10cSrcweir    = { { &aImplMS949DBCSCvtData,
622cdf0e10cSrcweir          ImplDBCSToUnicode,
623cdf0e10cSrcweir          ImplUnicodeToDBCS,
624cdf0e10cSrcweir          NULL,
625cdf0e10cSrcweir          NULL,
626cdf0e10cSrcweir          NULL,
627cdf0e10cSrcweir          NULL,
628cdf0e10cSrcweir          NULL,
629cdf0e10cSrcweir          NULL },
630cdf0e10cSrcweir        1,
631cdf0e10cSrcweir        2,
632cdf0e10cSrcweir        2,
633cdf0e10cSrcweir        129,
634cdf0e10cSrcweir        "euc-kr",
635cdf0e10cSrcweir        "euc-kr",
636cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_MULTIBYTE };
637cdf0e10cSrcweir    /* WIN/DOS/OS2, SCRIPT_KOREAN, pc code page 934, mac encoding 3 */
638cdf0e10cSrcweir
639cdf0e10cSrcweir/* ======================================================================= */
640cdf0e10cSrcweir
641cdf0e10cSrcweir/* Apple has some extension, which we don't support */
642cdf0e10cSrcweir
643cdf0e10cSrcweirstatic ImplTextEncodingData const aImplAPPLEKOREANTextEncodingData
644cdf0e10cSrcweir    = { { &aImplMS949DBCSCvtData,
645cdf0e10cSrcweir          ImplDBCSToUnicode,
646cdf0e10cSrcweir          ImplUnicodeToDBCS,
647cdf0e10cSrcweir          NULL,
648cdf0e10cSrcweir          NULL,
649cdf0e10cSrcweir          NULL,
650cdf0e10cSrcweir          NULL,
651cdf0e10cSrcweir          NULL,
652cdf0e10cSrcweir          NULL },
653cdf0e10cSrcweir        1,
654cdf0e10cSrcweir        2,
655cdf0e10cSrcweir        2,
656cdf0e10cSrcweir        129,
657cdf0e10cSrcweir        "euc-kr",
658cdf0e10cSrcweir        "euc-kr",
659cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_MULTIBYTE };
660cdf0e10cSrcweir    /* MAC, SCRIPT_KOREAN, pc code page 934, mac encoding 3 */
661cdf0e10cSrcweir
662cdf0e10cSrcweir/* ======================================================================= */
663cdf0e10cSrcweir
664cdf0e10cSrcweirstatic ImplDBCSToUniLeadTab const aJOHABUniLeadTab[256] =
665cdf0e10cSrcweir{
666cdf0e10cSrcweir    { 0x0000,    0,    0, NULL },                               /* 0x00 */
667cdf0e10cSrcweir    { 0x0001,    0,    0, NULL },                               /* 0x01 */
668cdf0e10cSrcweir    { 0x0002,    0,    0, NULL },                               /* 0x02 */
669cdf0e10cSrcweir    { 0x0003,    0,    0, NULL },                               /* 0x03 */
670cdf0e10cSrcweir    { 0x0004,    0,    0, NULL },                               /* 0x04 */
671cdf0e10cSrcweir    { 0x0005,    0,    0, NULL },                               /* 0x05 */
672cdf0e10cSrcweir    { 0x0006,    0,    0, NULL },                               /* 0x06 */
673cdf0e10cSrcweir    { 0x0007,    0,    0, NULL },                               /* 0x07 */
674cdf0e10cSrcweir    { 0x0008,    0,    0, NULL },                               /* 0x08 */
675cdf0e10cSrcweir    { 0x0009,    0,    0, NULL },                               /* 0x09 */
676cdf0e10cSrcweir    { 0x000A,    0,    0, NULL },                               /* 0x0A */
677cdf0e10cSrcweir    { 0x000B,    0,    0, NULL },                               /* 0x0B */
678cdf0e10cSrcweir    { 0x000C,    0,    0, NULL },                               /* 0x0C */
679cdf0e10cSrcweir    { 0x000D,    0,    0, NULL },                               /* 0x0D */
680cdf0e10cSrcweir    { 0x000E,    0,    0, NULL },                               /* 0x0E */
681cdf0e10cSrcweir    { 0x000F,    0,    0, NULL },                               /* 0x0F */
682cdf0e10cSrcweir    { 0x0010,    0,    0, NULL },                               /* 0x10 */
683cdf0e10cSrcweir    { 0x0011,    0,    0, NULL },                               /* 0x11 */
684cdf0e10cSrcweir    { 0x0012,    0,    0, NULL },                               /* 0x12 */
685cdf0e10cSrcweir    { 0x0013,    0,    0, NULL },                               /* 0x13 */
686cdf0e10cSrcweir    { 0x0014,    0,    0, NULL },                               /* 0x14 */
687cdf0e10cSrcweir    { 0x0015,    0,    0, NULL },                               /* 0x15 */
688cdf0e10cSrcweir    { 0x0016,    0,    0, NULL },                               /* 0x16 */
689cdf0e10cSrcweir    { 0x0017,    0,    0, NULL },                               /* 0x17 */
690cdf0e10cSrcweir    { 0x0018,    0,    0, NULL },                               /* 0x18 */
691cdf0e10cSrcweir    { 0x0019,    0,    0, NULL },                               /* 0x19 */
692cdf0e10cSrcweir    { 0x001A,    0,    0, NULL },                               /* 0x1A */
693cdf0e10cSrcweir    { 0x001B,    0,    0, NULL },                               /* 0x1B */
694cdf0e10cSrcweir    { 0x001C,    0,    0, NULL },                               /* 0x1C */
695cdf0e10cSrcweir    { 0x001D,    0,    0, NULL },                               /* 0x1D */
696cdf0e10cSrcweir    { 0x001E,    0,    0, NULL },                               /* 0x1E */
697cdf0e10cSrcweir    { 0x001F,    0,    0, NULL },                               /* 0x1F */
698cdf0e10cSrcweir    { 0x0020,    0,    0, NULL },                               /* 0x20 */
699cdf0e10cSrcweir    { 0x0021,    0,    0, NULL },                               /* 0x21 */
700cdf0e10cSrcweir    { 0x0022,    0,    0, NULL },                               /* 0x22 */
701cdf0e10cSrcweir    { 0x0023,    0,    0, NULL },                               /* 0x23 */
702cdf0e10cSrcweir    { 0x0024,    0,    0, NULL },                               /* 0x24 */
703cdf0e10cSrcweir    { 0x0025,    0,    0, NULL },                               /* 0x25 */
704cdf0e10cSrcweir    { 0x0026,    0,    0, NULL },                               /* 0x26 */
705cdf0e10cSrcweir    { 0x0027,    0,    0, NULL },                               /* 0x27 */
706cdf0e10cSrcweir    { 0x0028,    0,    0, NULL },                               /* 0x28 */
707cdf0e10cSrcweir    { 0x0029,    0,    0, NULL },                               /* 0x29 */
708cdf0e10cSrcweir    { 0x002A,    0,    0, NULL },                               /* 0x2A */
709cdf0e10cSrcweir    { 0x002B,    0,    0, NULL },                               /* 0x2B */
710cdf0e10cSrcweir    { 0x002C,    0,    0, NULL },                               /* 0x2C */
711cdf0e10cSrcweir    { 0x002D,    0,    0, NULL },                               /* 0x2D */
712cdf0e10cSrcweir    { 0x002E,    0,    0, NULL },                               /* 0x2E */
713cdf0e10cSrcweir    { 0x002F,    0,    0, NULL },                               /* 0x2F */
714cdf0e10cSrcweir    { 0x0030,    0,    0, NULL },                               /* 0x30 */
715cdf0e10cSrcweir    { 0x0031,    0,    0, NULL },                               /* 0x31 */
716cdf0e10cSrcweir    { 0x0032,    0,    0, NULL },                               /* 0x32 */
717cdf0e10cSrcweir    { 0x0033,    0,    0, NULL },                               /* 0x33 */
718cdf0e10cSrcweir    { 0x0034,    0,    0, NULL },                               /* 0x34 */
719cdf0e10cSrcweir    { 0x0035,    0,    0, NULL },                               /* 0x35 */
720cdf0e10cSrcweir    { 0x0036,    0,    0, NULL },                               /* 0x36 */
721cdf0e10cSrcweir    { 0x0037,    0,    0, NULL },                               /* 0x37 */
722cdf0e10cSrcweir    { 0x0038,    0,    0, NULL },                               /* 0x38 */
723cdf0e10cSrcweir    { 0x0039,    0,    0, NULL },                               /* 0x39 */
724cdf0e10cSrcweir    { 0x003A,    0,    0, NULL },                               /* 0x3A */
725cdf0e10cSrcweir    { 0x003B,    0,    0, NULL },                               /* 0x3B */
726cdf0e10cSrcweir    { 0x003C,    0,    0, NULL },                               /* 0x3C */
727cdf0e10cSrcweir    { 0x003D,    0,    0, NULL },                               /* 0x3D */
728cdf0e10cSrcweir    { 0x003E,    0,    0, NULL },                               /* 0x3E */
729cdf0e10cSrcweir    { 0x003F,    0,    0, NULL },                               /* 0x3F */
730cdf0e10cSrcweir    { 0x0040,    0,    0, NULL },                               /* 0x40 */
731cdf0e10cSrcweir    { 0x0041,    0,    0, NULL },                               /* 0x41 */
732cdf0e10cSrcweir    { 0x0042,    0,    0, NULL },                               /* 0x42 */
733cdf0e10cSrcweir    { 0x0043,    0,    0, NULL },                               /* 0x43 */
734cdf0e10cSrcweir    { 0x0044,    0,    0, NULL },                               /* 0x44 */
735cdf0e10cSrcweir    { 0x0045,    0,    0, NULL },                               /* 0x45 */
736cdf0e10cSrcweir    { 0x0046,    0,    0, NULL },                               /* 0x46 */
737cdf0e10cSrcweir    { 0x0047,    0,    0, NULL },                               /* 0x47 */
738cdf0e10cSrcweir    { 0x0048,    0,    0, NULL },                               /* 0x48 */
739cdf0e10cSrcweir    { 0x0049,    0,    0, NULL },                               /* 0x49 */
740cdf0e10cSrcweir    { 0x004A,    0,    0, NULL },                               /* 0x4A */
741cdf0e10cSrcweir    { 0x004B,    0,    0, NULL },                               /* 0x4B */
742cdf0e10cSrcweir    { 0x004C,    0,    0, NULL },                               /* 0x4C */
743cdf0e10cSrcweir    { 0x004D,    0,    0, NULL },                               /* 0x4D */
744cdf0e10cSrcweir    { 0x004E,    0,    0, NULL },                               /* 0x4E */
745cdf0e10cSrcweir    { 0x004F,    0,    0, NULL },                               /* 0x4F */
746cdf0e10cSrcweir    { 0x0050,    0,    0, NULL },                               /* 0x50 */
747cdf0e10cSrcweir    { 0x0051,    0,    0, NULL },                               /* 0x51 */
748cdf0e10cSrcweir    { 0x0052,    0,    0, NULL },                               /* 0x52 */
749cdf0e10cSrcweir    { 0x0053,    0,    0, NULL },                               /* 0x53 */
750cdf0e10cSrcweir    { 0x0054,    0,    0, NULL },                               /* 0x54 */
751cdf0e10cSrcweir    { 0x0055,    0,    0, NULL },                               /* 0x55 */
752cdf0e10cSrcweir    { 0x0056,    0,    0, NULL },                               /* 0x56 */
753cdf0e10cSrcweir    { 0x0057,    0,    0, NULL },                               /* 0x57 */
754cdf0e10cSrcweir    { 0x0058,    0,    0, NULL },                               /* 0x58 */
755cdf0e10cSrcweir    { 0x0059,    0,    0, NULL },                               /* 0x59 */
756cdf0e10cSrcweir    { 0x005A,    0,    0, NULL },                               /* 0x5A */
757cdf0e10cSrcweir    { 0x005B,    0,    0, NULL },                               /* 0x5B */
758cdf0e10cSrcweir    { 0x005C,    0,    0, NULL },                               /* 0x5C */
759cdf0e10cSrcweir    { 0x005D,    0,    0, NULL },                               /* 0x5D */
760cdf0e10cSrcweir    { 0x005E,    0,    0, NULL },                               /* 0x5E */
761cdf0e10cSrcweir    { 0x005F,    0,    0, NULL },                               /* 0x5F */
762cdf0e10cSrcweir    { 0x0060,    0,    0, NULL },                               /* 0x60 */
763cdf0e10cSrcweir    { 0x0061,    0,    0, NULL },                               /* 0x61 */
764cdf0e10cSrcweir    { 0x0062,    0,    0, NULL },                               /* 0x62 */
765cdf0e10cSrcweir    { 0x0063,    0,    0, NULL },                               /* 0x63 */
766cdf0e10cSrcweir    { 0x0064,    0,    0, NULL },                               /* 0x64 */
767cdf0e10cSrcweir    { 0x0065,    0,    0, NULL },                               /* 0x65 */
768cdf0e10cSrcweir    { 0x0066,    0,    0, NULL },                               /* 0x66 */
769cdf0e10cSrcweir    { 0x0067,    0,    0, NULL },                               /* 0x67 */
770cdf0e10cSrcweir    { 0x0068,    0,    0, NULL },                               /* 0x68 */
771cdf0e10cSrcweir    { 0x0069,    0,    0, NULL },                               /* 0x69 */
772cdf0e10cSrcweir    { 0x006A,    0,    0, NULL },                               /* 0x6A */
773cdf0e10cSrcweir    { 0x006B,    0,    0, NULL },                               /* 0x6B */
774cdf0e10cSrcweir    { 0x006C,    0,    0, NULL },                               /* 0x6C */
775cdf0e10cSrcweir    { 0x006D,    0,    0, NULL },                               /* 0x6D */
776cdf0e10cSrcweir    { 0x006E,    0,    0, NULL },                               /* 0x6E */
777cdf0e10cSrcweir    { 0x006F,    0,    0, NULL },                               /* 0x6F */
778cdf0e10cSrcweir    { 0x0070,    0,    0, NULL },                               /* 0x70 */
779cdf0e10cSrcweir    { 0x0071,    0,    0, NULL },                               /* 0x71 */
780cdf0e10cSrcweir    { 0x0072,    0,    0, NULL },                               /* 0x72 */
781cdf0e10cSrcweir    { 0x0073,    0,    0, NULL },                               /* 0x73 */
782cdf0e10cSrcweir    { 0x0074,    0,    0, NULL },                               /* 0x74 */
783cdf0e10cSrcweir    { 0x0075,    0,    0, NULL },                               /* 0x75 */
784cdf0e10cSrcweir    { 0x0076,    0,    0, NULL },                               /* 0x76 */
785cdf0e10cSrcweir    { 0x0077,    0,    0, NULL },                               /* 0x77 */
786cdf0e10cSrcweir    { 0x0078,    0,    0, NULL },                               /* 0x78 */
787cdf0e10cSrcweir    { 0x0079,    0,    0, NULL },                               /* 0x79 */
788cdf0e10cSrcweir    { 0x007A,    0,    0, NULL },                               /* 0x7A */
789cdf0e10cSrcweir    { 0x007B,    0,    0, NULL },                               /* 0x7B */
790cdf0e10cSrcweir    { 0x007C,    0,    0, NULL },                               /* 0x7C */
791cdf0e10cSrcweir    { 0x007D,    0,    0, NULL },                               /* 0x7D */
792cdf0e10cSrcweir    { 0x007E,    0,    0, NULL },                               /* 0x7E */
793cdf0e10cSrcweir    { 0x007F,    0,    0, NULL },                               /* 0x7F */
794cdf0e10cSrcweir    { 0x0080,    0,    0, NULL },                               /* 0x80 */
795cdf0e10cSrcweir    { 0x0081,    0,    0, NULL },                               /* 0x81 */
796cdf0e10cSrcweir    { 0x0082,    0,    0, NULL },                               /* 0x82 */
797cdf0e10cSrcweir    { 0x0083,    0,    0, NULL },                               /* 0x83 */
798cdf0e10cSrcweir    {      0, 0x44, 0xE1, aImplDBCSToUniTab_JOHAB_84 },         /* 0x84 */
799cdf0e10cSrcweir    {      0, 0x41, 0xE1, aImplDBCSToUniTab_JOHAB_85 },         /* 0x85 */
800cdf0e10cSrcweir    {      0, 0x41, 0xE1, aImplDBCSToUniTab_JOHAB_86 },         /* 0x86 */
801cdf0e10cSrcweir    {      0, 0x41, 0xA1, aImplDBCSToUniTab_JOHAB_87 },         /* 0x87 */
802cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_88 },         /* 0x88 */
803cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_89 },         /* 0x89 */
804cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_8A },         /* 0x8A */
805cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_8B },         /* 0x8B */
806cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_8C },         /* 0x8C */
807cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_8D },         /* 0x8D */
808cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_8E },         /* 0x8E */
809cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_8F },         /* 0x8F */
810cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_90 },         /* 0x90 */
811cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_91 },         /* 0x91 */
812cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_92 },         /* 0x92 */
813cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_93 },         /* 0x93 */
814cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_94 },         /* 0x94 */
815cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_95 },         /* 0x95 */
816cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_96 },         /* 0x96 */
817cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_97 },         /* 0x97 */
818cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_98 },         /* 0x98 */
819cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_99 },         /* 0x99 */
820cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_9A },         /* 0x9A */
821cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_9B },         /* 0x9B */
822cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_9C },         /* 0x9C */
823cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_9D },         /* 0x9D */
824cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_9E },         /* 0x9E */
825cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_9F },         /* 0x9F */
826cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_A0 },         /* 0xA0 */
827cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_A1 },         /* 0xA1 */
828cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_A2 },         /* 0xA2 */
829cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_A3 },         /* 0xA3 */
830cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_A4 },         /* 0xA4 */
831cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_A5 },         /* 0xA5 */
832cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_A6 },         /* 0xA6 */
833cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_A7 },         /* 0xA7 */
834cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_A8 },         /* 0xA8 */
835cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_A9 },         /* 0xA9 */
836cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_AA },         /* 0xAA */
837cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_AB },         /* 0xAB */
838cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_AC },         /* 0xAC */
839cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_AD },         /* 0xAD */
840cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_AE },         /* 0xAE */
841cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_AF },         /* 0xAF */
842cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_B0 },         /* 0xB0 */
843cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_B1 },         /* 0xB1 */
844cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_B2 },         /* 0xB2 */
845cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_B3 },         /* 0xB3 */
846cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_B4 },         /* 0xB4 */
847cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_B5 },         /* 0xB5 */
848cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_B6 },         /* 0xB6 */
849cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_B7 },         /* 0xB7 */
850cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_B8 },         /* 0xB8 */
851cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_B9 },         /* 0xB9 */
852cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_BA },         /* 0xBA */
853cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_BB },         /* 0xBB */
854cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_BC },         /* 0xBC */
855cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_BD },         /* 0xBD */
856cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_BE },         /* 0xBE */
857cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_BF },         /* 0xBF */
858cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_C0 },         /* 0xC0 */
859cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_C1 },         /* 0xC1 */
860cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_C2 },         /* 0xC2 */
861cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_C3 },         /* 0xC3 */
862cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_C4 },         /* 0xC4 */
863cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_C5 },         /* 0xC5 */
864cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_C6 },         /* 0xC6 */
865cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_C7 },         /* 0xC7 */
866cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_C8 },         /* 0xC8 */
867cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_C9 },         /* 0xC9 */
868cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_CA },         /* 0xCA */
869cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_CB },         /* 0xCB */
870cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_CC },         /* 0xCC */
871cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_CD },         /* 0xCD */
872cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_CE },         /* 0xCE */
873cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_CF },         /* 0xCF */
874cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_D0 },         /* 0xD0 */
875cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_D1 },         /* 0xD1 */
876cdf0e10cSrcweir    {      0, 0x41, 0xFD, aImplDBCSToUniTab_JOHAB_D2 },         /* 0xD2 */
877cdf0e10cSrcweir    {      0, 0x41, 0xBD, aImplDBCSToUniTab_JOHAB_D3 },         /* 0xD3 */
878cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0xD4 */
879cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0xD5 */
880cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0xD6 */
881cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0xD7 */
882cdf0e10cSrcweir    {      0,    1,    0, aImplDoubleByteIdentifierTab },       /* 0xD8 */ /* We convert this as double byte */
883cdf0e10cSrcweir    {      0, 0x31, 0xE5, aImplDBCSToUniTab_JOHAB_D9 },         /* 0xD9 */
884cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_DA },         /* 0xDA */
885cdf0e10cSrcweir    {      0, 0x31, 0xE4, aImplDBCSToUniTab_JOHAB_DB },         /* 0xDB */
886cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_DC },         /* 0xDC */
887cdf0e10cSrcweir    {      0, 0x31, 0xF3, aImplDBCSToUniTab_JOHAB_DD },         /* 0xDD */
888cdf0e10cSrcweir    {      0, 0x31, 0xF1, aImplDBCSToUniTab_JOHAB_DE },         /* 0xDE */
889cdf0e10cSrcweir    {      0,    1,    0, aImplDoubleByteIdentifierTab },       /* 0xDF */ /* We convert this as double byte */
890cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E0 },         /* 0xE0 */
891cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E1 },         /* 0xE1 */
892cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E2 },         /* 0xE2 */
893cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E3 },         /* 0xE3 */
894cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E4 },         /* 0xE4 */
895cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E5 },         /* 0xE5 */
896cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E6 },         /* 0xE6 */
897cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E7 },         /* 0xE7 */
898cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E8 },         /* 0xE8 */
899cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_E9 },         /* 0xE9 */
900cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_EA },         /* 0xEA */
901cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_EB },         /* 0xEB */
902cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_EC },         /* 0xEC */
903cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_ED },         /* 0xED */
904cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_EE },         /* 0xEE */
905cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_EF },         /* 0xEF */
906cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F0 },         /* 0xF0 */
907cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F1 },         /* 0xF1 */
908cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F2 },         /* 0xF2 */
909cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F3 },         /* 0xF3 */
910cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F4 },         /* 0xF4 */
911cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F5 },         /* 0xF5 */
912cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F6 },         /* 0xF6 */
913cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F7 },         /* 0xF7 */
914cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F8 },         /* 0xF8 */
915cdf0e10cSrcweir    {      0, 0x31, 0xFE, aImplDBCSToUniTab_JOHAB_F9 },         /* 0xF9 */
916cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0xFA */
917cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0xFB */
918cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0xFC */
919cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0xFD */
920cdf0e10cSrcweir    {      0,    1,    0, NULL },                               /* 0xFE */
921cdf0e10cSrcweir    {      0,    1,    0, NULL }                                /* 0xFF */
922cdf0e10cSrcweir};
923cdf0e10cSrcweir
924cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
925cdf0e10cSrcweir
926cdf0e10cSrcweirstatic ImplUniToDBCSHighTab const aJOHABDBCSHighTab[256] =
927cdf0e10cSrcweir{
928cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_JOHAB_00 },                 /* 0x00 */
929cdf0e10cSrcweir    { 0x11, 0x67, aImplUniToDBCSTab_JOHAB_01 },                 /* 0x01 */
930cdf0e10cSrcweir    { 0xC7, 0xDD, aImplUniToDBCSTab_JOHAB_02 },                 /* 0x02 */
931cdf0e10cSrcweir    { 0x91, 0xC9, aImplUniToDBCSTab_JOHAB_03 },                 /* 0x03 */
932cdf0e10cSrcweir    { 0x01, 0x51, aImplUniToDBCSTab_JOHAB_04 },                 /* 0x04 */
933cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x05 */
934cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x06 */
935cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x07 */
936cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x08 */
937cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x09 */
938cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0A */
939cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0B */
940cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0C */
941cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0D */
942cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0E */
943cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x0F */
944cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x10 */
945cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x11 */
946cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x12 */
947cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x13 */
948cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x14 */
949cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x15 */
950cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x16 */
951cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x17 */
952cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x18 */
953cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x19 */
954cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1A */
955cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1B */
956cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1C */
957cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1D */
958cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1E */
959cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x1F */
960cdf0e10cSrcweir    { 0x15, 0xA9, aImplUniToDBCSTab_JOHAB_20 },                 /* 0x20 */
961cdf0e10cSrcweir    { 0x03, 0xD4, aImplUniToDBCSTab_JOHAB_21 },                 /* 0x21 */
962cdf0e10cSrcweir    { 0x00, 0xA5, aImplUniToDBCSTab_JOHAB_22 },                 /* 0x22 */
963cdf0e10cSrcweir    { 0x12, 0x12, aImplUniToDBCSTab_JOHAB_23 },                 /* 0x23 */
964cdf0e10cSrcweir    { 0x60, 0xE9, aImplUniToDBCSTab_JOHAB_24 },                 /* 0x24 */
965cdf0e10cSrcweir    { 0x00, 0xD1, aImplUniToDBCSTab_JOHAB_25 },                 /* 0x25 */
966cdf0e10cSrcweir    { 0x05, 0x6D, aImplUniToDBCSTab_JOHAB_26 },                 /* 0x26 */
967cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x27 */
968cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x28 */
969cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x29 */
970cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2A */
971cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2B */
972cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2C */
973cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2D */
974cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2E */
975cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x2F */
976cdf0e10cSrcweir    { 0x00, 0xF7, aImplUniToDBCSTab_JOHAB_30 },                 /* 0x30 */
977cdf0e10cSrcweir    { 0x31, 0x8E, aImplUniToDBCSTab_JOHAB_31 },                 /* 0x31 */
978cdf0e10cSrcweir    { 0x00, 0x7F, aImplUniToDBCSTab_JOHAB_32 },                 /* 0x32 */
979cdf0e10cSrcweir    { 0x80, 0xDD, aImplUniToDBCSTab_JOHAB_33 },                 /* 0x33 */
980cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x34 */
981cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x35 */
982cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x36 */
983cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x37 */
984cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x38 */
985cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x39 */
986cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3A */
987cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3B */
988cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3C */
989cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3D */
990cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3E */
991cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x3F */
992cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x40 */
993cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x41 */
994cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x42 */
995cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x43 */
996cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x44 */
997cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x45 */
998cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x46 */
999cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x47 */
1000cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x48 */
1001cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x49 */
1002cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x4A */
1003cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x4B */
1004cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x4C */
1005cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0x4D */
1006cdf0e10cSrcweir    { 0x00, 0xFB, aImplUniToDBCSTab_JOHAB_4E },                 /* 0x4E */
1007cdf0e10cSrcweir    { 0x01, 0xFA, aImplUniToDBCSTab_JOHAB_4F },                 /* 0x4F */
1008cdf0e10cSrcweir    { 0x02, 0xFF, aImplUniToDBCSTab_JOHAB_50 },                 /* 0x50 */
1009cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_JOHAB_51 },                 /* 0x51 */
1010cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_52 },                 /* 0x52 */
1011cdf0e10cSrcweir    { 0x05, 0xF8, aImplUniToDBCSTab_JOHAB_53 },                 /* 0x53 */
1012cdf0e10cSrcweir    { 0x03, 0xFA, aImplUniToDBCSTab_JOHAB_54 },                 /* 0x54 */
1013cdf0e10cSrcweir    { 0x04, 0xFE, aImplUniToDBCSTab_JOHAB_55 },                 /* 0x55 */
1014cdf0e10cSrcweir    { 0x06, 0xFA, aImplUniToDBCSTab_JOHAB_56 },                 /* 0x56 */
1015cdf0e10cSrcweir    { 0x03, 0xFC, aImplUniToDBCSTab_JOHAB_57 },                 /* 0x57 */
1016cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_JOHAB_58 },                 /* 0x58 */
1017cdf0e10cSrcweir    { 0x07, 0xFF, aImplUniToDBCSTab_JOHAB_59 },                 /* 0x59 */
1018cdf0e10cSrcweir    { 0x01, 0xE9, aImplUniToDBCSTab_JOHAB_5A },                 /* 0x5A */
1019cdf0e10cSrcweir    { 0x05, 0xFA, aImplUniToDBCSTab_JOHAB_5B },                 /* 0x5B */
1020cdf0e10cSrcweir    { 0x01, 0xFD, aImplUniToDBCSTab_JOHAB_5C },                 /* 0x5C */
1021cdf0e10cSrcweir    { 0x07, 0xFE, aImplUniToDBCSTab_JOHAB_5D },                 /* 0x5D */
1022cdf0e10cSrcweir    { 0x02, 0xFB, aImplUniToDBCSTab_JOHAB_5E },                 /* 0x5E */
1023cdf0e10cSrcweir    { 0x01, 0xFF, aImplUniToDBCSTab_JOHAB_5F },                 /* 0x5F */
1024cdf0e10cSrcweir    { 0x07, 0xFB, aImplUniToDBCSTab_JOHAB_60 },                 /* 0x60 */
1025cdf0e10cSrcweir    { 0x01, 0xFF, aImplUniToDBCSTab_JOHAB_61 },                 /* 0x61 */
1026cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_62 },                 /* 0x62 */
1027cdf0e10cSrcweir    { 0x01, 0xF7, aImplUniToDBCSTab_JOHAB_63 },                 /* 0x63 */
1028cdf0e10cSrcweir    { 0x0D, 0xFE, aImplUniToDBCSTab_JOHAB_64 },                 /* 0x64 */
1029cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_65 },                 /* 0x65 */
1030cdf0e10cSrcweir    { 0x06, 0xFF, aImplUniToDBCSTab_JOHAB_66 },                 /* 0x66 */
1031cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_JOHAB_67 },                 /* 0x67 */
1032cdf0e10cSrcweir    { 0x12, 0xFA, aImplUniToDBCSTab_JOHAB_68 },                 /* 0x68 */
1033cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_69 },                 /* 0x69 */
1034cdf0e10cSrcweir    { 0x02, 0xFB, aImplUniToDBCSTab_JOHAB_6A },                 /* 0x6A */
1035cdf0e10cSrcweir    { 0x04, 0xEC, aImplUniToDBCSTab_JOHAB_6B },                 /* 0x6B */
1036cdf0e10cSrcweir    { 0x08, 0xF3, aImplUniToDBCSTab_JOHAB_6C },                 /* 0x6C */
1037cdf0e10cSrcweir    { 0x03, 0xFB, aImplUniToDBCSTab_JOHAB_6D },                 /* 0x6D */
1038cdf0e10cSrcweir    { 0x17, 0xFF, aImplUniToDBCSTab_JOHAB_6E },                 /* 0x6E */
1039cdf0e10cSrcweir    { 0x01, 0xFE, aImplUniToDBCSTab_JOHAB_6F },                 /* 0x6F */
1040cdf0e10cSrcweir    { 0x01, 0xFD, aImplUniToDBCSTab_JOHAB_70 },                 /* 0x70 */
1041cdf0e10cSrcweir    { 0x04, 0xFF, aImplUniToDBCSTab_JOHAB_71 },                 /* 0x71 */
1042cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_JOHAB_72 },                 /* 0x72 */
1043cdf0e10cSrcweir    { 0x02, 0xFE, aImplUniToDBCSTab_JOHAB_73 },                 /* 0x73 */
1044cdf0e10cSrcweir    { 0x01, 0xF7, aImplUniToDBCSTab_JOHAB_74 },                 /* 0x74 */
1045cdf0e10cSrcweir    { 0x01, 0xFC, aImplUniToDBCSTab_JOHAB_75 },                 /* 0x75 */
1046cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_JOHAB_76 },                 /* 0x76 */
1047cdf0e10cSrcweir    { 0x01, 0xFB, aImplUniToDBCSTab_JOHAB_77 },                 /* 0x77 */
1048cdf0e10cSrcweir    { 0x02, 0xFB, aImplUniToDBCSTab_JOHAB_78 },                 /* 0x78 */
1049cdf0e10cSrcweir    { 0x01, 0xFB, aImplUniToDBCSTab_JOHAB_79 },                 /* 0x79 */
1050cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_7A },                 /* 0x7A */
1051cdf0e10cSrcweir    { 0x0F, 0xE9, aImplUniToDBCSTab_JOHAB_7B },                 /* 0x7B */
1052cdf0e10cSrcweir    { 0x07, 0xFE, aImplUniToDBCSTab_JOHAB_7C },                 /* 0x7C */
1053cdf0e10cSrcweir    { 0x00, 0xFB, aImplUniToDBCSTab_JOHAB_7D },                 /* 0x7D */
1054cdf0e10cSrcweir    { 0x09, 0x9C, aImplUniToDBCSTab_JOHAB_7E },                 /* 0x7E */
1055cdf0e10cSrcweir    { 0x36, 0xFC, aImplUniToDBCSTab_JOHAB_7F },                 /* 0x7F */
1056cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_JOHAB_80 },                 /* 0x80 */
1057cdf0e10cSrcweir    { 0x02, 0xFE, aImplUniToDBCSTab_JOHAB_81 },                 /* 0x81 */
1058cdf0e10cSrcweir    { 0x05, 0xFE, aImplUniToDBCSTab_JOHAB_82 },                 /* 0x82 */
1059cdf0e10cSrcweir    { 0x01, 0xFD, aImplUniToDBCSTab_JOHAB_83 },                 /* 0x83 */
1060cdf0e10cSrcweir    { 0x03, 0xFC, aImplUniToDBCSTab_JOHAB_84 },                 /* 0x84 */
1061cdf0e10cSrcweir    { 0x11, 0xFF, aImplUniToDBCSTab_JOHAB_85 },                 /* 0x85 */
1062cdf0e10cSrcweir    { 0x02, 0xFE, aImplUniToDBCSTab_JOHAB_86 },                 /* 0x86 */
1063cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_JOHAB_87 },                 /* 0x87 */
1064cdf0e10cSrcweir    { 0x05, 0xFD, aImplUniToDBCSTab_JOHAB_88 },                 /* 0x88 */
1065cdf0e10cSrcweir    { 0x07, 0xF8, aImplUniToDBCSTab_JOHAB_89 },                 /* 0x89 */
1066cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_JOHAB_8A },                 /* 0x8A */
1067cdf0e10cSrcweir    { 0x00, 0x9A, aImplUniToDBCSTab_JOHAB_8B },                 /* 0x8B */
1068cdf0e10cSrcweir    { 0x37, 0xFD, aImplUniToDBCSTab_JOHAB_8C },                 /* 0x8C */
1069cdf0e10cSrcweir    { 0x04, 0xFB, aImplUniToDBCSTab_JOHAB_8D },                 /* 0x8D */
1070cdf0e10cSrcweir    { 0x0A, 0xFE, aImplUniToDBCSTab_JOHAB_8E },                 /* 0x8E */
1071cdf0e10cSrcweir    { 0x03, 0xFD, aImplUniToDBCSTab_JOHAB_8F },                 /* 0x8F */
1072cdf0e10cSrcweir    { 0x00, 0xFD, aImplUniToDBCSTab_JOHAB_90 },                 /* 0x90 */
1073cdf0e10cSrcweir    { 0x02, 0xF5, aImplUniToDBCSTab_JOHAB_91 },                 /* 0x91 */
1074cdf0e10cSrcweir    { 0x0D, 0xFC, aImplUniToDBCSTab_JOHAB_92 },                 /* 0x92 */
1075cdf0e10cSrcweir    { 0x04, 0xF6, aImplUniToDBCSTab_JOHAB_93 },                 /* 0x93 */
1076cdf0e10cSrcweir    { 0x04, 0x7F, aImplUniToDBCSTab_JOHAB_94 },                 /* 0x94 */
1077cdf0e10cSrcweir    { 0x77, 0xE2, aImplUniToDBCSTab_JOHAB_95 },                 /* 0x95 */
1078cdf0e10cSrcweir    { 0x1C, 0xFB, aImplUniToDBCSTab_JOHAB_96 },                 /* 0x96 */
1079cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_97 },                 /* 0x97 */
1080cdf0e10cSrcweir    { 0x00, 0xFE, aImplUniToDBCSTab_JOHAB_98 },                 /* 0x98 */
1081cdf0e10cSrcweir    { 0x03, 0xFF, aImplUniToDBCSTab_JOHAB_99 },                 /* 0x99 */
1082cdf0e10cSrcweir    { 0x01, 0xEE, aImplUniToDBCSTab_JOHAB_9A },                 /* 0x9A */
1083cdf0e10cSrcweir    { 0x1A, 0xE8, aImplUniToDBCSTab_JOHAB_9B },                 /* 0x9B */
1084cdf0e10cSrcweir    { 0x0D, 0xF6, aImplUniToDBCSTab_JOHAB_9C },                 /* 0x9C */
1085cdf0e10cSrcweir    { 0x09, 0xFA, aImplUniToDBCSTab_JOHAB_9D },                 /* 0x9D */
1086cdf0e10cSrcweir    { 0x1A, 0xF4, aImplUniToDBCSTab_JOHAB_9E },                 /* 0x9E */
1087cdf0e10cSrcweir    { 0x07, 0x9C, aImplUniToDBCSTab_JOHAB_9F },                 /* 0x9F */
1088cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA0 */
1089cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA1 */
1090cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA2 */
1091cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA3 */
1092cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA4 */
1093cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA5 */
1094cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA6 */
1095cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA7 */
1096cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA8 */
1097cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xA9 */
1098cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xAA */
1099cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xAB */
1100cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_AC },                 /* 0xAC */
1101cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_AD },                 /* 0xAD */
1102cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_AE },                 /* 0xAE */
1103cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_AF },                 /* 0xAF */
1104cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B0 },                 /* 0xB0 */
1105cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B1 },                 /* 0xB1 */
1106cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B2 },                 /* 0xB2 */
1107cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B3 },                 /* 0xB3 */
1108cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B4 },                 /* 0xB4 */
1109cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B5 },                 /* 0xB5 */
1110cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B6 },                 /* 0xB6 */
1111cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B7 },                 /* 0xB7 */
1112cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B8 },                 /* 0xB8 */
1113cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_B9 },                 /* 0xB9 */
1114cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_BA },                 /* 0xBA */
1115cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_BB },                 /* 0xBB */
1116cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_BC },                 /* 0xBC */
1117cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_BD },                 /* 0xBD */
1118cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_BE },                 /* 0xBE */
1119cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_BF },                 /* 0xBF */
1120cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C0 },                 /* 0xC0 */
1121cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C1 },                 /* 0xC1 */
1122cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C2 },                 /* 0xC2 */
1123cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C3 },                 /* 0xC3 */
1124cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C4 },                 /* 0xC4 */
1125cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C5 },                 /* 0xC5 */
1126cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C6 },                 /* 0xC6 */
1127cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C7 },                 /* 0xC7 */
1128cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C8 },                 /* 0xC8 */
1129cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_C9 },                 /* 0xC9 */
1130cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_CA },                 /* 0xCA */
1131cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_CB },                 /* 0xCB */
1132cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_CC },                 /* 0xCC */
1133cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_CD },                 /* 0xCD */
1134cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_CE },                 /* 0xCE */
1135cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_CF },                 /* 0xCF */
1136cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_D0 },                 /* 0xD0 */
1137cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_D1 },                 /* 0xD1 */
1138cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_D2 },                 /* 0xD2 */
1139cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_D3 },                 /* 0xD3 */
1140cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_D4 },                 /* 0xD4 */
1141cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_D5 },                 /* 0xD5 */
1142cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_D6 },                 /* 0xD6 */
1143cdf0e10cSrcweir    { 0x00, 0xA3, aImplUniToDBCSTab_JOHAB_D7 },                 /* 0xD7 */
1144cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xD8 */
1145cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xD9 */
1146cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDA */
1147cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDB */
1148cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDC */
1149cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDD */
1150cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDE */
1151cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xDF */
1152cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE0 */
1153cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE1 */
1154cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE2 */
1155cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE3 */
1156cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE4 */
1157cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE5 */
1158cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE6 */
1159cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE7 */
1160cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE8 */
1161cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xE9 */
1162cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEA */
1163cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEB */
1164cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEC */
1165cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xED */
1166cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEE */
1167cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xEF */
1168cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF0 */
1169cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF1 */
1170cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF2 */
1171cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF3 */
1172cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF4 */
1173cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF5 */
1174cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF6 */
1175cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF7 */
1176cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xF8 */
1177cdf0e10cSrcweir    { 0x00, 0xFF, aImplUniToDBCSTab_JOHAB_F9 },                 /* 0xF9 */
1178cdf0e10cSrcweir    { 0x00, 0x0B, aImplUniToDBCSTab_JOHAB_FA },                 /* 0xFA */
1179cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xFB */
1180cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xFC */
1181cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xFD */
1182cdf0e10cSrcweir    {    1,    0, NULL },                                       /* 0xFE */
1183cdf0e10cSrcweir    { 0x01, 0xE6, aImplUniToDBCSTab_JOHAB_FF }                  /* 0xFF */
1184cdf0e10cSrcweir};
1185cdf0e10cSrcweir
1186cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
1187cdf0e10cSrcweir
1188cdf0e10cSrcweir/* D831-D87E    -> E000-E05D */
1189cdf0e10cSrcweir/* D891-D8FE    -> E05E-E0BB */
1190cdf0e10cSrcweir
1191cdf0e10cSrcweir#define DBCS_EUDC_MS1361_COUNT    2
1192cdf0e10cSrcweirstatic ImplDBCSEUDCData const aImplMS1361DBCSEUDCTab[DBCS_EUDC_MS1361_COUNT] =
1193cdf0e10cSrcweir{
1194cdf0e10cSrcweir    /* EUDC-Range */
1195cdf0e10cSrcweir    /* Lead:    D8-D8 */
1196cdf0e10cSrcweir    /* Trail:   31-7E */
1197cdf0e10cSrcweir    { 0xD8, 0xD8, 0x31, 0x7E, 0, 0, 0, 0, 1, 0x5D, 0xE000, 0xE05D },
1198cdf0e10cSrcweir    /* Lead:    D8-D8 */
1199cdf0e10cSrcweir    /* Trail:   91-FE */
1200cdf0e10cSrcweir    { 0xD8, 0xD8, 0x91, 0xFE, 0, 0, 0, 0, 1, 0x5D, 0xE05E, 0xE0BB }
1201cdf0e10cSrcweir};
1202cdf0e10cSrcweir
1203cdf0e10cSrcweir/* ----------------------------------------------------------------------- */
1204cdf0e10cSrcweir
1205cdf0e10cSrcweirstatic ImplDBCSConvertData const aImplJOHABDBCSCvtData =
1206cdf0e10cSrcweir{
1207cdf0e10cSrcweir    aJOHABUniLeadTab,
1208cdf0e10cSrcweir    aJOHABDBCSHighTab,
1209cdf0e10cSrcweir    0x00, 0xFF,
1210cdf0e10cSrcweir    0x31, 0xFE,
1211cdf0e10cSrcweir    aImplMS1361DBCSEUDCTab,
1212cdf0e10cSrcweir    DBCS_EUDC_MS1361_COUNT
1213cdf0e10cSrcweir};
1214cdf0e10cSrcweir
1215cdf0e10cSrcweir/* ======================================================================= */
1216cdf0e10cSrcweir
1217cdf0e10cSrcweirstatic ImplTextEncodingData const aImplMS1361TextEncodingData
1218cdf0e10cSrcweir    = { { &aImplJOHABDBCSCvtData,
1219cdf0e10cSrcweir          ImplDBCSToUnicode,
1220cdf0e10cSrcweir          ImplUnicodeToDBCS,
1221cdf0e10cSrcweir          NULL,
1222cdf0e10cSrcweir          NULL,
1223cdf0e10cSrcweir          NULL,
1224cdf0e10cSrcweir          NULL,
1225cdf0e10cSrcweir          NULL,
1226cdf0e10cSrcweir          NULL },
1227cdf0e10cSrcweir        1,
1228cdf0e10cSrcweir        2,
1229cdf0e10cSrcweir        2,
1230cdf0e10cSrcweir        130,
1231cdf0e10cSrcweir        "euc-kr",
1232cdf0e10cSrcweir        "euc-kr",
1233cdf0e10cSrcweir        RTL_TEXTENCODING_INFO_MULTIBYTE | RTL_TEXTENCODING_INFO_MIME };
1234cdf0e10cSrcweir    /* SCRIPT_KOREAN, pc code page 1361, mac encoding 3 */
1235