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 11char * 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 */ 39char * 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 */ 52void 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 */ 61void 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 */ 73void 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 */ 85void 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 */ 94void 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 */ 104void 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 */ 114void 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 126struct 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 386struct 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 646struct 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 905struct 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 1164struct 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 1423struct 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 1682struct 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 1941struct 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 2200struct 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 2459struct 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 2718struct 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 2977struct 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 3236struct 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 3496struct 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 3513struct 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 3527struct 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 3548const 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