Home | History | Annotate | Download | only in hyphenation
      1 #include <stdlib.h>
      2 #include <string.h>
      3 #include <stdio.h>
      4 #include "csutil.h"
      5 
      6 
      7 /* strip strings into token based on single char delimiter */
      8 /* acts like strsep() but only uses a delim char and not  */
      9 /* a delim string */
     10 
     11 char * mystrsep(char ** stringp, const char delim)
     12 {
     13   char * rv = NULL;
     14   char * mp = *stringp;
     15   int n = strlen(mp);
     16   if (n > 0) {
     17      char * dp = (char *)memchr(mp,(int)((unsigned char)delim),n);
     18      if (dp) {
     19        int nc;
     20         *stringp = dp+1;
     21         nc = (int)((unsigned long)dp - (unsigned long)mp);
     22         rv = (char *) malloc(nc+1);
     23         memcpy(rv,mp,nc);
     24         *(rv+nc) = '\0';
     25         return rv;
     26      } else {
     27        rv = (char *) malloc(n+1);
     28        memcpy(rv, mp, n);
     29        *(rv+n) = '\0';
     30        *stringp = mp + n;
     31        return rv;
     32      }
     33   }
     34   return NULL;
     35 }
     36 
     37 
     38 /* replaces strdup with ansi version */
     39 char * mystrdup(const char * s)
     40 {
     41   char * d = NULL;
     42   if (s) {
     43      int sl = strlen(s);
     44      d = (char *) malloc(((sl+1) * sizeof(char)));
     45      if (d) memcpy(d,s,((sl+1)*sizeof(char)));
     46   }
     47   return d;
     48 }
     49 
     50 
     51 /* remove cross-platform text line end characters */
     52 void mychomp(char * s)
     53 {
     54   int k = strlen(s);
     55   if ((k > 0) && ((*(s+k-1)=='\r') || (*(s+k-1)=='\n'))) *(s+k-1) = '\0';
     56   if ((k > 1) && (*(s+k-2) == '\r')) *(s+k-2) = '\0';
     57 }
     58 
     59 
     60 /* convert null terminated string to all caps using encoding  */
     61 void enmkallcap(char * d, const char * p, const char * encoding)
     62 {
     63   struct cs_info * csconv = get_current_cs(encoding);
     64   while (*p != '\0') {
     65     *d++ = csconv[((unsigned char) *p)].cupper;
     66     p++;
     67   }
     68   *d = '\0';
     69 }
     70 
     71 
     72 /* convert null terminated string to all little using encoding */
     73 void enmkallsmall(char * d, const char * p, const char * encoding)
     74 {
     75   struct cs_info * csconv = get_current_cs(encoding);
     76   while (*p != '\0') {
     77     *d++ = csconv[((unsigned char) *p)].clower;
     78     p++;
     79   }
     80   *d = '\0';
     81 }
     82 
     83 
     84 /* convert null terminated string to have intial capital using encoding */
     85 void enmkinitcap(char * d, const char * p, const char * encoding)
     86 {
     87   struct cs_info * csconv = get_current_cs(encoding);
     88   memcpy(d,p,(strlen(p)+1));
     89   if (*p != '\0') *d= csconv[((unsigned char)*p)].cupper;
     90 }
     91 
     92 
     93 /* convert null terminated string to all caps */
     94 void mkallcap(char * p, const struct cs_info * csconv)
     95 {
     96   while (*p != '\0') {
     97     *p = csconv[((unsigned char) *p)].cupper;
     98     p++;
     99   }
    100 }
    101 
    102 
    103 /* convert null terminated string to all little */
    104 void mkallsmall(char * p, const struct cs_info * csconv)
    105 {
    106   while (*p != '\0') {
    107     *p = csconv[((unsigned char) *p)].clower;
    108     p++;
    109   }
    110 }
    111 
    112 
    113 /* convert null terminated string to have intial capital */
    114 void mkinitcap(char * p, const struct cs_info * csconv)
    115 {
    116   if (*p != '\0') *p = csconv[((unsigned char)*p)].cupper;
    117 }
    118 
    119 
    120 
    121 
    122 /* these are simple character mappings for the  */
    123 /* encodings supported */
    124 /* supplying isupper, tolower, and toupper */
    125 
    126 struct cs_info iso1_tbl[] = {
    127 { 0x00, 0x00, 0x00 },
    128 { 0x00, 0x01, 0x01 },
    129 { 0x00, 0x02, 0x02 },
    130 { 0x00, 0x03, 0x03 },
    131 { 0x00, 0x04, 0x04 },
    132 { 0x00, 0x05, 0x05 },
    133 { 0x00, 0x06, 0x06 },
    134 { 0x00, 0x07, 0x07 },
    135 { 0x00, 0x08, 0x08 },
    136 { 0x00, 0x09, 0x09 },
    137 { 0x00, 0x0a, 0x0a },
    138 { 0x00, 0x0b, 0x0b },
    139 { 0x00, 0x0c, 0x0c },
    140 { 0x00, 0x0d, 0x0d },
    141 { 0x00, 0x0e, 0x0e },
    142 { 0x00, 0x0f, 0x0f },
    143 { 0x00, 0x10, 0x10 },
    144 { 0x00, 0x11, 0x11 },
    145 { 0x00, 0x12, 0x12 },
    146 { 0x00, 0x13, 0x13 },
    147 { 0x00, 0x14, 0x14 },
    148 { 0x00, 0x15, 0x15 },
    149 { 0x00, 0x16, 0x16 },
    150 { 0x00, 0x17, 0x17 },
    151 { 0x00, 0x18, 0x18 },
    152 { 0x00, 0x19, 0x19 },
    153 { 0x00, 0x1a, 0x1a },
    154 { 0x00, 0x1b, 0x1b },
    155 { 0x00, 0x1c, 0x1c },
    156 { 0x00, 0x1d, 0x1d },
    157 { 0x00, 0x1e, 0x1e },
    158 { 0x00, 0x1f, 0x1f },
    159 { 0x00, 0x20, 0x20 },
    160 { 0x00, 0x21, 0x21 },
    161 { 0x00, 0x22, 0x22 },
    162 { 0x00, 0x23, 0x23 },
    163 { 0x00, 0x24, 0x24 },
    164 { 0x00, 0x25, 0x25 },
    165 { 0x00, 0x26, 0x26 },
    166 { 0x00, 0x27, 0x27 },
    167 { 0x00, 0x28, 0x28 },
    168 { 0x00, 0x29, 0x29 },
    169 { 0x00, 0x2a, 0x2a },
    170 { 0x00, 0x2b, 0x2b },
    171 { 0x00, 0x2c, 0x2c },
    172 { 0x00, 0x2d, 0x2d },
    173 { 0x00, 0x2e, 0x2e },
    174 { 0x00, 0x2f, 0x2f },
    175 { 0x00, 0x30, 0x30 },
    176 { 0x00, 0x31, 0x31 },
    177 { 0x00, 0x32, 0x32 },
    178 { 0x00, 0x33, 0x33 },
    179 { 0x00, 0x34, 0x34 },
    180 { 0x00, 0x35, 0x35 },
    181 { 0x00, 0x36, 0x36 },
    182 { 0x00, 0x37, 0x37 },
    183 { 0x00, 0x38, 0x38 },
    184 { 0x00, 0x39, 0x39 },
    185 { 0x00, 0x3a, 0x3a },
    186 { 0x00, 0x3b, 0x3b },
    187 { 0x00, 0x3c, 0x3c },
    188 { 0x00, 0x3d, 0x3d },
    189 { 0x00, 0x3e, 0x3e },
    190 { 0x00, 0x3f, 0x3f },
    191 { 0x00, 0x40, 0x40 },
    192 { 0x01, 0x61, 0x41 },
    193 { 0x01, 0x62, 0x42 },
    194 { 0x01, 0x63, 0x43 },
    195 { 0x01, 0x64, 0x44 },
    196 { 0x01, 0x65, 0x45 },
    197 { 0x01, 0x66, 0x46 },
    198 { 0x01, 0x67, 0x47 },
    199 { 0x01, 0x68, 0x48 },
    200 { 0x01, 0x69, 0x49 },
    201 { 0x01, 0x6a, 0x4a },
    202 { 0x01, 0x6b, 0x4b },
    203 { 0x01, 0x6c, 0x4c },
    204 { 0x01, 0x6d, 0x4d },
    205 { 0x01, 0x6e, 0x4e },
    206 { 0x01, 0x6f, 0x4f },
    207 { 0x01, 0x70, 0x50 },
    208 { 0x01, 0x71, 0x51 },
    209 { 0x01, 0x72, 0x52 },
    210 { 0x01, 0x73, 0x53 },
    211 { 0x01, 0x74, 0x54 },
    212 { 0x01, 0x75, 0x55 },
    213 { 0x01, 0x76, 0x56 },
    214 { 0x01, 0x77, 0x57 },
    215 { 0x01, 0x78, 0x58 },
    216 { 0x01, 0x79, 0x59 },
    217 { 0x01, 0x7a, 0x5a },
    218 { 0x00, 0x5b, 0x5b },
    219 { 0x00, 0x5c, 0x5c },
    220 { 0x00, 0x5d, 0x5d },
    221 { 0x00, 0x5e, 0x5e },
    222 { 0x00, 0x5f, 0x5f },
    223 { 0x00, 0x60, 0x60 },
    224 { 0x00, 0x61, 0x41 },
    225 { 0x00, 0x62, 0x42 },
    226 { 0x00, 0x63, 0x43 },
    227 { 0x00, 0x64, 0x44 },
    228 { 0x00, 0x65, 0x45 },
    229 { 0x00, 0x66, 0x46 },
    230 { 0x00, 0x67, 0x47 },
    231 { 0x00, 0x68, 0x48 },
    232 { 0x00, 0x69, 0x49 },
    233 { 0x00, 0x6a, 0x4a },
    234 { 0x00, 0x6b, 0x4b },
    235 { 0x00, 0x6c, 0x4c },
    236 { 0x00, 0x6d, 0x4d },
    237 { 0x00, 0x6e, 0x4e },
    238 { 0x00, 0x6f, 0x4f },
    239 { 0x00, 0x70, 0x50 },
    240 { 0x00, 0x71, 0x51 },
    241 { 0x00, 0x72, 0x52 },
    242 { 0x00, 0x73, 0x53 },
    243 { 0x00, 0x74, 0x54 },
    244 { 0x00, 0x75, 0x55 },
    245 { 0x00, 0x76, 0x56 },
    246 { 0x00, 0x77, 0x57 },
    247 { 0x00, 0x78, 0x58 },
    248 { 0x00, 0x79, 0x59 },
    249 { 0x00, 0x7a, 0x5a },
    250 { 0x00, 0x7b, 0x7b },
    251 { 0x00, 0x7c, 0x7c },
    252 { 0x00, 0x7d, 0x7d },
    253 { 0x00, 0x7e, 0x7e },
    254 { 0x00, 0x7f, 0x7f },
    255 { 0x00, 0x80, 0x80 },
    256 { 0x00, 0x81, 0x81 },
    257 { 0x00, 0x82, 0x82 },
    258 { 0x00, 0x83, 0x83 },
    259 { 0x00, 0x84, 0x84 },
    260 { 0x00, 0x85, 0x85 },
    261 { 0x00, 0x86, 0x86 },
    262 { 0x00, 0x87, 0x87 },
    263 { 0x00, 0x88, 0x88 },
    264 { 0x00, 0x89, 0x89 },
    265 { 0x00, 0x8a, 0x8a },
    266 { 0x00, 0x8b, 0x8b },
    267 { 0x00, 0x8c, 0x8c },
    268 { 0x00, 0x8d, 0x8d },
    269 { 0x00, 0x8e, 0x8e },
    270 { 0x00, 0x8f, 0x8f },
    271 { 0x00, 0x90, 0x90 },
    272 { 0x00, 0x91, 0x91 },
    273 { 0x00, 0x92, 0x92 },
    274 { 0x00, 0x93, 0x93 },
    275 { 0x00, 0x94, 0x94 },
    276 { 0x00, 0x95, 0x95 },
    277 { 0x00, 0x96, 0x96 },
    278 { 0x00, 0x97, 0x97 },
    279 { 0x00, 0x98, 0x98 },
    280 { 0x00, 0x99, 0x99 },
    281 { 0x00, 0x9a, 0x9a },
    282 { 0x00, 0x9b, 0x9b },
    283 { 0x00, 0x9c, 0x9c },
    284 { 0x00, 0x9d, 0x9d },
    285 { 0x00, 0x9e, 0x9e },
    286 { 0x00, 0x9f, 0x9f },
    287 { 0x00, 0xa0, 0xa0 },
    288 { 0x00, 0xa1, 0xa1 },
    289 { 0x00, 0xa2, 0xa2 },
    290 { 0x00, 0xa3, 0xa3 },
    291 { 0x00, 0xa4, 0xa4 },
    292 { 0x00, 0xa5, 0xa5 },
    293 { 0x00, 0xa6, 0xa6 },
    294 { 0x00, 0xa7, 0xa7 },
    295 { 0x00, 0xa8, 0xa8 },
    296 { 0x00, 0xa9, 0xa9 },
    297 { 0x00, 0xaa, 0xaa },
    298 { 0x00, 0xab, 0xab },
    299 { 0x00, 0xac, 0xac },
    300 { 0x00, 0xad, 0xad },
    301 { 0x00, 0xae, 0xae },
    302 { 0x00, 0xaf, 0xaf },
    303 { 0x00, 0xb0, 0xb0 },
    304 { 0x00, 0xb1, 0xb1 },
    305 { 0x00, 0xb2, 0xb2 },
    306 { 0x00, 0xb3, 0xb3 },
    307 { 0x00, 0xb4, 0xb4 },
    308 { 0x00, 0xb5, 0xb5 },
    309 { 0x00, 0xb6, 0xb6 },
    310 { 0x00, 0xb7, 0xb7 },
    311 { 0x00, 0xb8, 0xb8 },
    312 { 0x00, 0xb9, 0xb9 },
    313 { 0x00, 0xba, 0xba },
    314 { 0x00, 0xbb, 0xbb },
    315 { 0x00, 0xbc, 0xbc },
    316 { 0x00, 0xbd, 0xbd },
    317 { 0x00, 0xbe, 0xbe },
    318 { 0x00, 0xbf, 0xbf },
    319 { 0x01, 0xe0, 0xc0 },
    320 { 0x01, 0xe1, 0xc1 },
    321 { 0x01, 0xe2, 0xc2 },
    322 { 0x01, 0xe3, 0xc3 },
    323 { 0x01, 0xe4, 0xc4 },
    324 { 0x01, 0xe5, 0xc5 },
    325 { 0x01, 0xe6, 0xc6 },
    326 { 0x01, 0xe7, 0xc7 },
    327 { 0x01, 0xe8, 0xc8 },
    328 { 0x01, 0xe9, 0xc9 },
    329 { 0x01, 0xea, 0xca },
    330 { 0x01, 0xeb, 0xcb },
    331 { 0x01, 0xec, 0xcc },
    332 { 0x01, 0xed, 0xcd },
    333 { 0x01, 0xee, 0xce },
    334 { 0x01, 0xef, 0xcf },
    335 { 0x01, 0xf0, 0xd0 },
    336 { 0x01, 0xf1, 0xd1 },
    337 { 0x01, 0xf2, 0xd2 },
    338 { 0x01, 0xf3, 0xd3 },
    339 { 0x01, 0xf4, 0xd4 },
    340 { 0x01, 0xf5, 0xd5 },
    341 { 0x01, 0xf6, 0xd6 },
    342 { 0x00, 0xd7, 0xd7 },
    343 { 0x01, 0xf8, 0xd8 },
    344 { 0x01, 0xf9, 0xd9 },
    345 { 0x01, 0xfa, 0xda },
    346 { 0x01, 0xfb, 0xdb },
    347 { 0x01, 0xfc, 0xdc },
    348 { 0x01, 0xfd, 0xdd },
    349 { 0x01, 0xfe, 0xde },
    350 { 0x00, 0xdf, 0xdf },
    351 { 0x00, 0xe0, 0xc0 },
    352 { 0x00, 0xe1, 0xc1 },
    353 { 0x00, 0xe2, 0xc2 },
    354 { 0x00, 0xe3, 0xc3 },
    355 { 0x00, 0xe4, 0xc4 },
    356 { 0x00, 0xe5, 0xc5 },
    357 { 0x00, 0xe6, 0xc6 },
    358 { 0x00, 0xe7, 0xc7 },
    359 { 0x00, 0xe8, 0xc8 },
    360 { 0x00, 0xe9, 0xc9 },
    361 { 0x00, 0xea, 0xca },
    362 { 0x00, 0xeb, 0xcb },
    363 { 0x00, 0xec, 0xcc },
    364 { 0x00, 0xed, 0xcd },
    365 { 0x00, 0xee, 0xce },
    366 { 0x00, 0xef, 0xcf },
    367 { 0x00, 0xf0, 0xd0 },
    368 { 0x00, 0xf1, 0xd1 },
    369 { 0x00, 0xf2, 0xd2 },
    370 { 0x00, 0xf3, 0xd3 },
    371 { 0x00, 0xf4, 0xd4 },
    372 { 0x00, 0xf5, 0xd5 },
    373 { 0x00, 0xf6, 0xd6 },
    374 { 0x00, 0xf7, 0xf7 },
    375 { 0x00, 0xf8, 0xd8 },
    376 { 0x00, 0xf9, 0xd9 },
    377 { 0x00, 0xfa, 0xda },
    378 { 0x00, 0xfb, 0xdb },
    379 { 0x00, 0xfc, 0xdc },
    380 { 0x00, 0xfd, 0xdd },
    381 { 0x00, 0xfe, 0xde },
    382 { 0x00, 0xff, 0xff },
    383 };
    384 
    385 
    386 struct cs_info iso2_tbl[] = {
    387 { 0x00, 0x00, 0x00 },
    388 { 0x00, 0x01, 0x01 },
    389 { 0x00, 0x02, 0x02 },
    390 { 0x00, 0x03, 0x03 },
    391 { 0x00, 0x04, 0x04 },
    392 { 0x00, 0x05, 0x05 },
    393 { 0x00, 0x06, 0x06 },
    394 { 0x00, 0x07, 0x07 },
    395 { 0x00, 0x08, 0x08 },
    396 { 0x00, 0x09, 0x09 },
    397 { 0x00, 0x0a, 0x0a },
    398 { 0x00, 0x0b, 0x0b },
    399 { 0x00, 0x0c, 0x0c },
    400 { 0x00, 0x0d, 0x0d },
    401 { 0x00, 0x0e, 0x0e },
    402 { 0x00, 0x0f, 0x0f },
    403 { 0x00, 0x10, 0x10 },
    404 { 0x00, 0x11, 0x11 },
    405 { 0x00, 0x12, 0x12 },
    406 { 0x00, 0x13, 0x13 },
    407 { 0x00, 0x14, 0x14 },
    408 { 0x00, 0x15, 0x15 },
    409 { 0x00, 0x16, 0x16 },
    410 { 0x00, 0x17, 0x17 },
    411 { 0x00, 0x18, 0x18 },
    412 { 0x00, 0x19, 0x19 },
    413 { 0x00, 0x1a, 0x1a },
    414 { 0x00, 0x1b, 0x1b },
    415 { 0x00, 0x1c, 0x1c },
    416 { 0x00, 0x1d, 0x1d },
    417 { 0x00, 0x1e, 0x1e },
    418 { 0x00, 0x1f, 0x1f },
    419 { 0x00, 0x20, 0x20 },
    420 { 0x00, 0x21, 0x21 },
    421 { 0x00, 0x22, 0x22 },
    422 { 0x00, 0x23, 0x23 },
    423 { 0x00, 0x24, 0x24 },
    424 { 0x00, 0x25, 0x25 },
    425 { 0x00, 0x26, 0x26 },
    426 { 0x00, 0x27, 0x27 },
    427 { 0x00, 0x28, 0x28 },
    428 { 0x00, 0x29, 0x29 },
    429 { 0x00, 0x2a, 0x2a },
    430 { 0x00, 0x2b, 0x2b },
    431 { 0x00, 0x2c, 0x2c },
    432 { 0x00, 0x2d, 0x2d },
    433 { 0x00, 0x2e, 0x2e },
    434 { 0x00, 0x2f, 0x2f },
    435 { 0x00, 0x30, 0x30 },
    436 { 0x00, 0x31, 0x31 },
    437 { 0x00, 0x32, 0x32 },
    438 { 0x00, 0x33, 0x33 },
    439 { 0x00, 0x34, 0x34 },
    440 { 0x00, 0x35, 0x35 },
    441 { 0x00, 0x36, 0x36 },
    442 { 0x00, 0x37, 0x37 },
    443 { 0x00, 0x38, 0x38 },
    444 { 0x00, 0x39, 0x39 },
    445 { 0x00, 0x3a, 0x3a },
    446 { 0x00, 0x3b, 0x3b },
    447 { 0x00, 0x3c, 0x3c },
    448 { 0x00, 0x3d, 0x3d },
    449 { 0x00, 0x3e, 0x3e },
    450 { 0x00, 0x3f, 0x3f },
    451 { 0x00, 0x40, 0x40 },
    452 { 0x01, 0x61, 0x41 },
    453 { 0x01, 0x62, 0x42 },
    454 { 0x01, 0x63, 0x43 },
    455 { 0x01, 0x64, 0x44 },
    456 { 0x01, 0x65, 0x45 },
    457 { 0x01, 0x66, 0x46 },
    458 { 0x01, 0x67, 0x47 },
    459 { 0x01, 0x68, 0x48 },
    460 { 0x01, 0x69, 0x49 },
    461 { 0x01, 0x6a, 0x4a },
    462 { 0x01, 0x6b, 0x4b },
    463 { 0x01, 0x6c, 0x4c },
    464 { 0x01, 0x6d, 0x4d },
    465 { 0x01, 0x6e, 0x4e },
    466 { 0x01, 0x6f, 0x4f },
    467 { 0x01, 0x70, 0x50 },
    468 { 0x01, 0x71, 0x51 },
    469 { 0x01, 0x72, 0x52 },
    470 { 0x01, 0x73, 0x53 },
    471 { 0x01, 0x74, 0x54 },
    472 { 0x01, 0x75, 0x55 },
    473 { 0x01, 0x76, 0x56 },
    474 { 0x01, 0x77, 0x57 },
    475 { 0x01, 0x78, 0x58 },
    476 { 0x01, 0x79, 0x59 },
    477 { 0x01, 0x7a, 0x5a },
    478 { 0x00, 0x5b, 0x5b },
    479 { 0x00, 0x5c, 0x5c },
    480 { 0x00, 0x5d, 0x5d },
    481 { 0x00, 0x5e, 0x5e },
    482 { 0x00, 0x5f, 0x5f },
    483 { 0x00, 0x60, 0x60 },
    484 { 0x00, 0x61, 0x41 },
    485 { 0x00, 0x62, 0x42 },
    486 { 0x00, 0x63, 0x43 },
    487 { 0x00, 0x64, 0x44 },
    488 { 0x00, 0x65, 0x45 },
    489 { 0x00, 0x66, 0x46 },
    490 { 0x00, 0x67, 0x47 },
    491 { 0x00, 0x68, 0x48 },
    492 { 0x00, 0x69, 0x49 },
    493 { 0x00, 0x6a, 0x4a },
    494 { 0x00, 0x6b, 0x4b },
    495 { 0x00, 0x6c, 0x4c },
    496 { 0x00, 0x6d, 0x4d },
    497 { 0x00, 0x6e, 0x4e },
    498 { 0x00, 0x6f, 0x4f },
    499 { 0x00, 0x70, 0x50 },
    500 { 0x00, 0x71, 0x51 },
    501 { 0x00, 0x72, 0x52 },
    502 { 0x00, 0x73, 0x53 },
    503 { 0x00, 0x74, 0x54 },
    504 { 0x00, 0x75, 0x55 },
    505 { 0x00, 0x76, 0x56 },
    506 { 0x00, 0x77, 0x57 },
    507 { 0x00, 0x78, 0x58 },
    508 { 0x00, 0x79, 0x59 },
    509 { 0x00, 0x7a, 0x5a },
    510 { 0x00, 0x7b, 0x7b },
    511 { 0x00, 0x7c, 0x7c },
    512 { 0x00, 0x7d, 0x7d },
    513 { 0x00, 0x7e, 0x7e },
    514 { 0x00, 0x7f, 0x7f },
    515 { 0x00, 0x80, 0x80 },
    516 { 0x00, 0x81, 0x81 },
    517 { 0x00, 0x82, 0x82 },
    518 { 0x00, 0x83, 0x83 },
    519 { 0x00, 0x84, 0x84 },
    520 { 0x00, 0x85, 0x85 },
    521 { 0x00, 0x86, 0x86 },
    522 { 0x00, 0x87, 0x87 },
    523 { 0x00, 0x88, 0x88 },
    524 { 0x00, 0x89, 0x89 },
    525 { 0x00, 0x8a, 0x8a },
    526 { 0x00, 0x8b, 0x8b },
    527 { 0x00, 0x8c, 0x8c },
    528 { 0x00, 0x8d, 0x8d },
    529 { 0x00, 0x8e, 0x8e },
    530 { 0x00, 0x8f, 0x8f },
    531 { 0x00, 0x90, 0x90 },
    532 { 0x00, 0x91, 0x91 },
    533 { 0x00, 0x92, 0x92 },
    534 { 0x00, 0x93, 0x93 },
    535 { 0x00, 0x94, 0x94 },
    536 { 0x00, 0x95, 0x95 },
    537 { 0x00, 0x96, 0x96 },
    538 { 0x00, 0x97, 0x97 },
    539 { 0x00, 0x98, 0x98 },
    540 { 0x00, 0x99, 0x99 },
    541 { 0x00, 0x9a, 0x9a },
    542 { 0x00, 0x9b, 0x9b },
    543 { 0x00, 0x9c, 0x9c },
    544 { 0x00, 0x9d, 0x9d },
    545 { 0x00, 0x9e, 0x9e },
    546 { 0x00, 0x9f, 0x9f },
    547 { 0x00, 0xa0, 0xa0 },
    548 { 0x01, 0xb1, 0xa1 },
    549 { 0x00, 0xa2, 0xa2 },
    550 { 0x01, 0xb3, 0xa3 },
    551 { 0x00, 0xa4, 0xa4 },
    552 { 0x01, 0xb5, 0xa5 },
    553 { 0x01, 0xb6, 0xa6 },
    554 { 0x00, 0xa7, 0xa7 },
    555 { 0x00, 0xa8, 0xa8 },
    556 { 0x01, 0xb9, 0xa9 },
    557 { 0x01, 0xba, 0xaa },
    558 { 0x01, 0xbb, 0xab },
    559 { 0x01, 0xbc, 0xac },
    560 { 0x00, 0xad, 0xad },
    561 { 0x01, 0xbe, 0xae },
    562 { 0x01, 0xbf, 0xaf },
    563 { 0x00, 0xb0, 0xb0 },
    564 { 0x00, 0xb1, 0xa1 },
    565 { 0x00, 0xb2, 0xb2 },
    566 { 0x00, 0xb3, 0xa3 },
    567 { 0x00, 0xb4, 0xb4 },
    568 { 0x00, 0xb5, 0xa5 },
    569 { 0x00, 0xb6, 0xa6 },
    570 { 0x00, 0xb7, 0xb7 },
    571 { 0x00, 0xb8, 0xb8 },
    572 { 0x00, 0xb9, 0xa9 },
    573 { 0x00, 0xba, 0xaa },
    574 { 0x00, 0xbb, 0xab },
    575 { 0x00, 0xbc, 0xac },
    576 { 0x00, 0xbd, 0xbd },
    577 { 0x00, 0xbe, 0xae },
    578 { 0x00, 0xbf, 0xaf },
    579 { 0x01, 0xe0, 0xc0 },
    580 { 0x01, 0xe1, 0xc1 },
    581 { 0x01, 0xe2, 0xc2 },
    582 { 0x01, 0xe3, 0xc3 },
    583 { 0x01, 0xe4, 0xc4 },
    584 { 0x01, 0xe5, 0xc5 },
    585 { 0x01, 0xe6, 0xc6 },
    586 { 0x01, 0xe7, 0xc7 },
    587 { 0x01, 0xe8, 0xc8 },
    588 { 0x01, 0xe9, 0xc9 },
    589 { 0x01, 0xea, 0xca },
    590 { 0x01, 0xeb, 0xcb },
    591 { 0x01, 0xec, 0xcc },
    592 { 0x01, 0xed, 0xcd },
    593 { 0x01, 0xee, 0xce },
    594 { 0x01, 0xef, 0xcf },
    595 { 0x01, 0xf0, 0xd0 },
    596 { 0x01, 0xf1, 0xd1 },
    597 { 0x01, 0xf2, 0xd2 },
    598 { 0x01, 0xf3, 0xd3 },
    599 { 0x01, 0xf4, 0xd4 },
    600 { 0x01, 0xf5, 0xd5 },
    601 { 0x01, 0xf6, 0xd6 },
    602 { 0x00, 0xd7, 0xd7 },
    603 { 0x01, 0xf8, 0xd8 },
    604 { 0x01, 0xf9, 0xd9 },
    605 { 0x01, 0xfa, 0xda },
    606 { 0x01, 0xfb, 0xdb },
    607 { 0x01, 0xfc, 0xdc },
    608 { 0x01, 0xfd, 0xdd },
    609 { 0x01, 0xfe, 0xde },
    610 { 0x00, 0xdf, 0xdf },
    611 { 0x00, 0xe0, 0xc0 },
    612 { 0x00, 0xe1, 0xc1 },
    613 { 0x00, 0xe2, 0xc2 },
    614 { 0x00, 0xe3, 0xc3 },
    615 { 0x00, 0xe4, 0xc4 },
    616 { 0x00, 0xe5, 0xc5 },
    617 { 0x00, 0xe6, 0xc6 },
    618 { 0x00, 0xe7, 0xc7 },
    619 { 0x00, 0xe8, 0xc8 },
    620 { 0x00, 0xe9, 0xc9 },
    621 { 0x00, 0xea, 0xca },
    622 { 0x00, 0xeb, 0xcb },
    623 { 0x00, 0xec, 0xcc },
    624 { 0x00, 0xed, 0xcd },
    625 { 0x00, 0xee, 0xce },
    626 { 0x00, 0xef, 0xcf },
    627 { 0x00, 0xf0, 0xd0 },
    628 { 0x00, 0xf1, 0xd1 },
    629 { 0x00, 0xf2, 0xd2 },
    630 { 0x00, 0xf3, 0xd3 },
    631 { 0x00, 0xf4, 0xd4 },
    632 { 0x00, 0xf5, 0xd5 },
    633 { 0x00, 0xf6, 0xd6 },
    634 { 0x00, 0xf7, 0xf7 },
    635 { 0x00, 0xf8, 0xd8 },
    636 { 0x00, 0xf9, 0xd9 },
    637 { 0x00, 0xfa, 0xda },
    638 { 0x00, 0xfb, 0xdb },
    639 { 0x00, 0xfc, 0xdc },
    640 { 0x00, 0xfd, 0xdd },
    641 { 0x00, 0xfe, 0xde },
    642 { 0x00, 0xff, 0xff },
    643 };
    644 
    645 
    646 struct cs_info iso3_tbl[] = {
    647 { 0x00, 0x00, 0x00 },
    648 { 0x00, 0x01, 0x01 },
    649 { 0x00, 0x02, 0x02 },
    650 { 0x00, 0x03, 0x03 },
    651 { 0x00, 0x04, 0x04 },
    652 { 0x00, 0x05, 0x05 },
    653 { 0x00, 0x06, 0x06 },
    654 { 0x00, 0x07, 0x07 },
    655 { 0x00, 0x08, 0x08 },
    656 { 0x00, 0x09, 0x09 },
    657 { 0x00, 0x0a, 0x0a },
    658 { 0x00, 0x0b, 0x0b },
    659 { 0x00, 0x0c, 0x0c },
    660 { 0x00, 0x0d, 0x0d },
    661 { 0x00, 0x0e, 0x0e },
    662 { 0x00, 0x0f, 0x0f },
    663 { 0x00, 0x10, 0x10 },
    664 { 0x00, 0x11, 0x11 },
    665 { 0x00, 0x12, 0x12 },
    666 { 0x00, 0x13, 0x13 },
    667 { 0x00, 0x14, 0x14 },
    668 { 0x00, 0x15, 0x15 },
    669 { 0x00, 0x16, 0x16 },
    670 { 0x00, 0x17, 0x17 },
    671 { 0x00, 0x18, 0x18 },
    672 { 0x00, 0x19, 0x19 },
    673 { 0x00, 0x1a, 0x1a },
    674 { 0x00, 0x1b, 0x1b },
    675 { 0x00, 0x1c, 0x1c },
    676 { 0x00, 0x1d, 0x1d },
    677 { 0x00, 0x1e, 0x1e },
    678 { 0x00, 0x1f, 0x1f },
    679 { 0x00, 0x20, 0x20 },
    680 { 0x00, 0x21, 0x21 },
    681 { 0x00, 0x22, 0x22 },
    682 { 0x00, 0x23, 0x23 },
    683 { 0x00, 0x24, 0x24 },
    684 { 0x00, 0x25, 0x25 },
    685 { 0x00, 0x26, 0x26 },
    686 { 0x00, 0x27, 0x27 },
    687 { 0x00, 0x28, 0x28 },
    688 { 0x00, 0x29, 0x29 },
    689 { 0x00, 0x2a, 0x2a },
    690 { 0x00, 0x2b, 0x2b },
    691 { 0x00, 0x2c, 0x2c },
    692 { 0x00, 0x2d, 0x2d },
    693 { 0x00, 0x2e, 0x2e },
    694 { 0x00, 0x2f, 0x2f },
    695 { 0x00, 0x30, 0x30 },
    696 { 0x00, 0x31, 0x31 },
    697 { 0x00, 0x32, 0x32 },
    698 { 0x00, 0x33, 0x33 },
    699 { 0x00, 0x34, 0x34 },
    700 { 0x00, 0x35, 0x35 },
    701 { 0x00, 0x36, 0x36 },
    702 { 0x00, 0x37, 0x37 },
    703 { 0x00, 0x38, 0x38 },
    704 { 0x00, 0x39, 0x39 },
    705 { 0x00, 0x3a, 0x3a },
    706 { 0x00, 0x3b, 0x3b },
    707 { 0x00, 0x3c, 0x3c },
    708 { 0x00, 0x3d, 0x3d },
    709 { 0x00, 0x3e, 0x3e },
    710 { 0x00, 0x3f, 0x3f },
    711 { 0x00, 0x40, 0x40 },
    712 { 0x01, 0x61, 0x41 },
    713 { 0x01, 0x62, 0x42 },
    714 { 0x01, 0x63, 0x43 },
    715 { 0x01, 0x64, 0x44 },
    716 { 0x01, 0x65, 0x45 },
    717 { 0x01, 0x66, 0x46 },
    718 { 0x01, 0x67, 0x47 },
    719 { 0x01, 0x68, 0x48 },
    720 { 0x01, 0x69, 0x49 },
    721 { 0x01, 0x6a, 0x4a },
    722 { 0x01, 0x6b, 0x4b },
    723 { 0x01, 0x6c, 0x4c },
    724 { 0x01, 0x6d, 0x4d },
    725 { 0x01, 0x6e, 0x4e },
    726 { 0x01, 0x6f, 0x4f },
    727 { 0x01, 0x70, 0x50 },
    728 { 0x01, 0x71, 0x51 },
    729 { 0x01, 0x72, 0x52 },
    730 { 0x01, 0x73, 0x53 },
    731 { 0x01, 0x74, 0x54 },
    732 { 0x01, 0x75, 0x55 },
    733 { 0x01, 0x76, 0x56 },
    734 { 0x01, 0x77, 0x57 },
    735 { 0x01, 0x78, 0x58 },
    736 { 0x01, 0x79, 0x59 },
    737 { 0x01, 0x7a, 0x5a },
    738 { 0x00, 0x5b, 0x5b },
    739 { 0x00, 0x5c, 0x5c },
    740 { 0x00, 0x5d, 0x5d },
    741 { 0x00, 0x5e, 0x5e },
    742 { 0x00, 0x5f, 0x5f },
    743 { 0x00, 0x60, 0x60 },
    744 { 0x00, 0x61, 0x41 },
    745 { 0x00, 0x62, 0x42 },
    746 { 0x00, 0x63, 0x43 },
    747 { 0x00, 0x64, 0x44 },
    748 { 0x00, 0x65, 0x45 },
    749 { 0x00, 0x66, 0x46 },
    750 { 0x00, 0x67, 0x47 },
    751 { 0x00, 0x68, 0x48 },
    752 { 0x00, 0x69, 0x49 },
    753 { 0x00, 0x6a, 0x4a },
    754 { 0x00, 0x6b, 0x4b },
    755 { 0x00, 0x6c, 0x4c },
    756 { 0x00, 0x6d, 0x4d },
    757 { 0x00, 0x6e, 0x4e },
    758 { 0x00, 0x6f, 0x4f },
    759 { 0x00, 0x70, 0x50 },
    760 { 0x00, 0x71, 0x51 },
    761 { 0x00, 0x72, 0x52 },
    762 { 0x00, 0x73, 0x53 },
    763 { 0x00, 0x74, 0x54 },
    764 { 0x00, 0x75, 0x55 },
    765 { 0x00, 0x76, 0x56 },
    766 { 0x00, 0x77, 0x57 },
    767 { 0x00, 0x78, 0x58 },
    768 { 0x00, 0x79, 0x59 },
    769 { 0x00, 0x7a, 0x5a },
    770 { 0x00, 0x7b, 0x7b },
    771 { 0x00, 0x7c, 0x7c },
    772 { 0x00, 0x7d, 0x7d },
    773 { 0x00, 0x7e, 0x7e },
    774 { 0x00, 0x7f, 0x7f },
    775 { 0x00, 0x80, 0x80 },
    776 { 0x00, 0x81, 0x81 },
    777 { 0x00, 0x82, 0x82 },
    778 { 0x00, 0x83, 0x83 },
    779 { 0x00, 0x84, 0x84 },
    780 { 0x00, 0x85, 0x85 },
    781 { 0x00, 0x86, 0x86 },
    782 { 0x00, 0x87, 0x87 },
    783 { 0x00, 0x88, 0x88 },
    784 { 0x00, 0x89, 0x89 },
    785 { 0x00, 0x8a, 0x8a },
    786 { 0x00, 0x8b, 0x8b },
    787 { 0x00, 0x8c, 0x8c },
    788 { 0x00, 0x8d, 0x8d },
    789 { 0x00, 0x8e, 0x8e },
    790 { 0x00, 0x8f, 0x8f },
    791 { 0x00, 0x90, 0x90 },
    792 { 0x00, 0x91, 0x91 },
    793 { 0x00, 0x92, 0x92 },
    794 { 0x00, 0x93, 0x93 },
    795 { 0x00, 0x94, 0x94 },
    796 { 0x00, 0x95, 0x95 },
    797 { 0x00, 0x96, 0x96 },
    798 { 0x00, 0x97, 0x97 },
    799 { 0x00, 0x98, 0x98 },
    800 { 0x00, 0x99, 0x99 },
    801 { 0x00, 0x9a, 0x9a },
    802 { 0x00, 0x9b, 0x9b },
    803 { 0x00, 0x9c, 0x9c },
    804 { 0x00, 0x9d, 0x9d },
    805 { 0x00, 0x9e, 0x9e },
    806 { 0x00, 0x9f, 0x9f },
    807 { 0x00, 0xa0, 0xa0 },
    808 { 0x01, 0xb1, 0xa1 },
    809 { 0x00, 0xa2, 0xa2 },
    810 { 0x00, 0xa3, 0xa3 },
    811 { 0x00, 0xa4, 0xa4 },
    812 { 0x00, 0xa5, 0xa5 },
    813 { 0x01, 0xb6, 0xa6 },
    814 { 0x00, 0xa7, 0xa7 },
    815 { 0x00, 0xa8, 0xa8 },
    816 { 0x01, 0x69, 0xa9 },
    817 { 0x01, 0xba, 0xaa },
    818 { 0x01, 0xbb, 0xab },
    819 { 0x01, 0xbc, 0xac },
    820 { 0x00, 0xad, 0xad },
    821 { 0x00, 0xae, 0xae },
    822 { 0x01, 0xbf, 0xaf },
    823 { 0x00, 0xb0, 0xb0 },
    824 { 0x00, 0xb1, 0xa1 },
    825 { 0x00, 0xb2, 0xb2 },
    826 { 0x00, 0xb3, 0xb3 },
    827 { 0x00, 0xb4, 0xb4 },
    828 { 0x00, 0xb5, 0xb5 },
    829 { 0x00, 0xb6, 0xa6 },
    830 { 0x00, 0xb7, 0xb7 },
    831 { 0x00, 0xb8, 0xb8 },
    832 { 0x00, 0xb9, 0x49 },
    833 { 0x00, 0xba, 0xaa },
    834 { 0x00, 0xbb, 0xab },
    835 { 0x00, 0xbc, 0xac },
    836 { 0x00, 0xbd, 0xbd },
    837 { 0x00, 0xbe, 0xbe },
    838 { 0x00, 0xbf, 0xaf },
    839 { 0x01, 0xe0, 0xc0 },
    840 { 0x01, 0xe1, 0xc1 },
    841 { 0x01, 0xe2, 0xc2 },
    842 { 0x00, 0xc3, 0xc3 },
    843 { 0x01, 0xe4, 0xc4 },
    844 { 0x01, 0xe5, 0xc5 },
    845 { 0x01, 0xe6, 0xc6 },
    846 { 0x01, 0xe7, 0xc7 },
    847 { 0x01, 0xe8, 0xc8 },
    848 { 0x01, 0xe9, 0xc9 },
    849 { 0x01, 0xea, 0xca },
    850 { 0x01, 0xeb, 0xcb },
    851 { 0x01, 0xec, 0xcc },
    852 { 0x01, 0xed, 0xcd },
    853 { 0x01, 0xee, 0xce },
    854 { 0x01, 0xef, 0xcf },
    855 { 0x00, 0xd0, 0xd0 },
    856 { 0x01, 0xf1, 0xd1 },
    857 { 0x01, 0xf2, 0xd2 },
    858 { 0x01, 0xf3, 0xd3 },
    859 { 0x01, 0xf4, 0xd4 },
    860 { 0x01, 0xf5, 0xd5 },
    861 { 0x01, 0xf6, 0xd6 },
    862 { 0x00, 0xd7, 0xd7 },
    863 { 0x01, 0xf8, 0xd8 },
    864 { 0x01, 0xf9, 0xd9 },
    865 { 0x01, 0xfa, 0xda },
    866 { 0x01, 0xfb, 0xdb },
    867 { 0x01, 0xfc, 0xdc },
    868 { 0x01, 0xfd, 0xdd },
    869 { 0x01, 0xfe, 0xde },
    870 { 0x00, 0xdf, 0xdf },
    871 { 0x00, 0xe0, 0xc0 },
    872 { 0x00, 0xe1, 0xc1 },
    873 { 0x00, 0xe2, 0xc2 },
    874 { 0x00, 0xe3, 0xe3 },
    875 { 0x00, 0xe4, 0xc4 },
    876 { 0x00, 0xe5, 0xc5 },
    877 { 0x00, 0xe6, 0xc6 },
    878 { 0x00, 0xe7, 0xc7 },
    879 { 0x00, 0xe8, 0xc8 },
    880 { 0x00, 0xe9, 0xc9 },
    881 { 0x00, 0xea, 0xca },
    882 { 0x00, 0xeb, 0xcb },
    883 { 0x00, 0xec, 0xcc },
    884 { 0x00, 0xed, 0xcd },
    885 { 0x00, 0xee, 0xce },
    886 { 0x00, 0xef, 0xcf },
    887 { 0x00, 0xf0, 0xf0 },
    888 { 0x00, 0xf1, 0xd1 },
    889 { 0x00, 0xf2, 0xd2 },
    890 { 0x00, 0xf3, 0xd3 },
    891 { 0x00, 0xf4, 0xd4 },
    892 { 0x00, 0xf5, 0xd5 },
    893 { 0x00, 0xf6, 0xd6 },
    894 { 0x00, 0xf7, 0xf7 },
    895 { 0x00, 0xf8, 0xd8 },
    896 { 0x00, 0xf9, 0xd9 },
    897 { 0x00, 0xfa, 0xda },
    898 { 0x00, 0xfb, 0xdb },
    899 { 0x00, 0xfc, 0xdc },
    900 { 0x00, 0xfd, 0xdd },
    901 { 0x00, 0xfe, 0xde },
    902 { 0x00, 0xff, 0xff },
    903 };
    904 
    905 struct cs_info iso4_tbl[] = {
    906 { 0x00, 0x00, 0x00 },
    907 { 0x00, 0x01, 0x01 },
    908 { 0x00, 0x02, 0x02 },
    909 { 0x00, 0x03, 0x03 },
    910 { 0x00, 0x04, 0x04 },
    911 { 0x00, 0x05, 0x05 },
    912 { 0x00, 0x06, 0x06 },
    913 { 0x00, 0x07, 0x07 },
    914 { 0x00, 0x08, 0x08 },
    915 { 0x00, 0x09, 0x09 },
    916 { 0x00, 0x0a, 0x0a },
    917 { 0x00, 0x0b, 0x0b },
    918 { 0x00, 0x0c, 0x0c },
    919 { 0x00, 0x0d, 0x0d },
    920 { 0x00, 0x0e, 0x0e },
    921 { 0x00, 0x0f, 0x0f },
    922 { 0x00, 0x10, 0x10 },
    923 { 0x00, 0x11, 0x11 },
    924 { 0x00, 0x12, 0x12 },
    925 { 0x00, 0x13, 0x13 },
    926 { 0x00, 0x14, 0x14 },
    927 { 0x00, 0x15, 0x15 },
    928 { 0x00, 0x16, 0x16 },
    929 { 0x00, 0x17, 0x17 },
    930 { 0x00, 0x18, 0x18 },
    931 { 0x00, 0x19, 0x19 },
    932 { 0x00, 0x1a, 0x1a },
    933 { 0x00, 0x1b, 0x1b },
    934 { 0x00, 0x1c, 0x1c },
    935 { 0x00, 0x1d, 0x1d },
    936 { 0x00, 0x1e, 0x1e },
    937 { 0x00, 0x1f, 0x1f },
    938 { 0x00, 0x20, 0x20 },
    939 { 0x00, 0x21, 0x21 },
    940 { 0x00, 0x22, 0x22 },
    941 { 0x00, 0x23, 0x23 },
    942 { 0x00, 0x24, 0x24 },
    943 { 0x00, 0x25, 0x25 },
    944 { 0x00, 0x26, 0x26 },
    945 { 0x00, 0x27, 0x27 },
    946 { 0x00, 0x28, 0x28 },
    947 { 0x00, 0x29, 0x29 },
    948 { 0x00, 0x2a, 0x2a },
    949 { 0x00, 0x2b, 0x2b },
    950 { 0x00, 0x2c, 0x2c },
    951 { 0x00, 0x2d, 0x2d },
    952 { 0x00, 0x2e, 0x2e },
    953 { 0x00, 0x2f, 0x2f },
    954 { 0x00, 0x30, 0x30 },
    955 { 0x00, 0x31, 0x31 },
    956 { 0x00, 0x32, 0x32 },
    957 { 0x00, 0x33, 0x33 },
    958 { 0x00, 0x34, 0x34 },
    959 { 0x00, 0x35, 0x35 },
    960 { 0x00, 0x36, 0x36 },
    961 { 0x00, 0x37, 0x37 },
    962 { 0x00, 0x38, 0x38 },
    963 { 0x00, 0x39, 0x39 },
    964 { 0x00, 0x3a, 0x3a },
    965 { 0x00, 0x3b, 0x3b },
    966 { 0x00, 0x3c, 0x3c },
    967 { 0x00, 0x3d, 0x3d },
    968 { 0x00, 0x3e, 0x3e },
    969 { 0x00, 0x3f, 0x3f },
    970 { 0x00, 0x40, 0x40 },
    971 { 0x01, 0x61, 0x41 },
    972 { 0x01, 0x62, 0x42 },
    973 { 0x01, 0x63, 0x43 },
    974 { 0x01, 0x64, 0x44 },
    975 { 0x01, 0x65, 0x45 },
    976 { 0x01, 0x66, 0x46 },
    977 { 0x01, 0x67, 0x47 },
    978 { 0x01, 0x68, 0x48 },
    979 { 0x01, 0x69, 0x49 },
    980 { 0x01, 0x6a, 0x4a },
    981 { 0x01, 0x6b, 0x4b },
    982 { 0x01, 0x6c, 0x4c },
    983 { 0x01, 0x6d, 0x4d },
    984 { 0x01, 0x6e, 0x4e },
    985 { 0x01, 0x6f, 0x4f },
    986 { 0x01, 0x70, 0x50 },
    987 { 0x01, 0x71, 0x51 },
    988 { 0x01, 0x72, 0x52 },
    989 { 0x01, 0x73, 0x53 },
    990 { 0x01, 0x74, 0x54 },
    991 { 0x01, 0x75, 0x55 },
    992 { 0x01, 0x76, 0x56 },
    993 { 0x01, 0x77, 0x57 },
    994 { 0x01, 0x78, 0x58 },
    995 { 0x01, 0x79, 0x59 },
    996 { 0x01, 0x7a, 0x5a },
    997 { 0x00, 0x5b, 0x5b },
    998 { 0x00, 0x5c, 0x5c },
    999 { 0x00, 0x5d, 0x5d },
   1000 { 0x00, 0x5e, 0x5e },
   1001 { 0x00, 0x5f, 0x5f },
   1002 { 0x00, 0x60, 0x60 },
   1003 { 0x00, 0x61, 0x41 },
   1004 { 0x00, 0x62, 0x42 },
   1005 { 0x00, 0x63, 0x43 },
   1006 { 0x00, 0x64, 0x44 },
   1007 { 0x00, 0x65, 0x45 },
   1008 { 0x00, 0x66, 0x46 },
   1009 { 0x00, 0x67, 0x47 },
   1010 { 0x00, 0x68, 0x48 },
   1011 { 0x00, 0x69, 0x49 },
   1012 { 0x00, 0x6a, 0x4a },
   1013 { 0x00, 0x6b, 0x4b },
   1014 { 0x00, 0x6c, 0x4c },
   1015 { 0x00, 0x6d, 0x4d },
   1016 { 0x00, 0x6e, 0x4e },
   1017 { 0x00, 0x6f, 0x4f },
   1018 { 0x00, 0x70, 0x50 },
   1019 { 0x00, 0x71, 0x51 },
   1020 { 0x00, 0x72, 0x52 },
   1021 { 0x00, 0x73, 0x53 },
   1022 { 0x00, 0x74, 0x54 },
   1023 { 0x00, 0x75, 0x55 },
   1024 { 0x00, 0x76, 0x56 },
   1025 { 0x00, 0x77, 0x57 },
   1026 { 0x00, 0x78, 0x58 },
   1027 { 0x00, 0x79, 0x59 },
   1028 { 0x00, 0x7a, 0x5a },
   1029 { 0x00, 0x7b, 0x7b },
   1030 { 0x00, 0x7c, 0x7c },
   1031 { 0x00, 0x7d, 0x7d },
   1032 { 0x00, 0x7e, 0x7e },
   1033 { 0x00, 0x7f, 0x7f },
   1034 { 0x00, 0x80, 0x80 },
   1035 { 0x00, 0x81, 0x81 },
   1036 { 0x00, 0x82, 0x82 },
   1037 { 0x00, 0x83, 0x83 },
   1038 { 0x00, 0x84, 0x84 },
   1039 { 0x00, 0x85, 0x85 },
   1040 { 0x00, 0x86, 0x86 },
   1041 { 0x00, 0x87, 0x87 },
   1042 { 0x00, 0x88, 0x88 },
   1043 { 0x00, 0x89, 0x89 },
   1044 { 0x00, 0x8a, 0x8a },
   1045 { 0x00, 0x8b, 0x8b },
   1046 { 0x00, 0x8c, 0x8c },
   1047 { 0x00, 0x8d, 0x8d },
   1048 { 0x00, 0x8e, 0x8e },
   1049 { 0x00, 0x8f, 0x8f },
   1050 { 0x00, 0x90, 0x90 },
   1051 { 0x00, 0x91, 0x91 },
   1052 { 0x00, 0x92, 0x92 },
   1053 { 0x00, 0x93, 0x93 },
   1054 { 0x00, 0x94, 0x94 },
   1055 { 0x00, 0x95, 0x95 },
   1056 { 0x00, 0x96, 0x96 },
   1057 { 0x00, 0x97, 0x97 },
   1058 { 0x00, 0x98, 0x98 },
   1059 { 0x00, 0x99, 0x99 },
   1060 { 0x00, 0x9a, 0x9a },
   1061 { 0x00, 0x9b, 0x9b },
   1062 { 0x00, 0x9c, 0x9c },
   1063 { 0x00, 0x9d, 0x9d },
   1064 { 0x00, 0x9e, 0x9e },
   1065 { 0x00, 0x9f, 0x9f },
   1066 { 0x00, 0xa0, 0xa0 },
   1067 { 0x01, 0xb1, 0xa1 },
   1068 { 0x00, 0xa2, 0xa2 },
   1069 { 0x01, 0xb3, 0xa3 },
   1070 { 0x00, 0xa4, 0xa4 },
   1071 { 0x01, 0xb5, 0xa5 },
   1072 { 0x01, 0xb6, 0xa6 },
   1073 { 0x00, 0xa7, 0xa7 },
   1074 { 0x00, 0xa8, 0xa8 },
   1075 { 0x01, 0xb9, 0xa9 },
   1076 { 0x01, 0xba, 0xaa },
   1077 { 0x01, 0xbb, 0xab },
   1078 { 0x01, 0xbc, 0xac },
   1079 { 0x00, 0xad, 0xad },
   1080 { 0x01, 0xbe, 0xae },
   1081 { 0x00, 0xaf, 0xaf },
   1082 { 0x00, 0xb0, 0xb0 },
   1083 { 0x00, 0xb1, 0xa1 },
   1084 { 0x00, 0xb2, 0xb2 },
   1085 { 0x00, 0xb3, 0xa3 },
   1086 { 0x00, 0xb4, 0xb4 },
   1087 { 0x00, 0xb5, 0xa5 },
   1088 { 0x00, 0xb6, 0xa6 },
   1089 { 0x00, 0xb7, 0xb7 },
   1090 { 0x00, 0xb8, 0xb8 },
   1091 { 0x00, 0xb9, 0xa9 },
   1092 { 0x00, 0xba, 0xaa },
   1093 { 0x00, 0xbb, 0xab },
   1094 { 0x00, 0xbc, 0xac },
   1095 { 0x00, 0xbd, 0xbd },
   1096 { 0x00, 0xbe, 0xae },
   1097 { 0x00, 0xbf, 0xbf },
   1098 { 0x01, 0xe0, 0xc0 },
   1099 { 0x01, 0xe1, 0xc1 },
   1100 { 0x01, 0xe2, 0xc2 },
   1101 { 0x01, 0xe3, 0xc3 },
   1102 { 0x01, 0xe4, 0xc4 },
   1103 { 0x01, 0xe5, 0xc5 },
   1104 { 0x01, 0xe6, 0xc6 },
   1105 { 0x01, 0xe7, 0xc7 },
   1106 { 0x01, 0xe8, 0xc8 },
   1107 { 0x01, 0xe9, 0xc9 },
   1108 { 0x01, 0xea, 0xca },
   1109 { 0x01, 0xeb, 0xcb },
   1110 { 0x01, 0xec, 0xcc },
   1111 { 0x01, 0xed, 0xcd },
   1112 { 0x01, 0xee, 0xce },
   1113 { 0x01, 0xef, 0xcf },
   1114 { 0x01, 0xf0, 0xd0 },
   1115 { 0x01, 0xf1, 0xd1 },
   1116 { 0x01, 0xf2, 0xd2 },
   1117 { 0x01, 0xf3, 0xd3 },
   1118 { 0x01, 0xf4, 0xd4 },
   1119 { 0x01, 0xf5, 0xd5 },
   1120 { 0x01, 0xf6, 0xd6 },
   1121 { 0x00, 0xd7, 0xd7 },
   1122 { 0x01, 0xf8, 0xd8 },
   1123 { 0x01, 0xf9, 0xd9 },
   1124 { 0x01, 0xfa, 0xda },
   1125 { 0x01, 0xfb, 0xdb },
   1126 { 0x01, 0xfc, 0xdc },
   1127 { 0x01, 0xfd, 0xdd },
   1128 { 0x01, 0xfe, 0xde },
   1129 { 0x00, 0xdf, 0xdf },
   1130 { 0x00, 0xe0, 0xc0 },
   1131 { 0x00, 0xe1, 0xc1 },
   1132 { 0x00, 0xe2, 0xc2 },
   1133 { 0x00, 0xe3, 0xc3 },
   1134 { 0x00, 0xe4, 0xc4 },
   1135 { 0x00, 0xe5, 0xc5 },
   1136 { 0x00, 0xe6, 0xc6 },
   1137 { 0x00, 0xe7, 0xc7 },
   1138 { 0x00, 0xe8, 0xc8 },
   1139 { 0x00, 0xe9, 0xc9 },
   1140 { 0x00, 0xea, 0xca },
   1141 { 0x00, 0xeb, 0xcb },
   1142 { 0x00, 0xec, 0xcc },
   1143 { 0x00, 0xed, 0xcd },
   1144 { 0x00, 0xee, 0xce },
   1145 { 0x00, 0xef, 0xcf },
   1146 { 0x00, 0xf0, 0xd0 },
   1147 { 0x00, 0xf1, 0xd1 },
   1148 { 0x00, 0xf2, 0xd2 },
   1149 { 0x00, 0xf3, 0xd3 },
   1150 { 0x00, 0xf4, 0xd4 },
   1151 { 0x00, 0xf5, 0xd5 },
   1152 { 0x00, 0xf6, 0xd6 },
   1153 { 0x00, 0xf7, 0xf7 },
   1154 { 0x00, 0xf8, 0xd8 },
   1155 { 0x00, 0xf9, 0xd9 },
   1156 { 0x00, 0xfa, 0xda },
   1157 { 0x00, 0xfb, 0xdb },
   1158 { 0x00, 0xfc, 0xdc },
   1159 { 0x00, 0xfd, 0xdd },
   1160 { 0x00, 0xfe, 0xde },
   1161 { 0x00, 0xff, 0xff },
   1162 };
   1163 
   1164 struct cs_info iso5_tbl[] = {
   1165 { 0x00, 0x00, 0x00 },
   1166 { 0x00, 0x01, 0x01 },
   1167 { 0x00, 0x02, 0x02 },
   1168 { 0x00, 0x03, 0x03 },
   1169 { 0x00, 0x04, 0x04 },
   1170 { 0x00, 0x05, 0x05 },
   1171 { 0x00, 0x06, 0x06 },
   1172 { 0x00, 0x07, 0x07 },
   1173 { 0x00, 0x08, 0x08 },
   1174 { 0x00, 0x09, 0x09 },
   1175 { 0x00, 0x0a, 0x0a },
   1176 { 0x00, 0x0b, 0x0b },
   1177 { 0x00, 0x0c, 0x0c },
   1178 { 0x00, 0x0d, 0x0d },
   1179 { 0x00, 0x0e, 0x0e },
   1180 { 0x00, 0x0f, 0x0f },
   1181 { 0x00, 0x10, 0x10 },
   1182 { 0x00, 0x11, 0x11 },
   1183 { 0x00, 0x12, 0x12 },
   1184 { 0x00, 0x13, 0x13 },
   1185 { 0x00, 0x14, 0x14 },
   1186 { 0x00, 0x15, 0x15 },
   1187 { 0x00, 0x16, 0x16 },
   1188 { 0x00, 0x17, 0x17 },
   1189 { 0x00, 0x18, 0x18 },
   1190 { 0x00, 0x19, 0x19 },
   1191 { 0x00, 0x1a, 0x1a },
   1192 { 0x00, 0x1b, 0x1b },
   1193 { 0x00, 0x1c, 0x1c },
   1194 { 0x00, 0x1d, 0x1d },
   1195 { 0x00, 0x1e, 0x1e },
   1196 { 0x00, 0x1f, 0x1f },
   1197 { 0x00, 0x20, 0x20 },
   1198 { 0x00, 0x21, 0x21 },
   1199 { 0x00, 0x22, 0x22 },
   1200 { 0x00, 0x23, 0x23 },
   1201 { 0x00, 0x24, 0x24 },
   1202 { 0x00, 0x25, 0x25 },
   1203 { 0x00, 0x26, 0x26 },
   1204 { 0x00, 0x27, 0x27 },
   1205 { 0x00, 0x28, 0x28 },
   1206 { 0x00, 0x29, 0x29 },
   1207 { 0x00, 0x2a, 0x2a },
   1208 { 0x00, 0x2b, 0x2b },
   1209 { 0x00, 0x2c, 0x2c },
   1210 { 0x00, 0x2d, 0x2d },
   1211 { 0x00, 0x2e, 0x2e },
   1212 { 0x00, 0x2f, 0x2f },
   1213 { 0x00, 0x30, 0x30 },
   1214 { 0x00, 0x31, 0x31 },
   1215 { 0x00, 0x32, 0x32 },
   1216 { 0x00, 0x33, 0x33 },
   1217 { 0x00, 0x34, 0x34 },
   1218 { 0x00, 0x35, 0x35 },
   1219 { 0x00, 0x36, 0x36 },
   1220 { 0x00, 0x37, 0x37 },
   1221 { 0x00, 0x38, 0x38 },
   1222 { 0x00, 0x39, 0x39 },
   1223 { 0x00, 0x3a, 0x3a },
   1224 { 0x00, 0x3b, 0x3b },
   1225 { 0x00, 0x3c, 0x3c },
   1226 { 0x00, 0x3d, 0x3d },
   1227 { 0x00, 0x3e, 0x3e },
   1228 { 0x00, 0x3f, 0x3f },
   1229 { 0x00, 0x40, 0x40 },
   1230 { 0x01, 0x61, 0x41 },
   1231 { 0x01, 0x62, 0x42 },
   1232 { 0x01, 0x63, 0x43 },
   1233 { 0x01, 0x64, 0x44 },
   1234 { 0x01, 0x65, 0x45 },
   1235 { 0x01, 0x66, 0x46 },
   1236 { 0x01, 0x67, 0x47 },
   1237 { 0x01, 0x68, 0x48 },
   1238 { 0x01, 0x69, 0x49 },
   1239 { 0x01, 0x6a, 0x4a },
   1240 { 0x01, 0x6b, 0x4b },
   1241 { 0x01, 0x6c, 0x4c },
   1242 { 0x01, 0x6d, 0x4d },
   1243 { 0x01, 0x6e, 0x4e },
   1244 { 0x01, 0x6f, 0x4f },
   1245 { 0x01, 0x70, 0x50 },
   1246 { 0x01, 0x71, 0x51 },
   1247 { 0x01, 0x72, 0x52 },
   1248 { 0x01, 0x73, 0x53 },
   1249 { 0x01, 0x74, 0x54 },
   1250 { 0x01, 0x75, 0x55 },
   1251 { 0x01, 0x76, 0x56 },
   1252 { 0x01, 0x77, 0x57 },
   1253 { 0x01, 0x78, 0x58 },
   1254 { 0x01, 0x79, 0x59 },
   1255 { 0x01, 0x7a, 0x5a },
   1256 { 0x00, 0x5b, 0x5b },
   1257 { 0x00, 0x5c, 0x5c },
   1258 { 0x00, 0x5d, 0x5d },
   1259 { 0x00, 0x5e, 0x5e },
   1260 { 0x00, 0x5f, 0x5f },
   1261 { 0x00, 0x60, 0x60 },
   1262 { 0x00, 0x61, 0x41 },
   1263 { 0x00, 0x62, 0x42 },
   1264 { 0x00, 0x63, 0x43 },
   1265 { 0x00, 0x64, 0x44 },
   1266 { 0x00, 0x65, 0x45 },
   1267 { 0x00, 0x66, 0x46 },
   1268 { 0x00, 0x67, 0x47 },
   1269 { 0x00, 0x68, 0x48 },
   1270 { 0x00, 0x69, 0x49 },
   1271 { 0x00, 0x6a, 0x4a },
   1272 { 0x00, 0x6b, 0x4b },
   1273 { 0x00, 0x6c, 0x4c },
   1274 { 0x00, 0x6d, 0x4d },
   1275 { 0x00, 0x6e, 0x4e },
   1276 { 0x00, 0x6f, 0x4f },
   1277 { 0x00, 0x70, 0x50 },
   1278 { 0x00, 0x71, 0x51 },
   1279 { 0x00, 0x72, 0x52 },
   1280 { 0x00, 0x73, 0x53 },
   1281 { 0x00, 0x74, 0x54 },
   1282 { 0x00, 0x75, 0x55 },
   1283 { 0x00, 0x76, 0x56 },
   1284 { 0x00, 0x77, 0x57 },
   1285 { 0x00, 0x78, 0x58 },
   1286 { 0x00, 0x79, 0x59 },
   1287 { 0x00, 0x7a, 0x5a },
   1288 { 0x00, 0x7b, 0x7b },
   1289 { 0x00, 0x7c, 0x7c },
   1290 { 0x00, 0x7d, 0x7d },
   1291 { 0x00, 0x7e, 0x7e },
   1292 { 0x00, 0x7f, 0x7f },
   1293 { 0x00, 0x80, 0x80 },
   1294 { 0x00, 0x81, 0x81 },
   1295 { 0x00, 0x82, 0x82 },
   1296 { 0x00, 0x83, 0x83 },
   1297 { 0x00, 0x84, 0x84 },
   1298 { 0x00, 0x85, 0x85 },
   1299 { 0x00, 0x86, 0x86 },
   1300 { 0x00, 0x87, 0x87 },
   1301 { 0x00, 0x88, 0x88 },
   1302 { 0x00, 0x89, 0x89 },
   1303 { 0x00, 0x8a, 0x8a },
   1304 { 0x00, 0x8b, 0x8b },
   1305 { 0x00, 0x8c, 0x8c },
   1306 { 0x00, 0x8d, 0x8d },
   1307 { 0x00, 0x8e, 0x8e },
   1308 { 0x00, 0x8f, 0x8f },
   1309 { 0x00, 0x90, 0x90 },
   1310 { 0x00, 0x91, 0x91 },
   1311 { 0x00, 0x92, 0x92 },
   1312 { 0x00, 0x93, 0x93 },
   1313 { 0x00, 0x94, 0x94 },
   1314 { 0x00, 0x95, 0x95 },
   1315 { 0x00, 0x96, 0x96 },
   1316 { 0x00, 0x97, 0x97 },
   1317 { 0x00, 0x98, 0x98 },
   1318 { 0x00, 0x99, 0x99 },
   1319 { 0x00, 0x9a, 0x9a },
   1320 { 0x00, 0x9b, 0x9b },
   1321 { 0x00, 0x9c, 0x9c },
   1322 { 0x00, 0x9d, 0x9d },
   1323 { 0x00, 0x9e, 0x9e },
   1324 { 0x00, 0x9f, 0x9f },
   1325 { 0x00, 0xa0, 0xa0 },
   1326 { 0x01, 0xf1, 0xa1 },
   1327 { 0x01, 0xf2, 0xa2 },
   1328 { 0x01, 0xf3, 0xa3 },
   1329 { 0x01, 0xf4, 0xa4 },
   1330 { 0x01, 0xf5, 0xa5 },
   1331 { 0x01, 0xf6, 0xa6 },
   1332 { 0x01, 0xf7, 0xa7 },
   1333 { 0x01, 0xf8, 0xa8 },
   1334 { 0x01, 0xf9, 0xa9 },
   1335 { 0x01, 0xfa, 0xaa },
   1336 { 0x01, 0xfb, 0xab },
   1337 { 0x01, 0xfc, 0xac },
   1338 { 0x00, 0xad, 0xad },
   1339 { 0x01, 0xfe, 0xae },
   1340 { 0x01, 0xff, 0xaf },
   1341 { 0x01, 0xd0, 0xb0 },
   1342 { 0x01, 0xd1, 0xb1 },
   1343 { 0x01, 0xd2, 0xb2 },
   1344 { 0x01, 0xd3, 0xb3 },
   1345 { 0x01, 0xd4, 0xb4 },
   1346 { 0x01, 0xd5, 0xb5 },
   1347 { 0x01, 0xd6, 0xb6 },
   1348 { 0x01, 0xd7, 0xb7 },
   1349 { 0x01, 0xd8, 0xb8 },
   1350 { 0x01, 0xd9, 0xb9 },
   1351 { 0x01, 0xda, 0xba },
   1352 { 0x01, 0xdb, 0xbb },
   1353 { 0x01, 0xdc, 0xbc },
   1354 { 0x01, 0xdd, 0xbd },
   1355 { 0x01, 0xde, 0xbe },
   1356 { 0x01, 0xdf, 0xbf },
   1357 { 0x01, 0xe0, 0xc0 },
   1358 { 0x01, 0xe1, 0xc1 },
   1359 { 0x01, 0xe2, 0xc2 },
   1360 { 0x01, 0xe3, 0xc3 },
   1361 { 0x01, 0xe4, 0xc4 },
   1362 { 0x01, 0xe5, 0xc5 },
   1363 { 0x01, 0xe6, 0xc6 },
   1364 { 0x01, 0xe7, 0xc7 },
   1365 { 0x01, 0xe8, 0xc8 },
   1366 { 0x01, 0xe9, 0xc9 },
   1367 { 0x01, 0xea, 0xca },
   1368 { 0x01, 0xeb, 0xcb },
   1369 { 0x01, 0xec, 0xcc },
   1370 { 0x01, 0xed, 0xcd },
   1371 { 0x01, 0xee, 0xce },
   1372 { 0x01, 0xef, 0xcf },
   1373 { 0x00, 0xd0, 0xb0 },
   1374 { 0x00, 0xd1, 0xb1 },
   1375 { 0x00, 0xd2, 0xb2 },
   1376 { 0x00, 0xd3, 0xb3 },
   1377 { 0x00, 0xd4, 0xb4 },
   1378 { 0x00, 0xd5, 0xb5 },
   1379 { 0x00, 0xd6, 0xb6 },
   1380 { 0x00, 0xd7, 0xb7 },
   1381 { 0x00, 0xd8, 0xb8 },
   1382 { 0x00, 0xd9, 0xb9 },
   1383 { 0x00, 0xda, 0xba },
   1384 { 0x00, 0xdb, 0xbb },
   1385 { 0x00, 0xdc, 0xbc },
   1386 { 0x00, 0xdd, 0xbd },
   1387 { 0x00, 0xde, 0xbe },
   1388 { 0x00, 0xdf, 0xbf },
   1389 { 0x00, 0xe0, 0xc0 },
   1390 { 0x00, 0xe1, 0xc1 },
   1391 { 0x00, 0xe2, 0xc2 },
   1392 { 0x00, 0xe3, 0xc3 },
   1393 { 0x00, 0xe4, 0xc4 },
   1394 { 0x00, 0xe5, 0xc5 },
   1395 { 0x00, 0xe6, 0xc6 },
   1396 { 0x00, 0xe7, 0xc7 },
   1397 { 0x00, 0xe8, 0xc8 },
   1398 { 0x00, 0xe9, 0xc9 },
   1399 { 0x00, 0xea, 0xca },
   1400 { 0x00, 0xeb, 0xcb },
   1401 { 0x00, 0xec, 0xcc },
   1402 { 0x00, 0xed, 0xcd },
   1403 { 0x00, 0xee, 0xce },
   1404 { 0x00, 0xef, 0xcf },
   1405 { 0x00, 0xf0, 0xf0 },
   1406 { 0x00, 0xf1, 0xa1 },
   1407 { 0x00, 0xf2, 0xa2 },
   1408 { 0x00, 0xf3, 0xa3 },
   1409 { 0x00, 0xf4, 0xa4 },
   1410 { 0x00, 0xf5, 0xa5 },
   1411 { 0x00, 0xf6, 0xa6 },
   1412 { 0x00, 0xf7, 0xa7 },
   1413 { 0x00, 0xf8, 0xa8 },
   1414 { 0x00, 0xf9, 0xa9 },
   1415 { 0x00, 0xfa, 0xaa },
   1416 { 0x00, 0xfb, 0xab },
   1417 { 0x00, 0xfc, 0xac },
   1418 { 0x00, 0xfd, 0xfd },
   1419 { 0x00, 0xfe, 0xae },
   1420 { 0x00, 0xff, 0xaf },
   1421 };
   1422 
   1423 struct cs_info iso6_tbl[] = {
   1424 { 0x00, 0x00, 0x00 },
   1425 { 0x00, 0x01, 0x01 },
   1426 { 0x00, 0x02, 0x02 },
   1427 { 0x00, 0x03, 0x03 },
   1428 { 0x00, 0x04, 0x04 },
   1429 { 0x00, 0x05, 0x05 },
   1430 { 0x00, 0x06, 0x06 },
   1431 { 0x00, 0x07, 0x07 },
   1432 { 0x00, 0x08, 0x08 },
   1433 { 0x00, 0x09, 0x09 },
   1434 { 0x00, 0x0a, 0x0a },
   1435 { 0x00, 0x0b, 0x0b },
   1436 { 0x00, 0x0c, 0x0c },
   1437 { 0x00, 0x0d, 0x0d },
   1438 { 0x00, 0x0e, 0x0e },
   1439 { 0x00, 0x0f, 0x0f },
   1440 { 0x00, 0x10, 0x10 },
   1441 { 0x00, 0x11, 0x11 },
   1442 { 0x00, 0x12, 0x12 },
   1443 { 0x00, 0x13, 0x13 },
   1444 { 0x00, 0x14, 0x14 },
   1445 { 0x00, 0x15, 0x15 },
   1446 { 0x00, 0x16, 0x16 },
   1447 { 0x00, 0x17, 0x17 },
   1448 { 0x00, 0x18, 0x18 },
   1449 { 0x00, 0x19, 0x19 },
   1450 { 0x00, 0x1a, 0x1a },
   1451 { 0x00, 0x1b, 0x1b },
   1452 { 0x00, 0x1c, 0x1c },
   1453 { 0x00, 0x1d, 0x1d },
   1454 { 0x00, 0x1e, 0x1e },
   1455 { 0x00, 0x1f, 0x1f },
   1456 { 0x00, 0x20, 0x20 },
   1457 { 0x00, 0x21, 0x21 },
   1458 { 0x00, 0x22, 0x22 },
   1459 { 0x00, 0x23, 0x23 },
   1460 { 0x00, 0x24, 0x24 },
   1461 { 0x00, 0x25, 0x25 },
   1462 { 0x00, 0x26, 0x26 },
   1463 { 0x00, 0x27, 0x27 },
   1464 { 0x00, 0x28, 0x28 },
   1465 { 0x00, 0x29, 0x29 },
   1466 { 0x00, 0x2a, 0x2a },
   1467 { 0x00, 0x2b, 0x2b },
   1468 { 0x00, 0x2c, 0x2c },
   1469 { 0x00, 0x2d, 0x2d },
   1470 { 0x00, 0x2e, 0x2e },
   1471 { 0x00, 0x2f, 0x2f },
   1472 { 0x00, 0x30, 0x30 },
   1473 { 0x00, 0x31, 0x31 },
   1474 { 0x00, 0x32, 0x32 },
   1475 { 0x00, 0x33, 0x33 },
   1476 { 0x00, 0x34, 0x34 },
   1477 { 0x00, 0x35, 0x35 },
   1478 { 0x00, 0x36, 0x36 },
   1479 { 0x00, 0x37, 0x37 },
   1480 { 0x00, 0x38, 0x38 },
   1481 { 0x00, 0x39, 0x39 },
   1482 { 0x00, 0x3a, 0x3a },
   1483 { 0x00, 0x3b, 0x3b },
   1484 { 0x00, 0x3c, 0x3c },
   1485 { 0x00, 0x3d, 0x3d },
   1486 { 0x00, 0x3e, 0x3e },
   1487 { 0x00, 0x3f, 0x3f },
   1488 { 0x00, 0x40, 0x40 },
   1489 { 0x01, 0x61, 0x41 },
   1490 { 0x01, 0x62, 0x42 },
   1491 { 0x01, 0x63, 0x43 },
   1492 { 0x01, 0x64, 0x44 },
   1493 { 0x01, 0x65, 0x45 },
   1494 { 0x01, 0x66, 0x46 },
   1495 { 0x01, 0x67, 0x47 },
   1496 { 0x01, 0x68, 0x48 },
   1497 { 0x01, 0x69, 0x49 },
   1498 { 0x01, 0x6a, 0x4a },
   1499 { 0x01, 0x6b, 0x4b },
   1500 { 0x01, 0x6c, 0x4c },
   1501 { 0x01, 0x6d, 0x4d },
   1502 { 0x01, 0x6e, 0x4e },
   1503 { 0x01, 0x6f, 0x4f },
   1504 { 0x01, 0x70, 0x50 },
   1505 { 0x01, 0x71, 0x51 },
   1506 { 0x01, 0x72, 0x52 },
   1507 { 0x01, 0x73, 0x53 },
   1508 { 0x01, 0x74, 0x54 },
   1509 { 0x01, 0x75, 0x55 },
   1510 { 0x01, 0x76, 0x56 },
   1511 { 0x01, 0x77, 0x57 },
   1512 { 0x01, 0x78, 0x58 },
   1513 { 0x01, 0x79, 0x59 },
   1514 { 0x01, 0x7a, 0x5a },
   1515 { 0x00, 0x5b, 0x5b },
   1516 { 0x00, 0x5c, 0x5c },
   1517 { 0x00, 0x5d, 0x5d },
   1518 { 0x00, 0x5e, 0x5e },
   1519 { 0x00, 0x5f, 0x5f },
   1520 { 0x00, 0x60, 0x60 },
   1521 { 0x00, 0x61, 0x41 },
   1522 { 0x00, 0x62, 0x42 },
   1523 { 0x00, 0x63, 0x43 },
   1524 { 0x00, 0x64, 0x44 },
   1525 { 0x00, 0x65, 0x45 },
   1526 { 0x00, 0x66, 0x46 },
   1527 { 0x00, 0x67, 0x47 },
   1528 { 0x00, 0x68, 0x48 },
   1529 { 0x00, 0x69, 0x49 },
   1530 { 0x00, 0x6a, 0x4a },
   1531 { 0x00, 0x6b, 0x4b },
   1532 { 0x00, 0x6c, 0x4c },
   1533 { 0x00, 0x6d, 0x4d },
   1534 { 0x00, 0x6e, 0x4e },
   1535 { 0x00, 0x6f, 0x4f },
   1536 { 0x00, 0x70, 0x50 },
   1537 { 0x00, 0x71, 0x51 },
   1538 { 0x00, 0x72, 0x52 },
   1539 { 0x00, 0x73, 0x53 },
   1540 { 0x00, 0x74, 0x54 },
   1541 { 0x00, 0x75, 0x55 },
   1542 { 0x00, 0x76, 0x56 },
   1543 { 0x00, 0x77, 0x57 },
   1544 { 0x00, 0x78, 0x58 },
   1545 { 0x00, 0x79, 0x59 },
   1546 { 0x00, 0x7a, 0x5a },
   1547 { 0x00, 0x7b, 0x7b },
   1548 { 0x00, 0x7c, 0x7c },
   1549 { 0x00, 0x7d, 0x7d },
   1550 { 0x00, 0x7e, 0x7e },
   1551 { 0x00, 0x7f, 0x7f },
   1552 { 0x00, 0x80, 0x80 },
   1553 { 0x00, 0x81, 0x81 },
   1554 { 0x00, 0x82, 0x82 },
   1555 { 0x00, 0x83, 0x83 },
   1556 { 0x00, 0x84, 0x84 },
   1557 { 0x00, 0x85, 0x85 },
   1558 { 0x00, 0x86, 0x86 },
   1559 { 0x00, 0x87, 0x87 },
   1560 { 0x00, 0x88, 0x88 },
   1561 { 0x00, 0x89, 0x89 },
   1562 { 0x00, 0x8a, 0x8a },
   1563 { 0x00, 0x8b, 0x8b },
   1564 { 0x00, 0x8c, 0x8c },
   1565 { 0x00, 0x8d, 0x8d },
   1566 { 0x00, 0x8e, 0x8e },
   1567 { 0x00, 0x8f, 0x8f },
   1568 { 0x00, 0x90, 0x90 },
   1569 { 0x00, 0x91, 0x91 },
   1570 { 0x00, 0x92, 0x92 },
   1571 { 0x00, 0x93, 0x93 },
   1572 { 0x00, 0x94, 0x94 },
   1573 { 0x00, 0x95, 0x95 },
   1574 { 0x00, 0x96, 0x96 },
   1575 { 0x00, 0x97, 0x97 },
   1576 { 0x00, 0x98, 0x98 },
   1577 { 0x00, 0x99, 0x99 },
   1578 { 0x00, 0x9a, 0x9a },
   1579 { 0x00, 0x9b, 0x9b },
   1580 { 0x00, 0x9c, 0x9c },
   1581 { 0x00, 0x9d, 0x9d },
   1582 { 0x00, 0x9e, 0x9e },
   1583 { 0x00, 0x9f, 0x9f },
   1584 { 0x00, 0xa0, 0xa0 },
   1585 { 0x00, 0xa1, 0xa1 },
   1586 { 0x00, 0xa2, 0xa2 },
   1587 { 0x00, 0xa3, 0xa3 },
   1588 { 0x00, 0xa4, 0xa4 },
   1589 { 0x00, 0xa5, 0xa5 },
   1590 { 0x00, 0xa6, 0xa6 },
   1591 { 0x00, 0xa7, 0xa7 },
   1592 { 0x00, 0xa8, 0xa8 },
   1593 { 0x00, 0xa9, 0xa9 },
   1594 { 0x00, 0xaa, 0xaa },
   1595 { 0x00, 0xab, 0xab },
   1596 { 0x00, 0xac, 0xac },
   1597 { 0x00, 0xad, 0xad },
   1598 { 0x00, 0xae, 0xae },
   1599 { 0x00, 0xaf, 0xaf },
   1600 { 0x00, 0xb0, 0xb0 },
   1601 { 0x00, 0xb1, 0xb1 },
   1602 { 0x00, 0xb2, 0xb2 },
   1603 { 0x00, 0xb3, 0xb3 },
   1604 { 0x00, 0xb4, 0xb4 },
   1605 { 0x00, 0xb5, 0xb5 },
   1606 { 0x00, 0xb6, 0xb6 },
   1607 { 0x00, 0xb7, 0xb7 },
   1608 { 0x00, 0xb8, 0xb8 },
   1609 { 0x00, 0xb9, 0xb9 },
   1610 { 0x00, 0xba, 0xba },
   1611 { 0x00, 0xbb, 0xbb },
   1612 { 0x00, 0xbc, 0xbc },
   1613 { 0x00, 0xbd, 0xbd },
   1614 { 0x00, 0xbe, 0xbe },
   1615 { 0x00, 0xbf, 0xbf },
   1616 { 0x00, 0xc0, 0xc0 },
   1617 { 0x00, 0xc1, 0xc1 },
   1618 { 0x00, 0xc2, 0xc2 },
   1619 { 0x00, 0xc3, 0xc3 },
   1620 { 0x00, 0xc4, 0xc4 },
   1621 { 0x00, 0xc5, 0xc5 },
   1622 { 0x00, 0xc6, 0xc6 },
   1623 { 0x00, 0xc7, 0xc7 },
   1624 { 0x00, 0xc8, 0xc8 },
   1625 { 0x00, 0xc9, 0xc9 },
   1626 { 0x00, 0xca, 0xca },
   1627 { 0x00, 0xcb, 0xcb },
   1628 { 0x00, 0xcc, 0xcc },
   1629 { 0x00, 0xcd, 0xcd },
   1630 { 0x00, 0xce, 0xce },
   1631 { 0x00, 0xcf, 0xcf },
   1632 { 0x00, 0xd0, 0xd0 },
   1633 { 0x00, 0xd1, 0xd1 },
   1634 { 0x00, 0xd2, 0xd2 },
   1635 { 0x00, 0xd3, 0xd3 },
   1636 { 0x00, 0xd4, 0xd4 },
   1637 { 0x00, 0xd5, 0xd5 },
   1638 { 0x00, 0xd6, 0xd6 },
   1639 { 0x00, 0xd7, 0xd7 },
   1640 { 0x00, 0xd8, 0xd8 },
   1641 { 0x00, 0xd9, 0xd9 },
   1642 { 0x00, 0xda, 0xda },
   1643 { 0x00, 0xdb, 0xdb },
   1644 { 0x00, 0xdc, 0xdc },
   1645 { 0x00, 0xdd, 0xdd },
   1646 { 0x00, 0xde, 0xde },
   1647 { 0x00, 0xdf, 0xdf },
   1648 { 0x00, 0xe0, 0xe0 },
   1649 { 0x00, 0xe1, 0xe1 },
   1650 { 0x00, 0xe2, 0xe2 },
   1651 { 0x00, 0xe3, 0xe3 },
   1652 { 0x00, 0xe4, 0xe4 },
   1653 { 0x00, 0xe5, 0xe5 },
   1654 { 0x00, 0xe6, 0xe6 },
   1655 { 0x00, 0xe7, 0xe7 },
   1656 { 0x00, 0xe8, 0xe8 },
   1657 { 0x00, 0xe9, 0xe9 },
   1658 { 0x00, 0xea, 0xea },
   1659 { 0x00, 0xeb, 0xeb },
   1660 { 0x00, 0xec, 0xec },
   1661 { 0x00, 0xed, 0xed },
   1662 { 0x00, 0xee, 0xee },
   1663 { 0x00, 0xef, 0xef },
   1664 { 0x00, 0xf0, 0xf0 },
   1665 { 0x00, 0xf1, 0xf1 },
   1666 { 0x00, 0xf2, 0xf2 },
   1667 { 0x00, 0xf3, 0xf3 },
   1668 { 0x00, 0xf4, 0xf4 },
   1669 { 0x00, 0xf5, 0xf5 },
   1670 { 0x00, 0xf6, 0xf6 },
   1671 { 0x00, 0xf7, 0xf7 },
   1672 { 0x00, 0xf8, 0xf8 },
   1673 { 0x00, 0xf9, 0xf9 },
   1674 { 0x00, 0xfa, 0xfa },
   1675 { 0x00, 0xfb, 0xfb },
   1676 { 0x00, 0xfc, 0xfc },
   1677 { 0x00, 0xfd, 0xfd },
   1678 { 0x00, 0xfe, 0xfe },
   1679 { 0x00, 0xff, 0xff },
   1680 };
   1681 
   1682 struct cs_info iso7_tbl[] = {
   1683 { 0x00, 0x00, 0x00 },
   1684 { 0x00, 0x01, 0x01 },
   1685 { 0x00, 0x02, 0x02 },
   1686 { 0x00, 0x03, 0x03 },
   1687 { 0x00, 0x04, 0x04 },
   1688 { 0x00, 0x05, 0x05 },
   1689 { 0x00, 0x06, 0x06 },
   1690 { 0x00, 0x07, 0x07 },
   1691 { 0x00, 0x08, 0x08 },
   1692 { 0x00, 0x09, 0x09 },
   1693 { 0x00, 0x0a, 0x0a },
   1694 { 0x00, 0x0b, 0x0b },
   1695 { 0x00, 0x0c, 0x0c },
   1696 { 0x00, 0x0d, 0x0d },
   1697 { 0x00, 0x0e, 0x0e },
   1698 { 0x00, 0x0f, 0x0f },
   1699 { 0x00, 0x10, 0x10 },
   1700 { 0x00, 0x11, 0x11 },
   1701 { 0x00, 0x12, 0x12 },
   1702 { 0x00, 0x13, 0x13 },
   1703 { 0x00, 0x14, 0x14 },
   1704 { 0x00, 0x15, 0x15 },
   1705 { 0x00, 0x16, 0x16 },
   1706 { 0x00, 0x17, 0x17 },
   1707 { 0x00, 0x18, 0x18 },
   1708 { 0x00, 0x19, 0x19 },
   1709 { 0x00, 0x1a, 0x1a },
   1710 { 0x00, 0x1b, 0x1b },
   1711 { 0x00, 0x1c, 0x1c },
   1712 { 0x00, 0x1d, 0x1d },
   1713 { 0x00, 0x1e, 0x1e },
   1714 { 0x00, 0x1f, 0x1f },
   1715 { 0x00, 0x20, 0x20 },
   1716 { 0x00, 0x21, 0x21 },
   1717 { 0x00, 0x22, 0x22 },
   1718 { 0x00, 0x23, 0x23 },
   1719 { 0x00, 0x24, 0x24 },
   1720 { 0x00, 0x25, 0x25 },
   1721 { 0x00, 0x26, 0x26 },
   1722 { 0x00, 0x27, 0x27 },
   1723 { 0x00, 0x28, 0x28 },
   1724 { 0x00, 0x29, 0x29 },
   1725 { 0x00, 0x2a, 0x2a },
   1726 { 0x00, 0x2b, 0x2b },
   1727 { 0x00, 0x2c, 0x2c },
   1728 { 0x00, 0x2d, 0x2d },
   1729 { 0x00, 0x2e, 0x2e },
   1730 { 0x00, 0x2f, 0x2f },
   1731 { 0x00, 0x30, 0x30 },
   1732 { 0x00, 0x31, 0x31 },
   1733 { 0x00, 0x32, 0x32 },
   1734 { 0x00, 0x33, 0x33 },
   1735 { 0x00, 0x34, 0x34 },
   1736 { 0x00, 0x35, 0x35 },
   1737 { 0x00, 0x36, 0x36 },
   1738 { 0x00, 0x37, 0x37 },
   1739 { 0x00, 0x38, 0x38 },
   1740 { 0x00, 0x39, 0x39 },
   1741 { 0x00, 0x3a, 0x3a },
   1742 { 0x00, 0x3b, 0x3b },
   1743 { 0x00, 0x3c, 0x3c },
   1744 { 0x00, 0x3d, 0x3d },
   1745 { 0x00, 0x3e, 0x3e },
   1746 { 0x00, 0x3f, 0x3f },
   1747 { 0x00, 0x40, 0x40 },
   1748 { 0x01, 0x61, 0x41 },
   1749 { 0x01, 0x62, 0x42 },
   1750 { 0x01, 0x63, 0x43 },
   1751 { 0x01, 0x64, 0x44 },
   1752 { 0x01, 0x65, 0x45 },
   1753 { 0x01, 0x66, 0x46 },
   1754 { 0x01, 0x67, 0x47 },
   1755 { 0x01, 0x68, 0x48 },
   1756 { 0x01, 0x69, 0x49 },
   1757 { 0x01, 0x6a, 0x4a },
   1758 { 0x01, 0x6b, 0x4b },
   1759 { 0x01, 0x6c, 0x4c },
   1760 { 0x01, 0x6d, 0x4d },
   1761 { 0x01, 0x6e, 0x4e },
   1762 { 0x01, 0x6f, 0x4f },
   1763 { 0x01, 0x70, 0x50 },
   1764 { 0x01, 0x71, 0x51 },
   1765 { 0x01, 0x72, 0x52 },
   1766 { 0x01, 0x73, 0x53 },
   1767 { 0x01, 0x74, 0x54 },
   1768 { 0x01, 0x75, 0x55 },
   1769 { 0x01, 0x76, 0x56 },
   1770 { 0x01, 0x77, 0x57 },
   1771 { 0x01, 0x78, 0x58 },
   1772 { 0x01, 0x79, 0x59 },
   1773 { 0x01, 0x7a, 0x5a },
   1774 { 0x00, 0x5b, 0x5b },
   1775 { 0x00, 0x5c, 0x5c },
   1776 { 0x00, 0x5d, 0x5d },
   1777 { 0x00, 0x5e, 0x5e },
   1778 { 0x00, 0x5f, 0x5f },
   1779 { 0x00, 0x60, 0x60 },
   1780 { 0x00, 0x61, 0x41 },
   1781 { 0x00, 0x62, 0x42 },
   1782 { 0x00, 0x63, 0x43 },
   1783 { 0x00, 0x64, 0x44 },
   1784 { 0x00, 0x65, 0x45 },
   1785 { 0x00, 0x66, 0x46 },
   1786 { 0x00, 0x67, 0x47 },
   1787 { 0x00, 0x68, 0x48 },
   1788 { 0x00, 0x69, 0x49 },
   1789 { 0x00, 0x6a, 0x4a },
   1790 { 0x00, 0x6b, 0x4b },
   1791 { 0x00, 0x6c, 0x4c },
   1792 { 0x00, 0x6d, 0x4d },
   1793 { 0x00, 0x6e, 0x4e },
   1794 { 0x00, 0x6f, 0x4f },
   1795 { 0x00, 0x70, 0x50 },
   1796 { 0x00, 0x71, 0x51 },
   1797 { 0x00, 0x72, 0x52 },
   1798 { 0x00, 0x73, 0x53 },
   1799 { 0x00, 0x74, 0x54 },
   1800 { 0x00, 0x75, 0x55 },
   1801 { 0x00, 0x76, 0x56 },
   1802 { 0x00, 0x77, 0x57 },
   1803 { 0x00, 0x78, 0x58 },
   1804 { 0x00, 0x79, 0x59 },
   1805 { 0x00, 0x7a, 0x5a },
   1806 { 0x00, 0x7b, 0x7b },
   1807 { 0x00, 0x7c, 0x7c },
   1808 { 0x00, 0x7d, 0x7d },
   1809 { 0x00, 0x7e, 0x7e },
   1810 { 0x00, 0x7f, 0x7f },
   1811 { 0x00, 0x80, 0x80 },
   1812 { 0x00, 0x81, 0x81 },
   1813 { 0x00, 0x82, 0x82 },
   1814 { 0x00, 0x83, 0x83 },
   1815 { 0x00, 0x84, 0x84 },
   1816 { 0x00, 0x85, 0x85 },
   1817 { 0x00, 0x86, 0x86 },
   1818 { 0x00, 0x87, 0x87 },
   1819 { 0x00, 0x88, 0x88 },
   1820 { 0x00, 0x89, 0x89 },
   1821 { 0x00, 0x8a, 0x8a },
   1822 { 0x00, 0x8b, 0x8b },
   1823 { 0x00, 0x8c, 0x8c },
   1824 { 0x00, 0x8d, 0x8d },
   1825 { 0x00, 0x8e, 0x8e },
   1826 { 0x00, 0x8f, 0x8f },
   1827 { 0x00, 0x90, 0x90 },
   1828 { 0x00, 0x91, 0x91 },
   1829 { 0x00, 0x92, 0x92 },
   1830 { 0x00, 0x93, 0x93 },
   1831 { 0x00, 0x94, 0x94 },
   1832 { 0x00, 0x95, 0x95 },
   1833 { 0x00, 0x96, 0x96 },
   1834 { 0x00, 0x97, 0x97 },
   1835 { 0x00, 0x98, 0x98 },
   1836 { 0x00, 0x99, 0x99 },
   1837 { 0x00, 0x9a, 0x9a },
   1838 { 0x00, 0x9b, 0x9b },
   1839 { 0x00, 0x9c, 0x9c },
   1840 { 0x00, 0x9d, 0x9d },
   1841 { 0x00, 0x9e, 0x9e },
   1842 { 0x00, 0x9f, 0x9f },
   1843 { 0x00, 0xa0, 0xa0 },
   1844 { 0x00, 0xa1, 0xa1 },
   1845 { 0x00, 0xa2, 0xa2 },
   1846 { 0x00, 0xa3, 0xa3 },
   1847 { 0x00, 0xa4, 0xa4 },
   1848 { 0x00, 0xa5, 0xa5 },
   1849 { 0x00, 0xa6, 0xa6 },
   1850 { 0x00, 0xa7, 0xa7 },
   1851 { 0x00, 0xa8, 0xa8 },
   1852 { 0x00, 0xa9, 0xa9 },
   1853 { 0x00, 0xaa, 0xaa },
   1854 { 0x00, 0xab, 0xab },
   1855 { 0x00, 0xac, 0xac },
   1856 { 0x00, 0xad, 0xad },
   1857 { 0x00, 0xae, 0xae },
   1858 { 0x00, 0xaf, 0xaf },
   1859 { 0x00, 0xb0, 0xb0 },
   1860 { 0x00, 0xb1, 0xb1 },
   1861 { 0x00, 0xb2, 0xb2 },
   1862 { 0x00, 0xb3, 0xb3 },
   1863 { 0x00, 0xb4, 0xb4 },
   1864 { 0x00, 0xb5, 0xb5 },
   1865 { 0x01, 0xdc, 0xb6 },
   1866 { 0x00, 0xb7, 0xb7 },
   1867 { 0x01, 0xdd, 0xb8 },
   1868 { 0x01, 0xde, 0xb9 },
   1869 { 0x01, 0xdf, 0xba },
   1870 { 0x00, 0xbb, 0xbb },
   1871 { 0x01, 0xfc, 0xbc },
   1872 { 0x00, 0xbd, 0xbd },
   1873 { 0x01, 0xfd, 0xbe },
   1874 { 0x01, 0xfe, 0xbf },
   1875 { 0x00, 0xc0, 0xc0 },
   1876 { 0x01, 0xe1, 0xc1 },
   1877 { 0x01, 0xe2, 0xc2 },
   1878 { 0x01, 0xe3, 0xc3 },
   1879 { 0x01, 0xe4, 0xc4 },
   1880 { 0x01, 0xe5, 0xc5 },
   1881 { 0x01, 0xe6, 0xc6 },
   1882 { 0x01, 0xe7, 0xc7 },
   1883 { 0x01, 0xe8, 0xc8 },
   1884 { 0x01, 0xe9, 0xc9 },
   1885 { 0x01, 0xea, 0xca },
   1886 { 0x01, 0xeb, 0xcb },
   1887 { 0x01, 0xec, 0xcc },
   1888 { 0x01, 0xed, 0xcd },
   1889 { 0x01, 0xee, 0xce },
   1890 { 0x01, 0xef, 0xcf },
   1891 { 0x01, 0xf0, 0xd0 },
   1892 { 0x01, 0xf1, 0xd1 },
   1893 { 0x00, 0xd2, 0xd2 },
   1894 { 0x01, 0xf3, 0xd3 },
   1895 { 0x01, 0xf4, 0xd4 },
   1896 { 0x01, 0xf5, 0xd5 },
   1897 { 0x01, 0xf6, 0xd6 },
   1898 { 0x01, 0xf7, 0xd7 },
   1899 { 0x01, 0xf8, 0xd8 },
   1900 { 0x01, 0xf9, 0xd9 },
   1901 { 0x01, 0xfa, 0xda },
   1902 { 0x01, 0xfb, 0xdb },
   1903 { 0x00, 0xdc, 0xb6 },
   1904 { 0x00, 0xdd, 0xb8 },
   1905 { 0x00, 0xde, 0xb9 },
   1906 { 0x00, 0xdf, 0xba },
   1907 { 0x00, 0xe0, 0xe0 },
   1908 { 0x00, 0xe1, 0xc1 },
   1909 { 0x00, 0xe2, 0xc2 },
   1910 { 0x00, 0xe3, 0xc3 },
   1911 { 0x00, 0xe4, 0xc4 },
   1912 { 0x00, 0xe5, 0xc5 },
   1913 { 0x00, 0xe6, 0xc6 },
   1914 { 0x00, 0xe7, 0xc7 },
   1915 { 0x00, 0xe8, 0xc8 },
   1916 { 0x00, 0xe9, 0xc9 },
   1917 { 0x00, 0xea, 0xca },
   1918 { 0x00, 0xeb, 0xcb },
   1919 { 0x00, 0xec, 0xcc },
   1920 { 0x00, 0xed, 0xcd },
   1921 { 0x00, 0xee, 0xce },
   1922 { 0x00, 0xef, 0xcf },
   1923 { 0x00, 0xf0, 0xd0 },
   1924 { 0x00, 0xf1, 0xd1 },
   1925 { 0x00, 0xf2, 0xd3 },
   1926 { 0x00, 0xf3, 0xd3 },
   1927 { 0x00, 0xf4, 0xd4 },
   1928 { 0x00, 0xf5, 0xd5 },
   1929 { 0x00, 0xf6, 0xd6 },
   1930 { 0x00, 0xf7, 0xd7 },
   1931 { 0x00, 0xf8, 0xd8 },
   1932 { 0x00, 0xf9, 0xd9 },
   1933 { 0x00, 0xfa, 0xda },
   1934 { 0x00, 0xfb, 0xdb },
   1935 { 0x00, 0xfc, 0xbc },
   1936 { 0x00, 0xfd, 0xbe },
   1937 { 0x00, 0xfe, 0xbf },
   1938 { 0x00, 0xff, 0xff },
   1939 };
   1940 
   1941 struct cs_info iso8_tbl[] = {
   1942 { 0x00, 0x00, 0x00 },
   1943 { 0x00, 0x01, 0x01 },
   1944 { 0x00, 0x02, 0x02 },
   1945 { 0x00, 0x03, 0x03 },
   1946 { 0x00, 0x04, 0x04 },
   1947 { 0x00, 0x05, 0x05 },
   1948 { 0x00, 0x06, 0x06 },
   1949 { 0x00, 0x07, 0x07 },
   1950 { 0x00, 0x08, 0x08 },
   1951 { 0x00, 0x09, 0x09 },
   1952 { 0x00, 0x0a, 0x0a },
   1953 { 0x00, 0x0b, 0x0b },
   1954 { 0x00, 0x0c, 0x0c },
   1955 { 0x00, 0x0d, 0x0d },
   1956 { 0x00, 0x0e, 0x0e },
   1957 { 0x00, 0x0f, 0x0f },
   1958 { 0x00, 0x10, 0x10 },
   1959 { 0x00, 0x11, 0x11 },
   1960 { 0x00, 0x12, 0x12 },
   1961 { 0x00, 0x13, 0x13 },
   1962 { 0x00, 0x14, 0x14 },
   1963 { 0x00, 0x15, 0x15 },
   1964 { 0x00, 0x16, 0x16 },
   1965 { 0x00, 0x17, 0x17 },
   1966 { 0x00, 0x18, 0x18 },
   1967 { 0x00, 0x19, 0x19 },
   1968 { 0x00, 0x1a, 0x1a },
   1969 { 0x00, 0x1b, 0x1b },
   1970 { 0x00, 0x1c, 0x1c },
   1971 { 0x00, 0x1d, 0x1d },
   1972 { 0x00, 0x1e, 0x1e },
   1973 { 0x00, 0x1f, 0x1f },
   1974 { 0x00, 0x20, 0x20 },
   1975 { 0x00, 0x21, 0x21 },
   1976 { 0x00, 0x22, 0x22 },
   1977 { 0x00, 0x23, 0x23 },
   1978 { 0x00, 0x24, 0x24 },
   1979 { 0x00, 0x25, 0x25 },
   1980 { 0x00, 0x26, 0x26 },
   1981 { 0x00, 0x27, 0x27 },
   1982 { 0x00, 0x28, 0x28 },
   1983 { 0x00, 0x29, 0x29 },
   1984 { 0x00, 0x2a, 0x2a },
   1985 { 0x00, 0x2b, 0x2b },
   1986 { 0x00, 0x2c, 0x2c },
   1987 { 0x00, 0x2d, 0x2d },
   1988 { 0x00, 0x2e, 0x2e },
   1989 { 0x00, 0x2f, 0x2f },
   1990 { 0x00, 0x30, 0x30 },
   1991 { 0x00, 0x31, 0x31 },
   1992 { 0x00, 0x32, 0x32 },
   1993 { 0x00, 0x33, 0x33 },
   1994 { 0x00, 0x34, 0x34 },
   1995 { 0x00, 0x35, 0x35 },
   1996 { 0x00, 0x36, 0x36 },
   1997 { 0x00, 0x37, 0x37 },
   1998 { 0x00, 0x38, 0x38 },
   1999 { 0x00, 0x39, 0x39 },
   2000 { 0x00, 0x3a, 0x3a },
   2001 { 0x00, 0x3b, 0x3b },
   2002 { 0x00, 0x3c, 0x3c },
   2003 { 0x00, 0x3d, 0x3d },
   2004 { 0x00, 0x3e, 0x3e },
   2005 { 0x00, 0x3f, 0x3f },
   2006 { 0x00, 0x40, 0x40 },
   2007 { 0x01, 0x61, 0x41 },
   2008 { 0x01, 0x62, 0x42 },
   2009 { 0x01, 0x63, 0x43 },
   2010 { 0x01, 0x64, 0x44 },
   2011 { 0x01, 0x65, 0x45 },
   2012 { 0x01, 0x66, 0x46 },
   2013 { 0x01, 0x67, 0x47 },
   2014 { 0x01, 0x68, 0x48 },
   2015 { 0x01, 0x69, 0x49 },
   2016 { 0x01, 0x6a, 0x4a },
   2017 { 0x01, 0x6b, 0x4b },
   2018 { 0x01, 0x6c, 0x4c },
   2019 { 0x01, 0x6d, 0x4d },
   2020 { 0x01, 0x6e, 0x4e },
   2021 { 0x01, 0x6f, 0x4f },
   2022 { 0x01, 0x70, 0x50 },
   2023 { 0x01, 0x71, 0x51 },
   2024 { 0x01, 0x72, 0x52 },
   2025 { 0x01, 0x73, 0x53 },
   2026 { 0x01, 0x74, 0x54 },
   2027 { 0x01, 0x75, 0x55 },
   2028 { 0x01, 0x76, 0x56 },
   2029 { 0x01, 0x77, 0x57 },
   2030 { 0x01, 0x78, 0x58 },
   2031 { 0x01, 0x79, 0x59 },
   2032 { 0x01, 0x7a, 0x5a },
   2033 { 0x00, 0x5b, 0x5b },
   2034 { 0x00, 0x5c, 0x5c },
   2035 { 0x00, 0x5d, 0x5d },
   2036 { 0x00, 0x5e, 0x5e },
   2037 { 0x00, 0x5f, 0x5f },
   2038 { 0x00, 0x60, 0x60 },
   2039 { 0x00, 0x61, 0x41 },
   2040 { 0x00, 0x62, 0x42 },
   2041 { 0x00, 0x63, 0x43 },
   2042 { 0x00, 0x64, 0x44 },
   2043 { 0x00, 0x65, 0x45 },
   2044 { 0x00, 0x66, 0x46 },
   2045 { 0x00, 0x67, 0x47 },
   2046 { 0x00, 0x68, 0x48 },
   2047 { 0x00, 0x69, 0x49 },
   2048 { 0x00, 0x6a, 0x4a },
   2049 { 0x00, 0x6b, 0x4b },
   2050 { 0x00, 0x6c, 0x4c },
   2051 { 0x00, 0x6d, 0x4d },
   2052 { 0x00, 0x6e, 0x4e },
   2053 { 0x00, 0x6f, 0x4f },
   2054 { 0x00, 0x70, 0x50 },
   2055 { 0x00, 0x71, 0x51 },
   2056 { 0x00, 0x72, 0x52 },
   2057 { 0x00, 0x73, 0x53 },
   2058 { 0x00, 0x74, 0x54 },
   2059 { 0x00, 0x75, 0x55 },
   2060 { 0x00, 0x76, 0x56 },
   2061 { 0x00, 0x77, 0x57 },
   2062 { 0x00, 0x78, 0x58 },
   2063 { 0x00, 0x79, 0x59 },
   2064 { 0x00, 0x7a, 0x5a },
   2065 { 0x00, 0x7b, 0x7b },
   2066 { 0x00, 0x7c, 0x7c },
   2067 { 0x00, 0x7d, 0x7d },
   2068 { 0x00, 0x7e, 0x7e },
   2069 { 0x00, 0x7f, 0x7f },
   2070 { 0x00, 0x80, 0x80 },
   2071 { 0x00, 0x81, 0x81 },
   2072 { 0x00, 0x82, 0x82 },
   2073 { 0x00, 0x83, 0x83 },
   2074 { 0x00, 0x84, 0x84 },
   2075 { 0x00, 0x85, 0x85 },
   2076 { 0x00, 0x86, 0x86 },
   2077 { 0x00, 0x87, 0x87 },
   2078 { 0x00, 0x88, 0x88 },
   2079 { 0x00, 0x89, 0x89 },
   2080 { 0x00, 0x8a, 0x8a },
   2081 { 0x00, 0x8b, 0x8b },
   2082 { 0x00, 0x8c, 0x8c },
   2083 { 0x00, 0x8d, 0x8d },
   2084 { 0x00, 0x8e, 0x8e },
   2085 { 0x00, 0x8f, 0x8f },
   2086 { 0x00, 0x90, 0x90 },
   2087 { 0x00, 0x91, 0x91 },
   2088 { 0x00, 0x92, 0x92 },
   2089 { 0x00, 0x93, 0x93 },
   2090 { 0x00, 0x94, 0x94 },
   2091 { 0x00, 0x95, 0x95 },
   2092 { 0x00, 0x96, 0x96 },
   2093 { 0x00, 0x97, 0x97 },
   2094 { 0x00, 0x98, 0x98 },
   2095 { 0x00, 0x99, 0x99 },
   2096 { 0x00, 0x9a, 0x9a },
   2097 { 0x00, 0x9b, 0x9b },
   2098 { 0x00, 0x9c, 0x9c },
   2099 { 0x00, 0x9d, 0x9d },
   2100 { 0x00, 0x9e, 0x9e },
   2101 { 0x00, 0x9f, 0x9f },
   2102 { 0x00, 0xa0, 0xa0 },
   2103 { 0x00, 0xa1, 0xa1 },
   2104 { 0x00, 0xa2, 0xa2 },
   2105 { 0x00, 0xa3, 0xa3 },
   2106 { 0x00, 0xa4, 0xa4 },
   2107 { 0x00, 0xa5, 0xa5 },
   2108 { 0x00, 0xa6, 0xa6 },
   2109 { 0x00, 0xa7, 0xa7 },
   2110 { 0x00, 0xa8, 0xa8 },
   2111 { 0x00, 0xa9, 0xa9 },
   2112 { 0x00, 0xaa, 0xaa },
   2113 { 0x00, 0xab, 0xab },
   2114 { 0x00, 0xac, 0xac },
   2115 { 0x00, 0xad, 0xad },
   2116 { 0x00, 0xae, 0xae },
   2117 { 0x00, 0xaf, 0xaf },
   2118 { 0x00, 0xb0, 0xb0 },
   2119 { 0x00, 0xb1, 0xb1 },
   2120 { 0x00, 0xb2, 0xb2 },
   2121 { 0x00, 0xb3, 0xb3 },
   2122 { 0x00, 0xb4, 0xb4 },
   2123 { 0x00, 0xb5, 0xb5 },
   2124 { 0x00, 0xb6, 0xb6 },
   2125 { 0x00, 0xb7, 0xb7 },
   2126 { 0x00, 0xb8, 0xb8 },
   2127 { 0x00, 0xb9, 0xb9 },
   2128 { 0x00, 0xba, 0xba },
   2129 { 0x00, 0xbb, 0xbb },
   2130 { 0x00, 0xbc, 0xbc },
   2131 { 0x00, 0xbd, 0xbd },
   2132 { 0x00, 0xbe, 0xbe },
   2133 { 0x00, 0xbf, 0xbf },
   2134 { 0x00, 0xc0, 0xc0 },
   2135 { 0x00, 0xc1, 0xc1 },
   2136 { 0x00, 0xc2, 0xc2 },
   2137 { 0x00, 0xc3, 0xc3 },
   2138 { 0x00, 0xc4, 0xc4 },
   2139 { 0x00, 0xc5, 0xc5 },
   2140 { 0x00, 0xc6, 0xc6 },
   2141 { 0x00, 0xc7, 0xc7 },
   2142 { 0x00, 0xc8, 0xc8 },
   2143 { 0x00, 0xc9, 0xc9 },
   2144 { 0x00, 0xca, 0xca },
   2145 { 0x00, 0xcb, 0xcb },
   2146 { 0x00, 0xcc, 0xcc },
   2147 { 0x00, 0xcd, 0xcd },
   2148 { 0x00, 0xce, 0xce },
   2149 { 0x00, 0xcf, 0xcf },
   2150 { 0x00, 0xd0, 0xd0 },
   2151 { 0x00, 0xd1, 0xd1 },
   2152 { 0x00, 0xd2, 0xd2 },
   2153 { 0x00, 0xd3, 0xd3 },
   2154 { 0x00, 0xd4, 0xd4 },
   2155 { 0x00, 0xd5, 0xd5 },
   2156 { 0x00, 0xd6, 0xd6 },
   2157 { 0x00, 0xd7, 0xd7 },
   2158 { 0x00, 0xd8, 0xd8 },
   2159 { 0x00, 0xd9, 0xd9 },
   2160 { 0x00, 0xda, 0xda },
   2161 { 0x00, 0xdb, 0xdb },
   2162 { 0x00, 0xdc, 0xdc },
   2163 { 0x00, 0xdd, 0xdd },
   2164 { 0x00, 0xde, 0xde },
   2165 { 0x00, 0xdf, 0xdf },
   2166 { 0x00, 0xe0, 0xe0 },
   2167 { 0x00, 0xe1, 0xe1 },
   2168 { 0x00, 0xe2, 0xe2 },
   2169 { 0x00, 0xe3, 0xe3 },
   2170 { 0x00, 0xe4, 0xe4 },
   2171 { 0x00, 0xe5, 0xe5 },
   2172 { 0x00, 0xe6, 0xe6 },
   2173 { 0x00, 0xe7, 0xe7 },
   2174 { 0x00, 0xe8, 0xe8 },
   2175 { 0x00, 0xe9, 0xe9 },
   2176 { 0x00, 0xea, 0xea },
   2177 { 0x00, 0xeb, 0xeb },
   2178 { 0x00, 0xec, 0xec },
   2179 { 0x00, 0xed, 0xed },
   2180 { 0x00, 0xee, 0xee },
   2181 { 0x00, 0xef, 0xef },
   2182 { 0x00, 0xf0, 0xf0 },
   2183 { 0x00, 0xf1, 0xf1 },
   2184 { 0x00, 0xf2, 0xf2 },
   2185 { 0x00, 0xf3, 0xf3 },
   2186 { 0x00, 0xf4, 0xf4 },
   2187 { 0x00, 0xf5, 0xf5 },
   2188 { 0x00, 0xf6, 0xf6 },
   2189 { 0x00, 0xf7, 0xf7 },
   2190 { 0x00, 0xf8, 0xf8 },
   2191 { 0x00, 0xf9, 0xf9 },
   2192 { 0x00, 0xfa, 0xfa },
   2193 { 0x00, 0xfb, 0xfb },
   2194 { 0x00, 0xfc, 0xfc },
   2195 { 0x00, 0xfd, 0xfd },
   2196 { 0x00, 0xfe, 0xfe },
   2197 { 0x00, 0xff, 0xff },
   2198 };
   2199 
   2200 struct cs_info iso9_tbl[] = {
   2201 { 0x00, 0x00, 0x00 },
   2202 { 0x00, 0x01, 0x01 },
   2203 { 0x00, 0x02, 0x02 },
   2204 { 0x00, 0x03, 0x03 },
   2205 { 0x00, 0x04, 0x04 },
   2206 { 0x00, 0x05, 0x05 },
   2207 { 0x00, 0x06, 0x06 },
   2208 { 0x00, 0x07, 0x07 },
   2209 { 0x00, 0x08, 0x08 },
   2210 { 0x00, 0x09, 0x09 },
   2211 { 0x00, 0x0a, 0x0a },
   2212 { 0x00, 0x0b, 0x0b },
   2213 { 0x00, 0x0c, 0x0c },
   2214 { 0x00, 0x0d, 0x0d },
   2215 { 0x00, 0x0e, 0x0e },
   2216 { 0x00, 0x0f, 0x0f },
   2217 { 0x00, 0x10, 0x10 },
   2218 { 0x00, 0x11, 0x11 },
   2219 { 0x00, 0x12, 0x12 },
   2220 { 0x00, 0x13, 0x13 },
   2221 { 0x00, 0x14, 0x14 },
   2222 { 0x00, 0x15, 0x15 },
   2223 { 0x00, 0x16, 0x16 },
   2224 { 0x00, 0x17, 0x17 },
   2225 { 0x00, 0x18, 0x18 },
   2226 { 0x00, 0x19, 0x19 },
   2227 { 0x00, 0x1a, 0x1a },
   2228 { 0x00, 0x1b, 0x1b },
   2229 { 0x00, 0x1c, 0x1c },
   2230 { 0x00, 0x1d, 0x1d },
   2231 { 0x00, 0x1e, 0x1e },
   2232 { 0x00, 0x1f, 0x1f },
   2233 { 0x00, 0x20, 0x20 },
   2234 { 0x00, 0x21, 0x21 },
   2235 { 0x00, 0x22, 0x22 },
   2236 { 0x00, 0x23, 0x23 },
   2237 { 0x00, 0x24, 0x24 },
   2238 { 0x00, 0x25, 0x25 },
   2239 { 0x00, 0x26, 0x26 },
   2240 { 0x00, 0x27, 0x27 },
   2241 { 0x00, 0x28, 0x28 },
   2242 { 0x00, 0x29, 0x29 },
   2243 { 0x00, 0x2a, 0x2a },
   2244 { 0x00, 0x2b, 0x2b },
   2245 { 0x00, 0x2c, 0x2c },
   2246 { 0x00, 0x2d, 0x2d },
   2247 { 0x00, 0x2e, 0x2e },
   2248 { 0x00, 0x2f, 0x2f },
   2249 { 0x00, 0x30, 0x30 },
   2250 { 0x00, 0x31, 0x31 },
   2251 { 0x00, 0x32, 0x32 },
   2252 { 0x00, 0x33, 0x33 },
   2253 { 0x00, 0x34, 0x34 },
   2254 { 0x00, 0x35, 0x35 },
   2255 { 0x00, 0x36, 0x36 },
   2256 { 0x00, 0x37, 0x37 },
   2257 { 0x00, 0x38, 0x38 },
   2258 { 0x00, 0x39, 0x39 },
   2259 { 0x00, 0x3a, 0x3a },
   2260 { 0x00, 0x3b, 0x3b },
   2261 { 0x00, 0x3c, 0x3c },
   2262 { 0x00, 0x3d, 0x3d },
   2263 { 0x00, 0x3e, 0x3e },
   2264 { 0x00, 0x3f, 0x3f },
   2265 { 0x00, 0x40, 0x40 },
   2266 { 0x01, 0x61, 0x41 },
   2267 { 0x01, 0x62, 0x42 },
   2268 { 0x01, 0x63, 0x43 },
   2269 { 0x01, 0x64, 0x44 },
   2270 { 0x01, 0x65, 0x45 },
   2271 { 0x01, 0x66, 0x46 },
   2272 { 0x01, 0x67, 0x47 },
   2273 { 0x01, 0x68, 0x48 },
   2274 { 0x01, 0xfd, 0x49 },
   2275 { 0x01, 0x6a, 0x4a },
   2276 { 0x01, 0x6b, 0x4b },
   2277 { 0x01, 0x6c, 0x4c },
   2278 { 0x01, 0x6d, 0x4d },
   2279 { 0x01, 0x6e, 0x4e },
   2280 { 0x01, 0x6f, 0x4f },
   2281 { 0x01, 0x70, 0x50 },
   2282 { 0x01, 0x71, 0x51 },
   2283 { 0x01, 0x72, 0x52 },
   2284 { 0x01, 0x73, 0x53 },
   2285 { 0x01, 0x74, 0x54 },
   2286 { 0x01, 0x75, 0x55 },
   2287 { 0x01, 0x76, 0x56 },
   2288 { 0x01, 0x77, 0x57 },
   2289 { 0x01, 0x78, 0x58 },
   2290 { 0x01, 0x79, 0x59 },
   2291 { 0x01, 0x7a, 0x5a },
   2292 { 0x00, 0x5b, 0x5b },
   2293 { 0x00, 0x5c, 0x5c },
   2294 { 0x00, 0x5d, 0x5d },
   2295 { 0x00, 0x5e, 0x5e },
   2296 { 0x00, 0x5f, 0x5f },
   2297 { 0x00, 0x60, 0x60 },
   2298 { 0x00, 0x61, 0x41 },
   2299 { 0x00, 0x62, 0x42 },
   2300 { 0x00, 0x63, 0x43 },
   2301 { 0x00, 0x64, 0x44 },
   2302 { 0x00, 0x65, 0x45 },
   2303 { 0x00, 0x66, 0x46 },
   2304 { 0x00, 0x67, 0x47 },
   2305 { 0x00, 0x68, 0x48 },
   2306 { 0x00, 0x69, 0xdd },
   2307 { 0x00, 0x6a, 0x4a },
   2308 { 0x00, 0x6b, 0x4b },
   2309 { 0x00, 0x6c, 0x4c },
   2310 { 0x00, 0x6d, 0x4d },
   2311 { 0x00, 0x6e, 0x4e },
   2312 { 0x00, 0x6f, 0x4f },
   2313 { 0x00, 0x70, 0x50 },
   2314 { 0x00, 0x71, 0x51 },
   2315 { 0x00, 0x72, 0x52 },
   2316 { 0x00, 0x73, 0x53 },
   2317 { 0x00, 0x74, 0x54 },
   2318 { 0x00, 0x75, 0x55 },
   2319 { 0x00, 0x76, 0x56 },
   2320 { 0x00, 0x77, 0x57 },
   2321 { 0x00, 0x78, 0x58 },
   2322 { 0x00, 0x79, 0x59 },
   2323 { 0x00, 0x7a, 0x5a },
   2324 { 0x00, 0x7b, 0x7b },
   2325 { 0x00, 0x7c, 0x7c },
   2326 { 0x00, 0x7d, 0x7d },
   2327 { 0x00, 0x7e, 0x7e },
   2328 { 0x00, 0x7f, 0x7f },
   2329 { 0x00, 0x80, 0x80 },
   2330 { 0x00, 0x81, 0x81 },
   2331 { 0x00, 0x82, 0x82 },
   2332 { 0x00, 0x83, 0x83 },
   2333 { 0x00, 0x84, 0x84 },
   2334 { 0x00, 0x85, 0x85 },
   2335 { 0x00, 0x86, 0x86 },
   2336 { 0x00, 0x87, 0x87 },
   2337 { 0x00, 0x88, 0x88 },
   2338 { 0x00, 0x89, 0x89 },
   2339 { 0x00, 0x8a, 0x8a },
   2340 { 0x00, 0x8b, 0x8b },
   2341 { 0x00, 0x8c, 0x8c },
   2342 { 0x00, 0x8d, 0x8d },
   2343 { 0x00, 0x8e, 0x8e },
   2344 { 0x00, 0x8f, 0x8f },
   2345 { 0x00, 0x90, 0x90 },
   2346 { 0x00, 0x91, 0x91 },
   2347 { 0x00, 0x92, 0x92 },
   2348 { 0x00, 0x93, 0x93 },
   2349 { 0x00, 0x94, 0x94 },
   2350 { 0x00, 0x95, 0x95 },
   2351 { 0x00, 0x96, 0x96 },
   2352 { 0x00, 0x97, 0x97 },
   2353 { 0x00, 0x98, 0x98 },
   2354 { 0x00, 0x99, 0x99 },
   2355 { 0x00, 0x9a, 0x9a },
   2356 { 0x00, 0x9b, 0x9b },
   2357 { 0x00, 0x9c, 0x9c },
   2358 { 0x00, 0x9d, 0x9d },
   2359 { 0x00, 0x9e, 0x9e },
   2360 { 0x00, 0x9f, 0x9f },
   2361 { 0x00, 0xa0, 0xa0 },
   2362 { 0x00, 0xa1, 0xa1 },
   2363 { 0x00, 0xa2, 0xa2 },
   2364 { 0x00, 0xa3, 0xa3 },
   2365 { 0x00, 0xa4, 0xa4 },
   2366 { 0x00, 0xa5, 0xa5 },
   2367 { 0x00, 0xa6, 0xa6 },
   2368 { 0x00, 0xa7, 0xa7 },
   2369 { 0x00, 0xa8, 0xa8 },
   2370 { 0x00, 0xa9, 0xa9 },
   2371 { 0x00, 0xaa, 0xaa },
   2372 { 0x00, 0xab, 0xab },
   2373 { 0x00, 0xac, 0xac },
   2374 { 0x00, 0xad, 0xad },
   2375 { 0x00, 0xae, 0xae },
   2376 { 0x00, 0xaf, 0xaf },
   2377 { 0x00, 0xb0, 0xb0 },
   2378 { 0x00, 0xb1, 0xb1 },
   2379 { 0x00, 0xb2, 0xb2 },
   2380 { 0x00, 0xb3, 0xb3 },
   2381 { 0x00, 0xb4, 0xb4 },
   2382 { 0x00, 0xb5, 0xb5 },
   2383 { 0x00, 0xb6, 0xb6 },
   2384 { 0x00, 0xb7, 0xb7 },
   2385 { 0x00, 0xb8, 0xb8 },
   2386 { 0x00, 0xb9, 0xb9 },
   2387 { 0x00, 0xba, 0xba },
   2388 { 0x00, 0xbb, 0xbb },
   2389 { 0x00, 0xbc, 0xbc },
   2390 { 0x00, 0xbd, 0xbd },
   2391 { 0x00, 0xbe, 0xbe },
   2392 { 0x00, 0xbf, 0xbf },
   2393 { 0x01, 0xe0, 0xc0 },
   2394 { 0x01, 0xe1, 0xc1 },
   2395 { 0x01, 0xe2, 0xc2 },
   2396 { 0x01, 0xe3, 0xc3 },
   2397 { 0x01, 0xe4, 0xc4 },
   2398 { 0x01, 0xe5, 0xc5 },
   2399 { 0x01, 0xe6, 0xc6 },
   2400 { 0x01, 0xe7, 0xc7 },
   2401 { 0x01, 0xe8, 0xc8 },
   2402 { 0x01, 0xe9, 0xc9 },
   2403 { 0x01, 0xea, 0xca },
   2404 { 0x01, 0xeb, 0xcb },
   2405 { 0x01, 0xec, 0xcc },
   2406 { 0x01, 0xed, 0xcd },
   2407 { 0x01, 0xee, 0xce },
   2408 { 0x01, 0xef, 0xcf },
   2409 { 0x01, 0xf0, 0xd0 },
   2410 { 0x01, 0xf1, 0xd1 },
   2411 { 0x01, 0xf2, 0xd2 },
   2412 { 0x01, 0xf3, 0xd3 },
   2413 { 0x01, 0xf4, 0xd4 },
   2414 { 0x01, 0xf5, 0xd5 },
   2415 { 0x01, 0xf6, 0xd6 },
   2416 { 0x00, 0xd7, 0xd7 },
   2417 { 0x01, 0xf8, 0xd8 },
   2418 { 0x01, 0xf9, 0xd9 },
   2419 { 0x01, 0xfa, 0xda },
   2420 { 0x01, 0xfb, 0xdb },
   2421 { 0x01, 0xfc, 0xdc },
   2422 { 0x01, 0x69, 0xdd },
   2423 { 0x01, 0xfe, 0xde },
   2424 { 0x00, 0xdf, 0xdf },
   2425 { 0x00, 0xe0, 0xc0 },
   2426 { 0x00, 0xe1, 0xc1 },
   2427 { 0x00, 0xe2, 0xc2 },
   2428 { 0x00, 0xe3, 0xc3 },
   2429 { 0x00, 0xe4, 0xc4 },
   2430 { 0x00, 0xe5, 0xc5 },
   2431 { 0x00, 0xe6, 0xc6 },
   2432 { 0x00, 0xe7, 0xc7 },
   2433 { 0x00, 0xe8, 0xc8 },
   2434 { 0x00, 0xe9, 0xc9 },
   2435 { 0x00, 0xea, 0xca },
   2436 { 0x00, 0xeb, 0xcb },
   2437 { 0x00, 0xec, 0xcc },
   2438 { 0x00, 0xed, 0xcd },
   2439 { 0x00, 0xee, 0xce },
   2440 { 0x00, 0xef, 0xcf },
   2441 { 0x00, 0xf0, 0xd0 },
   2442 { 0x00, 0xf1, 0xd1 },
   2443 { 0x00, 0xf2, 0xd2 },
   2444 { 0x00, 0xf3, 0xd3 },
   2445 { 0x00, 0xf4, 0xd4 },
   2446 { 0x00, 0xf5, 0xd5 },
   2447 { 0x00, 0xf6, 0xd6 },
   2448 { 0x00, 0xf7, 0xf7 },
   2449 { 0x00, 0xf8, 0xd8 },
   2450 { 0x00, 0xf9, 0xd9 },
   2451 { 0x00, 0xfa, 0xda },
   2452 { 0x00, 0xfb, 0xdb },
   2453 { 0x00, 0xfc, 0xdc },
   2454 { 0x00, 0xfd, 0x49 },
   2455 { 0x00, 0xfe, 0xde },
   2456 { 0x00, 0xff, 0xff },
   2457 };
   2458 
   2459 struct cs_info iso10_tbl[] = {
   2460 { 0x00, 0x00, 0x00 },
   2461 { 0x00, 0x01, 0x01 },
   2462 { 0x00, 0x02, 0x02 },
   2463 { 0x00, 0x03, 0x03 },
   2464 { 0x00, 0x04, 0x04 },
   2465 { 0x00, 0x05, 0x05 },
   2466 { 0x00, 0x06, 0x06 },
   2467 { 0x00, 0x07, 0x07 },
   2468 { 0x00, 0x08, 0x08 },
   2469 { 0x00, 0x09, 0x09 },
   2470 { 0x00, 0x0a, 0x0a },
   2471 { 0x00, 0x0b, 0x0b },
   2472 { 0x00, 0x0c, 0x0c },
   2473 { 0x00, 0x0d, 0x0d },
   2474 { 0x00, 0x0e, 0x0e },
   2475 { 0x00, 0x0f, 0x0f },
   2476 { 0x00, 0x10, 0x10 },
   2477 { 0x00, 0x11, 0x11 },
   2478 { 0x00, 0x12, 0x12 },
   2479 { 0x00, 0x13, 0x13 },
   2480 { 0x00, 0x14, 0x14 },
   2481 { 0x00, 0x15, 0x15 },
   2482 { 0x00, 0x16, 0x16 },
   2483 { 0x00, 0x17, 0x17 },
   2484 { 0x00, 0x18, 0x18 },
   2485 { 0x00, 0x19, 0x19 },
   2486 { 0x00, 0x1a, 0x1a },
   2487 { 0x00, 0x1b, 0x1b },
   2488 { 0x00, 0x1c, 0x1c },
   2489 { 0x00, 0x1d, 0x1d },
   2490 { 0x00, 0x1e, 0x1e },
   2491 { 0x00, 0x1f, 0x1f },
   2492 { 0x00, 0x20, 0x20 },
   2493 { 0x00, 0x21, 0x21 },
   2494 { 0x00, 0x22, 0x22 },
   2495 { 0x00, 0x23, 0x23 },
   2496 { 0x00, 0x24, 0x24 },
   2497 { 0x00, 0x25, 0x25 },
   2498 { 0x00, 0x26, 0x26 },
   2499 { 0x00, 0x27, 0x27 },
   2500 { 0x00, 0x28, 0x28 },
   2501 { 0x00, 0x29, 0x29 },
   2502 { 0x00, 0x2a, 0x2a },
   2503 { 0x00, 0x2b, 0x2b },
   2504 { 0x00, 0x2c, 0x2c },
   2505 { 0x00, 0x2d, 0x2d },
   2506 { 0x00, 0x2e, 0x2e },
   2507 { 0x00, 0x2f, 0x2f },
   2508 { 0x00, 0x30, 0x30 },
   2509 { 0x00, 0x31, 0x31 },
   2510 { 0x00, 0x32, 0x32 },
   2511 { 0x00, 0x33, 0x33 },
   2512 { 0x00, 0x34, 0x34 },
   2513 { 0x00, 0x35, 0x35 },
   2514 { 0x00, 0x36, 0x36 },
   2515 { 0x00, 0x37, 0x37 },
   2516 { 0x00, 0x38, 0x38 },
   2517 { 0x00, 0x39, 0x39 },
   2518 { 0x00, 0x3a, 0x3a },
   2519 { 0x00, 0x3b, 0x3b },
   2520 { 0x00, 0x3c, 0x3c },
   2521 { 0x00, 0x3d, 0x3d },
   2522 { 0x00, 0x3e, 0x3e },
   2523 { 0x00, 0x3f, 0x3f },
   2524 { 0x00, 0x40, 0x40 },
   2525 { 0x01, 0x61, 0x41 },
   2526 { 0x01, 0x62, 0x42 },
   2527 { 0x01, 0x63, 0x43 },
   2528 { 0x01, 0x64, 0x44 },
   2529 { 0x01, 0x65, 0x45 },
   2530 { 0x01, 0x66, 0x46 },
   2531 { 0x01, 0x67, 0x47 },
   2532 { 0x01, 0x68, 0x48 },
   2533 { 0x01, 0x69, 0x49 },
   2534 { 0x01, 0x6a, 0x4a },
   2535 { 0x01, 0x6b, 0x4b },
   2536 { 0x01, 0x6c, 0x4c },
   2537 { 0x01, 0x6d, 0x4d },
   2538 { 0x01, 0x6e, 0x4e },
   2539 { 0x01, 0x6f, 0x4f },
   2540 { 0x01, 0x70, 0x50 },
   2541 { 0x01, 0x71, 0x51 },
   2542 { 0x01, 0x72, 0x52 },
   2543 { 0x01, 0x73, 0x53 },
   2544 { 0x01, 0x74, 0x54 },
   2545 { 0x01, 0x75, 0x55 },
   2546 { 0x01, 0x76, 0x56 },
   2547 { 0x01, 0x77, 0x57 },
   2548 { 0x01, 0x78, 0x58 },
   2549 { 0x01, 0x79, 0x59 },
   2550 { 0x01, 0x7a, 0x5a },
   2551 { 0x00, 0x5b, 0x5b },
   2552 { 0x00, 0x5c, 0x5c },
   2553 { 0x00, 0x5d, 0x5d },
   2554 { 0x00, 0x5e, 0x5e },
   2555 { 0x00, 0x5f, 0x5f },
   2556 { 0x00, 0x60, 0x60 },
   2557 { 0x00, 0x61, 0x41 },
   2558 { 0x00, 0x62, 0x42 },
   2559 { 0x00, 0x63, 0x43 },
   2560 { 0x00, 0x64, 0x44 },
   2561 { 0x00, 0x65, 0x45 },
   2562 { 0x00, 0x66, 0x46 },
   2563 { 0x00, 0x67, 0x47 },
   2564 { 0x00, 0x68, 0x48 },
   2565 { 0x00, 0x69, 0x49 },
   2566 { 0x00, 0x6a, 0x4a },
   2567 { 0x00, 0x6b, 0x4b },
   2568 { 0x00, 0x6c, 0x4c },
   2569 { 0x00, 0x6d, 0x4d },
   2570 { 0x00, 0x6e, 0x4e },
   2571 { 0x00, 0x6f, 0x4f },
   2572 { 0x00, 0x70, 0x50 },
   2573 { 0x00, 0x71, 0x51 },
   2574 { 0x00, 0x72, 0x52 },
   2575 { 0x00, 0x73, 0x53 },
   2576 { 0x00, 0x74, 0x54 },
   2577 { 0x00, 0x75, 0x55 },
   2578 { 0x00, 0x76, 0x56 },
   2579 { 0x00, 0x77, 0x57 },
   2580 { 0x00, 0x78, 0x58 },
   2581 { 0x00, 0x79, 0x59 },
   2582 { 0x00, 0x7a, 0x5a },
   2583 { 0x00, 0x7b, 0x7b },
   2584 { 0x00, 0x7c, 0x7c },
   2585 { 0x00, 0x7d, 0x7d },
   2586 { 0x00, 0x7e, 0x7e },
   2587 { 0x00, 0x7f, 0x7f },
   2588 { 0x00, 0x80, 0x80 },
   2589 { 0x00, 0x81, 0x81 },
   2590 { 0x00, 0x82, 0x82 },
   2591 { 0x00, 0x83, 0x83 },
   2592 { 0x00, 0x84, 0x84 },
   2593 { 0x00, 0x85, 0x85 },
   2594 { 0x00, 0x86, 0x86 },
   2595 { 0x00, 0x87, 0x87 },
   2596 { 0x00, 0x88, 0x88 },
   2597 { 0x00, 0x89, 0x89 },
   2598 { 0x00, 0x8a, 0x8a },
   2599 { 0x00, 0x8b, 0x8b },
   2600 { 0x00, 0x8c, 0x8c },
   2601 { 0x00, 0x8d, 0x8d },
   2602 { 0x00, 0x8e, 0x8e },
   2603 { 0x00, 0x8f, 0x8f },
   2604 { 0x00, 0x90, 0x90 },
   2605 { 0x00, 0x91, 0x91 },
   2606 { 0x00, 0x92, 0x92 },
   2607 { 0x00, 0x93, 0x93 },
   2608 { 0x00, 0x94, 0x94 },
   2609 { 0x00, 0x95, 0x95 },
   2610 { 0x00, 0x96, 0x96 },
   2611 { 0x00, 0x97, 0x97 },
   2612 { 0x00, 0x98, 0x98 },
   2613 { 0x00, 0x99, 0x99 },
   2614 { 0x00, 0x9a, 0x9a },
   2615 { 0x00, 0x9b, 0x9b },
   2616 { 0x00, 0x9c, 0x9c },
   2617 { 0x00, 0x9d, 0x9d },
   2618 { 0x00, 0x9e, 0x9e },
   2619 { 0x00, 0x9f, 0x9f },
   2620 { 0x00, 0xa0, 0xa0 },
   2621 { 0x00, 0xa1, 0xa1 },
   2622 { 0x00, 0xa2, 0xa2 },
   2623 { 0x00, 0xa3, 0xa3 },
   2624 { 0x00, 0xa4, 0xa4 },
   2625 { 0x00, 0xa5, 0xa5 },
   2626 { 0x00, 0xa6, 0xa6 },
   2627 { 0x00, 0xa7, 0xa7 },
   2628 { 0x00, 0xa8, 0xa8 },
   2629 { 0x00, 0xa9, 0xa9 },
   2630 { 0x00, 0xaa, 0xaa },
   2631 { 0x00, 0xab, 0xab },
   2632 { 0x00, 0xac, 0xac },
   2633 { 0x00, 0xad, 0xad },
   2634 { 0x00, 0xae, 0xae },
   2635 { 0x00, 0xaf, 0xaf },
   2636 { 0x00, 0xb0, 0xb0 },
   2637 { 0x00, 0xb1, 0xb1 },
   2638 { 0x00, 0xb2, 0xb2 },
   2639 { 0x00, 0xb3, 0xb3 },
   2640 { 0x00, 0xb4, 0xb4 },
   2641 { 0x00, 0xb5, 0xb5 },
   2642 { 0x00, 0xb6, 0xb6 },
   2643 { 0x00, 0xb7, 0xb7 },
   2644 { 0x00, 0xb8, 0xb8 },
   2645 { 0x00, 0xb9, 0xb9 },
   2646 { 0x00, 0xba, 0xba },
   2647 { 0x00, 0xbb, 0xbb },
   2648 { 0x00, 0xbc, 0xbc },
   2649 { 0x00, 0xbd, 0xbd },
   2650 { 0x00, 0xbe, 0xbe },
   2651 { 0x00, 0xbf, 0xbf },
   2652 { 0x00, 0xc0, 0xc0 },
   2653 { 0x00, 0xc1, 0xc1 },
   2654 { 0x00, 0xc2, 0xc2 },
   2655 { 0x00, 0xc3, 0xc3 },
   2656 { 0x00, 0xc4, 0xc4 },
   2657 { 0x00, 0xc5, 0xc5 },
   2658 { 0x00, 0xc6, 0xc6 },
   2659 { 0x00, 0xc7, 0xc7 },
   2660 { 0x00, 0xc8, 0xc8 },
   2661 { 0x00, 0xc9, 0xc9 },
   2662 { 0x00, 0xca, 0xca },
   2663 { 0x00, 0xcb, 0xcb },
   2664 { 0x00, 0xcc, 0xcc },
   2665 { 0x00, 0xcd, 0xcd },
   2666 { 0x00, 0xce, 0xce },
   2667 { 0x00, 0xcf, 0xcf },
   2668 { 0x00, 0xd0, 0xd0 },
   2669 { 0x00, 0xd1, 0xd1 },
   2670 { 0x00, 0xd2, 0xd2 },
   2671 { 0x00, 0xd3, 0xd3 },
   2672 { 0x00, 0xd4, 0xd4 },
   2673 { 0x00, 0xd5, 0xd5 },
   2674 { 0x00, 0xd6, 0xd6 },
   2675 { 0x00, 0xd7, 0xd7 },
   2676 { 0x00, 0xd8, 0xd8 },
   2677 { 0x00, 0xd9, 0xd9 },
   2678 { 0x00, 0xda, 0xda },
   2679 { 0x00, 0xdb, 0xdb },
   2680 { 0x00, 0xdc, 0xdc },
   2681 { 0x00, 0xdd, 0xdd },
   2682 { 0x00, 0xde, 0xde },
   2683 { 0x00, 0xdf, 0xdf },
   2684 { 0x00, 0xe0, 0xe0 },
   2685 { 0x00, 0xe1, 0xe1 },
   2686 { 0x00, 0xe2, 0xe2 },
   2687 { 0x00, 0xe3, 0xe3 },
   2688 { 0x00, 0xe4, 0xe4 },
   2689 { 0x00, 0xe5, 0xe5 },
   2690 { 0x00, 0xe6, 0xe6 },
   2691 { 0x00, 0xe7, 0xe7 },
   2692 { 0x00, 0xe8, 0xe8 },
   2693 { 0x00, 0xe9, 0xe9 },
   2694 { 0x00, 0xea, 0xea },
   2695 { 0x00, 0xeb, 0xeb },
   2696 { 0x00, 0xec, 0xec },
   2697 { 0x00, 0xed, 0xed },
   2698 { 0x00, 0xee, 0xee },
   2699 { 0x00, 0xef, 0xef },
   2700 { 0x00, 0xf0, 0xf0 },
   2701 { 0x00, 0xf1, 0xf1 },
   2702 { 0x00, 0xf2, 0xf2 },
   2703 { 0x00, 0xf3, 0xf3 },
   2704 { 0x00, 0xf4, 0xf4 },
   2705 { 0x00, 0xf5, 0xf5 },
   2706 { 0x00, 0xf6, 0xf6 },
   2707 { 0x00, 0xf7, 0xf7 },
   2708 { 0x00, 0xf8, 0xf8 },
   2709 { 0x00, 0xf9, 0xf9 },
   2710 { 0x00, 0xfa, 0xfa },
   2711 { 0x00, 0xfb, 0xfb },
   2712 { 0x00, 0xfc, 0xfc },
   2713 { 0x00, 0xfd, 0xfd },
   2714 { 0x00, 0xfe, 0xfe },
   2715 { 0x00, 0xff, 0xff },
   2716 };
   2717 
   2718 struct cs_info koi8r_tbl[] = {
   2719 { 0x00, 0x00, 0x00 },
   2720 { 0x00, 0x01, 0x01 },
   2721 { 0x00, 0x02, 0x02 },
   2722 { 0x00, 0x03, 0x03 },
   2723 { 0x00, 0x04, 0x04 },
   2724 { 0x00, 0x05, 0x05 },
   2725 { 0x00, 0x06, 0x06 },
   2726 { 0x00, 0x07, 0x07 },
   2727 { 0x00, 0x08, 0x08 },
   2728 { 0x00, 0x09, 0x09 },
   2729 { 0x00, 0x0a, 0x0a },
   2730 { 0x00, 0x0b, 0x0b },
   2731 { 0x00, 0x0c, 0x0c },
   2732 { 0x00, 0x0d, 0x0d },
   2733 { 0x00, 0x0e, 0x0e },
   2734 { 0x00, 0x0f, 0x0f },
   2735 { 0x00, 0x10, 0x10 },
   2736 { 0x00, 0x11, 0x11 },
   2737 { 0x00, 0x12, 0x12 },
   2738 { 0x00, 0x13, 0x13 },
   2739 { 0x00, 0x14, 0x14 },
   2740 { 0x00, 0x15, 0x15 },
   2741 { 0x00, 0x16, 0x16 },
   2742 { 0x00, 0x17, 0x17 },
   2743 { 0x00, 0x18, 0x18 },
   2744 { 0x00, 0x19, 0x19 },
   2745 { 0x00, 0x1a, 0x1a },
   2746 { 0x00, 0x1b, 0x1b },
   2747 { 0x00, 0x1c, 0x1c },
   2748 { 0x00, 0x1d, 0x1d },
   2749 { 0x00, 0x1e, 0x1e },
   2750 { 0x00, 0x1f, 0x1f },
   2751 { 0x00, 0x20, 0x20 },
   2752 { 0x00, 0x21, 0x21 },
   2753 { 0x00, 0x22, 0x22 },
   2754 { 0x00, 0x23, 0x23 },
   2755 { 0x00, 0x24, 0x24 },
   2756 { 0x00, 0x25, 0x25 },
   2757 { 0x00, 0x26, 0x26 },
   2758 { 0x00, 0x27, 0x27 },
   2759 { 0x00, 0x28, 0x28 },
   2760 { 0x00, 0x29, 0x29 },
   2761 { 0x00, 0x2a, 0x2a },
   2762 { 0x00, 0x2b, 0x2b },
   2763 { 0x00, 0x2c, 0x2c },
   2764 { 0x00, 0x2d, 0x2d },
   2765 { 0x00, 0x2e, 0x2e },
   2766 { 0x00, 0x2f, 0x2f },
   2767 { 0x00, 0x30, 0x30 },
   2768 { 0x00, 0x31, 0x31 },
   2769 { 0x00, 0x32, 0x32 },
   2770 { 0x00, 0x33, 0x33 },
   2771 { 0x00, 0x34, 0x34 },
   2772 { 0x00, 0x35, 0x35 },
   2773 { 0x00, 0x36, 0x36 },
   2774 { 0x00, 0x37, 0x37 },
   2775 { 0x00, 0x38, 0x38 },
   2776 { 0x00, 0x39, 0x39 },
   2777 { 0x00, 0x3a, 0x3a },
   2778 { 0x00, 0x3b, 0x3b },
   2779 { 0x00, 0x3c, 0x3c },
   2780 { 0x00, 0x3d, 0x3d },
   2781 { 0x00, 0x3e, 0x3e },
   2782 { 0x00, 0x3f, 0x3f },
   2783 { 0x00, 0x40, 0x40 },
   2784 { 0x01, 0x61, 0x41 },
   2785 { 0x01, 0x62, 0x42 },
   2786 { 0x01, 0x63, 0x43 },
   2787 { 0x01, 0x64, 0x44 },
   2788 { 0x01, 0x65, 0x45 },
   2789 { 0x01, 0x66, 0x46 },
   2790 { 0x01, 0x67, 0x47 },
   2791 { 0x01, 0x68, 0x48 },
   2792 { 0x01, 0x69, 0x49 },
   2793 { 0x01, 0x6a, 0x4a },
   2794 { 0x01, 0x6b, 0x4b },
   2795 { 0x01, 0x6c, 0x4c },
   2796 { 0x01, 0x6d, 0x4d },
   2797 { 0x01, 0x6e, 0x4e },
   2798 { 0x01, 0x6f, 0x4f },
   2799 { 0x01, 0x70, 0x50 },
   2800 { 0x01, 0x71, 0x51 },
   2801 { 0x01, 0x72, 0x52 },
   2802 { 0x01, 0x73, 0x53 },
   2803 { 0x01, 0x74, 0x54 },
   2804 { 0x01, 0x75, 0x55 },
   2805 { 0x01, 0x76, 0x56 },
   2806 { 0x01, 0x77, 0x57 },
   2807 { 0x01, 0x78, 0x58 },
   2808 { 0x01, 0x79, 0x59 },
   2809 { 0x01, 0x7a, 0x5a },
   2810 { 0x00, 0x5b, 0x5b },
   2811 { 0x00, 0x5c, 0x5c },
   2812 { 0x00, 0x5d, 0x5d },
   2813 { 0x00, 0x5e, 0x5e },
   2814 { 0x00, 0x5f, 0x5f },
   2815 { 0x00, 0x60, 0x60 },
   2816 { 0x00, 0x61, 0x41 },
   2817 { 0x00, 0x62, 0x42 },
   2818 { 0x00, 0x63, 0x43 },
   2819 { 0x00, 0x64, 0x44 },
   2820 { 0x00, 0x65, 0x45 },
   2821 { 0x00, 0x66, 0x46 },
   2822 { 0x00, 0x67, 0x47 },
   2823 { 0x00, 0x68, 0x48 },
   2824 { 0x00, 0x69, 0x49 },
   2825 { 0x00, 0x6a, 0x4a },
   2826 { 0x00, 0x6b, 0x4b },
   2827 { 0x00, 0x6c, 0x4c },
   2828 { 0x00, 0x6d, 0x4d },
   2829 { 0x00, 0x6e, 0x4e },
   2830 { 0x00, 0x6f, 0x4f },
   2831 { 0x00, 0x70, 0x50 },
   2832 { 0x00, 0x71, 0x51 },
   2833 { 0x00, 0x72, 0x52 },
   2834 { 0x00, 0x73, 0x53 },
   2835 { 0x00, 0x74, 0x54 },
   2836 { 0x00, 0x75, 0x55 },
   2837 { 0x00, 0x76, 0x56 },
   2838 { 0x00, 0x77, 0x57 },
   2839 { 0x00, 0x78, 0x58 },
   2840 { 0x00, 0x79, 0x59 },
   2841 { 0x00, 0x7a, 0x5a },
   2842 { 0x00, 0x7b, 0x7b },
   2843 { 0x00, 0x7c, 0x7c },
   2844 { 0x00, 0x7d, 0x7d },
   2845 { 0x00, 0x7e, 0x7e },
   2846 { 0x00, 0x7f, 0x7f },
   2847 { 0x00, 0x80, 0x80 },
   2848 { 0x00, 0x81, 0x81 },
   2849 { 0x00, 0x82, 0x82 },
   2850 { 0x00, 0x83, 0x83 },
   2851 { 0x00, 0x84, 0x84 },
   2852 { 0x00, 0x85, 0x85 },
   2853 { 0x00, 0x86, 0x86 },
   2854 { 0x00, 0x87, 0x87 },
   2855 { 0x00, 0x88, 0x88 },
   2856 { 0x00, 0x89, 0x89 },
   2857 { 0x00, 0x8a, 0x8a },
   2858 { 0x00, 0x8b, 0x8b },
   2859 { 0x00, 0x8c, 0x8c },
   2860 { 0x00, 0x8d, 0x8d },
   2861 { 0x00, 0x8e, 0x8e },
   2862 { 0x00, 0x8f, 0x8f },
   2863 { 0x00, 0x90, 0x90 },
   2864 { 0x00, 0x91, 0x91 },
   2865 { 0x00, 0x92, 0x92 },
   2866 { 0x00, 0x93, 0x93 },
   2867 { 0x00, 0x94, 0x94 },
   2868 { 0x00, 0x95, 0x95 },
   2869 { 0x00, 0x96, 0x96 },
   2870 { 0x00, 0x97, 0x97 },
   2871 { 0x00, 0x98, 0x98 },
   2872 { 0x00, 0x99, 0x99 },
   2873 { 0x00, 0x9a, 0x9a },
   2874 { 0x00, 0x9b, 0x9b },
   2875 { 0x00, 0x9c, 0x9c },
   2876 { 0x00, 0x9d, 0x9d },
   2877 { 0x00, 0x9e, 0x9e },
   2878 { 0x00, 0x9f, 0x9f },
   2879 { 0x00, 0xa0, 0xa0 },
   2880 { 0x00, 0xa1, 0xa1 },
   2881 { 0x00, 0xa2, 0xa2 },
   2882 { 0x00, 0xa3, 0xb3 },
   2883 { 0x00, 0xa4, 0xa4 },
   2884 { 0x00, 0xa5, 0xa5 },
   2885 { 0x00, 0xa6, 0xa6 },
   2886 { 0x00, 0xa7, 0xa7 },
   2887 { 0x00, 0xa8, 0xa8 },
   2888 { 0x00, 0xa9, 0xa9 },
   2889 { 0x00, 0xaa, 0xaa },
   2890 { 0x00, 0xab, 0xab },
   2891 { 0x00, 0xac, 0xac },
   2892 { 0x00, 0xad, 0xad },
   2893 { 0x00, 0xae, 0xae },
   2894 { 0x00, 0xaf, 0xaf },
   2895 { 0x00, 0xb0, 0xb0 },
   2896 { 0x00, 0xb1, 0xb1 },
   2897 { 0x00, 0xb2, 0xb2 },
   2898 { 0x01, 0xa3, 0xb3 },
   2899 { 0x00, 0xb4, 0xb4 },
   2900 { 0x00, 0xb5, 0xb5 },
   2901 { 0x00, 0xb6, 0xb6 },
   2902 { 0x00, 0xb7, 0xb7 },
   2903 { 0x00, 0xb8, 0xb8 },
   2904 { 0x00, 0xb9, 0xb9 },
   2905 { 0x00, 0xba, 0xba },
   2906 { 0x00, 0xbb, 0xbb },
   2907 { 0x00, 0xbc, 0xbc },
   2908 { 0x00, 0xbd, 0xbd },
   2909 { 0x00, 0xbe, 0xbe },
   2910 { 0x00, 0xbf, 0xbf },
   2911 { 0x00, 0xc0, 0xe0 },
   2912 { 0x00, 0xc1, 0xe1 },
   2913 { 0x00, 0xc2, 0xe2 },
   2914 { 0x00, 0xc3, 0xe3 },
   2915 { 0x00, 0xc4, 0xe4 },
   2916 { 0x00, 0xc5, 0xe5 },
   2917 { 0x00, 0xc6, 0xe6 },
   2918 { 0x00, 0xc7, 0xe7 },
   2919 { 0x00, 0xc8, 0xe8 },
   2920 { 0x00, 0xc9, 0xe9 },
   2921 { 0x00, 0xca, 0xea },
   2922 { 0x00, 0xcb, 0xeb },
   2923 { 0x00, 0xcc, 0xec },
   2924 { 0x00, 0xcd, 0xed },
   2925 { 0x00, 0xce, 0xee },
   2926 { 0x00, 0xcf, 0xef },
   2927 { 0x00, 0xd0, 0xf0 },
   2928 { 0x00, 0xd1, 0xf1 },
   2929 { 0x00, 0xd2, 0xf2 },
   2930 { 0x00, 0xd3, 0xf3 },
   2931 { 0x00, 0xd4, 0xf4 },
   2932 { 0x00, 0xd5, 0xf5 },
   2933 { 0x00, 0xd6, 0xf6 },
   2934 { 0x00, 0xd7, 0xf7 },
   2935 { 0x00, 0xd8, 0xf8 },
   2936 { 0x00, 0xd9, 0xf9 },
   2937 { 0x00, 0xda, 0xfa },
   2938 { 0x00, 0xdb, 0xfb },
   2939 { 0x00, 0xdc, 0xfc },
   2940 { 0x00, 0xdd, 0xfd },
   2941 { 0x00, 0xde, 0xfe },
   2942 { 0x00, 0xdf, 0xff },
   2943 { 0x01, 0xc0, 0xe0 },
   2944 { 0x01, 0xc1, 0xe1 },
   2945 { 0x01, 0xc2, 0xe2 },
   2946 { 0x01, 0xc3, 0xe3 },
   2947 { 0x01, 0xc4, 0xe4 },
   2948 { 0x01, 0xc5, 0xe5 },
   2949 { 0x01, 0xc6, 0xe6 },
   2950 { 0x01, 0xc7, 0xe7 },
   2951 { 0x01, 0xc8, 0xe8 },
   2952 { 0x01, 0xc9, 0xe9 },
   2953 { 0x01, 0xca, 0xea },
   2954 { 0x01, 0xcb, 0xeb },
   2955 { 0x01, 0xcc, 0xec },
   2956 { 0x01, 0xcd, 0xed },
   2957 { 0x01, 0xce, 0xee },
   2958 { 0x01, 0xcf, 0xef },
   2959 { 0x01, 0xd0, 0xf0 },
   2960 { 0x01, 0xd1, 0xf1 },
   2961 { 0x01, 0xd2, 0xf2 },
   2962 { 0x01, 0xd3, 0xf3 },
   2963 { 0x01, 0xd4, 0xf4 },
   2964 { 0x01, 0xd5, 0xf5 },
   2965 { 0x01, 0xd6, 0xf6 },
   2966 { 0x01, 0xd7, 0xf7 },
   2967 { 0x01, 0xd8, 0xf8 },
   2968 { 0x01, 0xd9, 0xf9 },
   2969 { 0x01, 0xda, 0xfa },
   2970 { 0x01, 0xdb, 0xfb },
   2971 { 0x01, 0xdc, 0xfc },
   2972 { 0x01, 0xdd, 0xfd },
   2973 { 0x01, 0xde, 0xfe },
   2974 { 0x01, 0xdf, 0xff },
   2975 };
   2976 
   2977 struct cs_info cp1251_tbl[] = {
   2978 { 0x00, 0x00, 0x00 },
   2979 { 0x00, 0x01, 0x01 },
   2980 { 0x00, 0x02, 0x02 },
   2981 { 0x00, 0x03, 0x03 },
   2982 { 0x00, 0x04, 0x04 },
   2983 { 0x00, 0x05, 0x05 },
   2984 { 0x00, 0x06, 0x06 },
   2985 { 0x00, 0x07, 0x07 },
   2986 { 0x00, 0x08, 0x08 },
   2987 { 0x00, 0x09, 0x09 },
   2988 { 0x00, 0x0a, 0x0a },
   2989 { 0x00, 0x0b, 0x0b },
   2990 { 0x00, 0x0c, 0x0c },
   2991 { 0x00, 0x0d, 0x0d },
   2992 { 0x00, 0x0e, 0x0e },
   2993 { 0x00, 0x0f, 0x0f },
   2994 { 0x00, 0x10, 0x10 },
   2995 { 0x00, 0x11, 0x11 },
   2996 { 0x00, 0x12, 0x12 },
   2997 { 0x00, 0x13, 0x13 },
   2998 { 0x00, 0x14, 0x14 },
   2999 { 0x00, 0x15, 0x15 },
   3000 { 0x00, 0x16, 0x16 },
   3001 { 0x00, 0x17, 0x17 },
   3002 { 0x00, 0x18, 0x18 },
   3003 { 0x00, 0x19, 0x19 },
   3004 { 0x00, 0x1a, 0x1a },
   3005 { 0x00, 0x1b, 0x1b },
   3006 { 0x00, 0x1c, 0x1c },
   3007 { 0x00, 0x1d, 0x1d },
   3008 { 0x00, 0x1e, 0x1e },
   3009 { 0x00, 0x1f, 0x1f },
   3010 { 0x00, 0x20, 0x20 },
   3011 { 0x00, 0x21, 0x21 },
   3012 { 0x00, 0x22, 0x22 },
   3013 { 0x00, 0x23, 0x23 },
   3014 { 0x00, 0x24, 0x24 },
   3015 { 0x00, 0x25, 0x25 },
   3016 { 0x00, 0x26, 0x26 },
   3017 { 0x00, 0x27, 0x27 },
   3018 { 0x00, 0x28, 0x28 },
   3019 { 0x00, 0x29, 0x29 },
   3020 { 0x00, 0x2a, 0x2a },
   3021 { 0x00, 0x2b, 0x2b },
   3022 { 0x00, 0x2c, 0x2c },
   3023 { 0x00, 0x2d, 0x2d },
   3024 { 0x00, 0x2e, 0x2e },
   3025 { 0x00, 0x2f, 0x2f },
   3026 { 0x00, 0x30, 0x30 },
   3027 { 0x00, 0x31, 0x31 },
   3028 { 0x00, 0x32, 0x32 },
   3029 { 0x00, 0x33, 0x33 },
   3030 { 0x00, 0x34, 0x34 },
   3031 { 0x00, 0x35, 0x35 },
   3032 { 0x00, 0x36, 0x36 },
   3033 { 0x00, 0x37, 0x37 },
   3034 { 0x00, 0x38, 0x38 },
   3035 { 0x00, 0x39, 0x39 },
   3036 { 0x00, 0x3a, 0x3a },
   3037 { 0x00, 0x3b, 0x3b },
   3038 { 0x00, 0x3c, 0x3c },
   3039 { 0x00, 0x3d, 0x3d },
   3040 { 0x00, 0x3e, 0x3e },
   3041 { 0x00, 0x3f, 0x3f },
   3042 { 0x00, 0x40, 0x40 },
   3043 { 0x01, 0x61, 0x41 },
   3044 { 0x01, 0x62, 0x42 },
   3045 { 0x01, 0x63, 0x43 },
   3046 { 0x01, 0x64, 0x44 },
   3047 { 0x01, 0x65, 0x45 },
   3048 { 0x01, 0x66, 0x46 },
   3049 { 0x01, 0x67, 0x47 },
   3050 { 0x01, 0x68, 0x48 },
   3051 { 0x01, 0x69, 0x49 },
   3052 { 0x01, 0x6a, 0x4a },
   3053 { 0x01, 0x6b, 0x4b },
   3054 { 0x01, 0x6c, 0x4c },
   3055 { 0x01, 0x6d, 0x4d },
   3056 { 0x01, 0x6e, 0x4e },
   3057 { 0x01, 0x6f, 0x4f },
   3058 { 0x01, 0x70, 0x50 },
   3059 { 0x01, 0x71, 0x51 },
   3060 { 0x01, 0x72, 0x52 },
   3061 { 0x01, 0x73, 0x53 },
   3062 { 0x01, 0x74, 0x54 },
   3063 { 0x01, 0x75, 0x55 },
   3064 { 0x01, 0x76, 0x56 },
   3065 { 0x01, 0x77, 0x57 },
   3066 { 0x01, 0x78, 0x58 },
   3067 { 0x01, 0x79, 0x59 },
   3068 { 0x01, 0x7a, 0x5a },
   3069 { 0x00, 0x5b, 0x5b },
   3070 { 0x00, 0x5c, 0x5c },
   3071 { 0x00, 0x5d, 0x5d },
   3072 { 0x00, 0x5e, 0x5e },
   3073 { 0x00, 0x5f, 0x5f },
   3074 { 0x00, 0x60, 0x60 },
   3075 { 0x00, 0x61, 0x41 },
   3076 { 0x00, 0x62, 0x42 },
   3077 { 0x00, 0x63, 0x43 },
   3078 { 0x00, 0x64, 0x44 },
   3079 { 0x00, 0x65, 0x45 },
   3080 { 0x00, 0x66, 0x46 },
   3081 { 0x00, 0x67, 0x47 },
   3082 { 0x00, 0x68, 0x48 },
   3083 { 0x00, 0x69, 0x49 },
   3084 { 0x00, 0x6a, 0x4a },
   3085 { 0x00, 0x6b, 0x4b },
   3086 { 0x00, 0x6c, 0x4c },
   3087 { 0x00, 0x6d, 0x4d },
   3088 { 0x00, 0x6e, 0x4e },
   3089 { 0x00, 0x6f, 0x4f },
   3090 { 0x00, 0x70, 0x50 },
   3091 { 0x00, 0x71, 0x51 },
   3092 { 0x00, 0x72, 0x52 },
   3093 { 0x00, 0x73, 0x53 },
   3094 { 0x00, 0x74, 0x54 },
   3095 { 0x00, 0x75, 0x55 },
   3096 { 0x00, 0x76, 0x56 },
   3097 { 0x00, 0x77, 0x57 },
   3098 { 0x00, 0x78, 0x58 },
   3099 { 0x00, 0x79, 0x59 },
   3100 { 0x00, 0x7a, 0x5a },
   3101 { 0x00, 0x7b, 0x7b },
   3102 { 0x00, 0x7c, 0x7c },
   3103 { 0x00, 0x7d, 0x7d },
   3104 { 0x00, 0x7e, 0x7e },
   3105 { 0x00, 0x7f, 0x7f },
   3106 { 0x00, 0x80, 0x80 },
   3107 { 0x00, 0x81, 0x81 },
   3108 { 0x00, 0x82, 0x82 },
   3109 { 0x00, 0x83, 0x83 },
   3110 { 0x00, 0x84, 0x84 },
   3111 { 0x00, 0x85, 0x85 },
   3112 { 0x00, 0x86, 0x86 },
   3113 { 0x00, 0x87, 0x87 },
   3114 { 0x00, 0x88, 0x88 },
   3115 { 0x00, 0x89, 0x89 },
   3116 { 0x00, 0x8a, 0x8a },
   3117 { 0x00, 0x8b, 0x8b },
   3118 { 0x00, 0x8c, 0x8c },
   3119 { 0x00, 0x8d, 0x8d },
   3120 { 0x00, 0x8e, 0x8e },
   3121 { 0x00, 0x8f, 0x8f },
   3122 { 0x00, 0x90, 0x90 },
   3123 { 0x00, 0x91, 0x91 },
   3124 { 0x00, 0x92, 0x92 },
   3125 { 0x00, 0x93, 0x93 },
   3126 { 0x00, 0x94, 0x94 },
   3127 { 0x00, 0x95, 0x95 },
   3128 { 0x00, 0x96, 0x96 },
   3129 { 0x00, 0x97, 0x97 },
   3130 { 0x00, 0x98, 0x98 },
   3131 { 0x00, 0x99, 0x99 },
   3132 { 0x00, 0x9a, 0x9a },
   3133 { 0x00, 0x9b, 0x9b },
   3134 { 0x00, 0x9c, 0x9c },
   3135 { 0x00, 0x9d, 0x9d },
   3136 { 0x00, 0x9e, 0x9e },
   3137 { 0x00, 0x9f, 0x9f },
   3138 { 0x00, 0xa0, 0xa0 },
   3139 { 0x00, 0xa1, 0xa1 },
   3140 { 0x00, 0xa2, 0xa2 },
   3141 { 0x00, 0xa3, 0xa3 },
   3142 { 0x00, 0xa4, 0xa4 },
   3143 { 0x00, 0xa5, 0xa5 },
   3144 { 0x00, 0xa6, 0xa6 },
   3145 { 0x00, 0xa7, 0xa7 },
   3146 { 0x00, 0xa8, 0xa8 },
   3147 { 0x00, 0xa9, 0xa9 },
   3148 { 0x00, 0xaa, 0xaa },
   3149 { 0x00, 0xab, 0xab },
   3150 { 0x00, 0xac, 0xac },
   3151 { 0x00, 0xad, 0xad },
   3152 { 0x00, 0xae, 0xae },
   3153 { 0x00, 0xaf, 0xaf },
   3154 { 0x00, 0xb0, 0xb0 },
   3155 { 0x00, 0xb1, 0xb1 },
   3156 { 0x00, 0xb2, 0xb2 },
   3157 { 0x00, 0xb3, 0xb3 },
   3158 { 0x00, 0xb4, 0xb4 },
   3159 { 0x00, 0xb5, 0xb5 },
   3160 { 0x00, 0xb6, 0xb6 },
   3161 { 0x00, 0xb7, 0xb7 },
   3162 { 0x00, 0xb8, 0xb8 },
   3163 { 0x00, 0xb9, 0xb9 },
   3164 { 0x00, 0xba, 0xba },
   3165 { 0x00, 0xbb, 0xbb },
   3166 { 0x00, 0xbc, 0xbc },
   3167 { 0x00, 0xbd, 0xbd },
   3168 { 0x00, 0xbe, 0xbe },
   3169 { 0x00, 0xbf, 0xbf },
   3170 { 0x00, 0xc0, 0xc0 },
   3171 { 0x00, 0xc1, 0xc1 },
   3172 { 0x00, 0xc2, 0xc2 },
   3173 { 0x00, 0xc3, 0xc3 },
   3174 { 0x00, 0xc4, 0xc4 },
   3175 { 0x00, 0xc5, 0xc5 },
   3176 { 0x00, 0xc6, 0xc6 },
   3177 { 0x00, 0xc7, 0xc7 },
   3178 { 0x00, 0xc8, 0xc8 },
   3179 { 0x00, 0xc9, 0xc9 },
   3180 { 0x00, 0xca, 0xca },
   3181 { 0x00, 0xcb, 0xcb },
   3182 { 0x00, 0xcc, 0xcc },
   3183 { 0x00, 0xcd, 0xcd },
   3184 { 0x00, 0xce, 0xce },
   3185 { 0x00, 0xcf, 0xcf },
   3186 { 0x00, 0xd0, 0xd0 },
   3187 { 0x00, 0xd1, 0xd1 },
   3188 { 0x00, 0xd2, 0xd2 },
   3189 { 0x00, 0xd3, 0xd3 },
   3190 { 0x00, 0xd4, 0xd4 },
   3191 { 0x00, 0xd5, 0xd5 },
   3192 { 0x00, 0xd6, 0xd6 },
   3193 { 0x00, 0xd7, 0xd7 },
   3194 { 0x00, 0xd8, 0xd8 },
   3195 { 0x00, 0xd9, 0xd9 },
   3196 { 0x00, 0xda, 0xda },
   3197 { 0x00, 0xdb, 0xdb },
   3198 { 0x00, 0xdc, 0xdc },
   3199 { 0x00, 0xdd, 0xdd },
   3200 { 0x00, 0xde, 0xde },
   3201 { 0x00, 0xdf, 0xdf },
   3202 { 0x00, 0xe0, 0xe0 },
   3203 { 0x00, 0xe1, 0xe1 },
   3204 { 0x00, 0xe2, 0xe2 },
   3205 { 0x00, 0xe3, 0xe3 },
   3206 { 0x00, 0xe4, 0xe4 },
   3207 { 0x00, 0xe5, 0xe5 },
   3208 { 0x00, 0xe6, 0xe6 },
   3209 { 0x00, 0xe7, 0xe7 },
   3210 { 0x00, 0xe8, 0xe8 },
   3211 { 0x00, 0xe9, 0xe9 },
   3212 { 0x00, 0xea, 0xea },
   3213 { 0x00, 0xeb, 0xeb },
   3214 { 0x00, 0xec, 0xec },
   3215 { 0x00, 0xed, 0xed },
   3216 { 0x00, 0xee, 0xee },
   3217 { 0x00, 0xef, 0xef },
   3218 { 0x00, 0xf0, 0xf0 },
   3219 { 0x00, 0xf1, 0xf1 },
   3220 { 0x00, 0xf2, 0xf2 },
   3221 { 0x00, 0xf3, 0xf3 },
   3222 { 0x00, 0xf4, 0xf4 },
   3223 { 0x00, 0xf5, 0xf5 },
   3224 { 0x00, 0xf6, 0xf6 },
   3225 { 0x00, 0xf7, 0xf7 },
   3226 { 0x00, 0xf8, 0xf8 },
   3227 { 0x00, 0xf9, 0xf9 },
   3228 { 0x00, 0xfa, 0xfa },
   3229 { 0x00, 0xfb, 0xfb },
   3230 { 0x00, 0xfc, 0xfc },
   3231 { 0x00, 0xfd, 0xfd },
   3232 { 0x00, 0xfe, 0xfe },
   3233 { 0x00, 0xff, 0xff },
   3234 };
   3235 
   3236 struct cs_info iso14_tbl[] = {
   3237 { 0x00, 0x00, 0x00 },
   3238 { 0x00, 0x01, 0x01 },
   3239 { 0x00, 0x02, 0x02 },
   3240 { 0x00, 0x03, 0x03 },
   3241 { 0x00, 0x04, 0x04 },
   3242 { 0x00, 0x05, 0x05 },
   3243 { 0x00, 0x06, 0x06 },
   3244 { 0x00, 0x07, 0x07 },
   3245 { 0x00, 0x08, 0x08 },
   3246 { 0x00, 0x09, 0x09 },
   3247 { 0x00, 0x0a, 0x0a },
   3248 { 0x00, 0x0b, 0x0b },
   3249 { 0x00, 0x0c, 0x0c },
   3250 { 0x00, 0x0d, 0x0d },
   3251 { 0x00, 0x0e, 0x0e },
   3252 { 0x00, 0x0f, 0x0f },
   3253 { 0x00, 0x10, 0x10 },
   3254 { 0x00, 0x11, 0x11 },
   3255 { 0x00, 0x12, 0x12 },
   3256 { 0x00, 0x13, 0x13 },
   3257 { 0x00, 0x14, 0x14 },
   3258 { 0x00, 0x15, 0x15 },
   3259 { 0x00, 0x16, 0x16 },
   3260 { 0x00, 0x17, 0x17 },
   3261 { 0x00, 0x18, 0x18 },
   3262 { 0x00, 0x19, 0x19 },
   3263 { 0x00, 0x1a, 0x1a },
   3264 { 0x00, 0x1b, 0x1b },
   3265 { 0x00, 0x1c, 0x1c },
   3266 { 0x00, 0x1d, 0x1d },
   3267 { 0x00, 0x1e, 0x1e },
   3268 { 0x00, 0x1f, 0x1f },
   3269 { 0x00, 0x20, 0x20 },
   3270 { 0x00, 0x21, 0x21 },
   3271 { 0x00, 0x22, 0x22 },
   3272 { 0x00, 0x23, 0x23 },
   3273 { 0x00, 0x24, 0x24 },
   3274 { 0x00, 0x25, 0x25 },
   3275 { 0x00, 0x26, 0x26 },
   3276 { 0x00, 0x27, 0x27 },
   3277 { 0x00, 0x28, 0x28 },
   3278 { 0x00, 0x29, 0x29 },
   3279 { 0x00, 0x2a, 0x2a },
   3280 { 0x00, 0x2b, 0x2b },
   3281 { 0x00, 0x2c, 0x2c },
   3282 { 0x00, 0x2d, 0x2d },
   3283 { 0x00, 0x2e, 0x2e },
   3284 { 0x00, 0x2f, 0x2f },
   3285 { 0x00, 0x30, 0x30 },
   3286 { 0x00, 0x31, 0x31 },
   3287 { 0x00, 0x32, 0x32 },
   3288 { 0x00, 0x33, 0x33 },
   3289 { 0x00, 0x34, 0x34 },
   3290 { 0x00, 0x35, 0x35 },
   3291 { 0x00, 0x36, 0x36 },
   3292 { 0x00, 0x37, 0x37 },
   3293 { 0x00, 0x38, 0x38 },
   3294 { 0x00, 0x39, 0x39 },
   3295 { 0x00, 0x3a, 0x3a },
   3296 { 0x00, 0x3b, 0x3b },
   3297 { 0x00, 0x3c, 0x3c },
   3298 { 0x00, 0x3d, 0x3d },
   3299 { 0x00, 0x3e, 0x3e },
   3300 { 0x00, 0x3f, 0x3f },
   3301 { 0x00, 0x40, 0x40 },
   3302 { 0x01, 0x61, 0x41 },
   3303 { 0x01, 0x62, 0x42 },
   3304 { 0x01, 0x63, 0x43 },
   3305 { 0x01, 0x64, 0x44 },
   3306 { 0x01, 0x65, 0x45 },
   3307 { 0x01, 0x66, 0x46 },
   3308 { 0x01, 0x67, 0x47 },
   3309 { 0x01, 0x68, 0x48 },
   3310 { 0x01, 0x69, 0x49 },
   3311 { 0x01, 0x6a, 0x4a },
   3312 { 0x01, 0x6b, 0x4b },
   3313 { 0x01, 0x6c, 0x4c },
   3314 { 0x01, 0x6d, 0x4d },
   3315 { 0x01, 0x6e, 0x4e },
   3316 { 0x01, 0x6f, 0x4f },
   3317 { 0x01, 0x70, 0x50 },
   3318 { 0x01, 0x71, 0x51 },
   3319 { 0x01, 0x72, 0x52 },
   3320 { 0x01, 0x73, 0x53 },
   3321 { 0x01, 0x74, 0x54 },
   3322 { 0x01, 0x75, 0x55 },
   3323 { 0x01, 0x76, 0x56 },
   3324 { 0x01, 0x77, 0x57 },
   3325 { 0x01, 0x78, 0x58 },
   3326 { 0x01, 0x79, 0x59 },
   3327 { 0x01, 0x7a, 0x5a },
   3328 { 0x00, 0x5b, 0x5b },
   3329 { 0x00, 0x5c, 0x5c },
   3330 { 0x00, 0x5d, 0x5d },
   3331 { 0x00, 0x5e, 0x5e },
   3332 { 0x00, 0x5f, 0x5f },
   3333 { 0x00, 0x60, 0x60 },
   3334 { 0x00, 0x61, 0x41 },
   3335 { 0x00, 0x62, 0x42 },
   3336 { 0x00, 0x63, 0x43 },
   3337 { 0x00, 0x64, 0x44 },
   3338 { 0x00, 0x65, 0x45 },
   3339 { 0x00, 0x66, 0x46 },
   3340 { 0x00, 0x67, 0x47 },
   3341 { 0x00, 0x68, 0x48 },
   3342 { 0x00, 0x69, 0x49 },
   3343 { 0x00, 0x6a, 0x4a },
   3344 { 0x00, 0x6b, 0x4b },
   3345 { 0x00, 0x6c, 0x4c },
   3346 { 0x00, 0x6d, 0x4d },
   3347 { 0x00, 0x6e, 0x4e },
   3348 { 0x00, 0x6f, 0x4f },
   3349 { 0x00, 0x70, 0x50 },
   3350 { 0x00, 0x71, 0x51 },
   3351 { 0x00, 0x72, 0x52 },
   3352 { 0x00, 0x73, 0x53 },
   3353 { 0x00, 0x74, 0x54 },
   3354 { 0x00, 0x75, 0x55 },
   3355 { 0x00, 0x76, 0x56 },
   3356 { 0x00, 0x77, 0x57 },
   3357 { 0x00, 0x78, 0x58 },
   3358 { 0x00, 0x79, 0x59 },
   3359 { 0x00, 0x7a, 0x5a },
   3360 { 0x00, 0x7b, 0x7b },
   3361 { 0x00, 0x7c, 0x7c },
   3362 { 0x00, 0x7d, 0x7d },
   3363 { 0x00, 0x7e, 0x7e },
   3364 { 0x00, 0x7f, 0x7f },
   3365 { 0x00, 0x80, 0x80 },
   3366 { 0x00, 0x81, 0x81 },
   3367 { 0x00, 0x82, 0x82 },
   3368 { 0x00, 0x83, 0x83 },
   3369 { 0x00, 0x84, 0x84 },
   3370 { 0x00, 0x85, 0x85 },
   3371 { 0x00, 0x86, 0x86 },
   3372 { 0x00, 0x87, 0x87 },
   3373 { 0x00, 0x88, 0x88 },
   3374 { 0x00, 0x89, 0x89 },
   3375 { 0x00, 0x8a, 0x8a },
   3376 { 0x00, 0x8b, 0x8b },
   3377 { 0x00, 0x8c, 0x8c },
   3378 { 0x00, 0x8d, 0x8d },
   3379 { 0x00, 0x8e, 0x8e },
   3380 { 0x00, 0x8f, 0x8f },
   3381 { 0x00, 0x90, 0x90 },
   3382 { 0x00, 0x91, 0x91 },
   3383 { 0x00, 0x92, 0x92 },
   3384 { 0x00, 0x93, 0x93 },
   3385 { 0x00, 0x94, 0x94 },
   3386 { 0x00, 0x95, 0x95 },
   3387 { 0x00, 0x96, 0x96 },
   3388 { 0x00, 0x97, 0x97 },
   3389 { 0x00, 0x98, 0x98 },
   3390 { 0x00, 0x99, 0x99 },
   3391 { 0x00, 0x9a, 0x9a },
   3392 { 0x00, 0x9b, 0x9b },
   3393 { 0x00, 0x9c, 0x9c },
   3394 { 0x00, 0x9d, 0x9d },
   3395 { 0x00, 0x9e, 0x9e },
   3396 { 0x00, 0x9f, 0x9f },
   3397 { 0x00, 0xa0, 0xa0 },
   3398 { 0x01, 0xa2, 0xa1 },
   3399 { 0x00, 0xa2, 0xa1 },
   3400 { 0x00, 0xa3, 0xa3 },
   3401 { 0x01, 0xa5, 0xa4 },
   3402 { 0x00, 0xa5, 0xa4 },
   3403 { 0x01, 0xa6, 0xab },
   3404 { 0x00, 0xa7, 0xa7 },
   3405 { 0x01, 0xb8, 0xa8 },
   3406 { 0x00, 0xa9, 0xa9 },
   3407 { 0x01, 0xba, 0xaa },
   3408 { 0x00, 0xab, 0xa6 },
   3409 { 0x01, 0xbc, 0xac },
   3410 { 0x00, 0xad, 0xad },
   3411 { 0x00, 0xae, 0xae },
   3412 { 0x01, 0xff, 0xaf },
   3413 { 0x01, 0xb1, 0xb0 },
   3414 { 0x00, 0xb1, 0xb0 },
   3415 { 0x01, 0xb3, 0xb2 },
   3416 { 0x00, 0xb3, 0xb2 },
   3417 { 0x01, 0xb5, 0xb4 },
   3418 { 0x00, 0xb5, 0xb4 },
   3419 { 0x00, 0xb6, 0xb6 },
   3420 { 0x01, 0xb9, 0xb7 },
   3421 { 0x00, 0xb8, 0xa8 },
   3422 { 0x00, 0xb9, 0xb6 },
   3423 { 0x00, 0xba, 0xaa },
   3424 { 0x01, 0xbf, 0xbb },
   3425 { 0x00, 0xbc, 0xac },
   3426 { 0x01, 0xbe, 0xbd },
   3427 { 0x00, 0xbe, 0xbd },
   3428 { 0x00, 0xbf, 0xbb },
   3429 { 0x01, 0xe0, 0xc0 },
   3430 { 0x01, 0xe1, 0xc1 },
   3431 { 0x01, 0xe2, 0xc2 },
   3432 { 0x01, 0xe3, 0xc3 },
   3433 { 0x01, 0xe4, 0xc4 },
   3434 { 0x01, 0xe5, 0xc5 },
   3435 { 0x01, 0xe6, 0xc6 },
   3436 { 0x01, 0xe7, 0xc7 },
   3437 { 0x01, 0xe8, 0xc8 },
   3438 { 0x01, 0xe9, 0xc9 },
   3439 { 0x01, 0xea, 0xca },
   3440 { 0x01, 0xeb, 0xcb },
   3441 { 0x01, 0xec, 0xcc },
   3442 { 0x01, 0xed, 0xcd },
   3443 { 0x01, 0xee, 0xce },
   3444 { 0x01, 0xef, 0xcf },
   3445 { 0x01, 0xf0, 0xd0 },
   3446 { 0x01, 0xf1, 0xd1 },
   3447 { 0x01, 0xf2, 0xd2 },
   3448 { 0x01, 0xf3, 0xd3 },
   3449 { 0x01, 0xf4, 0xd4 },
   3450 { 0x01, 0xf5, 0xd5 },
   3451 { 0x01, 0xf6, 0xd6 },
   3452 { 0x01, 0xf7, 0xd7 },
   3453 { 0x01, 0xf8, 0xd8 },
   3454 { 0x01, 0xf9, 0xd9 },
   3455 { 0x01, 0xfa, 0xda },
   3456 { 0x01, 0xfb, 0xdb },
   3457 { 0x01, 0xfc, 0xdc },
   3458 { 0x01, 0xfd, 0xdd },
   3459 { 0x01, 0xfe, 0xde },
   3460 { 0x00, 0xdf, 0xdf },
   3461 { 0x00, 0xe0, 0xc0 },
   3462 { 0x00, 0xe1, 0xc1 },
   3463 { 0x00, 0xe2, 0xc2 },
   3464 { 0x00, 0xe3, 0xc3 },
   3465 { 0x00, 0xe4, 0xc4 },
   3466 { 0x00, 0xe5, 0xc5 },
   3467 { 0x00, 0xe6, 0xc6 },
   3468 { 0x00, 0xe7, 0xc7 },
   3469 { 0x00, 0xe8, 0xc8 },
   3470 { 0x00, 0xe9, 0xc9 },
   3471 { 0x00, 0xea, 0xca },
   3472 { 0x00, 0xeb, 0xcb },
   3473 { 0x00, 0xec, 0xcc },
   3474 { 0x00, 0xed, 0xcd },
   3475 { 0x00, 0xee, 0xce },
   3476 { 0x00, 0xef, 0xcf },
   3477 { 0x00, 0xf0, 0xd0 },
   3478 { 0x00, 0xf1, 0xd1 },
   3479 { 0x00, 0xf2, 0xd2 },
   3480 { 0x00, 0xf3, 0xd3 },
   3481 { 0x00, 0xf4, 0xd4 },
   3482 { 0x00, 0xf5, 0xd5 },
   3483 { 0x00, 0xf6, 0xd6 },
   3484 { 0x00, 0xf7, 0xd7 },
   3485 { 0x00, 0xf8, 0xd8 },
   3486 { 0x00, 0xf9, 0xd9 },
   3487 { 0x00, 0xfa, 0xda },
   3488 { 0x00, 0xfb, 0xdb },
   3489 { 0x00, 0xfc, 0xdc },
   3490 { 0x00, 0xfd, 0xdd },
   3491 { 0x00, 0xfe, 0xde },
   3492 { 0x00, 0xff, 0xff },
   3493 };
   3494 
   3495 
   3496 struct enc_entry encds[] = {
   3497 {"ISO8859-1",iso1_tbl},
   3498 {"ISO8859-2",iso2_tbl},
   3499 {"ISO8859-3",iso3_tbl},
   3500 {"ISO8859-4",iso4_tbl},
   3501 {"ISO8859-5",iso5_tbl},
   3502 {"ISO8859-6",iso6_tbl},
   3503 {"ISO8859-7",iso7_tbl},
   3504 {"ISO8859-8",iso8_tbl},
   3505 {"ISO8859-9",iso9_tbl},
   3506 {"ISO8859-10",iso10_tbl},
   3507 {"KOI8-R",koi8r_tbl},
   3508 {"CP-1251",cp1251_tbl},
   3509 {"ISO8859-14", iso14_tbl},
   3510 };
   3511 
   3512 
   3513 struct cs_info * get_current_cs(const char * es) {
   3514   int i;
   3515   struct cs_info * ccs = encds[0].cs_table;
   3516   int n = sizeof(encds) / sizeof(encds[0]);
   3517   for (i = 0; i < n; i++) {
   3518     if (strcmp(es,encds[i].enc_name) == 0) {
   3519       ccs = encds[i].cs_table;
   3520     }
   3521   }
   3522   return ccs;
   3523 }
   3524 
   3525 
   3526 
   3527 struct lang_map lang2enc[] = {
   3528   {"ca","ISO8859-1"},
   3529   {"cs","ISO8859-2"},
   3530   {"da","ISO8859-1"},
   3531   {"de","ISO8859-1"},
   3532   {"el","ISO8859-7"},
   3533   {"en","ISO8859-1"},
   3534   {"es","ISO8859-1"},
   3535   {"fr","ISO8859-1"},
   3536   {"hr","ISO8859-2"},
   3537   {"hu","ISO8859-2"},
   3538   {"it","ISO8859-1"},
   3539   {"la","ISO8859-1"},
   3540   {"nl","ISO8859-1"},
   3541   {"pl","ISO8859-2"},
   3542   {"pt","ISO8859-1"},
   3543   {"sv","ISO8859-1"},
   3544   {"ru","KOI8-R"},
   3545 };
   3546 
   3547 
   3548 const char * get_default_enc(const char * lang) {
   3549   int i;
   3550   int n = sizeof(lang2enc) / sizeof(lang2enc[0]);
   3551   for (i = 0; i < n; i++) {
   3552     if (strcmp(lang,lang2enc[i].lang) == 0) {
   3553       return lang2enc[i].def_enc;
   3554     }
   3555   }
   3556   return NULL;
   3557 }
   3558 
   3559 
   3560 
   3561