diff options
Diffstat (limited to 'ext/nkf')
-rw-r--r-- | ext/nkf/nkf-utf8/config.h | 52 | ||||
-rw-r--r-- | ext/nkf/nkf-utf8/nkf.c | 4059 | ||||
-rw-r--r-- | ext/nkf/nkf-utf8/utf8tbl.c | 5313 |
3 files changed, 9424 insertions, 0 deletions
diff --git a/ext/nkf/nkf-utf8/config.h b/ext/nkf/nkf-utf8/config.h new file mode 100644 index 0000000000..0f202baafd --- /dev/null +++ b/ext/nkf/nkf-utf8/config.h @@ -0,0 +1,52 @@ +#ifndef _CONFIG_H_ +#define _CONFIG_H_ + +/* UTF8 $BF~=PNO(B */ +#define UTF8_INPUT_ENABLE +#define UTF8_OUTPUT_ENABLE + +/* Shift_JIS $BHO0O30$NJ8;z$r!"(BCP932 $B$GF1CM$JJ8;z$KFI$_49$($k(B */ +#define SHIFTJIS_CP932 + +/* $B%*%W%7%g%s$GF~NO$r;XDj$7$?;~$K!"J8;z%3!<%I$r8GDj$9$k(B */ +#define INPUT_CODE_FIX + +/* --overwrite $B%*%W%7%g%s(B */ +/* by Satoru Takabayashi <ccsatoru@vega.aichi-u.ac.jp> */ +#define OVERWRITE + +/* --cap-input, --url-input $B%*%W%7%g%s(B */ +#define INPUT_OPTION + +/* --numchar-input $B%*%W%7%g%s(B */ +#define NUMCHAR_OPTION + +/* --debug, --no-output $B%*%W%7%g%s(B */ +#define CHECK_OPTION + +/* --exec-in, --exec-out $B%*%W%7%g%s(B + * pipe, fork, execvp $B$"$?$j$,L5$$$HF0$-$^$;$s!#(B + * MS-DOS, MinGW $B$J$I$G$O(B undef $B$K$7$F$/$@$5$$(B + * child process $B=*N;;~$N=hM}$,$$$$$+$2$s$J$N$G!"(B + * $B%G%U%)%k%H$GL58z$K$7$F$$$^$9!#(B + */ +/* #define EXEC_IO */ + +/* SunOS $B$N(B cc $B$r;H$&$H$-$O(B undef $B$K$7$F$/$@$5$$(B */ +#define ANSI_C_PROTOTYPE + +/* int $B$,(B 32bit $BL$K~$N4D6-$G(B NUMCHAR_OPTION $B$r;H$&$K$O!"(B + * $B%3%a%s%H$r30$7$F$/$@$5$$!#(B + */ +/* #define INT_IS_SHORT */ + +/******************************/ +/* $B%G%U%)%k%H$N=PNO%3!<%IA*Br(B */ +/* Select DEFAULT_CODE */ +#define DEFAULT_CODE_JIS +/* #define DEFAULT_CODE_SJIS */ +/* #define DEFAULT_CODE_EUC */ +/* #define DEFAULT_CODE_UTF8 */ +/******************************/ + +#endif /* _CONFIG_H_ */ diff --git a/ext/nkf/nkf-utf8/nkf.c b/ext/nkf/nkf-utf8/nkf.c new file mode 100644 index 0000000000..9a620f1640 --- /dev/null +++ b/ext/nkf/nkf-utf8/nkf.c @@ -0,0 +1,4059 @@ +/** Network Kanji Filter. (PDS Version) +************************************************************************ +** Copyright (C) 1987, Fujitsu LTD. (Itaru ICHIKAWA) +** $BO"Mm@h!'(B $B!J3t!KIY;NDL8&5f=j!!%=%U%H#38&!!;T@n!!;j(B +** $B!J(BE-Mail Address: ichikawa@flab.fujitsu.co.jp$B!K(B +** Copyright (C) 1996,1998 +** Copyright (C) 2002 +** $BO"Mm@h!'(B $BN05eBg3X>pJs9)3X2J(B $B2OLn(B $B??<#(B mime/X0208 support +** $B!J(BE-Mail Address: kono@ie.u-ryukyu.ac.jp$B!K(B +** $BO"Mm@h!'(B COW for DOS & Win16 & Win32 & OS/2 +** $B!J(BE-Mail Address: GHG00637@niftyserve.or.p$B!K(B +** +** $B$3$N%=!<%9$N$$$+$J$kJ#<L!$2~JQ!$=$@5$b5vBz$7$^$9!#$?$@$7!"(B +** $B$=$N:]$K$O!"C/$,9W8%$7$?$r<($9$3$NItJ,$r;D$9$3$H!#(B +** $B:FG[I[$d;(;o$NIUO?$J$I$NLd$$9g$o$;$bI,MW$"$j$^$;$s!#(B +** $B1DMxMxMQ$b>e5-$KH?$7$J$$HO0O$G5v2D$7$^$9!#(B +** $B%P%$%J%j$NG[I[$N:]$K$O(Bversion message$B$rJ]B8$9$k$3$H$r>r7o$H$7$^$9!#(B +** $B$3$N%W%m%0%i%`$K$D$$$F$OFC$K2?$NJ]>Z$b$7$J$$!"0-$7$+$i$:!#(B +** +** Everyone is permitted to do anything on this program +** including copying, modifying, improving, +** as long as you don't try to pretend that you wrote it. +** i.e., the above copyright notice has to appear in all copies. +** Binary distribution requires original version messages. +** You don't have to ask before copying, redistribution or publishing. +** THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE. +***********************************************************************/ + +/*********************************************************************** +** UTF-8 $B%5%]!<%H$K$D$$$F(B +** $B=>Mh$N(B nkf $B$HF~$l$+$($F$=$N$^$^;H$($k$h$&$K$J$C$F$$$^$9(B +** nkf -e $B$J$I$H$7$F5/F0$9$k$H!"<+F0H=JL$G(B UTF-8 $B$HH=Dj$5$l$l$P!"(B +** $B$=$N$^$^(B euc-jp $B$KJQ49$5$l$^$9(B +** +** $B$^$@%P%0$,$"$k2DG=@-$,9b$$$G$9!#(B +** ($BFC$K<+F0H=JL!"%3!<%I:.:_!"%(%i!<=hM}7O(B) +** +** $B2?$+LdBj$r8+$D$1$?$i!"(B +** E-Mail: furukawa@tcp-ip.or.jp +** $B$^$G8fO"Mm$r$*4j$$$7$^$9!#(B +***********************************************************************/ +#include "config.h" + +static char *CopyRight = + "Copyright (C) 1987, FUJITSU LTD. (I.Ichikawa),2000 S. Kono, COW, 2002-2004 Kono, Furukawa"; +static char *Version = + "2.0"; +static char *Patchlevel = + "4/0401/Shinji Kono"; + +/* +** +** +** +** USAGE: nkf [flags] [file] +** +** Flags: +** b Output is buffered (DEFAULT) +** u Output is unbuffered +** +** t no operation +** +** j Outout code is JIS 7 bit (DEFAULT SELECT) +** s Output code is MS Kanji (DEFAULT SELECT) +** e Output code is AT&T JIS (DEFAULT SELECT) +** w Output code is AT&T JIS (DEFAULT SELECT) +** l Output code is JIS 7bit and ISO8859-1 Latin-1 +** +** m MIME conversion for ISO-2022-JP +** I Convert non ISO-2022-JP charactor to GETA by Pekoe <pekoe@lair.net> +** i_ Output sequence to designate JIS-kanji (DEFAULT_J) +** o_ Output sequence to designate single-byte roman characters (DEFAULT_R) +** M MIME output conversion +** +** r {de/en}crypt ROT13/47 +** +** v display Version +** +** T Text mode output (for MS-DOS) +** +** x Do not convert X0201 kana into X0208 +** Z Convert X0208 alphabet to ASCII +** +** f60 fold option +** +** m MIME decode +** B try to fix broken JIS, missing Escape +** B[1-9] broken level +** +** O Output to 'nkf.out' file or last file name +** d Delete \r in line feed +** c Add \r in line feed +** -- other long option +** -- ignore following option (don't use with -O ) +** +**/ + +#if (defined(__TURBOC__) || defined(_MSC_VER) || defined(LSI_C) || defined(__MINGW32__)) && !defined(MSDOS) +#define MSDOS +#if (defined(__Win32__) || defined(_WIN32)) && !defined(__WIN32__) +#define __WIN32__ +#endif +#endif + +#ifdef PERL_XS +#undef OVERWRITE +#endif + +#ifndef PERL_XS +#include <stdio.h> +#endif + +#if defined(MSDOS) || defined(__OS2__) +#include <fcntl.h> +#include <io.h> +#endif + +#ifdef MSDOS +#ifdef LSI_C +#define setbinmode(fp) fsetbin(fp) +#else /* Microsoft C, Turbo C */ +#define setbinmode(fp) setmode(fileno(fp), O_BINARY) +#endif +#else /* UNIX,OS/2 */ +#define setbinmode(fp) +#endif + +#ifdef _IOFBF /* SysV and MSDOS, Windows */ +#define setvbuffer(fp, buf, size) setvbuf(fp, buf, _IOFBF, size) +#else /* BSD */ +#define setvbuffer(fp, buf, size) setbuffer(fp, buf, size) +#endif + +/*Borland C++ 4.5 EasyWin*/ +#if defined(__TURBOC__) && defined(_Windows) && !defined(__WIN32__) /*Easy Win */ +#define EASYWIN +#ifndef __WIN16__ +#define __WIN16__ +#endif +#include <windows.h> +#endif + +#ifdef OVERWRITE +/* added by satoru@isoternet.org */ +#include <stdlib.h> +#include <string.h> +#include <sys/stat.h> +#ifndef MSDOS /* UNIX, OS/2 */ +#include <unistd.h> +#include <utime.h> +#else +#if defined(_MSC_VER) || defined(__MINGW32__) /* VC++, MinGW */ +#include <sys/utime.h> +#elif defined(__TURBOC__) /* BCC */ +#include <utime.h> +#elif defined(LSI_C) /* LSI C */ +#endif +#endif +#endif + +#ifdef INT_IS_SHORT +#define int long +#endif + +#define FALSE 0 +#define TRUE 1 + +/* state of output_mode and input_mode + + c2 0 means ASCII + X0201 + ISO8859_1 + X0208 + EOF all termination + c1 32bit data + + */ + +#define ASCII 0 +#define X0208 1 +#define X0201 2 +#define ISO8859_1 8 +#define NO_X0201 3 + +/* Input Assumption */ + +#define JIS_INPUT 4 +#define SJIS_INPUT 5 +#define LATIN1_INPUT 6 +#define FIXED_MIME 7 +#define STRICT_MIME 8 + +/* MIME ENCODE */ + +#define ISO2022JP 9 +#define JAPANESE_EUC 10 +#define SHIFT_JIS 11 + +#define UTF8 12 +#define UTF8_INPUT 13 +#define UTF16_INPUT 14 +#define UTF16BE_INPUT 15 + +#define WISH_TRUE 15 + +/* ASCII CODE */ + +#define BS 0x08 +#define NL 0x0a +#define CR 0x0d +#define ESC 0x1b +#define SPACE 0x20 +#define AT 0x40 +#define SSP 0xa0 +#define DEL 0x7f +#define SI 0x0f +#define SO 0x0e +#define SSO 0x8e + +#define is_alnum(c) \ + (('a'<=c && c<='z')||('A'<= c && c<='Z')||('0'<=c && c<='9')) + +#define HOLD_SIZE 1024 +#define IOBUF_SIZE 16384 + +#define DEFAULT_J 'B' +#define DEFAULT_R 'B' + +#define SJ0162 0x00e1 /* 01 - 62 ku offset */ +#define SJ6394 0x0161 /* 63 - 94 ku offset */ + +#define RANGE_NUM_MAX 18 +#define GETA1 0x22 +#define GETA2 0x2e + + +#if defined( UTF8_OUTPUT_ENABLE ) || defined( UTF8_INPUT_ENABLE ) +#define sizeof_euc_utf8 94 +#define sizeof_euc_to_utf8_1byte 94 +#define sizeof_euc_to_utf8_2bytes 94 +#define sizeof_utf8_to_euc_C2 64 +#define sizeof_utf8_to_euc_E5B8 64 +#define sizeof_utf8_to_euc_2bytes 112 +#define sizeof_utf8_to_euc_3bytes 112 +#endif + +/* MIME preprocessor */ + + +#ifdef EASYWIN /*Easy Win */ +extern POINT _BufferSize; +#endif + +/* function prototype */ + +#ifdef ANSI_C_PROTOTYPE +#define PROTO(x) x +#define STATIC static +#else +#define PROTO(x) () +#define STATIC +#endif + +struct input_code{ + char *name; + int stat; + int score; + int index; + int buf[3]; + void (*status_func)PROTO((struct input_code *, int)); + int (*iconv_func)PROTO((int c2, int c1, int c0)); + int _file_stat; +}; + +STATIC char *input_codename = ""; + +STATIC int noconvert PROTO((FILE *f)); +STATIC int kanji_convert PROTO((FILE *f)); +STATIC int h_conv PROTO((FILE *f,int c2,int c1)); +STATIC int push_hold_buf PROTO((int c2)); +STATIC void set_iconv PROTO((int f, int (*iconv_func)())); +STATIC int s_iconv PROTO((int c2,int c1,int c0)); +STATIC int s2e_conv PROTO((int c2, int c1, int *p2, int *p1)); +STATIC int e_iconv PROTO((int c2,int c1,int c0)); +#ifdef UTF8_INPUT_ENABLE +STATIC int w2e_conv PROTO((int c2,int c1,int c0,int *p2,int *p1)); +STATIC int w_iconv PROTO((int c2,int c1,int c0)); +STATIC int w_iconv16 PROTO((int c2,int c1,int c0)); +STATIC int w_iconv_common PROTO((int c1,int c0,unsigned short **pp,int psize,int *p2,int *p1)); +STATIC int ww16_conv PROTO((int c2, int c1, int c0)); +#endif +#ifdef UTF8_OUTPUT_ENABLE +STATIC int e2w_conv PROTO((int c2,int c1)); +STATIC void w_oconv PROTO((int c2,int c1)); +STATIC void w_oconv16 PROTO((int c2,int c1)); +#endif +STATIC void e_oconv PROTO((int c2,int c1)); +STATIC void e2s_conv PROTO((int c2, int c1, int *p2, int *p1)); +STATIC void s_oconv PROTO((int c2,int c1)); +STATIC void j_oconv PROTO((int c2,int c1)); +STATIC void fold_conv PROTO((int c2,int c1)); +STATIC void cr_conv PROTO((int c2,int c1)); +STATIC void z_conv PROTO((int c2,int c1)); +STATIC void rot_conv PROTO((int c2,int c1)); +STATIC void hira_conv PROTO((int c2,int c1)); +STATIC void base64_conv PROTO((int c2,int c1)); +STATIC void iso2022jp_check_conv PROTO((int c2,int c1)); +STATIC void no_connection PROTO((int c2,int c1)); +STATIC int no_connection2 PROTO((int c2,int c1,int c0)); + +STATIC void code_score PROTO((struct input_code *ptr)); +STATIC void code_status PROTO((int c)); + +STATIC void std_putc PROTO((int c)); +STATIC int std_getc PROTO((FILE *f)); +STATIC int std_ungetc PROTO((int c,FILE *f)); + +STATIC int broken_getc PROTO((FILE *f)); +STATIC int broken_ungetc PROTO((int c,FILE *f)); + +STATIC int mime_begin PROTO((FILE *f)); +STATIC int mime_getc PROTO((FILE *f)); +STATIC int mime_ungetc PROTO((int c,FILE *f)); + +STATIC int mime_begin_strict PROTO((FILE *f)); +STATIC int mime_getc_buf PROTO((FILE *f)); +STATIC int mime_ungetc_buf PROTO((int c,FILE *f)); +STATIC int mime_integrity PROTO((FILE *f,unsigned char *p)); + +STATIC int base64decode PROTO((int c)); +STATIC void mime_putc PROTO((int c)); +STATIC void open_mime PROTO((int c)); +STATIC void close_mime PROTO(()); +STATIC void usage PROTO(()); +STATIC void version PROTO(()); +STATIC void options PROTO((unsigned char *c)); +#ifdef PERL_XS +STATIC void reinit PROTO(()); +#endif + +/* buffers */ + +static unsigned char stdibuf[IOBUF_SIZE]; +static unsigned char stdobuf[IOBUF_SIZE]; +static unsigned char hold_buf[HOLD_SIZE*2]; +static int hold_count; + +/* MIME preprocessor fifo */ + +#define MIME_BUF_SIZE (1024) /* 2^n ring buffer */ +#define MIME_BUF_MASK (MIME_BUF_SIZE-1) +#define Fifo(n) mime_buf[(n)&MIME_BUF_MASK] +static unsigned char mime_buf[MIME_BUF_SIZE]; +static unsigned int mime_top = 0; +static unsigned int mime_last = 0; /* decoded */ +static unsigned int mime_input = 0; /* undecoded */ + +/* flags */ +static int unbuf_f = FALSE; +static int estab_f = FALSE; +static int nop_f = FALSE; +static int binmode_f = TRUE; /* binary mode */ +static int rot_f = FALSE; /* rot14/43 mode */ +static int hira_f = FALSE; /* hira/kata henkan */ +static int input_f = FALSE; /* non fixed input code */ +static int alpha_f = FALSE; /* convert JIx0208 alphbet to ASCII */ +static int mime_f = STRICT_MIME; /* convert MIME B base64 or Q */ +static int mimebuf_f = FALSE; /* MIME buffered input */ +static int broken_f = FALSE; /* convert ESC-less broken JIS */ +static int iso8859_f = FALSE; /* ISO8859 through */ +static int mimeout_f = FALSE; /* base64 mode */ +#if defined(MSDOS) || defined(__OS2__) +static int x0201_f = TRUE; /* Assume JISX0201 kana */ +#else +static int x0201_f = NO_X0201; /* Assume NO JISX0201 */ +#endif +static int iso2022jp_f = FALSE; /* convert ISO-2022-JP */ +#ifdef UTF8_OUTPUT_ENABLE +static int w_oconv16_begin_f= 0; /* utf-16 header */ +static int w_oconv16_LE = 0; /* utf-16 little endian */ +#endif + + +#ifdef NUMCHAR_OPTION + +#define CLASS_MASK 0x0f000000 +#define CLASS_UTF16 0x01000000 +#endif + +#ifdef INPUT_OPTION +static int cap_f = FALSE; +static int (*i_cgetc)PROTO((FILE *)) = std_getc; /* input of cgetc */ +static int (*i_cungetc)PROTO((int c ,FILE *f)) = std_ungetc; +STATIC int cap_getc PROTO((FILE *f)); +STATIC int cap_ungetc PROTO((int c,FILE *f)); + +static int url_f = FALSE; +static int (*i_ugetc)PROTO((FILE *)) = std_getc; /* input of ugetc */ +static int (*i_uungetc)PROTO((int c ,FILE *f)) = std_ungetc; +STATIC int url_getc PROTO((FILE *f)); +STATIC int url_ungetc PROTO((int c,FILE *f)); + +static int numchar_f = FALSE; +static int (*i_ngetc)PROTO((FILE *)) = std_getc; /* input of ugetc */ +static int (*i_nungetc)PROTO((int c ,FILE *f)) = std_ungetc; +STATIC int numchar_getc PROTO((FILE *f)); +STATIC int numchar_ungetc PROTO((int c,FILE *f)); +#endif + +#ifdef CHECK_OPTION +static int noout_f = FALSE; +STATIC void no_putc PROTO((int c)); +static int debug_f = FALSE; +STATIC void debug PROTO((char *str)); +#endif + +static int guess_f = FALSE; +STATIC void print_guessed_code PROTO((char *filename)); +STATIC void set_input_codename PROTO((char *codename)); +static int is_inputcode_mixed = FALSE; +static int is_inputcode_set = FALSE; + +#ifdef EXEC_IO +static int exec_f = 0; +#endif + +#ifdef SHIFTJIS_CP932 +STATIC int cp932_f = TRUE; +#define CP932_TABLE_BEGIN (0xfa) +#define CP932_TABLE_END (0xfc) + +STATIC int cp932inv_f = FALSE; +#define CP932INV_TABLE_BEGIN (0xed) +#define CP932INV_TABLE_END (0xee) + +#endif /* SHIFTJIS_CP932 */ + +STATIC unsigned char prefix_table[256]; + +STATIC void e_status PROTO((struct input_code *, int)); +STATIC void s_status PROTO((struct input_code *, int)); + +#ifdef UTF8_INPUT_ENABLE +STATIC void w_status PROTO((struct input_code *, int)); +STATIC void w16_status PROTO((struct input_code *, int)); +static int utf16_mode = UTF16_INPUT; +#endif + +struct input_code input_code_list[] = { + {"EUC-JP", 0, 0, 0, {0, 0, 0}, e_status, e_iconv, 0}, + {"Shift_JIS", 0, 0, 0, {0, 0, 0}, s_status, s_iconv, 0}, + {"UTF-8", 0, 0, 0, {0, 0, 0}, w_status, w_iconv, 0}, + {"UTF-16", 0, 0, 0, {0, 0, 0}, w16_status, w_iconv16, 0}, + {0} +}; + +static int mimeout_mode = 0; +static int base64_count = 0; + +/* X0208 -> ASCII converter */ + +/* fold parameter */ +static int f_line = 0; /* chars in line */ +static int f_prev = 0; +static int fold_preserve_f = FALSE; /* preserve new lines */ +static int fold_f = FALSE; +static int fold_len = 0; + +/* options */ +static unsigned char kanji_intro = DEFAULT_J, + ascii_intro = DEFAULT_R; + +/* Folding */ + +#define FOLD_MARGIN 10 +#define DEFAULT_FOLD 60 + +static int fold_margin = FOLD_MARGIN; + +/* converters */ + +#ifdef DEFAULT_CODE_JIS +# define DEFAULT_CONV j_oconv +#endif +#ifdef DEFAULT_CODE_SJIS +# define DEFAULT_CONV s_oconv +#endif +#ifdef DEFAULT_CODE_EUC +# define DEFAULT_CONV e_oconv +#endif +#ifdef DEFAULT_CODE_UTF8 +# define DEFAULT_CONV w_oconv +#endif + +/* process default */ +static void (*output_conv)PROTO((int c2,int c1)) = DEFAULT_CONV; + +static void (*oconv)PROTO((int c2,int c1)) = no_connection; +/* s_iconv or oconv */ +static int (*iconv)PROTO((int c2,int c1,int c0)) = no_connection2; + +static void (*o_zconv)PROTO((int c2,int c1)) = no_connection; +static void (*o_fconv)PROTO((int c2,int c1)) = no_connection; +static void (*o_crconv)PROTO((int c2,int c1)) = no_connection; +static void (*o_rot_conv)PROTO((int c2,int c1)) = no_connection; +static void (*o_hira_conv)PROTO((int c2,int c1)) = no_connection; +static void (*o_base64conv)PROTO((int c2,int c1)) = no_connection; +static void (*o_iso2022jp_check_conv)PROTO((int c2,int c1)) = no_connection; + +/* static redirections */ + +static void (*o_putc)PROTO((int c)) = std_putc; + +static int (*i_getc)PROTO((FILE *f)) = std_getc; /* general input */ +static int (*i_ungetc)PROTO((int c,FILE *f)) =std_ungetc; + +static int (*i_bgetc)PROTO((FILE *)) = std_getc; /* input of mgetc */ +static int (*i_bungetc)PROTO((int c ,FILE *f)) = std_ungetc; + +static void (*o_mputc)PROTO((int c)) = std_putc ; /* output of mputc */ + +static int (*i_mgetc)PROTO((FILE *)) = std_getc; /* input of mgetc */ +static int (*i_mungetc)PROTO((int c ,FILE *f)) = std_ungetc; + +/* for strict mime */ +static int (*i_mgetc_buf)PROTO((FILE *)) = std_getc; /* input of mgetc_buf */ +static int (*i_mungetc_buf)PROTO((int c,FILE *f)) = std_ungetc; + +/* Global states */ +static int output_mode = ASCII, /* output kanji mode */ + input_mode = ASCII, /* input kanji mode */ + shift_mode = FALSE; /* TRUE shift out, or X0201 */ +static int mime_decode_mode = FALSE; /* MIME mode B base64, Q hex */ + +/* X0201 / X0208 conversion tables */ + +/* X0201 kana conversion table */ +/* 90-9F A0-DF */ +static +unsigned char cv[]= { + 0x21,0x21,0x21,0x23,0x21,0x56,0x21,0x57, + 0x21,0x22,0x21,0x26,0x25,0x72,0x25,0x21, + 0x25,0x23,0x25,0x25,0x25,0x27,0x25,0x29, + 0x25,0x63,0x25,0x65,0x25,0x67,0x25,0x43, + 0x21,0x3c,0x25,0x22,0x25,0x24,0x25,0x26, + 0x25,0x28,0x25,0x2a,0x25,0x2b,0x25,0x2d, + 0x25,0x2f,0x25,0x31,0x25,0x33,0x25,0x35, + 0x25,0x37,0x25,0x39,0x25,0x3b,0x25,0x3d, + 0x25,0x3f,0x25,0x41,0x25,0x44,0x25,0x46, + 0x25,0x48,0x25,0x4a,0x25,0x4b,0x25,0x4c, + 0x25,0x4d,0x25,0x4e,0x25,0x4f,0x25,0x52, + 0x25,0x55,0x25,0x58,0x25,0x5b,0x25,0x5e, + 0x25,0x5f,0x25,0x60,0x25,0x61,0x25,0x62, + 0x25,0x64,0x25,0x66,0x25,0x68,0x25,0x69, + 0x25,0x6a,0x25,0x6b,0x25,0x6c,0x25,0x6d, + 0x25,0x6f,0x25,0x73,0x21,0x2b,0x21,0x2c, + 0x00,0x00}; + + +/* X0201 kana conversion table for daguten */ +/* 90-9F A0-DF */ +static +unsigned char dv[]= { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x25,0x74, + 0x00,0x00,0x00,0x00,0x25,0x2c,0x25,0x2e, + 0x25,0x30,0x25,0x32,0x25,0x34,0x25,0x36, + 0x25,0x38,0x25,0x3a,0x25,0x3c,0x25,0x3e, + 0x25,0x40,0x25,0x42,0x25,0x45,0x25,0x47, + 0x25,0x49,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x25,0x50,0x25,0x53, + 0x25,0x56,0x25,0x59,0x25,0x5c,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00}; + +/* X0201 kana conversion table for han-daguten */ +/* 90-9F A0-DF */ +static +unsigned char ev[]= { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x25,0x51,0x25,0x54, + 0x25,0x57,0x25,0x5a,0x25,0x5d,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00}; + + +/* X0208 kigou conversion table */ +/* 0x8140 - 0x819e */ +static +unsigned char fv[] = { + + 0x00,0x00,0x00,0x00,0x2c,0x2e,0x00,0x3a, + 0x3b,0x3f,0x21,0x00,0x00,0x27,0x60,0x00, + 0x5e,0x00,0x5f,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x2d,0x00,0x2f, + 0x5c,0x00,0x00,0x7c,0x00,0x00,0x60,0x27, + 0x22,0x22,0x28,0x29,0x00,0x00,0x5b,0x5d, + 0x7b,0x7d,0x3c,0x3e,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x2b,0x2d,0x00,0x00, + 0x00,0x3d,0x00,0x3c,0x3e,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x24,0x00,0x00,0x25,0x23,0x26,0x2a,0x40, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 +} ; + + +#define CRLF 1 + +static int file_out = FALSE; +#ifdef OVERWRITE +static int overwrite = FALSE; +#endif + +static int crmode_f = 0; /* CR, NL, CRLF */ +#ifdef EASYWIN /*Easy Win */ +static int end_check; +#endif /*Easy Win */ + +#ifndef PERL_XS +int +main(argc, argv) + int argc; + char **argv; +{ + FILE *fin; + unsigned char *cp; + + char *outfname; + char *origfname; + +#ifdef EASYWIN /*Easy Win */ + _BufferSize.y = 400;/*Set Scroll Buffer Size*/ +#endif + + for (argc--,argv++; (argc > 0) && **argv == '-'; argc--, argv++) { + cp = (unsigned char *)*argv; + options(cp); +#ifdef EXEC_IO + if (exec_f){ + int fds[2], pid; + if (pipe(fds) < 0 || (pid = fork()) < 0){ + abort(); + } + if (pid == 0){ + if (exec_f > 0){ + close(fds[0]); + dup2(fds[1], 1); + }else{ + close(fds[1]); + dup2(fds[0], 0); + } + execvp(argv[1], &argv[1]); + } + if (exec_f > 0){ + close(fds[1]); + dup2(fds[0], 0); + }else{ + close(fds[0]); + dup2(fds[1], 1); + } + argc = 0; + break; + } +#endif + } + if(x0201_f == WISH_TRUE) + x0201_f = ((!iso2022jp_f)? TRUE : NO_X0201); + + if (binmode_f == TRUE) +#ifdef __OS2__ + if (freopen("","wb",stdout) == NULL) + return (-1); +#else + setbinmode(stdout); +#endif + + if (unbuf_f) + setbuf(stdout, (char *) NULL); + else + setvbuffer(stdout, stdobuf, IOBUF_SIZE); + + if (argc == 0) { + if (binmode_f == TRUE) +#ifdef __OS2__ + if (freopen("","rb",stdin) == NULL) return (-1); +#else + setbinmode(stdin); +#endif + setvbuffer(stdin, stdibuf, IOBUF_SIZE); + if (nop_f) + noconvert(stdin); + else { + kanji_convert(stdin); + if (guess_f) print_guessed_code(NULL); + } + } else { + int nfiles = argc; + while (argc--) { + if ((fin = fopen((origfname = *argv++), "r")) == NULL) { + perror(*--argv); + return(-1); + } else { +#ifdef OVERWRITE + int fd; + int fd_backup; +#endif + +/* reopen file for stdout */ + if (file_out == TRUE) { +#ifdef OVERWRITE + if (overwrite){ + outfname = malloc(strlen(origfname) + + strlen(".nkftmpXXXXXX") + + 1); + if (!outfname){ + perror(origfname); + return -1; + } + strcpy(outfname, origfname); +#ifdef MSDOS + { + int i; + for (i = strlen(outfname); i; --i){ + if (outfname[i - 1] == '/' + || outfname[i - 1] == '\\'){ + break; + } + } + outfname[i] = '\0'; + } + strcat(outfname, "ntXXXXXX"); + mktemp(outfname); + fd = open(outfname, O_WRONLY | O_CREAT | O_TRUNC, + S_IREAD | S_IWRITE); +#else + strcat(outfname, ".nkftmpXXXXXX"); + fd = mkstemp(outfname); +#endif + if (fd < 0 + || (fd_backup = dup(fileno(stdout))) < 0 + || dup2(fd, fileno(stdout)) < 0 + ){ + perror(origfname); + return -1; + } + }else +#endif + if(argc == 1 ) { + outfname = *argv++; + argc--; + } else { + outfname = "nkf.out"; + } + + if(freopen(outfname, "w", stdout) == NULL) { + perror (outfname); + return (-1); + } + if (binmode_f == TRUE) { +#ifdef __OS2__ + if (freopen("","wb",stdout) == NULL) + return (-1); +#else + setbinmode(stdout); +#endif + } + } + if (binmode_f == TRUE) +#ifdef __OS2__ + if (freopen("","rb",fin) == NULL) + return (-1); +#else + setbinmode(fin); +#endif + setvbuffer(fin, stdibuf, IOBUF_SIZE); + if (nop_f) + noconvert(fin); + else { + char *filename = NULL; + kanji_convert(fin); + if (nfiles > 1) filename = origfname; + if (guess_f) print_guessed_code(filename); + } + fclose(fin); +#ifdef OVERWRITE + if (overwrite) { + struct stat sb; +#if defined(MSDOS) && !defined(__MINGW32__) + time_t tb[2]; +#else + struct utimbuf tb; +#endif + + fflush(stdout); + close(fd); + if (dup2(fd_backup, fileno(stdout)) < 0){ + perror("dup2"); + } + if (stat(origfname, &sb)) { + fprintf(stderr, "Can't stat %s\n", origfname); + } + /* $B%Q!<%_%C%7%g%s$rI|85(B */ + if (chmod(outfname, sb.st_mode)) { + fprintf(stderr, "Can't set permission %s\n", outfname); + } + + /* $B%?%$%`%9%?%s%W$rI|85(B */ +#if defined(MSDOS) && !defined(__MINGW32__) + tb[0] = tb[1] = sb.st_mtime; + if (utime(outfname, tb)) { + fprintf(stderr, "Can't set timestamp %s\n", outfname); + } +#else + tb.actime = sb.st_atime; + tb.modtime = sb.st_mtime; + if (utime(outfname, &tb)) { + fprintf(stderr, "Can't set timestamp %s\n", outfname); + } +#endif +#ifdef MSDOS + if (unlink(origfname)){ + perror(origfname); + } +#endif + if (rename(outfname, origfname)) { + perror(origfname); + fprintf(stderr, "Can't rename %s to %s\n", + outfname, origfname); + } + free(outfname); + } +#endif + } + } + } +#ifdef EASYWIN /*Easy Win */ + if (file_out == FALSE) + scanf("%d",&end_check); + else + fclose(stdout); +#else /* for Other OS */ + if (file_out == TRUE) + fclose(stdout); +#endif + return (0); +} +#endif + +static +struct { + char *name; + char *alias; +} long_option[] = { + {"base64","jMB"}, + {"euc","e"}, + {"euc-input","E"}, + {"fj","jm"}, + {"help","v"}, + {"jis","j"}, + {"jis-input","J"}, + {"mac","sLm"}, + {"mime","jM"}, + {"mime-input","m"}, + {"msdos","sLw"}, + {"sjis","s"}, + {"sjis-input","S"}, + {"unix","eLu"}, + {"version","V"}, + {"windows","sLw"}, + {"hiragana","h1"}, + {"katakana","h2"}, + {"katakana-hiragana","h3"}, + {"guess", "g"}, +#ifdef UTF8_OUTPUT_ENABLE + {"utf8", "w"}, + {"utf16", "w16"}, +#endif +#ifdef UTF8_INPUT_ENABLE + {"utf8-input", "W"}, + {"utf16-input", "W16"}, +#endif +#ifdef OVERWRITE + {"overwrite", ""}, +#endif +#ifdef INPUT_OPTION + {"cap-input", ""}, + {"url-input", ""}, +#endif +#ifdef NUMCHAR_OPTION + {"numchar-input", ""}, +#endif +#ifdef CHECK_OPTION + {"no-output", ""}, + {"debug", ""}, +#endif +#ifdef SHIFTJIS_CP932 + {"no-cp932", ""}, + {"cp932inv", ""}, +#endif +#ifdef EXEC_IO + {"exec-in", ""}, + {"exec-out", ""}, +#endif + {"prefix=", ""}, +}; + +static int option_mode; + +void +options(cp) + unsigned char *cp; +{ + int i; + unsigned char *p; + + if (option_mode==1) + return; + if (*cp++ != '-') + return; + while (*cp) { + switch (*cp++) { + case '-': /* literal options */ + if (!*cp) { /* ignore the rest of arguments */ + option_mode = 1; + return; + } + for (i=0;i<sizeof(long_option)/sizeof(long_option[0]);i++) { + int j; + p = (unsigned char *)long_option[i].name; + for (j=0;*p && (*p != '=') && *p == cp[j];p++, j++); + if (*p == cp[j]){ + p = &cp[j]; + break; + } + p = 0; + } + if (p == 0) return; + cp = (unsigned char *)long_option[i].alias; + if (!*cp){ +#ifdef OVERWRITE + if (strcmp(long_option[i].name, "overwrite") == 0){ + file_out = TRUE; + overwrite = TRUE; + continue; + } +#endif +#ifdef INPUT_OPTION + if (strcmp(long_option[i].name, "cap-input") == 0){ + cap_f = TRUE; + continue; + } + if (strcmp(long_option[i].name, "url-input") == 0){ + url_f = TRUE; + continue; + } +#endif +#ifdef NUMCHAR_OPTION + if (strcmp(long_option[i].name, "numchar-input") == 0){ + numchar_f = TRUE; + continue; + } +#endif +#ifdef CHECK_OPTION + if (strcmp(long_option[i].name, "no-output") == 0){ + noout_f = TRUE; + continue; + } + if (strcmp(long_option[i].name, "debug") == 0){ + debug_f = TRUE; + continue; + } +#endif +#ifdef SHIFTJIS_CP932 + if (strcmp(long_option[i].name, "no-cp932") == 0){ + cp932_f = FALSE; + continue; + } + if (strcmp(long_option[i].name, "cp932inv") == 0){ + cp932inv_f = TRUE; + continue; + } +#endif +#ifdef EXEC_IO + if (strcmp(long_option[i].name, "exec-in") == 0){ + exec_f = 1; + return; + } + if (strcmp(long_option[i].name, "exec-out") == 0){ + exec_f = -1; + return; + } +#endif + if (strcmp(long_option[i].name, "prefix=") == 0){ + if (*p == '=' && ' ' < p[1] && p[1] < 128){ + for (i = 2; ' ' < p[i] && p[i] < 128; i++){ + prefix_table[p[i]] = p[1]; + } + } + continue; + } + } + continue; + case 'b': /* buffered mode */ + unbuf_f = FALSE; + continue; + case 'u': /* non bufferd mode */ + unbuf_f = TRUE; + continue; + case 't': /* transparent mode */ + nop_f = TRUE; + continue; + case 'j': /* JIS output */ + case 'n': + output_conv = j_oconv; + continue; + case 'e': /* AT&T EUC output */ + output_conv = e_oconv; + continue; + case 's': /* SJIS output */ + output_conv = s_oconv; + continue; + case 'l': /* ISO8859 Latin-1 support, no conversion */ + iso8859_f = TRUE; /* Only compatible with ISO-2022-JP */ + input_f = LATIN1_INPUT; + continue; + case 'i': /* Kanji IN ESC-$-@/B */ + if (*cp=='@'||*cp=='B') + kanji_intro = *cp++; + continue; + case 'o': /* ASCII IN ESC-(-J/B */ + if (*cp=='J'||*cp=='B'||*cp=='H') + ascii_intro = *cp++; + continue; + case 'h': + /* + bit:1 hira -> kata + bit:2 kata -> hira + */ + if ('9'>= *cp && *cp>='0') + hira_f |= (*cp++ -'0'); + else + hira_f |= 1; + continue; + case 'r': + rot_f = TRUE; + continue; +#if defined(MSDOS) || defined(__OS2__) + case 'T': + binmode_f = FALSE; + continue; +#endif +#ifndef PERL_XS + case 'V': + version(); + exit(1); + break; + case 'v': + usage(); + exit(1); + break; +#endif +#ifdef UTF8_OUTPUT_ENABLE + case 'w': /* UTF-8 output */ + if ('1'== cp[0] && '6'==cp[1]) { + output_conv = w_oconv16; cp+=2; + if (cp[0]=='L') { + w_oconv16_begin_f=2; cp++; + w_oconv16_LE = 1; + if (cp[0] == '0'){ + w_oconv16_begin_f=1; cp++; + } + } else if (cp[0] == 'B') { + w_oconv16_begin_f=2; cp++; + if (cp[0] == '0'){ + w_oconv16_begin_f=1; cp++; + } + } + } else + output_conv = w_oconv; + continue; +#endif +#ifdef UTF8_INPUT_ENABLE + case 'W': /* UTF-8 input */ + if ('1'== cp[0] && '6'==cp[1]) { + input_f = UTF16_INPUT; + } else + input_f = UTF8_INPUT; + continue; +#endif + /* Input code assumption */ + case 'J': /* JIS input */ + case 'E': /* AT&T EUC input */ + input_f = JIS_INPUT; + continue; + case 'S': /* MS Kanji input */ + input_f = SJIS_INPUT; + if (x0201_f==NO_X0201) x0201_f=TRUE; + continue; + case 'Z': /* Convert X0208 alphabet to asii */ + /* bit:0 Convert X0208 + bit:1 Convert Kankaku to one space + bit:2 Convert Kankaku to two spaces + bit:3 Convert HTML Entity + */ + if ('9'>= *cp && *cp>='0') + alpha_f |= 1<<(*cp++ -'0'); + else + alpha_f |= TRUE; + continue; + case 'x': /* Convert X0201 kana to X0208 or X0201 Conversion */ + x0201_f = FALSE; /* No X0201->X0208 conversion */ + /* accept X0201 + ESC-(-I in JIS, EUC, MS Kanji + SI/SO in JIS, EUC, MS Kanji + SSO in EUC, JIS, not in MS Kanji + MS Kanji (0xa0-0xdf) + output X0201 + ESC-(-I in JIS (0x20-0x5f) + SSO in EUC (0xa0-0xdf) + 0xa0-0xd in MS Kanji (0xa0-0xdf) + */ + continue; + case 'X': /* Assume X0201 kana */ + /* Default value is NO_X0201 for EUC/MS-Kanji mix */ + x0201_f = TRUE; + continue; + case 'F': /* prserve new lines */ + fold_preserve_f = TRUE; + case 'f': /* folding -f60 or -f */ + fold_f = TRUE; + fold_len = 0; + while('0'<= *cp && *cp <='9') { /* we don't use atoi here */ + fold_len *= 10; + fold_len += *cp++ - '0'; + } + if (!(0<fold_len && fold_len<BUFSIZ)) + fold_len = DEFAULT_FOLD; + if (*cp=='-') { + fold_margin = 0; + cp++; + while('0'<= *cp && *cp <='9') { /* we don't use atoi here */ + fold_margin *= 10; + fold_margin += *cp++ - '0'; + } + } + continue; + case 'm': /* MIME support */ + if (*cp=='B'||*cp=='Q') { + mime_decode_mode = *cp++; + mimebuf_f = FIXED_MIME; + } else if (*cp=='N') { + mime_f = TRUE; cp++; + } else if (*cp=='S') { + mime_f = STRICT_MIME; cp++; + } else if (*cp=='0') { + mime_f = FALSE; cp++; + } + continue; + case 'M': /* MIME output */ + if (*cp=='B') { + mimeout_mode = 'B'; + mimeout_f = FIXED_MIME; cp++; + } else if (*cp=='Q') { + mimeout_mode = 'Q'; + mimeout_f = FIXED_MIME; cp++; + } else { + mimeout_f = TRUE; + } + continue; + case 'B': /* Broken JIS support */ + /* bit:0 no ESC JIS + bit:1 allow any x on ESC-(-x or ESC-$-x + bit:2 reset to ascii on NL + */ + if ('9'>= *cp && *cp>='0') + broken_f |= 1<<(*cp++ -'0'); + else + broken_f |= TRUE; + continue; +#ifndef PERL_XS + case 'O':/* for Output file */ + file_out = TRUE; + continue; +#endif + case 'c':/* add cr code */ + crmode_f = CRLF; + continue; + case 'd':/* delete cr code */ + crmode_f = NL; + continue; + case 'I': /* ISO-2022-JP output */ + iso2022jp_f = TRUE; + continue; + case 'L': /* line mode */ + if (*cp=='u') { /* unix */ + crmode_f = NL; cp++; + } else if (*cp=='m') { /* mac */ + crmode_f = CR; cp++; + } else if (*cp=='w') { /* windows */ + crmode_f = CRLF; cp++; + } else if (*cp=='0') { /* no conversion */ + crmode_f = 0; cp++; + } + continue; + case 'g': +#ifndef PERL_XS + guess_f = TRUE; +#endif + continue; + case ' ': + /* module muliple options in a string are allowed for Perl moudle */ + while(*cp && *cp!='-') cp++; + if(*cp=='-') cp++; + continue; + default: + /* bogus option but ignored */ + continue; + } + } +} + +#ifdef ANSI_C_PROTOTYPE +struct input_code * find_inputcode_byfunc(int (*iconv_func)(int c2,int c1,int c0)) +#else +struct input_code * find_inputcode_byfunc(iconv_func) + int (*iconv_func)(); +#endif +{ + if (iconv_func){ + struct input_code *p = input_code_list; + while (p->name){ + if (iconv_func == p->iconv_func){ + return p; + } + p++; + } + } + return 0; +} + +#ifdef ANSI_C_PROTOTYPE +void set_iconv(int f, int (*iconv_func)(int c2,int c1,int c0)) +#else +void set_iconv(f, iconv_func) + int f; + int (*iconv_func)(); +#endif +{ +#ifdef CHECK_OPTION + static int (*iconv_for_check)() = 0; +#endif +#ifdef INPUT_CODE_FIX + if (f || !input_f) +#endif + if (estab_f != f){ + estab_f = f; + } + + if (iconv_func +#ifdef INPUT_CODE_FIX + && (f == -TRUE || !input_f) /* -TRUE means "FORCE" */ +#endif + ){ + iconv = iconv_func; + } +#ifdef CHECK_OPTION + if (estab_f && iconv_for_check != iconv){ + struct input_code *p = find_inputcode_byfunc(iconv); + if (p){ + set_input_codename(p->name); + debug(input_codename); + } + iconv_for_check = iconv; + } +#endif +} + +#define SCORE_L2 (1) /* $BBh(B2$B?e=`4A;z(B */ +#define SCORE_KANA (SCORE_L2 << 1) /* $B$$$o$f$kH>3Q%+%J(B */ +#define SCORE_DEPEND (SCORE_KANA << 1) /* $B5!<o0MB8J8;z(B */ +#ifdef SHIFTJIS_CP932 +#define SCORE_CP932 (SCORE_DEPEND << 1) /* CP932 $B$K$h$kFI$_49$((B */ +#define SCORE_NO_EXIST (SCORE_CP932 << 1) /* $BB8:_$7$J$$J8;z(B */ +#else +#define SCORE_NO_EXIST (SCORE_DEPEND << 1) /* $BB8:_$7$J$$J8;z(B */ +#endif +#define SCORE_iMIME (SCORE_NO_EXIST << 1) /* MIME $B$K$h$k;XDj(B */ +#define SCORE_ERROR (SCORE_iMIME << 1) /* $B%(%i!<(B */ + +#define SCORE_INIT (SCORE_iMIME) + +int score_table_A0[] = { + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, SCORE_DEPEND, SCORE_DEPEND, SCORE_DEPEND, + SCORE_DEPEND, SCORE_DEPEND, SCORE_DEPEND, SCORE_NO_EXIST, +}; + +int score_table_F0[] = { + SCORE_L2, SCORE_L2, SCORE_L2, SCORE_L2, + SCORE_L2, SCORE_DEPEND, SCORE_NO_EXIST, SCORE_NO_EXIST, + SCORE_DEPEND, SCORE_DEPEND, SCORE_DEPEND, SCORE_DEPEND, + SCORE_DEPEND, SCORE_NO_EXIST, SCORE_NO_EXIST, SCORE_ERROR, +}; + +void set_code_score(ptr, score) + struct input_code *ptr; + int score; +{ + if (ptr){ + ptr->score |= score; + } +} + +void clr_code_score(ptr, score) + struct input_code *ptr; + int score; +{ + if (ptr){ + ptr->score &= ~score; + } +} + +void code_score(ptr) + struct input_code *ptr; +{ + int c2 = ptr->buf[0]; + int c1 = ptr->buf[1]; + if (c2 < 0){ + set_code_score(ptr, SCORE_ERROR); + }else if (c2 == SSO){ + set_code_score(ptr, SCORE_KANA); +#ifdef UTF8_OUTPUT_ENABLE + }else if (!e2w_conv(c2, c1)){ + set_code_score(ptr, SCORE_NO_EXIST); +#endif + }else if ((c2 & 0x70) == 0x20){ + set_code_score(ptr, score_table_A0[c2 & 0x0f]); + }else if ((c2 & 0x70) == 0x70){ + set_code_score(ptr, score_table_F0[c2 & 0x0f]); + }else if ((c2 & 0x70) >= 0x50){ + set_code_score(ptr, SCORE_L2); + } +} + +void status_disable(ptr) +struct input_code *ptr; +{ + ptr->stat = -1; + ptr->buf[0] = -1; + code_score(ptr); + if (iconv == ptr->iconv_func) set_iconv(FALSE, 0); +} + +void status_push_ch(ptr, c) + struct input_code *ptr; + int c; +{ + ptr->buf[ptr->index++] = c; +} + +void status_clear(ptr) + struct input_code *ptr; +{ + ptr->stat = 0; + ptr->index = 0; +} + +void status_reset(ptr) + struct input_code *ptr; +{ + status_clear(ptr); + ptr->score = SCORE_INIT; +} + +void status_reinit(ptr) + struct input_code *ptr; +{ + status_reset(ptr); + ptr->_file_stat = 0; +} + +void status_check(ptr, c) + struct input_code *ptr; + int c; +{ + if (c <= DEL && estab_f){ + status_reset(ptr); + } +} + +void s_status(ptr, c) + struct input_code *ptr; + int c; +{ + switch(ptr->stat){ + case -1: + status_check(ptr, c); + break; + case 0: + if (c <= DEL){ + break; +#ifdef NUMCHAR_OPTION + }else if ((c & CLASS_MASK) == CLASS_UTF16){ + break; +#endif + }else if (0xa1 <= c && c <= 0xdf){ + status_push_ch(ptr, SSO); + status_push_ch(ptr, c); + code_score(ptr); + status_clear(ptr); + }else if ((0x81 <= c && c < 0xa0) || (0xe0 <= c && c <= 0xef)){ + ptr->stat = 1; + status_push_ch(ptr, c); +#ifdef SHIFTJIS_CP932 + }else if (cp932_f + && CP932_TABLE_BEGIN <= c && c <= CP932_TABLE_END){ + ptr->stat = 2; + status_push_ch(ptr, c); +#endif /* SHIFTJIS_CP932 */ + }else{ + status_disable(ptr); + } + break; + case 1: + if ((0x40 <= c && c <= 0x7e) || (0x80 <= c && c <= 0xfc)){ + status_push_ch(ptr, c); + s2e_conv(ptr->buf[0], ptr->buf[1], &ptr->buf[0], &ptr->buf[1]); + code_score(ptr); + status_clear(ptr); + }else{ + status_disable(ptr); + } + break; +#ifdef SHIFTJIS_CP932 + case 2: + if ((0x40 <= c && c <= 0x7e) || (0x80 <= c && c <= 0xfc)){ + status_push_ch(ptr, c); + if (s2e_conv(ptr->buf[0], ptr->buf[1], &ptr->buf[0], &ptr->buf[1]) == 0){ + set_code_score(ptr, SCORE_CP932); + status_clear(ptr); + break; + } + } + status_disable(ptr); + break; +#endif /* SHIFTJIS_CP932 */ + } +} + +void e_status(ptr, c) + struct input_code *ptr; + int c; +{ + switch (ptr->stat){ + case -1: + status_check(ptr, c); + break; + case 0: + if (c <= DEL){ + break; +#ifdef NUMCHAR_OPTION + }else if ((c & CLASS_MASK) == CLASS_UTF16){ + break; +#endif + }else if (SSO == c || (0xa1 <= c && c <= 0xfe)){ + ptr->stat = 1; + status_push_ch(ptr, c); + }else{ + status_disable(ptr); + } + break; + case 1: + if (0xa1 <= c && c <= 0xfe){ + status_push_ch(ptr, c); + code_score(ptr); + status_clear(ptr); + }else{ + status_disable(ptr); + } + break; + } +} + +#ifdef UTF8_INPUT_ENABLE +void w16_status(ptr, c) + struct input_code *ptr; + int c; +{ + switch (ptr->stat){ + case -1: + break; + case 0: + if (ptr->_file_stat == 0){ + if (c == 0xfe || c == 0xff){ + ptr->stat = c; + status_push_ch(ptr, c); + ptr->_file_stat = 1; + }else{ + status_disable(ptr); + ptr->_file_stat = -1; + } + }else if (ptr->_file_stat > 0){ + ptr->stat = 1; + status_push_ch(ptr, c); + }else if (ptr->_file_stat < 0){ + status_disable(ptr); + } + break; + + case 1: + if (c == EOF){ + status_disable(ptr); + ptr->_file_stat = -1; + }else{ + status_push_ch(ptr, c); + status_clear(ptr); + } + break; + + case 0xfe: + case 0xff: + if (ptr->stat != c && (c == 0xfe || c == 0xff)){ + status_push_ch(ptr, c); + status_clear(ptr); + }else{ + status_disable(ptr); + ptr->_file_stat = -1; + } + break; + } +} + +void w_status(ptr, c) + struct input_code *ptr; + int c; +{ + switch (ptr->stat){ + case -1: + status_check(ptr, c); + break; + case 0: + if (c <= DEL){ + break; +#ifdef NUMCHAR_OPTION + }else if ((c & CLASS_MASK) == CLASS_UTF16){ + break; +#endif + }else if (0xc0 <= c && c <= 0xdf){ + ptr->stat = 1; + status_push_ch(ptr, c); + }else if (0xe0 <= c && c <= 0xef){ + ptr->stat = 2; + status_push_ch(ptr, c); + }else{ + status_disable(ptr); + } + break; + case 1: + case 2: + if (0x80 <= c && c <= 0xbf){ + status_push_ch(ptr, c); + if (ptr->index > ptr->stat){ + int bom = (ptr->buf[0] == 0xef && ptr->buf[1] == 0xbb + && ptr->buf[2] == 0xbf); + w2e_conv(ptr->buf[0], ptr->buf[1], ptr->buf[2], + &ptr->buf[0], &ptr->buf[1]); + if (!bom){ + code_score(ptr); + } + status_clear(ptr); + } + }else{ + status_disable(ptr); + } + break; + } +} +#endif + +void +code_status(c) + int c; +{ + int action_flag = 1; + struct input_code *result = 0; + struct input_code *p = input_code_list; + while (p->name){ + (p->status_func)(p, c); + if (p->stat > 0){ + action_flag = 0; + }else if(p->stat == 0){ + if (result){ + action_flag = 0; + }else{ + result = p; + } + } + ++p; + } + + if (action_flag){ + if (result && !estab_f){ + set_iconv(TRUE, result->iconv_func); + }else if (c <= DEL){ + struct input_code *ptr = input_code_list; + while (ptr->name){ + status_reset(ptr); + ++ptr; + } + } + } +} + +#ifdef PERL_XS +#define STD_GC_BUFSIZE (256) +int std_gc_buf[STD_GC_BUFSIZE]; +int std_gc_ndx; +#endif + +int +std_getc(f) +FILE *f; +{ +#ifdef PERL_XS + if (std_gc_ndx){ + return std_gc_buf[--std_gc_ndx]; + } +#endif + return getc(f); +} + +int +std_ungetc(c,f) +int c; +FILE *f; +{ +#ifdef PERL_XS + if (std_gc_ndx == STD_GC_BUFSIZE){ + return EOF; + } + std_gc_buf[std_gc_ndx++] = c; + return c; +#endif + return ungetc(c,f); +} + +void +std_putc(c) +int c; +{ + if(c!=EOF) + putchar(c); +} + +int +noconvert(f) + FILE *f; +{ + int c; + + while ((c = (*i_getc)(f)) != EOF) + (*o_putc)(c); + return 1; +} + + +void +module_connection() +{ + oconv = output_conv; + o_putc = std_putc; + + /* replace continucation module, from output side */ + + /* output redicrection */ +#ifdef CHECK_OPTION + if (noout_f || guess_f){ + o_putc = no_putc; + } +#endif + if (mimeout_f) { + o_mputc = o_putc; + o_putc = mime_putc; + if (mimeout_f == TRUE) { + o_base64conv = oconv; oconv = base64_conv; + } + /* base64_count = 0; */ + } + + if (crmode_f) { + o_crconv = oconv; oconv = cr_conv; + } + if (rot_f) { + o_rot_conv = oconv; oconv = rot_conv; + } + if (iso2022jp_f) { + o_iso2022jp_check_conv = oconv; oconv = iso2022jp_check_conv; + } + if (hira_f) { + o_hira_conv = oconv; oconv = hira_conv; + } + if (fold_f) { + o_fconv = oconv; oconv = fold_conv; + f_line = 0; + } + if (alpha_f || x0201_f) { + o_zconv = oconv; oconv = z_conv; + } + + i_getc = std_getc; + i_ungetc = std_ungetc; + /* input redicrection */ +#ifdef INPUT_OPTION + if (cap_f){ + i_cgetc = i_getc; i_getc = cap_getc; + i_cungetc = i_ungetc; i_ungetc= cap_ungetc; + } + if (url_f){ + i_ugetc = i_getc; i_getc = url_getc; + i_uungetc = i_ungetc; i_ungetc= url_ungetc; + } +#endif +#ifdef NUMCHAR_OPTION + if (numchar_f){ + i_ngetc = i_getc; i_getc = numchar_getc; + i_nungetc = i_ungetc; i_ungetc= numchar_ungetc; + } +#endif + if (mime_f && mimebuf_f==FIXED_MIME) { + i_mgetc = i_getc; i_getc = mime_getc; + i_mungetc = i_ungetc; i_ungetc = mime_ungetc; + } + if (broken_f & 1) { + i_bgetc = i_getc; i_getc = broken_getc; + i_bungetc = i_ungetc; i_ungetc = broken_ungetc; + } + if (input_f == JIS_INPUT || input_f == LATIN1_INPUT) { + set_iconv(-TRUE, e_iconv); + } else if (input_f == SJIS_INPUT) { + set_iconv(-TRUE, s_iconv); +#ifdef UTF8_INPUT_ENABLE + } else if (input_f == UTF8_INPUT) { + set_iconv(-TRUE, w_iconv); + } else if (input_f == UTF16_INPUT) { + set_iconv(-TRUE, w_iconv16); +#endif + } else { + set_iconv(FALSE, e_iconv); + } + + { + struct input_code *p = input_code_list; + while (p->name){ + status_reinit(p++); + } + } +} + +/* + Conversion main loop. Code detection only. + */ + +int +kanji_convert(f) + FILE *f; +{ + int c1, + c2, c3; + + module_connection(); + c2 = 0; + + + input_mode = ASCII; + output_mode = ASCII; + shift_mode = FALSE; + +#define NEXT continue /* no output, get next */ +#define SEND ; /* output c1 and c2, get next */ +#define LAST break /* end of loop, go closing */ + + while ((c1 = (*i_getc)(f)) != EOF) { + code_status(c1); + if (c2) { + /* second byte */ + if (c2 > DEL) { + /* in case of 8th bit is on */ + if (!estab_f) { + /* in case of not established yet */ + /* It is still ambiguious */ + if (h_conv(f, c2, c1)==EOF) + LAST; + else + c2 = 0; + NEXT; + } else + /* in case of already established */ + if (c1 < AT) { + /* ignore bogus code */ + c2 = 0; + NEXT; + } else + SEND; + } else + /* second byte, 7 bit code */ + /* it might be kanji shitfted */ + if ((c1 == DEL) || (c1 <= SPACE)) { + /* ignore bogus first code */ + c2 = 0; + NEXT; + } else + SEND; + } else { + /* first byte */ + if ( +#ifdef UTF8_INPUT_ENABLE + iconv == w_iconv16 +#else + 0 +#endif + ) { + c2 = c1; + c1 = (*i_getc)(f); + SEND; +#ifdef NUMCHAR_OPTION + } else if ((c1 & CLASS_MASK) == CLASS_UTF16){ + SEND; +#endif + } else if (c1 > DEL) { + /* 8 bit code */ + if (!estab_f && !iso8859_f) { + /* not established yet */ + c2 = c1; + NEXT; + } else { /* estab_f==TRUE */ + if (iso8859_f) { + c2 = ISO8859_1; + c1 &= 0x7f; + SEND; + } else if (SSP<=c1 && c1<0xe0 && iconv == s_iconv) { + /* SJIS X0201 Case... */ + if(iso2022jp_f && x0201_f==NO_X0201) { + (*oconv)(GETA1, GETA2); + NEXT; + } else { + c2 = X0201; + c1 &= 0x7f; + SEND; + } + } else if (c1==SSO && iconv != s_iconv) { + /* EUC X0201 Case */ + c1 = (*i_getc)(f); /* skip SSO */ + code_status(c1); + if (SSP<=c1 && c1<0xe0) { + if(iso2022jp_f && x0201_f==NO_X0201) { + (*oconv)(GETA1, GETA2); + NEXT; + } else { + c2 = X0201; + c1 &= 0x7f; + SEND; + } + } else { /* bogus code, skip SSO and one byte */ + NEXT; + } + } else { + /* already established */ + c2 = c1; + NEXT; + } + } + } else if ((c1 > SPACE) && (c1 != DEL)) { + /* in case of Roman characters */ + if (shift_mode) { + /* output 1 shifted byte */ + if (iso8859_f) { + c2 = ISO8859_1; + SEND; + } else if (SPACE<=c1 && c1<(0xe0&0x7f) ){ + /* output 1 shifted byte */ + if(iso2022jp_f && x0201_f==NO_X0201) { + (*oconv)(GETA1, GETA2); + NEXT; + } else { + c2 = X0201; + SEND; + } + } else { + /* look like bogus code */ + NEXT; + } + } else if (input_mode == X0208) { + /* in case of Kanji shifted */ + c2 = c1; + NEXT; + } else if (c1 == '=' && mime_f && !mime_decode_mode ) { + /* Check MIME code */ + if ((c1 = (*i_getc)(f)) == EOF) { + (*oconv)(0, '='); + LAST; + } else if (c1 == '?') { + /* =? is mime conversion start sequence */ + if(mime_f == STRICT_MIME) { + /* check in real detail */ + if (mime_begin_strict(f) == EOF) + LAST; + else + NEXT; + } else if (mime_begin(f) == EOF) + LAST; + else + NEXT; + } else { + (*oconv)(0, '='); + (*i_ungetc)(c1,f); + NEXT; + } + } else { + /* normal ASCII code */ + SEND; + } + } else if (c1 == SI) { + shift_mode = FALSE; + NEXT; + } else if (c1 == SO) { + shift_mode = TRUE; + NEXT; + } else if (c1 == ESC ) { + if ((c1 = (*i_getc)(f)) == EOF) { + /* (*oconv)(0, ESC); don't send bogus code */ + LAST; + } else if (c1 == '$') { + if ((c1 = (*i_getc)(f)) == EOF) { + /* + (*oconv)(0, ESC); don't send bogus code + (*oconv)(0, '$'); */ + LAST; + } else if (c1 == '@'|| c1 == 'B') { + /* This is kanji introduction */ + input_mode = X0208; + shift_mode = FALSE; + set_input_codename("ISO-2022-JP"); + debug(input_codename); + NEXT; + } else if (c1 == '(') { + if ((c1 = (*i_getc)(f)) == EOF) { + /* don't send bogus code + (*oconv)(0, ESC); + (*oconv)(0, '$'); + (*oconv)(0, '('); + */ + LAST; + } else if (c1 == '@'|| c1 == 'B') { + /* This is kanji introduction */ + input_mode = X0208; + shift_mode = FALSE; + NEXT; + } else { + /* could be some special code */ + (*oconv)(0, ESC); + (*oconv)(0, '$'); + (*oconv)(0, '('); + (*oconv)(0, c1); + NEXT; + } + } else if (broken_f&0x2) { + /* accept any ESC-(-x as broken code ... */ + input_mode = X0208; + shift_mode = FALSE; + NEXT; + } else { + (*oconv)(0, ESC); + (*oconv)(0, '$'); + (*oconv)(0, c1); + NEXT; + } + } else if (c1 == '(') { + if ((c1 = (*i_getc)(f)) == EOF) { + /* don't send bogus code + (*oconv)(0, ESC); + (*oconv)(0, '('); */ + LAST; + } else { + if (c1 == 'I') { + /* This is X0201 kana introduction */ + input_mode = X0201; shift_mode = X0201; + NEXT; + } else if (c1 == 'B' || c1 == 'J' || c1 == 'H') { + /* This is X0208 kanji introduction */ + input_mode = ASCII; shift_mode = FALSE; + NEXT; + } else if (broken_f&0x2) { + input_mode = ASCII; shift_mode = FALSE; + NEXT; + } else { + (*oconv)(0, ESC); + (*oconv)(0, '('); + /* maintain various input_mode here */ + SEND; + } + } + } else if ( c1 == 'N' || c1 == 'n' ){ + /* SS2 */ + c3 = (*i_getc)(f); /* skip SS2 */ + if ( (SPACE<=c3 && c3 < 0x60) || (0xa0<=c3 && c3 < 0xe0)){ + c1 = c3; + c2 = X0201; + SEND; + }else{ + (*i_ungetc)(c3, f); + /* lonely ESC */ + (*oconv)(0, ESC); + SEND; + } + } else { + /* lonely ESC */ + (*oconv)(0, ESC); + SEND; + } + } else if ((c1 == NL || c1 == CR) && broken_f&4) { + input_mode = ASCII; set_iconv(FALSE, 0); + SEND; + } else + SEND; + } + /* send: */ + if (input_mode == X0208) + (*oconv)(c2, c1); /* this is JIS, not SJIS/EUC case */ + else if (input_mode) + (*oconv)(input_mode, c1); /* other special case */ + else if ((*iconv)(c2, c1, 0) < 0){ /* can be EUC/SJIS */ + int c0 = (*i_getc)(f); + if (c0 != EOF){ + code_status(c0); + (*iconv)(c2, c1, c0); + } + } + + c2 = 0; + continue; + /* goto next_word */ + } + + /* epilogue */ + (*iconv)(EOF, 0, 0); + return 1; +} + +int +h_conv(f, c2, c1) + FILE *f; + int c1, + c2; +{ + int wc,c3; + + + /** it must NOT be in the kanji shifte sequence */ + /** it must NOT be written in JIS7 */ + /** and it must be after 2 byte 8bit code */ + + hold_count = 0; + push_hold_buf(c2); + push_hold_buf(c1); + c2 = 0; + + while ((c1 = (*i_getc)(f)) != EOF) { + if (c1 == ESC){ + (*i_ungetc)(c1,f); + break; + } + code_status(c1); + if (push_hold_buf(c1) == EOF || estab_f){ + break; + } + } + + if (!estab_f){ + struct input_code *p = input_code_list; + struct input_code *result = p; + if (c1 == EOF){ + code_status(c1); + } + while (p->name){ + if (p->score < result->score){ + result = p; + } + ++p; + } + set_iconv(FALSE, result->iconv_func); + } + + + /** now, + ** 1) EOF is detected, or + ** 2) Code is established, or + ** 3) Buffer is FULL (but last word is pushed) + ** + ** in 1) and 3) cases, we continue to use + ** Kanji codes by oconv and leave estab_f unchanged. + **/ + + c3=c1; + wc = 0; + while (wc < hold_count){ + c2 = hold_buf[wc++]; + if (c2 <= DEL +#ifdef NUMCHAR_OPTION + || (c2 & CLASS_MASK) == CLASS_UTF16 +#endif + ){ + (*iconv)(0, c2, 0); + continue; + }else if (iconv == s_iconv && 0xa1 <= c2 && c2 <= 0xdf){ + (*iconv)(X0201, c2, 0); + continue; + } + if (wc < hold_count){ + c1 = hold_buf[wc++]; + }else{ + c1 = (*i_getc)(f); + if (c1 == EOF){ + c3 = EOF; + break; + } + code_status(c1); + } + if ((*iconv)(c2, c1, 0) < 0){ + int c0; + if (wc < hold_count){ + c0 = hold_buf[wc++]; + }else{ + c0 = (*i_getc)(f); + if (c0 == EOF){ + c3 = EOF; + break; + } + code_status(c0); + } + (*iconv)(c2, c1, c0); + c1 = c0; + } + } + return c3; +} + + + +int +push_hold_buf(c2) + int c2; +{ + if (hold_count >= HOLD_SIZE*2) + return (EOF); + hold_buf[hold_count++] = c2; + return ((hold_count >= HOLD_SIZE*2) ? EOF : hold_count); +} + +int s2e_conv(c2, c1, p2, p1) + int c2, c1; + int *p2, *p1; +{ +#ifdef SHIFTJIS_CP932 + if (cp932_f && CP932_TABLE_BEGIN <= c2 && c2 <= CP932_TABLE_END){ + extern unsigned short shiftjis_cp932[3][189]; + c1 = shiftjis_cp932[c2 - CP932_TABLE_BEGIN][c1 - 0x40]; + if (c1 == 0) return 1; + c2 = c1 >> 8; + c1 &= 0xff; + } +#endif /* SHIFTJIS_CP932 */ + c2 = c2 + c2 - ((c2 <= 0x9f) ? SJ0162 : SJ6394); + if (c1 < 0x9f) + c1 = c1 - ((c1 > DEL) ? SPACE : 0x1f); + else { + c1 = c1 - 0x7e; + c2++; + } + if (p2) *p2 = c2; + if (p1) *p1 = c1; + return 0; +} + +int +s_iconv(c2, c1, c0) + int c2, + c1, c0; +{ + if (c2 == X0201) { + c1 &= 0x7f; + } else if ((c2 == EOF) || (c2 == 0) || c2 < SPACE) { + /* NOP */ + } else { + int ret = s2e_conv(c2, c1, &c2, &c1); + if (ret) return ret; + } + (*oconv)(c2, c1); + return 0; +} + +int +e_iconv(c2, c1, c0) + int c2, + c1, c0; +{ + if (c2 == X0201) { + c1 &= 0x7f; + } else if (c2 == SSO){ + c2 = X0201; + c1 &= 0x7f; + } else if ((c2 == EOF) || (c2 == 0) || c2 < SPACE) { + /* NOP */ + } else { + c1 &= 0x7f; + c2 &= 0x7f; + } + (*oconv)(c2, c1); + return 0; +} + +#ifdef UTF8_INPUT_ENABLE +int +w2e_conv(c2, c1, c0, p2, p1) + int c2, c1, c0; + int *p2, *p1; +{ + extern unsigned short * utf8_to_euc_2bytes[]; + extern unsigned short ** utf8_to_euc_3bytes[]; + int ret = 0; + + if (0xc0 <= c2 && c2 <= 0xef) { + unsigned short **pp; + + if (0xe0 <= c2) { + if (c0 == 0) return -1; + pp = utf8_to_euc_3bytes[c2 - 0x80]; + ret = w_iconv_common(c1, c0, pp, sizeof_utf8_to_euc_C2, p2, p1); + } else { + ret = w_iconv_common(c2, c1, utf8_to_euc_2bytes, sizeof_utf8_to_euc_2bytes, p2, p1); + } +#ifdef NUMCHAR_OPTION + if (ret){ + if (p2) *p2 = 0; + if (p1) *p1 = CLASS_UTF16 | ww16_conv(c2, c1, c0); + ret = 0; + } +#endif + return ret; + } else if (c2 == X0201) { + c1 &= 0x7f; + } + if (p2) *p2 = c2; + if (p1) *p1 = c1; + return ret; +} + +int +w_iconv(c2, c1, c0) + int c2, + c1, c0; +{ + int ret = w2e_conv(c2, c1, c0, &c2, &c1); + if (ret == 0){ + (*oconv)(c2, c1); + } + return ret; +} + +void +w16w_conv(val, p2, p1, p0) + unsigned short val; + int *p2, *p1, *p0; +{ + if (val < 0x80){ + *p2 = val; + *p1 = 0; + *p0 = 0; + }else if (val < 0x800){ + *p2 = 0xc0 | (val >> 6); + *p1 = 0x80 | (val & 0x3f); + *p0 = 0; + }else{ + *p2 = 0xe0 | (val >> 12); + *p1 = 0x80 | ((val >> 6) & 0x3f); + *p0 = 0x80 | (val & 0x3f); + } +} + +int +ww16_conv(c2, c1, c0) + int c2, c1, c0; +{ + unsigned short val; + if (c2 >= 0xe0){ + val = (c2 & 0x0f) << 12; + val |= (c1 & 0x3f) << 6; + val |= (c0 & 0x3f); + }else if (c2 >= 0xc0){ + val = (c2 & 0x1f) << 6; + val |= (c1 & 0x3f) << 6; + }else{ + val = c2; + } + return val; +} + +int +w16e_conv(val, p2, p1) + unsigned short val; + int *p2, *p1; +{ + extern unsigned short * utf8_to_euc_2bytes[]; + extern unsigned short ** utf8_to_euc_3bytes[]; + int c2, c1, c0; + unsigned short **pp; + int psize; + int ret = 0; + + w16w_conv(val, &c2, &c1, &c0); + if (c1){ + if (c0){ + pp = utf8_to_euc_3bytes[c2 - 0x80]; + psize = sizeof_utf8_to_euc_C2; + ret = w_iconv_common(c1, c0, pp, psize, p2, p1); + }else{ + pp = utf8_to_euc_2bytes; + psize = sizeof_utf8_to_euc_2bytes; + ret = w_iconv_common(c2, c1, pp, psize, p2, p1); + } +#ifdef NUMCHAR_OPTION + if (ret){ + *p2 = 0; + *p1 = CLASS_UTF16 | val; + ret = 0; + } +#endif + } + return ret; +} + +int +w_iconv16(c2, c1, c0) + int c2, c1,c0; +{ + int ret; + + if (c2==0376 && c1==0377){ + utf16_mode = UTF16_INPUT; + return 0; + } else if (c2==0377 && c1==0376){ + utf16_mode = UTF16BE_INPUT; + return 0; + } + if (c2 != EOF && utf16_mode == UTF16BE_INPUT) { + int tmp; + tmp=c1; c1=c2; c2=tmp; + } + if ((c2==0 && c1 < 0x80) || c2==EOF) { + (*oconv)(c2, c1); + return 0; + } + ret = w16e_conv(((c2<<8)&0xff00) + c1, &c2, &c1); + if (ret) return ret; + (*oconv)(c2, c1); + return 0; +} + +int +w_iconv_common(c1, c0, pp, psize, p2, p1) + int c1,c0; + unsigned short **pp; + int psize; + int *p2, *p1; +{ + int c2; + unsigned short *p ; + unsigned short val; + + if (pp == 0) return 1; + + c1 -= 0x80; + if (c1 < 0 || psize <= c1) return 1; + p = pp[c1]; + if (p == 0) return 1; + + c0 -= 0x80; + if (c0 < 0 || sizeof_utf8_to_euc_E5B8 <= c0) return 1; + val = p[c0]; + if (val == 0) return 1; + + c2 = val >> 8; + if (c2 == SO) c2 = X0201; + c1 = val & 0x7f; + if (p2) *p2 = c2; + if (p1) *p1 = c1; + return 0; +} + +#endif + +#ifdef UTF8_OUTPUT_ENABLE +int +e2w_conv(c2, c1) + int c2, c1; +{ + extern unsigned short euc_to_utf8_1byte[]; + extern unsigned short * euc_to_utf8_2bytes[]; + unsigned short *p; + + if (c2 == X0201) { + p = euc_to_utf8_1byte; + } else { + c2 &= 0x7f; + c2 = (c2&0x7f) - 0x21; + if (0<=c2 && c2<sizeof_euc_to_utf8_2bytes) + p = euc_to_utf8_2bytes[c2]; + else + return 0; + } + if (!p) return 0; + c1 = (c1 & 0x7f) - 0x21; + if (0<=c1 && c1<sizeof_euc_to_utf8_1byte) + return p[c1]; + return 0; +} + +void +w_oconv(c2, c1) + int c2, + c1; +{ + int c0; +#ifdef NUMCHAR_OPTION + if (c2 == 0 && (c1 & CLASS_MASK) == CLASS_UTF16){ + w16w_conv(c1, &c2, &c1, &c0); + (*o_putc)(c2); + if (c1){ + (*o_putc)(c1); + if (c0) (*o_putc)(c0); + } + } +#endif + if (c2 == EOF) { + (*o_putc)(EOF); + return; + } else if (c2 == 0) { + output_mode = ASCII; + (*o_putc)(c1); + } else if (c2 == ISO8859_1) { + output_mode = ISO8859_1; + (*o_putc)(c1 | 0x080); + } else { + output_mode = UTF8; + w16w_conv((unsigned short)e2w_conv(c2, c1), &c2, &c1, &c0); + (*o_putc)(c2); + if (c1){ + (*o_putc)(c1); + if (c0) (*o_putc)(c0); + } + } +} + +void +w_oconv16(c2, c1) + int c2, + c1; +{ + if (c2 == EOF) { + (*o_putc)(EOF); + return; + } + + if (w_oconv16_begin_f==2) { + if (w_oconv16_LE){ + (*o_putc)((unsigned char)'\377'); + (*o_putc)('\376'); + }else{ + (*o_putc)('\376'); + (*o_putc)((unsigned char)'\377'); + } + w_oconv16_begin_f=1; + } + + if (c2 == ISO8859_1) { + c2 = 0; + c1 |= 0x80; +#ifdef NUMCHAR_OPTION + } else if (c2 == 0 && (c1 & CLASS_MASK) == CLASS_UTF16) { + c2 = (c1 >> 8) & 0xff; + c1 &= 0xff; +#endif + } else if (c2) { + unsigned short val = (unsigned short)e2w_conv(c2, c1); + c2 = (val >> 8) & 0xff; + c1 = val & 0xff; + } + if (w_oconv16_LE){ + (*o_putc)(c1); + (*o_putc)(c2); + }else{ + (*o_putc)(c2); + (*o_putc)(c1); + } +} + +#endif + +void +e_oconv(c2, c1) + int c2, + c1; +{ +#ifdef NUMCHAR_OPTION + if (c2 == 0 && (c1 & CLASS_MASK) == CLASS_UTF16){ + w16e_conv(c1, &c2, &c1); + } +#endif + if (c2 == EOF) { + (*o_putc)(EOF); + return; + } else if (c2 == 0) { + output_mode = ASCII; + (*o_putc)(c1); + } else if (c2 == X0201) { + output_mode = JAPANESE_EUC; + (*o_putc)(SSO); (*o_putc)(c1|0x80); + } else if (c2 == ISO8859_1) { + output_mode = ISO8859_1; + (*o_putc)(c1 | 0x080); + } else { + if ((c1<0x21 || 0x7e<c1) || + (c2<0x21 || 0x7e<c2)) { + set_iconv(FALSE, 0); + return; /* too late to rescue this char */ + } + output_mode = JAPANESE_EUC; + (*o_putc)(c2 | 0x080); + (*o_putc)(c1 | 0x080); + } +} + +void +e2s_conv(c2, c1, p2, p1) + int c2, c1, *p2, *p1; +{ + if (p2) *p2 = ((c2 - 1) >> 1) + ((c2 <= 0x5e) ? 0x71 : 0xb1); + if (p1) *p1 = c1 + ((c2 & 1) ? ((c1 < 0x60) ? 0x1f : 0x20) : 0x7e); +} + +void +s_oconv(c2, c1) + int c2, + c1; +{ +#ifdef NUMCHAR_OPTION + if (c2 == 0 && (c1 & CLASS_MASK) == CLASS_UTF16){ + w16e_conv(c1, &c2, &c1); + } +#endif + if (c2 == EOF) { + (*o_putc)(EOF); + return; + } else if (c2 == 0) { + output_mode = ASCII; + (*o_putc)(c1); + } else if (c2 == X0201) { + output_mode = SHIFT_JIS; + (*o_putc)(c1|0x80); + } else if (c2 == ISO8859_1) { + output_mode = ISO8859_1; + (*o_putc)(c1 | 0x080); + } else { + if ((c1<0x20 || 0x7e<c1) || + (c2<0x20 || 0x7e<c2)) { + set_iconv(FALSE, 0); + return; /* too late to rescue this char */ + } + output_mode = SHIFT_JIS; + e2s_conv(c2, c1, &c2, &c1); + +#ifdef SHIFTJIS_CP932 + if (cp932inv_f + && CP932INV_TABLE_BEGIN <= c2 && c2 <= CP932INV_TABLE_END){ + extern unsigned short cp932inv[2][189]; + int c = cp932inv[c2 - CP932INV_TABLE_BEGIN][c1 - 0x40]; + if (c){ + c2 = c >> 8; + c1 = c & 0xff; + } + } +#endif /* SHIFTJIS_CP932 */ + + (*o_putc)(c2); + if (prefix_table[(unsigned char)c1]){ + (*o_putc)(prefix_table[(unsigned char)c1]); + } + (*o_putc)(c1); + } +} + +void +j_oconv(c2, c1) + int c2, + c1; +{ +#ifdef NUMCHAR_OPTION + if ((c1 & CLASS_MASK) == CLASS_UTF16){ + w16e_conv(c1, &c2, &c1); + } +#endif + if (c2 == EOF) { + if (output_mode !=ASCII && output_mode!=ISO8859_1) { + (*o_putc)(ESC); + (*o_putc)('('); + (*o_putc)(ascii_intro); + output_mode = ASCII; + } + (*o_putc)(EOF); + } else if (c2==X0201) { + if (output_mode!=X0201) { + output_mode = X0201; + (*o_putc)(ESC); + (*o_putc)('('); + (*o_putc)('I'); + } + (*o_putc)(c1); + } else if (c2==ISO8859_1) { + /* iso8859 introduction, or 8th bit on */ + /* Can we convert in 7bit form using ESC-'-'-A ? + Is this popular? */ + output_mode = ISO8859_1; + (*o_putc)(c1|0x80); + } else if (c2 == 0) { + if (output_mode !=ASCII && output_mode!=ISO8859_1) { + (*o_putc)(ESC); + (*o_putc)('('); + (*o_putc)(ascii_intro); + output_mode = ASCII; + } + (*o_putc)(c1); + } else { + if (output_mode != X0208) { + output_mode = X0208; + (*o_putc)(ESC); + (*o_putc)('$'); + (*o_putc)(kanji_intro); + } + if (c1<0x20 || 0x7e<c1) + return; + if (c2<0x20 || 0x7e<c2) + return; + (*o_putc)(c2); + (*o_putc)(c1); + } +} + +void +base64_conv(c2, c1) + int c2, + c1; +{ + if (base64_count>50 && !mimeout_mode && c2==0 && c1==SPACE) { + (*o_putc)(NL); + } else if (base64_count>66 && mimeout_mode) { + (*o_base64conv)(EOF,0); + (*o_putc)(NL); + (*o_putc)('\t'); base64_count += 7; + } + (*o_base64conv)(c2,c1); +} + + +static int broken_buf[3]; +static int broken_counter = 0; +static int broken_last = 0; +int +broken_getc(f) +FILE *f; +{ + int c,c1; + + if (broken_counter>0) { + return broken_buf[--broken_counter]; + } + c= (*i_bgetc)(f); + if (c=='$' && broken_last != ESC + && (input_mode==ASCII || input_mode==X0201)) { + c1= (*i_bgetc)(f); + broken_last = 0; + if (c1=='@'|| c1=='B') { + broken_buf[0]=c1; broken_buf[1]=c; + broken_counter=2; + return ESC; + } else { + (*i_bungetc)(c1,f); + return c; + } + } else if (c=='(' && broken_last != ESC + && (input_mode==X0208 || input_mode==X0201)) { /* ) */ + c1= (*i_bgetc)(f); + broken_last = 0; + if (c1=='J'|| c1=='B') { + broken_buf[0]=c1; broken_buf[1]=c; + broken_counter=2; + return ESC; + } else { + (*i_bungetc)(c1,f); + return c; + } + } else { + broken_last = c; + return c; + } +} + +int +broken_ungetc(c,f) +int c; +FILE *f; +{ + if (broken_counter<2) + broken_buf[broken_counter++]=c; + return c; +} + +static int prev_cr = 0; + +void +cr_conv(c2,c1) +int c2,c1; +{ + if (prev_cr) { + prev_cr = 0; + if (! (c2==0&&c1==NL) ) { + cr_conv(0,'\n'); + } + } + if (c2) { + (*o_crconv)(c2,c1); + } else if (c1=='\r') { + prev_cr = c1; + } else if (c1=='\n') { + if (crmode_f==CRLF) { + (*o_crconv)(0,'\r'); + } else if (crmode_f==CR) { + (*o_crconv)(0,'\r'); + return; + } + (*o_crconv)(0,NL); + } else if (c1!='\032' || crmode_f!=NL){ + (*o_crconv)(c2,c1); + } +} + +/* + Return value of fold_conv() + + \n add newline and output char + \r add newline and output nothing + ' ' space + 0 skip + 1 (or else) normal output + + fold state in prev (previous character) + + >0x80 Japanese (X0208/X0201) + <0x80 ASCII + \n new line + ' ' space + + This fold algorthm does not preserve heading space in a line. + This is the main difference from fmt. +*/ + +#define char_size(c2,c1) (c2?2:1) + +void +fold_conv(c2,c1) +int c2,c1; +{ + int prev0; + int fold_state=0; + + if (c1== '\r' && !fold_preserve_f) { + fold_state=0; /* ignore cr */ + }else if (c1== '\n'&&f_prev=='\r' && fold_preserve_f) { + f_prev = '\n'; + fold_state=0; /* ignore cr */ + } else if (c1== BS) { + if (f_line>0) f_line--; + fold_state = 1; + } else if (c2==EOF && f_line != 0) { /* close open last line */ + fold_state = '\n'; + } else if ((c1=='\n' && !fold_preserve_f) + || ((c1=='\r'||(c1=='\n'&&f_prev!='\r')) + && fold_preserve_f)) { + /* new line */ + if (fold_preserve_f) { + f_prev = c1; + f_line = 0; + fold_state = '\r'; + } else if ((f_prev == c1 && !fold_preserve_f) + || (f_prev == '\n' && fold_preserve_f) + ) { /* duplicate newline */ + if (f_line) { + f_line = 0; + fold_state = '\n'; /* output two newline */ + } else { + f_line = 0; + fold_state = 1; + } + } else { + if (f_prev&0x80) { /* Japanese? */ + f_prev = c1; + fold_state = 0; /* ignore given single newline */ + } else if (f_prev==' ') { + fold_state = 0; + } else { + f_prev = c1; + if (++f_line<=fold_len) + fold_state = ' '; + else { + f_line = 0; + fold_state = '\r'; /* fold and output nothing */ + } + } + } + } else if (c1=='\f') { + f_prev = '\n'; + if (f_line==0) + fold_state = 1; + f_line = 0; + fold_state = '\n'; /* output newline and clear */ + } else if ( (c2==0 && c1==' ')|| + (c2==0 && c1=='\t')|| + (c2=='!'&& c1=='!')) { + /* X0208 kankaku or ascii space */ + if (f_prev == ' ') { + fold_state = 0; /* remove duplicate spaces */ + } else { + f_prev = ' '; + if (++f_line<=fold_len) + fold_state = ' '; /* output ASCII space only */ + else { + f_prev = ' '; f_line = 0; + fold_state = '\r'; /* fold and output nothing */ + } + } + } else { + prev0 = f_prev; /* we still need this one... , but almost done */ + f_prev = c1; + if (c2 || c2==X0201) + f_prev |= 0x80; /* this is Japanese */ + f_line += char_size(c2,c1); + if (f_line<=fold_len) { /* normal case */ + fold_state = 1; + } else { + if (f_line>=fold_len+fold_margin) { /* too many kinsou suspension */ + f_line = char_size(c2,c1); + fold_state = '\n'; /* We can't wait, do fold now */ + } else if (c2==X0201) { + /* simple kinsoku rules return 1 means no folding */ + if (c1==(0xde&0x7f)) fold_state = 1; /* $B!+(B*/ + else if (c1==(0xdf&0x7f)) fold_state = 1; /* $B!,(B*/ + else if (c1==(0xa4&0x7f)) fold_state = 1; /* $B!#(B*/ + else if (c1==(0xa3&0x7f)) fold_state = 1; /* $B!$(B*/ + else if (c1==(0xa1&0x7f)) fold_state = 1; /* $B!W(B*/ + else if (c1==(0xb0&0x7f)) fold_state = 1; /* - */ + else if (SPACE<=c1 && c1<=(0xdf&0x7f)) { /* X0201 */ + f_line = 1; + fold_state = '\n';/* add one new f_line before this character */ + } else { + f_line = 1; + fold_state = '\n';/* add one new f_line before this character */ + } + } else if (c2==0) { + /* kinsoku point in ASCII */ + if ( c1==')'|| /* { [ ( */ + c1==']'|| + c1=='}'|| + c1=='.'|| + c1==','|| + c1=='!'|| + c1=='?'|| + c1=='/'|| + c1==':'|| + c1==';' ) { + fold_state = 1; + /* just after special */ + } else if (!is_alnum(prev0)) { + f_line = char_size(c2,c1); + fold_state = '\n'; + } else if ((prev0==' ') || /* ignored new f_line */ + (prev0=='\n')|| /* ignored new f_line */ + (prev0&0x80)) { /* X0208 - ASCII */ + f_line = char_size(c2,c1); + fold_state = '\n';/* add one new f_line before this character */ + } else { + fold_state = 1; /* default no fold in ASCII */ + } + } else { + if (c2=='!') { + if (c1=='"') fold_state = 1; /* $B!"(B */ + else if (c1=='#') fold_state = 1; /* $B!#(B */ + else if (c1=='W') fold_state = 1; /* $B!W(B */ + else if (c1=='K') fold_state = 1; /* $B!K(B */ + else if (c1=='$') fold_state = 1; /* $B!$(B */ + else if (c1=='%') fold_state = 1; /* $B!%(B */ + else if (c1=='\'') fold_state = 1; /* $B!\(B */ + else if (c1=='(') fold_state = 1; /* $B!((B */ + else if (c1==')') fold_state = 1; /* $B!)(B */ + else if (c1=='*') fold_state = 1; /* $B!*(B */ + else if (c1=='+') fold_state = 1; /* $B!+(B */ + else if (c1==',') fold_state = 1; /* $B!,(B */ + /* default no fold in kinsoku */ + else { + fold_state = '\n'; + f_line = char_size(c2,c1); + /* add one new f_line before this character */ + } + } else { + f_line = char_size(c2,c1); + fold_state = '\n'; + /* add one new f_line before this character */ + } + } + } + } + /* terminator process */ + switch(fold_state) { + case '\n': + (*o_fconv)(0,'\n'); + (*o_fconv)(c2,c1); + break; + case 0: + return; + case '\r': + (*o_fconv)(0,'\n'); + break; + case '\t': + case ' ': + (*o_fconv)(0,' '); + break; + default: + (*o_fconv)(c2,c1); + } +} + +int z_prev2=0,z_prev1=0; + +void +z_conv(c2,c1) +int c2,c1; +{ + + /* if (c2) c1 &= 0x7f; assertion */ + + if (x0201_f && z_prev2==X0201) { /* X0201 */ + if (c1==(0xde&0x7f)) { /* $BByE@(B */ + z_prev2=0; + (*o_zconv)(dv[(z_prev1-SPACE)*2],dv[(z_prev1-SPACE)*2+1]); + return; + } else if (c1==(0xdf&0x7f)&&ev[(z_prev1-SPACE)*2]) { /* $BH>ByE@(B */ + z_prev2=0; + (*o_zconv)(ev[(z_prev1-SPACE)*2],ev[(z_prev1-SPACE)*2+1]); + return; + } else { + z_prev2=0; + (*o_zconv)(cv[(z_prev1-SPACE)*2],cv[(z_prev1-SPACE)*2+1]); + } + } + + if (c2==EOF) { + (*o_zconv)(c2,c1); + return; + } + + if (x0201_f && c2==X0201) { + if (dv[(c1-SPACE)*2]||ev[(c1-SPACE)*2]) { + /* wait for $BByE@(B or $BH>ByE@(B */ + z_prev1 = c1; z_prev2 = c2; + return; + } else { + (*o_zconv)(cv[(c1-SPACE)*2],cv[(c1-SPACE)*2+1]); + return; + } + } + + /* JISX0208 Alphabet */ + if (alpha_f && c2 == 0x23 ) { + c2 = 0; + } else if (alpha_f && c2 == 0x21 ) { + /* JISX0208 Kigou */ + if (0x21==c1) { + if (alpha_f&0x2) { + c1 = ' '; + c2 = 0; + } else if (alpha_f&0x4) { + (*o_zconv)(0,' '); + (*o_zconv)(0,' '); + return; + } + } else if (0x20<c1 && c1<0x7f && fv[c1-0x20]) { + c1 = fv[c1-0x20]; + c2 = 0; + if (alpha_f&0x8) { + char *entity = 0; + switch (c1){ + case '>': entity = ">"; break; + case '<': entity = "<"; break; + case '\"': entity = """; break; + case '&': entity = "&"; break; + } + if (entity){ + while (*entity) (*o_zconv)(0, *entity++); + return; + } + } + } + } + (*o_zconv)(c2,c1); +} + + +#define rot13(c) ( \ + ( c < 'A' ) ? c: \ + (c <= 'M') ? (c + 13): \ + (c <= 'Z') ? (c - 13): \ + (c < 'a') ? (c): \ + (c <= 'm') ? (c + 13): \ + (c <= 'z') ? (c - 13): \ + (c) \ +) + +#define rot47(c) ( \ + ( c < '!' ) ? c: \ + ( c <= 'O' ) ? (c + 47) : \ + ( c <= '~' ) ? (c - 47) : \ + c \ +) + +void +rot_conv(c2,c1) +int c2,c1; +{ + if (c2==0 || c2==X0201 || c2==ISO8859_1) { + c1 = rot13(c1); + } else if (c2) { + c1 = rot47(c1); + c2 = rot47(c2); + } + (*o_rot_conv)(c2,c1); +} + +void +hira_conv(c2,c1) +int c2,c1; +{ + if ((hira_f & 1) && c2==0x25 && 0x20<c1 && c1<0x74) { + c2 = 0x24; + } else if ((hira_f & 2) && c2==0x24 && 0x20<c1 && c1<0x74) { + c2 = 0x25; + } + (*o_hira_conv)(c2,c1); +} + + +void +iso2022jp_check_conv(c2,c1) +int c2, c1; +{ + static int range[RANGE_NUM_MAX][2] = { + {0x222f, 0x2239,}, + {0x2242, 0x2249,}, + {0x2251, 0x225b,}, + {0x226b, 0x2271,}, + {0x227a, 0x227d,}, + {0x2321, 0x232f,}, + {0x233a, 0x2340,}, + {0x235b, 0x2360,}, + {0x237b, 0x237e,}, + {0x2474, 0x247e,}, + {0x2577, 0x257e,}, + {0x2639, 0x2640,}, + {0x2659, 0x267e,}, + {0x2742, 0x2750,}, + {0x2772, 0x277e,}, + {0x2841, 0x287e,}, + {0x4f54, 0x4f7e,}, + {0x7425, 0x747e}, + }; + int i; + int start, end, c; + + if(c2 >= 0x00 && c2 <= 0x20 && c1 >= 0x7f && c1 <= 0xff) { + c2 = GETA1; + c1 = GETA2; + } + if((c2 >= 0x29 && c2 <= 0x2f) || (c2 >= 0x75 && c2 <= 0x7e)) { + c2 = GETA1; + c1 = GETA2; + } + + for (i = 0; i < RANGE_NUM_MAX; i++) { + start = range[i][0]; + end = range[i][1]; + c = (c2 << 8) + c1; + if (c >= start && c <= end) { + c2 = GETA1; + c1 = GETA2; + } + } + (*o_iso2022jp_check_conv)(c2,c1); +} + + +/* This converts =?ISO-2022-JP?B?HOGE HOGE?= */ + +unsigned char *mime_pattern[] = { + (unsigned char *)"\075?EUC-JP?B?", + (unsigned char *)"\075?SHIFT_JIS?B?", + (unsigned char *)"\075?ISO-8859-1?Q?", + (unsigned char *)"\075?ISO-8859-1?B?", + (unsigned char *)"\075?ISO-2022-JP?B?", + (unsigned char *)"\075?ISO-2022-JP?Q?", +#if defined(UTF8_INPUT_ENABLE) || defined(UTF8_OUTPUT_ENABLE) + (unsigned char *)"\075?UTF-8?B?", +#endif + (unsigned char *)"\075?US-ASCII?Q?", + NULL +}; + + +/* $B3:Ev$9$k%3!<%I$NM%@hEY$r>e$2$k$?$a$NL\0u(B */ +int (*mime_priority_func[])PROTO((int c2, int c1, int c0)) = { + e_iconv, s_iconv, 0, 0, 0, 0, +#if defined(UTF8_INPUT_ENABLE) || defined(UTF8_OUTPUT_ENABLE) + w_iconv, +#endif + 0, +}; + +int mime_encode[] = { + JAPANESE_EUC, SHIFT_JIS,ISO8859_1, ISO8859_1, X0208, X0201, +#if defined(UTF8_INPUT_ENABLE) || defined(UTF8_OUTPUT_ENABLE) + UTF8, +#endif + ASCII, + 0 +}; + +int mime_encode_method[] = { + 'B', 'B','Q', 'B', 'B', 'Q', +#if defined(UTF8_INPUT_ENABLE) || defined(UTF8_OUTPUT_ENABLE) + 'B', +#endif + 'Q', + 0 +}; + + +#define MAXRECOVER 20 + +/* I don't trust portablity of toupper */ +#define nkf_toupper(c) (('a'<=c && c<='z')?(c-('a'-'A')):c) +#define nkf_isdigit(c) ('0'<=c && c<='9') +#define nkf_isxdigit(c) (nkf_isdigit(c) || ('a'<=c && c<='f') || ('A'<=c && c <= 'F')) + +void +switch_mime_getc() +{ + if (i_getc!=mime_getc) { + i_mgetc = i_getc; i_getc = mime_getc; + i_mungetc = i_ungetc; i_ungetc = mime_ungetc; + if(mime_f==STRICT_MIME) { + i_mgetc_buf = i_mgetc; i_mgetc = mime_getc_buf; + i_mungetc_buf = i_mungetc; i_mungetc = mime_ungetc_buf; + } + } +} + +void +unswitch_mime_getc() +{ + if(mime_f==STRICT_MIME) { + i_mgetc = i_mgetc_buf; + i_mungetc = i_mungetc_buf; + } + i_getc = i_mgetc; + i_ungetc = i_mungetc; +} + +int +mime_begin_strict(f) +FILE *f; +{ + int c1 = 0; + int i,j,k; + unsigned char *p,*q; + int r[MAXRECOVER]; /* recovery buffer, max mime pattern lenght */ + + mime_decode_mode = FALSE; + /* =? has been checked */ + j = 0; + p = mime_pattern[j]; + r[0]='='; r[1]='?'; + + for(i=2;p[i]>' ';i++) { /* start at =? */ + if ( ((r[i] = c1 = (*i_getc)(f))==EOF) || nkf_toupper(c1) != p[i] ) { + /* pattern fails, try next one */ + q = p; + while ((p = mime_pattern[++j])) { + for(k=2;k<i;k++) /* assume length(p) > i */ + if (p[k]!=q[k]) break; + if (k==i && nkf_toupper(c1)==p[k]) break; + } + if (p) continue; /* found next one, continue */ + /* all fails, output from recovery buffer */ + (*i_ungetc)(c1,f); + for(j=0;j<i;j++) { + (*oconv)(0,r[j]); + } + return c1; + } + } + mime_decode_mode = p[i-2]; + + clr_code_score(find_inputcode_byfunc(mime_priority_func[j]), SCORE_iMIME); + + if (mime_decode_mode=='B') { + mimebuf_f = unbuf_f; + if (!unbuf_f) { + /* do MIME integrity check */ + return mime_integrity(f,mime_pattern[j]); + } + } + switch_mime_getc(); + mimebuf_f = TRUE; + return c1; +} + +int +mime_getc_buf(f) +FILE *f; +{ + /* we don't keep eof of Fifo, becase it contains ?= as + a terminator. It was checked in mime_integrity. */ + return ((mimebuf_f)? + (*i_mgetc_buf)(f):Fifo(mime_input++)); +} + +int +mime_ungetc_buf(c,f) +FILE *f; +int c; +{ + if (mimebuf_f) + (*i_mungetc_buf)(c,f); + else + Fifo(--mime_input)=c; + return c; +} + +int +mime_begin(f) +FILE *f; +{ + int c1; + int i,k; + + /* In NONSTRICT mode, only =? is checked. In case of failure, we */ + /* re-read and convert again from mime_buffer. */ + + /* =? has been checked */ + k = mime_last; + Fifo(mime_last++)='='; Fifo(mime_last++)='?'; + for(i=2;i<MAXRECOVER;i++) { /* start at =? */ + /* We accept any character type even if it is breaked by new lines */ + c1 = (*i_getc)(f); Fifo(mime_last++)= c1 ; + if (c1=='\n'||c1==' '||c1=='\r'|| + c1=='-'||c1=='_'||is_alnum(c1) ) continue; + if (c1=='=') { + /* Failed. But this could be another MIME preemble */ + (*i_ungetc)(c1,f); + mime_last--; + break; + } + if (c1!='?') break; + else { + /* c1=='?' */ + c1 = (*i_getc)(f); Fifo(mime_last++) = c1; + if (!(++i<MAXRECOVER) || c1==EOF) break; + if (c1=='b'||c1=='B') { + mime_decode_mode = 'B'; + } else if (c1=='q'||c1=='Q') { + mime_decode_mode = 'Q'; + } else { + break; + } + c1 = (*i_getc)(f); Fifo(mime_last++) = c1; + if (!(++i<MAXRECOVER) || c1==EOF) break; + if (c1!='?') { + mime_decode_mode = FALSE; + } + break; + } + } + switch_mime_getc(); + if (!mime_decode_mode) { + /* false MIME premble, restart from mime_buffer */ + mime_decode_mode = 1; /* no decode, but read from the mime_buffer */ + /* Since we are in MIME mode until buffer becomes empty, */ + /* we never go into mime_begin again for a while. */ + return c1; + } + /* discard mime preemble, and goto MIME mode */ + mime_last = k; + /* do no MIME integrity check */ + return c1; /* used only for checking EOF */ +} + +#ifdef CHECK_OPTION +void +no_putc(c) + int c; +{ + ; +} + +void debug(str) + char *str; +{ + if (debug_f){ + fprintf(stderr, "%s\n", str); + } +} +#endif + +void +set_input_codename (codename) + char *codename; +{ + if (guess_f && + is_inputcode_set && + strcmp(codename, "") != 0 && + strcmp(codename, input_codename) != 0) + { + is_inputcode_mixed = TRUE; + } + input_codename = codename; + is_inputcode_set = TRUE; +} + +void +print_guessed_code (filename) + char *filename; +{ + char *codename = "BINARY"; + if (!is_inputcode_mixed) { + if (strcmp(input_codename, "") == 0) { + codename = "ASCII"; + } else { + codename = input_codename; + } + } + if (filename != NULL) printf("%s:", filename); + printf("%s\n", codename); +} + +int +hex2bin(x) + int x; +{ + if (nkf_isdigit(x)) return x - '0'; + return nkf_toupper(x) - 'A' + 10; +} + +#ifdef INPUT_OPTION + +#ifdef ANSI_C_PROTOTYPE +int hex_getc(int ch, FILE *f, int (*g)(FILE *f), int (*u)(int c, FILE *f)) +#else +int +hex_getc(ch, f, g, u) + int ch; + FILE *f; + int (*g)(); + int (*u)(); +#endif +{ + int c1, c2, c3; + c1 = (*g)(f); + if (c1 != ch){ + return c1; + } + c2 = (*g)(f); + if (!nkf_isxdigit(c2)){ + (*u)(c2, f); + return c1; + } + c3 = (*g)(f); + if (!nkf_isxdigit(c3)){ + (*u)(c2, f); + (*u)(c3, f); + return c1; + } + return (hex2bin(c2) << 4) | hex2bin(c3); +} + +int +cap_getc(f) + FILE *f; +{ + return hex_getc(':', f, i_cgetc, i_cungetc); +} + +int +cap_ungetc(c, f) + int c; + FILE *f; +{ + return (*i_cungetc)(c, f); +} + +int +url_getc(f) + FILE *f; +{ + return hex_getc('%', f, i_ugetc, i_uungetc); +} + +int +url_ungetc(c, f) + int c; + FILE *f; +{ + return (*i_uungetc)(c, f); +} +#endif + +#ifdef NUMCHAR_OPTION +int +numchar_getc(f) + FILE *f; +{ + int (*g)() = i_ngetc; + int (*u)() = i_nungetc; + int i = 0, j; + int buf[8]; + long c = -1; + + buf[i] = (*g)(f); + if (buf[i] == '&'){ + buf[++i] = (*g)(f); + if (buf[i] == '#'){ + c = 0; + buf[++i] = (*g)(f); + if (buf[i] == 'x' || buf[i] == 'X'){ + for (j = 0; j < 5; j++){ + buf[++i] = (*g)(f); + if (!nkf_isxdigit(buf[i])){ + if (buf[i] != ';'){ + c = -1; + } + break; + } + c <<= 4; + c |= hex2bin(buf[i]); + } + }else{ + for (j = 0; j < 6; j++){ + if (j){ + buf[++i] = (*g)(f); + } + if (!nkf_isdigit(buf[i])){ + if (buf[i] != ';'){ + c = -1; + } + break; + } + c *= 10; + c += hex2bin(buf[i]); + } + } + } + } + if (c != -1){ + return CLASS_UTF16 | c; + } + while (i > 0){ + (*u)(buf[i], f); + --i; + } + return buf[0]; +} + +int +numchar_ungetc(c, f) + int c; + FILE *f; +{ + return (*i_nungetc)(c, f); +} +#endif + + +int +mime_getc(f) +FILE *f; +{ + int c1, c2, c3, c4, cc; + int t1, t2, t3, t4, mode, exit_mode; + + if (mime_top != mime_last) { /* Something is in FIFO */ + return Fifo(mime_top++); + } + if (mime_decode_mode==1 ||mime_decode_mode==FALSE) { + mime_decode_mode=FALSE; + unswitch_mime_getc(); + return (*i_getc)(f); + } + + if (mimebuf_f == FIXED_MIME) + exit_mode = mime_decode_mode; + else + exit_mode = FALSE; + if (mime_decode_mode == 'Q') { + if ((c1 = (*i_mgetc)(f)) == EOF) return (EOF); +restart_mime_q: + if (c1=='_') return ' '; + if (c1!='=' && c1!='?') { + return c1; + } + + mime_decode_mode = exit_mode; /* prepare for quit */ + if (c1<=' ') return c1; + if ((c2 = (*i_mgetc)(f)) == EOF) return (EOF); + if (c1=='?'&&c2=='=' && mimebuf_f != FIXED_MIME) { + /* end Q encoding */ + input_mode = exit_mode; + while((c1=(*i_getc)(f))!=EOF && c1==SPACE + /* && (c1==NL||c1==TAB||c1=='\r') */ ) ; + return c1; + } + if (c1=='='&&c2<' ') { /* this is soft wrap */ + while((c1 = (*i_mgetc)(f)) <=' ') { + if ((c1 = (*i_mgetc)(f)) == EOF) return (EOF); + } + mime_decode_mode = 'Q'; /* still in MIME */ + goto restart_mime_q; + } + if (c1=='?') { + mime_decode_mode = 'Q'; /* still in MIME */ + (*i_mungetc)(c2,f); + return c1; + } + if ((c3 = (*i_mgetc)(f)) == EOF) return (EOF); + if (c2<=' ') return c2; + mime_decode_mode = 'Q'; /* still in MIME */ +#define hex(c) (('0'<=c&&c<='9')?(c-'0'):\ + ('A'<=c&&c<='F')?(c-'A'+10):('a'<=c&&c<='f')?(c-'a'+10):0) + return ((hex(c2)<<4) + hex(c3)); + } + + if (mime_decode_mode != 'B') { + mime_decode_mode = FALSE; + return (*i_mgetc)(f); + } + + + /* Base64 encoding */ + /* + MIME allows line break in the middle of + Base64, but we are very pessimistic in decoding + in unbuf mode because MIME encoded code may broken by + less or editor's control sequence (such as ESC-[-K in unbuffered + mode. ignore incomplete MIME. + */ + mode = mime_decode_mode; + mime_decode_mode = exit_mode; /* prepare for quit */ + + while ((c1 = (*i_mgetc)(f))<=' ') { + if (c1==EOF) + return (EOF); + } +mime_c2_retry: + if ((c2 = (*i_mgetc)(f))<=' ') { + if (c2==EOF) + return (EOF); + if (mime_f != STRICT_MIME) goto mime_c2_retry; + if (mimebuf_f!=FIXED_MIME) input_mode = ASCII; + return c2; + } + if ((c1 == '?') && (c2 == '=')) { + input_mode = ASCII; + while((c1=(*i_getc)(f))!=EOF && c1==SPACE + /* && (c1==NL||c1==TAB||c1=='\r') */ ) ; + return c1; + } +mime_c3_retry: + if ((c3 = (*i_mgetc)(f))<=' ') { + if (c3==EOF) + return (EOF); + if (mime_f != STRICT_MIME) goto mime_c3_retry; + if (mimebuf_f!=FIXED_MIME) input_mode = ASCII; + return c3; + } +mime_c4_retry: + if ((c4 = (*i_mgetc)(f))<=' ') { + if (c4==EOF) + return (EOF); + if (mime_f != STRICT_MIME) goto mime_c4_retry; + if (mimebuf_f!=FIXED_MIME) input_mode = ASCII; + return c4; + } + + mime_decode_mode = mode; /* still in MIME sigh... */ + + /* BASE 64 decoding */ + + t1 = 0x3f & base64decode(c1); + t2 = 0x3f & base64decode(c2); + t3 = 0x3f & base64decode(c3); + t4 = 0x3f & base64decode(c4); + cc = ((t1 << 2) & 0x0fc) | ((t2 >> 4) & 0x03); + if (c2 != '=') { + Fifo(mime_last++) = cc; + cc = ((t2 << 4) & 0x0f0) | ((t3 >> 2) & 0x0f); + if (c3 != '=') { + Fifo(mime_last++) = cc; + cc = ((t3 << 6) & 0x0c0) | (t4 & 0x3f); + if (c4 != '=') + Fifo(mime_last++) = cc; + } + } else { + return c1; + } + return Fifo(mime_top++); +} + +int +mime_ungetc(c,f) +int c; +FILE *f; +{ + Fifo(--mime_top) = c; + return c; +} + +int +mime_integrity(f,p) +FILE *f; +unsigned char *p; +{ + int c,d; + unsigned int q; + /* In buffered mode, read until =? or NL or buffer full + */ + mime_input = mime_top; + mime_last = mime_top; + while(*p) Fifo(mime_input++) = *p++; + d = 0; + q = mime_input; + while((c=(*i_getc)(f))!=EOF) { + if (((mime_input-mime_top)&MIME_BUF_MASK)==0) { + break; /* buffer full */ + } + if (c=='=' && d=='?') { + /* checked. skip header, start decode */ + Fifo(mime_input++) = c; + /* mime_last_input = mime_input; */ + mime_input = q; + switch_mime_getc(); + return 1; + } + if (!( (c=='+'||c=='/'|| c=='=' || c=='?' || is_alnum(c)))) + break; + /* Should we check length mod 4? */ + Fifo(mime_input++) = c; + d=c; + } + /* In case of Incomplete MIME, no MIME decode */ + Fifo(mime_input++) = c; + mime_last = mime_input; /* point undecoded buffer */ + mime_decode_mode = 1; /* no decode on Fifo last in mime_getc */ + switch_mime_getc(); /* anyway we need buffered getc */ + return 1; +} + +int +base64decode(c) + int c; +{ + int i; + if (c > '@') { + if (c < '[') { + i = c - 'A'; /* A..Z 0-25 */ + } else { + i = c - 'G' /* - 'a' + 26 */ ; /* a..z 26-51 */ + } + } else if (c > '/') { + i = c - '0' + '4' /* - '0' + 52 */ ; /* 0..9 52-61 */ + } else if (c == '+') { + i = '>' /* 62 */ ; /* + 62 */ + } else { + i = '?' /* 63 */ ; /* / 63 */ + } + return (i); +} + +static char basis_64[] = + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + +static int b64c; + +void +open_mime(mode) +int mode; +{ + unsigned char *p; + int i; + p = mime_pattern[0]; + for(i=0;mime_encode[i];i++) { + if (mode == mime_encode[i]) { + p = mime_pattern[i]; + break; + } + } + mimeout_mode = mime_encode_method[i]; + + /* (*o_mputc)(' '); */ + while(*p) { + (*o_mputc)(*p++); + base64_count ++; + } +} + +void +close_mime() +{ + (*o_mputc)('?'); + (*o_mputc)('='); + (*o_mputc)(' '); + base64_count += 3; + mimeout_mode = 0; +} + +#define itoh4(c) (c>=10?c+'A'-10:c+'0') + +void +mime_putc(c) + int c; +{ + if (mimeout_f==FIXED_MIME) { + if (base64_count>71) { + (*o_mputc)('\n'); + base64_count=0; + } + } else if (c==NL) { + base64_count=0; + } + if (c!=EOF) { + if ( c<=DEL &&(output_mode==ASCII ||output_mode == ISO8859_1 ) + && mimeout_f!=FIXED_MIME) { + if (mimeout_mode=='Q') { + if (c<=SPACE) { + close_mime(); + } + (*o_mputc)(c); + return; + } + if (mimeout_mode!='B' || c!=SPACE) { + if (mimeout_mode) { + mime_putc(EOF); + mimeout_mode=0; + } + (*o_mputc)(c); + base64_count ++; + return; + } + } else if (!mimeout_mode && mimeout_f!=FIXED_MIME) { + open_mime(output_mode); + } + } else { /* c==EOF */ + switch(mimeout_mode) { + case 'Q': + case 'B': + break; + case 2: + (*o_mputc)(basis_64[((b64c & 0x3)<< 4)]); + (*o_mputc)('='); + (*o_mputc)('='); + base64_count += 3; + break; + case 1: + (*o_mputc)(basis_64[((b64c & 0xF) << 2)]); + (*o_mputc)('='); + base64_count += 2; + break; + } + if (mimeout_mode) { + if (mimeout_f!=FIXED_MIME) { + close_mime(); + } else if (mimeout_mode != 'Q') + mimeout_mode = 'B'; + } + return; + } + switch(mimeout_mode) { + case 'Q': + if(c>=DEL) { + (*o_mputc)('='); + (*o_mputc)(itoh4(((c>>4)&0xf))); + (*o_mputc)(itoh4((c&0xf))); + } else { + (*o_mputc)(c); + } + break; + case 'B': + b64c=c; + (*o_mputc)(basis_64[c>>2]); + mimeout_mode=2; + base64_count ++; + break; + case 2: + (*o_mputc)(basis_64[((b64c & 0x3)<< 4) | ((c & 0xF0) >> 4)]); + b64c=c; + mimeout_mode=1; + base64_count ++; + break; + case 1: + (*o_mputc)(basis_64[((b64c & 0xF) << 2) | ((c & 0xC0) >>6)]); + (*o_mputc)(basis_64[c & 0x3F]); + mimeout_mode='B'; + base64_count += 2; + break; + } +} + + +#ifdef PERL_XS +void +reinit() +{ + unbuf_f = FALSE; + estab_f = FALSE; + nop_f = FALSE; + binmode_f = TRUE; + rot_f = FALSE; + hira_f = FALSE; + input_f = FALSE; + alpha_f = FALSE; + mime_f = STRICT_MIME; + mimebuf_f = FALSE; + broken_f = FALSE; + iso8859_f = FALSE; +#if defined(MSDOS) || defined(__OS2__) + x0201_f = TRUE; +#else + x0201_f = NO_X0201; +#endif + iso2022jp_f = FALSE; + + kanji_intro = DEFAULT_J; + ascii_intro = DEFAULT_R; + + output_conv = DEFAULT_CONV; + oconv = DEFAULT_CONV; + + i_mgetc = std_getc; + i_mungetc = std_ungetc; + i_mgetc_buf = std_getc; + i_mungetc_buf = std_ungetc; + + i_getc= std_getc; + i_ungetc=std_ungetc; + + i_bgetc= std_getc; + i_bungetc= std_ungetc; + + o_putc = std_putc; + o_mputc = std_putc; + o_crconv = no_connection; + o_rot_conv = no_connection; + o_iso2022jp_check_conv = no_connection; + o_hira_conv = no_connection; + o_fconv = no_connection; + o_zconv = no_connection; + + i_getc = std_getc; + i_ungetc = std_ungetc; + i_mgetc = std_getc; + i_mungetc = std_ungetc; + + output_mode = ASCII; + input_mode = ASCII; + shift_mode = FALSE; + mime_decode_mode = FALSE; + file_out = FALSE; + mimeout_mode = 0; + mimeout_f = FALSE; + base64_count = 0; + option_mode = 0; + crmode_f = 0; + + { + struct input_code *p = input_code_list; + while (p->name){ + status_reinit(p++); + } + } +#ifdef UTF8_OUTPUT_ENABLE + if (w_oconv16_begin_f) { + w_oconv16_begin_f = 2; + } +#endif + f_line = 0; + f_prev = 0; + fold_preserve_f = FALSE; + fold_f = FALSE; + fold_len = 0; + fold_margin = FOLD_MARGIN; + broken_counter = 0; + broken_last = 0; + z_prev2=0,z_prev1=0; + + { + int i; + for (i = 0; i < 256; i++){ + prefix_table[i] = 0; + } + } + input_codename = ""; + is_inputcode_mixed = FALSE; + is_inputcode_set = FALSE; +} +#endif + +void +no_connection(c2,c1) +int c2,c1; +{ + no_connection2(c2,c1,0); +} + +int +no_connection2(c2,c1,c0) +int c2,c1,c0; +{ + fprintf(stderr,"nkf internal module connection failure.\n"); + exit(1); +} + +#ifndef PERL_XS +void +usage() +{ + fprintf(stderr,"USAGE: nkf(nkf32,wnkf,nkf2) -[flags] [in file] .. [out file for -O flag]\n"); + fprintf(stderr,"Flags:\n"); + fprintf(stderr,"b,u Output is buffered (DEFAULT),Output is unbuffered\n"); +#ifdef DEFAULT_CODE_SJIS + fprintf(stderr,"j,s,e,w Outout code is JIS 7 bit, Shift JIS (DEFAULT), AT&T JIS (EUC), UTF-8\n"); +#endif +#ifdef DEFAULT_CODE_JIS + fprintf(stderr,"j,s,e,w Outout code is JIS 7 bit (DEFAULT), Shift JIS, AT&T JIS (EUC), UTF-8\n"); +#endif +#ifdef DEFAULT_CODE_EUC + fprintf(stderr,"j,s,e,w Outout code is JIS 7 bit, Shift JIS, AT&T JIS (EUC) (DEFAULT), UTF-8\n"); +#endif +#ifdef DEFAULT_CODE_UTF8 + fprintf(stderr,"j,s,e,w Outout code is JIS 7 bit, Shift JIS, AT&T JIS (EUC), UTF-8 (DEFAULT)\n"); +#endif + fprintf(stderr,"J,S,E,W Input assumption is JIS 7 bit , Shift JIS, AT&T JIS (EUC), UTF-8\n"); + fprintf(stderr,"t no conversion\n"); + fprintf(stderr,"i_/o_ Output sequence to designate JIS-kanji/ASCII (DEFAULT B)\n"); + fprintf(stderr,"r {de/en}crypt ROT13/47\n"); + fprintf(stderr,"h 1 hirakana->katakana, 2 katakana->hirakana,3 both\n"); + fprintf(stderr,"v Show this usage. V: show version\n"); + fprintf(stderr,"m[BQN0] MIME decode [B:base64,Q:quoted,N:non-strict,0:no decode]\n"); + fprintf(stderr,"M[BQ] MIME encode [B:base64 Q:quoted]\n"); + fprintf(stderr,"l ISO8859-1 (Latin-1) support\n"); + fprintf(stderr,"f/F Folding: -f60 or -f or -f60-10 (fold margin 10) F preserve nl\n"); + fprintf(stderr,"Z[0-3] Convert X0208 alphabet to ASCII 1: Kankaku to space,2: 2 spaces,\n"); + fprintf(stderr," 3: Convert HTML Entity\n"); + fprintf(stderr,"X,x Assume X0201 kana in MS-Kanji, -x preserves X0201\n"); + fprintf(stderr,"B[0-2] Broken input 0: missing ESC,1: any X on ESC-[($]-X,2: ASCII on NL\n"); +#ifdef MSDOS + fprintf(stderr,"T Text mode output\n"); +#endif + fprintf(stderr,"O Output to File (DEFAULT 'nkf.out')\n"); + fprintf(stderr,"d,c Delete \\r in line feed and \\032, Add \\r in line feed\n"); + fprintf(stderr,"I Convert non ISO-2022-JP charactor to GETA\n"); + fprintf(stderr,"-L[uwm] line mode u:LF w:CRLF m:CR (DEFAULT noconversion)\n"); + fprintf(stderr,"long name options\n"); + fprintf(stderr," --fj,--unix,--mac,--windows convert for the system\n"); + fprintf(stderr," --jis,--euc,--sjis,--utf8,--utf16,--mime,--base64 convert for the code\n"); +#ifdef OVERWRITE + fprintf(stderr," --overwrite Overwrite original listed files by filtered result\n"); +#endif + fprintf(stderr," -g, --guess Guess the input code\n"); + fprintf(stderr," --help,--version\n"); + version(); +} + +void +version() +{ + fprintf(stderr,"Network Kanji Filter Version %s (%s) " +#if defined(MSDOS) && !defined(__WIN32__) && !defined(__WIN16__) + "for DOS" +#endif +#if defined(MSDOS) && defined(__WIN16__) + "for Win16" +#endif +#if defined(MSDOS) && defined(__WIN32__) + "for Win32" +#endif +#ifdef __OS2__ + "for OS/2" +#endif + ,Version,Patchlevel); + fprintf(stderr,"\n%s\n",CopyRight); +} +#endif + +/** + ** $B%Q%C%A@):n<T(B + ** void@merope.pleiades.or.jp (Kusakabe Youichi) + ** NIDE Naoyuki <nide@ics.nara-wu.ac.jp> + ** ohta@src.ricoh.co.jp (Junn Ohta) + ** inouet@strl.nhk.or.jp (Tomoyuki Inoue) + ** kiri@pulser.win.or.jp (Tetsuaki Kiriyama) + ** Kimihiko Sato <sato@sail.t.u-tokyo.ac.jp> + ** a_kuroe@kuroe.aoba.yokohama.jp (Akihiko Kuroe) + ** kono@ie.u-ryukyu.ac.jp (Shinji Kono) + ** GHG00637@nifty-serve.or.jp (COW) + ** + **/ + +/* end */ diff --git a/ext/nkf/nkf-utf8/utf8tbl.c b/ext/nkf/nkf-utf8/utf8tbl.c new file mode 100644 index 0000000000..b2e49c49d2 --- /dev/null +++ b/ext/nkf/nkf-utf8/utf8tbl.c @@ -0,0 +1,5313 @@ +#include "config.h" + +#ifdef UTF8_OUTPUT_ENABLE +unsigned short euc_to_utf8_A1[] = { + 0x3000, 0x3001, 0x3002, 0xFF0C, 0xFF0E, 0x30FB, 0xFF1A, + 0xFF1B, 0xFF1F, 0xFF01, 0x309B, 0x309C, 0x00B4, 0xFF40, 0x00A8, + 0xFF3E, 0xFFE3, 0xFF3F, 0x30FD, 0x30FE, 0x309D, 0x309E, 0x3003, + 0x4EDD, 0x3005, 0x3006, 0x3007, 0x30FC, 0x2015, 0x2010, 0xFF0F, + 0xFF3C, 0x301C, 0x2016, 0xFF5C, 0x2026, 0x2025, 0x2018, 0x2019, + 0x201C, 0x201D, 0xFF08, 0xFF09, 0x3014, 0x3015, 0xFF3B, 0xFF3D, + 0xFF5B, 0xFF5D, 0x3008, 0x3009, 0x300A, 0x300B, 0x300C, 0x300D, + 0x300E, 0x300F, 0x3010, 0x3011, 0xFF0B, 0x2212, 0x00B1, 0x00D7, + 0x00F7, 0xFF1D, 0x2260, 0xFF1C, 0xFF1E, 0x2266, 0x2267, 0x221E, + 0x2234, 0x2642, 0x2640, 0x00B0, 0x2032, 0x2033, 0x2103, 0xFFE5, + 0xFF04, 0x00A2, 0x00A3, 0xFF05, 0xFF03, 0xFF06, 0xFF0A, 0xFF20, + 0x00A7, 0x2606, 0x2605, 0x25CB, 0x25CF, 0x25CE, 0x25C7, +}; +unsigned short euc_to_utf8_A2[] = { + 0x25C6, 0x25A1, 0x25A0, 0x25B3, 0x25B2, 0x25BD, 0x25BC, + 0x203B, 0x3012, 0x2192, 0x2190, 0x2191, 0x2193, 0x3013, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x2208, 0x220B, 0x2286, 0x2287, 0x2282, 0x2283, + 0x222A, 0x2229, 0, 0, 0, 0, 0, 0, + 0, 0, 0x2227, 0x2228, 0x00AC, 0x21D2, 0x21D4, 0x2200, + 0x2203, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x2220, 0x22A5, 0x2312, 0x2202, + 0x2207, 0x2261, 0x2252, 0x226A, 0x226B, 0x221A, 0x223D, 0x221D, + 0x2235, 0x222B, 0x222C, 0, 0, 0, 0, 0, + 0, 0, 0x212B, 0x2030, 0x266F, 0x266D, 0x266A, 0x2020, + 0x2021, 0x00B6, 0, 0, 0, 0, 0x25EF, +}; +unsigned short euc_to_utf8_A3[] = { + 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0xFF10, 0xFF11, 0xFF12, 0xFF13, 0xFF14, 0xFF15, 0xFF16, 0xFF17, + 0xFF18, 0xFF19, 0, 0, 0, 0, 0, 0, + 0, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, + 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, + 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, + 0xFF38, 0xFF39, 0xFF3A, 0, 0, 0, 0, 0, + 0, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, + 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, + 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, + 0xFF58, 0xFF59, 0xFF5A, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_A4[] = { + 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047, + 0x3048, 0x3049, 0x304A, 0x304B, 0x304C, 0x304D, 0x304E, 0x304F, + 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057, + 0x3058, 0x3059, 0x305A, 0x305B, 0x305C, 0x305D, 0x305E, 0x305F, + 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067, + 0x3068, 0x3069, 0x306A, 0x306B, 0x306C, 0x306D, 0x306E, 0x306F, + 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077, + 0x3078, 0x3079, 0x307A, 0x307B, 0x307C, 0x307D, 0x307E, 0x307F, + 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, 0x3087, + 0x3088, 0x3089, 0x308A, 0x308B, 0x308C, 0x308D, 0x308E, 0x308F, + 0x3090, 0x3091, 0x3092, 0x3093, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_A5[] = { + 0x30A1, 0x30A2, 0x30A3, 0x30A4, 0x30A5, 0x30A6, 0x30A7, + 0x30A8, 0x30A9, 0x30AA, 0x30AB, 0x30AC, 0x30AD, 0x30AE, 0x30AF, + 0x30B0, 0x30B1, 0x30B2, 0x30B3, 0x30B4, 0x30B5, 0x30B6, 0x30B7, + 0x30B8, 0x30B9, 0x30BA, 0x30BB, 0x30BC, 0x30BD, 0x30BE, 0x30BF, + 0x30C0, 0x30C1, 0x30C2, 0x30C3, 0x30C4, 0x30C5, 0x30C6, 0x30C7, + 0x30C8, 0x30C9, 0x30CA, 0x30CB, 0x30CC, 0x30CD, 0x30CE, 0x30CF, + 0x30D0, 0x30D1, 0x30D2, 0x30D3, 0x30D4, 0x30D5, 0x30D6, 0x30D7, + 0x30D8, 0x30D9, 0x30DA, 0x30DB, 0x30DC, 0x30DD, 0x30DE, 0x30DF, + 0x30E0, 0x30E1, 0x30E2, 0x30E3, 0x30E4, 0x30E5, 0x30E6, 0x30E7, + 0x30E8, 0x30E9, 0x30EA, 0x30EB, 0x30EC, 0x30ED, 0x30EE, 0x30EF, + 0x30F0, 0x30F1, 0x30F2, 0x30F3, 0x30F4, 0x30F5, 0x30F6, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_A6[] = { + 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, + 0x0398, 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F, + 0x03A0, 0x03A1, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7, 0x03A8, + 0x03A9, 0, 0, 0, 0, 0, 0, 0, + 0, 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7, + 0x03B8, 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF, + 0x03C0, 0x03C1, 0x03C3, 0x03C4, 0x03C5, 0x03C6, 0x03C7, 0x03C8, + 0x03C9, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_A7[] = { + 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0401, + 0x0416, 0x0417, 0x0418, 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, + 0x041E, 0x041F, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, + 0x0426, 0x0427, 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, + 0x042E, 0x042F, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0451, + 0x0436, 0x0437, 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, + 0x043E, 0x043F, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, + 0x0446, 0x0447, 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, + 0x044E, 0x044F, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_A8[] = { + 0x2500, 0x2502, 0x250C, 0x2510, 0x2518, 0x2514, 0x251C, + 0x252C, 0x2524, 0x2534, 0x253C, 0x2501, 0x2503, 0x250F, 0x2513, + 0x251B, 0x2517, 0x2523, 0x2533, 0x252B, 0x253B, 0x254B, 0x2520, + 0x252F, 0x2528, 0x2537, 0x253F, 0x251D, 0x2530, 0x2525, 0x2538, + 0x2542, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_A9[] = { + 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, + 0x2467, 0x2468, 0x2469, 0x246A, 0x246B, 0x246C, 0x246D, 0x246E, + 0x246F, 0x2470, 0x2471, 0x2472, 0x2473, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x2474, + 0x2475, 0x2476, 0x2477, 0x2478, 0x2479, 0x247A, 0x247B, 0x247C, + 0x247D, 0x247E, 0x247F, 0x2480, 0x2481, 0x2482, 0x2483, 0x2484, + 0x2485, 0x2486, 0x2487, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x2776, 0x2777, 0x2778, + 0x2779, 0x277A, 0x277B, 0x277C, 0x277D, 0x277E, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x2488, 0x2489, 0x248A, 0x248B, 0x248C, 0x248D, + 0x248E, 0x248F, 0x2490, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_AA[] = { + 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, + 0x2167, 0x2168, 0x2169, 0x216A, 0x216B, 0, 0, 0, + 0, 0, 0, 0, 0, 0x2170, 0x2171, 0x2172, + 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x217A, + 0x217B, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x249C, 0x249D, 0x249E, + 0x249F, 0x24A0, 0x24A1, 0x24A2, 0x24A3, 0x24A4, 0x24A5, 0x24A6, + 0x24A7, 0x24A8, 0x24A9, 0x24AA, 0x24AB, 0x24AC, 0x24AD, 0x24AE, + 0x24AF, 0x24B0, 0x24B1, 0x24B2, 0x24B3, 0x24B4, 0x24B5, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_AB[] = { + 0x339C, 0x339F, 0x339D, 0x33A0, 0x33A4, 0, 0x33A1, + 0x33A5, 0x339E, 0x33A2, 0x338E, 0, 0x338F, 0x33C4, 0x3396, + 0x3397, 0x2113, 0x3398, 0x33B3, 0x33B2, 0x33B1, 0x33B0, 0x2109, + 0x33D4, 0x33CB, 0x3390, 0x3385, 0x3386, 0x3387, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x2116, 0x33CD, 0x2121, 0, +}; +unsigned short euc_to_utf8_AC[] = { + 0x2664, 0x2667, 0x2661, 0x2662, 0x2660, 0x2663, 0x2665, + 0x2666, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x3020, 0x260E, 0x3004, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x261E, 0x261C, 0x261D, 0x261F, 0x21C6, 0x21C4, 0x21C5, + 0, 0x21E8, 0x21E6, 0x21E7, 0x21E9, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_AD[] = { + 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, + 0x2467, 0x2468, 0x2469, 0x246A, 0x246B, 0x246C, 0x246D, 0x246E, + 0x246F, 0x2470, 0x2471, 0x2472, 0x2473, 0x2160, 0x2161, 0x2162, + 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0, + 0x3349, 0x3314, 0x3322, 0x334D, 0x3318, 0x3327, 0x3303, 0x3336, + 0x3351, 0x3357, 0x330D, 0x3326, 0x3323, 0x332B, 0x334A, 0x333B, + 0x339C, 0x339D, 0x339E, 0x338E, 0x338F, 0x33C4, 0x33A1, 0, + 0, 0, 0, 0, 0, 0, 0, 0x337B, + 0x301D, 0x301F, 0x2116, 0x33CD, 0x2121, 0x32A4, 0x32A5, 0x32A6, + 0x32A7, 0x32A8, 0x3231, 0x3232, 0x3239, 0x337E, 0x337D, 0x337C, + 0x2252, 0x2261, 0x222B, 0x222E, 0x2211, 0x221A, 0x22A5, 0x2220, + 0x221F, 0x22BF, 0x2235, 0x2229, 0x222A, 0, 0x3299, +}; +unsigned short euc_to_utf8_AE[] = { + 0x3349, 0x3322, 0x334D, 0x3314, 0x3316, 0x3305, 0x3333, + 0x334E, 0x3303, 0x3336, 0x3318, 0x3315, 0x3327, 0x3351, 0x334A, + 0x3339, 0x3357, 0x330D, 0x3342, 0x3323, 0x3326, 0x333B, 0x332B, + 0, 0, 0, 0, 0, 0, 0, 0x3300, + 0x331E, 0x332A, 0x3331, 0x3347, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x337E, + 0x337D, 0x337C, 0x337B, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x337F, 0, 0, +}; +unsigned short euc_to_utf8_AF[] = { + 0x222E, 0x221F, 0x22BF, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x301D, 0x301F, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x3094, 0, 0x30F7, 0x30F8, 0x30F9, 0x30FA, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_B0[] = { + 0x4E9C, 0x5516, 0x5A03, 0x963F, 0x54C0, 0x611B, 0x6328, + 0x59F6, 0x9022, 0x8475, 0x831C, 0x7A50, 0x60AA, 0x63E1, 0x6E25, + 0x65ED, 0x8466, 0x82A6, 0x9BF5, 0x6893, 0x5727, 0x65A1, 0x6271, + 0x5B9B, 0x59D0, 0x867B, 0x98F4, 0x7D62, 0x7DBE, 0x9B8E, 0x6216, + 0x7C9F, 0x88B7, 0x5B89, 0x5EB5, 0x6309, 0x6697, 0x6848, 0x95C7, + 0x978D, 0x674F, 0x4EE5, 0x4F0A, 0x4F4D, 0x4F9D, 0x5049, 0x56F2, + 0x5937, 0x59D4, 0x5A01, 0x5C09, 0x60DF, 0x610F, 0x6170, 0x6613, + 0x6905, 0x70BA, 0x754F, 0x7570, 0x79FB, 0x7DAD, 0x7DEF, 0x80C3, + 0x840E, 0x8863, 0x8B02, 0x9055, 0x907A, 0x533B, 0x4E95, 0x4EA5, + 0x57DF, 0x80B2, 0x90C1, 0x78EF, 0x4E00, 0x58F1, 0x6EA2, 0x9038, + 0x7A32, 0x8328, 0x828B, 0x9C2F, 0x5141, 0x5370, 0x54BD, 0x54E1, + 0x56E0, 0x59FB, 0x5F15, 0x98F2, 0x6DEB, 0x80E4, 0x852D, +}; +unsigned short euc_to_utf8_B1[] = { + 0x9662, 0x9670, 0x96A0, 0x97FB, 0x540B, 0x53F3, 0x5B87, + 0x70CF, 0x7FBD, 0x8FC2, 0x96E8, 0x536F, 0x9D5C, 0x7ABA, 0x4E11, + 0x7893, 0x81FC, 0x6E26, 0x5618, 0x5504, 0x6B1D, 0x851A, 0x9C3B, + 0x59E5, 0x53A9, 0x6D66, 0x74DC, 0x958F, 0x5642, 0x4E91, 0x904B, + 0x96F2, 0x834F, 0x990C, 0x53E1, 0x55B6, 0x5B30, 0x5F71, 0x6620, + 0x66F3, 0x6804, 0x6C38, 0x6CF3, 0x6D29, 0x745B, 0x76C8, 0x7A4E, + 0x9834, 0x82F1, 0x885B, 0x8A60, 0x92ED, 0x6DB2, 0x75AB, 0x76CA, + 0x99C5, 0x60A6, 0x8B01, 0x8D8A, 0x95B2, 0x698E, 0x53AD, 0x5186, + 0x5712, 0x5830, 0x5944, 0x5BB4, 0x5EF6, 0x6028, 0x63A9, 0x63F4, + 0x6CBF, 0x6F14, 0x708E, 0x7114, 0x7159, 0x71D5, 0x733F, 0x7E01, + 0x8276, 0x82D1, 0x8597, 0x9060, 0x925B, 0x9D1B, 0x5869, 0x65BC, + 0x6C5A, 0x7525, 0x51F9, 0x592E, 0x5965, 0x5F80, 0x5FDC, +}; +unsigned short euc_to_utf8_B2[] = { + 0x62BC, 0x65FA, 0x6A2A, 0x6B27, 0x6BB4, 0x738B, 0x7FC1, + 0x8956, 0x9D2C, 0x9D0E, 0x9EC4, 0x5CA1, 0x6C96, 0x837B, 0x5104, + 0x5C4B, 0x61B6, 0x81C6, 0x6876, 0x7261, 0x4E59, 0x4FFA, 0x5378, + 0x6069, 0x6E29, 0x7A4F, 0x97F3, 0x4E0B, 0x5316, 0x4EEE, 0x4F55, + 0x4F3D, 0x4FA1, 0x4F73, 0x52A0, 0x53EF, 0x5609, 0x590F, 0x5AC1, + 0x5BB6, 0x5BE1, 0x79D1, 0x6687, 0x679C, 0x67B6, 0x6B4C, 0x6CB3, + 0x706B, 0x73C2, 0x798D, 0x79BE, 0x7A3C, 0x7B87, 0x82B1, 0x82DB, + 0x8304, 0x8377, 0x83EF, 0x83D3, 0x8766, 0x8AB2, 0x5629, 0x8CA8, + 0x8FE6, 0x904E, 0x971E, 0x868A, 0x4FC4, 0x5CE8, 0x6211, 0x7259, + 0x753B, 0x81E5, 0x82BD, 0x86FE, 0x8CC0, 0x96C5, 0x9913, 0x99D5, + 0x4ECB, 0x4F1A, 0x89E3, 0x56DE, 0x584A, 0x58CA, 0x5EFB, 0x5FEB, + 0x602A, 0x6094, 0x6062, 0x61D0, 0x6212, 0x62D0, 0x6539, +}; +unsigned short euc_to_utf8_B3[] = { + 0x9B41, 0x6666, 0x68B0, 0x6D77, 0x7070, 0x754C, 0x7686, + 0x7D75, 0x82A5, 0x87F9, 0x958B, 0x968E, 0x8C9D, 0x51F1, 0x52BE, + 0x5916, 0x54B3, 0x5BB3, 0x5D16, 0x6168, 0x6982, 0x6DAF, 0x788D, + 0x84CB, 0x8857, 0x8A72, 0x93A7, 0x9AB8, 0x6D6C, 0x99A8, 0x86D9, + 0x57A3, 0x67FF, 0x86CE, 0x920E, 0x5283, 0x5687, 0x5404, 0x5ED3, + 0x62E1, 0x64B9, 0x683C, 0x6838, 0x6BBB, 0x7372, 0x78BA, 0x7A6B, + 0x899A, 0x89D2, 0x8D6B, 0x8F03, 0x90ED, 0x95A3, 0x9694, 0x9769, + 0x5B66, 0x5CB3, 0x697D, 0x984D, 0x984E, 0x639B, 0x7B20, 0x6A2B, + 0x6A7F, 0x68B6, 0x9C0D, 0x6F5F, 0x5272, 0x559D, 0x6070, 0x62EC, + 0x6D3B, 0x6E07, 0x6ED1, 0x845B, 0x8910, 0x8F44, 0x4E14, 0x9C39, + 0x53F6, 0x691B, 0x6A3A, 0x9784, 0x682A, 0x515C, 0x7AC3, 0x84B2, + 0x91DC, 0x938C, 0x565B, 0x9D28, 0x6822, 0x8305, 0x8431, +}; +unsigned short euc_to_utf8_B4[] = { + 0x7CA5, 0x5208, 0x82C5, 0x74E6, 0x4E7E, 0x4F83, 0x51A0, + 0x5BD2, 0x520A, 0x52D8, 0x52E7, 0x5DFB, 0x559A, 0x582A, 0x59E6, + 0x5B8C, 0x5B98, 0x5BDB, 0x5E72, 0x5E79, 0x60A3, 0x611F, 0x6163, + 0x61BE, 0x63DB, 0x6562, 0x67D1, 0x6853, 0x68FA, 0x6B3E, 0x6B53, + 0x6C57, 0x6F22, 0x6F97, 0x6F45, 0x74B0, 0x7518, 0x76E3, 0x770B, + 0x7AFF, 0x7BA1, 0x7C21, 0x7DE9, 0x7F36, 0x7FF0, 0x809D, 0x8266, + 0x839E, 0x89B3, 0x8ACC, 0x8CAB, 0x9084, 0x9451, 0x9593, 0x9591, + 0x95A2, 0x9665, 0x97D3, 0x9928, 0x8218, 0x4E38, 0x542B, 0x5CB8, + 0x5DCC, 0x73A9, 0x764C, 0x773C, 0x5CA9, 0x7FEB, 0x8D0B, 0x96C1, + 0x9811, 0x9854, 0x9858, 0x4F01, 0x4F0E, 0x5371, 0x559C, 0x5668, + 0x57FA, 0x5947, 0x5B09, 0x5BC4, 0x5C90, 0x5E0C, 0x5E7E, 0x5FCC, + 0x63EE, 0x673A, 0x65D7, 0x65E2, 0x671F, 0x68CB, 0x68C4, +}; +unsigned short euc_to_utf8_B5[] = { + 0x6A5F, 0x5E30, 0x6BC5, 0x6C17, 0x6C7D, 0x757F, 0x7948, + 0x5B63, 0x7A00, 0x7D00, 0x5FBD, 0x898F, 0x8A18, 0x8CB4, 0x8D77, + 0x8ECC, 0x8F1D, 0x98E2, 0x9A0E, 0x9B3C, 0x4E80, 0x507D, 0x5100, + 0x5993, 0x5B9C, 0x622F, 0x6280, 0x64EC, 0x6B3A, 0x72A0, 0x7591, + 0x7947, 0x7FA9, 0x87FB, 0x8ABC, 0x8B70, 0x63AC, 0x83CA, 0x97A0, + 0x5409, 0x5403, 0x55AB, 0x6854, 0x6A58, 0x8A70, 0x7827, 0x6775, + 0x9ECD, 0x5374, 0x5BA2, 0x811A, 0x8650, 0x9006, 0x4E18, 0x4E45, + 0x4EC7, 0x4F11, 0x53CA, 0x5438, 0x5BAE, 0x5F13, 0x6025, 0x6551, + 0x673D, 0x6C42, 0x6C72, 0x6CE3, 0x7078, 0x7403, 0x7A76, 0x7AAE, + 0x7B08, 0x7D1A, 0x7CFE, 0x7D66, 0x65E7, 0x725B, 0x53BB, 0x5C45, + 0x5DE8, 0x62D2, 0x62E0, 0x6319, 0x6E20, 0x865A, 0x8A31, 0x8DDD, + 0x92F8, 0x6F01, 0x79A6, 0x9B5A, 0x4EA8, 0x4EAB, 0x4EAC, +}; +unsigned short euc_to_utf8_B6[] = { + 0x4F9B, 0x4FA0, 0x50D1, 0x5147, 0x7AF6, 0x5171, 0x51F6, + 0x5354, 0x5321, 0x537F, 0x53EB, 0x55AC, 0x5883, 0x5CE1, 0x5F37, + 0x5F4A, 0x602F, 0x6050, 0x606D, 0x631F, 0x6559, 0x6A4B, 0x6CC1, + 0x72C2, 0x72ED, 0x77EF, 0x80F8, 0x8105, 0x8208, 0x854E, 0x90F7, + 0x93E1, 0x97FF, 0x9957, 0x9A5A, 0x4EF0, 0x51DD, 0x5C2D, 0x6681, + 0x696D, 0x5C40, 0x66F2, 0x6975, 0x7389, 0x6850, 0x7C81, 0x50C5, + 0x52E4, 0x5747, 0x5DFE, 0x9326, 0x65A4, 0x6B23, 0x6B3D, 0x7434, + 0x7981, 0x79BD, 0x7B4B, 0x7DCA, 0x82B9, 0x83CC, 0x887F, 0x895F, + 0x8B39, 0x8FD1, 0x91D1, 0x541F, 0x9280, 0x4E5D, 0x5036, 0x53E5, + 0x533A, 0x72D7, 0x7396, 0x77E9, 0x82E6, 0x8EAF, 0x99C6, 0x99C8, + 0x99D2, 0x5177, 0x611A, 0x865E, 0x55B0, 0x7A7A, 0x5076, 0x5BD3, + 0x9047, 0x9685, 0x4E32, 0x6ADB, 0x91E7, 0x5C51, 0x5C48, +}; +unsigned short euc_to_utf8_B7[] = { + 0x6398, 0x7A9F, 0x6C93, 0x9774, 0x8F61, 0x7AAA, 0x718A, + 0x9688, 0x7C82, 0x6817, 0x7E70, 0x6851, 0x936C, 0x52F2, 0x541B, + 0x85AB, 0x8A13, 0x7FA4, 0x8ECD, 0x90E1, 0x5366, 0x8888, 0x7941, + 0x4FC2, 0x50BE, 0x5211, 0x5144, 0x5553, 0x572D, 0x73EA, 0x578B, + 0x5951, 0x5F62, 0x5F84, 0x6075, 0x6176, 0x6167, 0x61A9, 0x63B2, + 0x643A, 0x656C, 0x666F, 0x6842, 0x6E13, 0x7566, 0x7A3D, 0x7CFB, + 0x7D4C, 0x7D99, 0x7E4B, 0x7F6B, 0x830E, 0x834A, 0x86CD, 0x8A08, + 0x8A63, 0x8B66, 0x8EFD, 0x981A, 0x9D8F, 0x82B8, 0x8FCE, 0x9BE8, + 0x5287, 0x621F, 0x6483, 0x6FC0, 0x9699, 0x6841, 0x5091, 0x6B20, + 0x6C7A, 0x6F54, 0x7A74, 0x7D50, 0x8840, 0x8A23, 0x6708, 0x4EF6, + 0x5039, 0x5026, 0x5065, 0x517C, 0x5238, 0x5263, 0x55A7, 0x570F, + 0x5805, 0x5ACC, 0x5EFA, 0x61B2, 0x61F8, 0x62F3, 0x6372, +}; +unsigned short euc_to_utf8_B8[] = { + 0x691C, 0x6A29, 0x727D, 0x72AC, 0x732E, 0x7814, 0x786F, + 0x7D79, 0x770C, 0x80A9, 0x898B, 0x8B19, 0x8CE2, 0x8ED2, 0x9063, + 0x9375, 0x967A, 0x9855, 0x9A13, 0x9E78, 0x5143, 0x539F, 0x53B3, + 0x5E7B, 0x5F26, 0x6E1B, 0x6E90, 0x7384, 0x73FE, 0x7D43, 0x8237, + 0x8A00, 0x8AFA, 0x9650, 0x4E4E, 0x500B, 0x53E4, 0x547C, 0x56FA, + 0x59D1, 0x5B64, 0x5DF1, 0x5EAB, 0x5F27, 0x6238, 0x6545, 0x67AF, + 0x6E56, 0x72D0, 0x7CCA, 0x88B4, 0x80A1, 0x80E1, 0x83F0, 0x864E, + 0x8A87, 0x8DE8, 0x9237, 0x96C7, 0x9867, 0x9F13, 0x4E94, 0x4E92, + 0x4F0D, 0x5348, 0x5449, 0x543E, 0x5A2F, 0x5F8C, 0x5FA1, 0x609F, + 0x68A7, 0x6A8E, 0x745A, 0x7881, 0x8A9E, 0x8AA4, 0x8B77, 0x9190, + 0x4E5E, 0x9BC9, 0x4EA4, 0x4F7C, 0x4FAF, 0x5019, 0x5016, 0x5149, + 0x516C, 0x529F, 0x52B9, 0x52FE, 0x539A, 0x53E3, 0x5411, +}; +unsigned short euc_to_utf8_B9[] = { + 0x540E, 0x5589, 0x5751, 0x57A2, 0x597D, 0x5B54, 0x5B5D, + 0x5B8F, 0x5DE5, 0x5DE7, 0x5DF7, 0x5E78, 0x5E83, 0x5E9A, 0x5EB7, + 0x5F18, 0x6052, 0x614C, 0x6297, 0x62D8, 0x63A7, 0x653B, 0x6602, + 0x6643, 0x66F4, 0x676D, 0x6821, 0x6897, 0x69CB, 0x6C5F, 0x6D2A, + 0x6D69, 0x6E2F, 0x6E9D, 0x7532, 0x7687, 0x786C, 0x7A3F, 0x7CE0, + 0x7D05, 0x7D18, 0x7D5E, 0x7DB1, 0x8015, 0x8003, 0x80AF, 0x80B1, + 0x8154, 0x818F, 0x822A, 0x8352, 0x884C, 0x8861, 0x8B1B, 0x8CA2, + 0x8CFC, 0x90CA, 0x9175, 0x9271, 0x783F, 0x92FC, 0x95A4, 0x964D, + 0x9805, 0x9999, 0x9AD8, 0x9D3B, 0x525B, 0x52AB, 0x53F7, 0x5408, + 0x58D5, 0x62F7, 0x6FE0, 0x8C6A, 0x8F5F, 0x9EB9, 0x514B, 0x523B, + 0x544A, 0x56FD, 0x7A40, 0x9177, 0x9D60, 0x9ED2, 0x7344, 0x6F09, + 0x8170, 0x7511, 0x5FFD, 0x60DA, 0x9AA8, 0x72DB, 0x8FBC, +}; +unsigned short euc_to_utf8_BA[] = { + 0x6B64, 0x9803, 0x4ECA, 0x56F0, 0x5764, 0x58BE, 0x5A5A, + 0x6068, 0x61C7, 0x660F, 0x6606, 0x6839, 0x68B1, 0x6DF7, 0x75D5, + 0x7D3A, 0x826E, 0x9B42, 0x4E9B, 0x4F50, 0x53C9, 0x5506, 0x5D6F, + 0x5DE6, 0x5DEE, 0x67FB, 0x6C99, 0x7473, 0x7802, 0x8A50, 0x9396, + 0x88DF, 0x5750, 0x5EA7, 0x632B, 0x50B5, 0x50AC, 0x518D, 0x6700, + 0x54C9, 0x585E, 0x59BB, 0x5BB0, 0x5F69, 0x624D, 0x63A1, 0x683D, + 0x6B73, 0x6E08, 0x707D, 0x91C7, 0x7280, 0x7815, 0x7826, 0x796D, + 0x658E, 0x7D30, 0x83DC, 0x88C1, 0x8F09, 0x969B, 0x5264, 0x5728, + 0x6750, 0x7F6A, 0x8CA1, 0x51B4, 0x5742, 0x962A, 0x583A, 0x698A, + 0x80B4, 0x54B2, 0x5D0E, 0x57FC, 0x7895, 0x9DFA, 0x4F5C, 0x524A, + 0x548B, 0x643E, 0x6628, 0x6714, 0x67F5, 0x7A84, 0x7B56, 0x7D22, + 0x932F, 0x685C, 0x9BAD, 0x7B39, 0x5319, 0x518A, 0x5237, +}; +unsigned short euc_to_utf8_BB[] = { + 0x5BDF, 0x62F6, 0x64AE, 0x64E6, 0x672D, 0x6BBA, 0x85A9, + 0x96D1, 0x7690, 0x9BD6, 0x634C, 0x9306, 0x9BAB, 0x76BF, 0x6652, + 0x4E09, 0x5098, 0x53C2, 0x5C71, 0x60E8, 0x6492, 0x6563, 0x685F, + 0x71E6, 0x73CA, 0x7523, 0x7B97, 0x7E82, 0x8695, 0x8B83, 0x8CDB, + 0x9178, 0x9910, 0x65AC, 0x66AB, 0x6B8B, 0x4ED5, 0x4ED4, 0x4F3A, + 0x4F7F, 0x523A, 0x53F8, 0x53F2, 0x55E3, 0x56DB, 0x58EB, 0x59CB, + 0x59C9, 0x59FF, 0x5B50, 0x5C4D, 0x5E02, 0x5E2B, 0x5FD7, 0x601D, + 0x6307, 0x652F, 0x5B5C, 0x65AF, 0x65BD, 0x65E8, 0x679D, 0x6B62, + 0x6B7B, 0x6C0F, 0x7345, 0x7949, 0x79C1, 0x7CF8, 0x7D19, 0x7D2B, + 0x80A2, 0x8102, 0x81F3, 0x8996, 0x8A5E, 0x8A69, 0x8A66, 0x8A8C, + 0x8AEE, 0x8CC7, 0x8CDC, 0x96CC, 0x98FC, 0x6B6F, 0x4E8B, 0x4F3C, + 0x4F8D, 0x5150, 0x5B57, 0x5BFA, 0x6148, 0x6301, 0x6642, +}; +unsigned short euc_to_utf8_BC[] = { + 0x6B21, 0x6ECB, 0x6CBB, 0x723E, 0x74BD, 0x75D4, 0x78C1, + 0x793A, 0x800C, 0x8033, 0x81EA, 0x8494, 0x8F9E, 0x6C50, 0x9E7F, + 0x5F0F, 0x8B58, 0x9D2B, 0x7AFA, 0x8EF8, 0x5B8D, 0x96EB, 0x4E03, + 0x53F1, 0x57F7, 0x5931, 0x5AC9, 0x5BA4, 0x6089, 0x6E7F, 0x6F06, + 0x75BE, 0x8CEA, 0x5B9F, 0x8500, 0x7BE0, 0x5072, 0x67F4, 0x829D, + 0x5C61, 0x854A, 0x7E1E, 0x820E, 0x5199, 0x5C04, 0x6368, 0x8D66, + 0x659C, 0x716E, 0x793E, 0x7D17, 0x8005, 0x8B1D, 0x8ECA, 0x906E, + 0x86C7, 0x90AA, 0x501F, 0x52FA, 0x5C3A, 0x6753, 0x707C, 0x7235, + 0x914C, 0x91C8, 0x932B, 0x82E5, 0x5BC2, 0x5F31, 0x60F9, 0x4E3B, + 0x53D6, 0x5B88, 0x624B, 0x6731, 0x6B8A, 0x72E9, 0x73E0, 0x7A2E, + 0x816B, 0x8DA3, 0x9152, 0x9996, 0x5112, 0x53D7, 0x546A, 0x5BFF, + 0x6388, 0x6A39, 0x7DAC, 0x9700, 0x56DA, 0x53CE, 0x5468, +}; +unsigned short euc_to_utf8_BD[] = { + 0x5B97, 0x5C31, 0x5DDE, 0x4FEE, 0x6101, 0x62FE, 0x6D32, + 0x79C0, 0x79CB, 0x7D42, 0x7E4D, 0x7FD2, 0x81ED, 0x821F, 0x8490, + 0x8846, 0x8972, 0x8B90, 0x8E74, 0x8F2F, 0x9031, 0x914B, 0x916C, + 0x96C6, 0x919C, 0x4EC0, 0x4F4F, 0x5145, 0x5341, 0x5F93, 0x620E, + 0x67D4, 0x6C41, 0x6E0B, 0x7363, 0x7E26, 0x91CD, 0x9283, 0x53D4, + 0x5919, 0x5BBF, 0x6DD1, 0x795D, 0x7E2E, 0x7C9B, 0x587E, 0x719F, + 0x51FA, 0x8853, 0x8FF0, 0x4FCA, 0x5CFB, 0x6625, 0x77AC, 0x7AE3, + 0x821C, 0x99FF, 0x51C6, 0x5FAA, 0x65EC, 0x696F, 0x6B89, 0x6DF3, + 0x6E96, 0x6F64, 0x76FE, 0x7D14, 0x5DE1, 0x9075, 0x9187, 0x9806, + 0x51E6, 0x521D, 0x6240, 0x6691, 0x66D9, 0x6E1A, 0x5EB6, 0x7DD2, + 0x7F72, 0x66F8, 0x85AF, 0x85F7, 0x8AF8, 0x52A9, 0x53D9, 0x5973, + 0x5E8F, 0x5F90, 0x6055, 0x92E4, 0x9664, 0x50B7, 0x511F, +}; +unsigned short euc_to_utf8_BE[] = { + 0x52DD, 0x5320, 0x5347, 0x53EC, 0x54E8, 0x5546, 0x5531, + 0x5617, 0x5968, 0x59BE, 0x5A3C, 0x5BB5, 0x5C06, 0x5C0F, 0x5C11, + 0x5C1A, 0x5E84, 0x5E8A, 0x5EE0, 0x5F70, 0x627F, 0x6284, 0x62DB, + 0x638C, 0x6377, 0x6607, 0x660C, 0x662D, 0x6676, 0x677E, 0x68A2, + 0x6A1F, 0x6A35, 0x6CBC, 0x6D88, 0x6E09, 0x6E58, 0x713C, 0x7126, + 0x7167, 0x75C7, 0x7701, 0x785D, 0x7901, 0x7965, 0x79F0, 0x7AE0, + 0x7B11, 0x7CA7, 0x7D39, 0x8096, 0x83D6, 0x848B, 0x8549, 0x885D, + 0x88F3, 0x8A1F, 0x8A3C, 0x8A54, 0x8A73, 0x8C61, 0x8CDE, 0x91A4, + 0x9266, 0x937E, 0x9418, 0x969C, 0x9798, 0x4E0A, 0x4E08, 0x4E1E, + 0x4E57, 0x5197, 0x5270, 0x57CE, 0x5834, 0x58CC, 0x5B22, 0x5E38, + 0x60C5, 0x64FE, 0x6761, 0x6756, 0x6D44, 0x72B6, 0x7573, 0x7A63, + 0x84B8, 0x8B72, 0x91B8, 0x9320, 0x5631, 0x57F4, 0x98FE, +}; +unsigned short euc_to_utf8_BF[] = { + 0x62ED, 0x690D, 0x6B96, 0x71ED, 0x7E54, 0x8077, 0x8272, + 0x89E6, 0x98DF, 0x8755, 0x8FB1, 0x5C3B, 0x4F38, 0x4FE1, 0x4FB5, + 0x5507, 0x5A20, 0x5BDD, 0x5BE9, 0x5FC3, 0x614E, 0x632F, 0x65B0, + 0x664B, 0x68EE, 0x699B, 0x6D78, 0x6DF1, 0x7533, 0x75B9, 0x771F, + 0x795E, 0x79E6, 0x7D33, 0x81E3, 0x82AF, 0x85AA, 0x89AA, 0x8A3A, + 0x8EAB, 0x8F9B, 0x9032, 0x91DD, 0x9707, 0x4EBA, 0x4EC1, 0x5203, + 0x5875, 0x58EC, 0x5C0B, 0x751A, 0x5C3D, 0x814E, 0x8A0A, 0x8FC5, + 0x9663, 0x976D, 0x7B25, 0x8ACF, 0x9808, 0x9162, 0x56F3, 0x53A8, + 0x9017, 0x5439, 0x5782, 0x5E25, 0x63A8, 0x6C34, 0x708A, 0x7761, + 0x7C8B, 0x7FE0, 0x8870, 0x9042, 0x9154, 0x9310, 0x9318, 0x968F, + 0x745E, 0x9AC4, 0x5D07, 0x5D69, 0x6570, 0x67A2, 0x8DA8, 0x96DB, + 0x636E, 0x6749, 0x6919, 0x83C5, 0x9817, 0x96C0, 0x88FE, +}; +unsigned short euc_to_utf8_C0[] = { + 0x6F84, 0x647A, 0x5BF8, 0x4E16, 0x702C, 0x755D, 0x662F, + 0x51C4, 0x5236, 0x52E2, 0x59D3, 0x5F81, 0x6027, 0x6210, 0x653F, + 0x6574, 0x661F, 0x6674, 0x68F2, 0x6816, 0x6B63, 0x6E05, 0x7272, + 0x751F, 0x76DB, 0x7CBE, 0x8056, 0x58F0, 0x88FD, 0x897F, 0x8AA0, + 0x8A93, 0x8ACB, 0x901D, 0x9192, 0x9752, 0x9759, 0x6589, 0x7A0E, + 0x8106, 0x96BB, 0x5E2D, 0x60DC, 0x621A, 0x65A5, 0x6614, 0x6790, + 0x77F3, 0x7A4D, 0x7C4D, 0x7E3E, 0x810A, 0x8CAC, 0x8D64, 0x8DE1, + 0x8E5F, 0x78A9, 0x5207, 0x62D9, 0x63A5, 0x6442, 0x6298, 0x8A2D, + 0x7A83, 0x7BC0, 0x8AAC, 0x96EA, 0x7D76, 0x820C, 0x8749, 0x4ED9, + 0x5148, 0x5343, 0x5360, 0x5BA3, 0x5C02, 0x5C16, 0x5DDD, 0x6226, + 0x6247, 0x64B0, 0x6813, 0x6834, 0x6CC9, 0x6D45, 0x6D17, 0x67D3, + 0x6F5C, 0x714E, 0x717D, 0x65CB, 0x7A7F, 0x7BAD, 0x7DDA, +}; +unsigned short euc_to_utf8_C1[] = { + 0x7E4A, 0x7FA8, 0x817A, 0x821B, 0x8239, 0x85A6, 0x8A6E, + 0x8CCE, 0x8DF5, 0x9078, 0x9077, 0x92AD, 0x9291, 0x9583, 0x9BAE, + 0x524D, 0x5584, 0x6F38, 0x7136, 0x5168, 0x7985, 0x7E55, 0x81B3, + 0x7CCE, 0x564C, 0x5851, 0x5CA8, 0x63AA, 0x66FE, 0x66FD, 0x695A, + 0x72D9, 0x758F, 0x758E, 0x790E, 0x7956, 0x79DF, 0x7C97, 0x7D20, + 0x7D44, 0x8607, 0x8A34, 0x963B, 0x9061, 0x9F20, 0x50E7, 0x5275, + 0x53CC, 0x53E2, 0x5009, 0x55AA, 0x58EE, 0x594F, 0x723D, 0x5B8B, + 0x5C64, 0x531D, 0x60E3, 0x60F3, 0x635C, 0x6383, 0x633F, 0x63BB, + 0x64CD, 0x65E9, 0x66F9, 0x5DE3, 0x69CD, 0x69FD, 0x6F15, 0x71E5, + 0x4E89, 0x75E9, 0x76F8, 0x7A93, 0x7CDF, 0x7DCF, 0x7D9C, 0x8061, + 0x8349, 0x8358, 0x846C, 0x84BC, 0x85FB, 0x88C5, 0x8D70, 0x9001, + 0x906D, 0x9397, 0x971C, 0x9A12, 0x50CF, 0x5897, 0x618E, +}; +unsigned short euc_to_utf8_C2[] = { + 0x81D3, 0x8535, 0x8D08, 0x9020, 0x4FC3, 0x5074, 0x5247, + 0x5373, 0x606F, 0x6349, 0x675F, 0x6E2C, 0x8DB3, 0x901F, 0x4FD7, + 0x5C5E, 0x8CCA, 0x65CF, 0x7D9A, 0x5352, 0x8896, 0x5176, 0x63C3, + 0x5B58, 0x5B6B, 0x5C0A, 0x640D, 0x6751, 0x905C, 0x4ED6, 0x591A, + 0x592A, 0x6C70, 0x8A51, 0x553E, 0x5815, 0x59A5, 0x60F0, 0x6253, + 0x67C1, 0x8235, 0x6955, 0x9640, 0x99C4, 0x9A28, 0x4F53, 0x5806, + 0x5BFE, 0x8010, 0x5CB1, 0x5E2F, 0x5F85, 0x6020, 0x614B, 0x6234, + 0x66FF, 0x6CF0, 0x6EDE, 0x80CE, 0x817F, 0x82D4, 0x888B, 0x8CB8, + 0x9000, 0x902E, 0x968A, 0x9EDB, 0x9BDB, 0x4EE3, 0x53F0, 0x5927, + 0x7B2C, 0x918D, 0x984C, 0x9DF9, 0x6EDD, 0x7027, 0x5353, 0x5544, + 0x5B85, 0x6258, 0x629E, 0x62D3, 0x6CA2, 0x6FEF, 0x7422, 0x8A17, + 0x9438, 0x6FC1, 0x8AFE, 0x8338, 0x51E7, 0x86F8, 0x53EA, +}; +unsigned short euc_to_utf8_C3[] = { + 0x53E9, 0x4F46, 0x9054, 0x8FB0, 0x596A, 0x8131, 0x5DFD, + 0x7AEA, 0x8FBF, 0x68DA, 0x8C37, 0x72F8, 0x9C48, 0x6A3D, 0x8AB0, + 0x4E39, 0x5358, 0x5606, 0x5766, 0x62C5, 0x63A2, 0x65E6, 0x6B4E, + 0x6DE1, 0x6E5B, 0x70AD, 0x77ED, 0x7AEF, 0x7BAA, 0x7DBB, 0x803D, + 0x80C6, 0x86CB, 0x8A95, 0x935B, 0x56E3, 0x58C7, 0x5F3E, 0x65AD, + 0x6696, 0x6A80, 0x6BB5, 0x7537, 0x8AC7, 0x5024, 0x77E5, 0x5730, + 0x5F1B, 0x6065, 0x667A, 0x6C60, 0x75F4, 0x7A1A, 0x7F6E, 0x81F4, + 0x8718, 0x9045, 0x99B3, 0x7BC9, 0x755C, 0x7AF9, 0x7B51, 0x84C4, + 0x9010, 0x79E9, 0x7A92, 0x8336, 0x5AE1, 0x7740, 0x4E2D, 0x4EF2, + 0x5B99, 0x5FE0, 0x62BD, 0x663C, 0x67F1, 0x6CE8, 0x866B, 0x8877, + 0x8A3B, 0x914E, 0x92F3, 0x99D0, 0x6A17, 0x7026, 0x732A, 0x82E7, + 0x8457, 0x8CAF, 0x4E01, 0x5146, 0x51CB, 0x558B, 0x5BF5, +}; +unsigned short euc_to_utf8_C4[] = { + 0x5E16, 0x5E33, 0x5E81, 0x5F14, 0x5F35, 0x5F6B, 0x5FB4, + 0x61F2, 0x6311, 0x66A2, 0x671D, 0x6F6E, 0x7252, 0x753A, 0x773A, + 0x8074, 0x8139, 0x8178, 0x8776, 0x8ABF, 0x8ADC, 0x8D85, 0x8DF3, + 0x929A, 0x9577, 0x9802, 0x9CE5, 0x52C5, 0x6357, 0x76F4, 0x6715, + 0x6C88, 0x73CD, 0x8CC3, 0x93AE, 0x9673, 0x6D25, 0x589C, 0x690E, + 0x69CC, 0x8FFD, 0x939A, 0x75DB, 0x901A, 0x585A, 0x6802, 0x63B4, + 0x69FB, 0x4F43, 0x6F2C, 0x67D8, 0x8FBB, 0x8526, 0x7DB4, 0x9354, + 0x693F, 0x6F70, 0x576A, 0x58F7, 0x5B2C, 0x7D2C, 0x722A, 0x540A, + 0x91E3, 0x9DB4, 0x4EAD, 0x4F4E, 0x505C, 0x5075, 0x5243, 0x8C9E, + 0x5448, 0x5824, 0x5B9A, 0x5E1D, 0x5E95, 0x5EAD, 0x5EF7, 0x5F1F, + 0x608C, 0x62B5, 0x633A, 0x63D0, 0x68AF, 0x6C40, 0x7887, 0x798E, + 0x7A0B, 0x7DE0, 0x8247, 0x8A02, 0x8AE6, 0x8E44, 0x9013, +}; +unsigned short euc_to_utf8_C5[] = { + 0x90B8, 0x912D, 0x91D8, 0x9F0E, 0x6CE5, 0x6458, 0x64E2, + 0x6575, 0x6EF4, 0x7684, 0x7B1B, 0x9069, 0x93D1, 0x6EBA, 0x54F2, + 0x5FB9, 0x64A4, 0x8F4D, 0x8FED, 0x9244, 0x5178, 0x586B, 0x5929, + 0x5C55, 0x5E97, 0x6DFB, 0x7E8F, 0x751C, 0x8CBC, 0x8EE2, 0x985B, + 0x70B9, 0x4F1D, 0x6BBF, 0x6FB1, 0x7530, 0x96FB, 0x514E, 0x5410, + 0x5835, 0x5857, 0x59AC, 0x5C60, 0x5F92, 0x6597, 0x675C, 0x6E21, + 0x767B, 0x83DF, 0x8CED, 0x9014, 0x90FD, 0x934D, 0x7825, 0x783A, + 0x52AA, 0x5EA6, 0x571F, 0x5974, 0x6012, 0x5012, 0x515A, 0x51AC, + 0x51CD, 0x5200, 0x5510, 0x5854, 0x5858, 0x5957, 0x5B95, 0x5CF6, + 0x5D8B, 0x60BC, 0x6295, 0x642D, 0x6771, 0x6843, 0x68BC, 0x68DF, + 0x76D7, 0x6DD8, 0x6E6F, 0x6D9B, 0x706F, 0x71C8, 0x5F53, 0x75D8, + 0x7977, 0x7B49, 0x7B54, 0x7B52, 0x7CD6, 0x7D71, 0x5230, +}; +unsigned short euc_to_utf8_C6[] = { + 0x8463, 0x8569, 0x85E4, 0x8A0E, 0x8B04, 0x8C46, 0x8E0F, + 0x9003, 0x900F, 0x9419, 0x9676, 0x982D, 0x9A30, 0x95D8, 0x50CD, + 0x52D5, 0x540C, 0x5802, 0x5C0E, 0x61A7, 0x649E, 0x6D1E, 0x77B3, + 0x7AE5, 0x80F4, 0x8404, 0x9053, 0x9285, 0x5CE0, 0x9D07, 0x533F, + 0x5F97, 0x5FB3, 0x6D9C, 0x7279, 0x7763, 0x79BF, 0x7BE4, 0x6BD2, + 0x72EC, 0x8AAD, 0x6803, 0x6A61, 0x51F8, 0x7A81, 0x6934, 0x5C4A, + 0x9CF6, 0x82EB, 0x5BC5, 0x9149, 0x701E, 0x5678, 0x5C6F, 0x60C7, + 0x6566, 0x6C8C, 0x8C5A, 0x9041, 0x9813, 0x5451, 0x66C7, 0x920D, + 0x5948, 0x90A3, 0x5185, 0x4E4D, 0x51EA, 0x8599, 0x8B0E, 0x7058, + 0x637A, 0x934B, 0x6962, 0x99B4, 0x7E04, 0x7577, 0x5357, 0x6960, + 0x8EDF, 0x96E3, 0x6C5D, 0x4E8C, 0x5C3C, 0x5F10, 0x8FE9, 0x5302, + 0x8CD1, 0x8089, 0x8679, 0x5EFF, 0x65E5, 0x4E73, 0x5165, +}; +unsigned short euc_to_utf8_C7[] = { + 0x5982, 0x5C3F, 0x97EE, 0x4EFB, 0x598A, 0x5FCD, 0x8A8D, + 0x6FE1, 0x79B0, 0x7962, 0x5BE7, 0x8471, 0x732B, 0x71B1, 0x5E74, + 0x5FF5, 0x637B, 0x649A, 0x71C3, 0x7C98, 0x4E43, 0x5EFC, 0x4E4B, + 0x57DC, 0x56A2, 0x60A9, 0x6FC3, 0x7D0D, 0x80FD, 0x8133, 0x81BF, + 0x8FB2, 0x8997, 0x86A4, 0x5DF4, 0x628A, 0x64AD, 0x8987, 0x6777, + 0x6CE2, 0x6D3E, 0x7436, 0x7834, 0x5A46, 0x7F75, 0x82AD, 0x99AC, + 0x4FF3, 0x5EC3, 0x62DD, 0x6392, 0x6557, 0x676F, 0x76C3, 0x724C, + 0x80CC, 0x80BA, 0x8F29, 0x914D, 0x500D, 0x57F9, 0x5A92, 0x6885, + 0x6973, 0x7164, 0x72FD, 0x8CB7, 0x58F2, 0x8CE0, 0x966A, 0x9019, + 0x877F, 0x79E4, 0x77E7, 0x8429, 0x4F2F, 0x5265, 0x535A, 0x62CD, + 0x67CF, 0x6CCA, 0x767D, 0x7B94, 0x7C95, 0x8236, 0x8584, 0x8FEB, + 0x66DD, 0x6F20, 0x7206, 0x7E1B, 0x83AB, 0x99C1, 0x9EA6, +}; +unsigned short euc_to_utf8_C8[] = { + 0x51FD, 0x7BB1, 0x7872, 0x7BB8, 0x8087, 0x7B48, 0x6AE8, + 0x5E61, 0x808C, 0x7551, 0x7560, 0x516B, 0x9262, 0x6E8C, 0x767A, + 0x9197, 0x9AEA, 0x4F10, 0x7F70, 0x629C, 0x7B4F, 0x95A5, 0x9CE9, + 0x567A, 0x5859, 0x86E4, 0x96BC, 0x4F34, 0x5224, 0x534A, 0x53CD, + 0x53DB, 0x5E06, 0x642C, 0x6591, 0x677F, 0x6C3E, 0x6C4E, 0x7248, + 0x72AF, 0x73ED, 0x7554, 0x7E41, 0x822C, 0x85E9, 0x8CA9, 0x7BC4, + 0x91C6, 0x7169, 0x9812, 0x98EF, 0x633D, 0x6669, 0x756A, 0x76E4, + 0x78D0, 0x8543, 0x86EE, 0x532A, 0x5351, 0x5426, 0x5983, 0x5E87, + 0x5F7C, 0x60B2, 0x6249, 0x6279, 0x62AB, 0x6590, 0x6BD4, 0x6CCC, + 0x75B2, 0x76AE, 0x7891, 0x79D8, 0x7DCB, 0x7F77, 0x80A5, 0x88AB, + 0x8AB9, 0x8CBB, 0x907F, 0x975E, 0x98DB, 0x6A0B, 0x7C38, 0x5099, + 0x5C3E, 0x5FAE, 0x6787, 0x6BD8, 0x7435, 0x7709, 0x7F8E, +}; +unsigned short euc_to_utf8_C9[] = { + 0x9F3B, 0x67CA, 0x7A17, 0x5339, 0x758B, 0x9AED, 0x5F66, + 0x819D, 0x83F1, 0x8098, 0x5F3C, 0x5FC5, 0x7562, 0x7B46, 0x903C, + 0x6867, 0x59EB, 0x5A9B, 0x7D10, 0x767E, 0x8B2C, 0x4FF5, 0x5F6A, + 0x6A19, 0x6C37, 0x6F02, 0x74E2, 0x7968, 0x8868, 0x8A55, 0x8C79, + 0x5EDF, 0x63CF, 0x75C5, 0x79D2, 0x82D7, 0x9328, 0x92F2, 0x849C, + 0x86ED, 0x9C2D, 0x54C1, 0x5F6C, 0x658C, 0x6D5C, 0x7015, 0x8CA7, + 0x8CD3, 0x983B, 0x654F, 0x74F6, 0x4E0D, 0x4ED8, 0x57E0, 0x592B, + 0x5A66, 0x5BCC, 0x51A8, 0x5E03, 0x5E9C, 0x6016, 0x6276, 0x6577, + 0x65A7, 0x666E, 0x6D6E, 0x7236, 0x7B26, 0x8150, 0x819A, 0x8299, + 0x8B5C, 0x8CA0, 0x8CE6, 0x8D74, 0x961C, 0x9644, 0x4FAE, 0x64AB, + 0x6B66, 0x821E, 0x8461, 0x856A, 0x90E8, 0x5C01, 0x6953, 0x98A8, + 0x847A, 0x8557, 0x4F0F, 0x526F, 0x5FA9, 0x5E45, 0x670D, +}; +unsigned short euc_to_utf8_CA[] = { + 0x798F, 0x8179, 0x8907, 0x8986, 0x6DF5, 0x5F17, 0x6255, + 0x6CB8, 0x4ECF, 0x7269, 0x9B92, 0x5206, 0x543B, 0x5674, 0x58B3, + 0x61A4, 0x626E, 0x711A, 0x596E, 0x7C89, 0x7CDE, 0x7D1B, 0x96F0, + 0x6587, 0x805E, 0x4E19, 0x4F75, 0x5175, 0x5840, 0x5E63, 0x5E73, + 0x5F0A, 0x67C4, 0x4E26, 0x853D, 0x9589, 0x965B, 0x7C73, 0x9801, + 0x50FB, 0x58C1, 0x7656, 0x78A7, 0x5225, 0x77A5, 0x8511, 0x7B86, + 0x504F, 0x5909, 0x7247, 0x7BC7, 0x7DE8, 0x8FBA, 0x8FD4, 0x904D, + 0x4FBF, 0x52C9, 0x5A29, 0x5F01, 0x97AD, 0x4FDD, 0x8217, 0x92EA, + 0x5703, 0x6355, 0x6B69, 0x752B, 0x88DC, 0x8F14, 0x7A42, 0x52DF, + 0x5893, 0x6155, 0x620A, 0x66AE, 0x6BCD, 0x7C3F, 0x83E9, 0x5023, + 0x4FF8, 0x5305, 0x5446, 0x5831, 0x5949, 0x5B9D, 0x5CF0, 0x5CEF, + 0x5D29, 0x5E96, 0x62B1, 0x6367, 0x653E, 0x65B9, 0x670B, +}; +unsigned short euc_to_utf8_CB[] = { + 0x6CD5, 0x6CE1, 0x70F9, 0x7832, 0x7E2B, 0x80DE, 0x82B3, + 0x840C, 0x84EC, 0x8702, 0x8912, 0x8A2A, 0x8C4A, 0x90A6, 0x92D2, + 0x98FD, 0x9CF3, 0x9D6C, 0x4E4F, 0x4EA1, 0x508D, 0x5256, 0x574A, + 0x59A8, 0x5E3D, 0x5FD8, 0x5FD9, 0x623F, 0x66B4, 0x671B, 0x67D0, + 0x68D2, 0x5192, 0x7D21, 0x80AA, 0x81A8, 0x8B00, 0x8C8C, 0x8CBF, + 0x927E, 0x9632, 0x5420, 0x982C, 0x5317, 0x50D5, 0x535C, 0x58A8, + 0x64B2, 0x6734, 0x7267, 0x7766, 0x7A46, 0x91E6, 0x52C3, 0x6CA1, + 0x6B86, 0x5800, 0x5E4C, 0x5954, 0x672C, 0x7FFB, 0x51E1, 0x76C6, + 0x6469, 0x78E8, 0x9B54, 0x9EBB, 0x57CB, 0x59B9, 0x6627, 0x679A, + 0x6BCE, 0x54E9, 0x69D9, 0x5E55, 0x819C, 0x6795, 0x9BAA, 0x67FE, + 0x9C52, 0x685D, 0x4EA6, 0x4FE3, 0x53C8, 0x62B9, 0x672B, 0x6CAB, + 0x8FC4, 0x4FAD, 0x7E6D, 0x9EBF, 0x4E07, 0x6162, 0x6E80, +}; +unsigned short euc_to_utf8_CC[] = { + 0x6F2B, 0x8513, 0x5473, 0x672A, 0x9B45, 0x5DF3, 0x7B95, + 0x5CAC, 0x5BC6, 0x871C, 0x6E4A, 0x84D1, 0x7A14, 0x8108, 0x5999, + 0x7C8D, 0x6C11, 0x7720, 0x52D9, 0x5922, 0x7121, 0x725F, 0x77DB, + 0x9727, 0x9D61, 0x690B, 0x5A7F, 0x5A18, 0x51A5, 0x540D, 0x547D, + 0x660E, 0x76DF, 0x8FF7, 0x9298, 0x9CF4, 0x59EA, 0x725D, 0x6EC5, + 0x514D, 0x68C9, 0x7DBF, 0x7DEC, 0x9762, 0x9EBA, 0x6478, 0x6A21, + 0x8302, 0x5984, 0x5B5F, 0x6BDB, 0x731B, 0x76F2, 0x7DB2, 0x8017, + 0x8499, 0x5132, 0x6728, 0x9ED9, 0x76EE, 0x6762, 0x52FF, 0x9905, + 0x5C24, 0x623B, 0x7C7E, 0x8CB0, 0x554F, 0x60B6, 0x7D0B, 0x9580, + 0x5301, 0x4E5F, 0x51B6, 0x591C, 0x723A, 0x8036, 0x91CE, 0x5F25, + 0x77E2, 0x5384, 0x5F79, 0x7D04, 0x85AC, 0x8A33, 0x8E8D, 0x9756, + 0x67F3, 0x85AE, 0x9453, 0x6109, 0x6108, 0x6CB9, 0x7652, +}; +unsigned short euc_to_utf8_CD[] = { + 0x8AED, 0x8F38, 0x552F, 0x4F51, 0x512A, 0x52C7, 0x53CB, + 0x5BA5, 0x5E7D, 0x60A0, 0x6182, 0x63D6, 0x6709, 0x67DA, 0x6E67, + 0x6D8C, 0x7336, 0x7337, 0x7531, 0x7950, 0x88D5, 0x8A98, 0x904A, + 0x9091, 0x90F5, 0x96C4, 0x878D, 0x5915, 0x4E88, 0x4F59, 0x4E0E, + 0x8A89, 0x8F3F, 0x9810, 0x50AD, 0x5E7C, 0x5996, 0x5BB9, 0x5EB8, + 0x63DA, 0x63FA, 0x64C1, 0x66DC, 0x694A, 0x69D8, 0x6D0B, 0x6EB6, + 0x7194, 0x7528, 0x7AAF, 0x7F8A, 0x8000, 0x8449, 0x84C9, 0x8981, + 0x8B21, 0x8E0A, 0x9065, 0x967D, 0x990A, 0x617E, 0x6291, 0x6B32, + 0x6C83, 0x6D74, 0x7FCC, 0x7FFC, 0x6DC0, 0x7F85, 0x87BA, 0x88F8, + 0x6765, 0x83B1, 0x983C, 0x96F7, 0x6D1B, 0x7D61, 0x843D, 0x916A, + 0x4E71, 0x5375, 0x5D50, 0x6B04, 0x6FEB, 0x85CD, 0x862D, 0x89A7, + 0x5229, 0x540F, 0x5C65, 0x674E, 0x68A8, 0x7406, 0x7483, +}; +unsigned short euc_to_utf8_CE[] = { + 0x75E2, 0x88CF, 0x88E1, 0x91CC, 0x96E2, 0x9678, 0x5F8B, + 0x7387, 0x7ACB, 0x844E, 0x63A0, 0x7565, 0x5289, 0x6D41, 0x6E9C, + 0x7409, 0x7559, 0x786B, 0x7C92, 0x9686, 0x7ADC, 0x9F8D, 0x4FB6, + 0x616E, 0x65C5, 0x865C, 0x4E86, 0x4EAE, 0x50DA, 0x4E21, 0x51CC, + 0x5BEE, 0x6599, 0x6881, 0x6DBC, 0x731F, 0x7642, 0x77AD, 0x7A1C, + 0x7CE7, 0x826F, 0x8AD2, 0x907C, 0x91CF, 0x9675, 0x9818, 0x529B, + 0x7DD1, 0x502B, 0x5398, 0x6797, 0x6DCB, 0x71D0, 0x7433, 0x81E8, + 0x8F2A, 0x96A3, 0x9C57, 0x9E9F, 0x7460, 0x5841, 0x6D99, 0x7D2F, + 0x985E, 0x4EE4, 0x4F36, 0x4F8B, 0x51B7, 0x52B1, 0x5DBA, 0x601C, + 0x73B2, 0x793C, 0x82D3, 0x9234, 0x96B7, 0x96F6, 0x970A, 0x9E97, + 0x9F62, 0x66A6, 0x6B74, 0x5217, 0x52A3, 0x70C8, 0x88C2, 0x5EC9, + 0x604B, 0x6190, 0x6F23, 0x7149, 0x7C3E, 0x7DF4, 0x806F, +}; +unsigned short euc_to_utf8_CF[] = { + 0x84EE, 0x9023, 0x932C, 0x5442, 0x9B6F, 0x6AD3, 0x7089, + 0x8CC2, 0x8DEF, 0x9732, 0x52B4, 0x5A41, 0x5ECA, 0x5F04, 0x6717, + 0x697C, 0x6994, 0x6D6A, 0x6F0F, 0x7262, 0x72FC, 0x7BED, 0x8001, + 0x807E, 0x874B, 0x90CE, 0x516D, 0x9E93, 0x7984, 0x808B, 0x9332, + 0x8AD6, 0x502D, 0x548C, 0x8A71, 0x6B6A, 0x8CC4, 0x8107, 0x60D1, + 0x67A0, 0x9DF2, 0x4E99, 0x4E98, 0x9C10, 0x8A6B, 0x85C1, 0x8568, + 0x6900, 0x6E7E, 0x7897, 0x8155, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_D0[] = { + 0x5F0C, 0x4E10, 0x4E15, 0x4E2A, 0x4E31, 0x4E36, 0x4E3C, + 0x4E3F, 0x4E42, 0x4E56, 0x4E58, 0x4E82, 0x4E85, 0x8C6B, 0x4E8A, + 0x8212, 0x5F0D, 0x4E8E, 0x4E9E, 0x4E9F, 0x4EA0, 0x4EA2, 0x4EB0, + 0x4EB3, 0x4EB6, 0x4ECE, 0x4ECD, 0x4EC4, 0x4EC6, 0x4EC2, 0x4ED7, + 0x4EDE, 0x4EED, 0x4EDF, 0x4EF7, 0x4F09, 0x4F5A, 0x4F30, 0x4F5B, + 0x4F5D, 0x4F57, 0x4F47, 0x4F76, 0x4F88, 0x4F8F, 0x4F98, 0x4F7B, + 0x4F69, 0x4F70, 0x4F91, 0x4F6F, 0x4F86, 0x4F96, 0x5118, 0x4FD4, + 0x4FDF, 0x4FCE, 0x4FD8, 0x4FDB, 0x4FD1, 0x4FDA, 0x4FD0, 0x4FE4, + 0x4FE5, 0x501A, 0x5028, 0x5014, 0x502A, 0x5025, 0x5005, 0x4F1C, + 0x4FF6, 0x5021, 0x5029, 0x502C, 0x4FFE, 0x4FEF, 0x5011, 0x5006, + 0x5043, 0x5047, 0x6703, 0x5055, 0x5050, 0x5048, 0x505A, 0x5056, + 0x506C, 0x5078, 0x5080, 0x509A, 0x5085, 0x50B4, 0x50B2, +}; +unsigned short euc_to_utf8_D1[] = { + 0x50C9, 0x50CA, 0x50B3, 0x50C2, 0x50D6, 0x50DE, 0x50E5, + 0x50ED, 0x50E3, 0x50EE, 0x50F9, 0x50F5, 0x5109, 0x5101, 0x5102, + 0x5116, 0x5115, 0x5114, 0x511A, 0x5121, 0x513A, 0x5137, 0x513C, + 0x513B, 0x513F, 0x5140, 0x5152, 0x514C, 0x5154, 0x5162, 0x7AF8, + 0x5169, 0x516A, 0x516E, 0x5180, 0x5182, 0x56D8, 0x518C, 0x5189, + 0x518F, 0x5191, 0x5193, 0x5195, 0x5196, 0x51A4, 0x51A6, 0x51A2, + 0x51A9, 0x51AA, 0x51AB, 0x51B3, 0x51B1, 0x51B2, 0x51B0, 0x51B5, + 0x51BD, 0x51C5, 0x51C9, 0x51DB, 0x51E0, 0x8655, 0x51E9, 0x51ED, + 0x51F0, 0x51F5, 0x51FE, 0x5204, 0x520B, 0x5214, 0x520E, 0x5227, + 0x522A, 0x522E, 0x5233, 0x5239, 0x524F, 0x5244, 0x524B, 0x524C, + 0x525E, 0x5254, 0x526A, 0x5274, 0x5269, 0x5273, 0x527F, 0x527D, + 0x528D, 0x5294, 0x5292, 0x5271, 0x5288, 0x5291, 0x8FA8, +}; +unsigned short euc_to_utf8_D2[] = { + 0x8FA7, 0x52AC, 0x52AD, 0x52BC, 0x52B5, 0x52C1, 0x52CD, + 0x52D7, 0x52DE, 0x52E3, 0x52E6, 0x98ED, 0x52E0, 0x52F3, 0x52F5, + 0x52F8, 0x52F9, 0x5306, 0x5308, 0x7538, 0x530D, 0x5310, 0x530F, + 0x5315, 0x531A, 0x5323, 0x532F, 0x5331, 0x5333, 0x5338, 0x5340, + 0x5346, 0x5345, 0x4E17, 0x5349, 0x534D, 0x51D6, 0x535E, 0x5369, + 0x536E, 0x5918, 0x537B, 0x5377, 0x5382, 0x5396, 0x53A0, 0x53A6, + 0x53A5, 0x53AE, 0x53B0, 0x53B6, 0x53C3, 0x7C12, 0x96D9, 0x53DF, + 0x66FC, 0x71EE, 0x53EE, 0x53E8, 0x53ED, 0x53FA, 0x5401, 0x543D, + 0x5440, 0x542C, 0x542D, 0x543C, 0x542E, 0x5436, 0x5429, 0x541D, + 0x544E, 0x548F, 0x5475, 0x548E, 0x545F, 0x5471, 0x5477, 0x5470, + 0x5492, 0x547B, 0x5480, 0x5476, 0x5484, 0x5490, 0x5486, 0x54C7, + 0x54A2, 0x54B8, 0x54A5, 0x54AC, 0x54C4, 0x54C8, 0x54A8, +}; +unsigned short euc_to_utf8_D3[] = { + 0x54AB, 0x54C2, 0x54A4, 0x54BE, 0x54BC, 0x54D8, 0x54E5, + 0x54E6, 0x550F, 0x5514, 0x54FD, 0x54EE, 0x54ED, 0x54FA, 0x54E2, + 0x5539, 0x5540, 0x5563, 0x554C, 0x552E, 0x555C, 0x5545, 0x5556, + 0x5557, 0x5538, 0x5533, 0x555D, 0x5599, 0x5580, 0x54AF, 0x558A, + 0x559F, 0x557B, 0x557E, 0x5598, 0x559E, 0x55AE, 0x557C, 0x5583, + 0x55A9, 0x5587, 0x55A8, 0x55DA, 0x55C5, 0x55DF, 0x55C4, 0x55DC, + 0x55E4, 0x55D4, 0x5614, 0x55F7, 0x5616, 0x55FE, 0x55FD, 0x561B, + 0x55F9, 0x564E, 0x5650, 0x71DF, 0x5634, 0x5636, 0x5632, 0x5638, + 0x566B, 0x5664, 0x562F, 0x566C, 0x566A, 0x5686, 0x5680, 0x568A, + 0x56A0, 0x5694, 0x568F, 0x56A5, 0x56AE, 0x56B6, 0x56B4, 0x56C2, + 0x56BC, 0x56C1, 0x56C3, 0x56C0, 0x56C8, 0x56CE, 0x56D1, 0x56D3, + 0x56D7, 0x56EE, 0x56F9, 0x5700, 0x56FF, 0x5704, 0x5709, +}; +unsigned short euc_to_utf8_D4[] = { + 0x5708, 0x570B, 0x570D, 0x5713, 0x5718, 0x5716, 0x55C7, + 0x571C, 0x5726, 0x5737, 0x5738, 0x574E, 0x573B, 0x5740, 0x574F, + 0x5769, 0x57C0, 0x5788, 0x5761, 0x577F, 0x5789, 0x5793, 0x57A0, + 0x57B3, 0x57A4, 0x57AA, 0x57B0, 0x57C3, 0x57C6, 0x57D4, 0x57D2, + 0x57D3, 0x580A, 0x57D6, 0x57E3, 0x580B, 0x5819, 0x581D, 0x5872, + 0x5821, 0x5862, 0x584B, 0x5870, 0x6BC0, 0x5852, 0x583D, 0x5879, + 0x5885, 0x58B9, 0x589F, 0x58AB, 0x58BA, 0x58DE, 0x58BB, 0x58B8, + 0x58AE, 0x58C5, 0x58D3, 0x58D1, 0x58D7, 0x58D9, 0x58D8, 0x58E5, + 0x58DC, 0x58E4, 0x58DF, 0x58EF, 0x58FA, 0x58F9, 0x58FB, 0x58FC, + 0x58FD, 0x5902, 0x590A, 0x5910, 0x591B, 0x68A6, 0x5925, 0x592C, + 0x592D, 0x5932, 0x5938, 0x593E, 0x7AD2, 0x5955, 0x5950, 0x594E, + 0x595A, 0x5958, 0x5962, 0x5960, 0x5967, 0x596C, 0x5969, +}; +unsigned short euc_to_utf8_D5[] = { + 0x5978, 0x5981, 0x599D, 0x4F5E, 0x4FAB, 0x59A3, 0x59B2, + 0x59C6, 0x59E8, 0x59DC, 0x598D, 0x59D9, 0x59DA, 0x5A25, 0x5A1F, + 0x5A11, 0x5A1C, 0x5A09, 0x5A1A, 0x5A40, 0x5A6C, 0x5A49, 0x5A35, + 0x5A36, 0x5A62, 0x5A6A, 0x5A9A, 0x5ABC, 0x5ABE, 0x5ACB, 0x5AC2, + 0x5ABD, 0x5AE3, 0x5AD7, 0x5AE6, 0x5AE9, 0x5AD6, 0x5AFA, 0x5AFB, + 0x5B0C, 0x5B0B, 0x5B16, 0x5B32, 0x5AD0, 0x5B2A, 0x5B36, 0x5B3E, + 0x5B43, 0x5B45, 0x5B40, 0x5B51, 0x5B55, 0x5B5A, 0x5B5B, 0x5B65, + 0x5B69, 0x5B70, 0x5B73, 0x5B75, 0x5B78, 0x6588, 0x5B7A, 0x5B80, + 0x5B83, 0x5BA6, 0x5BB8, 0x5BC3, 0x5BC7, 0x5BC9, 0x5BD4, 0x5BD0, + 0x5BE4, 0x5BE6, 0x5BE2, 0x5BDE, 0x5BE5, 0x5BEB, 0x5BF0, 0x5BF6, + 0x5BF3, 0x5C05, 0x5C07, 0x5C08, 0x5C0D, 0x5C13, 0x5C20, 0x5C22, + 0x5C28, 0x5C38, 0x5C39, 0x5C41, 0x5C46, 0x5C4E, 0x5C53, +}; +unsigned short euc_to_utf8_D6[] = { + 0x5C50, 0x5C4F, 0x5B71, 0x5C6C, 0x5C6E, 0x4E62, 0x5C76, + 0x5C79, 0x5C8C, 0x5C91, 0x5C94, 0x599B, 0x5CAB, 0x5CBB, 0x5CB6, + 0x5CBC, 0x5CB7, 0x5CC5, 0x5CBE, 0x5CC7, 0x5CD9, 0x5CE9, 0x5CFD, + 0x5CFA, 0x5CED, 0x5D8C, 0x5CEA, 0x5D0B, 0x5D15, 0x5D17, 0x5D5C, + 0x5D1F, 0x5D1B, 0x5D11, 0x5D14, 0x5D22, 0x5D1A, 0x5D19, 0x5D18, + 0x5D4C, 0x5D52, 0x5D4E, 0x5D4B, 0x5D6C, 0x5D73, 0x5D76, 0x5D87, + 0x5D84, 0x5D82, 0x5DA2, 0x5D9D, 0x5DAC, 0x5DAE, 0x5DBD, 0x5D90, + 0x5DB7, 0x5DBC, 0x5DC9, 0x5DCD, 0x5DD3, 0x5DD2, 0x5DD6, 0x5DDB, + 0x5DEB, 0x5DF2, 0x5DF5, 0x5E0B, 0x5E1A, 0x5E19, 0x5E11, 0x5E1B, + 0x5E36, 0x5E37, 0x5E44, 0x5E43, 0x5E40, 0x5E4E, 0x5E57, 0x5E54, + 0x5E5F, 0x5E62, 0x5E64, 0x5E47, 0x5E75, 0x5E76, 0x5E7A, 0x9EBC, + 0x5E7F, 0x5EA0, 0x5EC1, 0x5EC2, 0x5EC8, 0x5ED0, 0x5ECF, +}; +unsigned short euc_to_utf8_D7[] = { + 0x5ED6, 0x5EE3, 0x5EDD, 0x5EDA, 0x5EDB, 0x5EE2, 0x5EE1, + 0x5EE8, 0x5EE9, 0x5EEC, 0x5EF1, 0x5EF3, 0x5EF0, 0x5EF4, 0x5EF8, + 0x5EFE, 0x5F03, 0x5F09, 0x5F5D, 0x5F5C, 0x5F0B, 0x5F11, 0x5F16, + 0x5F29, 0x5F2D, 0x5F38, 0x5F41, 0x5F48, 0x5F4C, 0x5F4E, 0x5F2F, + 0x5F51, 0x5F56, 0x5F57, 0x5F59, 0x5F61, 0x5F6D, 0x5F73, 0x5F77, + 0x5F83, 0x5F82, 0x5F7F, 0x5F8A, 0x5F88, 0x5F91, 0x5F87, 0x5F9E, + 0x5F99, 0x5F98, 0x5FA0, 0x5FA8, 0x5FAD, 0x5FBC, 0x5FD6, 0x5FFB, + 0x5FE4, 0x5FF8, 0x5FF1, 0x5FDD, 0x60B3, 0x5FFF, 0x6021, 0x6060, + 0x6019, 0x6010, 0x6029, 0x600E, 0x6031, 0x601B, 0x6015, 0x602B, + 0x6026, 0x600F, 0x603A, 0x605A, 0x6041, 0x606A, 0x6077, 0x605F, + 0x604A, 0x6046, 0x604D, 0x6063, 0x6043, 0x6064, 0x6042, 0x606C, + 0x606B, 0x6059, 0x6081, 0x608D, 0x60E7, 0x6083, 0x609A, +}; +unsigned short euc_to_utf8_D8[] = { + 0x6084, 0x609B, 0x6096, 0x6097, 0x6092, 0x60A7, 0x608B, + 0x60E1, 0x60B8, 0x60E0, 0x60D3, 0x60B4, 0x5FF0, 0x60BD, 0x60C6, + 0x60B5, 0x60D8, 0x614D, 0x6115, 0x6106, 0x60F6, 0x60F7, 0x6100, + 0x60F4, 0x60FA, 0x6103, 0x6121, 0x60FB, 0x60F1, 0x610D, 0x610E, + 0x6147, 0x613E, 0x6128, 0x6127, 0x614A, 0x613F, 0x613C, 0x612C, + 0x6134, 0x613D, 0x6142, 0x6144, 0x6173, 0x6177, 0x6158, 0x6159, + 0x615A, 0x616B, 0x6174, 0x616F, 0x6165, 0x6171, 0x615F, 0x615D, + 0x6153, 0x6175, 0x6199, 0x6196, 0x6187, 0x61AC, 0x6194, 0x619A, + 0x618A, 0x6191, 0x61AB, 0x61AE, 0x61CC, 0x61CA, 0x61C9, 0x61F7, + 0x61C8, 0x61C3, 0x61C6, 0x61BA, 0x61CB, 0x7F79, 0x61CD, 0x61E6, + 0x61E3, 0x61F6, 0x61FA, 0x61F4, 0x61FF, 0x61FD, 0x61FC, 0x61FE, + 0x6200, 0x6208, 0x6209, 0x620D, 0x620C, 0x6214, 0x621B, +}; +unsigned short euc_to_utf8_D9[] = { + 0x621E, 0x6221, 0x622A, 0x622E, 0x6230, 0x6232, 0x6233, + 0x6241, 0x624E, 0x625E, 0x6263, 0x625B, 0x6260, 0x6268, 0x627C, + 0x6282, 0x6289, 0x627E, 0x6292, 0x6293, 0x6296, 0x62D4, 0x6283, + 0x6294, 0x62D7, 0x62D1, 0x62BB, 0x62CF, 0x62FF, 0x62C6, 0x64D4, + 0x62C8, 0x62DC, 0x62CC, 0x62CA, 0x62C2, 0x62C7, 0x629B, 0x62C9, + 0x630C, 0x62EE, 0x62F1, 0x6327, 0x6302, 0x6308, 0x62EF, 0x62F5, + 0x6350, 0x633E, 0x634D, 0x641C, 0x634F, 0x6396, 0x638E, 0x6380, + 0x63AB, 0x6376, 0x63A3, 0x638F, 0x6389, 0x639F, 0x63B5, 0x636B, + 0x6369, 0x63BE, 0x63E9, 0x63C0, 0x63C6, 0x63E3, 0x63C9, 0x63D2, + 0x63F6, 0x63C4, 0x6416, 0x6434, 0x6406, 0x6413, 0x6426, 0x6436, + 0x651D, 0x6417, 0x6428, 0x640F, 0x6467, 0x646F, 0x6476, 0x644E, + 0x652A, 0x6495, 0x6493, 0x64A5, 0x64A9, 0x6488, 0x64BC, +}; +unsigned short euc_to_utf8_DA[] = { + 0x64DA, 0x64D2, 0x64C5, 0x64C7, 0x64BB, 0x64D8, 0x64C2, + 0x64F1, 0x64E7, 0x8209, 0x64E0, 0x64E1, 0x62AC, 0x64E3, 0x64EF, + 0x652C, 0x64F6, 0x64F4, 0x64F2, 0x64FA, 0x6500, 0x64FD, 0x6518, + 0x651C, 0x6505, 0x6524, 0x6523, 0x652B, 0x6534, 0x6535, 0x6537, + 0x6536, 0x6538, 0x754B, 0x6548, 0x6556, 0x6555, 0x654D, 0x6558, + 0x655E, 0x655D, 0x6572, 0x6578, 0x6582, 0x6583, 0x8B8A, 0x659B, + 0x659F, 0x65AB, 0x65B7, 0x65C3, 0x65C6, 0x65C1, 0x65C4, 0x65CC, + 0x65D2, 0x65DB, 0x65D9, 0x65E0, 0x65E1, 0x65F1, 0x6772, 0x660A, + 0x6603, 0x65FB, 0x6773, 0x6635, 0x6636, 0x6634, 0x661C, 0x664F, + 0x6644, 0x6649, 0x6641, 0x665E, 0x665D, 0x6664, 0x6667, 0x6668, + 0x665F, 0x6662, 0x6670, 0x6683, 0x6688, 0x668E, 0x6689, 0x6684, + 0x6698, 0x669D, 0x66C1, 0x66B9, 0x66C9, 0x66BE, 0x66BC, +}; +unsigned short euc_to_utf8_DB[] = { + 0x66C4, 0x66B8, 0x66D6, 0x66DA, 0x66E0, 0x663F, 0x66E6, + 0x66E9, 0x66F0, 0x66F5, 0x66F7, 0x670F, 0x6716, 0x671E, 0x6726, + 0x6727, 0x9738, 0x672E, 0x673F, 0x6736, 0x6741, 0x6738, 0x6737, + 0x6746, 0x675E, 0x6760, 0x6759, 0x6763, 0x6764, 0x6789, 0x6770, + 0x67A9, 0x677C, 0x676A, 0x678C, 0x678B, 0x67A6, 0x67A1, 0x6785, + 0x67B7, 0x67EF, 0x67B4, 0x67EC, 0x67B3, 0x67E9, 0x67B8, 0x67E4, + 0x67DE, 0x67DD, 0x67E2, 0x67EE, 0x67B9, 0x67CE, 0x67C6, 0x67E7, + 0x6A9C, 0x681E, 0x6846, 0x6829, 0x6840, 0x684D, 0x6832, 0x684E, + 0x68B3, 0x682B, 0x6859, 0x6863, 0x6877, 0x687F, 0x689F, 0x688F, + 0x68AD, 0x6894, 0x689D, 0x689B, 0x6883, 0x6AAE, 0x68B9, 0x6874, + 0x68B5, 0x68A0, 0x68BA, 0x690F, 0x688D, 0x687E, 0x6901, 0x68CA, + 0x6908, 0x68D8, 0x6922, 0x6926, 0x68E1, 0x690C, 0x68CD, +}; +unsigned short euc_to_utf8_DC[] = { + 0x68D4, 0x68E7, 0x68D5, 0x6936, 0x6912, 0x6904, 0x68D7, + 0x68E3, 0x6925, 0x68F9, 0x68E0, 0x68EF, 0x6928, 0x692A, 0x691A, + 0x6923, 0x6921, 0x68C6, 0x6979, 0x6977, 0x695C, 0x6978, 0x696B, + 0x6954, 0x697E, 0x696E, 0x6939, 0x6974, 0x693D, 0x6959, 0x6930, + 0x6961, 0x695E, 0x695D, 0x6981, 0x696A, 0x69B2, 0x69AE, 0x69D0, + 0x69BF, 0x69C1, 0x69D3, 0x69BE, 0x69CE, 0x5BE8, 0x69CA, 0x69DD, + 0x69BB, 0x69C3, 0x69A7, 0x6A2E, 0x6991, 0x69A0, 0x699C, 0x6995, + 0x69B4, 0x69DE, 0x69E8, 0x6A02, 0x6A1B, 0x69FF, 0x6B0A, 0x69F9, + 0x69F2, 0x69E7, 0x6A05, 0x69B1, 0x6A1E, 0x69ED, 0x6A14, 0x69EB, + 0x6A0A, 0x6A12, 0x6AC1, 0x6A23, 0x6A13, 0x6A44, 0x6A0C, 0x6A72, + 0x6A36, 0x6A78, 0x6A47, 0x6A62, 0x6A59, 0x6A66, 0x6A48, 0x6A38, + 0x6A22, 0x6A90, 0x6A8D, 0x6AA0, 0x6A84, 0x6AA2, 0x6AA3, +}; +unsigned short euc_to_utf8_DD[] = { + 0x6A97, 0x8617, 0x6ABB, 0x6AC3, 0x6AC2, 0x6AB8, 0x6AB3, + 0x6AAC, 0x6ADE, 0x6AD1, 0x6ADF, 0x6AAA, 0x6ADA, 0x6AEA, 0x6AFB, + 0x6B05, 0x8616, 0x6AFA, 0x6B12, 0x6B16, 0x9B31, 0x6B1F, 0x6B38, + 0x6B37, 0x76DC, 0x6B39, 0x98EE, 0x6B47, 0x6B43, 0x6B49, 0x6B50, + 0x6B59, 0x6B54, 0x6B5B, 0x6B5F, 0x6B61, 0x6B78, 0x6B79, 0x6B7F, + 0x6B80, 0x6B84, 0x6B83, 0x6B8D, 0x6B98, 0x6B95, 0x6B9E, 0x6BA4, + 0x6BAA, 0x6BAB, 0x6BAF, 0x6BB2, 0x6BB1, 0x6BB3, 0x6BB7, 0x6BBC, + 0x6BC6, 0x6BCB, 0x6BD3, 0x6BDF, 0x6BEC, 0x6BEB, 0x6BF3, 0x6BEF, + 0x9EBE, 0x6C08, 0x6C13, 0x6C14, 0x6C1B, 0x6C24, 0x6C23, 0x6C5E, + 0x6C55, 0x6C62, 0x6C6A, 0x6C82, 0x6C8D, 0x6C9A, 0x6C81, 0x6C9B, + 0x6C7E, 0x6C68, 0x6C73, 0x6C92, 0x6C90, 0x6CC4, 0x6CF1, 0x6CD3, + 0x6CBD, 0x6CD7, 0x6CC5, 0x6CDD, 0x6CAE, 0x6CB1, 0x6CBE, +}; +unsigned short euc_to_utf8_DE[] = { + 0x6CBA, 0x6CDB, 0x6CEF, 0x6CD9, 0x6CEA, 0x6D1F, 0x884D, + 0x6D36, 0x6D2B, 0x6D3D, 0x6D38, 0x6D19, 0x6D35, 0x6D33, 0x6D12, + 0x6D0C, 0x6D63, 0x6D93, 0x6D64, 0x6D5A, 0x6D79, 0x6D59, 0x6D8E, + 0x6D95, 0x6FE4, 0x6D85, 0x6DF9, 0x6E15, 0x6E0A, 0x6DB5, 0x6DC7, + 0x6DE6, 0x6DB8, 0x6DC6, 0x6DEC, 0x6DDE, 0x6DCC, 0x6DE8, 0x6DD2, + 0x6DC5, 0x6DFA, 0x6DD9, 0x6DE4, 0x6DD5, 0x6DEA, 0x6DEE, 0x6E2D, + 0x6E6E, 0x6E2E, 0x6E19, 0x6E72, 0x6E5F, 0x6E3E, 0x6E23, 0x6E6B, + 0x6E2B, 0x6E76, 0x6E4D, 0x6E1F, 0x6E43, 0x6E3A, 0x6E4E, 0x6E24, + 0x6EFF, 0x6E1D, 0x6E38, 0x6E82, 0x6EAA, 0x6E98, 0x6EC9, 0x6EB7, + 0x6ED3, 0x6EBD, 0x6EAF, 0x6EC4, 0x6EB2, 0x6ED4, 0x6ED5, 0x6E8F, + 0x6EA5, 0x6EC2, 0x6E9F, 0x6F41, 0x6F11, 0x704C, 0x6EEC, 0x6EF8, + 0x6EFE, 0x6F3F, 0x6EF2, 0x6F31, 0x6EEF, 0x6F32, 0x6ECC, +}; +unsigned short euc_to_utf8_DF[] = { + 0x6F3E, 0x6F13, 0x6EF7, 0x6F86, 0x6F7A, 0x6F78, 0x6F81, + 0x6F80, 0x6F6F, 0x6F5B, 0x6FF3, 0x6F6D, 0x6F82, 0x6F7C, 0x6F58, + 0x6F8E, 0x6F91, 0x6FC2, 0x6F66, 0x6FB3, 0x6FA3, 0x6FA1, 0x6FA4, + 0x6FB9, 0x6FC6, 0x6FAA, 0x6FDF, 0x6FD5, 0x6FEC, 0x6FD4, 0x6FD8, + 0x6FF1, 0x6FEE, 0x6FDB, 0x7009, 0x700B, 0x6FFA, 0x7011, 0x7001, + 0x700F, 0x6FFE, 0x701B, 0x701A, 0x6F74, 0x701D, 0x7018, 0x701F, + 0x7030, 0x703E, 0x7032, 0x7051, 0x7063, 0x7099, 0x7092, 0x70AF, + 0x70F1, 0x70AC, 0x70B8, 0x70B3, 0x70AE, 0x70DF, 0x70CB, 0x70DD, + 0x70D9, 0x7109, 0x70FD, 0x711C, 0x7119, 0x7165, 0x7155, 0x7188, + 0x7166, 0x7162, 0x714C, 0x7156, 0x716C, 0x718F, 0x71FB, 0x7184, + 0x7195, 0x71A8, 0x71AC, 0x71D7, 0x71B9, 0x71BE, 0x71D2, 0x71C9, + 0x71D4, 0x71CE, 0x71E0, 0x71EC, 0x71E7, 0x71F5, 0x71FC, +}; +unsigned short euc_to_utf8_E0[] = { + 0x71F9, 0x71FF, 0x720D, 0x7210, 0x721B, 0x7228, 0x722D, + 0x722C, 0x7230, 0x7232, 0x723B, 0x723C, 0x723F, 0x7240, 0x7246, + 0x724B, 0x7258, 0x7274, 0x727E, 0x7282, 0x7281, 0x7287, 0x7292, + 0x7296, 0x72A2, 0x72A7, 0x72B9, 0x72B2, 0x72C3, 0x72C6, 0x72C4, + 0x72CE, 0x72D2, 0x72E2, 0x72E0, 0x72E1, 0x72F9, 0x72F7, 0x500F, + 0x7317, 0x730A, 0x731C, 0x7316, 0x731D, 0x7334, 0x732F, 0x7329, + 0x7325, 0x733E, 0x734E, 0x734F, 0x9ED8, 0x7357, 0x736A, 0x7368, + 0x7370, 0x7378, 0x7375, 0x737B, 0x737A, 0x73C8, 0x73B3, 0x73CE, + 0x73BB, 0x73C0, 0x73E5, 0x73EE, 0x73DE, 0x74A2, 0x7405, 0x746F, + 0x7425, 0x73F8, 0x7432, 0x743A, 0x7455, 0x743F, 0x745F, 0x7459, + 0x7441, 0x745C, 0x7469, 0x7470, 0x7463, 0x746A, 0x7476, 0x747E, + 0x748B, 0x749E, 0x74A7, 0x74CA, 0x74CF, 0x74D4, 0x73F1, +}; +unsigned short euc_to_utf8_E1[] = { + 0x74E0, 0x74E3, 0x74E7, 0x74E9, 0x74EE, 0x74F2, 0x74F0, + 0x74F1, 0x74F8, 0x74F7, 0x7504, 0x7503, 0x7505, 0x750C, 0x750E, + 0x750D, 0x7515, 0x7513, 0x751E, 0x7526, 0x752C, 0x753C, 0x7544, + 0x754D, 0x754A, 0x7549, 0x755B, 0x7546, 0x755A, 0x7569, 0x7564, + 0x7567, 0x756B, 0x756D, 0x7578, 0x7576, 0x7586, 0x7587, 0x7574, + 0x758A, 0x7589, 0x7582, 0x7594, 0x759A, 0x759D, 0x75A5, 0x75A3, + 0x75C2, 0x75B3, 0x75C3, 0x75B5, 0x75BD, 0x75B8, 0x75BC, 0x75B1, + 0x75CD, 0x75CA, 0x75D2, 0x75D9, 0x75E3, 0x75DE, 0x75FE, 0x75FF, + 0x75FC, 0x7601, 0x75F0, 0x75FA, 0x75F2, 0x75F3, 0x760B, 0x760D, + 0x7609, 0x761F, 0x7627, 0x7620, 0x7621, 0x7622, 0x7624, 0x7634, + 0x7630, 0x763B, 0x7647, 0x7648, 0x7646, 0x765C, 0x7658, 0x7661, + 0x7662, 0x7668, 0x7669, 0x766A, 0x7667, 0x766C, 0x7670, +}; +unsigned short euc_to_utf8_E2[] = { + 0x7672, 0x7676, 0x7678, 0x767C, 0x7680, 0x7683, 0x7688, + 0x768B, 0x768E, 0x7696, 0x7693, 0x7699, 0x769A, 0x76B0, 0x76B4, + 0x76B8, 0x76B9, 0x76BA, 0x76C2, 0x76CD, 0x76D6, 0x76D2, 0x76DE, + 0x76E1, 0x76E5, 0x76E7, 0x76EA, 0x862F, 0x76FB, 0x7708, 0x7707, + 0x7704, 0x7729, 0x7724, 0x771E, 0x7725, 0x7726, 0x771B, 0x7737, + 0x7738, 0x7747, 0x775A, 0x7768, 0x776B, 0x775B, 0x7765, 0x777F, + 0x777E, 0x7779, 0x778E, 0x778B, 0x7791, 0x77A0, 0x779E, 0x77B0, + 0x77B6, 0x77B9, 0x77BF, 0x77BC, 0x77BD, 0x77BB, 0x77C7, 0x77CD, + 0x77D7, 0x77DA, 0x77DC, 0x77E3, 0x77EE, 0x77FC, 0x780C, 0x7812, + 0x7926, 0x7820, 0x792A, 0x7845, 0x788E, 0x7874, 0x7886, 0x787C, + 0x789A, 0x788C, 0x78A3, 0x78B5, 0x78AA, 0x78AF, 0x78D1, 0x78C6, + 0x78CB, 0x78D4, 0x78BE, 0x78BC, 0x78C5, 0x78CA, 0x78EC, +}; +unsigned short euc_to_utf8_E3[] = { + 0x78E7, 0x78DA, 0x78FD, 0x78F4, 0x7907, 0x7912, 0x7911, + 0x7919, 0x792C, 0x792B, 0x7940, 0x7960, 0x7957, 0x795F, 0x795A, + 0x7955, 0x7953, 0x797A, 0x797F, 0x798A, 0x799D, 0x79A7, 0x9F4B, + 0x79AA, 0x79AE, 0x79B3, 0x79B9, 0x79BA, 0x79C9, 0x79D5, 0x79E7, + 0x79EC, 0x79E1, 0x79E3, 0x7A08, 0x7A0D, 0x7A18, 0x7A19, 0x7A20, + 0x7A1F, 0x7980, 0x7A31, 0x7A3B, 0x7A3E, 0x7A37, 0x7A43, 0x7A57, + 0x7A49, 0x7A61, 0x7A62, 0x7A69, 0x9F9D, 0x7A70, 0x7A79, 0x7A7D, + 0x7A88, 0x7A97, 0x7A95, 0x7A98, 0x7A96, 0x7AA9, 0x7AC8, 0x7AB0, + 0x7AB6, 0x7AC5, 0x7AC4, 0x7ABF, 0x9083, 0x7AC7, 0x7ACA, 0x7ACD, + 0x7ACF, 0x7AD5, 0x7AD3, 0x7AD9, 0x7ADA, 0x7ADD, 0x7AE1, 0x7AE2, + 0x7AE6, 0x7AED, 0x7AF0, 0x7B02, 0x7B0F, 0x7B0A, 0x7B06, 0x7B33, + 0x7B18, 0x7B19, 0x7B1E, 0x7B35, 0x7B28, 0x7B36, 0x7B50, +}; +unsigned short euc_to_utf8_E4[] = { + 0x7B7A, 0x7B04, 0x7B4D, 0x7B0B, 0x7B4C, 0x7B45, 0x7B75, + 0x7B65, 0x7B74, 0x7B67, 0x7B70, 0x7B71, 0x7B6C, 0x7B6E, 0x7B9D, + 0x7B98, 0x7B9F, 0x7B8D, 0x7B9C, 0x7B9A, 0x7B8B, 0x7B92, 0x7B8F, + 0x7B5D, 0x7B99, 0x7BCB, 0x7BC1, 0x7BCC, 0x7BCF, 0x7BB4, 0x7BC6, + 0x7BDD, 0x7BE9, 0x7C11, 0x7C14, 0x7BE6, 0x7BE5, 0x7C60, 0x7C00, + 0x7C07, 0x7C13, 0x7BF3, 0x7BF7, 0x7C17, 0x7C0D, 0x7BF6, 0x7C23, + 0x7C27, 0x7C2A, 0x7C1F, 0x7C37, 0x7C2B, 0x7C3D, 0x7C4C, 0x7C43, + 0x7C54, 0x7C4F, 0x7C40, 0x7C50, 0x7C58, 0x7C5F, 0x7C64, 0x7C56, + 0x7C65, 0x7C6C, 0x7C75, 0x7C83, 0x7C90, 0x7CA4, 0x7CAD, 0x7CA2, + 0x7CAB, 0x7CA1, 0x7CA8, 0x7CB3, 0x7CB2, 0x7CB1, 0x7CAE, 0x7CB9, + 0x7CBD, 0x7CC0, 0x7CC5, 0x7CC2, 0x7CD8, 0x7CD2, 0x7CDC, 0x7CE2, + 0x9B3B, 0x7CEF, 0x7CF2, 0x7CF4, 0x7CF6, 0x7CFA, 0x7D06, +}; +unsigned short euc_to_utf8_E5[] = { + 0x7D02, 0x7D1C, 0x7D15, 0x7D0A, 0x7D45, 0x7D4B, 0x7D2E, + 0x7D32, 0x7D3F, 0x7D35, 0x7D46, 0x7D73, 0x7D56, 0x7D4E, 0x7D72, + 0x7D68, 0x7D6E, 0x7D4F, 0x7D63, 0x7D93, 0x7D89, 0x7D5B, 0x7D8F, + 0x7D7D, 0x7D9B, 0x7DBA, 0x7DAE, 0x7DA3, 0x7DB5, 0x7DC7, 0x7DBD, + 0x7DAB, 0x7E3D, 0x7DA2, 0x7DAF, 0x7DDC, 0x7DB8, 0x7D9F, 0x7DB0, + 0x7DD8, 0x7DDD, 0x7DE4, 0x7DDE, 0x7DFB, 0x7DF2, 0x7DE1, 0x7E05, + 0x7E0A, 0x7E23, 0x7E21, 0x7E12, 0x7E31, 0x7E1F, 0x7E09, 0x7E0B, + 0x7E22, 0x7E46, 0x7E66, 0x7E3B, 0x7E35, 0x7E39, 0x7E43, 0x7E37, + 0x7E32, 0x7E3A, 0x7E67, 0x7E5D, 0x7E56, 0x7E5E, 0x7E59, 0x7E5A, + 0x7E79, 0x7E6A, 0x7E69, 0x7E7C, 0x7E7B, 0x7E83, 0x7DD5, 0x7E7D, + 0x8FAE, 0x7E7F, 0x7E88, 0x7E89, 0x7E8C, 0x7E92, 0x7E90, 0x7E93, + 0x7E94, 0x7E96, 0x7E8E, 0x7E9B, 0x7E9C, 0x7F38, 0x7F3A, +}; +unsigned short euc_to_utf8_E6[] = { + 0x7F45, 0x7F4C, 0x7F4D, 0x7F4E, 0x7F50, 0x7F51, 0x7F55, + 0x7F54, 0x7F58, 0x7F5F, 0x7F60, 0x7F68, 0x7F69, 0x7F67, 0x7F78, + 0x7F82, 0x7F86, 0x7F83, 0x7F88, 0x7F87, 0x7F8C, 0x7F94, 0x7F9E, + 0x7F9D, 0x7F9A, 0x7FA3, 0x7FAF, 0x7FB2, 0x7FB9, 0x7FAE, 0x7FB6, + 0x7FB8, 0x8B71, 0x7FC5, 0x7FC6, 0x7FCA, 0x7FD5, 0x7FD4, 0x7FE1, + 0x7FE6, 0x7FE9, 0x7FF3, 0x7FF9, 0x98DC, 0x8006, 0x8004, 0x800B, + 0x8012, 0x8018, 0x8019, 0x801C, 0x8021, 0x8028, 0x803F, 0x803B, + 0x804A, 0x8046, 0x8052, 0x8058, 0x805A, 0x805F, 0x8062, 0x8068, + 0x8073, 0x8072, 0x8070, 0x8076, 0x8079, 0x807D, 0x807F, 0x8084, + 0x8086, 0x8085, 0x809B, 0x8093, 0x809A, 0x80AD, 0x5190, 0x80AC, + 0x80DB, 0x80E5, 0x80D9, 0x80DD, 0x80C4, 0x80DA, 0x80D6, 0x8109, + 0x80EF, 0x80F1, 0x811B, 0x8129, 0x8123, 0x812F, 0x814B, +}; +unsigned short euc_to_utf8_E7[] = { + 0x968B, 0x8146, 0x813E, 0x8153, 0x8151, 0x80FC, 0x8171, + 0x816E, 0x8165, 0x8166, 0x8174, 0x8183, 0x8188, 0x818A, 0x8180, + 0x8182, 0x81A0, 0x8195, 0x81A4, 0x81A3, 0x815F, 0x8193, 0x81A9, + 0x81B0, 0x81B5, 0x81BE, 0x81B8, 0x81BD, 0x81C0, 0x81C2, 0x81BA, + 0x81C9, 0x81CD, 0x81D1, 0x81D9, 0x81D8, 0x81C8, 0x81DA, 0x81DF, + 0x81E0, 0x81E7, 0x81FA, 0x81FB, 0x81FE, 0x8201, 0x8202, 0x8205, + 0x8207, 0x820A, 0x820D, 0x8210, 0x8216, 0x8229, 0x822B, 0x8238, + 0x8233, 0x8240, 0x8259, 0x8258, 0x825D, 0x825A, 0x825F, 0x8264, + 0x8262, 0x8268, 0x826A, 0x826B, 0x822E, 0x8271, 0x8277, 0x8278, + 0x827E, 0x828D, 0x8292, 0x82AB, 0x829F, 0x82BB, 0x82AC, 0x82E1, + 0x82E3, 0x82DF, 0x82D2, 0x82F4, 0x82F3, 0x82FA, 0x8393, 0x8303, + 0x82FB, 0x82F9, 0x82DE, 0x8306, 0x82DC, 0x8309, 0x82D9, +}; +unsigned short euc_to_utf8_E8[] = { + 0x8335, 0x8334, 0x8316, 0x8332, 0x8331, 0x8340, 0x8339, + 0x8350, 0x8345, 0x832F, 0x832B, 0x8317, 0x8318, 0x8385, 0x839A, + 0x83AA, 0x839F, 0x83A2, 0x8396, 0x8323, 0x838E, 0x8387, 0x838A, + 0x837C, 0x83B5, 0x8373, 0x8375, 0x83A0, 0x8389, 0x83A8, 0x83F4, + 0x8413, 0x83EB, 0x83CE, 0x83FD, 0x8403, 0x83D8, 0x840B, 0x83C1, + 0x83F7, 0x8407, 0x83E0, 0x83F2, 0x840D, 0x8422, 0x8420, 0x83BD, + 0x8438, 0x8506, 0x83FB, 0x846D, 0x842A, 0x843C, 0x855A, 0x8484, + 0x8477, 0x846B, 0x84AD, 0x846E, 0x8482, 0x8469, 0x8446, 0x842C, + 0x846F, 0x8479, 0x8435, 0x84CA, 0x8462, 0x84B9, 0x84BF, 0x849F, + 0x84D9, 0x84CD, 0x84BB, 0x84DA, 0x84D0, 0x84C1, 0x84C6, 0x84D6, + 0x84A1, 0x8521, 0x84FF, 0x84F4, 0x8517, 0x8518, 0x852C, 0x851F, + 0x8515, 0x8514, 0x84FC, 0x8540, 0x8563, 0x8558, 0x8548, +}; +unsigned short euc_to_utf8_E9[] = { + 0x8541, 0x8602, 0x854B, 0x8555, 0x8580, 0x85A4, 0x8588, + 0x8591, 0x858A, 0x85A8, 0x856D, 0x8594, 0x859B, 0x85EA, 0x8587, + 0x859C, 0x8577, 0x857E, 0x8590, 0x85C9, 0x85BA, 0x85CF, 0x85B9, + 0x85D0, 0x85D5, 0x85DD, 0x85E5, 0x85DC, 0x85F9, 0x860A, 0x8613, + 0x860B, 0x85FE, 0x85FA, 0x8606, 0x8622, 0x861A, 0x8630, 0x863F, + 0x864D, 0x4E55, 0x8654, 0x865F, 0x8667, 0x8671, 0x8693, 0x86A3, + 0x86A9, 0x86AA, 0x868B, 0x868C, 0x86B6, 0x86AF, 0x86C4, 0x86C6, + 0x86B0, 0x86C9, 0x8823, 0x86AB, 0x86D4, 0x86DE, 0x86E9, 0x86EC, + 0x86DF, 0x86DB, 0x86EF, 0x8712, 0x8706, 0x8708, 0x8700, 0x8703, + 0x86FB, 0x8711, 0x8709, 0x870D, 0x86F9, 0x870A, 0x8734, 0x873F, + 0x8737, 0x873B, 0x8725, 0x8729, 0x871A, 0x8760, 0x875F, 0x8778, + 0x874C, 0x874E, 0x8774, 0x8757, 0x8768, 0x876E, 0x8759, +}; +unsigned short euc_to_utf8_EA[] = { + 0x8753, 0x8763, 0x876A, 0x8805, 0x87A2, 0x879F, 0x8782, + 0x87AF, 0x87CB, 0x87BD, 0x87C0, 0x87D0, 0x96D6, 0x87AB, 0x87C4, + 0x87B3, 0x87C7, 0x87C6, 0x87BB, 0x87EF, 0x87F2, 0x87E0, 0x880F, + 0x880D, 0x87FE, 0x87F6, 0x87F7, 0x880E, 0x87D2, 0x8811, 0x8816, + 0x8815, 0x8822, 0x8821, 0x8831, 0x8836, 0x8839, 0x8827, 0x883B, + 0x8844, 0x8842, 0x8852, 0x8859, 0x885E, 0x8862, 0x886B, 0x8881, + 0x887E, 0x889E, 0x8875, 0x887D, 0x88B5, 0x8872, 0x8882, 0x8897, + 0x8892, 0x88AE, 0x8899, 0x88A2, 0x888D, 0x88A4, 0x88B0, 0x88BF, + 0x88B1, 0x88C3, 0x88C4, 0x88D4, 0x88D8, 0x88D9, 0x88DD, 0x88F9, + 0x8902, 0x88FC, 0x88F4, 0x88E8, 0x88F2, 0x8904, 0x890C, 0x890A, + 0x8913, 0x8943, 0x891E, 0x8925, 0x892A, 0x892B, 0x8941, 0x8944, + 0x893B, 0x8936, 0x8938, 0x894C, 0x891D, 0x8960, 0x895E, +}; +unsigned short euc_to_utf8_EB[] = { + 0x8966, 0x8964, 0x896D, 0x896A, 0x896F, 0x8974, 0x8977, + 0x897E, 0x8983, 0x8988, 0x898A, 0x8993, 0x8998, 0x89A1, 0x89A9, + 0x89A6, 0x89AC, 0x89AF, 0x89B2, 0x89BA, 0x89BD, 0x89BF, 0x89C0, + 0x89DA, 0x89DC, 0x89DD, 0x89E7, 0x89F4, 0x89F8, 0x8A03, 0x8A16, + 0x8A10, 0x8A0C, 0x8A1B, 0x8A1D, 0x8A25, 0x8A36, 0x8A41, 0x8A5B, + 0x8A52, 0x8A46, 0x8A48, 0x8A7C, 0x8A6D, 0x8A6C, 0x8A62, 0x8A85, + 0x8A82, 0x8A84, 0x8AA8, 0x8AA1, 0x8A91, 0x8AA5, 0x8AA6, 0x8A9A, + 0x8AA3, 0x8AC4, 0x8ACD, 0x8AC2, 0x8ADA, 0x8AEB, 0x8AF3, 0x8AE7, + 0x8AE4, 0x8AF1, 0x8B14, 0x8AE0, 0x8AE2, 0x8AF7, 0x8ADE, 0x8ADB, + 0x8B0C, 0x8B07, 0x8B1A, 0x8AE1, 0x8B16, 0x8B10, 0x8B17, 0x8B20, + 0x8B33, 0x97AB, 0x8B26, 0x8B2B, 0x8B3E, 0x8B28, 0x8B41, 0x8B4C, + 0x8B4F, 0x8B4E, 0x8B49, 0x8B56, 0x8B5B, 0x8B5A, 0x8B6B, +}; +unsigned short euc_to_utf8_EC[] = { + 0x8B5F, 0x8B6C, 0x8B6F, 0x8B74, 0x8B7D, 0x8B80, 0x8B8C, + 0x8B8E, 0x8B92, 0x8B93, 0x8B96, 0x8B99, 0x8B9A, 0x8C3A, 0x8C41, + 0x8C3F, 0x8C48, 0x8C4C, 0x8C4E, 0x8C50, 0x8C55, 0x8C62, 0x8C6C, + 0x8C78, 0x8C7A, 0x8C82, 0x8C89, 0x8C85, 0x8C8A, 0x8C8D, 0x8C8E, + 0x8C94, 0x8C7C, 0x8C98, 0x621D, 0x8CAD, 0x8CAA, 0x8CBD, 0x8CB2, + 0x8CB3, 0x8CAE, 0x8CB6, 0x8CC8, 0x8CC1, 0x8CE4, 0x8CE3, 0x8CDA, + 0x8CFD, 0x8CFA, 0x8CFB, 0x8D04, 0x8D05, 0x8D0A, 0x8D07, 0x8D0F, + 0x8D0D, 0x8D10, 0x9F4E, 0x8D13, 0x8CCD, 0x8D14, 0x8D16, 0x8D67, + 0x8D6D, 0x8D71, 0x8D73, 0x8D81, 0x8D99, 0x8DC2, 0x8DBE, 0x8DBA, + 0x8DCF, 0x8DDA, 0x8DD6, 0x8DCC, 0x8DDB, 0x8DCB, 0x8DEA, 0x8DEB, + 0x8DDF, 0x8DE3, 0x8DFC, 0x8E08, 0x8E09, 0x8DFF, 0x8E1D, 0x8E1E, + 0x8E10, 0x8E1F, 0x8E42, 0x8E35, 0x8E30, 0x8E34, 0x8E4A, +}; +unsigned short euc_to_utf8_ED[] = { + 0x8E47, 0x8E49, 0x8E4C, 0x8E50, 0x8E48, 0x8E59, 0x8E64, + 0x8E60, 0x8E2A, 0x8E63, 0x8E55, 0x8E76, 0x8E72, 0x8E7C, 0x8E81, + 0x8E87, 0x8E85, 0x8E84, 0x8E8B, 0x8E8A, 0x8E93, 0x8E91, 0x8E94, + 0x8E99, 0x8EAA, 0x8EA1, 0x8EAC, 0x8EB0, 0x8EC6, 0x8EB1, 0x8EBE, + 0x8EC5, 0x8EC8, 0x8ECB, 0x8EDB, 0x8EE3, 0x8EFC, 0x8EFB, 0x8EEB, + 0x8EFE, 0x8F0A, 0x8F05, 0x8F15, 0x8F12, 0x8F19, 0x8F13, 0x8F1C, + 0x8F1F, 0x8F1B, 0x8F0C, 0x8F26, 0x8F33, 0x8F3B, 0x8F39, 0x8F45, + 0x8F42, 0x8F3E, 0x8F4C, 0x8F49, 0x8F46, 0x8F4E, 0x8F57, 0x8F5C, + 0x8F62, 0x8F63, 0x8F64, 0x8F9C, 0x8F9F, 0x8FA3, 0x8FAD, 0x8FAF, + 0x8FB7, 0x8FDA, 0x8FE5, 0x8FE2, 0x8FEA, 0x8FEF, 0x9087, 0x8FF4, + 0x9005, 0x8FF9, 0x8FFA, 0x9011, 0x9015, 0x9021, 0x900D, 0x901E, + 0x9016, 0x900B, 0x9027, 0x9036, 0x9035, 0x9039, 0x8FF8, +}; +unsigned short euc_to_utf8_EE[] = { + 0x904F, 0x9050, 0x9051, 0x9052, 0x900E, 0x9049, 0x903E, + 0x9056, 0x9058, 0x905E, 0x9068, 0x906F, 0x9076, 0x96A8, 0x9072, + 0x9082, 0x907D, 0x9081, 0x9080, 0x908A, 0x9089, 0x908F, 0x90A8, + 0x90AF, 0x90B1, 0x90B5, 0x90E2, 0x90E4, 0x6248, 0x90DB, 0x9102, + 0x9112, 0x9119, 0x9132, 0x9130, 0x914A, 0x9156, 0x9158, 0x9163, + 0x9165, 0x9169, 0x9173, 0x9172, 0x918B, 0x9189, 0x9182, 0x91A2, + 0x91AB, 0x91AF, 0x91AA, 0x91B5, 0x91B4, 0x91BA, 0x91C0, 0x91C1, + 0x91C9, 0x91CB, 0x91D0, 0x91D6, 0x91DF, 0x91E1, 0x91DB, 0x91FC, + 0x91F5, 0x91F6, 0x921E, 0x91FF, 0x9214, 0x922C, 0x9215, 0x9211, + 0x925E, 0x9257, 0x9245, 0x9249, 0x9264, 0x9248, 0x9295, 0x923F, + 0x924B, 0x9250, 0x929C, 0x9296, 0x9293, 0x929B, 0x925A, 0x92CF, + 0x92B9, 0x92B7, 0x92E9, 0x930F, 0x92FA, 0x9344, 0x932E, +}; +unsigned short euc_to_utf8_EF[] = { + 0x9319, 0x9322, 0x931A, 0x9323, 0x933A, 0x9335, 0x933B, + 0x935C, 0x9360, 0x937C, 0x936E, 0x9356, 0x93B0, 0x93AC, 0x93AD, + 0x9394, 0x93B9, 0x93D6, 0x93D7, 0x93E8, 0x93E5, 0x93D8, 0x93C3, + 0x93DD, 0x93D0, 0x93C8, 0x93E4, 0x941A, 0x9414, 0x9413, 0x9403, + 0x9407, 0x9410, 0x9436, 0x942B, 0x9435, 0x9421, 0x943A, 0x9441, + 0x9452, 0x9444, 0x945B, 0x9460, 0x9462, 0x945E, 0x946A, 0x9229, + 0x9470, 0x9475, 0x9477, 0x947D, 0x945A, 0x947C, 0x947E, 0x9481, + 0x947F, 0x9582, 0x9587, 0x958A, 0x9594, 0x9596, 0x9598, 0x9599, + 0x95A0, 0x95A8, 0x95A7, 0x95AD, 0x95BC, 0x95BB, 0x95B9, 0x95BE, + 0x95CA, 0x6FF6, 0x95C3, 0x95CD, 0x95CC, 0x95D5, 0x95D4, 0x95D6, + 0x95DC, 0x95E1, 0x95E5, 0x95E2, 0x9621, 0x9628, 0x962E, 0x962F, + 0x9642, 0x964C, 0x964F, 0x964B, 0x9677, 0x965C, 0x965E, +}; +unsigned short euc_to_utf8_F0[] = { + 0x965D, 0x965F, 0x9666, 0x9672, 0x966C, 0x968D, 0x9698, + 0x9695, 0x9697, 0x96AA, 0x96A7, 0x96B1, 0x96B2, 0x96B0, 0x96B4, + 0x96B6, 0x96B8, 0x96B9, 0x96CE, 0x96CB, 0x96C9, 0x96CD, 0x894D, + 0x96DC, 0x970D, 0x96D5, 0x96F9, 0x9704, 0x9706, 0x9708, 0x9713, + 0x970E, 0x9711, 0x970F, 0x9716, 0x9719, 0x9724, 0x972A, 0x9730, + 0x9739, 0x973D, 0x973E, 0x9744, 0x9746, 0x9748, 0x9742, 0x9749, + 0x975C, 0x9760, 0x9764, 0x9766, 0x9768, 0x52D2, 0x976B, 0x9771, + 0x9779, 0x9785, 0x977C, 0x9781, 0x977A, 0x9786, 0x978B, 0x978F, + 0x9790, 0x979C, 0x97A8, 0x97A6, 0x97A3, 0x97B3, 0x97B4, 0x97C3, + 0x97C6, 0x97C8, 0x97CB, 0x97DC, 0x97ED, 0x9F4F, 0x97F2, 0x7ADF, + 0x97F6, 0x97F5, 0x980F, 0x980C, 0x9838, 0x9824, 0x9821, 0x9837, + 0x983D, 0x9846, 0x984F, 0x984B, 0x986B, 0x986F, 0x9870, +}; +unsigned short euc_to_utf8_F1[] = { + 0x9871, 0x9874, 0x9873, 0x98AA, 0x98AF, 0x98B1, 0x98B6, + 0x98C4, 0x98C3, 0x98C6, 0x98E9, 0x98EB, 0x9903, 0x9909, 0x9912, + 0x9914, 0x9918, 0x9921, 0x991D, 0x991E, 0x9924, 0x9920, 0x992C, + 0x992E, 0x993D, 0x993E, 0x9942, 0x9949, 0x9945, 0x9950, 0x994B, + 0x9951, 0x9952, 0x994C, 0x9955, 0x9997, 0x9998, 0x99A5, 0x99AD, + 0x99AE, 0x99BC, 0x99DF, 0x99DB, 0x99DD, 0x99D8, 0x99D1, 0x99ED, + 0x99EE, 0x99F1, 0x99F2, 0x99FB, 0x99F8, 0x9A01, 0x9A0F, 0x9A05, + 0x99E2, 0x9A19, 0x9A2B, 0x9A37, 0x9A45, 0x9A42, 0x9A40, 0x9A43, + 0x9A3E, 0x9A55, 0x9A4D, 0x9A5B, 0x9A57, 0x9A5F, 0x9A62, 0x9A65, + 0x9A64, 0x9A69, 0x9A6B, 0x9A6A, 0x9AAD, 0x9AB0, 0x9ABC, 0x9AC0, + 0x9ACF, 0x9AD1, 0x9AD3, 0x9AD4, 0x9ADE, 0x9ADF, 0x9AE2, 0x9AE3, + 0x9AE6, 0x9AEF, 0x9AEB, 0x9AEE, 0x9AF4, 0x9AF1, 0x9AF7, +}; +unsigned short euc_to_utf8_F2[] = { + 0x9AFB, 0x9B06, 0x9B18, 0x9B1A, 0x9B1F, 0x9B22, 0x9B23, + 0x9B25, 0x9B27, 0x9B28, 0x9B29, 0x9B2A, 0x9B2E, 0x9B2F, 0x9B32, + 0x9B44, 0x9B43, 0x9B4F, 0x9B4D, 0x9B4E, 0x9B51, 0x9B58, 0x9B74, + 0x9B93, 0x9B83, 0x9B91, 0x9B96, 0x9B97, 0x9B9F, 0x9BA0, 0x9BA8, + 0x9BB4, 0x9BC0, 0x9BCA, 0x9BB9, 0x9BC6, 0x9BCF, 0x9BD1, 0x9BD2, + 0x9BE3, 0x9BE2, 0x9BE4, 0x9BD4, 0x9BE1, 0x9C3A, 0x9BF2, 0x9BF1, + 0x9BF0, 0x9C15, 0x9C14, 0x9C09, 0x9C13, 0x9C0C, 0x9C06, 0x9C08, + 0x9C12, 0x9C0A, 0x9C04, 0x9C2E, 0x9C1B, 0x9C25, 0x9C24, 0x9C21, + 0x9C30, 0x9C47, 0x9C32, 0x9C46, 0x9C3E, 0x9C5A, 0x9C60, 0x9C67, + 0x9C76, 0x9C78, 0x9CE7, 0x9CEC, 0x9CF0, 0x9D09, 0x9D08, 0x9CEB, + 0x9D03, 0x9D06, 0x9D2A, 0x9D26, 0x9DAF, 0x9D23, 0x9D1F, 0x9D44, + 0x9D15, 0x9D12, 0x9D41, 0x9D3F, 0x9D3E, 0x9D46, 0x9D48, +}; +unsigned short euc_to_utf8_F3[] = { + 0x9D5D, 0x9D5E, 0x9D64, 0x9D51, 0x9D50, 0x9D59, 0x9D72, + 0x9D89, 0x9D87, 0x9DAB, 0x9D6F, 0x9D7A, 0x9D9A, 0x9DA4, 0x9DA9, + 0x9DB2, 0x9DC4, 0x9DC1, 0x9DBB, 0x9DB8, 0x9DBA, 0x9DC6, 0x9DCF, + 0x9DC2, 0x9DD9, 0x9DD3, 0x9DF8, 0x9DE6, 0x9DED, 0x9DEF, 0x9DFD, + 0x9E1A, 0x9E1B, 0x9E1E, 0x9E75, 0x9E79, 0x9E7D, 0x9E81, 0x9E88, + 0x9E8B, 0x9E8C, 0x9E92, 0x9E95, 0x9E91, 0x9E9D, 0x9EA5, 0x9EA9, + 0x9EB8, 0x9EAA, 0x9EAD, 0x9761, 0x9ECC, 0x9ECE, 0x9ECF, 0x9ED0, + 0x9ED4, 0x9EDC, 0x9EDE, 0x9EDD, 0x9EE0, 0x9EE5, 0x9EE8, 0x9EEF, + 0x9EF4, 0x9EF6, 0x9EF7, 0x9EF9, 0x9EFB, 0x9EFC, 0x9EFD, 0x9F07, + 0x9F08, 0x76B7, 0x9F15, 0x9F21, 0x9F2C, 0x9F3E, 0x9F4A, 0x9F52, + 0x9F54, 0x9F63, 0x9F5F, 0x9F60, 0x9F61, 0x9F66, 0x9F67, 0x9F6C, + 0x9F6A, 0x9F77, 0x9F72, 0x9F76, 0x9F95, 0x9F9C, 0x9FA0, +}; +unsigned short euc_to_utf8_F4[] = { + 0x582F, 0x69C7, 0x9059, 0x7464, 0x51DC, 0x7199, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_F5[] = { + 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0xFE33, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0xFE31, 0, 0, + 0, 0, 0, 0, 0, 0xFE30, 0, 0, + 0, 0, 0xFE35, 0xFE36, 0xFE39, 0xFE3A, 0, 0, + 0xFE37, 0xFE38, 0xFE3F, 0xFE40, 0xFE3D, 0xFE3E, 0xFE41, 0xFE42, + 0xFE43, 0xFE44, 0xFE3B, 0xFE3C, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short euc_to_utf8_F9[] = { + 0x7E8A, 0x891C, 0x9348, 0x9288, 0x84DC, 0x4FC9, 0x70BB, + 0x6631, 0x68C8, 0x92F9, 0x66FB, 0x5F45, 0x4E28, 0x4EE1, 0x4EFC, + 0x4F00, 0x4F03, 0x4F39, 0x4F56, 0x4F92, 0x4F8A, 0x4F9A, 0x4F94, + 0x4FCD, 0x5040, 0x5022, 0x4FFF, 0x501E, 0x5046, 0x5070, 0x5042, + 0x5094, 0x50F4, 0x50D8, 0x514A, 0x5164, 0x519D, 0x51BE, 0x51EC, + 0x5215, 0x529C, 0x52A6, 0x52C0, 0x52DB, 0x5300, 0x5307, 0x5324, + 0x5372, 0x5393, 0x53B2, 0x53DD, 0xFA0E, 0x549C, 0x548A, 0x54A9, + 0x54FF, 0x5586, 0x5759, 0x5765, 0x57AC, 0x57C8, 0x57C7, 0xFA0F, + 0xFA10, 0x589E, 0x58B2, 0x590B, 0x5953, 0x595B, 0x595D, 0x5963, + 0x59A4, 0x59BA, 0x5B56, 0x5BC0, 0x752F, 0x5BD8, 0x5BEC, 0x5C1E, + 0x5CA6, 0x5CBA, 0x5CF5, 0x5D27, 0x5D53, 0xFA11, 0x5D42, 0x5D6D, + 0x5DB8, 0x5DB9, 0x5DD0, 0x5F21, 0x5F34, 0x5F67, 0x5FB7, +}; +unsigned short euc_to_utf8_FA[] = { + 0x5FDE, 0x605D, 0x6085, 0x608A, 0x60DE, 0x60D5, 0x6120, + 0x60F2, 0x6111, 0x6137, 0x6130, 0x6198, 0x6213, 0x62A6, 0x63F5, + 0x6460, 0x649D, 0x64CE, 0x654E, 0x6600, 0x6615, 0x663B, 0x6609, + 0x662E, 0x661E, 0x6624, 0x6665, 0x6657, 0x6659, 0xFA12, 0x6673, + 0x6699, 0x66A0, 0x66B2, 0x66BF, 0x66FA, 0x670E, 0xF929, 0x6766, + 0x67BB, 0x6852, 0x67C0, 0x6801, 0x6844, 0x68CF, 0xFA13, 0x6968, + 0xFA14, 0x6998, 0x69E2, 0x6A30, 0x6A6B, 0x6A46, 0x6A73, 0x6A7E, + 0x6AE2, 0x6AE4, 0x6BD6, 0x6C3F, 0x6C5C, 0x6C86, 0x6C6F, 0x6CDA, + 0x6D04, 0x6D87, 0x6D6F, 0x6D96, 0x6DAC, 0x6DCF, 0x6DF8, 0x6DF2, + 0x6DFC, 0x6E39, 0x6E5C, 0x6E27, 0x6E3C, 0x6EBF, 0x6F88, 0x6FB5, + 0x6FF5, 0x7005, 0x7007, 0x7028, 0x7085, 0x70AB, 0x710F, 0x7104, + 0x715C, 0x7146, 0x7147, 0xFA15, 0x71C1, 0x71FE, 0x72B1, +}; +unsigned short euc_to_utf8_FB[] = { + 0x72BE, 0x7324, 0xFA16, 0x7377, 0x73BD, 0x73C9, 0x73D6, + 0x73E3, 0x73D2, 0x7407, 0x73F5, 0x7426, 0x742A, 0x7429, 0x742E, + 0x7462, 0x7489, 0x749F, 0x7501, 0x756F, 0x7682, 0x769C, 0x769E, + 0x769B, 0x76A6, 0xFA17, 0x7746, 0x52AF, 0x7821, 0x784E, 0x7864, + 0x787A, 0x7930, 0xFA18, 0xFA19, 0xFA1A, 0x7994, 0xFA1B, 0x799B, + 0x7AD1, 0x7AE7, 0xFA1C, 0x7AEB, 0x7B9E, 0xFA1D, 0x7D48, 0x7D5C, + 0x7DB7, 0x7DA0, 0x7DD6, 0x7E52, 0x7F47, 0x7FA1, 0xFA1E, 0x8301, + 0x8362, 0x837F, 0x83C7, 0x83F6, 0x8448, 0x84B4, 0x8553, 0x8559, + 0x856B, 0xFA1F, 0x85B0, 0xFA20, 0xFA21, 0x8807, 0x88F5, 0x8A12, + 0x8A37, 0x8A79, 0x8AA7, 0x8ABE, 0x8ADF, 0xFA22, 0x8AF6, 0x8B53, + 0x8B7F, 0x8CF0, 0x8CF4, 0x8D12, 0x8D76, 0xFA23, 0x8ECF, 0xFA24, + 0xFA25, 0x9067, 0x90DE, 0xFA26, 0x9115, 0x9127, 0x91DA, +}; +unsigned short euc_to_utf8_FC[] = { + 0x91D7, 0x91DE, 0x91ED, 0x91EE, 0x91E4, 0x91E5, 0x9206, + 0x9210, 0x920A, 0x923A, 0x9240, 0x923C, 0x924E, 0x9259, 0x9251, + 0x9239, 0x9267, 0x92A7, 0x9277, 0x9278, 0x92E7, 0x92D7, 0x92D9, + 0x92D0, 0xFA27, 0x92D5, 0x92E0, 0x92D3, 0x9325, 0x9321, 0x92FB, + 0xFA28, 0x931E, 0x92FF, 0x931D, 0x9302, 0x9370, 0x9357, 0x93A4, + 0x93C6, 0x93DE, 0x93F8, 0x9431, 0x9445, 0x9448, 0x9592, 0xF9DC, + 0xFA29, 0x969D, 0x96AF, 0x9733, 0x973B, 0x9743, 0x974D, 0x974F, + 0x9751, 0x9755, 0x9857, 0x9865, 0xFA2A, 0xFA2B, 0x9927, 0xFA2C, + 0x999E, 0x9A4E, 0x9AD9, 0x9ADC, 0x9B75, 0x9B72, 0x9B8F, 0x9BB1, + 0x9BBB, 0x9C00, 0x9D70, 0x9D6B, 0xFA2D, 0x9E19, 0x9ED1, 0, + 0, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, + 0x2177, 0x2178, 0x2179, 0xFFE2, 0xFFE4, 0xFF07, 0xFF02, +}; +unsigned short euc_to_utf8_1byte[] = { + 0xFF61, 0xFF62, 0xFF63, 0xFF64, 0xFF65, 0xFF66, 0xFF67, + 0xFF68, 0xFF69, 0xFF6A, 0xFF6B, 0xFF6C, 0xFF6D, 0xFF6E, 0xFF6F, + 0xFF70, 0xFF71, 0xFF72, 0xFF73, 0xFF74, 0xFF75, 0xFF76, 0xFF77, + 0xFF78, 0xFF79, 0xFF7A, 0xFF7B, 0xFF7C, 0xFF7D, 0xFF7E, 0xFF7F, + 0xFF80, 0xFF81, 0xFF82, 0xFF83, 0xFF84, 0xFF85, 0xFF86, 0xFF87, + 0xFF88, 0xFF89, 0xFF8A, 0xFF8B, 0xFF8C, 0xFF8D, 0xFF8E, 0xFF8F, + 0xFF90, 0xFF91, 0xFF92, 0xFF93, 0xFF94, 0xFF95, 0xFF96, 0xFF97, + 0xFF98, 0xFF99, 0xFF9A, 0xFF9B, 0xFF9C, 0xFF9D, 0xFF9E, 0xFF9F, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x00A9, 0x2122, +}; +unsigned short * euc_to_utf8_2bytes[] = { + euc_to_utf8_A1, euc_to_utf8_A2, euc_to_utf8_A3, + euc_to_utf8_A4, euc_to_utf8_A5, euc_to_utf8_A6, euc_to_utf8_A7, + euc_to_utf8_A8, euc_to_utf8_A9, euc_to_utf8_AA, euc_to_utf8_AB, + euc_to_utf8_AC, euc_to_utf8_AD, euc_to_utf8_AE, euc_to_utf8_AF, + euc_to_utf8_B0, euc_to_utf8_B1, euc_to_utf8_B2, euc_to_utf8_B3, + euc_to_utf8_B4, euc_to_utf8_B5, euc_to_utf8_B6, euc_to_utf8_B7, + euc_to_utf8_B8, euc_to_utf8_B9, euc_to_utf8_BA, euc_to_utf8_BB, + euc_to_utf8_BC, euc_to_utf8_BD, euc_to_utf8_BE, euc_to_utf8_BF, + euc_to_utf8_C0, euc_to_utf8_C1, euc_to_utf8_C2, euc_to_utf8_C3, + euc_to_utf8_C4, euc_to_utf8_C5, euc_to_utf8_C6, euc_to_utf8_C7, + euc_to_utf8_C8, euc_to_utf8_C9, euc_to_utf8_CA, euc_to_utf8_CB, + euc_to_utf8_CC, euc_to_utf8_CD, euc_to_utf8_CE, euc_to_utf8_CF, + euc_to_utf8_D0, euc_to_utf8_D1, euc_to_utf8_D2, euc_to_utf8_D3, + euc_to_utf8_D4, euc_to_utf8_D5, euc_to_utf8_D6, euc_to_utf8_D7, + euc_to_utf8_D8, euc_to_utf8_D9, euc_to_utf8_DA, euc_to_utf8_DB, + euc_to_utf8_DC, euc_to_utf8_DD, euc_to_utf8_DE, euc_to_utf8_DF, + euc_to_utf8_E0, euc_to_utf8_E1, euc_to_utf8_E2, euc_to_utf8_E3, + euc_to_utf8_E4, euc_to_utf8_E5, euc_to_utf8_E6, euc_to_utf8_E7, + euc_to_utf8_E8, euc_to_utf8_E9, euc_to_utf8_EA, euc_to_utf8_EB, + euc_to_utf8_EC, euc_to_utf8_ED, euc_to_utf8_EE, euc_to_utf8_EF, + euc_to_utf8_F0, euc_to_utf8_F1, euc_to_utf8_F2, euc_to_utf8_F3, + euc_to_utf8_F4, euc_to_utf8_F5, 0, 0, + 0, euc_to_utf8_F9, euc_to_utf8_FA, euc_to_utf8_FB, + euc_to_utf8_FC, 0, 0, +}; +#endif /* UTF8_OUTPUT_ENABLE */ + +#ifdef UTF8_INPUT_ENABLE +unsigned short utf8_to_euc_C2[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x0E20, 0, 0x2171, 0x2172, 0, 0, 0, 0x2178, + 0x212F, 0x0E7D, 0, 0, 0x224C, 0, 0, 0, + 0x216B, 0x215E, 0, 0, 0x212D, 0, 0x2279, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_C3[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x215F, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x2160, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_CE[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x2621, 0x2622, 0x2623, 0x2624, 0x2625, 0x2626, 0x2627, + 0x2628, 0x2629, 0x262A, 0x262B, 0x262C, 0x262D, 0x262E, 0x262F, + 0x2630, 0x2631, 0, 0x2632, 0x2633, 0x2634, 0x2635, 0x2636, + 0x2637, 0x2638, 0, 0, 0, 0, 0, 0, + 0, 0x2641, 0x2642, 0x2643, 0x2644, 0x2645, 0x2646, 0x2647, + 0x2648, 0x2649, 0x264A, 0x264B, 0x264C, 0x264D, 0x264E, 0x264F, +}; +unsigned short utf8_to_euc_CF[] = { + 0x2650, 0x2651, 0, 0x2652, 0x2653, 0x2654, 0x2655, 0x2656, + 0x2657, 0x2658, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_D0[] = { + 0, 0x2727, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x2721, 0x2722, 0x2723, 0x2724, 0x2725, 0x2726, 0x2728, 0x2729, + 0x272A, 0x272B, 0x272C, 0x272D, 0x272E, 0x272F, 0x2730, 0x2731, + 0x2732, 0x2733, 0x2734, 0x2735, 0x2736, 0x2737, 0x2738, 0x2739, + 0x273A, 0x273B, 0x273C, 0x273D, 0x273E, 0x273F, 0x2740, 0x2741, + 0x2751, 0x2752, 0x2753, 0x2754, 0x2755, 0x2756, 0x2758, 0x2759, + 0x275A, 0x275B, 0x275C, 0x275D, 0x275E, 0x275F, 0x2760, 0x2761, +}; +unsigned short utf8_to_euc_D1[] = { + 0x2762, 0x2763, 0x2764, 0x2765, 0x2766, 0x2767, 0x2768, 0x2769, + 0x276A, 0x276B, 0x276C, 0x276D, 0x276E, 0x276F, 0x2770, 0x2771, + 0, 0x2757, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E280[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x213E, 0, 0, 0, 0x213D, 0x213D, 0x2142, 0, + 0x2146, 0x2147, 0, 0, 0x2148, 0x2149, 0, 0, + 0x2277, 0x2278, 0, 0, 0, 0x2145, 0x2144, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x2273, 0, 0x216C, 0x216D, 0, 0, 0, 0, + 0, 0, 0, 0x2228, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E284[] = { + 0, 0, 0, 0x216E, 0, 0, 0, 0, + 0, 0x2B37, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x2B31, 0, 0, 0x2D62, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x2D64, 0x0E7E, 0, 0, 0, 0, 0, + 0, 0, 0, 0x2272, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E285[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x2D35, 0x2D36, 0x2D37, 0x2D38, 0x2D39, 0x2D3A, 0x2D3B, 0x2D3C, + 0x2D3D, 0x2D3E, 0x2A2B, 0x2A2C, 0, 0, 0, 0, + 0x7C71, 0x7C72, 0x7C73, 0x7C74, 0x7C75, 0x7C76, 0x7C77, 0x7C78, + 0x7C79, 0x7C7A, 0x2A3F, 0x2A40, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E286[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x222B, 0x222C, 0x222A, 0x222D, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E287[] = { + 0, 0, 0, 0, 0x2C4E, 0x2C4F, 0x2C4D, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x224D, 0, 0x224E, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x2C52, 0x2C53, + 0x2C51, 0x2C54, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E288[] = { + 0x224F, 0, 0x225F, 0x2250, 0, 0, 0, 0x2260, + 0x223A, 0, 0, 0x223B, 0, 0, 0, 0, + 0, 0x2D74, 0x215D, 0, 0, 0, 0, 0, + 0, 0, 0x2265, 0, 0, 0x2267, 0x2167, 0x2D78, + 0x225C, 0, 0, 0, 0, 0x2142, 0, 0x224A, + 0x224B, 0x2241, 0x2240, 0x2269, 0x226A, 0, 0x2D73, 0, + 0, 0, 0, 0, 0x2168, 0x2268, 0, 0, + 0, 0, 0, 0, 0, 0x2266, 0, 0, +}; +unsigned short utf8_to_euc_E289[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x2262, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x2162, 0x2261, 0, 0, 0, 0, 0x2165, 0x2166, + 0, 0, 0x2263, 0x2264, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E28A[] = { + 0, 0, 0x223E, 0x223F, 0, 0, 0x223C, 0x223D, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x225D, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x2D79, +}; +unsigned short utf8_to_euc_E28C[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x225E, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E291[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x2D21, 0x2D22, 0x2D23, 0x2D24, 0x2D25, 0x2D26, 0x2D27, 0x2D28, + 0x2D29, 0x2D2A, 0x2D2B, 0x2D2C, 0x2D2D, 0x2D2E, 0x2D2F, 0x2D30, + 0x2D31, 0x2D32, 0x2D33, 0x2D34, 0x293F, 0x2940, 0x2941, 0x2942, + 0x2943, 0x2944, 0x2945, 0x2946, 0x2947, 0x2948, 0x2949, 0x294A, +}; +unsigned short utf8_to_euc_E292[] = { + 0x294B, 0x294C, 0x294D, 0x294E, 0x294F, 0x2950, 0x2951, 0x2952, + 0x2972, 0x2973, 0x2974, 0x2975, 0x2976, 0x2977, 0x2978, 0x2979, + 0x297A, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x2A5D, 0x2A5E, 0x2A5F, 0x2A60, + 0x2A61, 0x2A62, 0x2A63, 0x2A64, 0x2A65, 0x2A66, 0x2A67, 0x2A68, + 0x2A69, 0x2A6A, 0x2A6B, 0x2A6C, 0x2A6D, 0x2A6E, 0x2A6F, 0x2A70, + 0x2A71, 0x2A72, 0x2A73, 0x2A74, 0x2A75, 0x2A76, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E294[] = { + 0x2821, 0x282C, 0x2822, 0x282D, 0, 0, 0, 0, + 0, 0, 0, 0, 0x2823, 0, 0, 0x282E, + 0x2824, 0, 0, 0x282F, 0x2826, 0, 0, 0x2831, + 0x2825, 0, 0, 0x2830, 0x2827, 0x283C, 0, 0, + 0x2837, 0, 0, 0x2832, 0x2829, 0x283E, 0, 0, + 0x2839, 0, 0, 0x2834, 0x2828, 0, 0, 0x2838, + 0x283D, 0, 0, 0x2833, 0x282A, 0, 0, 0x283A, + 0x283F, 0, 0, 0x2835, 0x282B, 0, 0, 0x283B, +}; +unsigned short utf8_to_euc_E295[] = { + 0, 0, 0x2840, 0, 0, 0, 0, 0, + 0, 0, 0, 0x2836, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E296[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x2223, 0x2222, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x2225, 0x2224, 0, 0, 0, 0, + 0, 0, 0, 0, 0x2227, 0x2226, 0, 0, +}; +unsigned short utf8_to_euc_E297[] = { + 0, 0, 0, 0, 0, 0, 0x2221, 0x217E, + 0, 0, 0, 0x217B, 0, 0, 0x217D, 0x217C, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x227E, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E298[] = { + 0, 0, 0, 0, 0, 0x217A, 0x2179, 0, + 0, 0, 0, 0, 0, 0, 0x2C36, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x2C4A, 0x2C4B, 0x2C49, 0x2C4C, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E299[] = { + 0x216A, 0, 0x2169, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x2C25, 0x2C23, 0x2C24, 0x2C26, 0x2C21, 0x2C27, 0x2C28, 0x2C22, + 0, 0, 0x2276, 0, 0, 0x2275, 0, 0x2274, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E29D[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x295D, 0x295E, + 0x295F, 0x2960, 0x2961, 0x2962, 0x2963, 0x2964, 0x2965, 0, +}; +unsigned short utf8_to_euc_E380[] = { + 0x2121, 0x2122, 0x2123, 0x2137, 0x2C37, 0x2139, 0x213A, 0x213B, + 0x2152, 0x2153, 0x2154, 0x2155, 0x2156, 0x2157, 0x2158, 0x2159, + 0x215A, 0x215B, 0x2229, 0x222E, 0x214C, 0x214D, 0, 0, + 0, 0, 0, 0, 0x2141, 0x2D60, 0, 0x2D61, + 0x2C35, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E381[] = { + 0, 0x2421, 0x2422, 0x2423, 0x2424, 0x2425, 0x2426, 0x2427, + 0x2428, 0x2429, 0x242A, 0x242B, 0x242C, 0x242D, 0x242E, 0x242F, + 0x2430, 0x2431, 0x2432, 0x2433, 0x2434, 0x2435, 0x2436, 0x2437, + 0x2438, 0x2439, 0x243A, 0x243B, 0x243C, 0x243D, 0x243E, 0x243F, + 0x2440, 0x2441, 0x2442, 0x2443, 0x2444, 0x2445, 0x2446, 0x2447, + 0x2448, 0x2449, 0x244A, 0x244B, 0x244C, 0x244D, 0x244E, 0x244F, + 0x2450, 0x2451, 0x2452, 0x2453, 0x2454, 0x2455, 0x2456, 0x2457, + 0x2458, 0x2459, 0x245A, 0x245B, 0x245C, 0x245D, 0x245E, 0x245F, +}; +unsigned short utf8_to_euc_E382[] = { + 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, + 0x2468, 0x2469, 0x246A, 0x246B, 0x246C, 0x246D, 0x246E, 0x246F, + 0x2470, 0x2471, 0x2472, 0x2473, 0x2F49, 0, 0, 0, + 0, 0x0E5E, 0x0E5F, 0x212B, 0x212C, 0x2135, 0x2136, 0, + 0, 0x2521, 0x2522, 0x2523, 0x2524, 0x2525, 0x2526, 0x2527, + 0x2528, 0x2529, 0x252A, 0x252B, 0x252C, 0x252D, 0x252E, 0x252F, + 0x2530, 0x2531, 0x2532, 0x2533, 0x2534, 0x2535, 0x2536, 0x2537, + 0x2538, 0x2539, 0x253A, 0x253B, 0x253C, 0x253D, 0x253E, 0x253F, +}; +unsigned short utf8_to_euc_E383[] = { + 0x2540, 0x2541, 0x2542, 0x2543, 0x2544, 0x2545, 0x2546, 0x2547, + 0x2548, 0x2549, 0x254A, 0x254B, 0x254C, 0x254D, 0x254E, 0x254F, + 0x2550, 0x2551, 0x2552, 0x2553, 0x2554, 0x2555, 0x2556, 0x2557, + 0x2558, 0x2559, 0x255A, 0x255B, 0x255C, 0x255D, 0x255E, 0x255F, + 0x2560, 0x2561, 0x2562, 0x2563, 0x2564, 0x2565, 0x2566, 0x2567, + 0x2568, 0x2569, 0x256A, 0x256B, 0x256C, 0x256D, 0x256E, 0x256F, + 0x2570, 0x2571, 0x2572, 0x2573, 0x2574, 0x2575, 0x2576, 0x2F4B, + 0x2F4C, 0x2F4D, 0x2F4E, 0x2126, 0x213C, 0x2133, 0x2134, 0, +}; +unsigned short utf8_to_euc_E388[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x2D22, 0x2D23, 0x2D24, 0x2D25, 0x2D26, 0x2D27, + 0x2D21, 0x2D6A, 0x2D6B, 0x2D34, 0x2D30, 0x2D35, 0x2D33, 0x2D29, + 0x2D39, 0x2D6C, 0x2D2D, 0x2D32, 0x2D36, 0x2D37, 0x2D2F, 0x2D38, +}; +unsigned short utf8_to_euc_E389[] = { + 0x2D28, 0, 0x2D2A, 0x2D2B, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E38A[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x2D79, 0, + 0x2D7B, 0x2D7E, 0, 0, 0, 0x2D7A, 0x2D7C, 0, + 0, 0, 0, 0, 0x2D65, 0x2D66, 0x2D67, 0x2D68, + 0x2D69, 0x2D78, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E38C[] = { + 0x2E3F, 0, 0, 0x2D46, 0, 0x2E26, 0, 0, + 0, 0, 0, 0, 0, 0x2D4A, 0, 0, + 0, 0, 0, 0, 0x2D41, 0x2E2C, 0x2E25, 0, + 0x2D44, 0, 0, 0, 0, 0, 0x2E40, 0, + 0, 0, 0x2D42, 0x2D4C, 0, 0, 0x2D4B, 0x2D45, + 0, 0, 0x2E41, 0x2D4D, 0, 0, 0, 0, + 0, 0x2E42, 0, 0x2E27, 0, 0, 0x2D47, 0, + 0, 0x2E30, 0, 0x2D4F, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E38D[] = { + 0, 0, 0x2E33, 0, 0, 0, 0, 0x2E43, + 0, 0x2D40, 0x2D4E, 0, 0, 0x2D43, 0x2E28, 0, + 0, 0x2D48, 0, 0, 0, 0, 0, 0x2D49, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x2D5F, 0x2D6F, 0x2D6E, 0x2D6D, 0x2E7C, +}; +unsigned short utf8_to_euc_E38E[] = { + 0, 0, 0, 0, 0, 0x2B3B, 0x2B3C, 0x2B3D, + 0, 0, 0, 0, 0, 0, 0x2D53, 0x2D54, + 0x2B3A, 0, 0, 0, 0, 0, 0x2B2F, 0x2B30, + 0x2B32, 0, 0, 0, 0x2D50, 0x2D51, 0x2D52, 0x2B22, + 0x2B24, 0x2D56, 0x2B2A, 0, 0x2B25, 0x2B28, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x2B36, 0x2B35, 0x2B34, 0x2B33, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E38F[] = { + 0, 0, 0, 0, 0x2D55, 0, 0, 0, + 0, 0, 0, 0x2B39, 0, 0x2D63, 0, 0, + 0, 0, 0, 0, 0x2B38, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E4B8[] = { + 0x306C, 0x437A, 0, 0x3C37, 0, 0, 0, 0x4B7C, + 0x3E66, 0x3B30, 0x3E65, 0x323C, 0, 0x4954, 0x4D3F, 0, + 0x5022, 0x312F, 0, 0, 0x336E, 0x5023, 0x4024, 0x5242, + 0x3556, 0x4A3A, 0, 0, 0, 0, 0x3E67, 0, + 0, 0x4E3E, 0, 0, 0, 0, 0x4A42, 0, + 0x792D, 0, 0x5024, 0, 0, 0x4366, 0, 0, + 0, 0x5025, 0x367A, 0, 0, 0, 0x5026, 0, + 0x345D, 0x4330, 0, 0x3C67, 0x5027, 0, 0, 0x5028, +}; +unsigned short utf8_to_euc_E4B9[] = { + 0, 0, 0x5029, 0x4735, 0, 0x3557, 0, 0, + 0, 0, 0, 0x4737, 0, 0x4663, 0x3843, 0x4B33, + 0, 0, 0, 0, 0, 0x6949, 0x502A, 0x3E68, + 0x502B, 0x3235, 0, 0, 0, 0x3665, 0x3870, 0x4C69, + 0, 0, 0x5626, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x4D70, 0, 0x467D, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x3425, 0, +}; +unsigned short utf8_to_euc_E4BA[] = { + 0x3535, 0, 0x502C, 0, 0, 0x502D, 0x4E3B, 0, + 0x4D3D, 0x4168, 0x502F, 0x3B76, 0x4673, 0, 0x5032, 0, + 0, 0x313E, 0x385F, 0, 0x385E, 0x3066, 0, 0, + 0x4F4B, 0x4F4A, 0, 0x3A33, 0x3021, 0, 0x5033, 0x5034, + 0x5035, 0x4B34, 0x5036, 0, 0x3872, 0x3067, 0x4B72, 0, + 0x357C, 0, 0, 0x357D, 0x357E, 0x4462, 0x4E3C, 0, + 0x5037, 0, 0, 0x5038, 0, 0, 0x5039, 0, + 0, 0, 0x3F4D, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E4BB[] = { + 0x3D3A, 0x3F4E, 0x503E, 0, 0x503C, 0, 0x503D, 0x3558, + 0, 0, 0x3A23, 0x3270, 0, 0x503B, 0x503A, 0x4A29, + 0, 0, 0, 0, 0x3B46, 0x3B45, 0x423E, 0x503F, + 0x4955, 0x4067, 0, 0, 0, 0x2138, 0x5040, 0x5042, + 0, 0x792E, 0, 0x4265, 0x4E61, 0x304A, 0, 0, + 0, 0, 0, 0, 0, 0x5041, 0x323E, 0, + 0x3644, 0, 0x4367, 0, 0, 0, 0x376F, 0x5043, + 0, 0, 0, 0x4724, 0x792F, 0, 0, 0, +}; +unsigned short utf8_to_euc_E4BC[] = { + 0x7930, 0x346B, 0, 0x7931, 0, 0, 0, 0, + 0, 0x5044, 0x304B, 0, 0, 0x3860, 0x346C, 0x497A, + 0x4832, 0x3559, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3271, 0, 0x5067, 0x4541, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x476C, + 0x5046, 0, 0, 0, 0x483C, 0, 0x4E62, 0, + 0x3F2D, 0x7932, 0x3B47, 0, 0x3B77, 0x3240, 0, 0, +}; +unsigned short utf8_to_euc_E4BD[] = { + 0, 0, 0, 0x4451, 0, 0, 0x4322, 0x504A, + 0, 0, 0, 0, 0, 0x304C, 0x4463, 0x3D3B, + 0x3A34, 0x4D24, 0, 0x424E, 0, 0x323F, 0x7933, 0x5049, + 0, 0x4D3E, 0x5045, 0x5047, 0x3A6E, 0x5048, 0x5524, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x5050, 0, 0, 0, 0, 0, 0x5053, + 0x5051, 0, 0, 0x3242, 0, 0x4A3B, 0x504B, 0, + 0, 0, 0, 0x504F, 0x3873, 0, 0, 0x3B48, +}; +unsigned short utf8_to_euc_E4BE[] = { + 0, 0, 0, 0x3426, 0, 0, 0x5054, 0, + 0x504C, 0, 0x7935, 0x4E63, 0, 0x3B78, 0, 0x504D, + 0, 0x5052, 0x7934, 0, 0x7937, 0, 0x5055, 0, + 0x504E, 0, 0x7936, 0x3621, 0, 0x304D, 0, 0, + 0x3622, 0x3241, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x5525, 0, 0x4B79, 0x496E, 0x3874, + 0, 0, 0, 0, 0, 0x3F2F, 0x4E37, 0, + 0, 0, 0, 0, 0, 0, 0, 0x4A58, +}; +unsigned short utf8_to_euc_E4BF[] = { + 0, 0, 0x3738, 0x4225, 0x3264, 0, 0, 0, + 0, 0x7926, 0x3D53, 0, 0, 0x7938, 0x5059, 0, + 0x505E, 0x505C, 0, 0, 0x5057, 0, 0, 0x422F, + 0x505A, 0, 0x505D, 0x505B, 0, 0x4A5D, 0, 0x5058, + 0, 0x3F2E, 0, 0x4B73, 0x505F, 0x5060, 0, 0, + 0, 0, 0, 0, 0, 0, 0x3D24, 0x506D, + 0, 0, 0, 0x4750, 0, 0x4936, 0x5068, 0, + 0x4A70, 0, 0x3236, 0, 0, 0, 0x506C, 0x793B, +}; +unsigned short utf8_to_euc_E580[] = { + 0, 0, 0, 0, 0, 0x5066, 0x506F, 0, + 0, 0x4152, 0, 0x3844, 0, 0x475C, 0, 0x6047, + 0, 0x506E, 0x455D, 0, 0x5063, 0, 0x3876, 0, + 0, 0x3875, 0x5061, 0, 0, 0, 0x793C, 0x3C5A, + 0, 0x5069, 0x793A, 0x4A6F, 0x434D, 0x5065, 0x3771, 0, + 0x5062, 0x506A, 0x5064, 0x4E51, 0x506B, 0x4F41, 0, 0, + 0, 0, 0, 0, 0, 0, 0x3666, 0, + 0, 0x3770, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E581[] = { + 0x7939, 0, 0x793F, 0x5070, 0, 0, 0x793D, 0x5071, + 0x5075, 0x304E, 0, 0, 0, 0, 0, 0x4A50, + 0x5074, 0, 0, 0, 0, 0x5073, 0x5077, 0, + 0, 0, 0x5076, 0, 0x4464, 0, 0, 0, + 0, 0, 0, 0, 0, 0x3772, 0, 0, + 0, 0, 0, 0, 0x5078, 0, 0, 0, + 0x793E, 0, 0x3C45, 0, 0x4226, 0x4465, 0x3676, 0, + 0x5079, 0, 0, 0, 0, 0x3536, 0, 0, +}; +unsigned short utf8_to_euc_E582[] = { + 0x507A, 0, 0, 0, 0, 0x507C, 0, 0, + 0, 0, 0, 0, 0, 0x4B35, 0, 0, + 0, 0x3766, 0, 0, 0x7940, 0, 0, 0, + 0x3B31, 0x4877, 0x507B, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x3A45, 0x4D43, 0, 0, + 0, 0, 0x507E, 0x5123, 0x507D, 0x3A44, 0, 0x3D7D, + 0, 0, 0, 0, 0, 0, 0x3739, 0, +}; +unsigned short utf8_to_euc_E583[] = { + 0, 0, 0x5124, 0, 0, 0x364F, 0, 0, + 0, 0x5121, 0x5122, 0, 0, 0x462F, 0, 0x417C, + 0, 0x3623, 0, 0, 0, 0x4B4D, 0x5125, 0, + 0x7942, 0, 0x4E3D, 0, 0, 0, 0x5126, 0, + 0, 0, 0, 0x5129, 0, 0x5127, 0, 0x414E, + 0, 0, 0, 0, 0, 0x5128, 0x512A, 0, + 0, 0, 0, 0, 0x7941, 0x512C, 0, 0, + 0, 0x512B, 0, 0x4A48, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E584[] = { + 0x3537, 0x512E, 0x512F, 0, 0x322F, 0, 0, 0, + 0, 0x512D, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3C74, 0, 0x5132, 0x5131, 0x5130, 0, + 0x5056, 0, 0x5133, 0, 0, 0, 0, 0x3D7E, + 0, 0x5134, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4D25, 0, 0, 0, 0, 0, + 0, 0, 0x4C59, 0, 0, 0, 0, 0x5136, + 0, 0, 0x5135, 0x5138, 0x5137, 0, 0, 0x5139, +}; +unsigned short utf8_to_euc_E585[] = { + 0x513A, 0x3074, 0, 0x3835, 0x373B, 0x3D3C, 0x437B, 0x3624, + 0x4068, 0x3877, 0x7943, 0x396E, 0x513C, 0x4C48, 0x4546, 0, + 0x3B79, 0, 0x513B, 0, 0x513D, 0, 0, 0, + 0, 0, 0x455E, 0, 0x3375, 0, 0, 0, + 0, 0, 0x513E, 0, 0x7944, 0x467E, 0, 0, + 0x4134, 0x5140, 0x5141, 0x482C, 0x3878, 0x4F3B, 0x5142, 0, + 0, 0x3626, 0, 0, 0, 0x4A3C, 0x4236, 0x3671, + 0x4535, 0, 0, 0, 0x3773, 0, 0, 0, +}; +unsigned short utf8_to_euc_E586[] = { + 0x5143, 0, 0x5144, 0, 0, 0x4662, 0x315F, 0, + 0, 0x5147, 0x3A7D, 0, 0x5146, 0x3A46, 0, 0x5148, + 0x666E, 0x5149, 0x4B41, 0x514A, 0, 0x514B, 0x514C, 0x3E69, + 0, 0x3C4C, 0, 0, 0, 0x7945, 0, 0, + 0x3427, 0, 0x514F, 0, 0x514D, 0x4C3D, 0x514E, 0, + 0x495A, 0x5150, 0x5151, 0x5152, 0x455F, 0, 0, 0, + 0x5156, 0x5154, 0x5155, 0x5153, 0x3A63, 0x5157, 0x4C6A, 0x4E64, + 0, 0, 0, 0, 0, 0x5158, 0x7946, 0, +}; +unsigned short utf8_to_euc_E587[] = { + 0, 0, 0, 0, 0x4028, 0x5159, 0x3D5A, 0, + 0, 0x515A, 0, 0x437C, 0x4E3F, 0x4560, 0, 0, + 0, 0, 0, 0, 0, 0, 0x5245, 0, + 0, 0, 0, 0x515B, 0x7425, 0x3645, 0, 0, + 0x515C, 0x4B5E, 0, 0, 0, 0, 0x3D68, 0x427C, + 0, 0x515E, 0x4664, 0, 0x7947, 0x515F, 0, 0, + 0x5160, 0x332E, 0, 0, 0, 0x5161, 0x3627, 0, + 0x464C, 0x317A, 0x3D50, 0, 0, 0x4821, 0x5162, 0, +}; +unsigned short utf8_to_euc_E588[] = { + 0x4561, 0, 0, 0x3F4F, 0x5163, 0, 0x4A2C, 0x405A, + 0x3422, 0, 0x3429, 0x5164, 0, 0, 0x5166, 0, + 0, 0x373A, 0, 0, 0x5165, 0x7948, 0, 0x4E73, + 0, 0, 0, 0, 0, 0x3D69, 0, 0, + 0, 0, 0, 0, 0x483D, 0x4A4C, 0, 0x5167, + 0, 0x4D78, 0x5168, 0, 0, 0, 0x5169, 0, + 0x457E, 0, 0, 0x516A, 0, 0, 0x4029, 0x3A7E, + 0x3774, 0x516B, 0x3B49, 0x396F, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E589[] = { + 0, 0, 0, 0x4466, 0x516D, 0, 0, 0x4227, + 0, 0, 0x3A6F, 0x516E, 0x516F, 0x4130, 0, 0x516C, + 0, 0, 0, 0, 0x5171, 0, 0x4B36, 0, + 0, 0, 0, 0x3964, 0, 0, 0x5170, 0, + 0, 0, 0, 0x3775, 0x3A5E, 0x476D, 0, 0, + 0, 0x5174, 0x5172, 0, 0, 0, 0, 0x497B, + 0x3E6A, 0x517B, 0x3364, 0x5175, 0x5173, 0x414F, 0, 0, + 0, 0, 0, 0, 0, 0x5177, 0, 0x5176, +}; +unsigned short utf8_to_euc_E58A[] = { + 0, 0, 0, 0x3344, 0, 0, 0, 0x3760, + 0x517C, 0x4E2D, 0, 0, 0, 0x5178, 0, 0, + 0, 0x517D, 0x517A, 0, 0x5179, 0, 0, 0, + 0, 0, 0, 0x4E4F, 0x7949, 0, 0, 0x3879, + 0x3243, 0, 0, 0x4E74, 0, 0, 0x794A, 0, + 0, 0x3D75, 0x4558, 0x3965, 0x5222, 0x5223, 0, 0x7B3C, + 0, 0x4E65, 0, 0, 0x4F2B, 0x5225, 0, 0, + 0, 0x387A, 0, 0, 0x5224, 0, 0x332F, 0, +}; +unsigned short utf8_to_euc_E58B[] = { + 0x794B, 0x5226, 0, 0x4B56, 0, 0x443C, 0, 0x4D26, + 0, 0x4A59, 0, 0, 0, 0x5227, 0, 0, + 0, 0, 0x7055, 0, 0, 0x4630, 0, 0x5228, + 0x342A, 0x4C33, 0, 0x794C, 0, 0x3E21, 0x5229, 0x4A67, + 0x522D, 0, 0x402A, 0x522A, 0x3650, 0, 0x522B, 0x342B, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x372E, 0x522E, 0, 0x522F, 0, 0, + 0x5230, 0x5231, 0x3C5B, 0, 0, 0, 0x387B, 0x4C5E, +}; +unsigned short utf8_to_euc_E58C[] = { + 0x794D, 0x4C68, 0x4677, 0, 0, 0x4A71, 0x5232, 0x794E, + 0x5233, 0, 0, 0, 0, 0x5235, 0, 0x5237, + 0x5236, 0, 0, 0, 0, 0x5238, 0x323D, 0x4B4C, + 0, 0x3A7C, 0x5239, 0, 0, 0x4159, 0, 0, + 0x3E22, 0x3629, 0, 0x523A, 0x794F, 0, 0, 0, + 0, 0, 0x485B, 0, 0, 0, 0, 0x523B, + 0, 0x523C, 0, 0x523D, 0, 0, 0, 0, + 0x523E, 0x4924, 0x3668, 0x3065, 0, 0, 0, 0x463F, +}; +unsigned short utf8_to_euc_E58D[] = { + 0x523F, 0x3D3D, 0, 0x4069, 0, 0x5241, 0x5240, 0x3E23, + 0x3861, 0x5243, 0x483E, 0, 0, 0x5244, 0, 0, + 0, 0x485C, 0x4234, 0x426E, 0x3628, 0, 0, 0x466E, + 0x4331, 0, 0x476E, 0, 0x4B4E, 0, 0x5246, 0, + 0x406A, 0, 0, 0, 0, 0, 0x3735, 0, + 0, 0x5247, 0, 0, 0, 0, 0x5248, 0x312C, + 0x3075, 0x346D, 0x7950, 0x4228, 0x3551, 0x4D71, 0, 0x524B, + 0x3237, 0, 0, 0x524A, 0, 0, 0, 0x362A, +}; +unsigned short utf8_to_euc_E58E[] = { + 0, 0, 0x524C, 0, 0x4C71, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x7951, 0, 0, 0x524D, 0, + 0x4E52, 0, 0x387C, 0, 0, 0, 0, 0x3836, + 0x524E, 0, 0, 0, 0, 0x5250, 0x524F, 0, + 0x3F5F, 0x3139, 0, 0, 0, 0x315E, 0x5251, 0, + 0x5252, 0, 0x7952, 0x3837, 0, 0, 0x5253, 0, + 0, 0, 0, 0x356E, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E58F[] = { + 0, 0, 0x3B32, 0x5254, 0, 0, 0, 0, + 0x4B74, 0x3A35, 0x355A, 0x4D27, 0x4150, 0x483F, 0x3C7D, 0, + 0, 0, 0, 0, 0x3D47, 0, 0x3C68, 0x3C75, + 0, 0x3D76, 0, 0x4840, 0, 0x7953, 0, 0x5257, + 0, 0x3143, 0x4151, 0x387D, 0x3845, 0x3667, 0, 0, + 0x525B, 0x4321, 0x427E, 0x362B, 0x3E24, 0x525C, 0x525A, 0x3244, + 0x4266, 0x3C38, 0x3B4B, 0x3126, 0, 0, 0x3370, 0x3966, + 0x3B4A, 0, 0x525D, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E590[] = { + 0, 0x525E, 0, 0x3549, 0x3346, 0, 0, 0, + 0x3967, 0x3548, 0x445F, 0x3125, 0x4631, 0x4C3E, 0x3921, 0x4D79, + 0x4547, 0x387E, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x372F, 0, 0x5267, 0, 0x3663, + 0x4B4A, 0, 0, 0, 0, 0, 0x485D, 0, + 0, 0x5266, 0, 0x345E, 0x5261, 0x5262, 0x5264, 0, + 0, 0, 0, 0, 0, 0, 0x5265, 0, + 0x355B, 0x3F61, 0, 0x4A2D, 0x5263, 0x525F, 0x3863, 0, +}; +unsigned short utf8_to_euc_E591[] = { + 0x5260, 0, 0x4F24, 0, 0, 0, 0x4A72, 0, + 0x4468, 0x3862, 0x3970, 0, 0, 0, 0x5268, 0, + 0, 0x465D, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x526C, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x3C7E, 0, 0x3C76, 0, 0, 0, 0, 0, + 0x526F, 0x526D, 0, 0x4C23, 0, 0x526A, 0x5273, 0x526E, + 0, 0, 0, 0x5271, 0x3846, 0x4C3F, 0, 0, +}; +unsigned short utf8_to_euc_E592[] = { + 0x5272, 0, 0, 0, 0x5274, 0, 0x5276, 0, + 0, 0, 0x7956, 0x3A70, 0x4F42, 0, 0x526B, 0x5269, + 0x5275, 0, 0x5270, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x7955, 0, 0, 0, + 0, 0, 0x5278, 0, 0x5323, 0x527A, 0, 0, + 0x527E, 0x7957, 0, 0x5321, 0x527B, 0, 0, 0x533E, + 0, 0, 0x3A69, 0x3331, 0, 0, 0, 0, + 0x5279, 0, 0, 0, 0x5325, 0x3076, 0x5324, 0, +}; +unsigned short utf8_to_euc_E593[] = { + 0x3025, 0x494A, 0x5322, 0, 0x527C, 0, 0, 0x5277, + 0x527D, 0x3A48, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x5326, 0, 0, 0, 0, 0, 0, 0, + 0, 0x3077, 0x532F, 0, 0, 0x5327, 0x5328, 0, + 0x3E25, 0x4B69, 0, 0, 0, 0x532D, 0x532C, 0, + 0, 0, 0x452F, 0, 0, 0, 0, 0, + 0, 0, 0x532E, 0, 0, 0x532B, 0, 0x7958, +}; +unsigned short utf8_to_euc_E594[] = { + 0, 0, 0, 0, 0x3134, 0, 0x3A36, 0x3F30, + 0, 0, 0, 0, 0, 0, 0, 0x5329, + 0x4562, 0, 0, 0, 0x532A, 0, 0x3022, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x5334, 0x4D23, + 0, 0x3E27, 0, 0x533A, 0, 0, 0, 0, + 0x5339, 0x5330, 0, 0, 0, 0, 0x4243, 0, +}; +unsigned short utf8_to_euc_E595[] = { + 0x5331, 0, 0, 0, 0x426F, 0x5336, 0x3E26, 0, + 0, 0, 0, 0, 0x5333, 0, 0, 0x4C64, + 0, 0, 0, 0x373C, 0, 0, 0x5337, 0x5338, + 0, 0, 0, 0, 0x5335, 0x533B, 0, 0, + 0, 0, 0, 0x5332, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x5341, 0x5346, 0, 0x5342, 0, +}; +unsigned short utf8_to_euc_E596[] = { + 0x533D, 0, 0, 0x5347, 0x4131, 0, 0x7959, 0x5349, + 0, 0x3922, 0x533F, 0x437D, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x5343, 0x533C, 0x342D, 0, 0x346E, 0x3365, 0x5344, 0x5340, + 0, 0, 0, 0, 0, 0, 0, 0x3776, + 0x534A, 0x5348, 0x4153, 0x354A, 0x362C, 0, 0x5345, 0, + 0x3674, 0, 0, 0, 0, 0, 0x3144, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E597[] = { + 0, 0, 0, 0, 0x534E, 0x534C, 0, 0x5427, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x5351, 0, 0, 0, + 0, 0, 0x534B, 0, 0x534F, 0, 0, 0x534D, + 0, 0, 0, 0x3B4C, 0x5350, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x5353, + 0, 0x5358, 0, 0, 0, 0x5356, 0x5355, 0, +}; +unsigned short utf8_to_euc_E598[] = { + 0, 0, 0, 0, 0, 0, 0x4332, 0, + 0, 0x3245, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x5352, 0, 0x5354, 0x3E28, + 0x3133, 0, 0, 0x5357, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x325E, 0, 0, 0, 0, 0, 0x5362, + 0, 0x3E7C, 0x535E, 0, 0x535C, 0, 0x535D, 0, + 0x535F, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E599[] = { + 0, 0, 0x313D, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x4139, 0, 0x5359, 0, + 0x535A, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x337A, 0, 0, 0, 0, + 0, 0, 0, 0, 0x5361, 0, 0, 0, + 0x346F, 0, 0x5364, 0x5360, 0x5363, 0, 0, 0, + 0, 0, 0, 0, 0x4A2E, 0, 0, 0, + 0x4655, 0, 0x4838, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E59A[] = { + 0x5366, 0, 0, 0, 0, 0, 0x5365, 0x3345, + 0, 0, 0x5367, 0, 0, 0, 0, 0x536A, + 0, 0, 0, 0, 0x5369, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x5368, 0, 0x4739, 0, 0, 0x536B, 0, 0, + 0, 0, 0, 0, 0, 0, 0x536C, 0, + 0, 0, 0, 0, 0x536E, 0, 0x536D, 0, + 0, 0, 0, 0, 0x5370, 0, 0, 0, +}; +unsigned short utf8_to_euc_E59B[] = { + 0x5373, 0x5371, 0x536F, 0x5372, 0, 0, 0, 0, + 0x5374, 0, 0, 0, 0, 0, 0x5375, 0, + 0, 0x5376, 0, 0x5377, 0, 0, 0, 0x5378, + 0x5145, 0, 0x3C7C, 0x3B4D, 0, 0, 0x3273, 0, + 0x3078, 0, 0, 0x4344, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x5379, 0, + 0x3A24, 0, 0x304F, 0x3F5E, 0, 0, 0, 0, + 0, 0x537A, 0x3847, 0, 0, 0x3971, 0, 0x537C, +}; +unsigned short utf8_to_euc_E59C[] = { + 0x537B, 0, 0, 0x4A60, 0x537D, 0, 0, 0, + 0x5421, 0x537E, 0, 0x5422, 0, 0x5423, 0, 0x3777, + 0, 0, 0x3160, 0x5424, 0, 0, 0x5426, 0, + 0x5425, 0, 0, 0, 0x5428, 0, 0, 0x455A, + 0, 0, 0, 0, 0, 0, 0x5429, 0x3035, + 0x3A5F, 0, 0, 0, 0, 0x373D, 0, 0, + 0x434F, 0, 0, 0, 0, 0, 0, 0x542A, + 0x542B, 0, 0, 0x542D, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E59D[] = { + 0x542E, 0, 0x3A64, 0, 0, 0, 0, 0x3651, + 0, 0, 0x4B37, 0, 0, 0, 0x542C, 0x542F, + 0x3A41, 0x3923, 0, 0, 0, 0, 0, 0, + 0, 0x795A, 0, 0, 0, 0, 0, 0, + 0, 0x5433, 0, 0, 0x3A25, 0x795B, 0x4333, 0, + 0, 0x5430, 0x445A, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x5434, +}; +unsigned short utf8_to_euc_E59E[] = { + 0, 0, 0x3F62, 0, 0, 0, 0, 0, + 0x5432, 0x5435, 0, 0x373F, 0, 0, 0, 0, + 0, 0, 0, 0x5436, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x5437, 0, 0x3924, 0x3340, 0x5439, 0, 0, 0, + 0, 0, 0x543A, 0, 0x795C, 0, 0, 0, + 0x543B, 0, 0, 0x5438, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E59F[] = { + 0x5431, 0, 0, 0x543C, 0, 0, 0x543D, 0x795E, + 0x795D, 0, 0, 0x4B64, 0, 0, 0x3E6B, 0, + 0, 0, 0x543F, 0x5440, 0x543E, 0, 0x5442, 0, + 0, 0, 0, 0, 0x4738, 0, 0, 0x3068, + 0x4956, 0, 0, 0x5443, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x3E7D, 0, 0, 0x3C39, + 0, 0x475D, 0x3470, 0, 0x3A6B, 0, 0, 0, +}; +unsigned short utf8_to_euc_E5A0[] = { + 0x4B59, 0, 0x4632, 0, 0, 0x3778, 0x424F, 0, + 0, 0, 0x5441, 0x5444, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x4244, 0, 0, + 0, 0x5445, 0, 0, 0, 0x5446, 0, 0, + 0, 0x5448, 0, 0, 0x4469, 0, 0, 0, + 0, 0, 0x342E, 0, 0, 0, 0, 0x7421, + 0x3161, 0x4A73, 0, 0, 0x3E6C, 0x4548, 0, 0, + 0, 0, 0x3A66, 0, 0, 0x544E, 0, 0, +}; +unsigned short utf8_to_euc_E5A1[] = { + 0x4A3D, 0x4E5D, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3274, 0x544A, 0, 0, 0, 0, + 0, 0x413A, 0x544D, 0, 0x4563, 0, 0, 0x4549, + 0x4564, 0x4839, 0x444D, 0, 0, 0, 0x3A49, 0, + 0, 0, 0x5449, 0, 0, 0, 0, 0, + 0, 0x3176, 0, 0x4536, 0, 0, 0, 0, + 0x544B, 0, 0x5447, 0, 0, 0x3F50, 0, 0, + 0, 0x544F, 0, 0, 0, 0, 0x3D4E, 0, +}; +unsigned short utf8_to_euc_E5A2[] = { + 0, 0, 0, 0x362D, 0, 0x5450, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x4A68, 0, 0, 0, 0x417D, + 0, 0, 0, 0, 0x4446, 0, 0x7961, 0x5452, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x4B4F, 0, 0, 0x5453, 0, 0, 0x5458, 0, + 0, 0, 0x7962, 0x4A2F, 0, 0, 0, 0, + 0x5457, 0x5451, 0x5454, 0x5456, 0, 0, 0x3A26, 0, +}; +unsigned short utf8_to_euc_E5A3[] = { + 0, 0x4A49, 0, 0, 0, 0x5459, 0, 0x4345, + 0, 0, 0x3275, 0, 0x3E6D, 0, 0, 0, + 0, 0x545B, 0, 0x545A, 0, 0x3968, 0, 0x545C, + 0x545E, 0x545D, 0, 0, 0x5460, 0, 0x5455, 0x5462, + 0, 0, 0, 0, 0x5461, 0x545F, 0, 0, + 0, 0, 0, 0x3B4E, 0x3F51, 0, 0x4154, 0x5463, + 0x403C, 0x306D, 0x4764, 0, 0, 0, 0, 0x445B, + 0, 0x5465, 0x5464, 0x5466, 0x5467, 0x5468, 0, 0, +}; +unsigned short utf8_to_euc_E5A4[] = { + 0, 0, 0x5469, 0, 0, 0, 0, 0, + 0, 0x4A51, 0x546A, 0x7963, 0, 0, 0, 0x3246, + 0x546B, 0, 0, 0, 0, 0x4D3C, 0x3330, 0, + 0x5249, 0x3D48, 0x423F, 0x546C, 0x4C6B, 0, 0, 0, + 0, 0, 0x4C34, 0, 0, 0x546E, 0, 0x4267, + 0, 0x4537, 0x4240, 0x4957, 0x546F, 0x5470, 0x317B, 0, + 0, 0x3C3A, 0x5471, 0, 0, 0, 0, 0x3050, + 0x5472, 0, 0, 0, 0, 0, 0x5473, 0, +}; +unsigned short utf8_to_euc_E5A5[] = { + 0, 0, 0, 0, 0x3162, 0, 0, 0x3471, + 0x4660, 0x4A74, 0, 0, 0, 0, 0x5477, 0x4155, + 0x5476, 0x3740, 0, 0x7964, 0x4B5B, 0x5475, 0, 0x4565, + 0x5479, 0, 0x5478, 0x7965, 0, 0x7966, 0, 0, + 0x547B, 0, 0x547A, 0x7967, 0, 0x317C, 0, 0x547C, + 0x3E29, 0x547E, 0x4325, 0, 0x547D, 0, 0x4A33, 0, + 0, 0, 0, 0x3D77, 0x455B, 0, 0, 0, + 0x5521, 0, 0, 0, 0, 0x3925, 0, 0, +}; +unsigned short utf8_to_euc_E5A6[] = { + 0, 0x5522, 0x4721, 0x485E, 0x4C51, 0, 0, 0, + 0, 0, 0x4725, 0, 0, 0x552B, 0, 0, + 0, 0, 0, 0x3538, 0, 0, 0x4D45, 0, + 0, 0x4C2F, 0, 0x562C, 0, 0x5523, 0, 0, + 0, 0, 0, 0x5526, 0x7968, 0x4245, 0, 0, + 0x4B38, 0, 0, 0, 0x454A, 0, 0, 0, + 0, 0, 0x5527, 0, 0, 0, 0, 0, + 0, 0x4B65, 0x7969, 0x3A4A, 0, 0, 0x3E2A, 0, +}; +unsigned short utf8_to_euc_E5A7[] = { + 0, 0, 0, 0, 0, 0, 0x5528, 0, + 0, 0x3B50, 0, 0x3B4F, 0, 0, 0, 0, + 0x3039, 0x3848, 0, 0x402B, 0x3051, 0, 0, 0, + 0, 0x552C, 0x552D, 0, 0x552A, 0, 0, 0, + 0, 0, 0, 0, 0, 0x3138, 0x342F, 0, + 0x5529, 0, 0x4C45, 0x4931, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x3028, 0, + 0, 0, 0, 0x3079, 0, 0, 0, 0x3B51, +}; +unsigned short utf8_to_euc_E5A8[] = { + 0, 0x3052, 0, 0x3023, 0, 0, 0, 0, + 0, 0x5532, 0, 0, 0, 0, 0, 0, + 0, 0x5530, 0, 0, 0, 0, 0, 0, + 0x4C3C, 0, 0x5533, 0, 0x5531, 0, 0, 0x552F, + 0x3F31, 0, 0, 0, 0, 0x552E, 0, 0, + 0, 0x4A5A, 0, 0, 0, 0, 0, 0x3864, + 0, 0, 0, 0, 0, 0x5537, 0x5538, 0, + 0, 0, 0, 0, 0x3E2B, 0, 0, 0, +}; +unsigned short utf8_to_euc_E5A9[] = { + 0x5534, 0x4F2C, 0, 0, 0, 0, 0x474C, 0, + 0, 0x5536, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3A27, 0, 0, 0, 0, 0, + 0, 0, 0x5539, 0, 0, 0, 0x4958, 0, + 0, 0, 0x553A, 0, 0x5535, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x4C3B, +}; +unsigned short utf8_to_euc_E5AA[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x475E, 0, 0, 0, 0, 0, + 0, 0, 0x553B, 0x4932, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x553C, 0x5540, 0x553D, 0, +}; +unsigned short utf8_to_euc_E5AB[] = { + 0, 0x3247, 0x553F, 0, 0, 0, 0, 0, + 0, 0x3C3B, 0, 0x553E, 0x3779, 0, 0, 0, + 0x554C, 0, 0, 0, 0, 0, 0x5545, 0x5542, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x4364, 0, 0x5541, 0, 0, 0x5543, 0, + 0, 0x5544, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x5546, 0x5547, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E5AC[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x3472, 0, 0x5549, 0x5548, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x554A, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3E6E, 0, 0, 0, 0, 0, + 0, 0, 0x554D, 0, 0x445C, 0, 0, 0, + 0x3145, 0, 0x554B, 0, 0, 0, 0x554E, 0, + 0, 0, 0, 0, 0, 0, 0x554F, 0, +}; +unsigned short utf8_to_euc_E5AD[] = { + 0x5552, 0, 0, 0x5550, 0, 0x5551, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x3B52, 0x5553, 0, 0, 0x3926, 0x5554, 0x796A, 0x3B7A, + 0x4238, 0, 0x5555, 0x5556, 0x3B5A, 0x3927, 0, 0x4C52, + 0, 0, 0, 0x3528, 0x3849, 0x5557, 0x3358, 0, + 0, 0x5558, 0, 0x4239, 0, 0, 0, 0, + 0x5559, 0x5623, 0, 0x555A, 0, 0x555B, 0, 0, + 0x555C, 0, 0x555E, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E5AE[] = { + 0x555F, 0, 0, 0x5560, 0, 0x4270, 0, 0x3127, + 0x3C69, 0x3042, 0, 0x4157, 0x3430, 0x3C35, 0, 0x3928, + 0, 0, 0, 0, 0, 0x4566, 0, 0x3D21, + 0x3431, 0x4368, 0x446A, 0x3038, 0x3539, 0x4A75, 0, 0x3C42, + 0, 0, 0x3552, 0x406B, 0x3C3C, 0x4D28, 0x5561, 0, + 0, 0, 0, 0, 0, 0, 0x355C, 0, + 0x3A4B, 0, 0, 0x3332, 0x3163, 0x3E2C, 0x3248, 0, + 0x5562, 0x4D46, 0, 0, 0, 0, 0, 0x3D49, +}; +unsigned short utf8_to_euc_E5AF[] = { + 0x796B, 0, 0x3C64, 0x5563, 0x3473, 0x4652, 0x4C29, 0x5564, + 0, 0x5565, 0, 0, 0x4959, 0, 0, 0, + 0x5567, 0, 0x3428, 0x3677, 0x5566, 0, 0, 0, + 0x796D, 0, 0, 0x3432, 0, 0x3F32, 0x556B, 0x3B21, + 0, 0x3249, 0x556A, 0, 0x5568, 0x556C, 0x5569, 0x472B, + 0x5C4D, 0x3F33, 0, 0x556D, 0x796E, 0, 0x4E40, 0, + 0x556E, 0, 0, 0x5570, 0, 0x437E, 0x556F, 0, + 0x4023, 0, 0x3B7B, 0, 0, 0, 0x4250, 0x3C77, +}; +unsigned short utf8_to_euc_E5B0[] = { + 0, 0x4975, 0x406C, 0, 0x3C4D, 0x5571, 0x3E2D, 0x5572, + 0x5573, 0x3053, 0x423A, 0x3F52, 0, 0x5574, 0x4633, 0x3E2E, + 0, 0x3E2F, 0, 0x5575, 0, 0, 0x406D, 0, + 0, 0, 0x3E30, 0, 0, 0, 0x796F, 0, + 0x5576, 0, 0x5577, 0, 0x4C60, 0, 0, 0, + 0x5578, 0, 0, 0, 0, 0x3646, 0, 0, + 0, 0x3D22, 0, 0, 0, 0, 0, 0, + 0x5579, 0x557A, 0x3C5C, 0x3F2C, 0x4674, 0x3F54, 0x4878, 0x4722, +}; +unsigned short utf8_to_euc_E5B1[] = { + 0x3649, 0x557B, 0, 0, 0, 0x356F, 0x557C, 0, + 0x367E, 0, 0x464F, 0x3230, 0, 0x3B53, 0x557D, 0x5622, + 0x5621, 0x367D, 0, 0x557E, 0, 0x4538, 0, 0, + 0, 0, 0, 0, 0, 0, 0x4230, 0, + 0x454B, 0x3C48, 0, 0, 0x4158, 0x4D7A, 0, 0, + 0, 0, 0, 0, 0x5624, 0, 0x5625, 0x4656, + 0, 0x3B33, 0, 0, 0, 0, 0x5627, 0, + 0, 0x5628, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E5B2[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x5629, 0, 0, 0, + 0x3474, 0x562A, 0, 0, 0x562B, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x322C, 0, 0, 0, 0, 0x7970, 0, + 0x413B, 0x3464, 0, 0x562D, 0x4C28, 0, 0, 0, + 0, 0x4252, 0, 0x3359, 0, 0, 0x562F, 0x5631, + 0x345F, 0, 0x7971, 0x562E, 0x5630, 0, 0x5633, 0, +}; +unsigned short utf8_to_euc_E5B3[] = { + 0, 0, 0, 0, 0, 0x5632, 0, 0x5634, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x5635, 0, 0, 0, 0, 0, 0, + 0x463D, 0x362E, 0, 0, 0, 0, 0, 0, + 0x3265, 0x5636, 0x563B, 0, 0, 0x5639, 0, 0x4A77, + 0x4A76, 0, 0, 0, 0, 0x7972, 0x4567, 0, + 0, 0, 0x5638, 0x3D54, 0, 0x5637, 0, 0, +}; +unsigned short utf8_to_euc_E5B4[] = { + 0, 0, 0, 0, 0, 0, 0, 0x3F72, + 0, 0, 0, 0x563C, 0, 0, 0x3A6A, 0, + 0, 0x5642, 0, 0, 0x5643, 0x563D, 0x3333, 0x563E, + 0x5647, 0x5646, 0x5645, 0x5641, 0, 0, 0, 0x5640, + 0, 0, 0x5644, 0, 0, 0, 0, 0x7973, + 0, 0x4A78, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E5B5[] = { + 0, 0, 0x7976, 0, 0, 0, 0, 0, + 0, 0, 0, 0x564B, 0x5648, 0, 0x564A, 0, + 0x4D72, 0, 0x5649, 0x7974, 0, 0, 0, 0, + 0, 0, 0, 0, 0x563F, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x3F73, 0, 0, 0x564C, 0x7977, 0, 0x3A37, + 0, 0, 0, 0x564D, 0, 0, 0x564E, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E5B6[] = { + 0, 0, 0x5651, 0, 0x5650, 0, 0, 0x564F, + 0, 0, 0, 0x4568, 0x563A, 0, 0, 0, + 0x5657, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x5653, 0, 0, + 0, 0, 0x5652, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x5654, 0, 0x5655, 0, + 0, 0, 0, 0, 0, 0, 0, 0x5658, + 0x7978, 0x7979, 0x4E66, 0, 0x5659, 0x5656, 0, 0, +}; +unsigned short utf8_to_euc_E5B7[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x565A, 0, 0, 0x3460, 0x565B, 0, 0, + 0x797A, 0, 0x565D, 0x565C, 0, 0, 0x565E, 0, + 0, 0, 0, 0x565F, 0, 0x406E, 0x3D23, 0, + 0, 0x3D64, 0, 0x4163, 0, 0x3929, 0x3A38, 0x392A, + 0x3570, 0, 0, 0x5660, 0, 0, 0x3A39, 0, + 0, 0x384A, 0x5661, 0x4C26, 0x4743, 0x5662, 0, 0x392B, + 0, 0, 0, 0x342C, 0, 0x4327, 0x3652, 0, +}; +unsigned short utf8_to_euc_E5B8[] = { + 0, 0, 0x3B54, 0x495B, 0, 0, 0x4841, 0, + 0, 0, 0, 0x5663, 0x3475, 0, 0, 0, + 0, 0x5666, 0, 0, 0, 0, 0x4421, 0, + 0, 0x5665, 0x5664, 0x5667, 0, 0x446B, 0, 0, + 0, 0, 0, 0, 0, 0x3F63, 0, 0, + 0, 0, 0, 0x3B55, 0, 0x404A, 0, 0x4253, + 0x3522, 0, 0, 0x4422, 0, 0, 0x5668, 0x5669, + 0x3E6F, 0, 0, 0, 0, 0x4B39, 0, 0, +}; +unsigned short utf8_to_euc_E5B9[] = { + 0x566C, 0, 0, 0x566B, 0x566A, 0x497D, 0, 0x5673, + 0, 0, 0, 0, 0x4B5A, 0, 0x566D, 0, + 0, 0, 0, 0, 0x566F, 0x4B6B, 0, 0x566E, + 0, 0, 0, 0, 0, 0, 0, 0x5670, + 0, 0x4828, 0x5671, 0x4A3E, 0x5672, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3433, 0x4A3F, 0x472F, 0x5674, 0x5675, 0, + 0x392C, 0x3434, 0x5676, 0x3838, 0x4D44, 0x4D29, 0x3476, 0x5678, +}; +unsigned short utf8_to_euc_E5BA[] = { + 0, 0x4423, 0, 0x392D, 0x3E31, 0, 0, 0x485F, + 0, 0, 0x3E32, 0, 0, 0, 0, 0x3D78, + 0, 0, 0, 0, 0, 0x446C, 0x4A79, 0x4539, + 0, 0, 0x392E, 0, 0x495C, 0, 0, 0, + 0x5679, 0, 0, 0, 0, 0, 0x4559, 0x3A42, + 0, 0, 0, 0x384B, 0, 0x446D, 0, 0, + 0, 0, 0, 0, 0, 0x3043, 0x3D6E, 0x392F, + 0x4D47, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E5BB[] = { + 0, 0x567A, 0x567B, 0x4751, 0, 0, 0, 0, + 0x567C, 0x4E77, 0x4F2D, 0, 0, 0, 0, 0x567E, + 0x567D, 0, 0, 0x3347, 0, 0, 0x5721, 0, + 0, 0, 0x5724, 0x5725, 0, 0x5723, 0, 0x4940, + 0x3E33, 0x5727, 0x5726, 0x5722, 0, 0, 0, 0, + 0x5728, 0x5729, 0, 0, 0x572A, 0, 0, 0, + 0x572D, 0x572B, 0, 0x572C, 0x572E, 0, 0x3164, 0x446E, + 0x572F, 0, 0x377A, 0x3276, 0x4736, 0, 0x5730, 0x467B, +}; +unsigned short utf8_to_euc_E5BC[] = { + 0, 0x4A5B, 0, 0x5731, 0x4F2E, 0, 0, 0, + 0, 0x5732, 0x4A40, 0x5735, 0x5021, 0x5031, 0, 0x3C30, + 0x4675, 0x5736, 0, 0x355D, 0x4424, 0x307A, 0x5737, 0x4A26, + 0x3930, 0, 0, 0x4350, 0, 0, 0, 0x446F, + 0, 0x797B, 0, 0, 0, 0x4C6F, 0x3839, 0x384C, + 0, 0x5738, 0, 0, 0, 0x5739, 0, 0x573F, + 0, 0x3C65, 0, 0, 0x797C, 0x4425, 0, 0x362F, + 0x573A, 0, 0, 0, 0x492B, 0, 0x4346, 0, +}; +unsigned short utf8_to_euc_E5BD[] = { + 0, 0x573B, 0, 0, 0, 0x792C, 0, 0, + 0x573C, 0, 0x3630, 0, 0x573D, 0, 0x573E, 0, + 0, 0x5740, 0, 0x4576, 0, 0, 0x5741, 0x5742, + 0, 0x5743, 0, 0, 0x5734, 0x5733, 0, 0, + 0, 0x5744, 0x3741, 0, 0, 0, 0x4927, 0x797D, + 0, 0x3A4C, 0x4937, 0x4426, 0x494B, 0x5745, 0, 0, + 0x3E34, 0x3146, 0, 0x5746, 0, 0, 0, 0x5747, + 0, 0x4C72, 0, 0, 0x4860, 0, 0, 0x574A, +}; +unsigned short utf8_to_euc_E5BE[] = { + 0x317D, 0x402C, 0x5749, 0x5748, 0x3742, 0x4254, 0, 0x574E, + 0x574C, 0, 0x574B, 0x4E27, 0x3865, 0, 0, 0, + 0x3D79, 0x574D, 0x454C, 0x3D3E, 0, 0, 0, 0x4640, + 0x5751, 0x5750, 0, 0, 0, 0, 0x574F, 0, + 0x5752, 0x3866, 0, 0, 0, 0, 0, 0, + 0x5753, 0x497C, 0x3D5B, 0, 0, 0x5754, 0x4879, 0, + 0, 0, 0, 0x4641, 0x4427, 0, 0, 0x797E, + 0, 0x4530, 0, 0, 0x5755, 0x352B, 0, 0, +}; +unsigned short utf8_to_euc_E5BF[] = { + 0, 0, 0, 0x3F34, 0, 0x492C, 0, 0, + 0, 0, 0, 0, 0x3477, 0x4726, 0, 0, + 0, 0, 0, 0, 0, 0, 0x5756, 0x3B56, + 0x4B3A, 0x4B3B, 0, 0, 0x317E, 0x575B, 0x7A21, 0, + 0x4369, 0, 0, 0, 0x5758, 0, 0, 0, + 0, 0, 0, 0x3277, 0, 0, 0, 0, + 0x582D, 0x575A, 0, 0, 0, 0x4730, 0, 0, + 0x5759, 0, 0, 0x5757, 0, 0x397A, 0, 0x575D, +}; +unsigned short utf8_to_euc_E680[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x5763, 0x5769, + 0x5761, 0, 0x455C, 0, 0, 0x5766, 0x495D, 0, + 0, 0x5760, 0, 0x5765, 0x4E67, 0x3B57, 0, 0, + 0x4255, 0x575E, 0, 0, 0, 0x355E, 0x5768, 0x402D, + 0x3165, 0x5762, 0x3278, 0x5767, 0, 0, 0, 0x3631, + 0, 0x5764, 0, 0, 0, 0, 0, 0, + 0, 0, 0x576A, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E681[] = { + 0, 0x576C, 0x5776, 0x5774, 0, 0, 0x5771, 0, + 0, 0, 0x5770, 0x4E78, 0, 0x5772, 0, 0, + 0x3632, 0, 0x3931, 0, 0, 0x3D7A, 0, 0, + 0, 0x5779, 0x576B, 0, 0, 0x7A22, 0, 0x576F, + 0x575F, 0, 0x327A, 0x5773, 0x5775, 0x4351, 0, 0, + 0x3A28, 0x3238, 0x576D, 0x5778, 0x5777, 0x3633, 0, 0x4229, + 0x3366, 0, 0, 0, 0, 0x3743, 0, 0x576E, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E682[] = { + 0, 0x577A, 0, 0x577D, 0x5821, 0x7A23, 0, 0, + 0, 0x3C3D, 0x7A24, 0x5827, 0x4470, 0x577B, 0, 0, + 0, 0, 0x5825, 0, 0x3279, 0, 0x5823, 0x5824, + 0, 0, 0x577E, 0x5822, 0, 0, 0, 0x3867, + 0x4D2A, 0, 0, 0x3435, 0, 0, 0x3159, 0x5826, + 0, 0x473A, 0x302D, 0, 0, 0, 0, 0, + 0, 0, 0x4861, 0x575C, 0x582C, 0x5830, 0x4C65, 0, + 0x5829, 0, 0, 0, 0x4569, 0x582E, 0, 0, +}; +unsigned short utf8_to_euc_E683[] = { + 0, 0, 0, 0, 0, 0x3E70, 0x582F, 0x4657, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x4F47, 0, 0x582B, 0, 0x7A26, 0, 0, + 0x5831, 0, 0x397B, 0, 0x404B, 0, 0x7A25, 0x3054, + 0x582A, 0x5828, 0, 0x415A, 0, 0, 0, 0x577C, + 0x3B34, 0, 0, 0, 0, 0, 0, 0, + 0x4246, 0x583D, 0x7A28, 0x415B, 0x5838, 0, 0x5835, 0x5836, + 0, 0x3C66, 0x5839, 0x583C, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E684[] = { + 0x5837, 0x3D25, 0, 0x583A, 0, 0, 0x5834, 0, + 0x4C7C, 0x4C7B, 0, 0, 0, 0x583E, 0x583F, 0x3055, + 0, 0x7A29, 0, 0, 0, 0x5833, 0, 0, + 0, 0, 0x3672, 0x3026, 0, 0, 0, 0x3436, + 0x7A27, 0x583B, 0, 0, 0, 0, 0, 0x5843, + 0x5842, 0, 0, 0, 0x5847, 0, 0, 0, + 0x7A2B, 0, 0, 0, 0x5848, 0, 0, 0x7A2A, + 0, 0, 0, 0, 0x5846, 0x5849, 0x5841, 0x5845, +}; +unsigned short utf8_to_euc_E685[] = { + 0, 0, 0x584A, 0, 0x584B, 0, 0, 0x5840, + 0x3B7C, 0, 0x5844, 0x4256, 0x3932, 0x5832, 0x3F35, 0, + 0, 0, 0, 0x5858, 0, 0x4A69, 0, 0, + 0x584E, 0x584F, 0x5850, 0, 0, 0x5857, 0, 0x5856, + 0, 0, 0x4B7D, 0x3437, 0, 0x5854, 0, 0x3745, + 0x3334, 0, 0, 0x5851, 0, 0, 0x4E38, 0x5853, + 0x3056, 0x5855, 0, 0x584C, 0x5852, 0x5859, 0x3744, 0x584D, + 0, 0, 0, 0, 0, 0, 0x4D5D, 0, +}; +unsigned short utf8_to_euc_E686[] = { + 0, 0, 0x4D2B, 0, 0, 0, 0, 0x585C, + 0, 0, 0x5860, 0, 0, 0, 0x417E, 0, + 0x4E79, 0x5861, 0, 0, 0x585E, 0, 0x585B, 0, + 0x7A2C, 0x585A, 0x585F, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x4A30, 0, 0, 0x4634, + 0, 0x3746, 0, 0x5862, 0x585D, 0, 0x5863, 0, + 0, 0, 0x377B, 0, 0, 0, 0x3231, 0, + 0, 0, 0x586B, 0, 0, 0, 0x3438, 0, +}; +unsigned short utf8_to_euc_E687[] = { + 0, 0, 0, 0x5869, 0, 0, 0x586A, 0x3A29, + 0x5868, 0x5866, 0x5865, 0x586C, 0x5864, 0x586E, 0, 0, + 0x327B, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x5870, 0, 0, 0x586F, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4428, 0, 0x5873, 0, 0x5871, 0x5867, + 0x377C, 0, 0x5872, 0, 0x5876, 0x5875, 0x5877, 0x5874, +}; +unsigned short utf8_to_euc_E688[] = { + 0x5878, 0, 0, 0, 0, 0, 0, 0, + 0x5879, 0x587A, 0x4A6A, 0, 0x587C, 0x587B, 0x3D3F, 0, + 0x402E, 0x3266, 0x327C, 0x7A2D, 0x587D, 0, 0x303F, 0, + 0, 0, 0x404C, 0x587E, 0, 0x6C43, 0x5921, 0x3761, + 0, 0x5922, 0, 0, 0, 0, 0x406F, 0, + 0, 0, 0x5923, 0, 0, 0, 0x5924, 0x353A, + 0x5925, 0, 0x5926, 0x5927, 0x4257, 0, 0, 0, + 0x384D, 0, 0, 0x4C61, 0, 0, 0, 0x4B3C, +}; +unsigned short utf8_to_euc_E689[] = { + 0x3D6A, 0x5928, 0, 0, 0, 0, 0, 0x4070, + 0x6E3D, 0x4862, 0, 0x3C6A, 0, 0x3A4D, 0x5929, 0, + 0, 0, 0, 0x4247, 0, 0x4A27, 0, 0, + 0x4271, 0, 0, 0x592C, 0, 0, 0x592A, 0, + 0x592D, 0, 0, 0x592B, 0, 0, 0, 0, + 0x592E, 0, 0, 0, 0, 0, 0x4A31, 0, + 0, 0x3037, 0, 0, 0, 0, 0x495E, 0, + 0, 0x4863, 0, 0, 0x592F, 0, 0x5932, 0x3E35, +}; +unsigned short utf8_to_euc_E68A[] = { + 0x353B, 0, 0x5930, 0x5937, 0x3E36, 0, 0, 0, + 0, 0x5931, 0x4744, 0, 0, 0, 0, 0, + 0, 0x4D5E, 0x5933, 0x5934, 0x5938, 0x456A, 0x5935, 0x3933, + 0x405E, 0, 0, 0x5946, 0x4834, 0, 0x4272, 0, + 0, 0, 0, 0, 0, 0, 0x7A2E, 0, + 0, 0, 0, 0x4864, 0x5A2D, 0, 0, 0, + 0, 0x4A7A, 0, 0, 0, 0x4471, 0, 0, + 0, 0x4B75, 0, 0x593B, 0x3221, 0x436A, 0, 0, +}; +unsigned short utf8_to_euc_E68B[] = { + 0, 0, 0x5944, 0, 0, 0x4334, 0x593E, 0x5945, + 0x5940, 0x5947, 0x5943, 0, 0x5942, 0x476F, 0, 0x593C, + 0x327D, 0x593A, 0x3571, 0x4273, 0x5936, 0, 0, 0x5939, + 0x3934, 0x405B, 0, 0x3E37, 0x5941, 0x4752, 0, 0, + 0x3572, 0x3348, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x3367, 0x3F21, 0x5949, 0x594E, + 0, 0x594A, 0, 0x377D, 0, 0x594F, 0x3B22, 0x3969, + 0, 0, 0, 0, 0, 0, 0x3D26, 0x593D, +}; +unsigned short utf8_to_euc_E68C[] = { + 0, 0x3B7D, 0x594C, 0, 0, 0, 0, 0x3B58, + 0x594D, 0x3044, 0, 0, 0x5948, 0, 0, 0, + 0, 0x4429, 0, 0, 0, 0, 0, 0, + 0, 0x3573, 0, 0, 0, 0, 0, 0x3634, + 0, 0, 0, 0, 0, 0, 0, 0x594B, + 0x3027, 0, 0, 0x3A43, 0, 0, 0, 0x3F36, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4472, 0, 0, 0x4854, 0x5951, 0x415E, +}; +unsigned short utf8_to_euc_E68D[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x422A, 0, 0, 0x3B2B, 0x5952, 0, 0x5954, + 0x5950, 0, 0, 0, 0, 0x4A61, 0, 0x443D, + 0, 0, 0, 0, 0x415C, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x4A7B, + 0x3C4E, 0x5960, 0, 0x595F, 0, 0, 0x3F78, 0, + 0, 0, 0x377E, 0, 0, 0, 0x5959, 0x3E39, + 0, 0, 0x4668, 0x4731, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E68E[] = { + 0x5957, 0, 0, 0x415D, 0, 0, 0, 0, + 0x3C78, 0x595C, 0, 0, 0x3E38, 0, 0x5956, 0x595B, + 0, 0, 0x4753, 0, 0, 0, 0x5955, 0, + 0x3721, 0, 0, 0x335D, 0, 0, 0, 0x595D, + 0x4E2B, 0x3A4E, 0x4335, 0x595A, 0, 0x405C, 0, 0x3935, + 0x3F64, 0x3166, 0x413C, 0x5958, 0x3545, 0, 0, 0, + 0, 0, 0x3747, 0, 0x444F, 0x595E, 0, 0, + 0, 0, 0, 0x415F, 0, 0, 0x5961, 0, +}; +unsigned short utf8_to_euc_E68F[] = { + 0x5963, 0, 0, 0x4237, 0x5969, 0, 0x5964, 0, + 0, 0x5966, 0, 0, 0, 0, 0, 0x4941, + 0x4473, 0, 0x5967, 0, 0, 0, 0x4D2C, 0, + 0, 0, 0x4D48, 0x3439, 0, 0, 0, 0, + 0, 0x302E, 0, 0x5965, 0, 0, 0, 0, + 0, 0x5962, 0, 0, 0, 0, 0x3478, 0, + 0, 0, 0, 0, 0x3167, 0x7A2F, 0x5968, 0, + 0, 0, 0x4D49, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E690[] = { + 0, 0, 0, 0, 0, 0, 0x596C, 0, + 0, 0, 0, 0, 0, 0x423B, 0, 0x5973, + 0, 0, 0, 0x596D, 0, 0, 0x596A, 0x5971, + 0, 0, 0, 0, 0x5953, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x596E, 0, + 0x5972, 0, 0, 0, 0x4842, 0x456B, 0, 0, + 0, 0, 0, 0, 0x596B, 0, 0x596F, 0, + 0, 0, 0x3748, 0, 0, 0, 0x3A71, 0, +}; +unsigned short utf8_to_euc_E691[] = { + 0, 0, 0x405D, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x5977, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x4526, 0, 0, 0, 0, 0, 0, 0, + 0x7A30, 0, 0, 0, 0, 0, 0, 0x5974, + 0, 0x4B60, 0, 0, 0, 0, 0, 0x5975, + 0, 0, 0, 0, 0, 0, 0x5976, 0, + 0x4C4E, 0, 0x4022, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E692[] = { + 0, 0, 0, 0x3762, 0, 0, 0, 0, + 0x597D, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3B35, 0x597A, 0, 0x5979, 0, 0, + 0, 0, 0x4732, 0, 0, 0x7A31, 0x4635, 0, + 0, 0, 0, 0, 0x4531, 0x597B, 0, 0, + 0, 0x597C, 0, 0x496F, 0, 0x4745, 0x3B23, 0, + 0x4071, 0, 0x4B50, 0, 0, 0, 0, 0, + 0, 0x3349, 0, 0x5A25, 0x597E, 0, 0, 0, +}; +unsigned short utf8_to_euc_E693[] = { + 0, 0x4D4A, 0x5A27, 0, 0, 0x5A23, 0, 0x5A24, + 0, 0, 0, 0, 0, 0x4160, 0x7A32, 0, + 0, 0, 0x5A22, 0, 0x593F, 0, 0, 0, + 0x5A26, 0, 0x5A21, 0, 0, 0, 0, 0, + 0x5A2B, 0x5A2C, 0x4527, 0x5A2E, 0, 0, 0x3B24, 0x5A29, + 0, 0, 0, 0, 0x353C, 0, 0, 0x5A2F, + 0, 0x5A28, 0x5A33, 0, 0x5A32, 0, 0x5A31, 0, + 0, 0, 0x5A34, 0, 0, 0x5A36, 0x3E71, 0, +}; +unsigned short utf8_to_euc_E694[] = { + 0x5A35, 0, 0, 0, 0, 0x5A39, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x5A37, 0, 0, 0, 0x5A38, 0x5970, 0, 0, + 0, 0, 0, 0x5A3B, 0x5A3A, 0, 0, 0, + 0, 0, 0x5978, 0x5A3C, 0x5A30, 0, 0, 0x3B59, + 0, 0, 0, 0, 0x5A3D, 0x5A3E, 0x5A40, 0x5A3F, + 0x5A41, 0x327E, 0, 0x3936, 0, 0, 0x4A7C, 0x402F, +}; +unsigned short utf8_to_euc_E695[] = { + 0, 0, 0, 0, 0, 0x384E, 0, 0, + 0x5A43, 0, 0, 0, 0, 0x5A46, 0x7A33, 0x4952, + 0, 0x355F, 0, 0, 0, 0x5A45, 0x5A44, 0x4754, + 0x5A47, 0x3635, 0, 0, 0, 0x5A49, 0x5A48, 0, + 0, 0, 0x343A, 0x3B36, 0, 0, 0x4658, 0, + 0, 0, 0, 0, 0x3749, 0, 0, 0, + 0x3F74, 0, 0x5A4A, 0, 0x4030, 0x4528, 0, 0x495F, + 0x5A4B, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E696[] = { + 0, 0, 0x5A4C, 0x5A4D, 0, 0, 0, 0x4A38, + 0x555D, 0x4046, 0, 0, 0x494C, 0, 0x3A58, 0, + 0x4865, 0x4843, 0, 0, 0, 0, 0, 0x454D, + 0, 0x4E41, 0, 0x5A4F, 0x3C50, 0, 0, 0x5A50, + 0, 0x3036, 0, 0, 0x3654, 0x404D, 0, 0x4960, + 0, 0, 0, 0x5A51, 0x3B42, 0x4347, 0, 0x3B5B, + 0x3F37, 0, 0, 0, 0, 0, 0, 0x5A52, + 0, 0x4A7D, 0, 0, 0x3177, 0x3B5C, 0, 0, +}; +unsigned short utf8_to_euc_E697[] = { + 0, 0x5A55, 0, 0x5A53, 0x5A56, 0x4E39, 0x5A54, 0, + 0, 0, 0, 0x407B, 0x5A57, 0, 0, 0x4232, + 0, 0, 0x5A58, 0, 0, 0, 0, 0x347A, + 0, 0x5A5A, 0, 0x5A59, 0, 0, 0, 0, + 0x5A5B, 0x5A5C, 0x347B, 0, 0, 0x467C, 0x4336, 0x356C, + 0x3B5D, 0x4161, 0, 0, 0x3D5C, 0x3030, 0, 0, + 0, 0x5A5D, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3222, 0x5A61, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E698[] = { + 0x7A34, 0, 0x3937, 0x5A60, 0, 0, 0x3A2B, 0x3E3A, + 0, 0x7A37, 0x5A5F, 0, 0x3E3B, 0, 0x4C40, 0x3A2A, + 0, 0, 0, 0x3057, 0x404E, 0x7A35, 0, 0, + 0, 0, 0, 0, 0x5A66, 0, 0x7A39, 0x4031, + 0x3147, 0, 0, 0, 0x7A3A, 0x3D55, 0, 0x4B66, + 0x3A72, 0, 0, 0, 0, 0x3E3C, 0x7A38, 0x4027, + 0, 0x7928, 0, 0, 0x5A65, 0x5A63, 0x5A64, 0, + 0, 0, 0, 0x7A36, 0x436B, 0, 0, 0x5B26, +}; +unsigned short utf8_to_euc_E699[] = { + 0, 0x5A6A, 0x3B7E, 0x3938, 0x5A68, 0, 0, 0, + 0, 0x5A69, 0, 0x3F38, 0, 0, 0, 0x5A67, + 0, 0, 0x3B2F, 0, 0, 0, 0, 0x7A3C, + 0, 0x7A3D, 0, 0, 0, 0x5A6C, 0x5A6B, 0x5A70, + 0, 0, 0x5A71, 0, 0x5A6D, 0x7A3B, 0x3322, 0x5A6E, + 0x5A6F, 0x4855, 0, 0, 0, 0, 0x4961, 0x374A, + 0x5A72, 0, 0, 0x7A3F, 0x4032, 0, 0x3E3D, 0, + 0, 0, 0x4352, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E69A[] = { + 0, 0x3647, 0, 0x5A73, 0x5A77, 0, 0, 0x324B, + 0x5A74, 0x5A76, 0, 0, 0, 0, 0x5A75, 0, + 0, 0x3D6B, 0, 0, 0, 0, 0x4348, 0x3045, + 0x5A78, 0x7A40, 0, 0, 0, 0x5A79, 0, 0, + 0x7A41, 0, 0x442A, 0, 0, 0, 0x4E71, 0, + 0, 0, 0, 0x3B43, 0, 0, 0x4A6B, 0, + 0, 0, 0x7A42, 0, 0x4B3D, 0, 0, 0, + 0x5B22, 0x5A7B, 0, 0, 0x5A7E, 0, 0x5A7D, 0x7A43, +}; +unsigned short utf8_to_euc_E69B[] = { + 0, 0x5A7A, 0, 0, 0x5B21, 0, 0, 0x465E, + 0, 0x5A7C, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x5B23, 0, + 0, 0x3D6C, 0x5B24, 0, 0x4D4B, 0x4778, 0, 0, + 0x5B25, 0, 0, 0, 0, 0, 0x5B27, 0, + 0, 0x5B28, 0, 0, 0, 0, 0, 0, + 0x5B29, 0, 0x364A, 0x3148, 0x3939, 0x5B2A, 0, 0x5B2B, + 0x3D71, 0x4162, 0x7A44, 0x792B, 0x5258, 0x413E, 0x413D, 0x4258, +}; +unsigned short utf8_to_euc_E69C[] = { + 0x3A47, 0, 0, 0x5072, 0, 0, 0, 0, + 0x376E, 0x4D2D, 0, 0x4A7E, 0, 0x497E, 0x7A45, 0x5B2C, + 0, 0, 0, 0, 0x3A73, 0x443F, 0x5B2D, 0x4F2F, + 0, 0, 0, 0x4B3E, 0, 0x442B, 0x5B2E, 0x347C, + 0, 0, 0, 0, 0, 0, 0x5B2F, 0x5B30, + 0x4C5A, 0, 0x4C24, 0x4B76, 0x4B5C, 0x3B25, 0x5B32, 0, + 0, 0x3C6B, 0, 0, 0x4B51, 0, 0x5B34, 0x5B37, + 0x5B36, 0, 0x3479, 0, 0, 0x3560, 0, 0x5B33, +}; +unsigned short utf8_to_euc_E69D[] = { + 0, 0x5B35, 0, 0, 0, 0, 0x5B38, 0, + 0, 0x3F79, 0, 0, 0, 0, 0x4D7B, 0x3049, + 0x3A60, 0x423C, 0, 0x3C5D, 0, 0, 0x3E73, 0, + 0, 0x5B3B, 0, 0, 0x454E, 0, 0x5B39, 0x422B, + 0x5B3A, 0x3E72, 0x4C5D, 0x5B3C, 0x5B3D, 0x4D68, 0x7A47, 0, + 0, 0, 0x5B42, 0, 0, 0x393A, 0, 0x4755, + 0x5B3F, 0x456C, 0x5A5E, 0x5A62, 0, 0x354F, 0, 0x4747, + 0, 0, 0, 0, 0x5B41, 0, 0x3E3E, 0x4844, +}; +unsigned short utf8_to_euc_E69E[] = { + 0, 0, 0, 0, 0, 0x5B47, 0, 0x487A, + 0, 0x5B3E, 0, 0x5B44, 0x5B43, 0, 0, 0, + 0x404F, 0, 0, 0, 0, 0x4B6D, 0, 0x4E53, + 0, 0, 0x4B67, 0, 0x324C, 0x3B5E, 0, 0, + 0x4F48, 0x5B46, 0x3F75, 0, 0, 0, 0x5B45, 0, + 0, 0x5B40, 0, 0, 0, 0, 0, 0x384F, + 0, 0, 0, 0x5B4C, 0x5B4A, 0, 0x324D, 0x5B48, + 0x5B4E, 0x5B54, 0, 0x7A48, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E69F[] = { + 0x7A4A, 0x4248, 0, 0, 0x4A41, 0, 0x5B56, 0, + 0, 0, 0x4922, 0, 0, 0, 0x5B55, 0x4770, + 0x4B3F, 0x343B, 0, 0x4077, 0x3D40, 0, 0, 0, + 0x4453, 0, 0x4D2E, 0, 0, 0x5B51, 0x5B50, 0, + 0, 0, 0x5B52, 0, 0x5B4F, 0, 0, 0x5B57, + 0, 0x5B4D, 0, 0, 0x5B4B, 0, 0x5B53, 0x5B49, + 0, 0x436C, 0, 0x4C78, 0x3C46, 0x3A74, 0, 0, + 0, 0, 0, 0x3A3A, 0, 0, 0x4B6F, 0x3341, +}; +unsigned short utf8_to_euc_E6A0[] = { + 0, 0x7A4B, 0x444E, 0x464A, 0x3149, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x4072, 0, 0, 0x4034, 0x372A, + 0, 0, 0, 0, 0, 0, 0x5B59, 0, + 0, 0x393B, 0x337C, 0, 0, 0, 0, 0, + 0, 0x5B5B, 0x3374, 0x5B61, 0, 0, 0, 0, + 0, 0, 0x5B5E, 0, 0x4073, 0, 0, 0, + 0x334B, 0x3A2C, 0, 0, 0x334A, 0x3A4F, 0, 0, +}; +unsigned short utf8_to_euc_E6A1[] = { + 0x5B5C, 0x3765, 0x374B, 0x456D, 0x7A4C, 0, 0x5B5A, 0, + 0x3046, 0, 0, 0, 0, 0x5B5D, 0x5B5F, 0, + 0x364D, 0x372C, 0x7A49, 0x343C, 0x354B, 0, 0, 0, + 0, 0x5B62, 0, 0, 0x3A79, 0x4B71, 0, 0x3B37, + 0, 0, 0, 0x5B63, 0, 0, 0, 0x4930, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x5B6F, 0, 0x3233, 0x5B64, + 0, 0, 0, 0, 0, 0, 0x5B75, 0x5B65, +}; +unsigned short utf8_to_euc_E6A2[] = { + 0, 0x4E42, 0, 0x5B6C, 0, 0x475F, 0, 0, + 0, 0, 0, 0, 0, 0x5B74, 0, 0x5B67, + 0, 0, 0, 0x3034, 0x5B69, 0, 0, 0x393C, + 0, 0, 0, 0x5B6B, 0, 0x5B6A, 0, 0x5B66, + 0x5B71, 0, 0x3E3F, 0, 0, 0, 0x546D, 0x3868, + 0x4D7C, 0, 0, 0, 0, 0x5B68, 0, 0x4474, + 0x3323, 0x3A2D, 0, 0x5B60, 0, 0x5B70, 0x3361, 0, + 0, 0x5B6E, 0x5B72, 0, 0x456E, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6A3[] = { + 0, 0, 0, 0, 0x347E, 0, 0x5C32, 0, + 0x7929, 0x4C49, 0x5B77, 0x347D, 0, 0x5B7E, 0, 0x7A4D, + 0, 0, 0x4B40, 0, 0x5C21, 0x5C23, 0, 0x5C27, + 0x5B79, 0, 0x432A, 0, 0, 0, 0, 0x456F, + 0x5C2B, 0x5B7C, 0, 0x5C28, 0, 0, 0, 0x5C22, + 0, 0, 0, 0, 0, 0, 0x3F39, 0x5C2C, + 0, 0, 0x4033, 0, 0, 0, 0, 0, + 0, 0x5C2A, 0x343D, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6A4[] = { + 0x4F50, 0x5B76, 0, 0, 0x5C26, 0x3058, 0, 0, + 0x5B78, 0, 0, 0x4C3A, 0x5B7D, 0x3F22, 0x4447, 0x5B73, + 0, 0, 0x5C25, 0, 0, 0, 0, 0, + 0, 0x3F7A, 0x5C2F, 0x3371, 0x3821, 0, 0, 0, + 0, 0x5C31, 0x5B7A, 0x5C30, 0, 0x5C29, 0x5B7B, 0, + 0x5C2D, 0, 0x5C2E, 0, 0, 0, 0, 0, + 0x5C3F, 0, 0, 0, 0x464E, 0, 0x5C24, 0, + 0, 0x5C3B, 0, 0, 0, 0x5C3D, 0, 0x4458, +}; +unsigned short utf8_to_euc_E6A5[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4D4C, 0, 0, 0, 0, 0, + 0, 0, 0, 0x4976, 0x5C38, 0x424A, 0, 0, + 0, 0x5C3E, 0x413F, 0, 0x5C35, 0x5C42, 0x5C41, 0, + 0x466F, 0x5C40, 0x466A, 0, 0, 0, 0, 0, + 0x7A4F, 0, 0x5C44, 0x5C37, 0, 0x3648, 0x5C3A, 0x3D5D, + 0, 0, 0, 0x4760, 0x5C3C, 0x364B, 0, 0x5C34, + 0x5C36, 0x5C33, 0, 0, 0x4F30, 0x335A, 0x5C39, 0, +}; +unsigned short utf8_to_euc_E6A6[] = { + 0, 0x5C43, 0x3335, 0, 0, 0, 0, 0, + 0, 0, 0x3A67, 0, 0, 0, 0x315D, 0, + 0, 0x5C54, 0, 0, 0x4F31, 0x5C57, 0, 0, + 0x7A51, 0, 0, 0x3F3A, 0x5C56, 0, 0, 0, + 0x5C55, 0, 0, 0, 0, 0, 0, 0x5C52, + 0, 0, 0, 0, 0, 0, 0x5C46, 0, + 0, 0x5C63, 0x5C45, 0, 0x5C58, 0, 0, 0, + 0, 0, 0, 0x5C50, 0, 0, 0x5C4B, 0x5C48, +}; +unsigned short utf8_to_euc_E6A7[] = { + 0, 0x5C49, 0, 0x5C51, 0, 0, 0, 0x7422, + 0, 0, 0x5C4E, 0x393D, 0x4448, 0x4164, 0x5C4C, 0, + 0x5C47, 0, 0, 0x5C4A, 0, 0, 0, 0, + 0x4D4D, 0x4B6A, 0, 0, 0, 0x5C4F, 0x5C59, 0, + 0, 0, 0x7A52, 0, 0, 0, 0, 0x5C61, + 0x5C5A, 0, 0, 0x5C67, 0, 0x5C65, 0, 0, + 0, 0, 0x5C60, 0, 0, 0, 0, 0, + 0, 0x5C5F, 0, 0x4450, 0, 0x4165, 0, 0x5C5D, +}; +unsigned short utf8_to_euc_E6A8[] = { + 0, 0, 0x5C5B, 0, 0, 0x5C62, 0, 0, + 0, 0, 0x5C68, 0x4875, 0x5C6E, 0, 0, 0, + 0, 0, 0x5C69, 0x5C6C, 0x5C66, 0, 0, 0x4374, + 0, 0x4938, 0, 0x5C5C, 0, 0, 0x5C64, 0x3E40, + 0, 0x4C4F, 0x5C78, 0x5C6B, 0, 0, 0, 0, + 0, 0x3822, 0x3223, 0x335F, 0, 0, 0x5C53, 0, + 0x7A53, 0, 0, 0, 0, 0x3E41, 0x5C70, 0, + 0x5C77, 0x3C79, 0x3372, 0, 0, 0x432E, 0, 0, +}; +unsigned short utf8_to_euc_E6A9[] = { + 0, 0, 0, 0, 0x5C6D, 0, 0x7A55, 0x5C72, + 0x5C76, 0, 0, 0x3636, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x354C, 0x5C74, 0, 0, 0, 0, 0, 0x3521, + 0, 0x464B, 0x5C73, 0, 0, 0, 0x5C75, 0, + 0, 0, 0, 0x7A54, 0, 0, 0, 0, + 0, 0, 0x5C6F, 0x7A56, 0, 0, 0, 0, + 0x5C71, 0, 0, 0, 0, 0, 0x7A57, 0x3360, +}; +unsigned short utf8_to_euc_E6AA[] = { + 0x4349, 0, 0, 0, 0x5C7C, 0, 0, 0, + 0, 0, 0, 0, 0, 0x5C7A, 0x3869, 0, + 0x5C79, 0, 0, 0, 0, 0, 0, 0x5D21, + 0, 0, 0, 0, 0x5B58, 0, 0, 0, + 0x5C7B, 0, 0x5C7D, 0x5C7E, 0, 0, 0, 0, + 0, 0, 0x5D2C, 0, 0x5D28, 0, 0x5B6D, 0, + 0, 0, 0, 0x5D27, 0, 0, 0, 0, + 0x5D26, 0, 0, 0x5D23, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6AB[] = { + 0, 0x5C6A, 0x5D25, 0x5D24, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x5D2A, 0, 0x4F26, 0, 0, 0, 0, + 0, 0, 0x5D2D, 0x367B, 0, 0, 0x5D29, 0x5D2B, + 0, 0, 0x7A58, 0, 0x7A59, 0, 0, 0, + 0x4827, 0, 0x5D2E, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x5D32, 0x5D2F, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6AC[] = { + 0, 0, 0, 0, 0x4D73, 0x5D30, 0, 0, + 0, 0, 0x5C5E, 0, 0, 0, 0, 0, + 0, 0, 0x5D33, 0, 0, 0, 0x5D34, 0, + 0, 0, 0, 0, 0, 0x3135, 0, 0x5D36, + 0x3767, 0x3C21, 0, 0x3655, 0, 0, 0, 0x3224, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4D5F, 0, 0, 0, 0, 0x5D38, + 0x5D37, 0x5D3A, 0x353D, 0, 0, 0x3656, 0x343E, 0, +}; +unsigned short utf8_to_euc_E6AD[] = { + 0, 0, 0, 0x5D3D, 0, 0, 0, 0x5D3C, + 0, 0x5D3E, 0, 0, 0x324E, 0, 0x4337, 0, + 0x5D3F, 0, 0, 0x343F, 0x5D41, 0, 0, 0, + 0, 0x5D40, 0, 0x5D42, 0, 0, 0, 0x5D43, + 0, 0x5D44, 0x3B5F, 0x4035, 0x3A21, 0, 0x4970, 0, + 0, 0x4A62, 0x4F44, 0, 0, 0, 0, 0x3B75, + 0, 0, 0, 0x3A50, 0x4E72, 0, 0, 0, + 0x5D45, 0x5D46, 0, 0x3B60, 0, 0, 0, 0x5D47, +}; +unsigned short utf8_to_euc_E6AE[] = { + 0x5D48, 0, 0, 0x5D4A, 0x5D49, 0, 0x4B58, 0, + 0, 0x3D5E, 0x3C6C, 0x3B44, 0, 0x5D4B, 0, 0, + 0, 0, 0, 0, 0, 0x5D4D, 0x3F23, 0, + 0x5D4C, 0, 0, 0, 0, 0, 0x5D4E, 0, + 0, 0, 0, 0, 0x5D4F, 0, 0, 0, + 0, 0, 0x5D50, 0x5D51, 0, 0, 0, 0x5D52, + 0, 0x5D54, 0x5D53, 0x5D55, 0x3225, 0x434A, 0, 0x5D56, + 0, 0, 0x3B26, 0x334C, 0x5D57, 0, 0, 0x4542, +}; +unsigned short utf8_to_euc_E6AF[] = { + 0x544C, 0, 0, 0, 0, 0x3523, 0x5D58, 0, + 0, 0, 0, 0x5D59, 0, 0x4A6C, 0x4B68, 0, + 0, 0, 0x4647, 0x5D5A, 0x4866, 0, 0x7A5A, 0, + 0x487B, 0, 0, 0x4C53, 0, 0, 0, 0x5D5B, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x5D5D, 0x5D5C, 0, 0, 0x5D5F, + 0, 0, 0, 0x5D5E, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6B0[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0x5D61, 0, 0, 0, 0, 0, 0, 0x3B61, + 0, 0x4C31, 0, 0x5D62, 0x5D63, 0, 0, 0x3524, + 0, 0, 0, 0x5D64, 0, 0, 0, 0, + 0, 0, 0, 0x5D66, 0x5D65, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x3F65, 0, 0, 0x4939, + 0x314A, 0, 0, 0, 0, 0, 0x4845, 0x7A5B, +}; +unsigned short utf8_to_euc_E6B1[] = { + 0x4475, 0x3D41, 0x3561, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x4846, 0, + 0x3C2E, 0, 0, 0, 0, 0x5D68, 0, 0x3440, + 0, 0, 0x3178, 0, 0x7A5C, 0x4672, 0x5D67, 0x393E, + 0x4353, 0, 0x5D69, 0, 0, 0, 0, 0, + 0x5D71, 0, 0x5D6A, 0, 0, 0, 0, 0x7A5E, + 0x4241, 0, 0x3562, 0x5D72, 0, 0, 0, 0, + 0, 0, 0x3768, 0, 0, 0x3525, 0x5D70, 0, +}; +unsigned short utf8_to_euc_E6B2[] = { + 0, 0x5D6E, 0x5D6B, 0x4D60, 0, 0, 0x7A5D, 0, + 0x4440, 0, 0, 0, 0x4659, 0x5D6C, 0, 0, + 0x5D74, 0, 0x5D73, 0x3723, 0, 0, 0x322D, 0, + 0, 0x3A3B, 0x5D6D, 0x5D6F, 0, 0, 0, 0, + 0, 0x4B57, 0x4274, 0, 0, 0, 0, 0, + 0, 0, 0, 0x4B77, 0, 0, 0x5D7C, 0, + 0, 0x5D7D, 0, 0x324F, 0, 0, 0, 0, + 0x4A28, 0x4C7D, 0x5E21, 0x3C23, 0x3E42, 0x5D78, 0x5D7E, 0x3168, +}; +unsigned short utf8_to_euc_E6B3[] = { + 0, 0x3637, 0, 0, 0x5D75, 0x5D7A, 0, 0, + 0, 0x4074, 0x4771, 0, 0x4867, 0, 0, 0, + 0, 0, 0, 0x5D77, 0, 0x4B21, 0, 0x5D79, + 0, 0x5E24, 0x7A5F, 0x5E22, 0, 0x5D7B, 0, 0, + 0, 0x4B22, 0x4748, 0x3563, 0, 0x4525, 0, 0, + 0x436D, 0, 0x5E25, 0, 0, 0, 0, 0x5E23, + 0x4259, 0x5D76, 0, 0x314B, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6B4[] = { + 0, 0, 0, 0, 0x7A60, 0, 0, 0, + 0, 0, 0, 0x4D4E, 0x5E30, 0, 0, 0, + 0, 0, 0x5E2F, 0, 0, 0, 0, 0x4076, + 0, 0x5E2C, 0, 0x4D6C, 0, 0, 0x4636, 0x5E26, + 0, 0, 0, 0, 0, 0x4445, 0, 0, + 0, 0x314C, 0x393F, 0x5E29, 0, 0, 0, 0, + 0, 0, 0x3D27, 0x5E2E, 0, 0x5E2D, 0x5E28, 0, + 0x5E2B, 0, 0, 0x3368, 0, 0x5E2A, 0x4749, 0, +}; +unsigned short utf8_to_euc_E6B5[] = { + 0, 0x4E2E, 0, 0, 0x3E74, 0x4075, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x5E36, 0x5E34, 0, 0x494D, 0, 0, 0, + 0, 0, 0, 0x5E31, 0x5E33, 0, 0x313A, 0, + 0, 0x3940, 0x4F32, 0, 0x333D, 0, 0x4962, 0x7A62, + 0, 0, 0, 0, 0x4D61, 0, 0, 0x3324, + 0x3F3B, 0x5E35, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6B6[] = { + 0, 0, 0, 0, 0, 0x5E3A, 0, 0x7A61, + 0x3E43, 0, 0, 0, 0x4D30, 0, 0x5E37, 0, + 0, 0, 0, 0x5E32, 0, 0x5E38, 0x7A63, 0, + 0, 0x4E5E, 0, 0x4573, 0x4642, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x7A64, 0, 0, 0x3336, + 0, 0, 0x3155, 0, 0, 0x5E3E, 0, 0, + 0x5E41, 0, 0, 0, 0x4E43, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6B7[] = { + 0x4D64, 0, 0, 0, 0, 0x5E48, 0x5E42, 0x5E3F, + 0, 0, 0, 0x4E54, 0x5E45, 0, 0, 0x7A65, + 0, 0x3D4A, 0x5E47, 0, 0, 0x5E4C, 0, 0, + 0x4571, 0x5E4A, 0, 0, 0, 0, 0x5E44, 0, + 0, 0x4338, 0, 0, 0x5E4B, 0, 0x5E40, 0, + 0x5E46, 0, 0x5E4D, 0x307C, 0x5E43, 0, 0x5E4E, 0, + 0, 0x3F3C, 0x7A67, 0x3D5F, 0, 0x4A25, 0, 0x3A2E, + 0x7A66, 0x5E3B, 0x5E49, 0x453A, 0x7A68, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6B8[] = { + 0, 0, 0, 0, 0, 0x4036, 0, 0x3369, + 0x3A51, 0x3E44, 0x5E3D, 0x3D42, 0, 0, 0, 0, + 0, 0, 0, 0x374C, 0, 0x5E3C, 0, 0, + 0, 0x5E52, 0x3D6D, 0x383A, 0, 0x5E61, 0, 0x5E5B, + 0x3574, 0x454F, 0, 0x5E56, 0x5E5F, 0x302F, 0x3132, 0x7A6B, + 0, 0x3239, 0, 0x5E58, 0x422C, 0x5E4F, 0x5E51, 0x3941, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x5E62, 0x7A69, 0x5E5D, 0, 0x7A6C, 0, 0x5E55, 0, +}; +unsigned short utf8_to_euc_E6B9[] = { + 0, 0, 0, 0x5E5C, 0, 0, 0, 0, + 0, 0, 0x4C2B, 0, 0, 0x5E5A, 0x5E5E, 0, + 0, 0, 0, 0, 0, 0, 0x3850, 0, + 0x3E45, 0, 0, 0x4339, 0x7A6A, 0, 0, 0x5E54, + 0, 0, 0, 0, 0, 0, 0, 0x4D2F, + 0, 0, 0, 0x5E57, 0, 0, 0x5E50, 0x4572, + 0, 0, 0x5E53, 0, 0, 0, 0x5E59, 0, + 0, 0, 0, 0, 0, 0, 0x4F51, 0x3C3E, +}; +unsigned short utf8_to_euc_E6BA[] = { + 0x4B7E, 0, 0x5E63, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x482E, 0, 0, 0x5E6F, + 0x383B, 0, 0, 0, 0, 0, 0x3D60, 0, + 0x5E65, 0, 0, 0, 0x4E2F, 0x3942, 0, 0x5E72, + 0, 0, 0x306E, 0, 0, 0x5E70, 0, 0, + 0, 0, 0x5E64, 0, 0, 0, 0, 0x5E6A, + 0, 0, 0x5E6C, 0, 0, 0, 0x4D4F, 0x5E67, + 0, 0, 0x452E, 0, 0, 0x5E69, 0, 0x7A6D, +}; +unsigned short utf8_to_euc_E6BB[] = { + 0, 0, 0x5E71, 0, 0x5E6B, 0x4C47, 0, 0, + 0, 0x5E66, 0, 0x3C22, 0x5E7E, 0, 0, 0, + 0, 0x336A, 0, 0x5E68, 0x5E6D, 0x5E6E, 0, 0, + 0, 0, 0, 0, 0, 0x426C, 0x425A, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x5E76, 0, 0, 0x5E7C, + 0, 0, 0x5E7A, 0, 0x4529, 0, 0, 0x5F23, + 0x5E77, 0, 0, 0, 0, 0, 0x5E78, 0x5E60, +}; +unsigned short utf8_to_euc_E6BC[] = { + 0, 0x3579, 0x493A, 0, 0, 0, 0x3C3F, 0, + 0, 0x3977, 0, 0, 0, 0, 0, 0x4F33, + 0, 0x5E74, 0, 0x5F22, 0x3169, 0x4166, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x4779, 0, 0x3441, 0x4E7A, 0, 0, 0, 0, + 0, 0, 0, 0x4C21, 0x4452, 0, 0, 0, + 0, 0x5E7B, 0x5E7D, 0, 0, 0, 0, 0, + 0x4132, 0, 0, 0, 0, 0, 0x5F21, 0x5E79, +}; +unsigned short utf8_to_euc_E6BD[] = { + 0, 0x5E73, 0, 0, 0, 0x3443, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x3769, 0, 0, 0, + 0x5F2F, 0, 0, 0x5F2A, 0x4078, 0, 0, 0x3363, + 0, 0, 0, 0, 0x3D61, 0, 0x5F33, 0, + 0, 0, 0, 0, 0, 0x5F2C, 0x442C, 0x5F29, + 0x4459, 0, 0, 0, 0x5F4C, 0, 0, 0, + 0x5F26, 0, 0x5F25, 0, 0x5F2E, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6BE[] = { + 0x5F28, 0x5F27, 0x5F2D, 0, 0x4021, 0, 0x5F24, 0, + 0x7A6E, 0, 0, 0, 0, 0, 0x5F30, 0, + 0, 0x5F31, 0, 0, 0, 0, 0, 0x3442, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x5F36, 0, 0x5F35, 0x5F37, 0, 0, 0, + 0, 0, 0x5F3A, 0, 0, 0, 0, 0, + 0, 0x4543, 0, 0x5F34, 0, 0x7A6F, 0, 0, + 0, 0x5F38, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E6BF[] = { + 0x3763, 0x4279, 0x5F32, 0x473B, 0, 0, 0x5F39, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x5F3E, 0x5F3C, 0, 0, + 0x5F3F, 0, 0, 0x5F42, 0, 0, 0, 0x5F3B, + 0x396A, 0x4728, 0, 0, 0x5E39, 0, 0, 0, + 0, 0, 0, 0x4D74, 0x5F3D, 0, 0x5F41, 0x4275, + 0, 0x5F40, 0, 0x5F2B, 0, 0x7A70, 0x6F69, 0, + 0, 0, 0x5F45, 0, 0, 0, 0x5F49, 0, +}; +unsigned short utf8_to_euc_E780[] = { + 0, 0x5F47, 0, 0, 0, 0x7A71, 0, 0x7A72, + 0, 0x5F43, 0, 0x5F44, 0, 0, 0, 0x5F48, + 0, 0x5F46, 0, 0, 0, 0x494E, 0, 0, + 0x5F4E, 0, 0x5F4B, 0x5F4A, 0, 0x5F4D, 0x4654, 0x5F4F, + 0, 0, 0, 0, 0, 0, 0x4375, 0x426D, + 0x7A73, 0, 0, 0, 0x4025, 0, 0, 0, + 0x5F50, 0, 0x5F52, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x5F51, 0, +}; +unsigned short utf8_to_euc_E781[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x5E75, 0, 0, 0, + 0, 0x5F53, 0, 0, 0, 0, 0, 0, + 0x4667, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x5F54, 0, 0, 0, 0, + 0, 0, 0, 0x3250, 0, 0, 0, 0x4574, + 0x3325, 0, 0, 0, 0, 0, 0, 0, + 0x3564, 0, 0, 0, 0x3C5E, 0x3A52, 0, 0, +}; +unsigned short utf8_to_euc_E782[] = { + 0, 0, 0, 0, 0, 0x7A74, 0, 0, + 0, 0x4F27, 0x3F66, 0, 0, 0, 0x316A, 0, + 0, 0, 0x5F56, 0, 0, 0, 0, 0, + 0, 0x5F55, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x7A75, 0x5F59, 0x433A, 0x5F5C, 0x5F57, + 0, 0, 0, 0x5F5B, 0, 0, 0, 0, + 0x5F5A, 0x4540, 0x3059, 0x7927, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E783[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0x4E75, 0, 0, 0x5F5E, 0, 0, 0, 0x3128, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x5F60, 0, 0, 0, 0x5F5F, 0, 0x5F5D, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x5F58, 0, 0, 0, 0, 0, 0, + 0, 0x4B23, 0, 0, 0, 0x5F62, 0, 0, +}; +unsigned short utf8_to_euc_E784[] = { + 0, 0, 0, 0, 0x7A77, 0, 0, 0, + 0, 0x5F61, 0, 0, 0, 0, 0, 0x7A76, + 0, 0, 0, 0, 0x316B, 0, 0, 0, + 0, 0x5F64, 0x4A32, 0, 0x5F63, 0, 0, 0, + 0, 0x4C35, 0, 0, 0, 0, 0x3E47, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x4133, 0, + 0, 0, 0, 0, 0x3E46, 0, 0, 0, +}; +unsigned short utf8_to_euc_E785[] = { + 0, 0, 0, 0, 0, 0, 0x7A79, 0x7A7A, + 0, 0x4E7B, 0, 0, 0x5F6A, 0, 0x4079, 0, + 0, 0, 0, 0, 0, 0x5F66, 0x5F6B, 0, + 0, 0x316C, 0, 0, 0x7A78, 0, 0, 0, + 0, 0, 0x5F69, 0, 0x4761, 0x5F65, 0x5F68, 0x3E48, + 0, 0x4851, 0, 0, 0x5F6C, 0, 0x3C51, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x407A, 0, 0, +}; +unsigned short utf8_to_euc_E786[] = { + 0, 0, 0, 0, 0x5F6F, 0, 0, 0, + 0x5F67, 0, 0x3727, 0, 0, 0, 0, 0x5F6D, + 0, 0, 0, 0, 0x4D50, 0x5F70, 0, 0, + 0, 0x7426, 0, 0, 0, 0, 0, 0x3D4F, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x5F71, 0, 0, 0, 0x5F72, 0, 0, 0, + 0, 0x472E, 0, 0, 0, 0, 0, 0, + 0, 0x5F74, 0, 0, 0, 0, 0x5F75, 0, +}; +unsigned short utf8_to_euc_E787[] = { + 0, 0x7A7C, 0, 0x4733, 0, 0, 0, 0, + 0x4575, 0x5F77, 0, 0, 0, 0, 0x5F79, 0, + 0x4E55, 0, 0x5F76, 0, 0x5F78, 0x316D, 0, 0x5F73, + 0, 0, 0, 0, 0, 0, 0, 0x535B, + 0x5F7A, 0, 0, 0, 0, 0x4167, 0x3B38, 0x5F7C, + 0, 0, 0, 0, 0x5F7B, 0x3F24, 0x5259, 0, + 0, 0, 0, 0, 0, 0x5F7D, 0, 0, + 0, 0x6021, 0, 0x5F6E, 0x5F7E, 0, 0x7A7D, 0x6022, +}; +unsigned short utf8_to_euc_E788[] = { + 0, 0, 0, 0, 0, 0, 0x477A, 0, + 0, 0, 0, 0, 0, 0x6023, 0, 0, + 0x6024, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6025, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x6026, 0, 0x445E, 0, 0x6028, 0x6027, 0, 0, + 0x6029, 0, 0x602A, 0, 0, 0x3C5F, 0x4963, 0, + 0, 0, 0x4C6C, 0x602B, 0x602C, 0x4156, 0x3C24, 0x602D, +}; +unsigned short utf8_to_euc_E789[] = { + 0x602E, 0, 0, 0, 0, 0, 0x602F, 0x4A52, + 0x4847, 0, 0, 0x6030, 0x4757, 0, 0, 0, + 0, 0, 0x442D, 0, 0, 0, 0, 0, + 0x6031, 0x3267, 0, 0x356D, 0, 0x4C46, 0, 0x4C36, + 0, 0x3234, 0x4F34, 0, 0, 0, 0, 0x4B52, + 0, 0x4A2A, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4037, 0, 0x6032, 0, 0, 0, + 0, 0x4643, 0, 0, 0, 0x3823, 0x6033, 0, +}; +unsigned short utf8_to_euc_E78A[] = { + 0x3A54, 0x6035, 0x6034, 0, 0, 0, 0, 0x6036, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x6037, 0, 0, 0, 0x6038, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x353E, 0, 0x6039, 0, 0, 0, 0, 0x603A, + 0, 0, 0, 0, 0x3824, 0, 0, 0x4848, + 0, 0x7A7E, 0x603C, 0, 0, 0, 0x3E75, 0, + 0, 0x603B, 0, 0, 0, 0, 0x7B21, 0, +}; +unsigned short utf8_to_euc_E78B[] = { + 0, 0, 0x3638, 0x603D, 0x603F, 0, 0x603E, 0, + 0, 0, 0, 0, 0, 0, 0x6040, 0, + 0x3851, 0, 0x6041, 0, 0, 0, 0, 0x3669, + 0, 0x4140, 0, 0x397D, 0, 0, 0, 0, + 0x6043, 0x6044, 0x6042, 0, 0, 0, 0, 0, + 0, 0x3C6D, 0, 0, 0x4648, 0x3639, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6046, + 0x432C, 0x6045, 0, 0, 0x4F35, 0x4762, 0, 0, +}; +unsigned short utf8_to_euc_E78C[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x6049, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x604B, 0x6048, + 0, 0, 0, 0x4C54, 0x604A, 0x604C, 0, 0x4E44, + 0, 0, 0, 0, 0x7B22, 0x6050, 0, 0, + 0, 0x604F, 0x4376, 0x472D, 0, 0, 0x3825, 0x604E, + 0, 0, 0, 0, 0x604D, 0, 0x4D31, 0x4D32, + 0, 0, 0, 0, 0, 0, 0x6051, 0x316E, +}; +unsigned short utf8_to_euc_E78D[] = { + 0, 0, 0, 0, 0x3976, 0x3B62, 0, 0, + 0, 0, 0, 0, 0, 0, 0x6052, 0x6053, + 0, 0, 0, 0, 0, 0, 0, 0x6055, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x3D43, 0, 0, 0, 0, + 0x6057, 0, 0x6056, 0, 0, 0, 0, 0, + 0x6058, 0, 0x334D, 0, 0, 0x605A, 0, 0x7B24, + 0x6059, 0, 0x605C, 0x605B, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E78E[] = { + 0, 0, 0, 0, 0x383C, 0, 0, 0x4E28, + 0, 0x364C, 0, 0x3226, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x366A, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x3461, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4E68, 0x605E, 0, 0, 0, 0, + 0, 0, 0, 0x6060, 0, 0x7B25, 0, 0, +}; +unsigned short utf8_to_euc_E78F[] = { + 0x6061, 0, 0x3251, 0, 0, 0, 0, 0, + 0x605D, 0x7B26, 0x3B39, 0, 0, 0x4441, 0x605F, 0, + 0, 0, 0x7B29, 0, 0, 0, 0x7B27, 0, + 0, 0, 0, 0, 0, 0, 0x6064, 0, + 0x3C6E, 0, 0, 0x7B28, 0, 0x6062, 0, 0, + 0, 0, 0x373E, 0, 0, 0x4849, 0x6063, 0, + 0, 0x607E, 0, 0, 0, 0x7B2B, 0, 0, + 0x6069, 0, 0, 0, 0, 0, 0x383D, 0, +}; +unsigned short utf8_to_euc_E790[] = { + 0, 0, 0, 0x3565, 0, 0x6066, 0x4D7D, 0x7B2A, + 0, 0x4E30, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4276, 0, 0, 0x6068, 0x7B2C, 0, + 0, 0x7B2E, 0x7B2D, 0, 0, 0, 0x7B2F, 0, + 0, 0, 0x606A, 0x4E56, 0x3657, 0x487C, 0x474A, 0, + 0, 0, 0x606B, 0, 0, 0, 0, 0x606D, +}; +unsigned short utf8_to_euc_E791[] = { + 0, 0x6070, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x606C, 0, 0, + 0, 0x606F, 0x386A, 0x314D, 0x6071, 0, 0x3F70, 0x606E, + 0x4E5C, 0, 0x7B30, 0x6074, 0x7424, 0, 0, 0, + 0, 0x6072, 0x6075, 0, 0, 0, 0, 0x6067, + 0x6073, 0, 0, 0x3A3C, 0, 0, 0x6076, 0, + 0, 0, 0, 0, 0, 0, 0x6077, 0, +}; +unsigned short utf8_to_euc_E792[] = { + 0, 0, 0, 0x4D7E, 0, 0, 0, 0, + 0, 0x7B31, 0, 0x6078, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x6079, 0x7B32, + 0, 0, 0x6065, 0, 0, 0, 0, 0x607A, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x3444, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x3C25, 0, 0, +}; +unsigned short utf8_to_euc_E793[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x607B, 0, 0, 0, 0, 0x607C, + 0, 0, 0, 0, 0x607D, 0, 0, 0, + 0, 0, 0, 0, 0x313B, 0, 0, 0, + 0x6121, 0, 0x493B, 0x6122, 0, 0, 0x3424, 0x6123, + 0, 0x6124, 0, 0, 0, 0, 0x6125, 0, + 0x6127, 0x6128, 0x6126, 0, 0, 0, 0x4953, 0x612A, + 0x6129, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E794[] = { + 0, 0x7B33, 0, 0x612C, 0x612B, 0x612D, 0, 0, + 0, 0, 0, 0, 0x612E, 0x6130, 0x612F, 0, + 0, 0x3979, 0, 0x6132, 0, 0x6131, 0, 0, + 0x3445, 0, 0x3F53, 0, 0x453C, 0, 0x6133, 0x4038, + 0, 0, 0, 0x3B3A, 0, 0x3179, 0x6134, 0, + 0x4D51, 0, 0, 0x4A63, 0x6135, 0, 0, 0x796C, + 0x4544, 0x4D33, 0x3943, 0x3F3D, 0, 0, 0, 0x434B, + 0x5234, 0, 0x442E, 0x3268, 0x6136, 0, 0, 0, +}; +unsigned short utf8_to_euc_E795[] = { + 0, 0, 0, 0, 0x6137, 0, 0x613C, 0, + 0, 0x613A, 0x6139, 0x5A42, 0x3326, 0x6138, 0, 0x305A, + 0, 0x482A, 0, 0, 0x484A, 0, 0, 0, + 0, 0x4E31, 0x613D, 0x613B, 0x435C, 0x4026, 0, 0, + 0x482B, 0, 0x492D, 0, 0x613F, 0x4E2C, 0x374D, 0x6140, + 0, 0x613E, 0x4856, 0x6141, 0, 0x6142, 0, 0x7B34, + 0x305B, 0, 0, 0x3E76, 0x6147, 0, 0x6144, 0x466D, + 0x6143, 0, 0, 0, 0, 0, 0, 0x3526, +}; +unsigned short utf8_to_euc_E796[] = { + 0, 0, 0x614A, 0, 0, 0, 0x6145, 0x6146, + 0, 0x6149, 0x6148, 0x4925, 0, 0, 0x4142, 0x4141, + 0, 0x353F, 0, 0, 0x614B, 0, 0, 0, + 0, 0, 0x614C, 0, 0, 0x614D, 0, 0, + 0, 0, 0, 0x614F, 0, 0x614E, 0, 0, + 0, 0, 0, 0x3156, 0, 0, 0, 0, + 0, 0x6157, 0x4868, 0x6151, 0, 0x6153, 0, 0, + 0x6155, 0x3F3E, 0, 0, 0x6156, 0x6154, 0x3C40, 0, +}; +unsigned short utf8_to_euc_E797[] = { + 0, 0, 0x6150, 0x6152, 0, 0x4942, 0, 0x3E49, + 0, 0, 0x6159, 0, 0, 0x6158, 0, 0, + 0, 0, 0x615A, 0, 0x3C26, 0x3A2F, 0, 0, + 0x4577, 0x615B, 0, 0x444B, 0, 0, 0x615D, 0, + 0, 0, 0x4E21, 0x615C, 0, 0, 0, 0, + 0, 0x4169, 0, 0, 0, 0, 0, 0, + 0x6162, 0, 0x6164, 0x6165, 0x4354, 0, 0, 0, + 0, 0, 0x6163, 0, 0x6160, 0, 0x615E, 0x615F, +}; +unsigned short utf8_to_euc_E798[] = { + 0, 0x6161, 0, 0, 0, 0, 0, 0, + 0, 0x6168, 0, 0x6166, 0, 0x6167, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6169, + 0x616B, 0x616C, 0x616D, 0, 0x616E, 0, 0, 0x616A, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x6170, 0, 0, 0, 0x616F, 0, 0, 0, + 0, 0, 0, 0x6171, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E799[] = { + 0, 0, 0x4E45, 0, 0, 0, 0x6174, 0x6172, + 0x6173, 0, 0, 0, 0x3462, 0, 0, 0, + 0, 0, 0x4C7E, 0, 0, 0, 0x4A4A, 0, + 0x6176, 0, 0, 0, 0x6175, 0, 0, 0, + 0, 0x6177, 0x6178, 0, 0, 0, 0, 0x617C, + 0x6179, 0x617A, 0x617B, 0, 0x617D, 0, 0, 0, + 0x617E, 0, 0x6221, 0, 0, 0, 0x6222, 0, + 0x6223, 0, 0x482F, 0x4550, 0x6224, 0x4772, 0x4934, 0, +}; +unsigned short utf8_to_euc_E79A[] = { + 0x6225, 0, 0x7B35, 0x6226, 0x452A, 0, 0x3327, 0x3944, + 0x6227, 0, 0, 0x6228, 0, 0, 0x6229, 0, + 0x3B29, 0, 0, 0x622B, 0, 0, 0x622A, 0, + 0, 0x622C, 0x622D, 0x7B38, 0x7B36, 0, 0x7B37, 0, + 0, 0, 0, 0, 0, 0, 0x7B39, 0, + 0, 0, 0, 0, 0, 0, 0x4869, 0, + 0x622E, 0, 0, 0, 0x622F, 0, 0, 0x7369, + 0x6230, 0x6231, 0x6232, 0, 0, 0, 0, 0x3B2E, +}; +unsigned short utf8_to_euc_E79B[] = { + 0, 0, 0x6233, 0x4756, 0, 0, 0x4B5F, 0, + 0x314E, 0, 0x3157, 0, 0, 0x6234, 0, 0, + 0, 0, 0x6236, 0, 0, 0, 0x6235, 0x4570, + 0, 0, 0, 0x4039, 0x5D39, 0, 0x6237, 0x4C41, + 0, 0x6238, 0, 0x3446, 0x4857, 0x6239, 0, 0x623A, + 0, 0, 0x623B, 0, 0, 0, 0x4C5C, 0, + 0, 0, 0x4C55, 0, 0x443E, 0, 0, 0, + 0x416A, 0, 0, 0x623D, 0, 0, 0x3D62, 0, +}; +unsigned short utf8_to_euc_E79C[] = { + 0, 0x3E4A, 0, 0, 0x6240, 0, 0, 0x623F, + 0x623E, 0x487D, 0, 0x3447, 0x3829, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6246, 0, 0, 0x6243, 0x3F3F, + 0x4C32, 0, 0, 0, 0x6242, 0x6244, 0x6245, 0, + 0, 0x6241, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6247, + 0x6248, 0, 0x442F, 0, 0x3463, 0, 0, 0, +}; +unsigned short utf8_to_euc_E79D[] = { + 0x4365, 0, 0, 0, 0, 0, 0x7B3B, 0x6249, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x624A, 0x624D, 0, 0, 0, 0, + 0, 0x3F67, 0, 0x4644, 0, 0x624E, 0x4B53, 0, + 0x624B, 0, 0, 0x624C, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6251, 0, 0, 0, 0, 0x6250, 0x624F, +}; +unsigned short utf8_to_euc_E79E[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6253, 0, 0, 0x6252, 0, + 0, 0x6254, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x6256, 0, + 0x6255, 0, 0, 0, 0, 0x4A4D, 0, 0, + 0, 0, 0, 0, 0x3D56, 0x4E46, 0, 0, + 0x6257, 0, 0, 0x4637, 0, 0, 0x6258, 0, + 0, 0x6259, 0, 0x625D, 0x625B, 0x625C, 0, 0x625A, +}; +unsigned short utf8_to_euc_E79F[] = { + 0, 0, 0, 0, 0, 0, 0, 0x625E, + 0, 0, 0, 0, 0, 0x625F, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6260, + 0, 0, 0x6261, 0x4C37, 0x6262, 0, 0, 0, + 0, 0, 0x4C70, 0x6263, 0, 0x434E, 0, 0x476A, + 0, 0x366B, 0, 0, 0, 0x433B, 0x6264, 0x363A, + 0, 0, 0, 0x4050, 0, 0, 0, 0, + 0, 0, 0, 0, 0x6265, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7A0[] = { + 0, 0, 0x3A3D, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x6266, 0, 0, 0, + 0, 0, 0x6267, 0, 0x3826, 0x3A55, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x6269, 0x7B3D, 0, 0, 0, 0x4556, 0x3A56, 0x354E, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4B24, 0, 0x474B, 0, 0, 0, + 0, 0, 0x4557, 0, 0, 0, 0, 0x395C, +}; +unsigned short utf8_to_euc_E7A1[] = { + 0, 0, 0, 0, 0, 0x626B, 0, 0, + 0, 0, 0, 0, 0, 0, 0x7B3E, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x3E4B, 0, 0, + 0, 0, 0, 0, 0x7B3F, 0, 0, 0, + 0, 0, 0, 0x4E32, 0x3945, 0, 0, 0x3827, + 0, 0, 0x4823, 0, 0x626D, 0, 0, 0, + 0, 0, 0x7B40, 0, 0x626F, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7A2[] = { + 0, 0x386B, 0, 0, 0, 0, 0x626E, 0x4476, + 0, 0, 0, 0, 0x6271, 0x3337, 0x626C, 0, + 0, 0x486A, 0, 0x3130, 0, 0x3A6C, 0, 0x4F52, + 0, 0, 0x6270, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6272, 0, 0, 0, 0x4A4B, + 0, 0x4059, 0x6274, 0, 0, 0, 0, 0x6275, + 0, 0, 0, 0, 0, 0x6273, 0, 0, + 0, 0, 0x334E, 0, 0x627B, 0, 0x627A, 0, +}; +unsigned short utf8_to_euc_E7A3[] = { + 0, 0x3C27, 0, 0, 0, 0x627C, 0x6277, 0, + 0, 0, 0x627D, 0x6278, 0, 0, 0, 0, + 0x4858, 0x6276, 0, 0, 0x6279, 0, 0, 0, + 0, 0, 0x6322, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6321, + 0x4B61, 0, 0, 0, 0x627E, 0, 0, 0x306B, + 0, 0, 0, 0, 0x6324, 0, 0, 0, + 0, 0, 0, 0, 0, 0x6323, 0, 0, +}; +unsigned short utf8_to_euc_E7A4[] = { + 0, 0x3E4C, 0, 0, 0, 0, 0, 0x6325, + 0, 0, 0, 0, 0, 0, 0x4143, 0, + 0, 0x6327, 0x6326, 0, 0, 0, 0, 0, + 0, 0x6328, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x6268, 0, + 0, 0, 0x626A, 0x632A, 0x6329, 0, 0, 0, + 0x7B41, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3C28, 0, 0x4E69, 0, 0x3C52, 0, +}; +unsigned short utf8_to_euc_E7A5[] = { + 0x632B, 0x3737, 0, 0, 0, 0, 0, 0x3540, + 0x3527, 0x3B63, 0, 0, 0, 0, 0, 0, + 0x4D34, 0, 0, 0x6331, 0, 0x6330, 0x4144, 0x632D, + 0, 0, 0x632F, 0, 0, 0x3D4B, 0x3F40, 0x632E, + 0x632C, 0, 0x472A, 0, 0, 0x3E4D, 0, 0, + 0x493C, 0, 0, 0, 0, 0x3A57, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x4578, + 0, 0, 0x6332, 0, 0, 0, 0, 0x6333, +}; +unsigned short utf8_to_euc_E7A6[] = { + 0x6349, 0x3658, 0, 0, 0x4F3D, 0x4135, 0, 0, + 0, 0, 0x6334, 0, 0, 0x3252, 0x4477, 0x4A21, + 0, 0, 0, 0, 0x7B45, 0, 0, 0, + 0, 0, 0, 0x7B47, 0, 0x6335, 0, 0, + 0, 0, 0, 0, 0, 0, 0x357A, 0x6336, + 0, 0, 0x6338, 0, 0, 0, 0x6339, 0, + 0x4729, 0, 0, 0x633A, 0, 0, 0, 0, + 0, 0x633B, 0x633C, 0, 0, 0x3659, 0x3253, 0x4645, +}; +unsigned short utf8_to_euc_E7A7[] = { + 0x3D28, 0x3B64, 0, 0, 0, 0, 0, 0, + 0, 0x633D, 0, 0x3D29, 0, 0, 0, 0, + 0, 0x324A, 0x4943, 0, 0, 0x633E, 0, 0, + 0x486B, 0, 0, 0, 0, 0, 0, 0x4145, + 0, 0x6341, 0, 0x6342, 0x4769, 0, 0x3F41, 0x633F, + 0, 0x4361, 0, 0, 0x6340, 0, 0, 0, + 0x3E4E, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x305C, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7A8[] = { + 0x3529, 0, 0, 0, 0, 0, 0, 0, + 0x6343, 0, 0, 0x4478, 0, 0x6344, 0x4047, 0, + 0, 0, 0, 0, 0x4C2D, 0, 0, 0x4923, + 0x6345, 0x6346, 0x4355, 0, 0x4E47, 0, 0, 0x6348, + 0x6347, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x3C6F, 0, + 0, 0x634A, 0x3070, 0, 0, 0, 0, 0x634D, + 0, 0, 0, 0x634B, 0x3254, 0x374E, 0x634C, 0x3946, +}; +unsigned short utf8_to_euc_E7A9[] = { + 0x3972, 0, 0x4A66, 0x634E, 0, 0, 0x4B54, 0, + 0, 0x6350, 0, 0, 0, 0x4051, 0x314F, 0x323A, + 0x302C, 0, 0, 0, 0, 0, 0, 0x634F, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6351, 0x6352, 0x3E77, 0, 0, 0, 0, + 0, 0x6353, 0, 0x334F, 0, 0, 0, 0, + 0x6355, 0, 0, 0, 0x376A, 0, 0x3566, 0, + 0, 0x6356, 0x3675, 0, 0, 0x6357, 0, 0x407C, +}; +unsigned short utf8_to_euc_E7AA[] = { + 0, 0x464D, 0, 0x4060, 0x3A75, 0, 0, 0, + 0x6358, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4362, 0x416B, 0, 0x635A, 0x635C, 0x6359, + 0x635B, 0, 0, 0, 0, 0, 0, 0x3722, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x635D, 0x3726, 0, 0, 0, 0x3567, 0x4D52, + 0x635F, 0, 0, 0, 0, 0, 0x6360, 0, + 0, 0, 0x312E, 0, 0, 0, 0, 0x6363, +}; +unsigned short utf8_to_euc_E7AB[] = { + 0, 0, 0, 0x3376, 0x6362, 0x6361, 0, 0x6365, + 0x635E, 0, 0x6366, 0x4E29, 0, 0x6367, 0, 0x6368, + 0, 0x7B48, 0x5474, 0x636A, 0, 0x6369, 0, 0, + 0, 0x636B, 0x636C, 0, 0x4E35, 0x636D, 0, 0x706F, + 0x3E4F, 0x636E, 0x636F, 0x3D57, 0, 0x4638, 0x6370, 0x7B49, + 0, 0, 0x4328, 0x7B4B, 0, 0x6371, 0, 0x433C, + 0x6372, 0, 0, 0, 0, 0, 0x3625, 0, + 0x513F, 0x435D, 0x3C33, 0, 0, 0, 0, 0x3448, +}; +unsigned short utf8_to_euc_E7AC[] = { + 0, 0, 0x6373, 0, 0x6422, 0, 0x6376, 0, + 0x3568, 0, 0x6375, 0x6424, 0, 0, 0, 0x6374, + 0, 0x3E50, 0, 0, 0, 0, 0, 0, + 0x6378, 0x6379, 0, 0x452B, 0, 0, 0x637A, 0, + 0x335E, 0, 0, 0, 0, 0x3F5A, 0x4964, 0, + 0x637C, 0, 0, 0, 0x4268, 0, 0, 0, + 0, 0, 0, 0x6377, 0, 0x637B, 0x637D, 0, + 0, 0x3A7B, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7AD[] = { + 0, 0, 0, 0, 0, 0x6426, 0x492E, 0, + 0x4826, 0x4579, 0, 0x365A, 0x6425, 0x6423, 0, 0x4835, + 0x637E, 0x435E, 0x457B, 0, 0x457A, 0, 0x3A76, 0, + 0, 0, 0, 0, 0, 0x6438, 0, 0, + 0, 0, 0, 0, 0, 0x6428, 0, 0x642A, + 0, 0, 0, 0, 0x642D, 0, 0x642E, 0, + 0x642B, 0x642C, 0, 0, 0x6429, 0x6427, 0, 0, + 0, 0, 0x6421, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7AE[] = { + 0, 0, 0, 0, 0, 0, 0x4A4F, 0x3255, + 0, 0, 0, 0x6435, 0, 0x6432, 0, 0x6437, + 0, 0, 0x6436, 0, 0x4773, 0x4C27, 0, 0x3B3B, + 0x6430, 0x6439, 0x6434, 0, 0x6433, 0x642F, 0x7B4C, 0x6431, + 0, 0x3449, 0, 0, 0, 0, 0, 0, + 0, 0, 0x433D, 0, 0, 0x407D, 0, 0, + 0, 0x4822, 0, 0, 0x643E, 0, 0, 0, + 0x4824, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7AF[] = { + 0x4061, 0x643B, 0, 0, 0x484F, 0, 0x643F, 0x4A53, + 0, 0x435B, 0, 0x643A, 0x643C, 0, 0, 0x643D, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x6440, 0, 0, + 0x3C44, 0, 0, 0, 0x4646, 0x6445, 0x6444, 0, + 0, 0x6441, 0, 0, 0, 0x4F36, 0, 0, + 0, 0, 0, 0x644A, 0, 0, 0x644E, 0x644B, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7B0[] = { + 0x6447, 0, 0, 0, 0, 0, 0, 0x6448, + 0, 0, 0, 0, 0, 0x644D, 0, 0, + 0, 0x6442, 0x5255, 0x6449, 0x6443, 0, 0, 0x644C, + 0, 0, 0, 0, 0, 0, 0, 0x6452, + 0, 0x344A, 0, 0x644F, 0, 0, 0, 0x6450, + 0, 0, 0x6451, 0x6454, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6453, + 0x4876, 0, 0, 0, 0, 0x6455, 0x4E7C, 0x4A6D, +}; +unsigned short utf8_to_euc_E7B1[] = { + 0x645A, 0, 0, 0x6457, 0, 0, 0, 0, + 0, 0, 0, 0, 0x6456, 0x4052, 0, 0x6459, + 0x645B, 0, 0, 0, 0x6458, 0, 0x645F, 0, + 0x645C, 0, 0, 0, 0, 0, 0, 0x645D, + 0x6446, 0, 0, 0, 0x645E, 0x6460, 0, 0, + 0, 0, 0, 0, 0x6461, 0, 0, 0, + 0, 0, 0, 0x4A46, 0, 0x6462, 0, 0, + 0, 0, 0, 0, 0, 0, 0x4C62, 0, +}; +unsigned short utf8_to_euc_E7B2[] = { + 0, 0x364E, 0x3729, 0x6463, 0, 0, 0, 0, + 0, 0x4A34, 0, 0x3F68, 0, 0x4C30, 0, 0, + 0x6464, 0, 0x4E33, 0, 0, 0x4774, 0, 0x4146, + 0x4734, 0, 0, 0x3D4D, 0, 0, 0, 0x3040, + 0, 0x6469, 0x6467, 0, 0x6465, 0x3421, 0, 0x3E51, + 0x646A, 0, 0, 0x6468, 0, 0x6466, 0x646E, 0, + 0, 0x646D, 0x646C, 0x646B, 0, 0, 0, 0, + 0, 0x646F, 0, 0, 0, 0x6470, 0x403A, 0, +}; +unsigned short utf8_to_euc_E7B3[] = { + 0x6471, 0, 0x6473, 0, 0, 0x6472, 0, 0, + 0, 0, 0x3852, 0, 0, 0, 0x4138, 0, + 0, 0, 0x6475, 0, 0, 0, 0x457C, 0, + 0x6474, 0, 0, 0, 0x6476, 0, 0x4A35, 0x416C, + 0x3947, 0, 0x6477, 0, 0, 0, 0, 0x4E48, + 0, 0, 0, 0, 0, 0, 0, 0x6479, + 0, 0, 0x647A, 0, 0x647B, 0, 0x647C, 0, + 0x3B65, 0, 0x647D, 0x374F, 0, 0, 0x356A, 0, +}; +unsigned short utf8_to_euc_E7B4[] = { + 0x352A, 0, 0x6521, 0, 0x4C73, 0x3948, 0x647E, 0, + 0, 0, 0x6524, 0x4C66, 0, 0x473C, 0, 0, + 0x4933, 0, 0, 0, 0x3D63, 0x6523, 0, 0x3C53, + 0x3949, 0x3B66, 0x3569, 0x4A36, 0x6522, 0, 0, 0, + 0x4147, 0x4B42, 0x3A77, 0, 0, 0, 0, 0, + 0, 0, 0, 0x3B67, 0x445D, 0, 0x6527, 0x4E5F, + 0x3A59, 0, 0x6528, 0x3F42, 0, 0x652A, 0, 0, + 0, 0x3E52, 0x3A30, 0, 0, 0, 0, 0x6529, +}; +unsigned short utf8_to_euc_E7B5[] = { + 0, 0, 0x3D2A, 0x383E, 0x4148, 0x6525, 0x652B, 0, + 0x7B4E, 0, 0, 0x6526, 0x3750, 0, 0x652E, 0x6532, + 0x376B, 0, 0, 0, 0, 0, 0x652D, 0, + 0, 0, 0, 0x6536, 0x7B4F, 0, 0x394A, 0, + 0, 0x4D6D, 0x303C, 0x6533, 0, 0, 0x356B, 0, + 0x6530, 0, 0, 0, 0, 0, 0x6531, 0, + 0, 0x457D, 0x652F, 0x652C, 0, 0x3328, 0x4064, 0, + 0, 0x3828, 0, 0, 0, 0x6538, 0, 0, +}; +unsigned short utf8_to_euc_E7B6[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6535, 0, 0, 0, 0, 0, 0x6537, + 0, 0, 0, 0x6534, 0, 0, 0, 0, + 0, 0x3751, 0x4233, 0x6539, 0x416E, 0, 0, 0x6546, + 0x7B51, 0, 0x6542, 0x653C, 0, 0, 0, 0, + 0, 0, 0, 0x6540, 0x3C7A, 0x305D, 0x653B, 0x6543, + 0x6547, 0x394B, 0x4C56, 0, 0x4456, 0x653D, 0, 0x7B50, + 0x6545, 0, 0x653A, 0x433E, 0, 0x653F, 0x303D, 0x4C4A, +}; +unsigned short utf8_to_euc_E7B7[] = { + 0, 0, 0, 0, 0, 0, 0, 0x653E, + 0, 0, 0x365B, 0x486C, 0, 0, 0, 0x416D, + 0, 0x4E50, 0x3D6F, 0, 0, 0x656E, 0x7B52, 0, + 0x6548, 0, 0x407E, 0, 0x6544, 0x6549, 0x654B, 0, + 0x4479, 0x654E, 0, 0, 0x654A, 0, 0, 0, + 0x4A54, 0x344B, 0, 0, 0x4C4B, 0, 0, 0x305E, + 0, 0, 0x654D, 0, 0x4E7D, 0, 0, 0, + 0, 0, 0, 0x654C, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7B8[] = { + 0, 0x316F, 0, 0, 0x466C, 0x654F, 0, 0, + 0, 0x6556, 0x6550, 0x6557, 0, 0, 0, 0, + 0, 0, 0x6553, 0, 0, 0, 0, 0, + 0, 0, 0, 0x477B, 0, 0, 0x3C4A, 0x6555, + 0, 0x6552, 0x6558, 0x6551, 0, 0, 0x3D44, 0, + 0, 0, 0, 0x4B25, 0, 0, 0x3D4C, 0, + 0, 0x6554, 0x6560, 0, 0, 0x655C, 0, 0x655F, + 0, 0x655D, 0x6561, 0x655B, 0, 0x6541, 0x4053, 0, +}; +unsigned short utf8_to_euc_E7B9[] = { + 0, 0x484B, 0, 0x655E, 0, 0, 0x6559, 0, + 0, 0, 0x4121, 0x3752, 0, 0x3D2B, 0, 0, + 0, 0, 0x7B53, 0, 0x3F25, 0x4136, 0x6564, 0, + 0, 0x6566, 0x6567, 0, 0, 0x6563, 0x6565, 0, + 0, 0, 0, 0, 0, 0, 0x655A, 0x6562, + 0, 0x656A, 0x6569, 0, 0, 0x4B7A, 0, 0, + 0x372B, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6568, 0, 0x656C, 0x656B, 0x656F, 0, 0x6571, +}; +unsigned short utf8_to_euc_E7BA[] = { + 0, 0, 0x3B3C, 0x656D, 0, 0, 0, 0, + 0x6572, 0x6573, 0x7921, 0, 0x6574, 0, 0x657A, 0x453B, + 0x6576, 0, 0x6575, 0x6577, 0x6578, 0, 0x6579, 0, + 0, 0, 0, 0x657B, 0x657C, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7BC[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x344C, 0, + 0x657D, 0, 0x657E, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7BD[] = { + 0, 0, 0, 0, 0, 0x6621, 0, 0x7B54, + 0, 0, 0, 0, 0x6622, 0x6623, 0x6624, 0, + 0x6625, 0x6626, 0, 0, 0x6628, 0x6627, 0, 0, + 0x6629, 0, 0, 0, 0, 0, 0, 0x662A, + 0x662B, 0, 0, 0, 0, 0, 0, 0x662E, + 0x662C, 0x662D, 0x3A61, 0x3753, 0, 0, 0x4356, 0, + 0x4833, 0, 0x3D70, 0, 0, 0x474D, 0, 0x486D, + 0x662F, 0x586D, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E7BE[] = { + 0, 0, 0x6630, 0x6632, 0, 0x4D65, 0x6631, 0x6634, + 0x6633, 0, 0x4D53, 0, 0x6635, 0, 0x487E, 0, + 0, 0, 0, 0, 0x6636, 0, 0, 0, + 0, 0, 0x6639, 0, 0, 0x6638, 0x6637, 0, + 0, 0x7B55, 0, 0x663A, 0x3732, 0, 0, 0, + 0x4122, 0x3541, 0, 0, 0, 0, 0x663E, 0x663B, + 0, 0, 0x663C, 0, 0, 0, 0x663F, 0, + 0x6640, 0x663D, 0, 0, 0, 0x3129, 0, 0, +}; +unsigned short utf8_to_euc_E7BF[] = { + 0, 0x3227, 0, 0, 0, 0x6642, 0x6643, 0, + 0, 0, 0x6644, 0, 0x4D62, 0, 0, 0, + 0, 0, 0x3D2C, 0, 0x6646, 0x6645, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x3F69, 0x6647, 0, 0, 0, 0, 0x6648, 0, + 0, 0x6649, 0, 0x3465, 0, 0, 0, 0, + 0x344D, 0, 0, 0x664A, 0, 0, 0, 0, + 0, 0x664B, 0, 0x4B5D, 0x4D63, 0, 0, 0, +}; +unsigned short utf8_to_euc_E880[] = { + 0x4D54, 0x4F37, 0, 0x394D, 0x664E, 0x3C54, 0x664D, 0, + 0, 0, 0, 0x664F, 0x3C29, 0, 0, 0, + 0x4251, 0, 0x6650, 0, 0, 0x394C, 0, 0x4C57, + 0x6651, 0x6652, 0, 0, 0x6653, 0, 0, 0, + 0, 0x6654, 0, 0, 0, 0, 0, 0, + 0x6655, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x3C2A, 0, 0, 0x4C6D, 0, + 0, 0, 0, 0x6657, 0, 0x433F, 0, 0x6656, +}; +unsigned short utf8_to_euc_E881[] = { + 0, 0, 0, 0, 0, 0, 0x6659, 0, + 0, 0, 0x6658, 0, 0, 0, 0, 0, + 0, 0, 0x665A, 0, 0, 0, 0x403B, 0, + 0x665B, 0, 0x665C, 0, 0, 0, 0x4A39, 0x665D, + 0, 0x416F, 0x665E, 0, 0, 0, 0, 0, + 0x665F, 0, 0, 0, 0, 0, 0, 0x4E7E, + 0x6662, 0, 0x6661, 0x6660, 0x4430, 0, 0x6663, 0x3F26, + 0, 0x6664, 0, 0, 0, 0x6665, 0x4F38, 0x6666, +}; +unsigned short utf8_to_euc_E882[] = { + 0, 0, 0, 0, 0x6667, 0x6669, 0x6668, 0x4825, + 0, 0x4679, 0, 0x4F3E, 0x4829, 0, 0, 0, + 0, 0, 0, 0x666B, 0, 0, 0x3E53, 0, + 0x492A, 0, 0x666C, 0x666A, 0, 0x344E, 0, 0, + 0, 0x3854, 0x3B68, 0, 0, 0x486E, 0, 0, + 0, 0x382A, 0x4B43, 0, 0x666F, 0x666D, 0, 0x394E, + 0, 0x394F, 0x3069, 0, 0x3A68, 0, 0, 0, + 0, 0, 0x4759, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E883[] = { + 0, 0, 0, 0x305F, 0x6674, 0, 0x4340, 0, + 0, 0, 0, 0, 0x4758, 0, 0x425B, 0, + 0, 0, 0, 0, 0, 0, 0x6676, 0, + 0, 0x6672, 0x6675, 0x6670, 0, 0x6673, 0x4B26, 0, + 0, 0x3855, 0, 0, 0x307D, 0x6671, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6678, + 0, 0x6679, 0, 0, 0x4639, 0, 0, 0, + 0x363B, 0, 0, 0, 0x6726, 0x473D, 0, 0, +}; +unsigned short utf8_to_euc_E884[] = { + 0, 0, 0x3B69, 0, 0, 0x363C, 0x4048, 0x4F46, + 0x4C2E, 0x6677, 0x4054, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3553, 0x667A, 0, 0, 0, 0, + 0, 0, 0, 0x667C, 0, 0, 0, 0, + 0, 0x667B, 0, 0, 0, 0, 0, 0x667D, + 0, 0x4326, 0, 0x473E, 0, 0, 0, 0, + 0, 0x4431, 0, 0, 0, 0, 0x6723, 0, +}; +unsigned short utf8_to_euc_E885[] = { + 0, 0, 0, 0, 0, 0, 0x6722, 0, + 0, 0, 0, 0x667E, 0, 0, 0x3F55, 0, + 0x4965, 0x6725, 0, 0x6724, 0x3950, 0x4F53, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6735, + 0, 0, 0, 0, 0, 0x6729, 0x672A, 0, + 0, 0, 0, 0x3C70, 0, 0, 0x6728, 0, + 0x3978, 0x6727, 0, 0, 0x672B, 0, 0, 0, + 0x4432, 0x4A22, 0x4123, 0, 0, 0, 0, 0x425C, +}; +unsigned short utf8_to_euc_E886[] = { + 0x672F, 0, 0x6730, 0x672C, 0, 0, 0, 0, + 0x672D, 0, 0x672E, 0, 0, 0, 0, 0x3951, + 0, 0, 0, 0x6736, 0, 0x6732, 0, 0, + 0, 0, 0x4966, 0, 0x4B6C, 0x4928, 0, 0, + 0x6731, 0, 0, 0x6734, 0x6733, 0, 0, 0, + 0x4B44, 0x6737, 0, 0, 0, 0, 0, 0, + 0x6738, 0, 0, 0x4137, 0, 0x6739, 0, 0, + 0x673B, 0, 0x673F, 0, 0, 0x673C, 0x673A, 0x473F, +}; +unsigned short utf8_to_euc_E887[] = { + 0x673D, 0, 0x673E, 0, 0, 0, 0x3232, 0, + 0x6745, 0x6740, 0, 0, 0, 0x6741, 0, 0, + 0, 0x6742, 0, 0x4221, 0, 0, 0, 0, + 0x6744, 0x6743, 0x6746, 0, 0, 0, 0, 0x6747, + 0x6748, 0, 0, 0x3F43, 0, 0x3269, 0, 0x6749, + 0x4E57, 0, 0x3C2B, 0, 0, 0x3D2D, 0, 0, + 0, 0, 0, 0x3B6A, 0x4357, 0, 0, 0, + 0, 0, 0x674A, 0x674B, 0x3131, 0, 0x674C, 0, +}; +unsigned short utf8_to_euc_E888[] = { + 0, 0x674D, 0x674E, 0, 0, 0x674F, 0, 0x6750, + 0x363D, 0x5A2A, 0x6751, 0, 0x4065, 0x6752, 0x3C4B, 0, + 0x6753, 0, 0x5030, 0, 0, 0, 0x6754, 0x4A5E, + 0x345C, 0, 0, 0x4124, 0x3D58, 0, 0x4971, 0x3D2E, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6755, 0x3952, 0x6756, 0x484C, 0, 0x6764, 0, + 0, 0, 0, 0x6758, 0, 0x4249, 0x4775, 0x383F, + 0x6757, 0x4125, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E889[] = { + 0x6759, 0, 0, 0, 0, 0, 0, 0x447A, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x675B, 0x675A, 0x675D, 0, 0, 0x675C, 0, 0x675E, + 0, 0, 0x6760, 0, 0x675F, 0, 0x344F, 0, + 0x6761, 0, 0x6762, 0x6763, 0, 0, 0x3A31, 0x4E49, + 0, 0x6765, 0x3F27, 0, 0, 0, 0x3170, 0x6766, + 0x6767, 0, 0, 0, 0, 0, 0x6768, 0, +}; +unsigned short utf8_to_euc_E88A[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x3072, 0, 0x6769, 0, 0, + 0, 0, 0x676A, 0, 0, 0, 0, 0, + 0, 0x4967, 0, 0, 0, 0x3C47, 0, 0x676C, + 0, 0, 0, 0, 0, 0x3329, 0x3032, 0, + 0, 0, 0, 0x676B, 0x676E, 0x474E, 0, 0x3F44, + 0, 0x3256, 0, 0x4B27, 0, 0, 0, 0, + 0x375D, 0x365C, 0, 0x676D, 0, 0x326A, 0, 0, +}; +unsigned short utf8_to_euc_E88B[] = { + 0, 0, 0, 0, 0, 0x3423, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x3171, 0x6772, 0x4E6A, 0x425D, 0, 0, 0x4944, + 0, 0x677E, 0, 0x3257, 0x677C, 0, 0x677A, 0x6771, + 0, 0x676F, 0, 0x6770, 0, 0x3C63, 0x366C, 0x4377, + 0, 0, 0, 0x4651, 0, 0, 0, 0, + 0, 0x3151, 0, 0x6774, 0x6773, 0, 0, 0, + 0, 0x6779, 0x6775, 0x6778, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E88C[] = { + 0, 0x7B57, 0x4C50, 0x6777, 0x3258, 0x337D, 0x677B, 0, + 0, 0x677D, 0, 0, 0, 0, 0x3754, 0, + 0, 0, 0, 0, 0, 0, 0x6823, 0x682C, + 0x682D, 0, 0, 0, 0x302B, 0, 0, 0, + 0, 0, 0, 0x6834, 0, 0, 0, 0, + 0x3071, 0, 0, 0x682B, 0, 0, 0, 0x682A, + 0, 0x6825, 0x6824, 0, 0x6822, 0x6821, 0x4363, 0, + 0x427B, 0x6827, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E88D[] = { + 0x6826, 0, 0, 0, 0, 0x6829, 0, 0, + 0, 0x4170, 0x3755, 0, 0, 0, 0, 0x3141, + 0x6828, 0, 0x3953, 0, 0, 0, 0, 0, + 0x4171, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x7B58, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x683A, 0, 0x683B, 0, 0x3259, + 0, 0, 0, 0x322E, 0x6838, 0, 0, 0x7B59, +}; +unsigned short utf8_to_euc_E88E[] = { + 0, 0, 0, 0, 0, 0x682E, 0, 0x6836, + 0, 0x683D, 0x6837, 0, 0, 0, 0x6835, 0, + 0, 0, 0, 0x6776, 0, 0, 0x6833, 0, + 0, 0, 0x682F, 0, 0, 0, 0x3450, 0x6831, + 0x683C, 0, 0x6832, 0, 0, 0, 0, 0, + 0x683E, 0, 0x6830, 0x477C, 0, 0, 0, 0, + 0, 0x4D69, 0, 0, 0, 0x6839, 0, 0, + 0, 0, 0, 0, 0, 0x684F, 0, 0, +}; +unsigned short utf8_to_euc_E88F[] = { + 0, 0x6847, 0, 0, 0, 0x3F7B, 0, 0x7B5A, + 0, 0, 0x3546, 0, 0x365D, 0, 0x6842, 0, + 0, 0, 0, 0x325B, 0, 0, 0x3E54, 0, + 0x6845, 0, 0, 0, 0x3A5A, 0, 0, 0x4551, + 0x684A, 0, 0, 0, 0, 0, 0, 0, + 0, 0x4A6E, 0, 0x6841, 0, 0, 0, 0x325A, + 0x3856, 0x4929, 0x684B, 0, 0x683F, 0, 0x7B5B, 0x6848, + 0, 0, 0, 0x6852, 0, 0x6843, 0, 0, +}; +unsigned short utf8_to_euc_E890[] = { + 0, 0, 0, 0x6844, 0x463A, 0, 0, 0x6849, + 0, 0, 0, 0x6846, 0x4B28, 0x684C, 0x3060, 0, + 0, 0, 0, 0x6840, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x684E, 0, 0x684D, 0, 0, 0, 0, 0, + 0, 0x476B, 0x6854, 0, 0x685F, 0, 0, 0, + 0, 0x337E, 0, 0, 0, 0x6862, 0, 0, + 0x6850, 0, 0, 0, 0x6855, 0x4D6E, 0, 0, +}; +unsigned short utf8_to_euc_E891[] = { + 0, 0, 0, 0, 0, 0, 0x685E, 0, + 0x7B5C, 0x4D55, 0, 0, 0, 0, 0x4E2A, 0, + 0, 0, 0, 0, 0, 0, 0, 0x4378, + 0, 0, 0, 0x336B, 0, 0, 0, 0, + 0, 0x4972, 0x6864, 0x4621, 0, 0, 0x3031, 0, + 0, 0x685D, 0, 0x6859, 0x4172, 0x6853, 0x685B, 0x6860, + 0, 0x472C, 0, 0, 0, 0x302A, 0, 0x6858, + 0, 0x6861, 0x4978, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E892[] = { + 0, 0, 0x685C, 0, 0x6857, 0, 0, 0, + 0, 0, 0, 0x3E55, 0, 0, 0, 0, + 0x3D2F, 0, 0, 0, 0x3C2C, 0, 0, 0, + 0, 0x4C58, 0, 0, 0x4947, 0, 0, 0x6867, + 0, 0x6870, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x685A, 0, 0, + 0, 0, 0x3377, 0, 0x7B5D, 0, 0, 0, + 0x3E78, 0x6865, 0, 0x686A, 0x4173, 0, 0, 0x6866, +}; +unsigned short utf8_to_euc_E893[] = { + 0, 0x686D, 0, 0, 0x435F, 0, 0x686E, 0, + 0, 0x4D56, 0x6863, 0x3338, 0, 0x6869, 0, 0, + 0x686C, 0x4C2C, 0, 0, 0, 0, 0x686F, 0, + 0, 0x6868, 0x686B, 0, 0x7925, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x4B29, 0, 0x4F21, 0, + 0, 0, 0, 0, 0x6873, 0, 0, 0, + 0, 0, 0, 0, 0x687A, 0, 0, 0x6872, +}; +unsigned short utf8_to_euc_E894[] = { + 0x3C43, 0, 0, 0, 0, 0, 0x6851, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x4A4E, 0, 0x4C22, 0x6879, 0x6878, 0, 0x6874, + 0x6875, 0, 0x3136, 0, 0, 0, 0, 0x6877, + 0, 0x6871, 0, 0, 0, 0, 0x4455, 0, + 0, 0, 0, 0, 0x6876, 0x307E, 0, 0, + 0, 0, 0, 0, 0, 0x4222, 0, 0, + 0, 0, 0, 0, 0, 0x4A43, 0, 0, +}; +unsigned short utf8_to_euc_E895[] = { + 0x687B, 0x6921, 0, 0x4859, 0, 0, 0, 0, + 0x687E, 0x3E56, 0x3C49, 0x6923, 0, 0, 0x363E, 0, + 0, 0, 0, 0x7B5E, 0, 0x6924, 0, 0x4979, + 0x687D, 0x7B5F, 0x6856, 0, 0, 0, 0, 0, + 0, 0, 0, 0x687C, 0, 0, 0, 0, + 0x4F4F, 0x4622, 0x4973, 0x7B60, 0, 0x692B, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6931, + 0, 0, 0, 0, 0, 0, 0x6932, 0, +}; +unsigned short utf8_to_euc_E896[] = { + 0x6925, 0, 0, 0, 0x4776, 0, 0, 0x692F, + 0x6927, 0, 0x6929, 0, 0, 0, 0, 0, + 0x6933, 0x6928, 0, 0, 0x692C, 0, 0, 0x3172, + 0, 0x4665, 0, 0x692D, 0x6930, 0, 0, 0, + 0, 0, 0, 0, 0x6926, 0, 0x4126, 0, + 0x692A, 0x3B27, 0x3F45, 0x3730, 0x4C74, 0, 0x4C79, 0x3D72, + 0x7B62, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6937, 0x6935, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E897[] = { + 0, 0x4F4E, 0, 0, 0, 0, 0, 0, + 0, 0x6934, 0, 0, 0, 0x4D75, 0, 0x6936, + 0x6938, 0, 0, 0, 0, 0x6939, 0, 0, + 0, 0, 0, 0, 0x693C, 0x693A, 0, 0, + 0, 0, 0, 0, 0x4623, 0x693B, 0, 0, + 0, 0x484D, 0x692E, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x3D73, + 0, 0x693D, 0x6942, 0x4174, 0, 0, 0x6941, 0, +}; +unsigned short utf8_to_euc_E898[] = { + 0, 0, 0x6922, 0, 0, 0, 0x6943, 0x4149, + 0, 0, 0x693E, 0x6940, 0, 0, 0, 0, + 0, 0, 0, 0x693F, 0, 0, 0x5D31, 0x5D22, + 0, 0, 0x6945, 0, 0, 0, 0, 0, + 0, 0, 0x6944, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x4D76, 0, 0x623C, + 0x6946, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6947, +}; +unsigned short utf8_to_euc_E899[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x6948, 0x3857, 0, + 0x3554, 0, 0, 0, 0x694A, 0x515D, 0, 0, + 0, 0, 0x3575, 0, 0x4E3A, 0, 0x3673, 0x694B, + 0, 0, 0, 0, 0, 0, 0, 0x694C, + 0, 0, 0, 0x436E, 0, 0, 0, 0, + 0, 0x694D, 0, 0, 0, 0, 0, 0, + 0, 0x467A, 0, 0x303A, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E89A[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3263, 0x6952, 0x6953, 0, 0, 0, + 0, 0, 0, 0x694E, 0, 0x3B3D, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x694F, 0x4742, 0, 0, 0, + 0, 0x6950, 0x6951, 0x695B, 0, 0, 0, 0x6955, + 0x6958, 0, 0, 0, 0, 0, 0x6954, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E89B[] = { + 0, 0, 0, 0, 0x6956, 0, 0x6957, 0x3C58, + 0, 0x6959, 0, 0x4341, 0, 0x3756, 0x3342, 0, + 0, 0, 0, 0, 0x695C, 0, 0, 0, + 0, 0x333F, 0, 0x6961, 0, 0, 0x695D, 0x6960, + 0, 0, 0, 0, 0x483A, 0, 0, 0, + 0, 0x695E, 0, 0, 0x695F, 0x4948, 0x485A, 0x6962, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x427D, 0x696C, 0, 0x6968, 0, 0, 0x326B, 0, +}; +unsigned short utf8_to_euc_E89C[] = { + 0x6966, 0, 0x4B2A, 0x6967, 0, 0, 0x6964, 0, + 0x6965, 0x696A, 0x696D, 0, 0, 0x696B, 0, 0, + 0, 0x6969, 0x6963, 0, 0, 0, 0, 0, + 0x4358, 0, 0x6974, 0, 0x4C2A, 0, 0, 0, + 0, 0, 0, 0, 0, 0x6972, 0, 0, + 0, 0x6973, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x696E, 0, 0, 0x6970, + 0, 0, 0, 0x6971, 0, 0, 0, 0x696F, +}; +unsigned short utf8_to_euc_E89D[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x4066, 0, 0x4F39, 0x6978, 0, 0x6979, 0, + 0, 0, 0, 0x6A21, 0, 0x3F2A, 0, 0x697B, + 0, 0x697E, 0, 0, 0, 0, 0, 0x6976, + 0x6975, 0, 0, 0x6A22, 0, 0, 0x325C, 0, + 0x697C, 0, 0x6A23, 0, 0, 0, 0x697D, 0, + 0, 0, 0, 0, 0x697A, 0, 0x4433, 0, + 0x6977, 0, 0, 0, 0, 0, 0, 0x4768, +}; +unsigned short utf8_to_euc_E89E[] = { + 0, 0, 0x6A27, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x4D3B, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6A26, + 0, 0, 0x6A25, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6A2E, 0, 0, 0, 0x6A28, + 0, 0, 0, 0x6A30, 0, 0, 0, 0, + 0, 0, 0x4D66, 0x6A33, 0, 0x6A2A, 0, 0, +}; +unsigned short utf8_to_euc_E89F[] = { + 0x6A2B, 0, 0, 0, 0x6A2F, 0, 0x6A32, 0x6A31, + 0, 0, 0, 0x6A29, 0, 0, 0, 0, + 0x6A2C, 0, 0x6A3D, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x6A36, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6A34, + 0, 0, 0x6A35, 0, 0, 0, 0x6A3A, 0x6A3B, + 0, 0x332A, 0, 0x3542, 0, 0, 0x6A39, 0, +}; +unsigned short utf8_to_euc_E8A0[] = { + 0, 0, 0, 0, 0, 0x6A24, 0, 0x7B65, + 0, 0, 0, 0, 0, 0x6A38, 0x6A3C, 0x6A37, + 0, 0x6A3E, 0, 0, 0, 0x6A40, 0x6A3F, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6A42, 0x6A41, 0x695A, 0, 0, 0, 0x6A46, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6A43, 0, 0, 0, 0, 0x6A44, 0, + 0, 0x6A45, 0, 0x6A47, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8A1[] = { + 0x376C, 0, 0x6A49, 0, 0x6A48, 0, 0x3D30, 0, + 0, 0, 0, 0, 0x3954, 0x5E27, 0, 0, + 0, 0, 0x6A4A, 0x3D51, 0, 0, 0, 0x3339, + 0, 0x6A4B, 0, 0x3152, 0, 0x3E57, 0x6A4C, 0, + 0, 0x3955, 0x6A4D, 0x3061, 0, 0, 0, 0, + 0x493D, 0, 0, 0x6A4E, 0, 0, 0, 0, + 0x3F6A, 0, 0x6A55, 0, 0, 0x6A52, 0, 0x436F, + 0, 0, 0, 0, 0, 0x6A53, 0x6A50, 0x365E, +}; +unsigned short utf8_to_euc_E8A2[] = { + 0, 0x6A4F, 0x6A56, 0, 0, 0, 0, 0, + 0x3736, 0, 0, 0x425E, 0, 0x6A5C, 0, 0, + 0, 0, 0x6A58, 0, 0, 0, 0x4235, 0x6A57, + 0, 0x6A5A, 0, 0, 0, 0, 0x6A51, 0, + 0, 0, 0x6A5B, 0, 0x6A5D, 0, 0, 0, + 0, 0, 0, 0x486F, 0, 0, 0x6A59, 0, + 0x6A5E, 0x6A60, 0, 0, 0x3853, 0x6A54, 0, 0x3041, + 0, 0, 0, 0, 0, 0, 0, 0x6A5F, +}; +unsigned short utf8_to_euc_E8A3[] = { + 0, 0x3A5B, 0x4E76, 0x6A61, 0x6A62, 0x4175, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x4E22, + 0, 0, 0, 0, 0x6A63, 0x4D35, 0, 0, + 0x6A64, 0x6A65, 0, 0, 0x4A64, 0x6A66, 0, 0x3A40, + 0, 0x4E23, 0, 0, 0, 0, 0, 0, + 0x6A6B, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x6A6C, 0x3E58, 0x6A6A, 0x7B66, 0, 0, + 0x4D67, 0x6A67, 0, 0, 0x6A69, 0x403D, 0x3F7E, 0, +}; +unsigned short utf8_to_euc_E8A4[] = { + 0, 0, 0x6A68, 0, 0x6A6D, 0, 0, 0x4A23, + 0, 0, 0x6A6F, 0, 0x6A6E, 0, 0, 0, + 0x336C, 0, 0x4B2B, 0x6A70, 0, 0, 0, 0, + 0, 0, 0, 0, 0x7922, 0x6A7C, 0x6A72, 0, + 0, 0, 0, 0, 0, 0x6A73, 0, 0, + 0, 0, 0x6A74, 0x6A75, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x6A79, 0, + 0x6A7A, 0, 0, 0x6A78, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8A5[] = { + 0, 0x6A76, 0, 0x6A71, 0x6A77, 0, 0, 0, + 0, 0, 0, 0, 0x6A7B, 0x7037, 0, 0, + 0, 0, 0, 0, 0, 0, 0x3228, 0, + 0, 0, 0, 0, 0, 0, 0x6A7E, 0x365F, + 0x6A7D, 0, 0, 0, 0x6B22, 0, 0x6B21, 0, + 0, 0, 0x6B24, 0, 0, 0x6B23, 0, 0x6B25, + 0, 0, 0x3D31, 0, 0x6B26, 0, 0, 0x6B27, + 0, 0, 0, 0, 0, 0, 0x6B28, 0x403E, +}; +unsigned short utf8_to_euc_E8A6[] = { + 0, 0x4D57, 0, 0x6B29, 0, 0, 0x4A24, 0x4746, + 0x6B2A, 0, 0x6B2B, 0x382B, 0, 0, 0, 0x352C, + 0, 0, 0, 0x6B2C, 0, 0, 0x3B6B, 0x4741, + 0x6B2D, 0, 0x3350, 0, 0, 0, 0, 0, + 0, 0x6B2E, 0, 0, 0, 0, 0x6B30, 0x4D77, + 0, 0x6B2F, 0x3F46, 0, 0x6B31, 0, 0, 0x6B32, + 0, 0, 0x6B33, 0x3451, 0, 0, 0, 0, + 0, 0, 0x6B34, 0, 0, 0x6B35, 0, 0x6B36, +}; +unsigned short utf8_to_euc_E8A7[] = { + 0x6B37, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3351, 0, 0, 0, 0, 0, + 0, 0, 0x6B38, 0, 0x6B39, 0x6B3A, 0, 0, + 0, 0, 0, 0x3272, 0, 0, 0x3F28, 0x6B3B, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x6B3C, 0, 0, 0, + 0x6B3D, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8A8[] = { + 0x3840, 0, 0x447B, 0x6B3E, 0, 0, 0, 0, + 0x3757, 0, 0x3F56, 0, 0x6B41, 0, 0x4624, 0, + 0x6B40, 0, 0x7B67, 0x3731, 0, 0, 0x6B3F, 0x4277, + 0x352D, 0, 0, 0x6B42, 0, 0x6B43, 0, 0x3E59, + 0, 0, 0, 0x376D, 0, 0x6B44, 0, 0, + 0, 0, 0x4B2C, 0, 0, 0x405F, 0, 0, + 0, 0x3576, 0, 0x4C75, 0x414A, 0, 0x6B45, 0x7B68, + 0, 0, 0x3F47, 0x4370, 0x3E5A, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8A9[] = { + 0, 0x6B46, 0, 0, 0, 0, 0x6B49, 0, + 0x6B4A, 0, 0, 0, 0, 0, 0, 0, + 0x3A3E, 0x4242, 0x6B48, 0, 0x3E5B, 0x493E, 0, 0, + 0, 0, 0, 0x6B47, 0, 0, 0x3B6C, 0, + 0x3153, 0, 0x6B4E, 0x3758, 0, 0, 0x3B6E, 0, + 0, 0x3B6D, 0, 0x4F4D, 0x6B4D, 0x6B4C, 0x4127, 0, + 0x354D, 0x4F43, 0x333A, 0x3E5C, 0, 0, 0, 0, + 0, 0x7B69, 0, 0, 0x6B4B, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8AA[] = { + 0, 0, 0x6B50, 0, 0x6B51, 0x6B4F, 0, 0x3858, + 0, 0x4D40, 0, 0, 0x3B6F, 0x4727, 0, 0, + 0, 0x6B54, 0, 0x4040, 0, 0x4342, 0, 0, + 0x4D36, 0, 0x6B57, 0, 0, 0, 0x386C, 0, + 0x403F, 0x6B53, 0, 0x6B58, 0x386D, 0x6B55, 0x6B56, 0x7B6A, + 0x6B52, 0, 0, 0, 0x4062, 0x4649, 0, 0, + 0x432F, 0, 0x325D, 0, 0, 0, 0, 0, + 0, 0x4870, 0, 0, 0x3543, 0, 0x7B6B, 0x4434, +}; +unsigned short utf8_to_euc_E8AB[] = { + 0, 0, 0x6B5B, 0, 0x6B59, 0, 0, 0x434C, + 0, 0, 0, 0x4041, 0x3452, 0x6B5A, 0, 0x3F5B, + 0, 0, 0x4E4A, 0, 0, 0, 0x4F40, 0, + 0, 0, 0x6B5C, 0x6B67, 0x4435, 0, 0x6B66, 0x7B6C, + 0x6B63, 0x6B6B, 0x6B64, 0, 0x6B60, 0, 0x447C, 0x6B5F, + 0, 0, 0, 0x6B5D, 0, 0x4D21, 0x3B70, 0, + 0, 0x6B61, 0, 0x6B5E, 0, 0, 0x7B6E, 0x6B65, + 0x3D74, 0, 0x3841, 0, 0, 0, 0x427A, 0, +}; +unsigned short utf8_to_euc_E8AC[] = { + 0x4B45, 0x315A, 0x3062, 0, 0x4625, 0, 0, 0x6B69, + 0, 0, 0, 0, 0x6B68, 0, 0x4666, 0, + 0x6B6D, 0, 0, 0, 0x6B62, 0, 0x6B6C, 0x6B6E, + 0, 0x382C, 0x6B6A, 0x3956, 0, 0x3C55, 0, 0, + 0x6B6F, 0x4D58, 0, 0, 0, 0, 0x6B72, 0, + 0x6B75, 0, 0, 0x6B73, 0x4935, 0, 0, 0, + 0, 0, 0, 0x6B70, 0, 0, 0, 0, + 0, 0x3660, 0, 0, 0, 0, 0x6B74, 0, +}; +unsigned short utf8_to_euc_E8AD[] = { + 0, 0x6B76, 0, 0, 0, 0, 0, 0, + 0, 0x6B7A, 0, 0, 0x6B77, 0, 0x6B79, 0x6B78, + 0, 0, 0, 0x7B6F, 0, 0, 0x6B7B, 0, + 0x3C31, 0, 0x6B7D, 0x6B7C, 0x4968, 0, 0, 0x6C21, + 0, 0, 0, 0, 0, 0, 0x3759, 0, + 0, 0, 0, 0x6B7E, 0x6C22, 0, 0, 0x6C23, + 0x3544, 0x6641, 0x3E79, 0, 0x6C24, 0, 0, 0x386E, + 0, 0, 0, 0, 0, 0x6C25, 0, 0x7B70, +}; +unsigned short utf8_to_euc_E8AE[] = { + 0x6C26, 0, 0, 0x3B3E, 0, 0, 0, 0, + 0, 0, 0x5A4E, 0, 0x6C27, 0, 0x6C28, 0, + 0x3D32, 0, 0x6C29, 0x6C2A, 0, 0, 0x6C2B, 0, + 0, 0x6C2C, 0x6C2D, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8B0[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x432B, + 0, 0, 0x6C2E, 0, 0, 0, 0, 0x6C30, +}; +unsigned short utf8_to_euc_E8B1[] = { + 0, 0x6C2F, 0, 0, 0, 0, 0x4626, 0, + 0x6C31, 0, 0x4B2D, 0, 0x6C32, 0, 0x6C33, 0, + 0x6C34, 0, 0, 0, 0, 0x6C35, 0, 0, + 0, 0, 0x465A, 0, 0, 0, 0, 0, + 0, 0x3E5D, 0x6C36, 0, 0, 0, 0, 0, + 0, 0, 0x396B, 0x502E, 0x6C37, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x6C38, 0x493F, 0x6C39, 0, 0x6C41, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8B2[] = { + 0, 0, 0x6C3A, 0, 0, 0x6C3C, 0, 0, + 0, 0x6C3B, 0x6C3D, 0, 0x4B46, 0x6C3E, 0x6C3F, 0, + 0, 0, 0, 0, 0x6C40, 0, 0, 0, + 0x6C42, 0, 0, 0, 0, 0x332D, 0x4467, 0, + 0x4969, 0x3A62, 0x3957, 0, 0, 0, 0, 0x494F, + 0x325F, 0x484E, 0x6C45, 0x3453, 0x4055, 0x6C44, 0x6C49, 0x4379, + 0x4C63, 0, 0x6C47, 0x6C48, 0x352E, 0, 0x6C4A, 0x4763, + 0x425F, 0, 0, 0x4871, 0x453D, 0x6C46, 0, 0x4B47, +}; +unsigned short utf8_to_euc_E8B3[] = { + 0x326C, 0x6C4C, 0x4F28, 0x4442, 0x4F45, 0, 0, 0x3B71, + 0x6C4B, 0, 0x4231, 0, 0, 0x6C5C, 0x4128, 0, + 0, 0x4678, 0, 0x4950, 0, 0, 0, 0, + 0, 0, 0x6C4F, 0x3B3F, 0x3B72, 0, 0x3E5E, 0, + 0x4765, 0, 0x382D, 0x6C4E, 0x6C4D, 0, 0x496A, 0, + 0, 0, 0x3C41, 0, 0, 0x4552, 0, 0, + 0x7B71, 0, 0, 0, 0x7B72, 0, 0, 0, + 0, 0, 0x6C51, 0x6C52, 0x3958, 0x6C50, 0, 0, +}; +unsigned short utf8_to_euc_E8B4[] = { + 0, 0, 0, 0, 0x6C53, 0x6C54, 0, 0x6C56, + 0x4223, 0, 0x6C55, 0x3466, 0, 0x6C58, 0, 0x6C57, + 0x6C59, 0, 0x7B73, 0x6C5B, 0x6C5D, 0, 0x6C5E, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8B5[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x4056, 0, 0x3C4F, 0x6C5F, + 0, 0, 0, 0x3352, 0, 0x6C60, 0, 0, + 0x4176, 0x6C61, 0, 0x6C62, 0x496B, 0, 0x7B74, 0x352F, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8B6[] = { + 0, 0x6C63, 0, 0, 0, 0x4436, 0, 0, + 0, 0, 0x315B, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6C64, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x3C71, 0, 0, 0, 0, + 0x3F76, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x422D, 0, 0, 0, 0, + 0, 0, 0x6C67, 0, 0, 0, 0x6C66, 0, +}; +unsigned short utf8_to_euc_E8B7[] = { + 0, 0, 0x6C65, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6C6D, 0x6C6B, 0, 0, 0x6C68, + 0, 0, 0, 0, 0, 0, 0x6C6A, 0, + 0, 0, 0x6C69, 0x6C6C, 0, 0x3577, 0, 0x6C70, + 0, 0x4057, 0, 0x6C71, 0, 0, 0, 0, + 0x3859, 0, 0x6C6E, 0x6C6F, 0, 0, 0, 0x4F29, + 0, 0, 0, 0x4437, 0, 0x4129, 0, 0, + 0, 0, 0, 0, 0x6C72, 0, 0, 0x6C75, +}; +unsigned short utf8_to_euc_E8B8[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0x6C73, 0x6C74, 0x4D59, 0, 0, 0, 0, 0x4627, + 0x6C78, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x6C76, 0x6C77, 0x6C79, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x6D29, 0, 0, 0, 0, 0, + 0x6C7C, 0, 0, 0, 0x6C7D, 0x6C7B, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8B9[] = { + 0, 0, 0x6C7A, 0, 0x447D, 0, 0, 0x6D21, + 0x6D25, 0x6D22, 0x6C7E, 0, 0x6D23, 0, 0, 0, + 0x6D24, 0, 0, 0, 0, 0x6D2B, 0, 0, + 0, 0x6D26, 0, 0, 0, 0, 0, 0x4058, + 0x6D28, 0, 0, 0x6D2A, 0x6D27, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x6D2D, 0, 0x3D33, 0, 0x6D2C, 0, + 0, 0, 0, 0, 0x6D2E, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8BA[] = { + 0, 0x6D2F, 0, 0, 0x6D32, 0x6D31, 0, 0x6D30, + 0, 0, 0x6D34, 0x6D33, 0, 0x4C76, 0, 0, + 0, 0x6D36, 0, 0x6D35, 0x6D37, 0, 0, 0, + 0, 0x6D38, 0, 0, 0, 0, 0, 0, + 0, 0x6D3A, 0, 0, 0, 0, 0, 0, + 0, 0, 0x6D39, 0x3F48, 0x6D3B, 0, 0, 0x366D, + 0x6D3C, 0x6D3E, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x6D3F, 0, +}; +unsigned short utf8_to_euc_E8BB[] = { + 0, 0, 0, 0, 0, 0x6D40, 0x6D3D, 0, + 0x6D41, 0, 0x3C56, 0x6D42, 0x3530, 0x3733, 0, 0x7B76, + 0, 0, 0x382E, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6D43, 0, 0, 0, 0x4670, + 0, 0, 0x453E, 0x6D44, 0, 0, 0, 0, + 0, 0, 0, 0x6D47, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x3C34, 0, 0, 0x6D46, 0x6D45, 0x375A, 0x6D48, 0, +}; +unsigned short utf8_to_euc_E8BC[] = { + 0, 0, 0, 0x3353, 0, 0x6D4A, 0, 0, + 0, 0x3A5C, 0x6D49, 0, 0x6D52, 0, 0, 0, + 0, 0, 0x6D4C, 0x6D4E, 0x4A65, 0x6D4B, 0, 0, + 0, 0x6D4D, 0, 0x6D51, 0x6D4F, 0x3531, 0, 0x6D50, + 0, 0, 0, 0, 0, 0, 0x6D53, 0, + 0, 0x475A, 0x4E58, 0, 0, 0, 0, 0x3D34, + 0, 0, 0, 0x6D54, 0, 0, 0, 0, + 0x4D22, 0x6D56, 0, 0x6D55, 0, 0, 0x6D59, 0x4D41, +}; +unsigned short utf8_to_euc_E8BD[] = { + 0, 0, 0x6D58, 0, 0x336D, 0x6D57, 0x6D5C, 0, + 0, 0x6D5B, 0, 0, 0x6D5A, 0x4532, 0x6D5D, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6D5E, + 0, 0, 0, 0, 0x6D5F, 0, 0, 0x396C, + 0, 0x3725, 0x6D60, 0x6D61, 0x6D62, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E8BE[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x3F49, 0x6D63, 0, 0x3C2D, 0x6D64, + 0, 0, 0, 0x6D65, 0, 0, 0, 0x5221, + 0x517E, 0, 0, 0, 0, 0x6D66, 0x6570, 0x6D67, + 0x4324, 0x3F2B, 0x4740, 0, 0, 0, 0, 0x6D68, + 0, 0, 0x4A55, 0x4454, 0x397E, 0, 0, 0x4329, +}; +unsigned short utf8_to_euc_E8BF[] = { + 0, 0, 0x312A, 0, 0x4B78, 0x3F57, 0, 0, + 0, 0, 0, 0, 0, 0, 0x375E, 0, + 0, 0x3661, 0, 0, 0x4A56, 0, 0, 0, + 0, 0, 0x6D69, 0, 0, 0, 0, 0, + 0, 0, 0x6D6B, 0, 0, 0x6D6A, 0x3260, 0, + 0, 0x4676, 0x6D6C, 0x4777, 0, 0x4533, 0, 0x6D6D, + 0x3D52, 0, 0, 0, 0x6D6F, 0, 0, 0x4C42, + 0x6D7E, 0x6D71, 0x6D72, 0, 0, 0x4449, 0, 0, +}; +unsigned short utf8_to_euc_E980[] = { + 0x4260, 0x4177, 0, 0x4628, 0, 0x6D70, 0x3555, 0, + 0, 0, 0, 0x6D79, 0, 0x6D76, 0x6E25, 0x4629, + 0x4360, 0x6D73, 0, 0x447E, 0x4553, 0x6D74, 0x6D78, 0x3F60, + 0, 0x4767, 0x444C, 0, 0, 0x4042, 0x6D77, 0x422E, + 0x4224, 0x6D75, 0x3029, 0x4F22, 0, 0, 0, 0x6D7A, + 0, 0, 0, 0, 0, 0, 0x4261, 0, + 0, 0x3D35, 0x3F4A, 0, 0, 0x6D7C, 0x6D7B, 0, + 0x306F, 0x6D7D, 0, 0, 0x492F, 0, 0x6E27, 0, +}; +unsigned short utf8_to_euc_E981[] = { + 0, 0x465B, 0x3F6B, 0, 0, 0x4359, 0, 0x3678, + 0, 0x6E26, 0x4D37, 0x313F, 0, 0x4A57, 0x3261, 0x6E21, + 0x6E22, 0x6E23, 0x6E24, 0x463B, 0x4323, 0x3063, 0x6E28, 0, + 0x6E29, 0x7423, 0, 0, 0x423D, 0, 0x6E2A, 0, + 0x3173, 0x414C, 0, 0x382F, 0, 0x4D5A, 0, 0x7B79, + 0x6E2B, 0x452C, 0, 0, 0, 0x4178, 0x3C57, 0x6E2C, + 0, 0, 0x6E2F, 0, 0, 0x3D65, 0x6E2D, 0x412B, + 0x412A, 0, 0x3064, 0, 0x4E4B, 0x6E31, 0, 0x4872, +}; +unsigned short utf8_to_euc_E982[] = { + 0x6E33, 0x6E32, 0x6E30, 0x6364, 0x3454, 0, 0, 0x6D6E, + 0, 0x6E35, 0x6E34, 0, 0, 0, 0, 0x6E36, + 0, 0x4D38, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x4661, 0, 0, 0x4B2E, 0, + 0x6E37, 0, 0x3C59, 0, 0, 0, 0, 0x6E38, + 0, 0x6E39, 0, 0, 0, 0x6E3A, 0, 0, + 0x4521, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E983[] = { + 0, 0x306A, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3959, 0, 0, 0, 0x4F3A, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6E3E, 0, 0, 0x7B7A, 0, + 0, 0x3734, 0x6E3B, 0, 0x6E3C, 0, 0, 0, + 0x4974, 0, 0, 0, 0, 0x3354, 0, 0, + 0, 0, 0, 0, 0, 0x4D39, 0, 0x363F, + 0, 0, 0, 0, 0, 0x4554, 0, 0, +}; +unsigned short utf8_to_euc_E984[] = { + 0, 0, 0x6E3F, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x6E40, 0, 0, 0x7B7C, 0, 0, + 0, 0x6E41, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x7B7D, + 0, 0, 0, 0, 0, 0x4522, 0, 0, + 0x6E43, 0, 0x6E42, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E985[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x4653, 0x6E44, 0x3D36, 0x3C60, 0x475B, 0x4371, 0, + 0, 0, 0x3C72, 0, 0x3F6C, 0, 0x6E45, 0, + 0x6E46, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x3F5D, 0x6E47, 0, 0x6E48, 0, 0, + 0, 0x6E49, 0x4D6F, 0, 0x3D37, 0, 0, 0, + 0, 0, 0x6E4B, 0x6E4A, 0, 0x395A, 0, 0x3973, + 0x3B40, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E986[] = { + 0, 0, 0x6E4E, 0, 0, 0, 0, 0x3D66, + 0, 0x6E4D, 0, 0x6E4C, 0, 0x4269, 0, 0, + 0x386F, 0, 0x4043, 0, 0, 0, 0, 0x4830, + 0, 0, 0, 0, 0x3D39, 0, 0, 0, + 0, 0, 0x6E4F, 0, 0x3E5F, 0, 0, 0, + 0, 0, 0x6E52, 0x6E50, 0, 0, 0, 0x6E51, + 0, 0, 0, 0, 0x6E54, 0x6E53, 0, 0, + 0x3E7A, 0, 0x6E55, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E987[] = { + 0x6E56, 0x6E57, 0, 0, 0, 0, 0x4850, 0x3A53, + 0x3C61, 0x6E58, 0, 0x6E59, 0x4E24, 0x3D45, 0x4C6E, 0x4E4C, + 0x6E5A, 0x3662, 0, 0, 0, 0, 0x6E5B, 0x7C21, + 0x4523, 0, 0x7B7E, 0x6E5E, 0x3378, 0x3F4B, 0x7C22, 0x6E5C, + 0, 0x6E5D, 0, 0x4460, 0x7C25, 0x7C26, 0x4B55, 0x367C, + 0, 0, 0, 0, 0, 0x7C23, 0x7C24, 0, + 0, 0, 0, 0, 0, 0x6E60, 0x6E61, 0, + 0, 0, 0, 0, 0x6E5F, 0, 0, 0x6E63, +}; +unsigned short utf8_to_euc_E988[] = { + 0, 0, 0, 0, 0, 0, 0x7C27, 0, + 0, 0, 0x7C29, 0, 0, 0x465F, 0x3343, 0, + 0x7C28, 0x6E67, 0, 0, 0x6E64, 0x6E66, 0, 0, + 0, 0, 0, 0, 0, 0, 0x6E62, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6F4F, 0, 0, 0x6E65, 0, 0, 0, + 0, 0, 0, 0, 0x4E6B, 0, 0, 0x385A, + 0, 0x7C30, 0x7C2A, 0, 0x7C2C, 0, 0, 0x6E6F, +}; +unsigned short utf8_to_euc_E989[] = { + 0x7C2B, 0, 0, 0, 0x4534, 0x6E6A, 0, 0, + 0x6E6D, 0x6E6B, 0, 0x6E70, 0, 0, 0x7C2D, 0, + 0x6E71, 0x7C2F, 0, 0, 0, 0, 0, 0x6E69, + 0, 0x7C2E, 0x6E76, 0x3174, 0, 0, 0x6E68, 0, + 0, 0, 0x482D, 0, 0x6E6C, 0, 0x3E60, 0x7C31, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x395B, 0, 0, 0, 0, 0, 0x7C33, + 0x7C34, 0, 0, 0, 0, 0, 0x4B48, 0, +}; +unsigned short utf8_to_euc_E98A[] = { + 0x3664, 0, 0, 0x3D46, 0, 0x463C, 0, 0, + 0x7924, 0, 0, 0, 0, 0, 0, 0, + 0, 0x412D, 0, 0x6E74, 0, 0x6E6E, 0x6E73, 0, + 0x4C43, 0, 0x4438, 0x6E75, 0x6E72, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x7C32, + 0, 0, 0, 0, 0, 0x412C, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6E79, + 0, 0x6E78, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E98B[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6E77, + 0x7C38, 0, 0x4B2F, 0x7C3C, 0, 0x7C3A, 0, 0x7C36, + 0, 0x7C37, 0, 0, 0, 0, 0, 0, + 0x7C3B, 0, 0, 0, 0x3D7B, 0, 0, 0x7C35, + 0, 0x6E7A, 0x4A5F, 0, 0, 0x3154, 0, 0, + 0, 0, 0x4946, 0x4372, 0, 0, 0, 0, + 0x3578, 0x792A, 0x6E7C, 0x7C3F, 0x395D, 0, 0, 0x7C42, +}; +unsigned short utf8_to_euc_E98C[] = { + 0, 0, 0x7C44, 0, 0, 0, 0x3B2C, 0, + 0, 0, 0, 0, 0, 0, 0, 0x6E7B, + 0x3F6D, 0, 0, 0, 0, 0, 0, 0, + 0x3F6E, 0x6F21, 0x6F23, 0, 0, 0x7C43, 0x7C41, 0, + 0x3E7B, 0x7C3E, 0x6F22, 0x6F24, 0, 0x7C3D, 0x3653, 0, + 0x4945, 0, 0, 0x3C62, 0x4F23, 0, 0x6E7E, 0x3A78, + 0, 0, 0x4F3F, 0, 0, 0x6F26, 0, 0, + 0, 0, 0x6F25, 0x6F27, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E98D[] = { + 0, 0, 0, 0, 0x6E7D, 0, 0, 0, + 0x7923, 0, 0, 0x4669, 0, 0x4555, 0, 0, + 0, 0, 0, 0, 0x4457, 0, 0x6F2C, 0x7C46, + 0, 0, 0, 0x4343, 0x6F28, 0, 0, 0, + 0x6F29, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x372D, 0, 0x6F2B, 0, + 0x7C45, 0, 0, 0, 0, 0x3830, 0, 0, + 0, 0, 0, 0, 0x6F2A, 0, 0x3E61, 0, +}; +unsigned short utf8_to_euc_E98E[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x3379, 0, 0, 0, + 0, 0, 0, 0, 0x6F30, 0, 0x3A3F, 0x4179, + 0, 0, 0x444A, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x7C47, 0, 0, 0x333B, + 0, 0, 0, 0, 0x6F2E, 0x6F2F, 0x4443, 0, + 0x6F2D, 0, 0, 0, 0, 0, 0, 0, + 0, 0x6F31, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E98F[] = { + 0, 0, 0, 0x6F37, 0, 0, 0x7C48, 0, + 0x6F3A, 0, 0, 0, 0, 0, 0, 0, + 0x6F39, 0x452D, 0, 0, 0, 0, 0x6F32, 0x6F33, + 0x6F36, 0, 0, 0, 0, 0x6F38, 0x7C49, 0, + 0, 0x3640, 0, 0, 0x6F3B, 0x6F35, 0, 0, + 0x6F34, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x7C4A, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E990[] = { + 0, 0, 0, 0x6F3F, 0, 0, 0, 0x6F40, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x6F41, 0, 0, 0x6F3E, 0x6F3D, 0, 0, 0, + 0x3E62, 0x462A, 0x6F3C, 0, 0, 0, 0, 0, + 0, 0x6F45, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6F43, 0, 0, 0, 0, + 0, 0x7C4B, 0, 0, 0, 0x6F44, 0x6F42, 0, + 0x4278, 0, 0x6F46, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E991[] = { + 0, 0x6F47, 0, 0, 0x6F49, 0x7C4C, 0, 0, + 0x7C4D, 0, 0, 0, 0, 0, 0, 0, + 0, 0x3455, 0x6F48, 0x4C7A, 0, 0, 0, 0, + 0, 0, 0x6F54, 0x6F4A, 0, 0, 0x6F4D, 0, + 0x6F4B, 0, 0x6F4C, 0, 0, 0, 0, 0, + 0, 0, 0x6F4E, 0, 0, 0, 0, 0, + 0x6F50, 0, 0, 0, 0, 0x6F51, 0, 0x6F52, + 0, 0, 0, 0, 0x6F55, 0x6F53, 0x6F56, 0x6F58, +}; +unsigned short utf8_to_euc_E992[] = { + 0, 0x6F57, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E995[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x4439, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E996[] = { + 0x4C67, 0, 0x6F59, 0x412E, 0, 0, 0, 0x6F5A, + 0, 0x4A44, 0x6F5B, 0x332B, 0, 0, 0, 0x313C, + 0, 0x3457, 0x7C4E, 0x3456, 0x6F5C, 0, 0x6F5D, 0, + 0x6F5E, 0x6F5F, 0, 0, 0, 0, 0, 0, + 0x6F60, 0, 0x3458, 0x3355, 0x395E, 0x4836, 0, 0x6F62, + 0x6F61, 0, 0, 0, 0, 0x6F63, 0, 0, + 0, 0, 0x315C, 0, 0, 0, 0, 0, + 0, 0x6F66, 0, 0x6F65, 0x6F64, 0, 0x6F67, 0, +}; +unsigned short utf8_to_euc_E997[] = { + 0, 0, 0, 0x6F6A, 0, 0, 0, 0x3047, + 0, 0, 0x6F68, 0, 0x6F6C, 0x6F6B, 0, 0, + 0, 0, 0, 0, 0x6F6E, 0x6F6D, 0x6F6F, 0, + 0x462E, 0, 0, 0, 0x6F70, 0, 0, 0, + 0, 0x6F71, 0x6F73, 0, 0, 0x6F72, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E998[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x496C, 0, 0, 0, + 0, 0x6F74, 0, 0, 0, 0, 0, 0, + 0x6F75, 0, 0x3A65, 0, 0, 0, 0x6F76, 0x6F77, + 0, 0, 0x4B49, 0, 0, 0, 0, 0, + 0, 0, 0, 0x414B, 0, 0, 0, 0x3024, +}; +unsigned short utf8_to_euc_E999[] = { + 0x424B, 0, 0x6F78, 0, 0x496D, 0, 0, 0, + 0, 0, 0, 0x6F7B, 0x6F79, 0x395F, 0, 0x6F7A, + 0x3842, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x4A45, 0x6F7D, 0x7021, 0x6F7E, 0x7022, + 0, 0, 0x3121, 0x3F58, 0x3D7C, 0x3459, 0x7023, 0, + 0, 0, 0x4766, 0, 0x7025, 0, 0, 0, + 0x3122, 0, 0x7024, 0x4444, 0, 0x4E4D, 0x462B, 0x6F7C, + 0x4E26, 0, 0x3831, 0, 0, 0x4D5B, 0, 0, +}; +unsigned short utf8_to_euc_E99A[] = { + 0, 0, 0, 0, 0, 0x3679, 0x4E34, 0, + 0x3728, 0, 0x4262, 0x6721, 0, 0x7026, 0x332C, 0x3F6F, + 0, 0, 0, 0, 0x3356, 0x7028, 0, 0x7029, + 0x7027, 0x3764, 0, 0x3A5D, 0x3E63, 0x7C51, 0, 0, + 0x3123, 0, 0, 0x4E59, 0, 0, 0, 0x702B, + 0x6E2E, 0, 0x702A, 0, 0, 0, 0, 0x7C52, + 0x702E, 0x702C, 0x702D, 0, 0x702F, 0, 0x7030, 0x4E6C, + 0x7031, 0x7032, 0, 0x4049, 0x483B, 0, 0, 0, +}; +unsigned short utf8_to_euc_E99B[] = { + 0x3F7D, 0x3467, 0, 0, 0x4D3A, 0x326D, 0x3D38, 0x385B, + 0, 0x7035, 0, 0x7034, 0x3B73, 0x7036, 0x7033, 0, + 0, 0x3B28, 0, 0, 0, 0x703A, 0x6A2D, 0, + 0, 0x5256, 0, 0x3F77, 0x7038, 0, 0, 0, + 0, 0, 0x4E25, 0x4671, 0, 0, 0, 0, + 0x312B, 0, 0x4063, 0x3C36, 0, 0, 0, 0, + 0x4A37, 0, 0x3140, 0, 0, 0, 0x4E6D, 0x4D6B, + 0, 0x703B, 0, 0x4545, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E99C[] = { + 0x3C7B, 0, 0, 0, 0x703C, 0, 0x703D, 0x3F4C, + 0x703E, 0, 0x4E6E, 0, 0, 0x7039, 0x7040, 0x7042, + 0, 0x7041, 0, 0x703F, 0, 0, 0x7043, 0, + 0, 0x7044, 0, 0, 0x417A, 0, 0x3262, 0, + 0, 0, 0, 0, 0x7045, 0, 0, 0x4C38, + 0, 0, 0x7046, 0, 0, 0, 0, 0, + 0x7047, 0, 0x4F2A, 0x7C53, 0, 0, 0, 0, + 0x5B31, 0x7048, 0, 0x7C54, 0, 0x7049, 0x704A, 0, +}; +unsigned short utf8_to_euc_E99D[] = { + 0, 0, 0x704E, 0x7C55, 0x704B, 0, 0x704C, 0, + 0x704D, 0x704F, 0, 0, 0, 0x7C56, 0, 0x7C57, + 0, 0x7C58, 0x4044, 0, 0, 0x7C59, 0x4C77, 0, + 0, 0x4045, 0, 0, 0x7050, 0, 0x4873, 0, + 0x7051, 0x7353, 0x4C4C, 0, 0x7052, 0, 0x7053, 0, + 0x7054, 0x3357, 0, 0x7056, 0, 0x3F59, 0, 0, + 0, 0x7057, 0, 0, 0x3724, 0, 0, 0, + 0, 0x7058, 0x705C, 0, 0x705A, 0, 0, 0, +}; +unsigned short utf8_to_euc_E99E[] = { + 0, 0x705B, 0, 0, 0x3373, 0x7059, 0x705D, 0, + 0, 0, 0, 0x705E, 0, 0x3048, 0, 0x705F, + 0x7060, 0, 0, 0, 0, 0, 0, 0, + 0x3E64, 0, 0, 0, 0x7061, 0, 0, 0, + 0x3547, 0, 0, 0x7064, 0, 0, 0x7063, 0, + 0x7062, 0, 0, 0x6B71, 0, 0x4A5C, 0, 0, + 0, 0, 0, 0x7065, 0x7066, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E99F[] = { + 0, 0, 0, 0x7067, 0, 0, 0x7068, 0, + 0x7069, 0, 0, 0x706A, 0, 0, 0, 0, + 0, 0, 0, 0x345A, 0, 0, 0, 0, + 0, 0, 0, 0, 0x706B, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x706C, 0x4723, 0, + 0, 0, 0x706E, 0x323B, 0, 0x7071, 0x7070, 0, + 0, 0, 0, 0x3124, 0, 0, 0, 0x3641, +}; +unsigned short utf8_to_euc_E9A0[] = { + 0, 0x4A47, 0x443A, 0x3A22, 0, 0x3960, 0x3D67, 0, + 0x3F5C, 0, 0, 0, 0x7073, 0, 0, 0x7072, + 0x4D42, 0x3468, 0x4852, 0x465C, 0, 0, 0, 0x3F7C, + 0x4E4E, 0, 0x375B, 0, 0, 0, 0, 0, + 0, 0x7076, 0, 0, 0x7075, 0, 0, 0, + 0, 0, 0, 0, 0x4B4B, 0x462C, 0, 0, + 0, 0, 0, 0, 0x3150, 0, 0, 0x7077, + 0x7074, 0, 0, 0x4951, 0x4D6A, 0x7078, 0, 0, +}; +unsigned short utf8_to_euc_E9A1[] = { + 0, 0, 0, 0, 0, 0, 0x7079, 0, + 0, 0, 0, 0x707B, 0x426A, 0x335B, 0x335C, 0x707A, + 0, 0, 0, 0, 0x3469, 0x3832, 0, 0x7C5A, + 0x346A, 0, 0, 0x453F, 0, 0, 0x4E60, 0, + 0, 0, 0, 0, 0, 0x7C5B, 0, 0x385C, + 0, 0, 0, 0x707C, 0, 0, 0, 0x707D, + 0x707E, 0x7121, 0, 0x7123, 0x7122, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9A2[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x4977, 0, 0x7124, 0, 0, 0, 0, 0x7125, + 0, 0x7126, 0, 0, 0, 0, 0x7127, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9A3[] = { + 0, 0, 0, 0x7129, 0x7128, 0, 0x712A, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x4874, 0x664C, 0, 0, 0x3F29, + 0, 0, 0x3532, 0, 0, 0, 0, 0, + 0, 0x712B, 0, 0x712C, 0, 0x522C, 0x5D3B, 0x4853, + 0, 0, 0x307B, 0, 0x303B, 0, 0, 0, + 0, 0, 0, 0, 0x3B74, 0x4B30, 0x3E7E, 0, +}; +unsigned short utf8_to_euc_E9A4[] = { + 0, 0, 0, 0x712D, 0, 0x4C5F, 0, 0, + 0, 0x712E, 0x4D5C, 0, 0x3142, 0, 0, 0, + 0x3B41, 0, 0x712F, 0x326E, 0x7130, 0, 0, 0, + 0x7131, 0, 0, 0, 0, 0x7133, 0x7134, 0, + 0x7136, 0x7132, 0, 0, 0x7135, 0, 0, 0x7C5E, + 0x345B, 0, 0, 0, 0x7137, 0, 0x7138, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x7139, 0x713A, 0, +}; +unsigned short utf8_to_euc_E9A5[] = { + 0, 0, 0x713B, 0, 0, 0x713D, 0, 0, + 0, 0x713C, 0, 0x713F, 0x7142, 0, 0, 0, + 0x713E, 0x7140, 0x7141, 0, 0, 0x7143, 0, 0x3642, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9A6[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x3C73, 0x7144, + 0x7145, 0x3961, 0, 0, 0, 0, 0x7C60, 0, + 0, 0, 0, 0, 0, 0x7146, 0, 0, + 0x333E, 0, 0, 0, 0x474F, 0x7147, 0x7148, 0, + 0, 0, 0, 0x435A, 0x466B, 0, 0, 0, + 0, 0, 0, 0, 0x7149, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9A7[] = { + 0, 0x477D, 0, 0, 0x424C, 0x3158, 0x366E, 0, + 0x366F, 0, 0, 0, 0, 0, 0, 0, + 0x4373, 0x714E, 0x3670, 0, 0, 0x326F, 0, 0, + 0x714D, 0, 0, 0x714B, 0, 0x714C, 0, 0x714A, + 0, 0, 0x7158, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x714F, 0x7150, 0, + 0, 0x7151, 0x7152, 0, 0, 0, 0, 0, + 0x7154, 0, 0, 0x7153, 0, 0, 0, 0x3D59, +}; +unsigned short utf8_to_euc_E9A8[] = { + 0, 0x7155, 0, 0, 0, 0x7157, 0, 0, + 0, 0, 0, 0, 0, 0, 0x3533, 0x7156, + 0, 0, 0x417B, 0x3833, 0, 0, 0, 0, + 0, 0x7159, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x424D, 0, 0, 0x715A, 0, 0, 0, 0, + 0x462D, 0, 0, 0, 0, 0, 0, 0x715B, + 0, 0, 0, 0, 0, 0, 0x7160, 0, +}; +unsigned short utf8_to_euc_E9A9[] = { + 0x715E, 0, 0x715D, 0x715F, 0, 0x715C, 0, 0, + 0, 0, 0, 0, 0, 0x7162, 0x7C61, 0, + 0, 0, 0, 0, 0, 0x7161, 0, 0x7164, + 0, 0, 0x3643, 0x7163, 0, 0, 0, 0x7165, + 0, 0, 0x7166, 0, 0x7168, 0x7167, 0, 0, + 0, 0x7169, 0x716B, 0x716A, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9AA[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x397C, 0, 0, 0, 0, 0x716C, 0, 0, + 0x716D, 0, 0, 0, 0, 0, 0, 0, + 0x333C, 0, 0, 0, 0x716E, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9AB[] = { + 0x716F, 0, 0, 0, 0x3F71, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x7170, + 0, 0x7171, 0, 0x7172, 0x7173, 0, 0, 0, + 0x3962, 0x7C62, 0, 0, 0x7C63, 0, 0x7174, 0x7175, + 0, 0, 0x7176, 0x7177, 0, 0, 0x7178, 0, + 0, 0, 0x4831, 0x717A, 0, 0x4926, 0x717B, 0x7179, + 0, 0x717D, 0, 0, 0x717C, 0, 0, 0x717E, + 0, 0, 0, 0x7221, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9AC[] = { + 0, 0, 0, 0, 0, 0, 0x7222, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x7223, 0, 0x7224, 0, 0, 0, 0, 0x7225, + 0, 0, 0x7226, 0x7227, 0, 0x7228, 0, 0x7229, + 0x722A, 0x722B, 0x722C, 0, 0, 0, 0x722D, 0x722E, + 0, 0x5D35, 0x722F, 0, 0, 0, 0, 0, + 0, 0, 0, 0x6478, 0x3534, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9AD[] = { + 0, 0x3321, 0x3A32, 0x7231, 0x7230, 0x4C25, 0, 0, + 0, 0, 0, 0, 0, 0x7233, 0x7234, 0x7232, + 0, 0x7235, 0, 0, 0x4B62, 0, 0, 0, + 0x7236, 0, 0x357B, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x4F25, + 0, 0, 0x7C65, 0, 0x7237, 0x7C64, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9AE[] = { + 0, 0, 0, 0x7239, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x303E, 0x7C66, + 0, 0x723A, 0x4A2B, 0x7238, 0, 0, 0x723B, 0x723C, + 0, 0, 0, 0, 0, 0, 0, 0x723D, + 0x723E, 0, 0, 0, 0, 0, 0, 0, + 0x723F, 0, 0x4B6E, 0x3B2D, 0, 0x3A7A, 0x412F, 0, + 0, 0x7C67, 0, 0, 0x7240, 0, 0, 0, + 0, 0x7243, 0, 0x7C68, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9AF[] = { + 0x7241, 0, 0, 0, 0, 0, 0x7244, 0, + 0, 0x3871, 0x7242, 0, 0, 0, 0, 0x7245, + 0, 0x7246, 0x7247, 0, 0x724B, 0, 0x3B2A, 0, + 0, 0, 0, 0x4264, 0, 0, 0, 0, + 0, 0x724C, 0x7249, 0x7248, 0x724A, 0, 0, 0, + 0x375F, 0, 0, 0, 0, 0, 0, 0, + 0x7250, 0x724F, 0x724E, 0, 0, 0x3033, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9B0[] = { + 0x7C69, 0, 0, 0, 0x725A, 0, 0x7256, 0, + 0x7257, 0x7253, 0x7259, 0, 0x7255, 0x3362, 0, 0, + 0x4F4C, 0, 0x7258, 0x7254, 0x7252, 0x7251, 0, 0, + 0, 0, 0, 0x725C, 0, 0, 0, 0, + 0, 0x725F, 0, 0, 0x725E, 0x725D, 0, 0, + 0, 0, 0, 0, 0, 0x4949, 0x725B, 0x3073, + 0x7260, 0, 0x7262, 0, 0, 0, 0, 0, + 0, 0x336F, 0x724D, 0x3137, 0, 0, 0x7264, 0, +}; +unsigned short utf8_to_euc_E9B1[] = { + 0, 0, 0, 0, 0, 0, 0x7263, 0x7261, + 0x432D, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x4B70, 0, 0, 0, 0, 0x4E5A, + 0, 0, 0x7265, 0, 0, 0, 0, 0, + 0x7266, 0, 0, 0, 0, 0, 0, 0x7267, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x7268, 0, + 0x7269, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9B3[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x443B, 0, 0x726A, + 0, 0x4837, 0, 0x726F, 0x726B, 0, 0, 0, + 0x726C, 0, 0, 0x4B31, 0x4C44, 0, 0x4650, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9B4[] = { + 0, 0, 0, 0x7270, 0, 0, 0x7271, 0x463E, + 0x726E, 0x726D, 0, 0, 0, 0, 0x322A, 0, + 0, 0, 0x7279, 0, 0, 0x7278, 0, 0, + 0, 0, 0, 0x3175, 0, 0, 0, 0x7276, + 0, 0, 0, 0x7275, 0, 0, 0x7273, 0, + 0x337B, 0, 0x7272, 0x3C32, 0x3229, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x3963, 0, 0, 0x727C, 0x727B, +}; +unsigned short utf8_to_euc_E9B5[] = { + 0, 0x727A, 0, 0, 0x7277, 0, 0x727D, 0, + 0x727E, 0, 0, 0, 0, 0, 0, 0, + 0x7325, 0x7324, 0, 0, 0, 0, 0, 0, + 0, 0x7326, 0, 0, 0x312D, 0x7321, 0x7322, 0, + 0x3974, 0x4C39, 0, 0, 0x7323, 0, 0, 0, + 0, 0, 0, 0x7C6B, 0x4B32, 0, 0, 0x732B, + 0x7C6A, 0, 0x7327, 0, 0, 0, 0, 0, + 0, 0, 0x732C, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9B6[] = { + 0, 0, 0, 0, 0, 0, 0, 0x7329, + 0, 0x7328, 0, 0, 0, 0, 0, 0x375C, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x732D, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x732E, 0, 0, 0, + 0, 0x732F, 0, 0x732A, 0, 0, 0, 0x7274, + 0, 0, 0x7330, 0, 0x4461, 0, 0, 0, + 0x7334, 0, 0x7335, 0x7333, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9B7[] = { + 0, 0x7332, 0x7338, 0, 0x7331, 0, 0x7336, 0, + 0, 0, 0, 0, 0, 0, 0, 0x7337, + 0, 0, 0, 0x733A, 0, 0, 0, 0, + 0, 0x7339, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x733C, 0, + 0, 0, 0, 0, 0, 0x733D, 0, 0x733E, + 0, 0, 0x4F49, 0, 0, 0, 0, 0, + 0x733B, 0x426B, 0x3A6D, 0, 0, 0x733F, 0, 0, +}; +unsigned short utf8_to_euc_E9B8[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x7C6D, 0x7340, 0x7341, 0, 0, 0x7342, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9B9[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x7343, 0, 0, + 0x3834, 0x7344, 0, 0, 0, 0x7345, 0, 0x3C2F, +}; +unsigned short utf8_to_euc_E9BA[] = { + 0, 0x7346, 0, 0, 0, 0, 0, 0, + 0x7347, 0, 0, 0x7348, 0x7349, 0, 0, 0, + 0, 0x734C, 0x734A, 0x4F3C, 0, 0x734B, 0, 0x4E6F, + 0, 0, 0, 0, 0, 0x734D, 0, 0x4E5B, + 0, 0, 0, 0, 0, 0x734E, 0x477E, 0, + 0, 0x734F, 0x7351, 0, 0, 0x7352, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x7350, 0x396D, 0x4C4D, 0x4B63, 0x5677, 0, 0x5D60, 0x4B7B, +}; +unsigned short utf8_to_euc_E9BB[] = { + 0, 0, 0, 0, 0x322B, 0, 0, 0, + 0, 0, 0, 0, 0x7354, 0x3550, 0x7355, 0x7356, + 0x7357, 0x7C6E, 0x3975, 0, 0x7358, 0, 0, 0, + 0x6054, 0x4C5B, 0, 0x4263, 0x7359, 0x735B, 0x735A, 0, + 0x735C, 0, 0, 0, 0, 0x735D, 0, 0, + 0x735E, 0, 0, 0, 0, 0, 0, 0x735F, + 0, 0, 0, 0, 0x7360, 0, 0x7361, 0x7362, + 0, 0x7363, 0, 0x7364, 0x7365, 0x7366, 0, 0, +}; +unsigned short utf8_to_euc_E9BC[] = { + 0, 0, 0, 0, 0, 0, 0, 0x7367, + 0x7368, 0, 0, 0, 0, 0, 0x4524, 0, + 0, 0, 0, 0x385D, 0, 0x736A, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x414D, 0x736B, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x736C, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x4921, 0, 0, 0x736D, 0, +}; +unsigned short utf8_to_euc_E9BD[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x736E, 0x6337, 0, 0, 0x6C5A, 0x706D, + 0, 0, 0x736F, 0, 0x7370, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x7372, + 0x7373, 0x7374, 0x4E70, 0x7371, 0, 0, 0x7375, 0x7376, + 0, 0, 0x7378, 0, 0x7377, 0, 0, 0, + 0, 0, 0x737A, 0, 0, 0, 0x737B, 0x7379, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_E9BE[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x4E36, 0, 0, + 0, 0, 0, 0, 0, 0x737C, 0, 0, + 0, 0, 0, 0, 0x737D, 0x6354, 0, 0, + 0x737E, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_EFA4[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x7A46, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_EFA7[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x7C4F, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_EFA8[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x7954, 0x795F, + 0x7960, 0x7975, 0x7A3E, 0x7A4E, 0x7A50, 0x7A7B, 0x7B23, 0x7B3A, + 0x7B42, 0x7B43, 0x7B44, 0x7B46, 0x7B4A, 0x7B4D, 0x7B56, 0x7B61, + 0x7B63, 0x7B64, 0x7B6D, 0x7B75, 0x7B77, 0x7B78, 0x7B7B, 0x7C39, + 0x7C40, 0x7C50, 0x7C5C, 0x7C5D, 0x7C5F, 0x7C6C, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_EFB8[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x7545, 0x753D, 0, 0x7532, 0, 0x754A, 0x754B, 0x7550, + 0x7551, 0x754C, 0x754D, 0x755A, 0x755B, 0x7554, 0x7555, 0x7552, +}; +unsigned short utf8_to_euc_EFB9[] = { + 0x7553, 0x7556, 0x7557, 0x7558, 0x7559, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_EFBC[] = { + 0, 0x212A, 0x7C7E, 0x2174, 0x2170, 0x2173, 0x2175, 0x7C7D, + 0x214A, 0x214B, 0x2176, 0x215C, 0x2124, 0x215D, 0x2125, 0x213F, + 0x2330, 0x2331, 0x2332, 0x2333, 0x2334, 0x2335, 0x2336, 0x2337, + 0x2338, 0x2339, 0x2127, 0x2128, 0x2163, 0x2161, 0x2164, 0x2129, + 0x2177, 0x2341, 0x2342, 0x2343, 0x2344, 0x2345, 0x2346, 0x2347, + 0x2348, 0x2349, 0x234A, 0x234B, 0x234C, 0x234D, 0x234E, 0x234F, + 0x2350, 0x2351, 0x2352, 0x2353, 0x2354, 0x2355, 0x2356, 0x2357, + 0x2358, 0x2359, 0x235A, 0x214E, 0x2140, 0x214F, 0x2130, 0x2132, +}; +unsigned short utf8_to_euc_EFBD[] = { + 0x212E, 0x2361, 0x2362, 0x2363, 0x2364, 0x2365, 0x2366, 0x2367, + 0x2368, 0x2369, 0x236A, 0x236B, 0x236C, 0x236D, 0x236E, 0x236F, + 0x2370, 0x2371, 0x2372, 0x2373, 0x2374, 0x2375, 0x2376, 0x2377, + 0x2378, 0x2379, 0x237A, 0x2150, 0x2143, 0x2151, 0x2141, 0, + 0, 0x0E21, 0x0E22, 0x0E23, 0x0E24, 0x0E25, 0x0E26, 0x0E27, + 0x0E28, 0x0E29, 0x0E2A, 0x0E2B, 0x0E2C, 0x0E2D, 0x0E2E, 0x0E2F, + 0x0E30, 0x0E31, 0x0E32, 0x0E33, 0x0E34, 0x0E35, 0x0E36, 0x0E37, + 0x0E38, 0x0E39, 0x0E3A, 0x0E3B, 0x0E3C, 0x0E3D, 0x0E3E, 0x0E3F, +}; +unsigned short utf8_to_euc_EFBE[] = { + 0x0E40, 0x0E41, 0x0E42, 0x0E43, 0x0E44, 0x0E45, 0x0E46, 0x0E47, + 0x0E48, 0x0E49, 0x0E4A, 0x0E4B, 0x0E4C, 0x0E4D, 0x0E4E, 0x0E4F, + 0x0E50, 0x0E51, 0x0E52, 0x0E53, 0x0E54, 0x0E55, 0x0E56, 0x0E57, + 0x0E58, 0x0E59, 0x0E5A, 0x0E5B, 0x0E5C, 0x0E5D, 0x0E5E, 0x0E5F, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short utf8_to_euc_EFBF[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0x2171, 0x2172, 0x224C, 0x2131, 0x7C7C, 0x216F, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, +}; +unsigned short * utf8_to_euc_E2[] = { + utf8_to_euc_E280, 0, 0, 0, + utf8_to_euc_E284, utf8_to_euc_E285, utf8_to_euc_E286, utf8_to_euc_E287, + utf8_to_euc_E288, utf8_to_euc_E289, utf8_to_euc_E28A, 0, + utf8_to_euc_E28C, 0, 0, 0, + 0, utf8_to_euc_E291, utf8_to_euc_E292, 0, + utf8_to_euc_E294, utf8_to_euc_E295, utf8_to_euc_E296, utf8_to_euc_E297, + utf8_to_euc_E298, utf8_to_euc_E299, 0, 0, + 0, utf8_to_euc_E29D, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, +}; +unsigned short * utf8_to_euc_E3[] = { + utf8_to_euc_E380, utf8_to_euc_E381, utf8_to_euc_E382, utf8_to_euc_E383, + 0, 0, 0, 0, + utf8_to_euc_E388, utf8_to_euc_E389, utf8_to_euc_E38A, 0, + utf8_to_euc_E38C, utf8_to_euc_E38D, utf8_to_euc_E38E, utf8_to_euc_E38F, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, +}; +unsigned short * utf8_to_euc_E4[] = { + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + utf8_to_euc_E4B8, utf8_to_euc_E4B9, utf8_to_euc_E4BA, utf8_to_euc_E4BB, + utf8_to_euc_E4BC, utf8_to_euc_E4BD, utf8_to_euc_E4BE, utf8_to_euc_E4BF, +}; +unsigned short * utf8_to_euc_E5[] = { + utf8_to_euc_E580, utf8_to_euc_E581, utf8_to_euc_E582, utf8_to_euc_E583, + utf8_to_euc_E584, utf8_to_euc_E585, utf8_to_euc_E586, utf8_to_euc_E587, + utf8_to_euc_E588, utf8_to_euc_E589, utf8_to_euc_E58A, utf8_to_euc_E58B, + utf8_to_euc_E58C, utf8_to_euc_E58D, utf8_to_euc_E58E, utf8_to_euc_E58F, + utf8_to_euc_E590, utf8_to_euc_E591, utf8_to_euc_E592, utf8_to_euc_E593, + utf8_to_euc_E594, utf8_to_euc_E595, utf8_to_euc_E596, utf8_to_euc_E597, + utf8_to_euc_E598, utf8_to_euc_E599, utf8_to_euc_E59A, utf8_to_euc_E59B, + utf8_to_euc_E59C, utf8_to_euc_E59D, utf8_to_euc_E59E, utf8_to_euc_E59F, + utf8_to_euc_E5A0, utf8_to_euc_E5A1, utf8_to_euc_E5A2, utf8_to_euc_E5A3, + utf8_to_euc_E5A4, utf8_to_euc_E5A5, utf8_to_euc_E5A6, utf8_to_euc_E5A7, + utf8_to_euc_E5A8, utf8_to_euc_E5A9, utf8_to_euc_E5AA, utf8_to_euc_E5AB, + utf8_to_euc_E5AC, utf8_to_euc_E5AD, utf8_to_euc_E5AE, utf8_to_euc_E5AF, + utf8_to_euc_E5B0, utf8_to_euc_E5B1, utf8_to_euc_E5B2, utf8_to_euc_E5B3, + utf8_to_euc_E5B4, utf8_to_euc_E5B5, utf8_to_euc_E5B6, utf8_to_euc_E5B7, + utf8_to_euc_E5B8, utf8_to_euc_E5B9, utf8_to_euc_E5BA, utf8_to_euc_E5BB, + utf8_to_euc_E5BC, utf8_to_euc_E5BD, utf8_to_euc_E5BE, utf8_to_euc_E5BF, +}; +unsigned short * utf8_to_euc_E6[] = { + utf8_to_euc_E680, utf8_to_euc_E681, utf8_to_euc_E682, utf8_to_euc_E683, + utf8_to_euc_E684, utf8_to_euc_E685, utf8_to_euc_E686, utf8_to_euc_E687, + utf8_to_euc_E688, utf8_to_euc_E689, utf8_to_euc_E68A, utf8_to_euc_E68B, + utf8_to_euc_E68C, utf8_to_euc_E68D, utf8_to_euc_E68E, utf8_to_euc_E68F, + utf8_to_euc_E690, utf8_to_euc_E691, utf8_to_euc_E692, utf8_to_euc_E693, + utf8_to_euc_E694, utf8_to_euc_E695, utf8_to_euc_E696, utf8_to_euc_E697, + utf8_to_euc_E698, utf8_to_euc_E699, utf8_to_euc_E69A, utf8_to_euc_E69B, + utf8_to_euc_E69C, utf8_to_euc_E69D, utf8_to_euc_E69E, utf8_to_euc_E69F, + utf8_to_euc_E6A0, utf8_to_euc_E6A1, utf8_to_euc_E6A2, utf8_to_euc_E6A3, + utf8_to_euc_E6A4, utf8_to_euc_E6A5, utf8_to_euc_E6A6, utf8_to_euc_E6A7, + utf8_to_euc_E6A8, utf8_to_euc_E6A9, utf8_to_euc_E6AA, utf8_to_euc_E6AB, + utf8_to_euc_E6AC, utf8_to_euc_E6AD, utf8_to_euc_E6AE, utf8_to_euc_E6AF, + utf8_to_euc_E6B0, utf8_to_euc_E6B1, utf8_to_euc_E6B2, utf8_to_euc_E6B3, + utf8_to_euc_E6B4, utf8_to_euc_E6B5, utf8_to_euc_E6B6, utf8_to_euc_E6B7, + utf8_to_euc_E6B8, utf8_to_euc_E6B9, utf8_to_euc_E6BA, utf8_to_euc_E6BB, + utf8_to_euc_E6BC, utf8_to_euc_E6BD, utf8_to_euc_E6BE, utf8_to_euc_E6BF, +}; +unsigned short * utf8_to_euc_E7[] = { + utf8_to_euc_E780, utf8_to_euc_E781, utf8_to_euc_E782, utf8_to_euc_E783, + utf8_to_euc_E784, utf8_to_euc_E785, utf8_to_euc_E786, utf8_to_euc_E787, + utf8_to_euc_E788, utf8_to_euc_E789, utf8_to_euc_E78A, utf8_to_euc_E78B, + utf8_to_euc_E78C, utf8_to_euc_E78D, utf8_to_euc_E78E, utf8_to_euc_E78F, + utf8_to_euc_E790, utf8_to_euc_E791, utf8_to_euc_E792, utf8_to_euc_E793, + utf8_to_euc_E794, utf8_to_euc_E795, utf8_to_euc_E796, utf8_to_euc_E797, + utf8_to_euc_E798, utf8_to_euc_E799, utf8_to_euc_E79A, utf8_to_euc_E79B, + utf8_to_euc_E79C, utf8_to_euc_E79D, utf8_to_euc_E79E, utf8_to_euc_E79F, + utf8_to_euc_E7A0, utf8_to_euc_E7A1, utf8_to_euc_E7A2, utf8_to_euc_E7A3, + utf8_to_euc_E7A4, utf8_to_euc_E7A5, utf8_to_euc_E7A6, utf8_to_euc_E7A7, + utf8_to_euc_E7A8, utf8_to_euc_E7A9, utf8_to_euc_E7AA, utf8_to_euc_E7AB, + utf8_to_euc_E7AC, utf8_to_euc_E7AD, utf8_to_euc_E7AE, utf8_to_euc_E7AF, + utf8_to_euc_E7B0, utf8_to_euc_E7B1, utf8_to_euc_E7B2, utf8_to_euc_E7B3, + utf8_to_euc_E7B4, utf8_to_euc_E7B5, utf8_to_euc_E7B6, utf8_to_euc_E7B7, + utf8_to_euc_E7B8, utf8_to_euc_E7B9, utf8_to_euc_E7BA, 0, + utf8_to_euc_E7BC, utf8_to_euc_E7BD, utf8_to_euc_E7BE, utf8_to_euc_E7BF, +}; +unsigned short * utf8_to_euc_E8[] = { + utf8_to_euc_E880, utf8_to_euc_E881, utf8_to_euc_E882, utf8_to_euc_E883, + utf8_to_euc_E884, utf8_to_euc_E885, utf8_to_euc_E886, utf8_to_euc_E887, + utf8_to_euc_E888, utf8_to_euc_E889, utf8_to_euc_E88A, utf8_to_euc_E88B, + utf8_to_euc_E88C, utf8_to_euc_E88D, utf8_to_euc_E88E, utf8_to_euc_E88F, + utf8_to_euc_E890, utf8_to_euc_E891, utf8_to_euc_E892, utf8_to_euc_E893, + utf8_to_euc_E894, utf8_to_euc_E895, utf8_to_euc_E896, utf8_to_euc_E897, + utf8_to_euc_E898, utf8_to_euc_E899, utf8_to_euc_E89A, utf8_to_euc_E89B, + utf8_to_euc_E89C, utf8_to_euc_E89D, utf8_to_euc_E89E, utf8_to_euc_E89F, + utf8_to_euc_E8A0, utf8_to_euc_E8A1, utf8_to_euc_E8A2, utf8_to_euc_E8A3, + utf8_to_euc_E8A4, utf8_to_euc_E8A5, utf8_to_euc_E8A6, utf8_to_euc_E8A7, + utf8_to_euc_E8A8, utf8_to_euc_E8A9, utf8_to_euc_E8AA, utf8_to_euc_E8AB, + utf8_to_euc_E8AC, utf8_to_euc_E8AD, utf8_to_euc_E8AE, 0, + utf8_to_euc_E8B0, utf8_to_euc_E8B1, utf8_to_euc_E8B2, utf8_to_euc_E8B3, + utf8_to_euc_E8B4, utf8_to_euc_E8B5, utf8_to_euc_E8B6, utf8_to_euc_E8B7, + utf8_to_euc_E8B8, utf8_to_euc_E8B9, utf8_to_euc_E8BA, utf8_to_euc_E8BB, + utf8_to_euc_E8BC, utf8_to_euc_E8BD, utf8_to_euc_E8BE, utf8_to_euc_E8BF, +}; +unsigned short * utf8_to_euc_E9[] = { + utf8_to_euc_E980, utf8_to_euc_E981, utf8_to_euc_E982, utf8_to_euc_E983, + utf8_to_euc_E984, utf8_to_euc_E985, utf8_to_euc_E986, utf8_to_euc_E987, + utf8_to_euc_E988, utf8_to_euc_E989, utf8_to_euc_E98A, utf8_to_euc_E98B, + utf8_to_euc_E98C, utf8_to_euc_E98D, utf8_to_euc_E98E, utf8_to_euc_E98F, + utf8_to_euc_E990, utf8_to_euc_E991, utf8_to_euc_E992, 0, + 0, utf8_to_euc_E995, utf8_to_euc_E996, utf8_to_euc_E997, + utf8_to_euc_E998, utf8_to_euc_E999, utf8_to_euc_E99A, utf8_to_euc_E99B, + utf8_to_euc_E99C, utf8_to_euc_E99D, utf8_to_euc_E99E, utf8_to_euc_E99F, + utf8_to_euc_E9A0, utf8_to_euc_E9A1, utf8_to_euc_E9A2, utf8_to_euc_E9A3, + utf8_to_euc_E9A4, utf8_to_euc_E9A5, utf8_to_euc_E9A6, utf8_to_euc_E9A7, + utf8_to_euc_E9A8, utf8_to_euc_E9A9, utf8_to_euc_E9AA, utf8_to_euc_E9AB, + utf8_to_euc_E9AC, utf8_to_euc_E9AD, utf8_to_euc_E9AE, utf8_to_euc_E9AF, + utf8_to_euc_E9B0, utf8_to_euc_E9B1, 0, utf8_to_euc_E9B3, + utf8_to_euc_E9B4, utf8_to_euc_E9B5, utf8_to_euc_E9B6, utf8_to_euc_E9B7, + utf8_to_euc_E9B8, utf8_to_euc_E9B9, utf8_to_euc_E9BA, utf8_to_euc_E9BB, + utf8_to_euc_E9BC, utf8_to_euc_E9BD, utf8_to_euc_E9BE, 0, +}; +unsigned short * utf8_to_euc_EF[] = { + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + utf8_to_euc_EFA4, 0, 0, utf8_to_euc_EFA7, + utf8_to_euc_EFA8, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + utf8_to_euc_EFB8, utf8_to_euc_EFB9, 0, 0, + utf8_to_euc_EFBC, utf8_to_euc_EFBD, utf8_to_euc_EFBE, utf8_to_euc_EFBF, +}; +unsigned short * utf8_to_euc_2bytes[] = { + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, utf8_to_euc_C2, utf8_to_euc_C3, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, utf8_to_euc_CE, utf8_to_euc_CF, + utf8_to_euc_D0, utf8_to_euc_D1, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, +}; +unsigned short ** utf8_to_euc_3bytes[] = { + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, utf8_to_euc_E2, utf8_to_euc_E3, + utf8_to_euc_E4, utf8_to_euc_E5, utf8_to_euc_E6, utf8_to_euc_E7, + utf8_to_euc_E8, utf8_to_euc_E9, 0, 0, + 0, 0, 0, utf8_to_euc_EF, +}; +#endif /* UTF8_INPUT_ENABLE */ + +#ifdef SHIFTJIS_CP932 +unsigned short shiftjis_cp932[3][189] = { + { + 0xEEEF, 0xEEF0, 0xEEF1, 0xEEF2, 0xEEF3, 0xEEF4, 0xEEF5, 0xEEF6, + 0xEEF7, 0xEEF8, 0x8754, 0x8755, 0x8756, 0x8757, 0x8758, 0x8759, + 0x875A, 0x875B, 0x875C, 0x875D, 0x81CA, 0xEEFA, 0xEEFB, 0xEEFC, + 0x878A, 0x8782, 0x8784, 0x81E6, 0xED40, 0xED41, 0xED42, 0xED43, + 0xED44, 0xED45, 0xED46, 0xED47, 0xED48, 0xED49, 0xED4A, 0xED4B, + 0xED4C, 0xED4D, 0xED4E, 0xED4F, 0xED50, 0xED51, 0xED52, 0xED53, + 0xED54, 0xED55, 0xED56, 0xED57, 0xED58, 0xED59, 0xED5A, 0xED5B, + 0xED5C, 0xED5D, 0xED5E, 0xED5F, 0xED60, 0xED61, 0xED62, 0, + 0xED63, 0xED64, 0xED65, 0xED66, 0xED67, 0xED68, 0xED69, 0xED6A, + 0xED6B, 0xED6C, 0xED6D, 0xED6E, 0xED6F, 0xED70, 0xED71, 0xED72, + 0xED73, 0xED74, 0xED75, 0xED76, 0xED77, 0xED78, 0xED79, 0xED7A, + 0xED7B, 0xED7C, 0xED7D, 0xED7E, 0xED80, 0xED81, 0xED82, 0xED83, + 0xED84, 0xED85, 0xED86, 0xED87, 0xED88, 0xED89, 0xED8A, 0xED8B, + 0xED8C, 0xED8D, 0xED8E, 0xED8F, 0xED90, 0xED91, 0xED92, 0xED93, + 0xED94, 0xED95, 0xED96, 0xED97, 0xED98, 0xED99, 0xED9A, 0xED9B, + 0xED9C, 0xED9D, 0xED9E, 0xED9F, 0xEDA0, 0xEDA1, 0xEDA2, 0xEDA3, + 0xEDA4, 0xEDA5, 0xEDA6, 0xEDA7, 0xEDA8, 0xEDA9, 0xEDAA, 0xEDAB, + 0xEDAC, 0xEDAD, 0xEDAE, 0xEDAF, 0xEDB0, 0xEDB1, 0xEDB2, 0xEDB3, + 0xEDB4, 0xEDB5, 0xEDB6, 0xEDB7, 0xEDB8, 0xEDB9, 0xEDBA, 0xEDBB, + 0xEDBC, 0xEDBD, 0xEDBE, 0xEDBF, 0xEDC0, 0xEDC1, 0xEDC2, 0xEDC3, + 0xEDC4, 0xEDC5, 0xEDC6, 0xEDC7, 0xEDC8, 0xEDC9, 0xEDCA, 0xEDCB, + 0xEDCC, 0xEDCD, 0xEDCE, 0xEDCF, 0xEDD0, 0xEDD1, 0xEDD2, 0xEDD3, + 0xEDD4, 0xEDD5, 0xEDD6, 0xEDD7, 0xEDD8, 0xEDD9, 0xEDDA, 0xEDDB, + 0xEDDC, 0xEDDD, 0xEDDE, 0xEDDF, 0xEDE0, + }, + { + 0xEDE1, 0xEDE2, 0xEDE3, 0xEDE4, 0xEDE5, 0xEDE6, 0xEDE7, 0xEDE8, + 0xEDE9, 0xEDEA, 0xEDEB, 0xEDEC, 0xEDED, 0xEDEE, 0xEDEF, 0xEDF0, + 0xEDF1, 0xEDF2, 0xEDF3, 0xEDF4, 0xEDF5, 0xEDF6, 0xEDF7, 0xEDF8, + 0xEDF9, 0xEDFA, 0xEDFB, 0xEDFC, 0xEE40, 0xEE41, 0xEE42, 0xEE43, + 0xEE44, 0xEE45, 0xEE46, 0xEE47, 0xEE48, 0xEE49, 0xEE4A, 0xEE4B, + 0xEE4C, 0xEE4D, 0xEE4E, 0xEE4F, 0xEE50, 0xEE51, 0xEE52, 0xEE53, + 0xEE54, 0xEE55, 0xEE56, 0xEE57, 0xEE58, 0xEE59, 0xEE5A, 0xEE5B, + 0xEE5C, 0xEE5D, 0xEE5E, 0xEE5F, 0xEE60, 0xEE61, 0xEE62, 0, + 0xEE63, 0xEE64, 0xEE65, 0xEE66, 0xEE67, 0xEE68, 0xEE69, 0xEE6A, + 0xEE6B, 0xEE6C, 0xEE6D, 0xEE6E, 0xEE6F, 0xEE70, 0xEE71, 0xEE72, + 0xEE73, 0xEE74, 0xEE75, 0xEE76, 0xEE77, 0xEE78, 0xEE79, 0xEE7A, + 0xEE7B, 0xEE7C, 0xEE7D, 0xEE7E, 0xEE80, 0xEE81, 0xEE82, 0xEE83, + 0xEE84, 0xEE85, 0xEE86, 0xEE87, 0xEE88, 0xEE89, 0xEE8A, 0xEE8B, + 0xEE8C, 0xEE8D, 0xEE8E, 0xEE8F, 0xEE90, 0xEE91, 0xEE92, 0xEE93, + 0xEE94, 0xEE95, 0xEE96, 0xEE97, 0xEE98, 0xEE99, 0xEE9A, 0xEE9B, + 0xEE9C, 0xEE9D, 0xEE9E, 0xEE9F, 0xEEA0, 0xEEA1, 0xEEA2, 0xEEA3, + 0xEEA4, 0xEEA5, 0xEEA6, 0xEEA7, 0xEEA8, 0xEEA9, 0xEEAA, 0xEEAB, + 0xEEAC, 0xEEAD, 0xEEAE, 0xEEAF, 0xEEB0, 0xEEB1, 0xEEB2, 0xEEB3, + 0xEEB4, 0xEEB5, 0xEEB6, 0xEEB7, 0xEEB8, 0xEEB9, 0xEEBA, 0xEEBB, + 0xEEBC, 0xEEBD, 0xEEBE, 0xEEBF, 0xEEC0, 0xEEC1, 0xEEC2, 0xEEC3, + 0xEEC4, 0xEEC5, 0xEEC6, 0xEEC7, 0xEEC8, 0xEEC9, 0xEECA, 0xEECB, + 0xEECC, 0xEECD, 0xEECE, 0xEECF, 0xEED0, 0xEED1, 0xEED2, 0xEED3, + 0xEED4, 0xEED5, 0xEED6, 0xEED7, 0xEED8, 0xEED9, 0xEEDA, 0xEEDB, + 0xEEDC, 0xEEDD, 0xEEDE, 0xEEDF, 0xEEE0, + }, + { + 0xEEE1, 0xEEE2, 0xEEE3, 0xEEE4, 0xEEE5, 0xEEE6, 0xEEE7, 0xEEE8, + 0xEEE9, 0xEEEA, 0xEEEB, 0xEEEC, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, + }, +}; +unsigned short cp932inv[2][189] = { + { + 0xFA5C, 0xFA5D, 0xFA5E, 0xFA5F, 0xFA60, 0xFA61, 0xFA62, 0xFA63, + 0xFA64, 0xFA65, 0xFA66, 0xFA67, 0xFA68, 0xFA69, 0xFA6A, 0xFA6B, + 0xFA6C, 0xFA6D, 0xFA6E, 0xFA6F, 0xFA70, 0xFA71, 0xFA72, 0xFA73, + 0xFA74, 0xFA75, 0xFA76, 0xFA77, 0xFA78, 0xFA79, 0xFA7A, 0xFA7B, + 0xFA7C, 0xFA7D, 0xFA7E, 0xFA80, 0xFA81, 0xFA82, 0xFA83, 0xFA84, + 0xFA85, 0xFA86, 0xFA87, 0xFA88, 0xFA89, 0xFA8A, 0xFA8B, 0xFA8C, + 0xFA8D, 0xFA8E, 0xFA8F, 0xFA90, 0xFA91, 0xFA92, 0xFA93, 0xFA94, + 0xFA95, 0xFA96, 0xFA97, 0xFA98, 0xFA99, 0xFA9A, 0xFA9B, 0, + 0xFA9C, 0xFA9D, 0xFA9E, 0xFA9F, 0xFAA0, 0xFAA1, 0xFAA2, 0xFAA3, + 0xFAA4, 0xFAA5, 0xFAA6, 0xFAA7, 0xFAA8, 0xFAA9, 0xFAAA, 0xFAAB, + 0xFAAC, 0xFAAD, 0xFAAE, 0xFAAF, 0xFAB0, 0xFAB1, 0xFAB2, 0xFAB3, + 0xFAB4, 0xFAB5, 0xFAB6, 0xFAB7, 0xFAB8, 0xFAB9, 0xFABA, 0xFABB, + 0xFABC, 0xFABD, 0xFABE, 0xFABF, 0xFAC0, 0xFAC1, 0xFAC2, 0xFAC3, + 0xFAC4, 0xFAC5, 0xFAC6, 0xFAC7, 0xFAC8, 0xFAC9, 0xFACA, 0xFACB, + 0xFACC, 0xFACD, 0xFACE, 0xFACF, 0xFAD0, 0xFAD1, 0xFAD2, 0xFAD3, + 0xFAD4, 0xFAD5, 0xFAD6, 0xFAD7, 0xFAD8, 0xFAD9, 0xFADA, 0xFADB, + 0xFADC, 0xFADD, 0xFADE, 0xFADF, 0xFAE0, 0xFAE1, 0xFAE2, 0xFAE3, + 0xFAE4, 0xFAE5, 0xFAE6, 0xFAE7, 0xFAE8, 0xFAE9, 0xFAEA, 0xFAEB, + 0xFAEC, 0xFAED, 0xFAEE, 0xFAEF, 0xFAF0, 0xFAF1, 0xFAF2, 0xFAF3, + 0xFAF4, 0xFAF5, 0xFAF6, 0xFAF7, 0xFAF8, 0xFAF9, 0xFAFA, 0xFAFB, + 0xFAFC, 0xFB40, 0xFB41, 0xFB42, 0xFB43, 0xFB44, 0xFB45, 0xFB46, + 0xFB47, 0xFB48, 0xFB49, 0xFB4A, 0xFB4B, 0xFB4C, 0xFB4D, 0xFB4E, + 0xFB4F, 0xFB50, 0xFB51, 0xFB52, 0xFB53, 0xFB54, 0xFB55, 0xFB56, + 0xFB57, 0xFB58, 0xFB59, 0xFB5A, 0xFB5B, + }, + { + 0xFB5C, 0xFB5D, 0xFB5E, 0xFB5F, 0xFB60, 0xFB61, 0xFB62, 0xFB63, + 0xFB64, 0xFB65, 0xFB66, 0xFB67, 0xFB68, 0xFB69, 0xFB6A, 0xFB6B, + 0xFB6C, 0xFB6D, 0xFB6E, 0xFB6F, 0xFB70, 0xFB71, 0xFB72, 0xFB73, + 0xFB74, 0xFB75, 0xFB76, 0xFB77, 0xFB78, 0xFB79, 0xFB7A, 0xFB7B, + 0xFB7C, 0xFB7D, 0xFB7E, 0xFB80, 0xFB81, 0xFB82, 0xFB83, 0xFB84, + 0xFB85, 0xFB86, 0xFB87, 0xFB88, 0xFB89, 0xFB8A, 0xFB8B, 0xFB8C, + 0xFB8D, 0xFB8E, 0xFB8F, 0xFB90, 0xFB91, 0xFB92, 0xFB93, 0xFB94, + 0xFB95, 0xFB96, 0xFB97, 0xFB98, 0xFB99, 0xFB9A, 0xFB9B, 0, + 0xFB9C, 0xFB9D, 0xFB9E, 0xFB9F, 0xFBA0, 0xFBA1, 0xFBA2, 0xFBA3, + 0xFBA4, 0xFBA5, 0xFBA6, 0xFBA7, 0xFBA8, 0xFBA9, 0xFBAA, 0xFBAB, + 0xFBAC, 0xFBAD, 0xFBAE, 0xFBAF, 0xFBB0, 0xFBB1, 0xFBB2, 0xFBB3, + 0xFBB4, 0xFBB5, 0xFBB6, 0xFBB7, 0xFBB8, 0xFBB9, 0xFBBA, 0xFBBB, + 0xFBBC, 0xFBBD, 0xFBBE, 0xFBBF, 0xFBC0, 0xFBC1, 0xFBC2, 0xFBC3, + 0xFBC4, 0xFBC5, 0xFBC6, 0xFBC7, 0xFBC8, 0xFBC9, 0xFBCA, 0xFBCB, + 0xFBCC, 0xFBCD, 0xFBCE, 0xFBCF, 0xFBD0, 0xFBD1, 0xFBD2, 0xFBD3, + 0xFBD4, 0xFBD5, 0xFBD6, 0xFBD7, 0xFBD8, 0xFBD9, 0xFBDA, 0xFBDB, + 0xFBDC, 0xFBDD, 0xFBDE, 0xFBDF, 0xFBE0, 0xFBE1, 0xFBE2, 0xFBE3, + 0xFBE4, 0xFBE5, 0xFBE6, 0xFBE7, 0xFBE8, 0xFBE9, 0xFBEA, 0xFBEB, + 0xFBEC, 0xFBED, 0xFBEE, 0xFBEF, 0xFBF0, 0xFBF1, 0xFBF2, 0xFBF3, + 0xFBF4, 0xFBF5, 0xFBF6, 0xFBF7, 0xFBF8, 0xFBF9, 0xFBFA, 0xFBFB, + 0xFBFC, 0xFC40, 0xFC41, 0xFC42, 0xFC43, 0xFC44, 0xFC45, 0xFC46, + 0xFC47, 0xFC48, 0xFC49, 0xFC4A, 0xFC4B, 0, 0, 0xFA40, + 0xFA41, 0xFA42, 0xFA43, 0xFA44, 0xFA45, 0xFA46, 0xFA47, 0xFA48, + 0xFA49, 0, 0xFA55, 0xFA56, 0xFA57, + }, +}; +#endif /* SHIFTJIS_CP932_TRANS */ +; |