aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakamichi Horikawa <takamichiho@gmail.com>2017-01-18 23:37:07 +0900
committerTakamichi Horikawa <takamichiho@gmail.com>2017-01-18 23:37:07 +0900
commite8fd09abf68b944b05554c82adb577514cad5ca5 (patch)
treef8882715e86534cec2dc20154fd24c6bef3c668b
parent09ea1fe272aca6ebb6840f02765acd44ac3ecebc (diff)
improve FMDSP and enable title display on win32
-rw-r--r--.gitignore2
-rw-r--r--fmdriver/fmdriver.h9
-rw-r--r--fmdriver/fmdriver_fmp.c48
-rw-r--r--fmdriver/ppz8.c1
-rw-r--r--fmdsp/fmdsp.c144
-rw-r--r--fmdsp/fmdsp.h6
-rw-r--r--fmdsp/fmdsp_sprites.h1
-rw-r--r--fmdsp/font.h60
-rw-r--r--fmdsp/font_rom.c24
-rw-r--r--gtk/Makefile.am3
-rw-r--r--gtk/main.c22
-rw-r--r--libopna/opnassg.c5
-rw-r--r--win32/.gitignore2
-rw-r--r--win32/amd64/Makefile11
-rw-r--r--win32/fmplayer.icobin318 -> 0 bytes
-rw-r--r--win32/fmplayer.pngbin0 -> 329 bytes
-rw-r--r--win32/fmplayer32.pngbin0 -> 346 bytes
-rw-r--r--win32/jisuni.h6884
-rw-r--r--win32/jisunih.h66
-rw-r--r--win32/main.c51
-rw-r--r--win32/winfont.c130
-rw-r--r--win32/winfont.h7
-rw-r--r--win32/x86/Makefile11
23 files changed, 7377 insertions, 110 deletions
diff --git a/.gitignore b/.gitignore
index bbb1194..5e95811 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,5 @@ missing
Makefile
config.log
config.status
+config.guess
+config.sub
diff --git a/fmdriver/fmdriver.h b/fmdriver/fmdriver.h
index b9946da..63d27c0 100644
--- a/fmdriver/fmdriver.h
+++ b/fmdriver/fmdriver.h
@@ -15,12 +15,19 @@ enum fmdriver_track_type {
FMDRIVER_TRACK_FM,
FMDRIVER_TRACK_SSG,
FMDRIVER_TRACK_ADPCM,
- FMDRIVER_TRACK_PPZ8
+};
+
+enum fmdriver_track_info {
+ FMDRIVER_TRACK_INFO_NORMAL,
+ FMDRIVER_TRACK_INFO_SSG_NOISE_ONLY,
+ FMDRIVER_TRACK_INFO_SSG_NOISE_MIX,
+ FMDRIVER_TRACK_INFO_PPZ8
};
struct fmdriver_track_status {
bool playing;
enum fmdriver_track_type type;
+ enum fmdriver_track_info info;
uint8_t num;
uint8_t ticks;
uint8_t ticks_left;
diff --git a/fmdriver/fmdriver_fmp.c b/fmdriver/fmdriver_fmp.c
index 9195276..43fb69d 100644
--- a/fmdriver/fmdriver_fmp.c
+++ b/fmdriver/fmdriver_fmp.c
@@ -2719,8 +2719,9 @@ static uint8_t fmp_note2key(uint8_t note) {
return key;
}
-static void fmp_work_status_update(struct fmdriver_work *work,
- struct driver_fmp *fmp) {
+static void fmp_work_status_init(struct fmdriver_work *work,
+ const struct driver_fmp *fmp) {
+
static const uint8_t fmp_track_map[FMDRIVER_TRACK_NUM] = {
FMP_PART_FM_1,
FMP_PART_FM_2,
@@ -2736,26 +2737,58 @@ static void fmp_work_status_update(struct fmdriver_work *work,
for (int t = 0; t < FMDRIVER_TRACK_NUM; t++) {
struct fmdriver_track_status *track = &work->track_status[t];
- struct fmp_part *part = &fmp->parts[fmp_track_map[t]];
+ const struct fmp_part *part = &fmp->parts[fmp_track_map[t]];
track->playing = !part->status.off;
track->num = (part->pdzf.mode ? part->pdzf.ppz8_channel : part->opna_keyon_out)+1;
+ track->info = FMDRIVER_TRACK_INFO_NORMAL;
if (part->type.adpcm) {
track->type = FMDRIVER_TRACK_ADPCM;
+ } else if (part->type.ssg) {
+ track->type = FMDRIVER_TRACK_SSG;
+ } else {
+ track->type = FMDRIVER_TRACK_FM;
+ }
+ if (part->type.fm && part->opna_keyon_out > 3) {
+ track->num--;
+ }
+ }
+}
+
+static void fmp_work_status_update(struct fmdriver_work *work,
+ const struct driver_fmp *fmp) {
+ static const uint8_t fmp_track_map[FMDRIVER_TRACK_NUM] = {
+ FMP_PART_FM_1,
+ FMP_PART_FM_2,
+ FMP_PART_FM_3,
+ FMP_PART_FM_4,
+ FMP_PART_FM_5,
+ FMP_PART_FM_6,
+ FMP_PART_SSG_1,
+ FMP_PART_SSG_2,
+ FMP_PART_SSG_3,
+ FMP_PART_ADPCM,
+ };
+
+ for (int t = 0; t < FMDRIVER_TRACK_NUM; t++) {
+ struct fmdriver_track_status *track = &work->track_status[t];
+ const struct fmp_part *part = &fmp->parts[fmp_track_map[t]];
+ track->playing = !part->status.off;
+ track->num = (part->pdzf.mode ? part->pdzf.ppz8_channel : part->opna_keyon_out)+1;
+ track->info = FMDRIVER_TRACK_INFO_NORMAL;
+ if (part->type.adpcm) {
track->actual_key = 0xff;
} else if (part->type.ssg) {
if (part->u.ssg.env_f.ppz || part->pdzf.mode) {
- track->type = FMDRIVER_TRACK_PPZ8;
+ track->info = FMDRIVER_TRACK_INFO_PPZ8;
track->actual_key = 0xff;
} else {
- track->type = FMDRIVER_TRACK_SSG;
track->actual_key = part->status.rest ? 0xff : fmp_ssg_freq2key(part->prev_freq);
}
} else {
if (part->pdzf.mode) {
- track->type = FMDRIVER_TRACK_PPZ8;
+ track->info = FMDRIVER_TRACK_INFO_PPZ8;
track->actual_key = 0xff;
} else {
- track->type = FMDRIVER_TRACK_FM;
track->actual_key = part->status.rest ? 0xff : fmp_fm_freq2key(part->prev_freq);
}
}
@@ -3407,6 +3440,7 @@ void fmp_init(struct fmdriver_work *work, struct driver_fmp *fmp) {
fmp_set_tempo(work, fmp);
work->driver = fmp;
work->driver_opna_interrupt = fmp_opna_interrupt;
+ fmp_work_status_init(work, fmp);
}
// 4235
diff --git a/fmdriver/ppz8.c b/fmdriver/ppz8.c
index 7984575..39caf0d 100644
--- a/fmdriver/ppz8.c
+++ b/fmdriver/ppz8.c
@@ -247,6 +247,7 @@ static void ppz8_channel_stop(struct ppz8 *ppz8, uint8_t ch) {
if (ch >= 8) return;
struct ppz8_channel *channel = &ppz8->channel[ch];
channel->playing = false;
+ channel->ptr = -1;
}
static void ppz8_channel_volume(struct ppz8 *ppz8, uint8_t ch, uint8_t vol) {
diff --git a/fmdsp/fmdsp.c b/fmdsp/fmdsp.c
index 4698842..bf29f56 100644
--- a/fmdsp/fmdsp.c
+++ b/fmdsp/fmdsp.c
@@ -1,5 +1,6 @@
#include "fmdsp.h"
#include "fmdsp_sprites.h"
+#include "font.h"
#include "fmdriver/fmdriver.h"
static void vramblit(uint8_t *vram, int x, int y,
@@ -21,6 +22,16 @@ static void vramblit_color(uint8_t *vram, int x, int y,
}
}
+static void vramfill_color(uint8_t *vram, int x, int y,
+ int w, int h,
+ uint8_t color) {
+ for (int yi = 0; yi < h; yi++) {
+ for (int xi = 0; xi < w; xi++) {
+ vram[(y+yi)*PC98_W+(x+xi)] = color;
+ }
+ }
+}
+
static void vramblit_key(uint8_t *vram, int x, int y,
const uint8_t *data, int w, int h,
uint8_t key, uint8_t color) {
@@ -34,66 +45,53 @@ static void vramblit_key(uint8_t *vram, int x, int y,
}
}
-void fmdsp_init(struct fmdsp *fmdsp) {
+void fmdsp_init(struct fmdsp *fmdsp, const struct fmdsp_font *font98) {
for (int i = 0; i < FMDSP_PALETTE_COLORS; i++) {
fmdsp->palette[i*3+0] = s_palettes[0][i*3+0];
fmdsp->palette[i*3+1] = s_palettes[0][i*3+1];
fmdsp->palette[i*3+2] = s_palettes[0][i*3+2];
}
+ fmdsp->font98 = font98;
}
-static bool sjis_is_mb_start(uint8_t c) {
- if (0x81 <= c && c <= 0x9f) return true;
- if (0xe0 <= c && c <= 0xef) return true;
- return false;
-}
-static uint16_t sjis2jis(uint8_t sjis_1st, uint8_t sjis_2nd) {
- uint16_t jis;
- if (sjis_1st >= 0xe0) sjis_1st -= 0x40;
- sjis_1st -= 0x81;
- jis = sjis_1st << 9;
- if (sjis_2nd >= 0x80) sjis_2nd--;
- if (sjis_2nd >= 0x9e) {
- jis |= 0x100 | (sjis_2nd - 0x9e);
- } else {
- jis |= (sjis_2nd - 0x40);
- }
- jis += 0x2121;
- return jis;
-}
-
-static void vram_putchar(uint16_t ptr, uint8_t *vram, const uint8_t *font,
- int x, int y, uint8_t color) {
- for (int yi = 0; yi < 16; yi++) {
- for (int xi = 0; xi < 8; xi++) {
- if (font[(ptr<<4)+yi] & (1<<(7-xi))) {
+static void vram_putchar(uint8_t *vram, const void *data,
+ int x, int y, int w, int h, uint8_t color) {
+ const uint8_t *font = data;
+ for (int yi = 0; yi < h; yi++) {
+ for (int xi = 0; xi < w; xi++) {
+ if (font[yi] & (1<<(7-xi))) {
vram[(y+yi)*PC98_W+(x+xi)] = color;
}
}
}
}
-static void fmdsp_putline(const char *strptr, uint8_t *vram, const uint8_t *font,
- int y, uint8_t color) {
+static void fmdsp_putline(const char *strptr, uint8_t *vram,
+ const struct fmdsp_font *font,
+ int x, int y, uint8_t color) {
const uint8_t *cp932str = (const uint8_t *)strptr;
bool sjis_is2nd = false;
uint8_t sjis_1st;
- int x = 0;
+ int fw = font->width_half;
+ int fh = font->height;
+ int xo = 0;
while (*cp932str) {
if (!sjis_is2nd) {
if (!sjis_is_mb_start(*cp932str)) {
if (*cp932str == '\t') {
- if ((x+8*8) > PC98_W) return;
- x += 8*8;
- x &= ~(8*8-1);
+ xo += fw*8;
+ xo -= (xo % (fw*8));
cp932str++;
} else {
- if ((x+8) > PC98_W) return;
- vram_putchar(0x8000+*cp932str++, vram, font, x, y, color);
- x += 8;
+ if ((x+xo+8) > PC98_W) return;
+ const void *fp = font->get(font, *cp932str++, FMDSP_FONT_ANK);
+ if (fp) {
+ vram_putchar(vram, fp, x+xo, y, fw, fh, color);
+ }
+ xo += fw;
}
} else {
sjis_is2nd = true;
@@ -102,15 +100,19 @@ static void fmdsp_putline(const char *strptr, uint8_t *vram, const uint8_t *font
} else {
uint8_t sjis_2nd = *cp932str++;
uint16_t jis = sjis2jis(sjis_1st, sjis_2nd);
- uint8_t jis_1st = jis >> 8;
- uint8_t jis_2nd = jis;
- bool half = (jis_1st == 0x29);
- if ((x+(half ? 8 : 16)) > PC98_W) return;
- vram_putchar((jis_2nd<<8) | (jis_1st-0x20), vram, font, x, y, color);
- x += 8;
+ bool half = jis_is_halfwidth(jis);
+ if ((x+xo+(half ? 8 : 16)) > PC98_W) return;
+ const void *fp = font->get(font, jis, FMDSP_FONT_JIS_LEFT);
+ if (fp) {
+ vram_putchar(vram, fp, x+xo, y, fw, fh, color);
+ }
+ xo += fw;
if (!half) {
- vram_putchar((jis_2nd<<8) | (jis_1st-0x20+0x80), vram, font, x, y, color);
- x += 8;
+ fp = font->get(font, jis, FMDSP_FONT_JIS_RIGHT);
+ if (fp) {
+ vram_putchar(vram, fp, x+xo, y, fw, fh, color);
+ }
+ xo += 8;
}
sjis_is2nd = false;
}
@@ -119,7 +121,6 @@ static void fmdsp_putline(const char *strptr, uint8_t *vram, const uint8_t *font
void fmdsp_vram_init(struct fmdsp *fmdsp,
struct fmdriver_work *work,
- const uint8_t *font,
uint8_t *vram) {
for (int y = 0; y < PC98_H; y++) {
for (int x = 0; x < PC98_W; x++) {
@@ -127,6 +128,23 @@ void fmdsp_vram_init(struct fmdsp *fmdsp,
}
}
for (int t = 0; t < 10; t++) {
+ struct fmdriver_track_status *track = &work->track_status[t];
+ uint8_t *track_type;
+ switch (track->type) {
+ case FMDRIVER_TRACK_FM:
+ track_type = s_t_fm;
+ break;
+ case FMDRIVER_TRACK_SSG:
+ track_type = s_t_ssg;
+ break;
+ case FMDRIVER_TRACK_ADPCM:
+ track_type = s_t_adpcm;
+ break;
+ }
+ vramblit(vram, 1, TRACK_H*t+1, track_type, TNAME_W, TNAME_H);
+ vramblit(vram, NUM_X+NUM_W*0, TRACK_H*t+1, s_num[(track->num/10)%10], NUM_W, NUM_H);
+ vramblit(vram, NUM_X+NUM_W*1, TRACK_H*t+1, s_num[track->num%10], NUM_W, NUM_H);
+
vramblit(vram, 1, TRACK_H*t+7, s_track, TNAME_W, TNAME_H);
vramblit(vram, KEY_LEFT_X, TRACK_H*t+KEY_Y, s_key_left, KEY_LEFT_W, KEY_H);
for (int i = 0; i < KEY_OCTAVES; i++) {
@@ -155,8 +173,11 @@ void fmdsp_vram_init(struct fmdsp *fmdsp,
}
vram[(PC98_H-height)*PC98_W] = 0;
vram[(PC98_H-1)*PC98_W] = 0;
- for (int i = 0; i < 3; i++) {
- fmdsp_putline(work->comment[i], vram, font, COMMENT_Y+COMMENT_H*i, 2);
+ if (fmdsp->font98) {
+ for (int i = 0; i < 3; i++) {
+ fmdsp_putline(work->comment[i], vram, fmdsp->font98,
+ 0, COMMENT_Y+COMMENT_H*i, 2);
+ }
}
}
@@ -164,24 +185,13 @@ void fmdsp_update(struct fmdsp *fmdsp,
const struct fmdriver_work *work, uint8_t *vram) {
for (int t = 0; t < 10; t++) {
struct fmdriver_track_status *track = &work->track_status[t];
- uint8_t *track_type;
- switch (track->type) {
- case FMDRIVER_TRACK_FM:
- track_type = s_t_fm;
- break;
- case FMDRIVER_TRACK_SSG:
- track_type = s_t_ssg;
- break;
- case FMDRIVER_TRACK_ADPCM:
- track_type = s_t_adpcm;
- break;
- case FMDRIVER_TRACK_PPZ8:
- track_type = s_t_ppz8;
+ switch (track->info) {
+ case FMDRIVER_TRACK_INFO_PPZ8:
+ vramblit(vram, TINFO_X, TRACK_H*t+7, s_t_ppz8, TNAME_W, TNAME_H);
break;
+ default:
+ vramfill_color(vram, TINFO_X, TRACK_H*t+7, TNAME_W, TNAME_H, 0);
}
- vramblit(vram, 1, TRACK_H*t+1, track_type, TNAME_W, TNAME_H);
- vramblit(vram, NUM_X+NUM_W*0, TRACK_H*t+1, s_num[(track->num/10)%10], NUM_W, NUM_H);
- vramblit(vram, NUM_X+NUM_W*1, TRACK_H*t+1, s_num[track->num%10], NUM_W, NUM_H);
for (int i = 0; i < KEY_OCTAVES; i++) {
vramblit(vram, KEY_X+KEY_W*i, TRACK_H*t+KEY_Y,
s_key_bg, KEY_W, KEY_H);
@@ -240,13 +250,3 @@ static void fontrom_copy_rows(uint8_t *font, const uint8_t *fontrom,
}
}
}
-
-void fmdsp_font_from_fontrom(uint8_t *font, const uint8_t *fontrom) {
- // ANK
- for (int i = 0; i < 256*16; i++) {
- font[0x80000+i] = fontrom[0x800+i];
- }
- fontrom_copy_rows(font, fontrom, 0x21, 0x50);
- fontrom_copy_rows(font, fontrom, 0x50, 0x76);
- fontrom_copy_rows(font, fontrom, 0x78, 0x7d);
-}
diff --git a/fmdsp/fmdsp.h b/fmdsp/fmdsp.h
index 4c6af0c..a7b245a 100644
--- a/fmdsp/fmdsp.h
+++ b/fmdsp/fmdsp.h
@@ -2,6 +2,7 @@
#define MYON_FMDSP_H_INCLUDED
#include <stdint.h>
+#include "font.h"
#ifdef __cplusplus
extern "C" {
@@ -19,13 +20,14 @@ enum {
struct fmdsp {
uint8_t palette[FMDSP_PALETTE_COLORS*3];
uint8_t target_palette[FMDSP_PALETTE_COLORS*3];
+ const struct fmdsp_font *font98;
+
};
struct fmdriver_work;
-void fmdsp_init(struct fmdsp *fmdsp);
+void fmdsp_init(struct fmdsp *fmdsp, const struct fmdsp_font *font);
void fmdsp_vram_init(struct fmdsp *fmdsp,
struct fmdriver_work *work,
- const uint8_t *font,
uint8_t *vram);
void fmdsp_update(struct fmdsp *fmdsp, const struct fmdriver_work *work, uint8_t *vram);
void fmdsp_vrampalette(struct fmdsp *fmdsp, const uint8_t *vram, uint8_t *vram32, int stride);
diff --git a/fmdsp/fmdsp_sprites.h b/fmdsp/fmdsp_sprites.h
index 8554985..1fe6c13 100644
--- a/fmdsp/fmdsp_sprites.h
+++ b/fmdsp/fmdsp_sprites.h
@@ -10,6 +10,7 @@ enum {
TRACK_H = 32,
TNAME_W = 26,
TNAME_H = 5,
+ TINFO_X = 48,
NUM_X = 31,
NUM_W = 8,
NUM_H = 11,
diff --git a/fmdsp/font.h b/fmdsp/font.h
new file mode 100644
index 0000000..689df04
--- /dev/null
+++ b/fmdsp/font.h
@@ -0,0 +1,60 @@
+#ifndef MYON_FMDSP_FONT_H_INCLUDED
+#define MYON_FMDSP_FONT_H_INCLUDED
+
+#include <stdint.h>
+#include <stdbool.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+static inline bool sjis_is_mb_start(uint8_t c) {
+ if (0x81 <= c && c <= 0x9f) return true;
+ if (0xe0 <= c && c <= 0xef) return true;
+ return false;
+}
+
+static inline bool jis_is_halfwidth(uint16_t jis) {
+ return (jis>>8) == 0x29;
+}
+
+static inline uint16_t sjis2jis(uint8_t sjis_1st, uint8_t sjis_2nd) {
+ uint16_t jis;
+ if (sjis_1st >= 0xe0) sjis_1st -= 0x40;
+ sjis_1st -= 0x81;
+ jis = sjis_1st << 9;
+ if (sjis_2nd >= 0x80) sjis_2nd--;
+ if (sjis_2nd >= 0x9e) {
+ jis |= 0x100 | (sjis_2nd - 0x9e);
+ } else {
+ jis |= (sjis_2nd - 0x40);
+ }
+ jis += 0x2121;
+ return jis;
+}
+
+enum fmdsp_font_type {
+ FMDSP_FONT_ANK,
+ FMDSP_FONT_JIS_LEFT,
+ FMDSP_FONT_JIS_RIGHT
+};
+
+struct fmdsp_font {
+ const void *(* get)(const struct fmdsp_font *font,
+ uint16_t addr, enum fmdsp_font_type type);
+ const void *data;
+ uint8_t width_half;
+ uint8_t height;
+};
+
+enum {
+ FONT_ROM_FILESIZE = 0x46800
+};
+
+void fmdsp_font_from_font_rom(struct fmdsp_font *font, const void *data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // MYON_FMDSP_FONT_H_INCLUDED
diff --git a/fmdsp/font_rom.c b/fmdsp/font_rom.c
new file mode 100644
index 0000000..de6bc19
--- /dev/null
+++ b/fmdsp/font_rom.c
@@ -0,0 +1,24 @@
+#include "font.h"
+
+static const void *font_rom_get(const struct fmdsp_font *font,
+ uint16_t jis, enum fmdsp_font_type type) {
+ const uint8_t *fontdata = font->data;
+ const uint8_t *fontptr;
+ if (type == FMDSP_FONT_ANK) {
+ fontptr = fontdata + 0x800 + (jis<<4);
+ } else {
+ uint8_t row = jis >> 8;
+ uint8_t cell = jis;
+ fontptr = fontdata + (0x800 + (0x60*16*2*(row-0x20)) + (cell<<5));
+ if (type == FMDSP_FONT_JIS_RIGHT) fontptr += 16;
+ }
+ if ((fontptr + (16*16/8)) > (fontdata + FONT_ROM_FILESIZE)) fontptr = 0;
+ return fontptr;
+}
+
+void fmdsp_font_from_font_rom(struct fmdsp_font *font, const void *data) {
+ font->data = data;
+ font->width_half = 8;
+ font->height = 16;
+ font->get = font_rom_get;
+}
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index 9a4790b..5864a9a 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -10,7 +10,8 @@ LIBOPNA_SRC=../libopna/opnaadpcm.c \
FMDRIVER_SRC=../fmdriver/fmdriver_fmp.c \
../fmdriver/ppz8.c
-FMDSP_SRC=../fmdsp/fmdsp.c
+FMDSP_SRC=../fmdsp/fmdsp.c \
+ ../fmdsp/font_rom.c
fmplayer_SOURCES=main.c \
$(LIBOPNA_SRC) \
diff --git a/gtk/main.c b/gtk/main.c
index 874bc1d..77bf105 100644
--- a/gtk/main.c
+++ b/gtk/main.c
@@ -18,8 +18,6 @@
enum {
SRATE = 55467,
PPZ8MIX = 0xa000,
- FONT_ROM_SIZE = 0x84000,
- FONT_ROM_FILESIZE = 0x46800,
AUDIOBUFLEN = 0,
};
@@ -39,7 +37,8 @@ static struct {
void *fmpdata;
void *ppzbuf;
uint8_t vram[PC98_W*PC98_H];
- uint8_t font[FONT_ROM_SIZE];
+ struct fmdsp_font font98;
+ uint8_t font98data[FONT_ROM_FILESIZE];
void *vram32;
int vram32_stride;
} g;
@@ -247,6 +246,7 @@ static void load_fontrom(void) {
const char *path = "font.rom";
const char *home = getenv("HOME");
char *dpath = 0;
+ fmdsp_font_from_font_rom(&g.font98, g.font98data);
if (home) {
const char *datadir = DATADIR;
dpath = malloc(strlen(home)+strlen(datadir)+strlen(path) + 1);
@@ -264,15 +264,11 @@ static void load_fontrom(void) {
long size = ftell(font);
if (size != FONT_ROM_FILESIZE) goto err_file;
if (fseek(font, 0, SEEK_SET) != 0) goto err_file;
- uint8_t *fontbuf = malloc(FONT_ROM_FILESIZE);
- if (!fontbuf) goto err_file;
- if (fread(fontbuf, 1, FONT_ROM_FILESIZE, font) != FONT_ROM_FILESIZE) goto err_fontbuf;
- fmdsp_font_from_fontrom(g.font, fontbuf);
- free(fontbuf);
+ if (fread(g.font98data, 1, FONT_ROM_FILESIZE, font) != FONT_ROM_FILESIZE) {
+ goto err_file;
+ }
fclose(font);
return;
-err_fontbuf:
- free(fontbuf);
err_file:
fclose(font);
err:
@@ -361,7 +357,7 @@ static bool openfile(const char *path) {
opna_timer_set_int_callback(&g.opna_timer, opna_int_cb, &g.work);
opna_timer_set_mix_callback(&g.opna_timer, opna_mix_cb, &g.ppz8);
fmp_init(&g.work, g.fmp);
- fmdsp_vram_init(&g.fmdsp, &g.work, g.font, g.vram);
+ fmdsp_vram_init(&g.fmdsp, &g.work, g.vram);
loadpvi(&g.work, g.fmp, path);
loadppzpvi(&g.work, g.fmp, path);
fclose(fmfile);
@@ -472,8 +468,8 @@ int main(int argc, char **argv) {
g.pa_initialized = (Pa_Initialize() == paNoError);
- fmdsp_init(&g.fmdsp);
- fmdsp_vram_init(&g.fmdsp, &g.work, g.font, g.vram);
+ fmdsp_init(&g.fmdsp, &g.font98);
+ fmdsp_vram_init(&g.fmdsp, &g.work, g.vram);
g.vram32_stride = cairo_format_stride_for_width(CAIRO_FORMAT_RGB24, PC98_W);
g.vram32 = malloc((g.vram32_stride*PC98_H)*4);
diff --git a/libopna/opnassg.c b/libopna/opnassg.c
index d87dc91..cc797b0 100644
--- a/libopna/opnassg.c
+++ b/libopna/opnassg.c
@@ -171,18 +171,19 @@ void opna_ssg_generate_raw(struct opna_ssg *ssg, int16_t *buf, int samples) {
ssg->ch[ch].tone_counter = 0;
ssg->ch[ch].out = !ssg->ch[ch].out;
}
- /*
+#if 0
if (opna_ssg_tone_out(ssg, ch)) {
int level = opna_ssg_chan_env(ssg, ch)
? opna_ssg_env_level(ssg)
: (opna_ssg_tone_volume(ssg, ch) << 1) + 1;
out += voltable[level];
}
- */
+#else
if (!opna_ssg_tone_silent(ssg, ch)) {
int level = opna_ssg_channel_level(ssg, ch);
out += opna_ssg_tone_out(ssg, ch) ? voltable[level] : -voltable[level];
}
+#endif
}
buf[i] = out / 4;
diff --git a/win32/.gitignore b/win32/.gitignore
new file mode 100644
index 0000000..f8d6665
--- /dev/null
+++ b/win32/.gitignore
@@ -0,0 +1,2 @@
+*.ico
+*.exe
diff --git a/win32/amd64/Makefile b/win32/amd64/Makefile
index 5c959c5..2a43c59 100644
--- a/win32/amd64/Makefile
+++ b/win32/amd64/Makefile
@@ -4,6 +4,8 @@ vpath %.c ../../libopna
vpath %.c ../../fmdsp
vpath %.rc ..
TARGET=fmplayer.exe
+ICON=../fmplayer.ico
+ICONFILES=../fmplayer.png ../fmplayer32.png
FMDRIVER_OBJS=fmdriver_fmp.o \
ppz8.o
LIBOPNA_OBJS=opna.o \
@@ -12,8 +14,8 @@ LIBOPNA_OBJS=opna.o \
opnassg.o \
opnadrum.o \
opnaadpcm.o
-FMDSP_OBJS=fmdsp.o
-OBJS=main.o dsoundout.o soundout.o waveout.o uc.o lnf.o \
+FMDSP_OBJS=fmdsp.o font_rom.o
+OBJS=main.o dsoundout.o soundout.o waveout.o uc.o lnf.o winfont.o \
$(FMDRIVER_OBJS) \
$(LIBOPNA_OBJS) \
$(FMDSP_OBJS)
@@ -35,8 +37,11 @@ $(TARGET): $(OBJS)
$(CC) -o $@ $(OBJS) $(LIBS)
$(STRIP) $@
-%.o: %.rc
+%.o: %.rc $(ICON)
$(WINDRES) -o $@ -i $<
+$(ICON): $(ICONFILES)
+ convert $(ICONFILES) -colors 256 $@
+
clean:
rm -f $(TARGET) $(OBJS)
diff --git a/win32/fmplayer.ico b/win32/fmplayer.ico
deleted file mode 100644
index 801126c..0000000
--- a/win32/fmplayer.ico
+++ /dev/null
Binary files differ
diff --git a/win32/fmplayer.png b/win32/fmplayer.png
new file mode 100644
index 0000000..613bf2a
--- /dev/null
+++ b/win32/fmplayer.png
Binary files differ
diff --git a/win32/fmplayer32.png b/win32/fmplayer32.png
new file mode 100644
index 0000000..92e054c
--- /dev/null
+++ b/win32/fmplayer32.png
Binary files differ
diff --git a/win32/jisuni.h b/win32/jisuni.h
new file mode 100644
index 0000000..6adde66
--- /dev/null
+++ b/win32/jisuni.h
@@ -0,0 +1,6884 @@
+static const uint16_t jis2unicode[] = {
+ 0x2141, 0xFF5E, // WAVE DASH
+
+ 0x2121, 0x3000, // IDEOGRAPHIC SPACE
+ 0x2122, 0x3001, // IDEOGRAPHIC COMMA
+ 0x2123, 0x3002, // IDEOGRAPHIC FULL STOP
+ 0x2124, 0xFF0C, // FULLWIDTH COMMA
+ 0x2125, 0xFF0E, // FULLWIDTH FULL STOP
+ 0x2126, 0x30FB, // KATAKANA MIDDLE DOT
+ 0x2127, 0xFF1A, // FULLWIDTH COLON
+ 0x2128, 0xFF1B, // FULLWIDTH SEMICOLON
+ 0x2129, 0xFF1F, // FULLWIDTH QUESTION MARK
+ 0x212A, 0xFF01, // FULLWIDTH EXCLAMATION MARK
+ 0x212B, 0x309B, // KATAKANA-HIRAGANA VOICED SOUND MARK
+ 0x212C, 0x309C, // KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+ 0x212D, 0x00B4, // ACUTE ACCENT
+ 0x212E, 0xFF40, // FULLWIDTH GRAVE ACCENT
+ 0x212F, 0x00A8, // DIAERESIS
+ 0x2130, 0xFF3E, // FULLWIDTH CIRCUMFLEX ACCENT
+ 0x2131, 0xFFE3, // FULLWIDTH MACRON
+ 0x2132, 0xFF3F, // FULLWIDTH LOW LINE
+ 0x2133, 0x30FD, // KATAKANA ITERATION MARK
+ 0x2134, 0x30FE, // KATAKANA VOICED ITERATION MARK
+ 0x2135, 0x309D, // HIRAGANA ITERATION MARK
+ 0x2136, 0x309E, // HIRAGANA VOICED ITERATION MARK
+ 0x2137, 0x3003, // DITTO MARK
+ 0x2138, 0x4EDD, // <CJK>
+ 0x2139, 0x3005, // IDEOGRAPHIC ITERATION MARK
+ 0x213A, 0x3006, // IDEOGRAPHIC CLOSING MARK
+ 0x213B, 0x3007, // IDEOGRAPHIC NUMBER ZERO
+ 0x213C, 0x30FC, // KATAKANA-HIRAGANA PROLONGED SOUND MARK
+ 0x213D, 0x2015, // HORIZONTAL BAR
+ 0x213E, 0x2010, // HYPHEN
+ 0x213F, 0xFF0F, // FULLWIDTH SOLIDUS
+ 0x2140, 0x005C, // REVERSE SOLIDUS
+ 0x2141, 0x301C, // WAVE DASH
+ 0x2142, 0x2016, // DOUBLE VERTICAL LINE
+ 0x2143, 0xFF5C, // FULLWIDTH VERTICAL LINE
+ 0x2144, 0x2026, // HORIZONTAL ELLIPSIS
+ 0x2145, 0x2025, // TWO DOT LEADER
+ 0x2146, 0x2018, // LEFT SINGLE QUOTATION MARK
+ 0x2147, 0x2019, // RIGHT SINGLE QUOTATION MARK
+ 0x2148, 0x201C, // LEFT DOUBLE QUOTATION MARK
+ 0x2149, 0x201D, // RIGHT DOUBLE QUOTATION MARK
+ 0x214A, 0xFF08, // FULLWIDTH LEFT PARENTHESIS
+ 0x214B, 0xFF09, // FULLWIDTH RIGHT PARENTHESIS
+ 0x214C, 0x3014, // LEFT TORTOISE SHELL BRACKET
+ 0x214D, 0x3015, // RIGHT TORTOISE SHELL BRACKET
+ 0x214E, 0xFF3B, // FULLWIDTH LEFT SQUARE BRACKET
+ 0x214F, 0xFF3D, // FULLWIDTH RIGHT SQUARE BRACKET
+ 0x2150, 0xFF5B, // FULLWIDTH LEFT CURLY BRACKET
+ 0x2151, 0xFF5D, // FULLWIDTH RIGHT CURLY BRACKET
+ 0x2152, 0x3008, // LEFT ANGLE BRACKET
+ 0x2153, 0x3009, // RIGHT ANGLE BRACKET
+ 0x2154, 0x300A, // LEFT DOUBLE ANGLE BRACKET
+ 0x2155, 0x300B, // RIGHT DOUBLE ANGLE BRACKET
+ 0x2156, 0x300C, // LEFT CORNER BRACKET
+ 0x2157, 0x300D, // RIGHT CORNER BRACKET
+ 0x2158, 0x300E, // LEFT WHITE CORNER BRACKET
+ 0x2159, 0x300F, // RIGHT WHITE CORNER BRACKET
+ 0x215A, 0x3010, // LEFT BLACK LENTICULAR BRACKET
+ 0x215B, 0x3011, // RIGHT BLACK LENTICULAR BRACKET
+ 0x215C, 0xFF0B, // FULLWIDTH PLUS SIGN
+ 0x215D, 0x2212, // MINUS SIGN
+ 0x215E, 0x00B1, // PLUS-MINUS SIGN
+ 0x215F, 0x00D7, // MULTIPLICATION SIGN
+ 0x2160, 0x00F7, // DIVISION SIGN
+ 0x2161, 0xFF1D, // FULLWIDTH EQUALS SIGN
+ 0x2162, 0x2260, // NOT EQUAL TO
+ 0x2163, 0xFF1C, // FULLWIDTH LESS-THAN SIGN
+ 0x2164, 0xFF1E, // FULLWIDTH GREATER-THAN SIGN
+ 0x2165, 0x2266, // LESS-THAN OVER EQUAL TO
+ 0x2166, 0x2267, // GREATER-THAN OVER EQUAL TO
+ 0x2167, 0x221E, // INFINITY
+ 0x2168, 0x2234, // THEREFORE
+ 0x2169, 0x2642, // MALE SIGN
+ 0x216A, 0x2640, // FEMALE SIGN
+ 0x216B, 0x00B0, // DEGREE SIGN
+ 0x216C, 0x2032, // PRIME
+ 0x216D, 0x2033, // DOUBLE PRIME
+ 0x216E, 0x2103, // DEGREE CELSIUS
+ 0x216F, 0xFFE5, // FULLWIDTH YEN SIGN
+ 0x2170, 0xFF04, // FULLWIDTH DOLLAR SIGN
+ 0x2171, 0x00A2, // CENT SIGN
+ 0x2172, 0x00A3, // POUND SIGN
+ 0x2173, 0xFF05, // FULLWIDTH PERCENT SIGN
+ 0x2174, 0xFF03, // FULLWIDTH NUMBER SIGN
+ 0x2175, 0xFF06, // FULLWIDTH AMPERSAND
+ 0x2176, 0xFF0A, // FULLWIDTH ASTERISK
+ 0x2177, 0xFF20, // FULLWIDTH COMMERCIAL AT
+ 0x2178, 0x00A7, // SECTION SIGN
+ 0x2179, 0x2606, // WHITE STAR
+ 0x217A, 0x2605, // BLACK STAR
+ 0x217B, 0x25CB, // WHITE CIRCLE
+ 0x217C, 0x25CF, // BLACK CIRCLE
+ 0x217D, 0x25CE, // BULLSEYE
+ 0x217E, 0x25C7, // WHITE DIAMOND
+ 0x2221, 0x25C6, // BLACK DIAMOND
+ 0x2222, 0x25A1, // WHITE SQUARE
+ 0x2223, 0x25A0, // BLACK SQUARE
+ 0x2224, 0x25B3, // WHITE UP-POINTING TRIANGLE
+ 0x2225, 0x25B2, // BLACK UP-POINTING TRIANGLE
+ 0x2226, 0x25BD, // WHITE DOWN-POINTING TRIANGLE
+ 0x2227, 0x25BC, // BLACK DOWN-POINTING TRIANGLE
+ 0x2228, 0x203B, // REFERENCE MARK
+ 0x2229, 0x3012, // POSTAL MARK
+ 0x222A, 0x2192, // RIGHTWARDS ARROW
+ 0x222B, 0x2190, // LEFTWARDS ARROW
+ 0x222C, 0x2191, // UPWARDS ARROW
+ 0x222D, 0x2193, // DOWNWARDS ARROW
+ 0x222E, 0x3013, // GETA MARK
+ 0x223A, 0x2208, // ELEMENT OF
+ 0x223B, 0x220B, // CONTAINS AS MEMBER
+ 0x223C, 0x2286, // SUBSET OF OR EQUAL TO
+ 0x223D, 0x2287, // SUPERSET OF OR EQUAL TO
+ 0x223E, 0x2282, // SUBSET OF
+ 0x223F, 0x2283, // SUPERSET OF
+ 0x2240, 0x222A, // UNION
+ 0x2241, 0x2229, // INTERSECTION
+ 0x224A, 0x2227, // LOGICAL AND
+ 0x224B, 0x2228, // LOGICAL OR
+ 0x224C, 0x00AC, // NOT SIGN
+ 0x224D, 0x21D2, // RIGHTWARDS DOUBLE ARROW
+ 0x224E, 0x21D4, // LEFT RIGHT DOUBLE ARROW
+ 0x224F, 0x2200, // FOR ALL
+ 0x2250, 0x2203, // THERE EXISTS
+ 0x225C, 0x2220, // ANGLE
+ 0x225D, 0x22A5, // UP TACK
+ 0x225E, 0x2312, // ARC
+ 0x225F, 0x2202, // PARTIAL DIFFERENTIAL
+ 0x2260, 0x2207, // NABLA
+ 0x2261, 0x2261, // IDENTICAL TO
+ 0x2262, 0x2252, // APPROXIMATELY EQUAL TO OR THE IMAGE OF
+ 0x2263, 0x226A, // MUCH LESS-THAN
+ 0x2264, 0x226B, // MUCH GREATER-THAN
+ 0x2265, 0x221A, // SQUARE ROOT
+ 0x2266, 0x223D, // REVERSED TILDE
+ 0x2267, 0x221D, // PROPORTIONAL TO
+ 0x2268, 0x2235, // BECAUSE
+ 0x2269, 0x222B, // INTEGRAL
+ 0x226A, 0x222C, // DOUBLE INTEGRAL
+ 0x2272, 0x212B, // ANGSTROM SIGN
+ 0x2273, 0x2030, // PER MILLE SIGN
+ 0x2274, 0x266F, // MUSIC SHARP SIGN
+ 0x2275, 0x266D, // MUSIC FLAT SIGN
+ 0x2276, 0x266A, // EIGHTH NOTE
+ 0x2277, 0x2020, // DAGGER
+ 0x2278, 0x2021, // DOUBLE DAGGER
+ 0x2279, 0x00B6, // PILCROW SIGN
+ 0x227E, 0x25EF, // LARGE CIRCLE
+ 0x2330, 0xFF10, // FULLWIDTH DIGIT ZERO
+ 0x2331, 0xFF11, // FULLWIDTH DIGIT ONE
+ 0x2332, 0xFF12, // FULLWIDTH DIGIT TWO
+ 0x2333, 0xFF13, // FULLWIDTH DIGIT THREE
+ 0x2334, 0xFF14, // FULLWIDTH DIGIT FOUR
+ 0x2335, 0xFF15, // FULLWIDTH DIGIT FIVE
+ 0x2336, 0xFF16, // FULLWIDTH DIGIT SIX
+ 0x2337, 0xFF17, // FULLWIDTH DIGIT SEVEN
+ 0x2338, 0xFF18, // FULLWIDTH DIGIT EIGHT
+ 0x2339, 0xFF19, // FULLWIDTH DIGIT NINE
+ 0x2341, 0xFF21, // FULLWIDTH LATIN CAPITAL LETTER A
+ 0x2342, 0xFF22, // FULLWIDTH LATIN CAPITAL LETTER B
+ 0x2343, 0xFF23, // FULLWIDTH LATIN CAPITAL LETTER C
+ 0x2344, 0xFF24, // FULLWIDTH LATIN CAPITAL LETTER D
+ 0x2345, 0xFF25, // FULLWIDTH LATIN CAPITAL LETTER E
+ 0x2346, 0xFF26, // FULLWIDTH LATIN CAPITAL LETTER F
+ 0x2347, 0xFF27, // FULLWIDTH LATIN CAPITAL LETTER G
+ 0x2348, 0xFF28, // FULLWIDTH LATIN CAPITAL LETTER H
+ 0x2349, 0xFF29, // FULLWIDTH LATIN CAPITAL LETTER I
+ 0x234A, 0xFF2A, // FULLWIDTH LATIN CAPITAL LETTER J
+ 0x234B, 0xFF2B, // FULLWIDTH LATIN CAPITAL LETTER K
+ 0x234C, 0xFF2C, // FULLWIDTH LATIN CAPITAL LETTER L
+ 0x234D, 0xFF2D, // FULLWIDTH LATIN CAPITAL LETTER M
+ 0x234E, 0xFF2E, // FULLWIDTH LATIN CAPITAL LETTER N
+ 0x234F, 0xFF2F, // FULLWIDTH LATIN CAPITAL LETTER O
+ 0x2350, 0xFF30, // FULLWIDTH LATIN CAPITAL LETTER P
+ 0x2351, 0xFF31, // FULLWIDTH LATIN CAPITAL LETTER Q
+ 0x2352, 0xFF32, // FULLWIDTH LATIN CAPITAL LETTER R
+ 0x2353, 0xFF33, // FULLWIDTH LATIN CAPITAL LETTER S
+ 0x2354, 0xFF34, // FULLWIDTH LATIN CAPITAL LETTER T
+ 0x2355, 0xFF35, // FULLWIDTH LATIN CAPITAL LETTER U
+ 0x2356, 0xFF36, // FULLWIDTH LATIN CAPITAL LETTER V
+ 0x2357, 0xFF37, // FULLWIDTH LATIN CAPITAL LETTER W
+ 0x2358, 0xFF38, // FULLWIDTH LATIN CAPITAL LETTER X
+ 0x2359, 0xFF39, // FULLWIDTH LATIN CAPITAL LETTER Y
+ 0x235A, 0xFF3A, // FULLWIDTH LATIN CAPITAL LETTER Z
+ 0x2361, 0xFF41, // FULLWIDTH LATIN SMALL LETTER A
+ 0x2362, 0xFF42, // FULLWIDTH LATIN SMALL LETTER B
+ 0x2363, 0xFF43, // FULLWIDTH LATIN SMALL LETTER C
+ 0x2364, 0xFF44, // FULLWIDTH LATIN SMALL LETTER D
+ 0x2365, 0xFF45, // FULLWIDTH LATIN SMALL LETTER E
+ 0x2366, 0xFF46, // FULLWIDTH LATIN SMALL LETTER F
+ 0x2367, 0xFF47, // FULLWIDTH LATIN SMALL LETTER G
+ 0x2368, 0xFF48, // FULLWIDTH LATIN SMALL LETTER H
+ 0x2369, 0xFF49, // FULLWIDTH LATIN SMALL LETTER I
+ 0x236A, 0xFF4A, // FULLWIDTH LATIN SMALL LETTER J
+ 0x236B, 0xFF4B, // FULLWIDTH LATIN SMALL LETTER K
+ 0x236C, 0xFF4C, // FULLWIDTH LATIN SMALL LETTER L
+ 0x236D, 0xFF4D, // FULLWIDTH LATIN SMALL LETTER M
+ 0x236E, 0xFF4E, // FULLWIDTH LATIN SMALL LETTER N
+ 0x236F, 0xFF4F, // FULLWIDTH LATIN SMALL LETTER O
+ 0x2370, 0xFF50, // FULLWIDTH LATIN SMALL LETTER P
+ 0x2371, 0xFF51, // FULLWIDTH LATIN SMALL LETTER Q
+ 0x2372, 0xFF52, // FULLWIDTH LATIN SMALL LETTER R
+ 0x2373, 0xFF53, // FULLWIDTH LATIN SMALL LETTER S
+ 0x2374, 0xFF54, // FULLWIDTH LATIN SMALL LETTER T
+ 0x2375, 0xFF55, // FULLWIDTH LATIN SMALL LETTER U
+ 0x2376, 0xFF56, // FULLWIDTH LATIN SMALL LETTER V
+ 0x2377, 0xFF57, // FULLWIDTH LATIN SMALL LETTER W
+ 0x2378, 0xFF58, // FULLWIDTH LATIN SMALL LETTER X
+ 0x2379, 0xFF59, // FULLWIDTH LATIN SMALL LETTER Y
+ 0x237A, 0xFF5A, // FULLWIDTH LATIN SMALL LETTER Z
+ 0x2421, 0x3041, // HIRAGANA LETTER SMALL A
+ 0x2422, 0x3042, // HIRAGANA LETTER A
+ 0x2423, 0x3043, // HIRAGANA LETTER SMALL I
+ 0x2424, 0x3044, // HIRAGANA LETTER I
+ 0x2425, 0x3045, // HIRAGANA LETTER SMALL U
+ 0x2426, 0x3046, // HIRAGANA LETTER U
+ 0x2427, 0x3047, // HIRAGANA LETTER SMALL E
+ 0x2428, 0x3048, // HIRAGANA LETTER E
+ 0x2429, 0x3049, // HIRAGANA LETTER SMALL O
+ 0x242A, 0x304A, // HIRAGANA LETTER O
+ 0x242B, 0x304B, // HIRAGANA LETTER KA
+ 0x242C, 0x304C, // HIRAGANA LETTER GA
+ 0x242D, 0x304D, // HIRAGANA LETTER KI
+ 0x242E, 0x304E, // HIRAGANA LETTER GI
+ 0x242F, 0x304F, // HIRAGANA LETTER KU
+ 0x2430, 0x3050, // HIRAGANA LETTER GU
+ 0x2431, 0x3051, // HIRAGANA LETTER KE
+ 0x2432, 0x3052, // HIRAGANA LETTER GE
+ 0x2433, 0x3053, // HIRAGANA LETTER KO
+ 0x2434, 0x3054, // HIRAGANA LETTER GO
+ 0x2435, 0x3055, // HIRAGANA LETTER SA
+ 0x2436, 0x3056, // HIRAGANA LETTER ZA
+ 0x2437, 0x3057, // HIRAGANA LETTER SI
+ 0x2438, 0x3058, // HIRAGANA LETTER ZI
+ 0x2439, 0x3059, // HIRAGANA LETTER SU
+ 0x243A, 0x305A, // HIRAGANA LETTER ZU
+ 0x243B, 0x305B, // HIRAGANA LETTER SE
+ 0x243C, 0x305C, // HIRAGANA LETTER ZE
+ 0x243D, 0x305D, // HIRAGANA LETTER SO
+ 0x243E, 0x305E, // HIRAGANA LETTER ZO
+ 0x243F, 0x305F, // HIRAGANA LETTER TA
+ 0x2440, 0x3060, // HIRAGANA LETTER DA
+ 0x2441, 0x3061, // HIRAGANA LETTER TI
+ 0x2442, 0x3062, // HIRAGANA LETTER DI
+ 0x2443, 0x3063, // HIRAGANA LETTER SMALL TU
+ 0x2444, 0x3064, // HIRAGANA LETTER TU
+ 0x2445, 0x3065, // HIRAGANA LETTER DU
+ 0x2446, 0x3066, // HIRAGANA LETTER TE
+ 0x2447, 0x3067, // HIRAGANA LETTER DE
+ 0x2448, 0x3068, // HIRAGANA LETTER TO
+ 0x2449, 0x3069, // HIRAGANA LETTER DO
+ 0x244A, 0x306A, // HIRAGANA LETTER NA
+ 0x244B, 0x306B, // HIRAGANA LETTER NI
+ 0x244C, 0x306C, // HIRAGANA LETTER NU
+ 0x244D, 0x306D, // HIRAGANA LETTER NE
+ 0x244E, 0x306E, // HIRAGANA LETTER NO
+ 0x244F, 0x306F, // HIRAGANA LETTER HA
+ 0x2450, 0x3070, // HIRAGANA LETTER BA
+ 0x2451, 0x3071, // HIRAGANA LETTER PA
+ 0x2452, 0x3072, // HIRAGANA LETTER HI
+ 0x2453, 0x3073, // HIRAGANA LETTER BI
+ 0x2454, 0x3074, // HIRAGANA LETTER PI
+ 0x2455, 0x3075, // HIRAGANA LETTER HU
+ 0x2456, 0x3076, // HIRAGANA LETTER BU
+ 0x2457, 0x3077, // HIRAGANA LETTER PU
+ 0x2458, 0x3078, // HIRAGANA LETTER HE
+ 0x2459, 0x3079, // HIRAGANA LETTER BE
+ 0x245A, 0x307A, // HIRAGANA LETTER PE
+ 0x245B, 0x307B, // HIRAGANA LETTER HO
+ 0x245C, 0x307C, // HIRAGANA LETTER BO
+ 0x245D, 0x307D, // HIRAGANA LETTER PO
+ 0x245E, 0x307E, // HIRAGANA LETTER MA
+ 0x245F, 0x307F, // HIRAGANA LETTER MI
+ 0x2460, 0x3080, // HIRAGANA LETTER MU
+ 0x2461, 0x3081, // HIRAGANA LETTER ME
+ 0x2462, 0x3082, // HIRAGANA LETTER MO
+ 0x2463, 0x3083, // HIRAGANA LETTER SMALL YA
+ 0x2464, 0x3084, // HIRAGANA LETTER YA
+ 0x2465, 0x3085, // HIRAGANA LETTER SMALL YU
+ 0x2466, 0x3086, // HIRAGANA LETTER YU
+ 0x2467, 0x3087, // HIRAGANA LETTER SMALL YO
+ 0x2468, 0x3088, // HIRAGANA LETTER YO
+ 0x2469, 0x3089, // HIRAGANA LETTER RA
+ 0x246A, 0x308A, // HIRAGANA LETTER RI
+ 0x246B, 0x308B, // HIRAGANA LETTER RU
+ 0x246C, 0x308C, // HIRAGANA LETTER RE
+ 0x246D, 0x308D, // HIRAGANA LETTER RO
+ 0x246E, 0x308E, // HIRAGANA LETTER SMALL WA
+ 0x246F, 0x308F, // HIRAGANA LETTER WA
+ 0x2470, 0x3090, // HIRAGANA LETTER WI
+ 0x2471, 0x3091, // HIRAGANA LETTER WE
+ 0x2472, 0x3092, // HIRAGANA LETTER WO
+ 0x2473, 0x3093, // HIRAGANA LETTER N
+ 0x2521, 0x30A1, // KATAKANA LETTER SMALL A
+ 0x2522, 0x30A2, // KATAKANA LETTER A
+ 0x2523, 0x30A3, // KATAKANA LETTER SMALL I
+ 0x2524, 0x30A4, // KATAKANA LETTER I
+ 0x2525, 0x30A5, // KATAKANA LETTER SMALL U
+ 0x2526, 0x30A6, // KATAKANA LETTER U
+ 0x2527, 0x30A7, // KATAKANA LETTER SMALL E
+ 0x2528, 0x30A8, // KATAKANA LETTER E
+ 0x2529, 0x30A9, // KATAKANA LETTER SMALL O
+ 0x252A, 0x30AA, // KATAKANA LETTER O
+ 0x252B, 0x30AB, // KATAKANA LETTER KA
+ 0x252C, 0x30AC, // KATAKANA LETTER GA
+ 0x252D, 0x30AD, // KATAKANA LETTER KI
+ 0x252E, 0x30AE, // KATAKANA LETTER GI
+ 0x252F, 0x30AF, // KATAKANA LETTER KU
+ 0x2530, 0x30B0, // KATAKANA LETTER GU
+ 0x2531, 0x30B1, // KATAKANA LETTER KE
+ 0x2532, 0x30B2, // KATAKANA LETTER GE
+ 0x2533, 0x30B3, // KATAKANA LETTER KO
+ 0x2534, 0x30B4, // KATAKANA LETTER GO
+ 0x2535, 0x30B5, // KATAKANA LETTER SA
+ 0x2536, 0x30B6, // KATAKANA LETTER ZA
+ 0x2537, 0x30B7, // KATAKANA LETTER SI
+ 0x2538, 0x30B8, // KATAKANA LETTER ZI
+ 0x2539, 0x30B9, // KATAKANA LETTER SU
+ 0x253A, 0x30BA, // KATAKANA LETTER ZU
+ 0x253B, 0x30BB, // KATAKANA LETTER SE
+ 0x253C, 0x30BC, // KATAKANA LETTER ZE
+ 0x253D, 0x30BD, // KATAKANA LETTER SO
+ 0x253E, 0x30BE, // KATAKANA LETTER ZO
+ 0x253F, 0x30BF, // KATAKANA LETTER TA
+ 0x2540, 0x30C0, // KATAKANA LETTER DA
+ 0x2541, 0x30C1, // KATAKANA LETTER TI
+ 0x2542, 0x30C2, // KATAKANA LETTER DI
+ 0x2543, 0x30C3, // KATAKANA LETTER SMALL TU
+ 0x2544, 0x30C4, // KATAKANA LETTER TU
+ 0x2545, 0x30C5, // KATAKANA LETTER DU
+ 0x2546, 0x30C6, // KATAKANA LETTER TE
+ 0x2547, 0x30C7, // KATAKANA LETTER DE
+ 0x2548, 0x30C8, // KATAKANA LETTER TO
+ 0x2549, 0x30C9, // KATAKANA LETTER DO
+ 0x254A, 0x30CA, // KATAKANA LETTER NA
+ 0x254B, 0x30CB, // KATAKANA LETTER NI
+ 0x254C, 0x30CC, // KATAKANA LETTER NU
+ 0x254D, 0x30CD, // KATAKANA LETTER NE
+ 0x254E, 0x30CE, // KATAKANA LETTER NO
+ 0x254F, 0x30CF, // KATAKANA LETTER HA
+ 0x2550, 0x30D0, // KATAKANA LETTER BA
+ 0x2551, 0x30D1, // KATAKANA LETTER PA
+ 0x2552, 0x30D2, // KATAKANA LETTER HI
+ 0x2553, 0x30D3, // KATAKANA LETTER BI
+ 0x2554, 0x30D4, // KATAKANA LETTER PI
+ 0x2555, 0x30D5, // KATAKANA LETTER HU
+ 0x2556, 0x30D6, // KATAKANA LETTER BU
+ 0x2557, 0x30D7, // KATAKANA LETTER PU
+ 0x2558, 0x30D8, // KATAKANA LETTER HE
+ 0x2559, 0x30D9, // KATAKANA LETTER BE
+ 0x255A, 0x30DA, // KATAKANA LETTER PE
+ 0x255B, 0x30DB, // KATAKANA LETTER HO
+ 0x255C, 0x30DC, // KATAKANA LETTER BO
+ 0x255D, 0x30DD, // KATAKANA LETTER PO
+ 0x255E, 0x30DE, // KATAKANA LETTER MA
+ 0x255F, 0x30DF, // KATAKANA LETTER MI
+ 0x2560, 0x30E0, // KATAKANA LETTER MU
+ 0x2561, 0x30E1, // KATAKANA LETTER ME
+ 0x2562, 0x30E2, // KATAKANA LETTER MO
+ 0x2563, 0x30E3, // KATAKANA LETTER SMALL YA
+ 0x2564, 0x30E4, // KATAKANA LETTER YA
+ 0x2565, 0x30E5, // KATAKANA LETTER SMALL YU
+ 0x2566, 0x30E6, // KATAKANA LETTER YU
+ 0x2567, 0x30E7, // KATAKANA LETTER SMALL YO
+ 0x2568, 0x30E8, // KATAKANA LETTER YO
+ 0x2569, 0x30E9, // KATAKANA LETTER RA
+ 0x256A, 0x30EA, // KATAKANA LETTER RI
+ 0x256B, 0x30EB, // KATAKANA LETTER RU
+ 0x256C, 0x30EC, // KATAKANA LETTER RE
+ 0x256D, 0x30ED, // KATAKANA LETTER RO
+ 0x256E, 0x30EE, // KATAKANA LETTER SMALL WA
+ 0x256F, 0x30EF, // KATAKANA LETTER WA
+ 0x2570, 0x30F0, // KATAKANA LETTER WI
+ 0x2571, 0x30F1, // KATAKANA LETTER WE
+ 0x2572, 0x30F2, // KATAKANA LETTER WO
+ 0x2573, 0x30F3, // KATAKANA LETTER N
+ 0x2574, 0x30F4, // KATAKANA LETTER VU
+ 0x2575, 0x30F5, // KATAKANA LETTER SMALL KA
+ 0x2576, 0x30F6, // KATAKANA LETTER SMALL KE
+ 0x2621, 0x0391, // GREEK CAPITAL LETTER ALPHA
+ 0x2622, 0x0392, // GREEK CAPITAL LETTER BETA
+ 0x2623, 0x0393, // GREEK CAPITAL LETTER GAMMA
+ 0x2624, 0x0394, // GREEK CAPITAL LETTER DELTA
+ 0x2625, 0x0395, // GREEK CAPITAL LETTER EPSILON
+ 0x2626, 0x0396, // GREEK CAPITAL LETTER ZETA
+ 0x2627, 0x0397, // GREEK CAPITAL LETTER ETA
+ 0x2628, 0x0398, // GREEK CAPITAL LETTER THETA
+ 0x2629, 0x0399, // GREEK CAPITAL LETTER IOTA
+ 0x262A, 0x039A, // GREEK CAPITAL LETTER KAPPA
+ 0x262B, 0x039B, // GREEK CAPITAL LETTER LAMDA
+ 0x262C, 0x039C, // GREEK CAPITAL LETTER MU
+ 0x262D, 0x039D, // GREEK CAPITAL LETTER NU
+ 0x262E, 0x039E, // GREEK CAPITAL LETTER XI
+ 0x262F, 0x039F, // GREEK CAPITAL LETTER OMICRON
+ 0x2630, 0x03A0, // GREEK CAPITAL LETTER PI
+ 0x2631, 0x03A1, // GREEK CAPITAL LETTER RHO
+ 0x2632, 0x03A3, // GREEK CAPITAL LETTER SIGMA
+ 0x2633, 0x03A4, // GREEK CAPITAL LETTER TAU
+ 0x2634, 0x03A5, // GREEK CAPITAL LETTER UPSILON
+ 0x2635, 0x03A6, // GREEK CAPITAL LETTER PHI
+ 0x2636, 0x03A7, // GREEK CAPITAL LETTER CHI
+ 0x2637, 0x03A8, // GREEK CAPITAL LETTER PSI
+ 0x2638, 0x03A9, // GREEK CAPITAL LETTER OMEGA
+ 0x2641, 0x03B1, // GREEK SMALL LETTER ALPHA
+ 0x2642, 0x03B2, // GREEK SMALL LETTER BETA
+ 0x2643, 0x03B3, // GREEK SMALL LETTER GAMMA
+ 0x2644, 0x03B4, // GREEK SMALL LETTER DELTA
+ 0x2645, 0x03B5, // GREEK SMALL LETTER EPSILON
+ 0x2646, 0x03B6, // GREEK SMALL LETTER ZETA
+ 0x2647, 0x03B7, // GREEK SMALL LETTER ETA
+ 0x2648, 0x03B8, // GREEK SMALL LETTER THETA
+ 0x2649, 0x03B9, // GREEK SMALL LETTER IOTA
+ 0x264A, 0x03BA, // GREEK SMALL LETTER KAPPA
+ 0x264B, 0x03BB, // GREEK SMALL LETTER LAMDA
+ 0x264C, 0x03BC, // GREEK SMALL LETTER MU
+ 0x264D, 0x03BD, // GREEK SMALL LETTER NU
+ 0x264E, 0x03BE, // GREEK SMALL LETTER XI
+ 0x264F, 0x03BF, // GREEK SMALL LETTER OMICRON
+ 0x2650, 0x03C0, // GREEK SMALL LETTER PI
+ 0x2651, 0x03C1, // GREEK SMALL LETTER RHO
+ 0x2652, 0x03C3, // GREEK SMALL LETTER SIGMA
+ 0x2653, 0x03C4, // GREEK SMALL LETTER TAU
+ 0x2654, 0x03C5, // GREEK SMALL LETTER UPSILON
+ 0x2655, 0x03C6, // GREEK SMALL LETTER PHI
+ 0x2656, 0x03C7, // GREEK SMALL LETTER CHI
+ 0x2657, 0x03C8, // GREEK SMALL LETTER PSI
+ 0x2658, 0x03C9, // GREEK SMALL LETTER OMEGA
+ 0x2721, 0x0410, // CYRILLIC CAPITAL LETTER A
+ 0x2722, 0x0411, // CYRILLIC CAPITAL LETTER BE
+ 0x2723, 0x0412, // CYRILLIC CAPITAL LETTER VE
+ 0x2724, 0x0413, // CYRILLIC CAPITAL LETTER GHE
+ 0x2725, 0x0414, // CYRILLIC CAPITAL LETTER DE
+ 0x2726, 0x0415, // CYRILLIC CAPITAL LETTER IE
+ 0x2727, 0x0401, // CYRILLIC CAPITAL LETTER IO
+ 0x2728, 0x0416, // CYRILLIC CAPITAL LETTER ZHE
+ 0x2729, 0x0417, // CYRILLIC CAPITAL LETTER ZE
+ 0x272A, 0x0418, // CYRILLIC CAPITAL LETTER I
+ 0x272B, 0x0419, // CYRILLIC CAPITAL LETTER SHORT I
+ 0x272C, 0x041A, // CYRILLIC CAPITAL LETTER KA
+ 0x272D, 0x041B, // CYRILLIC CAPITAL LETTER EL
+ 0x272E, 0x041C, // CYRILLIC CAPITAL LETTER EM
+ 0x272F, 0x041D, // CYRILLIC CAPITAL LETTER EN
+ 0x2730, 0x041E, // CYRILLIC CAPITAL LETTER O
+ 0x2731, 0x041F, // CYRILLIC CAPITAL LETTER PE
+ 0x2732, 0x0420, // CYRILLIC CAPITAL LETTER ER
+ 0x2733, 0x0421, // CYRILLIC CAPITAL LETTER ES
+ 0x2734, 0x0422, // CYRILLIC CAPITAL LETTER TE
+ 0x2735, 0x0423, // CYRILLIC CAPITAL LETTER U
+ 0x2736, 0x0424, // CYRILLIC CAPITAL LETTER EF
+ 0x2737, 0x0425, // CYRILLIC CAPITAL LETTER HA
+ 0x2738, 0x0426, // CYRILLIC CAPITAL LETTER TSE
+ 0x2739, 0x0427, // CYRILLIC CAPITAL LETTER CHE
+ 0x273A, 0x0428, // CYRILLIC CAPITAL LETTER SHA
+ 0x273B, 0x0429, // CYRILLIC CAPITAL LETTER SHCHA
+ 0x273C, 0x042A, // CYRILLIC CAPITAL LETTER HARD SIGN
+ 0x273D, 0x042B, // CYRILLIC CAPITAL LETTER YERU
+ 0x273E, 0x042C, // CYRILLIC CAPITAL LETTER SOFT SIGN
+ 0x273F, 0x042D, // CYRILLIC CAPITAL LETTER E
+ 0x2740, 0x042E, // CYRILLIC CAPITAL LETTER YU
+ 0x2741, 0x042F, // CYRILLIC CAPITAL LETTER YA
+ 0x2751, 0x0430, // CYRILLIC SMALL LETTER A
+ 0x2752, 0x0431, // CYRILLIC SMALL LETTER BE
+ 0x2753, 0x0432, // CYRILLIC SMALL LETTER VE
+ 0x2754, 0x0433, // CYRILLIC SMALL LETTER GHE
+ 0x2755, 0x0434, // CYRILLIC SMALL LETTER DE
+ 0x2756, 0x0435, // CYRILLIC SMALL LETTER IE
+ 0x2757, 0x0451, // CYRILLIC SMALL LETTER IO
+ 0x2758, 0x0436, // CYRILLIC SMALL LETTER ZHE
+ 0x2759, 0x0437, // CYRILLIC SMALL LETTER ZE
+ 0x275A, 0x0438, // CYRILLIC SMALL LETTER I
+ 0x275B, 0x0439, // CYRILLIC SMALL LETTER SHORT I
+ 0x275C, 0x043A, // CYRILLIC SMALL LETTER KA
+ 0x275D, 0x043B, // CYRILLIC SMALL LETTER EL
+ 0x275E, 0x043C, // CYRILLIC SMALL LETTER EM
+ 0x275F, 0x043D, // CYRILLIC SMALL LETTER EN
+ 0x2760, 0x043E, // CYRILLIC SMALL LETTER O
+ 0x2761, 0x043F, // CYRILLIC SMALL LETTER PE
+ 0x2762, 0x0440, // CYRILLIC SMALL LETTER ER
+ 0x2763, 0x0441, // CYRILLIC SMALL LETTER ES
+ 0x2764, 0x0442, // CYRILLIC SMALL LETTER TE
+ 0x2765, 0x0443, // CYRILLIC SMALL LETTER U
+ 0x2766, 0x0444, // CYRILLIC SMALL LETTER EF
+ 0x2767, 0x0445, // CYRILLIC SMALL LETTER HA
+ 0x2768, 0x0446, // CYRILLIC SMALL LETTER TSE
+ 0x2769, 0x0447, // CYRILLIC SMALL LETTER CHE
+ 0x276A, 0x0448, // CYRILLIC SMALL LETTER SHA
+ 0x276B, 0x0449, // CYRILLIC SMALL LETTER SHCHA
+ 0x276C, 0x044A, // CYRILLIC SMALL LETTER HARD SIGN
+ 0x276D, 0x044B, // CYRILLIC SMALL LETTER YERU
+ 0x276E, 0x044C, // CYRILLIC SMALL LETTER SOFT SIGN
+ 0x276F, 0x044D, // CYRILLIC SMALL LETTER E
+ 0x2770, 0x044E, // CYRILLIC SMALL LETTER YU
+ 0x2771, 0x044F, // CYRILLIC SMALL LETTER YA
+ 0x2821, 0x2500, // BOX DRAWINGS LIGHT HORIZONTAL
+ 0x2822, 0x2502, // BOX DRAWINGS LIGHT VERTICAL
+ 0x2823, 0x250C, // BOX DRAWINGS LIGHT DOWN AND RIGHT
+ 0x2824, 0x2510, // BOX DRAWINGS LIGHT DOWN AND LEFT
+ 0x2825, 0x2518, // BOX DRAWINGS LIGHT UP AND LEFT
+ 0x2826, 0x2514, // BOX DRAWINGS LIGHT UP AND RIGHT
+ 0x2827, 0x251C, // BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+ 0x2828, 0x252C, // BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+ 0x2829, 0x2524, // BOX DRAWINGS LIGHT VERTICAL AND LEFT
+ 0x282A, 0x2534, // BOX DRAWINGS LIGHT UP AND HORIZONTAL
+ 0x282B, 0x253C, // BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+ 0x282C, 0x2501, // BOX DRAWINGS HEAVY HORIZONTAL
+ 0x282D, 0x2503, // BOX DRAWINGS HEAVY VERTICAL
+ 0x282E, 0x250F, // BOX DRAWINGS HEAVY DOWN AND RIGHT
+ 0x282F, 0x2513, // BOX DRAWINGS HEAVY DOWN AND LEFT
+ 0x2830, 0x251B, // BOX DRAWINGS HEAVY UP AND LEFT
+ 0x2831, 0x2517, // BOX DRAWINGS HEAVY UP AND RIGHT
+ 0x2832, 0x2523, // BOX DRAWINGS HEAVY VERTICAL AND RIGHT
+ 0x2833, 0x2533, // BOX DRAWINGS HEAVY DOWN AND HORIZONTAL
+ 0x2834, 0x252B, // BOX DRAWINGS HEAVY VERTICAL AND LEFT
+ 0x2835, 0x253B, // BOX DRAWINGS HEAVY UP AND HORIZONTAL
+ 0x2836, 0x254B, // BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL
+ 0x2837, 0x2520, // BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT
+ 0x2838, 0x252F, // BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY
+ 0x2839, 0x2528, // BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT
+ 0x283A, 0x2537, // BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY
+ 0x283B, 0x253F, // BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY
+ 0x283C, 0x251D, // BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY
+ 0x283D, 0x2530, // BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT
+ 0x283E, 0x2525, // BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY
+ 0x283F, 0x2538, // BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT
+ 0x2840, 0x2542, // BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT
+ 0x3021, 0x4E9C, // <CJK>
+ 0x3022, 0x5516, // <CJK>
+ 0x3023, 0x5A03, // <CJK>
+ 0x3024, 0x963F, // <CJK>
+ 0x3025, 0x54C0, // <CJK>
+ 0x3026, 0x611B, // <CJK>
+ 0x3027, 0x6328, // <CJK>
+ 0x3028, 0x59F6, // <CJK>
+ 0x3029, 0x9022, // <CJK>
+ 0x302A, 0x8475, // <CJK>
+ 0x302B, 0x831C, // <CJK>
+ 0x302C, 0x7A50, // <CJK>
+ 0x302D, 0x60AA, // <CJK>
+ 0x302E, 0x63E1, // <CJK>
+ 0x302F, 0x6E25, // <CJK>
+ 0x3030, 0x65ED, // <CJK>
+ 0x3031, 0x8466, // <CJK>
+ 0x3032, 0x82A6, // <CJK>
+ 0x3033, 0x9BF5, // <CJK>
+ 0x3034, 0x6893, // <CJK>
+ 0x3035, 0x5727, // <CJK>
+ 0x3036, 0x65A1, // <CJK>
+ 0x3037, 0x6271, // <CJK>
+ 0x3038, 0x5B9B, // <CJK>
+ 0x3039, 0x59D0, // <CJK>
+ 0x303A, 0x867B, // <CJK>
+ 0x303B, 0x98F4, // <CJK>
+ 0x303C, 0x7D62, // <CJK>
+ 0x303D, 0x7DBE, // <CJK>
+ 0x303E, 0x9B8E, // <CJK>
+ 0x303F, 0x6216, // <CJK>
+ 0x3040, 0x7C9F, // <CJK>
+ 0x3041, 0x88B7, // <CJK>
+ 0x3042, 0x5B89, // <CJK>
+ 0x3043, 0x5EB5, // <CJK>
+ 0x3044, 0x6309, // <CJK>
+ 0x3045, 0x6697, // <CJK>
+ 0x3046, 0x6848, // <CJK>
+ 0x3047, 0x95C7, // <CJK>
+ 0x3048, 0x978D, // <CJK>
+ 0x3049, 0x674F, // <CJK>
+ 0x304A, 0x4EE5, // <CJK>
+ 0x304B, 0x4F0A, // <CJK>
+ 0x304C, 0x4F4D, // <CJK>
+ 0x304D, 0x4F9D, // <CJK>
+ 0x304E, 0x5049, // <CJK>
+ 0x304F, 0x56F2, // <CJK>
+ 0x3050, 0x5937, // <CJK>
+ 0x3051, 0x59D4, // <CJK>
+ 0x3052, 0x5A01, // <CJK>
+ 0x3053, 0x5C09, // <CJK>
+ 0x3054, 0x60DF, // <CJK>
+ 0x3055, 0x610F, // <CJK>
+ 0x3056, 0x6170, // <CJK>
+ 0x3057, 0x6613, // <CJK>
+ 0x3058, 0x6905, // <CJK>
+ 0x3059, 0x70BA, // <CJK>
+ 0x305A, 0x754F, // <CJK>
+ 0x305B, 0x7570, // <CJK>
+ 0x305C, 0x79FB, // <CJK>
+ 0x305D, 0x7DAD, // <CJK>
+ 0x305E, 0x7DEF, // <CJK>
+ 0x305F, 0x80C3, // <CJK>
+ 0x3060, 0x840E, // <CJK>
+ 0x3061, 0x8863, // <CJK>
+ 0x3062, 0x8B02, // <CJK>
+ 0x3063, 0x9055, // <CJK>
+ 0x3064, 0x907A, // <CJK>
+ 0x3065, 0x533B, // <CJK>
+ 0x3066, 0x4E95, // <CJK>
+ 0x3067, 0x4EA5, // <CJK>
+ 0x3068, 0x57DF, // <CJK>
+ 0x3069, 0x80B2, // <CJK>
+ 0x306A, 0x90C1, // <CJK>
+ 0x306B, 0x78EF, // <CJK>
+ 0x306C, 0x4E00, // <CJK>
+ 0x306D, 0x58F1, // <CJK>
+ 0x306E, 0x6EA2, // <CJK>
+ 0x306F, 0x9038, // <CJK>
+ 0x3070, 0x7A32, // <CJK>
+ 0x3071, 0x8328, // <CJK>
+ 0x3072, 0x828B, // <CJK>
+ 0x3073, 0x9C2F, // <CJK>
+ 0x3074, 0x5141, // <CJK>
+ 0x3075, 0x5370, // <CJK>
+ 0x3076, 0x54BD, // <CJK>
+ 0x3077, 0x54E1, // <CJK>
+ 0x3078, 0x56E0, // <CJK>
+ 0x3079, 0x59FB, // <CJK>
+ 0x307A, 0x5F15, // <CJK>
+ 0x307B, 0x98F2, // <CJK>
+ 0x307C, 0x6DEB, // <CJK>
+ 0x307D, 0x80E4, // <CJK>
+ 0x307E, 0x852D, // <CJK>
+ 0x3121, 0x9662, // <CJK>
+ 0x3122, 0x9670, // <CJK>
+ 0x3123, 0x96A0, // <CJK>
+ 0x3124, 0x97FB, // <CJK>
+ 0x3125, 0x540B, // <CJK>
+ 0x3126, 0x53F3, // <CJK>
+ 0x3127, 0x5B87, // <CJK>
+ 0x3128, 0x70CF, // <CJK>
+ 0x3129, 0x7FBD, // <CJK>
+ 0x312A, 0x8FC2, // <CJK>
+ 0x312B, 0x96E8, // <CJK>
+ 0x312C, 0x536F, // <CJK>
+ 0x312D, 0x9D5C, // <CJK>
+ 0x312E, 0x7ABA, // <CJK>
+ 0x312F, 0x4E11, // <CJK>
+ 0x3130, 0x7893, // <CJK>
+ 0x3131, 0x81FC, // <CJK>
+ 0x3132, 0x6E26, // <CJK>
+ 0x3133, 0x5618, // <CJK>
+ 0x3134, 0x5504, // <CJK>
+ 0x3135, 0x6B1D, // <CJK>
+ 0x3136, 0x851A, // <CJK>
+ 0x3137, 0x9C3B, // <CJK>
+ 0x3138, 0x59E5, // <CJK>
+ 0x3139, 0x53A9, // <CJK>
+ 0x313A, 0x6D66, // <CJK>
+ 0x313B, 0x74DC, // <CJK>
+ 0x313C, 0x958F, // <CJK>
+ 0x313D, 0x5642, // <CJK>
+ 0x313E, 0x4E91, // <CJK>
+ 0x313F, 0x904B, // <CJK>
+ 0x3140, 0x96F2, // <CJK>
+ 0x3141, 0x834F, // <CJK>
+ 0x3142, 0x990C, // <CJK>
+ 0x3143, 0x53E1, // <CJK>
+ 0x3144, 0x55B6, // <CJK>
+ 0x3145, 0x5B30, // <CJK>
+ 0x3146, 0x5F71, // <CJK>
+ 0x3147, 0x6620, // <CJK>
+ 0x3148, 0x66F3, // <CJK>
+ 0x3149, 0x6804, // <CJK>
+ 0x314A, 0x6C38, // <CJK>
+ 0x314B, 0x6CF3, // <CJK>
+ 0x314C, 0x6D29, // <CJK>
+ 0x314D, 0x745B, // <CJK>
+ 0x314E, 0x76C8, // <CJK>
+ 0x314F, 0x7A4E, // <CJK>
+ 0x3150, 0x9834, // <CJK>
+ 0x3151, 0x82F1, // <CJK>
+ 0x3152, 0x885B, // <CJK>
+ 0x3153, 0x8A60, // <CJK>
+ 0x3154, 0x92ED, // <CJK>
+ 0x3155, 0x6DB2, // <CJK>
+ 0x3156, 0x75AB, // <CJK>
+ 0x3157, 0x76CA, // <CJK>
+ 0x3158, 0x99C5, // <CJK>
+ 0x3159, 0x60A6, // <CJK>
+ 0x315A, 0x8B01, // <CJK>
+ 0x315B, 0x8D8A, // <CJK>
+ 0x315C, 0x95B2, // <CJK>
+ 0x315D, 0x698E, // <CJK>
+ 0x315E, 0x53AD, // <CJK>
+ 0x315F, 0x5186, // <CJK>
+ 0x3160, 0x5712, // <CJK>
+ 0x3161, 0x5830, // <CJK>
+ 0x3162, 0x5944, // <CJK>
+ 0x3163, 0x5BB4, // <CJK>
+ 0x3164, 0x5EF6, // <CJK>
+ 0x3165, 0x6028, // <CJK>
+ 0x3166, 0x63A9, // <CJK>
+ 0x3167, 0x63F4, // <CJK>
+ 0x3168, 0x6CBF, // <CJK>
+ 0x3169, 0x6F14, // <CJK>
+ 0x316A, 0x708E, // <CJK>
+ 0x316B, 0x7114, // <CJK>
+ 0x316C, 0x7159, // <CJK>
+ 0x316D, 0x71D5, // <CJK>
+ 0x316E, 0x733F, // <CJK>
+ 0x316F, 0x7E01, // <CJK>
+ 0x3170, 0x8276, // <CJK>
+ 0x3171, 0x82D1, // <CJK>
+ 0x3172, 0x8597, // <CJK>
+ 0x3173, 0x9060, // <CJK>
+ 0x3174, 0x925B, // <CJK>
+ 0x3175, 0x9D1B, // <CJK>
+ 0x3176, 0x5869, // <CJK>
+ 0x3177, 0x65BC, // <CJK>
+ 0x3178, 0x6C5A, // <CJK>
+ 0x3179, 0x7525, // <CJK>
+ 0x317A, 0x51F9, // <CJK>
+ 0x317B, 0x592E, // <CJK>
+ 0x317C, 0x5965, // <CJK>
+ 0x317D, 0x5F80, // <CJK>
+ 0x317E, 0x5FDC, // <CJK>
+ 0x3221, 0x62BC, // <CJK>
+ 0x3222, 0x65FA, // <CJK>
+ 0x3223, 0x6A2A, // <CJK>
+ 0x3224, 0x6B27, // <CJK>
+ 0x3225, 0x6BB4, // <CJK>
+ 0x3226, 0x738B, // <CJK>
+ 0x3227, 0x7FC1, // <CJK>
+ 0x3228, 0x8956, // <CJK>
+ 0x3229, 0x9D2C, // <CJK>
+ 0x322A, 0x9D0E, // <CJK>
+ 0x322B, 0x9EC4, // <CJK>
+ 0x322C, 0x5CA1, // <CJK>
+ 0x322D, 0x6C96, // <CJK>
+ 0x322E, 0x837B, // <CJK>
+ 0x322F, 0x5104, // <CJK>
+ 0x3230, 0x5C4B, // <CJK>
+ 0x3231, 0x61B6, // <CJK>
+ 0x3232, 0x81C6, // <CJK>
+ 0x3233, 0x6876, // <CJK>
+ 0x3234, 0x7261, // <CJK>
+ 0x3235, 0x4E59, // <CJK>
+ 0x3236, 0x4FFA, // <CJK>
+ 0x3237, 0x5378, // <CJK>
+ 0x3238, 0x6069, // <CJK>
+ 0x3239, 0x6E29, // <CJK>
+ 0x323A, 0x7A4F, // <CJK>
+ 0x323B, 0x97F3, // <CJK>
+ 0x323C, 0x4E0B, // <CJK>
+ 0x323D, 0x5316, // <CJK>
+ 0x323E, 0x4EEE, // <CJK>
+ 0x323F, 0x4F55, // <CJK>
+ 0x3240, 0x4F3D, // <CJK>
+ 0x3241, 0x4FA1, // <CJK>
+ 0x3242, 0x4F73, // <CJK>
+ 0x3243, 0x52A0, // <CJK>
+ 0x3244, 0x53EF, // <CJK>
+ 0x3245, 0x5609, // <CJK>
+ 0x3246, 0x590F, // <CJK>
+ 0x3247, 0x5AC1, // <CJK>
+ 0x3248, 0x5BB6, // <CJK>
+ 0x3249, 0x5BE1, // <CJK>
+ 0x324A, 0x79D1, // <CJK>
+ 0x324B, 0x6687, // <CJK>
+ 0x324C, 0x679C, // <CJK>
+ 0x324D, 0x67B6, // <CJK>
+ 0x324E, 0x6B4C, // <CJK>
+ 0x324F, 0x6CB3, // <CJK>
+ 0x3250, 0x706B, // <CJK>
+ 0x3251, 0x73C2, // <CJK>
+ 0x3252, 0x798D, // <CJK>
+ 0x3253, 0x79BE, // <CJK>
+ 0x3254, 0x7A3C, // <CJK>
+ 0x3255, 0x7B87, // <CJK>
+ 0x3256, 0x82B1, // <CJK>
+ 0x3257, 0x82DB, // <CJK>
+ 0x3258, 0x8304, // <CJK>
+ 0x3259, 0x8377, // <CJK>
+ 0x325A, 0x83EF, // <CJK>
+ 0x325B, 0x83D3, // <CJK>
+ 0x325C, 0x8766, // <CJK>
+ 0x325D, 0x8AB2, // <CJK>
+ 0x325E, 0x5629, // <CJK>
+ 0x325F, 0x8CA8, // <CJK>
+ 0x3260, 0x8FE6, // <CJK>
+ 0x3261, 0x904E, // <CJK>
+ 0x3262, 0x971E, // <CJK>
+ 0x3263, 0x868A, // <CJK>
+ 0x3264, 0x4FC4, // <CJK>
+ 0x3265, 0x5CE8, // <CJK>
+ 0x3266, 0x6211, // <CJK>
+ 0x3267, 0x7259, // <CJK>
+ 0x3268, 0x753B, // <CJK>
+ 0x3269, 0x81E5, // <CJK>
+ 0x326A, 0x82BD, // <CJK>
+ 0x326B, 0x86FE, // <CJK>
+ 0x326C, 0x8CC0, // <CJK>
+ 0x326D, 0x96C5, // <CJK>
+ 0x326E, 0x9913, // <CJK>
+ 0x326F, 0x99D5, // <CJK>
+ 0x3270, 0x4ECB, // <CJK>
+ 0x3271, 0x4F1A, // <CJK>
+ 0x3272, 0x89E3, // <CJK>
+ 0x3273, 0x56DE, // <CJK>
+ 0x3274, 0x584A, // <CJK>
+ 0x3275, 0x58CA, // <CJK>
+ 0x3276, 0x5EFB, // <CJK>
+ 0x3277, 0x5FEB, // <CJK>
+ 0x3278, 0x602A, // <CJK>
+ 0x3279, 0x6094, // <CJK>
+ 0x327A, 0x6062, // <CJK>
+ 0x327B, 0x61D0, // <CJK>
+ 0x327C, 0x6212, // <CJK>
+ 0x327D, 0x62D0, // <CJK>
+ 0x327E, 0x6539, // <CJK>
+ 0x3321, 0x9B41, // <CJK>
+ 0x3322, 0x6666, // <CJK>
+ 0x3323, 0x68B0, // <CJK>
+ 0x3324, 0x6D77, // <CJK>
+ 0x3325, 0x7070, // <CJK>
+ 0x3326, 0x754C, // <CJK>
+ 0x3327, 0x7686, // <CJK>
+ 0x3328, 0x7D75, // <CJK>
+ 0x3329, 0x82A5, // <CJK>
+ 0x332A, 0x87F9, // <CJK>
+ 0x332B, 0x958B, // <CJK>
+ 0x332C, 0x968E, // <CJK>
+ 0x332D, 0x8C9D, // <CJK>
+ 0x332E, 0x51F1, // <CJK>
+ 0x332F, 0x52BE, // <CJK>
+ 0x3330, 0x5916, // <CJK>
+ 0x3331, 0x54B3, // <CJK>
+ 0x3332, 0x5BB3, // <CJK>
+ 0x3333, 0x5D16, // <CJK>
+ 0x3334, 0x6168, // <CJK>
+ 0x3335, 0x6982, // <CJK>
+ 0x3336, 0x6DAF, // <CJK>
+ 0x3337, 0x788D, // <CJK>
+ 0x3338, 0x84CB, // <CJK>
+ 0x3339, 0x8857, // <CJK>
+ 0x333A, 0x8A72, // <CJK>
+ 0x333B, 0x93A7, // <CJK>
+ 0x333C, 0x9AB8, // <CJK>
+ 0x333D, 0x6D6C, // <CJK>
+ 0x333E, 0x99A8, // <CJK>
+ 0x333F, 0x86D9, // <CJK>
+ 0x3340, 0x57A3, // <CJK>
+ 0x3341, 0x67FF, // <CJK>
+ 0x3342, 0x86CE, // <CJK>
+ 0x3343, 0x920E, // <CJK>
+ 0x3344, 0x5283, // <CJK>
+ 0x3345, 0x5687, // <CJK>
+ 0x3346, 0x5404, // <CJK>
+ 0x3347, 0x5ED3, // <CJK>
+ 0x3348, 0x62E1, // <CJK>
+ 0x3349, 0x64B9, // <CJK>
+ 0x334A, 0x683C, // <CJK>
+ 0x334B, 0x6838, // <CJK>
+ 0x334C, 0x6BBB, // <CJK>
+ 0x334D, 0x7372, // <CJK>
+ 0x334E, 0x78BA, // <CJK>
+ 0x334F, 0x7A6B, // <CJK>
+ 0x3350, 0x899A, // <CJK>
+ 0x3351, 0x89D2, // <CJK>
+ 0x3352, 0x8D6B, // <CJK>
+ 0x3353, 0x8F03, // <CJK>
+ 0x3354, 0x90ED, // <CJK>
+ 0x3355, 0x95A3, // <CJK>
+ 0x3356, 0x9694, // <CJK>
+ 0x3357, 0x9769, // <CJK>
+ 0x3358, 0x5B66, // <CJK>
+ 0x3359, 0x5CB3, // <CJK>
+ 0x335A, 0x697D, // <CJK>
+ 0x335B, 0x984D, // <CJK>
+ 0x335C, 0x984E, // <CJK>
+ 0x335D, 0x639B, // <CJK>
+ 0x335E, 0x7B20, // <CJK>
+ 0x335F, 0x6A2B, // <CJK>
+ 0x3360, 0x6A7F, // <CJK>
+ 0x3361, 0x68B6, // <CJK>
+ 0x3362, 0x9C0D, // <CJK>
+ 0x3363, 0x6F5F, // <CJK>
+ 0x3364, 0x5272, // <CJK>
+ 0x3365, 0x559D, // <CJK>
+ 0x3366, 0x6070, // <CJK>
+ 0x3367, 0x62EC, // <CJK>
+ 0x3368, 0x6D3B, // <CJK>
+ 0x3369, 0x6E07, // <CJK>
+ 0x336A, 0x6ED1, // <CJK>
+ 0x336B, 0x845B, // <CJK>
+ 0x336C, 0x8910, // <CJK>
+ 0x336D, 0x8F44, // <CJK>
+ 0x336E, 0x4E14, // <CJK>
+ 0x336F, 0x9C39, // <CJK>
+ 0x3370, 0x53F6, // <CJK>
+ 0x3371, 0x691B, // <CJK>
+ 0x3372, 0x6A3A, // <CJK>
+ 0x3373, 0x9784, // <CJK>
+ 0x3374, 0x682A, // <CJK>
+ 0x3375, 0x515C, // <CJK>
+ 0x3376, 0x7AC3, // <CJK>
+ 0x3377, 0x84B2, // <CJK>
+ 0x3378, 0x91DC, // <CJK>
+ 0x3379, 0x938C, // <CJK>
+ 0x337A, 0x565B, // <CJK>
+ 0x337B, 0x9D28, // <CJK>
+ 0x337C, 0x6822, // <CJK>
+ 0x337D, 0x8305, // <CJK>
+ 0x337E, 0x8431, // <CJK>
+ 0x3421, 0x7CA5, // <CJK>
+ 0x3422, 0x5208, // <CJK>
+ 0x3423, 0x82C5, // <CJK>
+ 0x3424, 0x74E6, // <CJK>
+ 0x3425, 0x4E7E, // <CJK>
+ 0x3426, 0x4F83, // <CJK>
+ 0x3427, 0x51A0, // <CJK>
+ 0x3428, 0x5BD2, // <CJK>
+ 0x3429, 0x520A, // <CJK>
+ 0x342A, 0x52D8, // <CJK>
+ 0x342B, 0x52E7, // <CJK>
+ 0x342C, 0x5DFB, // <CJK>
+ 0x342D, 0x559A, // <CJK>
+ 0x342E, 0x582A, // <CJK>
+ 0x342F, 0x59E6, // <CJK>
+ 0x3430, 0x5B8C, // <CJK>
+ 0x3431, 0x5B98, // <CJK>
+ 0x3432, 0x5BDB, // <CJK>
+ 0x3433, 0x5E72, // <CJK>
+ 0x3434, 0x5E79, // <CJK>
+ 0x3435, 0x60A3, // <CJK>
+ 0x3436, 0x611F, // <CJK>
+ 0x3437, 0x6163, // <CJK>
+ 0x3438, 0x61BE, // <CJK>
+ 0x3439, 0x63DB, // <CJK>
+ 0x343A, 0x6562, // <CJK>
+ 0x343B, 0x67D1, // <CJK>
+ 0x343C, 0x6853, // <CJK>
+ 0x343D, 0x68FA, // <CJK>
+ 0x343E, 0x6B3E, // <CJK>
+ 0x343F, 0x6B53, // <CJK>
+ 0x3440, 0x6C57, // <CJK>
+ 0x3441, 0x6F22, // <CJK>
+ 0x3442, 0x6F97, // <CJK>
+ 0x3443, 0x6F45, // <CJK>
+ 0x3444, 0x74B0, // <CJK>
+ 0x3445, 0x7518, // <CJK>
+ 0x3446, 0x76E3, // <CJK>
+ 0x3447, 0x770B, // <CJK>
+ 0x3448, 0x7AFF, // <CJK>
+ 0x3449, 0x7BA1, // <CJK>
+ 0x344A, 0x7C21, // <CJK>
+ 0x344B, 0x7DE9, // <CJK>
+ 0x344C, 0x7F36, // <CJK>
+ 0x344D, 0x7FF0, // <CJK>
+ 0x344E, 0x809D, // <CJK>
+ 0x344F, 0x8266, // <CJK>
+ 0x3450, 0x839E, // <CJK>
+ 0x3451, 0x89B3, // <CJK>
+ 0x3452, 0x8ACC, // <CJK>
+ 0x3453, 0x8CAB, // <CJK>
+ 0x3454, 0x9084, // <CJK>
+ 0x3455, 0x9451, // <CJK>
+ 0x3456, 0x9593, // <CJK>
+ 0x3457, 0x9591, // <CJK>
+ 0x3458, 0x95A2, // <CJK>
+ 0x3459, 0x9665, // <CJK>
+ 0x345A, 0x97D3, // <CJK>
+ 0x345B, 0x9928, // <CJK>
+ 0x345C, 0x8218, // <CJK>
+ 0x345D, 0x4E38, // <CJK>
+ 0x345E, 0x542B, // <CJK>
+ 0x345F, 0x5CB8, // <CJK>
+ 0x3460, 0x5DCC, // <CJK>
+ 0x3461, 0x73A9, // <CJK>
+ 0x3462, 0x764C, // <CJK>
+ 0x3463, 0x773C, // <CJK>
+ 0x3464, 0x5CA9, // <CJK>
+ 0x3465, 0x7FEB, // <CJK>
+ 0x3466, 0x8D0B, // <CJK>
+ 0x3467, 0x96C1, // <CJK>
+ 0x3468, 0x9811, // <CJK>
+ 0x3469, 0x9854, // <CJK>
+ 0x346A, 0x9858, // <CJK>
+ 0x346B, 0x4F01, // <CJK>
+ 0x346C, 0x4F0E, // <CJK>
+ 0x346D, 0x5371, // <CJK>
+ 0x346E, 0x559C, // <CJK>
+ 0x346F, 0x5668, // <CJK>
+ 0x3470, 0x57FA, // <CJK>
+ 0x3471, 0x5947, // <CJK>
+ 0x3472, 0x5B09, // <CJK>
+ 0x3473, 0x5BC4, // <CJK>
+ 0x3474, 0x5C90, // <CJK>
+ 0x3475, 0x5E0C, // <CJK>
+ 0x3476, 0x5E7E, // <CJK>
+ 0x3477, 0x5FCC, // <CJK>
+ 0x3478, 0x63EE, // <CJK>
+ 0x3479, 0x673A, // <CJK>
+ 0x347A, 0x65D7, // <CJK>
+ 0x347B, 0x65E2, // <CJK>
+ 0x347C, 0x671F, // <CJK>
+ 0x347D, 0x68CB, // <CJK>
+ 0x347E, 0x68C4, // <CJK>
+ 0x3521, 0x6A5F, // <CJK>
+ 0x3522, 0x5E30, // <CJK>
+ 0x3523, 0x6BC5, // <CJK>
+ 0x3524, 0x6C17, // <CJK>
+ 0x3525, 0x6C7D, // <CJK>
+ 0x3526, 0x757F, // <CJK>
+ 0x3527, 0x7948, // <CJK>
+ 0x3528, 0x5B63, // <CJK>
+ 0x3529, 0x7A00, // <CJK>
+ 0x352A, 0x7D00, // <CJK>
+ 0x352B, 0x5FBD, // <CJK>
+ 0x352C, 0x898F, // <CJK>
+ 0x352D, 0x8A18, // <CJK>
+ 0x352E, 0x8CB4, // <CJK>
+ 0x352F, 0x8D77, // <CJK>
+ 0x3530, 0x8ECC, // <CJK>
+ 0x3531, 0x8F1D, // <CJK>
+ 0x3532, 0x98E2, // <CJK>
+ 0x3533, 0x9A0E, // <CJK>
+ 0x3534, 0x9B3C, // <CJK>
+ 0x3535, 0x4E80, // <CJK>
+ 0x3536, 0x507D, // <CJK>
+ 0x3537, 0x5100, // <CJK>
+ 0x3538, 0x5993, // <CJK>
+ 0x3539, 0x5B9C, // <CJK>
+ 0x353A, 0x622F, // <CJK>
+ 0x353B, 0x6280, // <CJK>
+ 0x353C, 0x64EC, // <CJK>
+ 0x353D, 0x6B3A, // <CJK>
+ 0x353E, 0x72A0, // <CJK>
+ 0x353F, 0x7591, // <CJK>
+ 0x3540, 0x7947, // <CJK>
+ 0x3541, 0x7FA9, // <CJK>
+ 0x3542, 0x87FB, // <CJK>
+ 0x3543, 0x8ABC, // <CJK>
+ 0x3544, 0x8B70, // <CJK>
+ 0x3545, 0x63AC, // <CJK>
+ 0x3546, 0x83CA, // <CJK>
+ 0x3547, 0x97A0, // <CJK>
+ 0x3548, 0x5409, // <CJK>
+ 0x3549, 0x5403, // <CJK>
+ 0x354A, 0x55AB, // <CJK>
+ 0x354B, 0x6854, // <CJK>
+ 0x354C, 0x6A58, // <CJK>
+ 0x354D, 0x8A70, // <CJK>
+ 0x354E, 0x7827, // <CJK>
+ 0x354F, 0x6775, // <CJK>
+ 0x3550, 0x9ECD, // <CJK>
+ 0x3551, 0x5374, // <CJK>
+ 0x3552, 0x5BA2, // <CJK>
+ 0x3553, 0x811A, // <CJK>
+ 0x3554, 0x8650, // <CJK>
+ 0x3555, 0x9006, // <CJK>
+ 0x3556, 0x4E18, // <CJK>
+ 0x3557, 0x4E45, // <CJK>
+ 0x3558, 0x4EC7, // <CJK>
+ 0x3559, 0x4F11, // <CJK>
+ 0x355A, 0x53CA, // <CJK>
+ 0x355B, 0x5438, // <CJK>
+ 0x355C, 0x5BAE, // <CJK>
+ 0x355D, 0x5F13, // <CJK>
+ 0x355E, 0x6025, // <CJK>
+ 0x355F, 0x6551, // <CJK>
+ 0x3560, 0x673D, // <CJK>
+ 0x3561, 0x6C42, // <CJK>
+ 0x3562, 0x6C72, // <CJK>
+ 0x3563, 0x6CE3, // <CJK>
+ 0x3564, 0x7078, // <CJK>
+ 0x3565, 0x7403, // <CJK>
+ 0x3566, 0x7A76, // <CJK>
+ 0x3567, 0x7AAE, // <CJK>
+ 0x3568, 0x7B08, // <CJK>
+ 0x3569, 0x7D1A, // <CJK>
+ 0x356A, 0x7CFE, // <CJK>
+ 0x356B, 0x7D66, // <CJK>
+ 0x356C, 0x65E7, // <CJK>
+ 0x356D, 0x725B, // <CJK>
+ 0x356E, 0x53BB, // <CJK>
+ 0x356F, 0x5C45, // <CJK>
+ 0x3570, 0x5DE8, // <CJK>
+ 0x3571, 0x62D2, // <CJK>
+ 0x3572, 0x62E0, // <CJK>
+ 0x3573, 0x6319, // <CJK>
+ 0x3574, 0x6E20, // <CJK>
+ 0x3575, 0x865A, // <CJK>
+ 0x3576, 0x8A31, // <CJK>
+ 0x3577, 0x8DDD, // <CJK>
+ 0x3578, 0x92F8, // <CJK>
+ 0x3579, 0x6F01, // <CJK>
+ 0x357A, 0x79A6, // <CJK>
+ 0x357B, 0x9B5A, // <CJK>
+ 0x357C, 0x4EA8, // <CJK>
+ 0x357D, 0x4EAB, // <CJK>
+ 0x357E, 0x4EAC, // <CJK>
+ 0x3621, 0x4F9B, // <CJK>
+ 0x3622, 0x4FA0, // <CJK>
+ 0x3623, 0x50D1, // <CJK>
+ 0x3624, 0x5147, // <CJK>
+ 0x3625, 0x7AF6, // <CJK>
+ 0x3626, 0x5171, // <CJK>
+ 0x3627, 0x51F6, // <CJK>
+ 0x3628, 0x5354, // <CJK>
+ 0x3629, 0x5321, // <CJK>
+ 0x362A, 0x537F, // <CJK>
+ 0x362B, 0x53EB, // <CJK>
+ 0x362C, 0x55AC, // <CJK>
+ 0x362D, 0x5883, // <CJK>
+ 0x362E, 0x5CE1, // <CJK>
+ 0x362F, 0x5F37, // <CJK>
+ 0x3630, 0x5F4A, // <CJK>
+ 0x3631, 0x602F, // <CJK>
+ 0x3632, 0x6050, // <CJK>
+ 0x3633, 0x606D, // <CJK>
+ 0x3634, 0x631F, // <CJK>
+ 0x3635, 0x6559, // <CJK>
+ 0x3636, 0x6A4B, // <CJK>
+ 0x3637, 0x6CC1, // <CJK>
+ 0x3638, 0x72C2, // <CJK>
+ 0x3639, 0x72ED, // <CJK>
+ 0x363A, 0x77EF, // <CJK>
+ 0x363B, 0x80F8, // <CJK>
+ 0x363C, 0x8105, // <CJK>
+ 0x363D, 0x8208, // <CJK>
+ 0x363E, 0x854E, // <CJK>
+ 0x363F, 0x90F7, // <CJK>
+ 0x3640, 0x93E1, // <CJK>
+ 0x3641, 0x97FF, // <CJK>
+ 0x3642, 0x9957, // <CJK>
+ 0x3643, 0x9A5A, // <CJK>
+ 0x3644, 0x4EF0, // <CJK>
+ 0x3645, 0x51DD, // <CJK>
+ 0x3646, 0x5C2D, // <CJK>
+ 0x3647, 0x6681, // <CJK>
+ 0x3648, 0x696D, // <CJK>
+ 0x3649, 0x5C40, // <CJK>
+ 0x364A, 0x66F2, // <CJK>
+ 0x364B, 0x6975, // <CJK>
+ 0x364C, 0x7389, // <CJK>
+ 0x364D, 0x6850, // <CJK>
+ 0x364E, 0x7C81, // <CJK>
+ 0x364F, 0x50C5, // <CJK>
+ 0x3650, 0x52E4, // <CJK>
+ 0x3651, 0x5747, // <CJK>
+ 0x3652, 0x5DFE, // <CJK>
+ 0x3653, 0x9326, // <CJK>
+ 0x3654, 0x65A4, // <CJK>
+ 0x3655, 0x6B23, // <CJK>
+ 0x3656, 0x6B3D, // <CJK>
+ 0x3657, 0x7434, // <CJK>
+ 0x3658, 0x7981, // <CJK>
+ 0x3659, 0x79BD, // <CJK>
+ 0x365A, 0x7B4B, // <CJK>
+ 0x365B, 0x7DCA, // <CJK>
+ 0x365C, 0x82B9, // <CJK>
+ 0x365D, 0x83CC, // <CJK>
+ 0x365E, 0x887F, // <CJK>
+ 0x365F, 0x895F, // <CJK>
+ 0x3660, 0x8B39, // <CJK>
+ 0x3661, 0x8FD1, // <CJK>
+ 0x3662, 0x91D1, // <CJK>
+ 0x3663, 0x541F, // <CJK>
+ 0x3664, 0x9280, // <CJK>
+ 0x3665, 0x4E5D, // <CJK>
+ 0x3666, 0x5036, // <CJK>
+ 0x3667, 0x53E5, // <CJK>
+ 0x3668, 0x533A, // <CJK>
+ 0x3669, 0x72D7, // <CJK>
+ 0x366A, 0x7396, // <CJK>
+ 0x366B, 0x77E9, // <CJK>
+ 0x366C, 0x82E6, // <CJK>
+ 0x366D, 0x8EAF, // <CJK>
+ 0x366E, 0x99C6, // <CJK>
+ 0x366F, 0x99C8, // <CJK>
+ 0x3670, 0x99D2, // <CJK>
+ 0x3671, 0x5177, // <CJK>
+ 0x3672, 0x611A, // <CJK>
+ 0x3673, 0x865E, // <CJK>
+ 0x3674, 0x55B0, // <CJK>
+ 0x3675, 0x7A7A, // <CJK>
+ 0x3676, 0x5076, // <CJK>
+ 0x3677, 0x5BD3, // <CJK>
+ 0x3678, 0x9047, // <CJK>
+ 0x3679, 0x9685, // <CJK>
+ 0x367A, 0x4E32, // <CJK>
+ 0x367B, 0x6ADB, // <CJK>
+ 0x367C, 0x91E7, // <CJK>
+ 0x367D, 0x5C51, // <CJK>
+ 0x367E, 0x5C48, // <CJK>
+ 0x3721, 0x6398, // <CJK>
+ 0x3722, 0x7A9F, // <CJK>
+ 0x3723, 0x6C93, // <CJK>
+ 0x3724, 0x9774, // <CJK>
+ 0x3725, 0x8F61, // <CJK>
+ 0x3726, 0x7AAA, // <CJK>
+ 0x3727, 0x718A, // <CJK>
+ 0x3728, 0x9688, // <CJK>
+ 0x3729, 0x7C82, // <CJK>
+ 0x372A, 0x6817, // <CJK>
+ 0x372B, 0x7E70, // <CJK>
+ 0x372C, 0x6851, // <CJK>
+ 0x372D, 0x936C, // <CJK>
+ 0x372E, 0x52F2, // <CJK>
+ 0x372F, 0x541B, // <CJK>
+ 0x3730, 0x85AB, // <CJK>
+ 0x3731, 0x8A13, // <CJK>
+ 0x3732, 0x7FA4, // <CJK>
+ 0x3733, 0x8ECD, // <CJK>
+ 0x3734, 0x90E1, // <CJK>
+ 0x3735, 0x5366, // <CJK>
+ 0x3736, 0x8888, // <CJK>
+ 0x3737, 0x7941, // <CJK>
+ 0x3738, 0x4FC2, // <CJK>
+ 0x3739, 0x50BE, // <CJK>
+ 0x373A, 0x5211, // <CJK>
+ 0x373B, 0x5144, // <CJK>
+ 0x373C, 0x5553, // <CJK>
+ 0x373D, 0x572D, // <CJK>
+ 0x373E, 0x73EA, // <CJK>
+ 0x373F, 0x578B, // <CJK>
+ 0x3740, 0x5951, // <CJK>
+ 0x3741, 0x5F62, // <CJK>
+ 0x3742, 0x5F84, // <CJK>
+ 0x3743, 0x6075, // <CJK>
+ 0x3744, 0x6176, // <CJK>
+ 0x3745, 0x6167, // <CJK>
+ 0x3746, 0x61A9, // <CJK>
+ 0x3747, 0x63B2, // <CJK>
+ 0x3748, 0x643A, // <CJK>
+ 0x3749, 0x656C, // <CJK>
+ 0x374A, 0x666F, // <CJK>
+ 0x374B, 0x6842, // <CJK>
+ 0x374C, 0x6E13, // <CJK>
+ 0x374D, 0x7566, // <CJK>
+ 0x374E, 0x7A3D, // <CJK>
+ 0x374F, 0x7CFB, // <CJK>
+ 0x3750, 0x7D4C, // <CJK>
+ 0x3751, 0x7D99, // <CJK>
+ 0x3752, 0x7E4B, // <CJK>
+ 0x3753, 0x7F6B, // <CJK>
+ 0x3754, 0x830E, // <CJK>
+ 0x3755, 0x834A, // <CJK>
+ 0x3756, 0x86CD, // <CJK>
+ 0x3757, 0x8A08, // <CJK>
+ 0x3758, 0x8A63, // <CJK>
+ 0x3759, 0x8B66, // <CJK>
+ 0x375A, 0x8EFD, // <CJK>
+ 0x375B, 0x981A, // <CJK>
+ 0x375C, 0x9D8F, // <CJK>
+ 0x375D, 0x82B8, // <CJK>
+ 0x375E, 0x8FCE, // <CJK>
+ 0x375F, 0x9BE8, // <CJK>
+ 0x3760, 0x5287, // <CJK>
+ 0x3761, 0x621F, // <CJK>
+ 0x3762, 0x6483, // <CJK>
+ 0x3763, 0x6FC0, // <CJK>
+ 0x3764, 0x9699, // <CJK>
+ 0x3765, 0x6841, // <CJK>
+ 0x3766, 0x5091, // <CJK>
+ 0x3767, 0x6B20, // <CJK>
+ 0x3768, 0x6C7A, // <CJK>
+ 0x3769, 0x6F54, // <CJK>
+ 0x376A, 0x7A74, // <CJK>
+ 0x376B, 0x7D50, // <CJK>
+ 0x376C, 0x8840, // <CJK>
+ 0x376D, 0x8A23, // <CJK>
+ 0x376E, 0x6708, // <CJK>
+ 0x376F, 0x4EF6, // <CJK>
+ 0x3770, 0x5039, // <CJK>
+ 0x3771, 0x5026, // <CJK>
+ 0x3772, 0x5065, // <CJK>
+ 0x3773, 0x517C, // <CJK>
+ 0x3774, 0x5238, // <CJK>
+ 0x3775, 0x5263, // <CJK>
+ 0x3776, 0x55A7, // <CJK>
+ 0x3777, 0x570F, // <CJK>
+ 0x3778, 0x5805, // <CJK>
+ 0x3779, 0x5ACC, // <CJK>
+ 0x377A, 0x5EFA, // <CJK>
+ 0x377B, 0x61B2, // <CJK>
+ 0x377C, 0x61F8, // <CJK>
+ 0x377D, 0x62F3, // <CJK>
+ 0x377E, 0x6372, // <CJK>
+ 0x3821, 0x691C, // <CJK>
+ 0x3822, 0x6A29, // <CJK>
+ 0x3823, 0x727D, // <CJK>
+ 0x3824, 0x72AC, // <CJK>
+ 0x3825, 0x732E, // <CJK>
+ 0x3826, 0x7814, // <CJK>
+ 0x3827, 0x786F, // <CJK>
+ 0x3828, 0x7D79, // <CJK>
+ 0x3829, 0x770C, // <CJK>
+ 0x382A, 0x80A9, // <CJK>
+ 0x382B, 0x898B, // <CJK>
+ 0x382C, 0x8B19, // <CJK>
+ 0x382D, 0x8CE2, // <CJK>
+ 0x382E, 0x8ED2, // <CJK>
+ 0x382F, 0x9063, // <CJK>
+ 0x3830, 0x9375, // <CJK>
+ 0x3831, 0x967A, // <CJK>
+ 0x3832, 0x9855, // <CJK>
+ 0x3833, 0x9A13, // <CJK>
+ 0x3834, 0x9E78, // <CJK>
+ 0x3835, 0x5143, // <CJK>
+ 0x3836, 0x539F, // <CJK>
+ 0x3837, 0x53B3, // <CJK>
+ 0x3838, 0x5E7B, // <CJK>
+ 0x3839, 0x5F26, // <CJK>
+ 0x383A, 0x6E1B, // <CJK>
+ 0x383B, 0x6E90, // <CJK>
+ 0x383C, 0x7384, // <CJK>
+ 0x383D, 0x73FE, // <CJK>
+ 0x383E, 0x7D43, // <CJK>
+ 0x383F, 0x8237, // <CJK>
+ 0x3840, 0x8A00, // <CJK>
+ 0x3841, 0x8AFA, // <CJK>
+ 0x3842, 0x9650, // <CJK>
+ 0x3843, 0x4E4E, // <CJK>
+ 0x3844, 0x500B, // <CJK>
+ 0x3845, 0x53E4, // <CJK>
+ 0x3846, 0x547C, // <CJK>
+ 0x3847, 0x56FA, // <CJK>
+ 0x3848, 0x59D1, // <CJK>
+ 0x3849, 0x5B64, // <CJK>
+ 0x384A, 0x5DF1, // <CJK>
+ 0x384B, 0x5EAB, // <CJK>
+ 0x384C, 0x5F27, // <CJK>
+ 0x384D, 0x6238, // <CJK>
+ 0x384E, 0x6545, // <CJK>
+ 0x384F, 0x67AF, // <CJK>
+ 0x3850, 0x6E56, // <CJK>
+ 0x3851, 0x72D0, // <CJK>
+ 0x3852, 0x7CCA, // <CJK>
+ 0x3853, 0x88B4, // <CJK>
+ 0x3854, 0x80A1, // <CJK>
+ 0x3855, 0x80E1, // <CJK>
+ 0x3856, 0x83F0, // <CJK>
+ 0x3857, 0x864E, // <CJK>
+ 0x3858, 0x8A87, // <CJK>
+ 0x3859, 0x8DE8, // <CJK>
+ 0x385A, 0x9237, // <CJK>
+ 0x385B, 0x96C7, // <CJK>
+ 0x385C, 0x9867, // <CJK>
+ 0x385D, 0x9F13, // <CJK>
+ 0x385E, 0x4E94, // <CJK>
+ 0x385F, 0x4E92, // <CJK>
+ 0x3860, 0x4F0D, // <CJK>
+ 0x3861, 0x5348, // <CJK>
+ 0x3862, 0x5449, // <CJK>
+ 0x3863, 0x543E, // <CJK>
+ 0x3864, 0x5A2F, // <CJK>
+ 0x3865, 0x5F8C, // <CJK>
+ 0x3866, 0x5FA1, // <CJK>
+ 0x3867, 0x609F, // <CJK>
+ 0x3868, 0x68A7, // <CJK>
+ 0x3869, 0x6A8E, // <CJK>
+ 0x386A, 0x745A, // <CJK>
+ 0x386B, 0x7881, // <CJK>
+ 0x386C, 0x8A9E, // <CJK>
+ 0x386D, 0x8AA4, // <CJK>
+ 0x386E, 0x8B77, // <CJK>
+ 0x386F, 0x9190, // <CJK>
+ 0x3870, 0x4E5E, // <CJK>
+ 0x3871, 0x9BC9, // <CJK>
+ 0x3872, 0x4EA4, // <CJK>
+ 0x3873, 0x4F7C, // <CJK>
+ 0x3874, 0x4FAF, // <CJK>
+ 0x3875, 0x5019, // <CJK>
+ 0x3876, 0x5016, // <CJK>
+ 0x3877, 0x5149, // <CJK>
+ 0x3878, 0x516C, // <CJK>
+ 0x3879, 0x529F, // <CJK>
+ 0x387A, 0x52B9, // <CJK>
+ 0x387B, 0x52FE, // <CJK>
+ 0x387C, 0x539A, // <CJK>
+ 0x387D, 0x53E3, // <CJK>
+ 0x387E, 0x5411, // <CJK>
+ 0x3921, 0x540E, // <CJK>
+ 0x3922, 0x5589, // <CJK>
+ 0x3923, 0x5751, // <CJK>
+ 0x3924, 0x57A2, // <CJK>
+ 0x3925, 0x597D, // <CJK>
+ 0x3926, 0x5B54, // <CJK>
+ 0x3927, 0x5B5D, // <CJK>
+ 0x3928, 0x5B8F, // <CJK>
+ 0x3929, 0x5DE5, // <CJK>
+ 0x392A, 0x5DE7, // <CJK>
+ 0x392B, 0x5DF7, // <CJK>
+ 0x392C, 0x5E78, // <CJK>
+ 0x392D, 0x5E83, // <CJK>
+ 0x392E, 0x5E9A, // <CJK>
+ 0x392F, 0x5EB7, // <CJK>
+ 0x3930, 0x5F18, // <CJK>
+ 0x3931, 0x6052, // <CJK>
+ 0x3932, 0x614C, // <CJK>
+ 0x3933, 0x6297, // <CJK>
+ 0x3934, 0x62D8, // <CJK>
+ 0x3935, 0x63A7, // <CJK>
+ 0x3936, 0x653B, // <CJK>
+ 0x3937, 0x6602, // <CJK>
+ 0x3938, 0x6643, // <CJK>
+ 0x3939, 0x66F4, // <CJK>
+ 0x393A, 0x676D, // <CJK>
+ 0x393B, 0x6821, // <CJK>
+ 0x393C, 0x6897, // <CJK>
+ 0x393D, 0x69CB, // <CJK>
+ 0x393E, 0x6C5F, // <CJK>
+ 0x393F, 0x6D2A, // <CJK>
+ 0x3940, 0x6D69, // <CJK>
+ 0x3941, 0x6E2F, // <CJK>
+ 0x3942, 0x6E9D, // <CJK>
+ 0x3943, 0x7532, // <CJK>
+ 0x3944, 0x7687, // <CJK>
+ 0x3945, 0x786C, // <CJK>
+ 0x3946, 0x7A3F, // <CJK>
+ 0x3947, 0x7CE0, // <CJK>
+ 0x3948, 0x7D05, // <CJK>
+ 0x3949, 0x7D18, // <CJK>
+ 0x394A, 0x7D5E, // <CJK>
+ 0x394B, 0x7DB1, // <CJK>
+ 0x394C, 0x8015, // <CJK>
+ 0x394D, 0x8003, // <CJK>
+ 0x394E, 0x80AF, // <CJK>
+ 0x394F, 0x80B1, // <CJK>
+ 0x3950, 0x8154, // <CJK>
+ 0x3951, 0x818F, // <CJK>
+ 0x3952, 0x822A, // <CJK>
+ 0x3953, 0x8352, // <CJK>
+ 0x3954, 0x884C, // <CJK>
+ 0x3955, 0x8861, // <CJK>
+ 0x3956, 0x8B1B, // <CJK>
+ 0x3957, 0x8CA2, // <CJK>
+ 0x3958, 0x8CFC, // <CJK>
+ 0x3959, 0x90CA, // <CJK>
+ 0x395A, 0x9175, // <CJK>
+ 0x395B, 0x9271, // <CJK>
+ 0x395C, 0x783F, // <CJK>
+ 0x395D, 0x92FC, // <CJK>
+ 0x395E, 0x95A4, // <CJK>
+ 0x395F, 0x964D, // <CJK>
+ 0x3960, 0x9805, // <CJK>
+ 0x3961, 0x9999, // <CJK>
+ 0x3962, 0x9AD8, // <CJK>
+ 0x3963, 0x9D3B, // <CJK>
+ 0x3964, 0x525B, // <CJK>
+ 0x3965, 0x52AB, // <CJK>
+ 0x3966, 0x53F7, // <CJK>
+ 0x3967, 0x5408, // <CJK>
+ 0x3968, 0x58D5, // <CJK>
+ 0x3969, 0x62F7, // <CJK>
+ 0x396A, 0x6FE0, // <CJK>
+ 0x396B, 0x8C6A, // <CJK>
+ 0x396C, 0x8F5F, // <CJK>
+ 0x396D, 0x9EB9, // <CJK>
+ 0x396E, 0x514B, // <CJK>
+ 0x396F, 0x523B, // <CJK>
+ 0x3970, 0x544A, // <CJK>
+ 0x3971, 0x56FD, // <CJK>
+ 0x3972, 0x7A40, // <CJK>
+ 0x3973, 0x9177, // <CJK>
+ 0x3974, 0x9D60, // <CJK>
+ 0x3975, 0x9ED2, // <CJK>
+ 0x3976, 0x7344, // <CJK>
+ 0x3977, 0x6F09, // <CJK>
+ 0x3978, 0x8170, // <CJK>
+ 0x3979, 0x7511, // <CJK>
+ 0x397A, 0x5FFD, // <CJK>
+ 0x397B, 0x60DA, // <CJK>
+ 0x397C, 0x9AA8, // <CJK>
+ 0x397D, 0x72DB, // <CJK>
+ 0x397E, 0x8FBC, // <CJK>
+ 0x3A21, 0x6B64, // <CJK>
+ 0x3A22, 0x9803, // <CJK>
+ 0x3A23, 0x4ECA, // <CJK>
+ 0x3A24, 0x56F0, // <CJK>
+ 0x3A25, 0x5764, // <CJK>
+ 0x3A26, 0x58BE, // <CJK>
+ 0x3A27, 0x5A5A, // <CJK>
+ 0x3A28, 0x6068, // <CJK>
+ 0x3A29, 0x61C7, // <CJK>
+ 0x3A2A, 0x660F, // <CJK>
+ 0x3A2B, 0x6606, // <CJK>
+ 0x3A2C, 0x6839, // <CJK>
+ 0x3A2D, 0x68B1, // <CJK>
+ 0x3A2E, 0x6DF7, // <CJK>
+ 0x3A2F, 0x75D5, // <CJK>
+ 0x3A30, 0x7D3A, // <CJK>
+ 0x3A31, 0x826E, // <CJK>
+ 0x3A32, 0x9B42, // <CJK>
+ 0x3A33, 0x4E9B, // <CJK>
+ 0x3A34, 0x4F50, // <CJK>
+ 0x3A35, 0x53C9, // <CJK>
+ 0x3A36, 0x5506, // <CJK>
+ 0x3A37, 0x5D6F, // <CJK>
+ 0x3A38, 0x5DE6, // <CJK>
+ 0x3A39, 0x5DEE, // <CJK>
+ 0x3A3A, 0x67FB, // <CJK>
+ 0x3A3B, 0x6C99, // <CJK>
+ 0x3A3C, 0x7473, // <CJK>
+ 0x3A3D, 0x7802, // <CJK>
+ 0x3A3E, 0x8A50, // <CJK>
+ 0x3A3F, 0x9396, // <CJK>
+ 0x3A40, 0x88DF, // <CJK>
+ 0x3A41, 0x5750, // <CJK>
+ 0x3A42, 0x5EA7, // <CJK>
+ 0x3A43, 0x632B, // <CJK>
+ 0x3A44, 0x50B5, // <CJK>
+ 0x3A45, 0x50AC, // <CJK>
+ 0x3A46, 0x518D, // <CJK>
+ 0x3A47, 0x6700, // <CJK>
+ 0x3A48, 0x54C9, // <CJK>
+ 0x3A49, 0x585E, // <CJK>
+ 0x3A4A, 0x59BB, // <CJK>
+ 0x3A4B, 0x5BB0, // <CJK>
+ 0x3A4C, 0x5F69, // <CJK>
+ 0x3A4D, 0x624D, // <CJK>
+ 0x3A4E, 0x63A1, // <CJK>
+ 0x3A4F, 0x683D, // <CJK>
+ 0x3A50, 0x6B73, // <CJK>
+ 0x3A51, 0x6E08, // <CJK>
+ 0x3A52, 0x707D, // <CJK>
+ 0x3A53, 0x91C7, // <CJK>
+ 0x3A54, 0x7280, // <CJK>
+ 0x3A55, 0x7815, // <CJK>
+ 0x3A56, 0x7826, // <CJK>
+ 0x3A57, 0x796D, // <CJK>
+ 0x3A58, 0x658E, // <CJK>
+ 0x3A59, 0x7D30, // <CJK>
+ 0x3A5A, 0x83DC, // <CJK>
+ 0x3A5B, 0x88C1, // <CJK>
+ 0x3A5C, 0x8F09, // <CJK>
+ 0x3A5D, 0x969B, // <CJK>
+ 0x3A5E, 0x5264, // <CJK>
+ 0x3A5F, 0x5728, // <CJK>
+ 0x3A60, 0x6750, // <CJK>
+ 0x3A61, 0x7F6A, // <CJK>
+ 0x3A62, 0x8CA1, // <CJK>
+ 0x3A63, 0x51B4, // <CJK>
+ 0x3A64, 0x5742, // <CJK>
+ 0x3A65, 0x962A, // <CJK>
+ 0x3A66, 0x583A, // <CJK>
+ 0x3A67, 0x698A, // <CJK>
+ 0x3A68, 0x80B4, // <CJK>
+ 0x3A69, 0x54B2, // <CJK>
+ 0x3A6A, 0x5D0E, // <CJK>
+ 0x3A6B, 0x57FC, // <CJK>
+ 0x3A6C, 0x7895, // <CJK>
+ 0x3A6D, 0x9DFA, // <CJK>
+ 0x3A6E, 0x4F5C, // <CJK>
+ 0x3A6F, 0x524A, // <CJK>
+ 0x3A70, 0x548B, // <CJK>
+ 0x3A71, 0x643E, // <CJK>
+ 0x3A72, 0x6628, // <CJK>
+ 0x3A73, 0x6714, // <CJK>
+ 0x3A74, 0x67F5, // <CJK>
+ 0x3A75, 0x7A84, // <CJK>
+ 0x3A76, 0x7B56, // <CJK>
+ 0x3A77, 0x7D22, // <CJK>
+ 0x3A78, 0x932F, // <CJK>
+ 0x3A79, 0x685C, // <CJK>
+ 0x3A7A, 0x9BAD, // <CJK>
+ 0x3A7B, 0x7B39, // <CJK>
+ 0x3A7C, 0x5319, // <CJK>
+ 0x3A7D, 0x518A, // <CJK>
+ 0x3A7E, 0x5237, // <CJK>
+ 0x3B21, 0x5BDF, // <CJK>
+ 0x3B22, 0x62F6, // <CJK>
+ 0x3B23, 0x64AE, // <CJK>
+ 0x3B24, 0x64E6, // <CJK>
+ 0x3B25, 0x672D, // <CJK>
+ 0x3B26, 0x6BBA, // <CJK>
+ 0x3B27, 0x85A9, // <CJK>
+ 0x3B28, 0x96D1, // <CJK>
+ 0x3B29, 0x7690, // <CJK>
+ 0x3B2A, 0x9BD6, // <CJK>
+ 0x3B2B, 0x634C, // <CJK>
+ 0x3B2C, 0x9306, // <CJK>
+ 0x3B2D, 0x9BAB, // <CJK>
+ 0x3B2E, 0x76BF, // <CJK>
+ 0x3B2F, 0x6652, // <CJK>
+ 0x3B30, 0x4E09, // <CJK>
+ 0x3B31, 0x5098, // <CJK>
+ 0x3B32, 0x53C2, // <CJK>
+ 0x3B33, 0x5C71, // <CJK>
+ 0x3B34, 0x60E8, // <CJK>
+ 0x3B35, 0x6492, // <CJK>
+ 0x3B36, 0x6563, // <CJK>
+ 0x3B37, 0x685F, // <CJK>
+ 0x3B38, 0x71E6, // <CJK>
+ 0x3B39, 0x73CA, // <CJK>
+ 0x3B3A, 0x7523, // <CJK>
+ 0x3B3B, 0x7B97, // <CJK>
+ 0x3B3C, 0x7E82, // <CJK>
+ 0x3B3D, 0x8695, // <CJK>
+ 0x3B3E, 0x8B83, // <CJK>
+ 0x3B3F, 0x8CDB, // <CJK>
+ 0x3B40, 0x9178, // <CJK>
+ 0x3B41, 0x9910, // <CJK>
+ 0x3B42, 0x65AC, // <CJK>
+ 0x3B43, 0x66AB, // <CJK>
+ 0x3B44, 0x6B8B, // <CJK>
+ 0x3B45, 0x4ED5, // <CJK>
+ 0x3B46, 0x4ED4, // <CJK>
+ 0x3B47, 0x4F3A, // <CJK>
+ 0x3B48, 0x4F7F, // <CJK>
+ 0x3B49, 0x523A, // <CJK>
+ 0x3B4A, 0x53F8, // <CJK>
+ 0x3B4B, 0x53F2, // <CJK>
+ 0x3B4C, 0x55E3, // <CJK>
+ 0x3B4D, 0x56DB, // <CJK>
+ 0x3B4E, 0x58EB, // <CJK>
+ 0x3B4F, 0x59CB, // <CJK>
+ 0x3B50, 0x59C9, // <CJK>
+ 0x3B51, 0x59FF, // <CJK>
+ 0x3B52, 0x5B50, // <CJK>
+ 0x3B53, 0x5C4D, // <CJK>
+ 0x3B54, 0x5E02, // <CJK>
+ 0x3B55, 0x5E2B, // <CJK>
+ 0x3B56, 0x5FD7, // <CJK>
+ 0x3B57, 0x601D, // <CJK>
+ 0x3B58, 0x6307, // <CJK>
+ 0x3B59, 0x652F, // <CJK>
+ 0x3B5A, 0x5B5C, // <CJK>
+ 0x3B5B, 0x65AF, // <CJK>
+ 0x3B5C, 0x65BD, // <CJK>
+ 0x3B5D, 0x65E8, // <CJK>
+ 0x3B5E, 0x679D, // <CJK>
+ 0x3B5F, 0x6B62, // <CJK>
+ 0x3B60, 0x6B7B, // <CJK>
+ 0x3B61, 0x6C0F, // <CJK>
+ 0x3B62, 0x7345, // <CJK>
+ 0x3B63, 0x7949, // <CJK>
+ 0x3B64, 0x79C1, // <CJK>
+ 0x3B65, 0x7CF8, // <CJK>
+ 0x3B66, 0x7D19, // <CJK>
+ 0x3B67, 0x7D2B, // <CJK>
+ 0x3B68, 0x80A2, // <CJK>
+ 0x3B69, 0x8102, // <CJK>
+ 0x3B6A, 0x81F3, // <CJK>
+ 0x3B6B, 0x8996, // <CJK>
+ 0x3B6C, 0x8A5E, // <CJK>
+ 0x3B6D, 0x8A69, // <CJK>
+ 0x3B6E, 0x8A66, // <CJK>
+ 0x3B6F, 0x8A8C, // <CJK>
+ 0x3B70, 0x8AEE, // <CJK>
+ 0x3B71, 0x8CC7, // <CJK>
+ 0x3B72, 0x8CDC, // <CJK>
+ 0x3B73, 0x96CC, // <CJK>
+ 0x3B74, 0x98FC, // <CJK>
+ 0x3B75, 0x6B6F, // <CJK>
+ 0x3B76, 0x4E8B, // <CJK>
+ 0x3B77, 0x4F3C, // <CJK>
+ 0x3B78, 0x4F8D, // <CJK>
+ 0x3B79, 0x5150, // <CJK>
+ 0x3B7A, 0x5B57, // <CJK>
+ 0x3B7B, 0x5BFA, // <CJK>
+ 0x3B7C, 0x6148, // <CJK>
+ 0x3B7D, 0x6301, // <CJK>
+ 0x3B7E, 0x6642, // <CJK>
+ 0x3C21, 0x6B21, // <CJK>
+ 0x3C22, 0x6ECB, // <CJK>
+ 0x3C23, 0x6CBB, // <CJK>
+ 0x3C24, 0x723E, // <CJK>
+ 0x3C25, 0x74BD, // <CJK>
+ 0x3C26, 0x75D4, // <CJK>
+ 0x3C27, 0x78C1, // <CJK>
+ 0x3C28, 0x793A, // <CJK>
+ 0x3C29, 0x800C, // <CJK>
+ 0x3C2A, 0x8033, // <CJK>
+ 0x3C2B, 0x81EA, // <CJK>
+ 0x3C2C, 0x8494, // <CJK>
+ 0x3C2D, 0x8F9E, // <CJK>
+ 0x3C2E, 0x6C50, // <CJK>
+ 0x3C2F, 0x9E7F, // <CJK>
+ 0x3C30, 0x5F0F, // <CJK>
+ 0x3C31, 0x8B58, // <CJK>
+ 0x3C32, 0x9D2B, // <CJK>
+ 0x3C33, 0x7AFA, // <CJK>
+ 0x3C34, 0x8EF8, // <CJK>
+ 0x3C35, 0x5B8D, // <CJK>
+ 0x3C36, 0x96EB, // <CJK>
+ 0x3C37, 0x4E03, // <CJK>
+ 0x3C38, 0x53F1, // <CJK>
+ 0x3C39, 0x57F7, // <CJK>
+ 0x3C3A, 0x5931, // <CJK>
+ 0x3C3B, 0x5AC9, // <CJK>
+ 0x3C3C, 0x5BA4, // <CJK>
+ 0x3C3D, 0x6089, // <CJK>
+ 0x3C3E, 0x6E7F, // <CJK>
+ 0x3C3F, 0x6F06, // <CJK>
+ 0x3C40, 0x75BE, // <CJK>
+ 0x3C41, 0x8CEA, // <CJK>
+ 0x3C42, 0x5B9F, // <CJK>
+ 0x3C43, 0x8500, // <CJK>
+ 0x3C44, 0x7BE0, // <CJK>
+ 0x3C45, 0x5072, // <CJK>
+ 0x3C46, 0x67F4, // <CJK>
+ 0x3C47, 0x829D, // <CJK>
+ 0x3C48, 0x5C61, // <CJK>
+ 0x3C49, 0x854A, // <CJK>
+ 0x3C4A, 0x7E1E, // <CJK>
+ 0x3C4B, 0x820E, // <CJK>
+ 0x3C4C, 0x5199, // <CJK>
+ 0x3C4D, 0x5C04, // <CJK>
+ 0x3C4E, 0x6368, // <CJK>
+ 0x3C4F, 0x8D66, // <CJK>
+ 0x3C50, 0x659C, // <CJK>
+ 0x3C51, 0x716E, // <CJK>
+ 0x3C52, 0x793E, // <CJK>
+ 0x3C53, 0x7D17, // <CJK>
+ 0x3C54, 0x8005, // <CJK>
+ 0x3C55, 0x8B1D, // <CJK>
+ 0x3C56, 0x8ECA, // <CJK>
+ 0x3C57, 0x906E, // <CJK>
+ 0x3C58, 0x86C7, // <CJK>
+ 0x3C59, 0x90AA, // <CJK>
+ 0x3C5A, 0x501F, // <CJK>
+ 0x3C5B, 0x52FA, // <CJK>
+ 0x3C5C, 0x5C3A, // <CJK>
+ 0x3C5D, 0x6753, // <CJK>
+ 0x3C5E, 0x707C, // <CJK>
+ 0x3C5F, 0x7235, // <CJK>
+ 0x3C60, 0x914C, // <CJK>
+ 0x3C61, 0x91C8, // <CJK>
+ 0x3C62, 0x932B, // <CJK>
+ 0x3C63, 0x82E5, // <CJK>
+ 0x3C64, 0x5BC2, // <CJK>
+ 0x3C65, 0x5F31, // <CJK>
+ 0x3C66, 0x60F9, // <CJK>
+ 0x3C67, 0x4E3B, // <CJK>
+ 0x3C68, 0x53D6, // <CJK>
+ 0x3C69, 0x5B88, // <CJK>
+ 0x3C6A, 0x624B, // <CJK>
+ 0x3C6B, 0x6731, // <CJK>
+ 0x3C6C, 0x6B8A, // <CJK>
+ 0x3C6D, 0x72E9, // <CJK>
+ 0x3C6E, 0x73E0, // <CJK>
+ 0x3C6F, 0x7A2E, // <CJK>
+ 0x3C70, 0x816B, // <CJK>
+ 0x3C71, 0x8DA3, // <CJK>
+ 0x3C72, 0x9152, // <CJK>
+ 0x3C73, 0x9996, // <CJK>
+ 0x3C74, 0x5112, // <CJK>
+ 0x3C75, 0x53D7, // <CJK>
+ 0x3C76, 0x546A, // <CJK>
+ 0x3C77, 0x5BFF, // <CJK>
+ 0x3C78, 0x6388, // <CJK>
+ 0x3C79, 0x6A39, // <CJK>
+ 0x3C7A, 0x7DAC, // <CJK>
+ 0x3C7B, 0x9700, // <CJK>
+ 0x3C7C, 0x56DA, // <CJK>
+ 0x3C7D, 0x53CE, // <CJK>
+ 0x3C7E, 0x5468, // <CJK>
+ 0x3D21, 0x5B97, // <CJK>
+ 0x3D22, 0x5C31, // <CJK>
+ 0x3D23, 0x5DDE, // <CJK>
+ 0x3D24, 0x4FEE, // <CJK>
+ 0x3D25, 0x6101, // <CJK>
+ 0x3D26, 0x62FE, // <CJK>
+ 0x3D27, 0x6D32, // <CJK>
+ 0x3D28, 0x79C0, // <CJK>
+ 0x3D29, 0x79CB, // <CJK>
+ 0x3D2A, 0x7D42, // <CJK>
+ 0x3D2B, 0x7E4D, // <CJK>
+ 0x3D2C, 0x7FD2, // <CJK>
+ 0x3D2D, 0x81ED, // <CJK>
+ 0x3D2E, 0x821F, // <CJK>
+ 0x3D2F, 0x8490, // <CJK>
+ 0x3D30, 0x8846, // <CJK>
+ 0x3D31, 0x8972, // <CJK>
+ 0x3D32, 0x8B90, // <CJK>
+ 0x3D33, 0x8E74, // <CJK>
+ 0x3D34, 0x8F2F, // <CJK>
+ 0x3D35, 0x9031, // <CJK>
+ 0x3D36, 0x914B, // <CJK>
+ 0x3D37, 0x916C, // <CJK>
+ 0x3D38, 0x96C6, // <CJK>
+ 0x3D39, 0x919C, // <CJK>
+ 0x3D3A, 0x4EC0, // <CJK>
+ 0x3D3B, 0x4F4F, // <CJK>
+ 0x3D3C, 0x5145, // <CJK>
+ 0x3D3D, 0x5341, // <CJK>
+ 0x3D3E, 0x5F93, // <CJK>
+ 0x3D3F, 0x620E, // <CJK>
+ 0x3D40, 0x67D4, // <CJK>
+ 0x3D41, 0x6C41, // <CJK>
+ 0x3D42, 0x6E0B, // <CJK>
+ 0x3D43, 0x7363, // <CJK>
+ 0x3D44, 0x7E26, // <CJK>
+ 0x3D45, 0x91CD, // <CJK>
+ 0x3D46, 0x9283, // <CJK>
+ 0x3D47, 0x53D4, // <CJK>
+ 0x3D48, 0x5919, // <CJK>
+ 0x3D49, 0x5BBF, // <CJK>
+ 0x3D4A, 0x6DD1, // <CJK>
+ 0x3D4B, 0x795D, // <CJK>
+ 0x3D4C, 0x7E2E, // <CJK>
+ 0x3D4D, 0x7C9B, // <CJK>
+ 0x3D4E, 0x587E, // <CJK>
+ 0x3D4F, 0x719F, // <CJK>
+ 0x3D50, 0x51FA, // <CJK>
+ 0x3D51, 0x8853, // <CJK>
+ 0x3D52, 0x8FF0, // <CJK>
+ 0x3D53, 0x4FCA, // <CJK>
+ 0x3D54, 0x5CFB, // <CJK>
+ 0x3D55, 0x6625, // <CJK>
+ 0x3D56, 0x77AC, // <CJK>
+ 0x3D57, 0x7AE3, // <CJK>
+ 0x3D58, 0x821C, // <CJK>
+ 0x3D59, 0x99FF, // <CJK>
+ 0x3D5A, 0x51C6, // <CJK>
+ 0x3D5B, 0x5FAA, // <CJK>
+ 0x3D5C, 0x65EC, // <CJK>
+ 0x3D5D, 0x696F, // <CJK>
+ 0x3D5E, 0x6B89, // <CJK>
+ 0x3D5F, 0x6DF3, // <CJK>
+ 0x3D60, 0x6E96, // <CJK>
+ 0x3D61, 0x6F64, // <CJK>
+ 0x3D62, 0x76FE, // <CJK>
+ 0x3D63, 0x7D14, // <CJK>
+ 0x3D64, 0x5DE1, // <CJK>
+ 0x3D65, 0x9075, // <CJK>
+ 0x3D66, 0x9187, // <CJK>
+ 0x3D67, 0x9806, // <CJK>
+ 0x3D68, 0x51E6, // <CJK>
+ 0x3D69, 0x521D, // <CJK>
+ 0x3D6A, 0x6240, // <CJK>
+ 0x3D6B, 0x6691, // <CJK>
+ 0x3D6C, 0x66D9, // <CJK>
+ 0x3D6D, 0x6E1A, // <CJK>
+ 0x3D6E, 0x5EB6, // <CJK>
+ 0x3D6F, 0x7DD2, // <CJK>
+ 0x3D70, 0x7F72, // <CJK>
+ 0x3D71, 0x66F8, // <CJK>
+ 0x3D72, 0x85AF, // <CJK>
+ 0x3D73, 0x85F7, // <CJK>
+ 0x3D74, 0x8AF8, // <CJK>
+ 0x3D75, 0x52A9, // <CJK>
+ 0x3D76, 0x53D9, // <CJK>
+ 0x3D77, 0x5973, // <CJK>
+ 0x3D78, 0x5E8F, // <CJK>
+ 0x3D79, 0x5F90, // <CJK>
+ 0x3D7A, 0x6055, // <CJK>
+ 0x3D7B, 0x92E4, // <CJK>
+ 0x3D7C, 0x9664, // <CJK>
+ 0x3D7D, 0x50B7, // <CJK>
+ 0x3D7E, 0x511F, // <CJK>
+ 0x3E21, 0x52DD, // <CJK>
+ 0x3E22, 0x5320, // <CJK>
+ 0x3E23, 0x5347, // <CJK>
+ 0x3E24, 0x53EC, // <CJK>
+ 0x3E25, 0x54E8, // <CJK>
+ 0x3E26, 0x5546, // <CJK>
+ 0x3E27, 0x5531, // <CJK>
+ 0x3E28, 0x5617, // <CJK>
+ 0x3E29, 0x5968, // <CJK>
+ 0x3E2A, 0x59BE, // <CJK>
+ 0x3E2B, 0x5A3C, // <CJK>
+ 0x3E2C, 0x5BB5, // <CJK>
+ 0x3E2D, 0x5C06, // <CJK>
+ 0x3E2E, 0x5C0F, // <CJK>
+ 0x3E2F, 0x5C11, // <CJK>
+ 0x3E30, 0x5C1A, // <CJK>
+ 0x3E31, 0x5E84, // <CJK>
+ 0x3E32, 0x5E8A, // <CJK>
+ 0x3E33, 0x5EE0, // <CJK>
+ 0x3E34, 0x5F70, // <CJK>
+ 0x3E35, 0x627F, // <CJK>
+ 0x3E36, 0x6284, // <CJK>
+ 0x3E37, 0x62DB, // <CJK>
+ 0x3E38, 0x638C, // <CJK>
+ 0x3E39, 0x6377, // <CJK>
+ 0x3E3A, 0x6607, // <CJK>
+ 0x3E3B, 0x660C, // <CJK>
+ 0x3E3C, 0x662D, // <CJK>
+ 0x3E3D, 0x6676, // <CJK>
+ 0x3E3E, 0x677E, // <CJK>
+ 0x3E3F, 0x68A2, // <CJK>
+ 0x3E40, 0x6A1F, // <CJK>
+ 0x3E41, 0x6A35, // <CJK>
+ 0x3E42, 0x6CBC, // <CJK>
+ 0x3E43, 0x6D88, // <CJK>
+ 0x3E44, 0x6E09, // <CJK>
+ 0x3E45, 0x6E58, // <CJK>
+ 0x3E46, 0x713C, // <CJK>
+ 0x3E47, 0x7126, // <CJK>
+ 0x3E48, 0x7167, // <CJK>
+ 0x3E49, 0x75C7, // <CJK>
+ 0x3E4A, 0x7701, // <CJK>
+ 0x3E4B, 0x785D, // <CJK>
+ 0x3E4C, 0x7901, // <CJK>
+ 0x3E4D, 0x7965, // <CJK>
+ 0x3E4E, 0x79F0, // <CJK>
+ 0x3E4F, 0x7AE0, // <CJK>
+ 0x3E50, 0x7B11, // <CJK>
+ 0x3E51, 0x7CA7, // <CJK>
+ 0x3E52, 0x7D39, // <CJK>
+ 0x3E53, 0x8096, // <CJK>
+ 0x3E54, 0x83D6, // <CJK>
+ 0x3E55, 0x848B, // <CJK>
+ 0x3E56, 0x8549, // <CJK>
+ 0x3E57, 0x885D, // <CJK>
+ 0x3E58, 0x88F3, // <CJK>
+ 0x3E59, 0x8A1F, // <CJK>
+ 0x3E5A, 0x8A3C, // <CJK>
+ 0x3E5B, 0x8A54, // <CJK>
+ 0x3E5C, 0x8A73, // <CJK>
+ 0x3E5D, 0x8C61, // <CJK>
+ 0x3E5E, 0x8CDE, // <CJK>
+ 0x3E5F, 0x91A4, // <CJK>
+ 0x3E60, 0x9266, // <CJK>
+ 0x3E61, 0x937E, // <CJK>
+ 0x3E62, 0x9418, // <CJK>
+ 0x3E63, 0x969C, // <CJK>
+ 0x3E64, 0x9798, // <CJK>
+ 0x3E65, 0x4E0A, // <CJK>
+ 0x3E66, 0x4E08, // <CJK>
+ 0x3E67, 0x4E1E, // <CJK>
+ 0x3E68, 0x4E57, // <CJK>
+ 0x3E69, 0x5197, // <CJK>
+ 0x3E6A, 0x5270, // <CJK>
+ 0x3E6B, 0x57CE, // <CJK>
+ 0x3E6C, 0x5834, // <CJK>
+ 0x3E6D, 0x58CC, // <CJK>
+ 0x3E6E, 0x5B22, // <CJK>
+ 0x3E6F, 0x5E38, // <CJK>
+ 0x3E70, 0x60C5, // <CJK>
+ 0x3E71, 0x64FE, // <CJK>
+ 0x3E72, 0x6761, // <CJK>
+ 0x3E73, 0x6756, // <CJK>
+ 0x3E74, 0x6D44, // <CJK>
+ 0x3E75, 0x72B6, // <CJK>
+ 0x3E76, 0x7573, // <CJK>
+ 0x3E77, 0x7A63, // <CJK>
+ 0x3E78, 0x84B8, // <CJK>
+ 0x3E79, 0x8B72, // <CJK>
+ 0x3E7A, 0x91B8, // <CJK>
+ 0x3E7B, 0x9320, // <CJK>
+ 0x3E7C, 0x5631, // <CJK>
+ 0x3E7D, 0x57F4, // <CJK>
+ 0x3E7E, 0x98FE, // <CJK>
+ 0x3F21, 0x62ED, // <CJK>
+ 0x3F22, 0x690D, // <CJK>
+ 0x3F23, 0x6B96, // <CJK>
+ 0x3F24, 0x71ED, // <CJK>
+ 0x3F25, 0x7E54, // <CJK>
+ 0x3F26, 0x8077, // <CJK>
+ 0x3F27, 0x8272, // <CJK>
+ 0x3F28, 0x89E6, // <CJK>
+ 0x3F29, 0x98DF, // <CJK>
+ 0x3F2A, 0x8755, // <CJK>
+ 0x3F2B, 0x8FB1, // <CJK>
+ 0x3F2C, 0x5C3B, // <CJK>
+ 0x3F2D, 0x4F38, // <CJK>
+ 0x3F2E, 0x4FE1, // <CJK>
+ 0x3F2F, 0x4FB5, // <CJK>
+ 0x3F30, 0x5507, // <CJK>
+ 0x3F31, 0x5A20, // <CJK>
+ 0x3F32, 0x5BDD, // <CJK>
+ 0x3F33, 0x5BE9, // <CJK>
+ 0x3F34, 0x5FC3, // <CJK>
+ 0x3F35, 0x614E, // <CJK>
+ 0x3F36, 0x632F, // <CJK>
+ 0x3F37, 0x65B0, // <CJK>
+ 0x3F38, 0x664B, // <CJK>
+ 0x3F39, 0x68EE, // <CJK>
+ 0x3F3A, 0x699B, // <CJK>
+ 0x3F3B, 0x6D78, // <CJK>
+ 0x3F3C, 0x6DF1, // <CJK>
+ 0x3F3D, 0x7533, // <CJK>
+ 0x3F3E, 0x75B9, // <CJK>
+ 0x3F3F, 0x771F, // <CJK>
+ 0x3F40, 0x795E, // <CJK>
+ 0x3F41, 0x79E6, // <CJK>
+ 0x3F42, 0x7D33, // <CJK>
+ 0x3F43, 0x81E3, // <CJK>
+ 0x3F44, 0x82AF, // <CJK>
+ 0x3F45, 0x85AA, // <CJK>
+ 0x3F46, 0x89AA, // <CJK>
+ 0x3F47, 0x8A3A, // <CJK>
+ 0x3F48, 0x8EAB, // <CJK>
+ 0x3F49, 0x8F9B, // <CJK>
+ 0x3F4A, 0x9032, // <CJK>
+ 0x3F4B, 0x91DD, // <CJK>
+ 0x3F4C, 0x9707, // <CJK>
+ 0x3F4D, 0x4EBA, // <CJK>
+ 0x3F4E, 0x4EC1, // <CJK>
+ 0x3F4F, 0x5203, // <CJK>
+ 0x3F50, 0x5875, // <CJK>
+ 0x3F51, 0x58EC, // <CJK>
+ 0x3F52, 0x5C0B, // <CJK>
+ 0x3F53, 0x751A, // <CJK>
+ 0x3F54, 0x5C3D, // <CJK>
+ 0x3F55, 0x814E, // <CJK>
+ 0x3F56, 0x8A0A, // <CJK>
+ 0x3F57, 0x8FC5, // <CJK>
+ 0x3F58, 0x9663, // <CJK>
+ 0x3F59, 0x976D, // <CJK>
+ 0x3F5A, 0x7B25, // <CJK>
+ 0x3F5B, 0x8ACF, // <CJK>
+ 0x3F5C, 0x9808, // <CJK>
+ 0x3F5D, 0x9162, // <CJK>
+ 0x3F5E, 0x56F3, // <CJK>
+ 0x3F5F, 0x53A8, // <CJK>
+ 0x3F60, 0x9017, // <CJK>
+ 0x3F61, 0x5439, // <CJK>
+ 0x3F62, 0x5782, // <CJK>
+ 0x3F63, 0x5E25, // <CJK>
+ 0x3F64, 0x63A8, // <CJK>
+ 0x3F65, 0x6C34, // <CJK>
+ 0x3F66, 0x708A, // <CJK>
+ 0x3F67, 0x7761, // <CJK>
+ 0x3F68, 0x7C8B, // <CJK>
+ 0x3F69, 0x7FE0, // <CJK>
+ 0x3F6A, 0x8870, // <CJK>
+ 0x3F6B, 0x9042, // <CJK>
+ 0x3F6C, 0x9154, // <CJK>
+ 0x3F6D, 0x9310, // <CJK>
+ 0x3F6E, 0x9318, // <CJK>
+ 0x3F6F, 0x968F, // <CJK>
+ 0x3F70, 0x745E, // <CJK>
+ 0x3F71, 0x9AC4, // <CJK>
+ 0x3F72, 0x5D07, // <CJK>
+ 0x3F73, 0x5D69, // <CJK>
+ 0x3F74, 0x6570, // <CJK>
+ 0x3F75, 0x67A2, // <CJK>
+ 0x3F76, 0x8DA8, // <CJK>
+ 0x3F77, 0x96DB, // <CJK>
+ 0x3F78, 0x636E, // <CJK>
+ 0x3F79, 0x6749, // <CJK>
+ 0x3F7A, 0x6919, // <CJK>
+ 0x3F7B, 0x83C5, // <CJK>
+ 0x3F7C, 0x9817, // <CJK>
+ 0x3F7D, 0x96C0, // <CJK>
+ 0x3F7E, 0x88FE, // <CJK>
+ 0x4021, 0x6F84, // <CJK>
+ 0x4022, 0x647A, // <CJK>
+ 0x4023, 0x5BF8, // <CJK>
+ 0x4024, 0x4E16, // <CJK>
+ 0x4025, 0x702C, // <CJK>
+ 0x4026, 0x755D, // <CJK>
+ 0x4027, 0x662F, // <CJK>
+ 0x4028, 0x51C4, // <CJK>
+ 0x4029, 0x5236, // <CJK>
+ 0x402A, 0x52E2, // <CJK>
+ 0x402B, 0x59D3, // <CJK>
+ 0x402C, 0x5F81, // <CJK>
+ 0x402D, 0x6027, // <CJK>
+ 0x402E, 0x6210, // <CJK>
+ 0x402F, 0x653F, // <CJK>
+ 0x4030, 0x6574, // <CJK>
+ 0x4031, 0x661F, // <CJK>
+ 0x4032, 0x6674, // <CJK>
+ 0x4033, 0x68F2, // <CJK>
+ 0x4034, 0x6816, // <CJK>
+ 0x4035, 0x6B63, // <CJK>
+ 0x4036, 0x6E05, // <CJK>
+ 0x4037, 0x7272, // <CJK>
+ 0x4038, 0x751F, // <CJK>
+ 0x4039, 0x76DB, // <CJK>
+ 0x403A, 0x7CBE, // <CJK>
+ 0x403B, 0x8056, // <CJK>
+ 0x403C, 0x58F0, // <CJK>
+ 0x403D, 0x88FD, // <CJK>
+ 0x403E, 0x897F, // <CJK>
+ 0x403F, 0x8AA0, // <CJK>
+ 0x4040, 0x8A93, // <CJK>
+ 0x4041, 0x8ACB, // <CJK>
+ 0x4042, 0x901D, // <CJK>
+ 0x4043, 0x9192, // <CJK>
+ 0x4044, 0x9752, // <CJK>
+ 0x4045, 0x9759, // <CJK>
+ 0x4046, 0x6589, // <CJK>
+ 0x4047, 0x7A0E, // <CJK>
+ 0x4048, 0x8106, // <CJK>
+ 0x4049, 0x96BB, // <CJK>
+ 0x404A, 0x5E2D, // <CJK>
+ 0x404B, 0x60DC, // <CJK>
+ 0x404C, 0x621A, // <CJK>
+ 0x404D, 0x65A5, // <CJK>
+ 0x404E, 0x6614, // <CJK>
+ 0x404F, 0x6790, // <CJK>
+ 0x4050, 0x77F3, // <CJK>
+ 0x4051, 0x7A4D, // <CJK>
+ 0x4052, 0x7C4D, // <CJK>
+ 0x4053, 0x7E3E, // <CJK>
+ 0x4054, 0x810A, // <CJK>
+ 0x4055, 0x8CAC, // <CJK>
+ 0x4056, 0x8D64, // <CJK>
+ 0x4057, 0x8DE1, // <CJK>
+ 0x4058, 0x8E5F, // <CJK>
+ 0x4059, 0x78A9, // <CJK>
+ 0x405A, 0x5207, // <CJK>
+ 0x405B, 0x62D9, // <CJK>
+ 0x405C, 0x63A5, // <CJK>
+ 0x405D, 0x6442, // <CJK>
+ 0x405E, 0x6298, // <CJK>
+ 0x405F, 0x8A2D, // <CJK>
+ 0x4060, 0x7A83, // <CJK>
+ 0x4061, 0x7BC0, // <CJK>
+ 0x4062, 0x8AAC, // <CJK>
+ 0x4063, 0x96EA, // <CJK>
+ 0x4064, 0x7D76, // <CJK>
+ 0x4065, 0x820C, // <CJK>
+ 0x4066, 0x8749, // <CJK>
+ 0x4067, 0x4ED9, // <CJK>
+ 0x4068, 0x5148, // <CJK>
+ 0x4069, 0x5343, // <CJK>
+ 0x406A, 0x5360, // <CJK>
+ 0x406B, 0x5BA3, // <CJK>
+ 0x406C, 0x5C02, // <CJK>
+ 0x406D, 0x5C16, // <CJK>
+ 0x406E, 0x5DDD, // <CJK>
+ 0x406F, 0x6226, // <CJK>
+ 0x4070, 0x6247, // <CJK>
+ 0x4071, 0x64B0, // <CJK>
+ 0x4072, 0x6813, // <CJK>
+ 0x4073, 0x6834, // <CJK>
+ 0x4074, 0x6CC9, // <CJK>
+ 0x4075, 0x6D45, // <CJK>
+ 0x4076, 0x6D17, // <CJK>
+ 0x4077, 0x67D3, // <CJK>
+ 0x4078, 0x6F5C, // <CJK>
+ 0x4079, 0x714E, // <CJK>
+ 0x407A, 0x717D, // <CJK>
+ 0x407B, 0x65CB, // <CJK>
+ 0x407C, 0x7A7F, // <CJK>
+ 0x407D, 0x7BAD, // <CJK>
+ 0x407E, 0x7DDA, // <CJK>
+ 0x4121, 0x7E4A, // <CJK>
+ 0x4122, 0x7FA8, // <CJK>
+ 0x4123, 0x817A, // <CJK>
+ 0x4124, 0x821B, // <CJK>
+ 0x4125, 0x8239, // <CJK>
+ 0x4126, 0x85A6, // <CJK>
+ 0x4127, 0x8A6E, // <CJK>
+ 0x4128, 0x8CCE, // <CJK>
+ 0x4129, 0x8DF5, // <CJK>
+ 0x412A, 0x9078, // <CJK>
+ 0x412B, 0x9077, // <CJK>
+ 0x412C, 0x92AD, // <CJK>
+ 0x412D, 0x9291, // <CJK>
+ 0x412E, 0x9583, // <CJK>
+ 0x412F, 0x9BAE, // <CJK>
+ 0x4130, 0x524D, // <CJK>
+ 0x4131, 0x5584, // <CJK>
+ 0x4132, 0x6F38, // <CJK>
+ 0x4133, 0x7136, // <CJK>
+ 0x4134, 0x5168, // <CJK>
+ 0x4135, 0x7985, // <CJK>
+ 0x4136, 0x7E55, // <CJK>
+ 0x4137, 0x81B3, // <CJK>
+ 0x4138, 0x7CCE, // <CJK>
+ 0x4139, 0x564C, // <CJK>
+ 0x413A, 0x5851, // <CJK>
+ 0x413B, 0x5CA8, // <CJK>
+ 0x413C, 0x63AA, // <CJK>
+ 0x413D, 0x66FE, // <CJK>
+ 0x413E, 0x66FD, // <CJK>
+ 0x413F, 0x695A, // <CJK>
+ 0x4140, 0x72D9, // <CJK>
+ 0x4141, 0x758F, // <CJK>
+ 0x4142, 0x758E, // <CJK>
+ 0x4143, 0x790E, // <CJK>
+ 0x4144, 0x7956, // <CJK>
+ 0x4145, 0x79DF, // <CJK>
+ 0x4146, 0x7C97, // <CJK>
+ 0x4147, 0x7D20, // <CJK>
+ 0x4148, 0x7D44, // <CJK>
+ 0x4149, 0x8607, // <CJK>
+ 0x414A, 0x8A34, // <CJK>
+ 0x414B, 0x963B, // <CJK>
+ 0x414C, 0x9061, // <CJK>
+ 0x414D, 0x9F20, // <CJK>
+ 0x414E, 0x50E7, // <CJK>
+ 0x414F, 0x5275, // <CJK>
+ 0x4150, 0x53CC, // <CJK>
+ 0x4151, 0x53E2, // <CJK>
+ 0x4152, 0x5009, // <CJK>
+ 0x4153, 0x55AA, // <CJK>
+ 0x4154, 0x58EE, // <CJK>
+ 0x4155, 0x594F, // <CJK>
+ 0x4156, 0x723D, // <CJK>
+ 0x4157, 0x5B8B, // <CJK>
+ 0x4158, 0x5C64, // <CJK>
+ 0x4159, 0x531D, // <CJK>
+ 0x415A, 0x60E3, // <CJK>
+ 0x415B, 0x60F3, // <CJK>
+ 0x415C, 0x635C, // <CJK>
+ 0x415D, 0x6383, // <CJK>
+ 0x415E, 0x633F, // <CJK>
+ 0x415F, 0x63BB, // <CJK>
+ 0x4160, 0x64CD, // <CJK>
+ 0x4161, 0x65E9, // <CJK>
+ 0x4162, 0x66F9, // <CJK>
+ 0x4163, 0x5DE3, // <CJK>
+ 0x4164, 0x69CD, // <CJK>
+ 0x4165, 0x69FD, // <CJK>
+ 0x4166, 0x6F15, // <CJK>
+ 0x4167, 0x71E5, // <CJK>
+ 0x4168, 0x4E89, // <CJK>
+ 0x4169, 0x75E9, // <CJK>
+ 0x416A, 0x76F8, // <CJK>
+ 0x416B, 0x7A93, // <CJK>
+ 0x416C, 0x7CDF, // <CJK>
+ 0x416D, 0x7DCF, // <CJK>
+ 0x416E, 0x7D9C, // <CJK>
+ 0x416F, 0x8061, // <CJK>
+ 0x4170, 0x8349, // <CJK>
+ 0x4171, 0x8358, // <CJK>
+ 0x4172, 0x846C, // <CJK>
+ 0x4173, 0x84BC, // <CJK>
+ 0x4174, 0x85FB, // <CJK>
+ 0x4175, 0x88C5, // <CJK>
+ 0x4176, 0x8D70, // <CJK>
+ 0x4177, 0x9001, // <CJK>
+ 0x4178, 0x906D, // <CJK>
+ 0x4179, 0x9397, // <CJK>
+ 0x417A, 0x971C, // <CJK>
+ 0x417B, 0x9A12, // <CJK>
+ 0x417C, 0x50CF, // <CJK>
+ 0x417D, 0x5897, // <CJK>
+ 0x417E, 0x618E, // <CJK>
+ 0x4221, 0x81D3, // <CJK>
+ 0x4222, 0x8535, // <CJK>
+ 0x4223, 0x8D08, // <CJK>
+ 0x4224, 0x9020, // <CJK>
+ 0x4225, 0x4FC3, // <CJK>
+ 0x4226, 0x5074, // <CJK>
+ 0x4227, 0x5247, // <CJK>
+ 0x4228, 0x5373, // <CJK>
+ 0x4229, 0x606F, // <CJK>
+ 0x422A, 0x6349, // <CJK>
+ 0x422B, 0x675F, // <CJK>
+ 0x422C, 0x6E2C, // <CJK>
+ 0x422D, 0x8DB3, // <CJK>
+ 0x422E, 0x901F, // <CJK>
+ 0x422F, 0x4FD7, // <CJK>
+ 0x4230, 0x5C5E, // <CJK>
+ 0x4231, 0x8CCA, // <CJK>
+ 0x4232, 0x65CF, // <CJK>
+ 0x4233, 0x7D9A, // <CJK>
+ 0x4234, 0x5352, // <CJK>
+ 0x4235, 0x8896, // <CJK>
+ 0x4236, 0x5176, // <CJK>
+ 0x4237, 0x63C3, // <CJK>
+ 0x4238, 0x5B58, // <CJK>
+ 0x4239, 0x5B6B, // <CJK>
+ 0x423A, 0x5C0A, // <CJK>
+ 0x423B, 0x640D, // <CJK>
+ 0x423C, 0x6751, // <CJK>
+ 0x423D, 0x905C, // <CJK>
+ 0x423E, 0x4ED6, // <CJK>
+ 0x423F, 0x591A, // <CJK>
+ 0x4240, 0x592A, // <CJK>
+ 0x4241, 0x6C70, // <CJK>
+ 0x4242, 0x8A51, // <CJK>
+ 0x4243, 0x553E, // <CJK>
+ 0x4244, 0x5815, // <CJK>
+ 0x4245, 0x59A5, // <CJK>
+ 0x4246, 0x60F0, // <CJK>
+ 0x4247, 0x6253, // <CJK>
+ 0x4248, 0x67C1, // <CJK>
+ 0x4249, 0x8235, // <CJK>
+ 0x424A, 0x6955, // <CJK>
+ 0x424B, 0x9640, // <CJK>
+ 0x424C, 0x99C4, // <CJK>
+ 0x424D, 0x9A28, // <CJK>
+ 0x424E, 0x4F53, // <CJK>
+ 0x424F, 0x5806, // <CJK>
+ 0x4250, 0x5BFE, // <CJK>
+ 0x4251, 0x8010, // <CJK>
+ 0x4252, 0x5CB1, // <CJK>
+ 0x4253, 0x5E2F, // <CJK>
+ 0x4254, 0x5F85, // <CJK>
+ 0x4255, 0x6020, // <CJK>
+ 0x4256, 0x614B, // <CJK>
+ 0x4257, 0x6234, // <CJK>
+ 0x4258, 0x66FF, // <CJK>
+ 0x4259, 0x6CF0, // <CJK>
+ 0x425A, 0x6EDE, // <CJK>
+ 0x425B, 0x80CE, // <CJK>
+ 0x425C, 0x817F, // <CJK>
+ 0x425D, 0x82D4, // <CJK>
+ 0x425E, 0x888B, // <CJK>
+ 0x425F, 0x8CB8, // <CJK>
+ 0x4260, 0x9000, // <CJK>
+ 0x4261, 0x902E, // <CJK>
+ 0x4262, 0x968A, // <CJK>
+ 0x4263, 0x9EDB, // <CJK>
+ 0x4264, 0x9BDB, // <CJK>
+ 0x4265, 0x4EE3, // <CJK>
+ 0x4266, 0x53F0, // <CJK>
+ 0x4267, 0x5927, // <CJK>
+ 0x4268, 0x7B2C, // <CJK>
+ 0x4269, 0x918D, // <CJK>
+ 0x426A, 0x984C, // <CJK>
+ 0x426B, 0x9DF9, // <CJK>
+ 0x426C, 0x6EDD, // <CJK>
+ 0x426D, 0x7027, // <CJK>
+ 0x426E, 0x5353, // <CJK>
+ 0x426F, 0x5544, // <CJK>
+ 0x4270, 0x5B85, // <CJK>
+ 0x4271, 0x6258, // <CJK>
+ 0x4272, 0x629E, // <CJK>
+ 0x4273, 0x62D3, // <CJK>
+ 0x4274, 0x6CA2, // <CJK>
+ 0x4275, 0x6FEF, // <CJK>
+ 0x4276, 0x7422, // <CJK>
+ 0x4277, 0x8A17, // <CJK>
+ 0x4278, 0x9438, // <CJK>
+ 0x4279, 0x6FC1, // <CJK>
+ 0x427A, 0x8AFE, // <CJK>
+ 0x427B, 0x8338, // <CJK>
+ 0x427C, 0x51E7, // <CJK>
+ 0x427D, 0x86F8, // <CJK>
+ 0x427E, 0x53EA, // <CJK>
+ 0x4321, 0x53E9, // <CJK>
+ 0x4322, 0x4F46, // <CJK>
+ 0x4323, 0x9054, // <CJK>
+ 0x4324, 0x8FB0, // <CJK>
+ 0x4325, 0x596A, // <CJK>
+ 0x4326, 0x8131, // <CJK>
+ 0x4327, 0x5DFD, // <CJK>
+ 0x4328, 0x7AEA, // <CJK>
+ 0x4329, 0x8FBF, // <CJK>
+ 0x432A, 0x68DA, // <CJK>
+ 0x432B, 0x8C37, // <CJK>
+ 0x432C, 0x72F8, // <CJK>
+ 0x432D, 0x9C48, // <CJK>
+ 0x432E, 0x6A3D, // <CJK>
+ 0x432F, 0x8AB0, // <CJK>
+ 0x4330, 0x4E39, // <CJK>
+ 0x4331, 0x5358, // <CJK>
+ 0x4332, 0x5606, // <CJK>
+ 0x4333, 0x5766, // <CJK>
+ 0x4334, 0x62C5, // <CJK>
+ 0x4335, 0x63A2, // <CJK>
+ 0x4336, 0x65E6, // <CJK>
+ 0x4337, 0x6B4E, // <CJK>
+ 0x4338, 0x6DE1, // <CJK>
+ 0x4339, 0x6E5B, // <CJK>
+ 0x433A, 0x70AD, // <CJK>
+ 0x433B, 0x77ED, // <CJK>
+ 0x433C, 0x7AEF, // <CJK>
+ 0x433D, 0x7BAA, // <CJK>
+ 0x433E, 0x7DBB, // <CJK>
+ 0x433F, 0x803D, // <CJK>
+ 0x4340, 0x80C6, // <CJK>
+ 0x4341, 0x86CB, // <CJK>
+ 0x4342, 0x8A95, // <CJK>
+ 0x4343, 0x935B, // <CJK>
+ 0x4344, 0x56E3, // <CJK>
+ 0x4345, 0x58C7, // <CJK>
+ 0x4346, 0x5F3E, // <CJK>
+ 0x4347, 0x65AD, // <CJK>
+ 0x4348, 0x6696, // <CJK>
+ 0x4349, 0x6A80, // <CJK>
+ 0x434A, 0x6BB5, // <CJK>
+ 0x434B, 0x7537, // <CJK>
+ 0x434C, 0x8AC7, // <CJK>
+ 0x434D, 0x5024, // <CJK>
+ 0x434E, 0x77E5, // <CJK>
+ 0x434F, 0x5730, // <CJK>
+ 0x4350, 0x5F1B, // <CJK>
+ 0x4351, 0x6065, // <CJK>
+ 0x4352, 0x667A, // <CJK>
+ 0x4353, 0x6C60, // <CJK>
+ 0x4354, 0x75F4, // <CJK>
+ 0x4355, 0x7A1A, // <CJK>
+ 0x4356, 0x7F6E, // <CJK>
+ 0x4357, 0x81F4, // <CJK>
+ 0x4358, 0x8718, // <CJK>
+ 0x4359, 0x9045, // <CJK>
+ 0x435A, 0x99B3, // <CJK>
+ 0x435B, 0x7BC9, // <CJK>
+ 0x435C, 0x755C, // <CJK>
+ 0x435D, 0x7AF9, // <CJK>
+ 0x435E, 0x7B51, // <CJK>
+ 0x435F, 0x84C4, // <CJK>
+ 0x4360, 0x9010, // <CJK>
+ 0x4361, 0x79E9, // <CJK>
+ 0x4362, 0x7A92, // <CJK>
+ 0x4363, 0x8336, // <CJK>
+ 0x4364, 0x5AE1, // <CJK>
+ 0x4365, 0x7740, // <CJK>
+ 0x4366, 0x4E2D, // <CJK>
+ 0x4367, 0x4EF2, // <CJK>
+ 0x4368, 0x5B99, // <CJK>
+ 0x4369, 0x5FE0, // <CJK>
+ 0x436A, 0x62BD, // <CJK>
+ 0x436B, 0x663C, // <CJK>
+ 0x436C, 0x67F1, // <CJK>
+ 0x436D, 0x6CE8, // <CJK>
+ 0x436E, 0x866B, // <CJK>
+ 0x436F, 0x8877, // <CJK>
+ 0x4370, 0x8A3B, // <CJK>
+ 0x4371, 0x914E, // <CJK>
+ 0x4372, 0x92F3, // <CJK>
+ 0x4373, 0x99D0, // <CJK>
+ 0x4374, 0x6A17, // <CJK>
+ 0x4375, 0x7026, // <CJK>
+ 0x4376, 0x732A, // <CJK>
+ 0x4377, 0x82E7, // <CJK>
+ 0x4378, 0x8457, // <CJK>
+ 0x4379, 0x8CAF, // <CJK>
+ 0x437A, 0x4E01, // <CJK>
+ 0x437B, 0x5146, // <CJK>
+ 0x437C, 0x51CB, // <CJK>
+ 0x437D, 0x558B, // <CJK>
+ 0x437E, 0x5BF5, // <CJK>
+ 0x4421, 0x5E16, // <CJK>
+ 0x4422, 0x5E33, // <CJK>
+ 0x4423, 0x5E81, // <CJK>
+ 0x4424, 0x5F14, // <CJK>
+ 0x4425, 0x5F35, // <CJK>
+ 0x4426, 0x5F6B, // <CJK>
+ 0x4427, 0x5FB4, // <CJK>
+ 0x4428, 0x61F2, // <CJK>
+ 0x4429, 0x6311, // <CJK>
+ 0x442A, 0x66A2, // <CJK>
+ 0x442B, 0x671D, // <CJK>
+ 0x442C, 0x6F6E, // <CJK>
+ 0x442D, 0x7252, // <CJK>
+ 0x442E, 0x753A, // <CJK>
+ 0x442F, 0x773A, // <CJK>
+ 0x4430, 0x8074, // <CJK>
+ 0x4431, 0x8139, // <CJK>
+ 0x4432, 0x8178, // <CJK>
+ 0x4433, 0x8776, // <CJK>
+ 0x4434, 0x8ABF, // <CJK>
+ 0x4435, 0x8ADC, // <CJK>
+ 0x4436, 0x8D85, // <CJK>
+ 0x4437, 0x8DF3, // <CJK>
+ 0x4438, 0x929A, // <CJK>
+ 0x4439, 0x9577, // <CJK>
+ 0x443A, 0x9802, // <CJK>
+ 0x443B, 0x9CE5, // <CJK>
+ 0x443C, 0x52C5, // <CJK>
+ 0x443D, 0x6357, // <CJK>
+ 0x443E, 0x76F4, // <CJK>
+ 0x443F, 0x6715, // <CJK>
+ 0x4440, 0x6C88, // <CJK>
+ 0x4441, 0x73CD, // <CJK>
+ 0x4442, 0x8CC3, // <CJK>
+ 0x4443, 0x93AE, // <CJK>
+ 0x4444, 0x9673, // <CJK>
+ 0x4445, 0x6D25, // <CJK>
+ 0x4446, 0x589C, // <CJK>
+ 0x4447, 0x690E, // <CJK>
+ 0x4448, 0x69CC, // <CJK>
+ 0x4449, 0x8FFD, // <CJK>
+ 0x444A, 0x939A, // <CJK>
+ 0x444B, 0x75DB, // <CJK>
+ 0x444C, 0x901A, // <CJK>
+ 0x444D, 0x585A, // <CJK>
+ 0x444E, 0x6802, // <CJK>
+ 0x444F, 0x63B4, // <CJK>
+ 0x4450, 0x69FB, // <CJK>
+ 0x4451, 0x4F43, // <CJK>
+ 0x4452, 0x6F2C, // <CJK>
+ 0x4453, 0x67D8, // <CJK>
+ 0x4454, 0x8FBB, // <CJK>
+ 0x4455, 0x8526, // <CJK>
+ 0x4456, 0x7DB4, // <CJK>
+ 0x4457, 0x9354, // <CJK>
+ 0x4458, 0x693F, // <CJK>
+ 0x4459, 0x6F70, // <CJK>
+ 0x445A, 0x576A, // <CJK>
+ 0x445B, 0x58F7, // <CJK>
+ 0x445C, 0x5B2C, // <CJK>
+ 0x445D, 0x7D2C, // <CJK>
+ 0x445E, 0x722A, // <CJK>
+ 0x445F, 0x540A, // <CJK>
+ 0x4460, 0x91E3, // <CJK>
+ 0x4461, 0x9DB4, // <CJK>
+ 0x4462, 0x4EAD, // <CJK>
+ 0x4463, 0x4F4E, // <CJK>
+ 0x4464, 0x505C, // <CJK>
+ 0x4465, 0x5075, // <CJK>
+ 0x4466, 0x5243, // <CJK>
+ 0x4467, 0x8C9E, // <CJK>
+ 0x4468, 0x5448, // <CJK>
+ 0x4469, 0x5824, // <CJK>
+ 0x446A, 0x5B9A, // <CJK>
+ 0x446B, 0x5E1D, // <CJK>
+ 0x446C, 0x5E95, // <CJK>
+ 0x446D, 0x5EAD, // <CJK>
+ 0x446E, 0x5EF7, // <CJK>
+ 0x446F, 0x5F1F, // <CJK>
+ 0x4470, 0x608C, // <CJK>
+ 0x4471, 0x62B5, // <CJK>
+ 0x4472, 0x633A, // <CJK>
+ 0x4473, 0x63D0, // <CJK>
+ 0x4474, 0x68AF, // <CJK>
+ 0x4475, 0x6C40, // <CJK>
+ 0x4476, 0x7887, // <CJK>
+ 0x4477, 0x798E, // <CJK>
+ 0x4478, 0x7A0B, // <CJK>
+ 0x4479, 0x7DE0, // <CJK>
+ 0x447A, 0x8247, // <CJK>
+ 0x447B, 0x8A02, // <CJK>
+ 0x447C, 0x8AE6, // <CJK>
+ 0x447D, 0x8E44, // <CJK>
+ 0x447E, 0x9013, // <CJK>
+ 0x4521, 0x90B8, // <CJK>
+ 0x4522, 0x912D, // <CJK>
+ 0x4523, 0x91D8, // <CJK>
+ 0x4524, 0x9F0E, // <CJK>
+ 0x4525, 0x6CE5, // <CJK>
+ 0x4526, 0x6458, // <CJK>
+ 0x4527, 0x64E2, // <CJK>
+ 0x4528, 0x6575, // <CJK>
+ 0x4529, 0x6EF4, // <CJK>
+ 0x452A, 0x7684, // <CJK>
+ 0x452B, 0x7B1B, // <CJK>
+ 0x452C, 0x9069, // <CJK>
+ 0x452D, 0x93D1, // <CJK>
+ 0x452E, 0x6EBA, // <CJK>
+ 0x452F, 0x54F2, // <CJK>
+ 0x4530, 0x5FB9, // <CJK>
+ 0x4531, 0x64A4, // <CJK>
+ 0x4532, 0x8F4D, // <CJK>
+ 0x4533, 0x8FED, // <CJK>
+ 0x4534, 0x9244, // <CJK>
+ 0x4535, 0x5178, // <CJK>
+ 0x4536, 0x586B, // <CJK>
+ 0x4537, 0x5929, // <CJK>
+ 0x4538, 0x5C55, // <CJK>
+ 0x4539, 0x5E97, // <CJK>
+ 0x453A, 0x6DFB, // <CJK>
+ 0x453B, 0x7E8F, // <CJK>
+ 0x453C, 0x751C, // <CJK>
+ 0x453D, 0x8CBC, // <CJK>
+ 0x453E, 0x8EE2, // <CJK>
+ 0x453F, 0x985B, // <CJK>
+ 0x4540, 0x70B9, // <CJK>
+ 0x4541, 0x4F1D, // <CJK>
+ 0x4542, 0x6BBF, // <CJK>
+ 0x4543, 0x6FB1, // <CJK>
+ 0x4544, 0x7530, // <CJK>
+ 0x4545, 0x96FB, // <CJK>
+ 0x4546, 0x514E, // <CJK>
+ 0x4547, 0x5410, // <CJK>
+ 0x4548, 0x5835, // <CJK>
+ 0x4549, 0x5857, // <CJK>
+ 0x454A, 0x59AC, // <CJK>
+ 0x454B, 0x5C60, // <CJK>
+ 0x454C, 0x5F92, // <CJK>
+ 0x454D, 0x6597, // <CJK>
+ 0x454E, 0x675C, // <CJK>
+ 0x454F, 0x6E21, // <CJK>
+ 0x4550, 0x767B, // <CJK>
+ 0x4551, 0x83DF, // <CJK>
+ 0x4552, 0x8CED, // <CJK>
+ 0x4553, 0x9014, // <CJK>
+ 0x4554, 0x90FD, // <CJK>
+ 0x4555, 0x934D, // <CJK>
+ 0x4556, 0x7825, // <CJK>
+ 0x4557, 0x783A, // <CJK>
+ 0x4558, 0x52AA, // <CJK>
+ 0x4559, 0x5EA6, // <CJK>
+ 0x455A, 0x571F, // <CJK>
+ 0x455B, 0x5974, // <CJK>
+ 0x455C, 0x6012, // <CJK>
+ 0x455D, 0x5012, // <CJK>
+ 0x455E, 0x515A, // <CJK>
+ 0x455F, 0x51AC, // <CJK>
+ 0x4560, 0x51CD, // <CJK>
+ 0x4561, 0x5200, // <CJK>
+ 0x4562, 0x5510, // <CJK>
+ 0x4563, 0x5854, // <CJK>
+ 0x4564, 0x5858, // <CJK>
+ 0x4565, 0x5957, // <CJK>
+ 0x4566, 0x5B95, // <CJK>
+ 0x4567, 0x5CF6, // <CJK>
+ 0x4568, 0x5D8B, // <CJK>
+ 0x4569, 0x60BC, // <CJK>
+ 0x456A, 0x6295, // <CJK>
+ 0x456B, 0x642D, // <CJK>
+ 0x456C, 0x6771, // <CJK>
+ 0x456D, 0x6843, // <CJK>
+ 0x456E, 0x68BC, // <CJK>
+ 0x456F, 0x68DF, // <CJK>
+ 0x4570, 0x76D7, // <CJK>
+ 0x4571, 0x6DD8, // <CJK>
+ 0x4572, 0x6E6F, // <CJK>
+ 0x4573, 0x6D9B, // <CJK>
+ 0x4574, 0x706F, // <CJK>
+ 0x4575, 0x71C8, // <CJK>
+ 0x4576, 0x5F53, // <CJK>
+ 0x4577, 0x75D8, // <CJK>
+ 0x4578, 0x7977, // <CJK>
+ 0x4579, 0x7B49, // <CJK>
+ 0x457A, 0x7B54, // <CJK>
+ 0x457B, 0x7B52, // <CJK>
+ 0x457C, 0x7CD6, // <CJK>
+ 0x457D, 0x7D71, // <CJK>
+ 0x457E, 0x5230, // <CJK>
+ 0x4621, 0x8463, // <CJK>
+ 0x4622, 0x8569, // <CJK>
+ 0x4623, 0x85E4, // <CJK>
+ 0x4624, 0x8A0E, // <CJK>
+ 0x4625, 0x8B04, // <CJK>
+ 0x4626, 0x8C46, // <CJK>
+ 0x4627, 0x8E0F, // <CJK>
+ 0x4628, 0x9003, // <CJK>
+ 0x4629, 0x900F, // <CJK>
+ 0x462A, 0x9419, // <CJK>
+ 0x462B, 0x9676, // <CJK>
+ 0x462C, 0x982D, // <CJK>
+ 0x462D, 0x9A30, // <CJK>
+ 0x462E, 0x95D8, // <CJK>
+ 0x462F, 0x50CD, // <CJK>
+ 0x4630, 0x52D5, // <CJK>
+ 0x4631, 0x540C, // <CJK>
+ 0x4632, 0x5802, // <CJK>
+ 0x4633, 0x5C0E, // <CJK>
+ 0x4634, 0x61A7, // <CJK>
+ 0x4635, 0x649E, // <CJK>
+ 0x4636, 0x6D1E, // <CJK>
+ 0x4637, 0x77B3, // <CJK>
+ 0x4638, 0x7AE5, // <CJK>
+ 0x4639, 0x80F4, // <CJK>
+ 0x463A, 0x8404, // <CJK>
+ 0x463B, 0x9053, // <CJK>
+ 0x463C, 0x9285, // <CJK>
+ 0x463D, 0x5CE0, // <CJK>
+ 0x463E, 0x9D07, // <CJK>
+ 0x463F, 0x533F, // <CJK>
+ 0x4640, 0x5F97, // <CJK>
+ 0x4641, 0x5FB3, // <CJK>
+ 0x4642, 0x6D9C, // <CJK>
+ 0x4643, 0x7279, // <CJK>
+ 0x4644, 0x7763, // <CJK>
+ 0x4645, 0x79BF, // <CJK>
+ 0x4646, 0x7BE4, // <CJK>
+ 0x4647, 0x6BD2, // <CJK>
+ 0x4648, 0x72EC, // <CJK>
+ 0x4649, 0x8AAD, // <CJK>
+ 0x464A, 0x6803, // <CJK>
+ 0x464B, 0x6A61, // <CJK>
+ 0x464C, 0x51F8, // <CJK>
+ 0x464D, 0x7A81, // <CJK>
+ 0x464E, 0x6934, // <CJK>
+ 0x464F, 0x5C4A, // <CJK>
+ 0x4650, 0x9CF6, // <CJK>
+ 0x4651, 0x82EB, // <CJK>
+ 0x4652, 0x5BC5, // <CJK>
+ 0x4653, 0x9149, // <CJK>
+ 0x4654, 0x701E, // <CJK>
+ 0x4655, 0x5678, // <CJK>
+ 0x4656, 0x5C6F, // <CJK>
+ 0x4657, 0x60C7, // <CJK>
+ 0x4658, 0x6566, // <CJK>
+ 0x4659, 0x6C8C, // <CJK>
+ 0x465A, 0x8C5A, // <CJK>
+ 0x465B, 0x9041, // <CJK>
+ 0x465C, 0x9813, // <CJK>
+ 0x465D, 0x5451, // <CJK>
+ 0x465E, 0x66C7, // <CJK>
+ 0x465F, 0x920D, // <CJK>
+ 0x4660, 0x5948, // <CJK>
+ 0x4661, 0x90A3, // <CJK>
+ 0x4662, 0x5185, // <CJK>
+ 0x4663, 0x4E4D, // <CJK>
+ 0x4664, 0x51EA, // <CJK>
+ 0x4665, 0x8599, // <CJK>
+ 0x4666, 0x8B0E, // <CJK>
+ 0x4667, 0x7058, // <CJK>
+ 0x4668, 0x637A, // <CJK>
+ 0x4669, 0x934B, // <CJK>
+ 0x466A, 0x6962, // <CJK>
+ 0x466B, 0x99B4, // <CJK>
+ 0x466C, 0x7E04, // <CJK>
+ 0x466D, 0x7577, // <CJK>
+ 0x466E, 0x5357, // <CJK>
+ 0x466F, 0x6960, // <CJK>
+ 0x4670, 0x8EDF, // <CJK>
+ 0x4671, 0x96E3, // <CJK>
+ 0x4672, 0x6C5D, // <CJK>
+ 0x4673, 0x4E8C, // <CJK>
+ 0x4674, 0x5C3C, // <CJK>
+ 0x4675, 0x5F10, // <CJK>
+ 0x4676, 0x8FE9, // <CJK>
+ 0x4677, 0x5302, // <CJK>
+ 0x4678, 0x8CD1, // <CJK>
+ 0x4679, 0x8089, // <CJK>
+ 0x467A, 0x8679, // <CJK>
+ 0x467B, 0x5EFF, // <CJK>
+ 0x467C, 0x65E5, // <CJK>
+ 0x467D, 0x4E73, // <CJK>
+ 0x467E, 0x5165, // <CJK>
+ 0x4721, 0x5982, // <CJK>
+ 0x4722, 0x5C3F, // <CJK>
+ 0x4723, 0x97EE, // <CJK>
+ 0x4724, 0x4EFB, // <CJK>
+ 0x4725, 0x598A, // <CJK>
+ 0x4726, 0x5FCD, // <CJK>
+ 0x4727, 0x8A8D, // <CJK>
+ 0x4728, 0x6FE1, // <CJK>
+ 0x4729, 0x79B0, // <CJK>
+ 0x472A, 0x7962, // <CJK>
+ 0x472B, 0x5BE7, // <CJK>
+ 0x472C, 0x8471, // <CJK>
+ 0x472D, 0x732B, // <CJK>
+ 0x472E, 0x71B1, // <CJK>
+ 0x472F, 0x5E74, // <CJK>
+ 0x4730, 0x5FF5, // <CJK>
+ 0x4731, 0x637B, // <CJK>
+ 0x4732, 0x649A, // <CJK>
+ 0x4733, 0x71C3, // <CJK>
+ 0x4734, 0x7C98, // <CJK>
+ 0x4735, 0x4E43, // <CJK>
+ 0x4736, 0x5EFC, // <CJK>
+ 0x4737, 0x4E4B, // <CJK>
+ 0x4738, 0x57DC, // <CJK>
+ 0x4739, 0x56A2, // <CJK>
+ 0x473A, 0x60A9, // <CJK>
+ 0x473B, 0x6FC3, // <CJK>
+ 0x473C, 0x7D0D, // <CJK>
+ 0x473D, 0x80FD, // <CJK>
+ 0x473E, 0x8133, // <CJK>
+ 0x473F, 0x81BF, // <CJK>
+ 0x4740, 0x8FB2, // <CJK>
+ 0x4741, 0x8997, // <CJK>
+ 0x4742, 0x86A4, // <CJK>
+ 0x4743, 0x5DF4, // <CJK>
+ 0x4744, 0x628A, // <CJK>
+ 0x4745, 0x64AD, // <CJK>
+ 0x4746, 0x8987, // <CJK>
+ 0x4747, 0x6777, // <CJK>
+ 0x4748, 0x6CE2, // <CJK>
+ 0x4749, 0x6D3E, // <CJK>
+ 0x474A, 0x7436, // <CJK>
+ 0x474B, 0x7834, // <CJK>
+ 0x474C, 0x5A46, // <CJK>
+ 0x474D, 0x7F75, // <CJK>
+ 0x474E, 0x82AD, // <CJK>
+ 0x474F, 0x99AC, // <CJK>
+ 0x4750, 0x4FF3, // <CJK>
+ 0x4751, 0x5EC3, // <CJK>
+ 0x4752, 0x62DD, // <CJK>
+ 0x4753, 0x6392, // <CJK>
+ 0x4754, 0x6557, // <CJK>
+ 0x4755, 0x676F, // <CJK>
+ 0x4756, 0x76C3, // <CJK>
+ 0x4757, 0x724C, // <CJK>
+ 0x4758, 0x80CC, // <CJK>
+ 0x4759, 0x80BA, // <CJK>
+ 0x475A, 0x8F29, // <CJK>
+ 0x475B, 0x914D, // <CJK>
+ 0x475C, 0x500D, // <CJK>
+ 0x475D, 0x57F9, // <CJK>
+ 0x475E, 0x5A92, // <CJK>
+ 0x475F, 0x6885, // <CJK>
+ 0x4760, 0x6973, // <CJK>
+ 0x4761, 0x7164, // <CJK>
+ 0x4762, 0x72FD, // <CJK>
+ 0x4763, 0x8CB7, // <CJK>
+ 0x4764, 0x58F2, // <CJK>
+ 0x4765, 0x8CE0, // <CJK>
+ 0x4766, 0x966A, // <CJK>
+ 0x4767, 0x9019, // <CJK>
+ 0x4768, 0x877F, // <CJK>
+ 0x4769, 0x79E4, // <CJK>
+ 0x476A, 0x77E7, // <CJK>
+ 0x476B, 0x8429, // <CJK>
+ 0x476C, 0x4F2F, // <CJK>
+ 0x476D, 0x5265, // <CJK>
+ 0x476E, 0x535A, // <CJK>
+ 0x476F, 0x62CD, // <CJK>
+ 0x4770, 0x67CF, // <CJK>
+ 0x4771, 0x6CCA, // <CJK>
+ 0x4772, 0x767D, // <CJK>
+ 0x4773, 0x7B94, // <CJK>
+ 0x4774, 0x7C95, // <CJK>
+ 0x4775, 0x8236, // <CJK>
+ 0x4776, 0x8584, // <CJK>
+ 0x4777, 0x8FEB, // <CJK>
+ 0x4778, 0x66DD, // <CJK>
+ 0x4779, 0x6F20, // <CJK>
+ 0x477A, 0x7206, // <CJK>
+ 0x477B, 0x7E1B, // <CJK>
+ 0x477C, 0x83AB, // <CJK>
+ 0x477D, 0x99C1, // <CJK>
+ 0x477E, 0x9EA6, // <CJK>
+ 0x4821, 0x51FD, // <CJK>
+ 0x4822, 0x7BB1, // <CJK>
+ 0x4823, 0x7872, // <CJK>
+ 0x4824, 0x7BB8, // <CJK>
+ 0x4825, 0x8087, // <CJK>
+ 0x4826, 0x7B48, // <CJK>
+ 0x4827, 0x6AE8, // <CJK>
+ 0x4828, 0x5E61, // <CJK>
+ 0x4829, 0x808C, // <CJK>
+ 0x482A, 0x7551, // <CJK>
+ 0x482B, 0x7560, // <CJK>
+ 0x482C, 0x516B, // <CJK>
+ 0x482D, 0x9262, // <CJK>
+ 0x482E, 0x6E8C, // <CJK>
+ 0x482F, 0x767A, // <CJK>
+ 0x4830, 0x9197, // <CJK>
+ 0x4831, 0x9AEA, // <CJK>
+ 0x4832, 0x4F10, // <CJK>
+ 0x4833, 0x7F70, // <CJK>
+ 0x4834, 0x629C, // <CJK>
+ 0x4835, 0x7B4F, // <CJK>
+ 0x4836, 0x95A5, // <CJK>
+ 0x4837, 0x9CE9, // <CJK>
+ 0x4838, 0x567A, // <CJK>
+ 0x4839, 0x5859, // <CJK>
+ 0x483A, 0x86E4, // <CJK>
+ 0x483B, 0x96BC, // <CJK>
+ 0x483C, 0x4F34, // <CJK>
+ 0x483D, 0x5224, // <CJK>
+ 0x483E, 0x534A, // <CJK>
+ 0x483F, 0x53CD, // <CJK>
+ 0x4840, 0x53DB, // <CJK>
+ 0x4841, 0x5E06, // <CJK>
+ 0x4842, 0x642C, // <CJK>
+ 0x4843, 0x6591, // <CJK>
+ 0x4844, 0x677F, // <CJK>
+ 0x4845, 0x6C3E, // <CJK>
+ 0x4846, 0x6C4E, // <CJK>
+ 0x4847, 0x7248, // <CJK>
+ 0x4848, 0x72AF, // <CJK>
+ 0x4849, 0x73ED, // <CJK>
+ 0x484A, 0x7554, // <CJK>
+ 0x484B, 0x7E41, // <CJK>
+ 0x484C, 0x822C, // <CJK>
+ 0x484D, 0x85E9, // <CJK>
+ 0x484E, 0x8CA9, // <CJK>
+ 0x484F, 0x7BC4, // <CJK>
+ 0x4850, 0x91C6, // <CJK>
+ 0x4851, 0x7169, // <CJK>
+ 0x4852, 0x9812, // <CJK>
+ 0x4853, 0x98EF, // <CJK>
+ 0x4854, 0x633D, // <CJK>
+ 0x4855, 0x6669, // <CJK>
+ 0x4856, 0x756A, // <CJK>
+ 0x4857, 0x76E4, // <CJK>
+ 0x4858, 0x78D0, // <CJK>
+ 0x4859, 0x8543, // <CJK>
+ 0x485A, 0x86EE, // <CJK>
+ 0x485B, 0x532A, // <CJK>
+ 0x485C, 0x5351, // <CJK>
+ 0x485D, 0x5426, // <CJK>
+ 0x485E, 0x5983, // <CJK>
+ 0x485F, 0x5E87, // <CJK>
+ 0x4860, 0x5F7C, // <CJK>
+ 0x4861, 0x60B2, // <CJK>
+ 0x4862, 0x6249, // <CJK>
+ 0x4863, 0x6279, // <CJK>
+ 0x4864, 0x62AB, // <CJK>
+ 0x4865, 0x6590, // <CJK>
+ 0x4866, 0x6BD4, // <CJK>
+ 0x4867, 0x6CCC, // <CJK>
+ 0x4868, 0x75B2, // <CJK>
+ 0x4869, 0x76AE, // <CJK>
+ 0x486A, 0x7891, // <CJK>
+ 0x486B, 0x79D8, // <CJK>
+ 0x486C, 0x7DCB, // <CJK>
+ 0x486D, 0x7F77, // <CJK>
+ 0x486E, 0x80A5, // <CJK>
+ 0x486F, 0x88AB, // <CJK>
+ 0x4870, 0x8AB9, // <CJK>
+ 0x4871, 0x8CBB, // <CJK>
+ 0x4872, 0x907F, // <CJK>
+ 0x4873, 0x975E, // <CJK>
+ 0x4874, 0x98DB, // <CJK>
+ 0x4875, 0x6A0B, // <CJK>
+ 0x4876, 0x7C38, // <CJK>
+ 0x4877, 0x5099, // <CJK>
+ 0x4878, 0x5C3E, // <CJK>
+ 0x4879, 0x5FAE, // <CJK>
+ 0x487A, 0x6787, // <CJK>
+ 0x487B, 0x6BD8, // <CJK>
+ 0x487C, 0x7435, // <CJK>
+ 0x487D, 0x7709, // <CJK>
+ 0x487E, 0x7F8E, // <CJK>
+ 0x4921, 0x9F3B, // <CJK>
+ 0x4922, 0x67CA, // <CJK>
+ 0x4923, 0x7A17, // <CJK>
+ 0x4924, 0x5339, // <CJK>
+ 0x4925, 0x758B, // <CJK>
+ 0x4926, 0x9AED, // <CJK>
+ 0x4927, 0x5F66, // <CJK>
+ 0x4928, 0x819D, // <CJK>
+ 0x4929, 0x83F1, // <CJK>
+ 0x492A, 0x8098, // <CJK>
+ 0x492B, 0x5F3C, // <CJK>
+ 0x492C, 0x5FC5, // <CJK>
+ 0x492D, 0x7562, // <CJK>
+ 0x492E, 0x7B46, // <CJK>
+ 0x492F, 0x903C, // <CJK>
+ 0x4930, 0x6867, // <CJK>
+ 0x4931, 0x59EB, // <CJK>
+ 0x4932, 0x5A9B, // <CJK>
+ 0x4933, 0x7D10, // <CJK>
+ 0x4934, 0x767E, // <CJK>
+ 0x4935, 0x8B2C, // <CJK>
+ 0x4936, 0x4FF5, // <CJK>
+ 0x4937, 0x5F6A, // <CJK>
+ 0x4938, 0x6A19, // <CJK>
+ 0x4939, 0x6C37, // <CJK>
+ 0x493A, 0x6F02, // <CJK>
+ 0x493B, 0x74E2, // <CJK>
+ 0x493C, 0x7968, // <CJK>
+ 0x493D, 0x8868, // <CJK>
+ 0x493E, 0x8A55, // <CJK>
+ 0x493F, 0x8C79, // <CJK>
+ 0x4940, 0x5EDF, // <CJK>
+ 0x4941, 0x63CF, // <CJK>
+ 0x4942, 0x75C5, // <CJK>
+ 0x4943, 0x79D2, // <CJK>
+ 0x4944, 0x82D7, // <CJK>
+ 0x4945, 0x9328, // <CJK>
+ 0x4946, 0x92F2, // <CJK>
+ 0x4947, 0x849C, // <CJK>
+ 0x4948, 0x86ED, // <CJK>
+ 0x4949, 0x9C2D, // <CJK>
+ 0x494A, 0x54C1, // <CJK>
+ 0x494B, 0x5F6C, // <CJK>
+ 0x494C, 0x658C, // <CJK>
+ 0x494D, 0x6D5C, // <CJK>
+ 0x494E, 0x7015, // <CJK>
+ 0x494F, 0x8CA7, // <CJK>
+ 0x4950, 0x8CD3, // <CJK>
+ 0x4951, 0x983B, // <CJK>
+ 0x4952, 0x654F, // <CJK>
+ 0x4953, 0x74F6, // <CJK>
+ 0x4954, 0x4E0D, // <CJK>
+ 0x4955, 0x4ED8, // <CJK>
+ 0x4956, 0x57E0, // <CJK>
+ 0x4957, 0x592B, // <CJK>
+ 0x4958, 0x5A66, // <CJK>
+ 0x4959, 0x5BCC, // <CJK>
+ 0x495A, 0x51A8, // <CJK>
+ 0x495B, 0x5E03, // <CJK>
+ 0x495C, 0x5E9C, // <CJK>
+ 0x495D, 0x6016, // <CJK>
+ 0x495E, 0x6276, // <CJK>
+ 0x495F, 0x6577, // <CJK>
+ 0x4960, 0x65A7, // <CJK>
+ 0x4961, 0x666E, // <CJK>
+ 0x4962, 0x6D6E, // <CJK>
+ 0x4963, 0x7236, // <CJK>
+ 0x4964, 0x7B26, // <CJK>
+ 0x4965, 0x8150, // <CJK>
+ 0x4966, 0x819A, // <CJK>
+ 0x4967, 0x8299, // <CJK>
+ 0x4968, 0x8B5C, // <CJK>
+ 0x4969, 0x8CA0, // <CJK>
+ 0x496A, 0x8CE6, // <CJK>
+ 0x496B, 0x8D74, // <CJK>
+ 0x496C, 0x961C, // <CJK>
+ 0x496D, 0x9644, // <CJK>
+ 0x496E, 0x4FAE, // <CJK>
+ 0x496F, 0x64AB, // <CJK>
+ 0x4970, 0x6B66, // <CJK>
+ 0x4971, 0x821E, // <CJK>
+ 0x4972, 0x8461, // <CJK>
+ 0x4973, 0x856A, // <CJK>
+ 0x4974, 0x90E8, // <CJK>
+ 0x4975, 0x5C01, // <CJK>
+ 0x4976, 0x6953, // <CJK>
+ 0x4977, 0x98A8, // <CJK>
+ 0x4978, 0x847A, // <CJK>
+ 0x4979, 0x8557, // <CJK>
+ 0x497A, 0x4F0F, // <CJK>
+ 0x497B, 0x526F, // <CJK>
+ 0x497C, 0x5FA9, // <CJK>
+ 0x497D, 0x5E45, // <CJK>
+ 0x497E, 0x670D, // <CJK>
+ 0x4A21, 0x798F, // <CJK>
+ 0x4A22, 0x8179, // <CJK>
+ 0x4A23, 0x8907, // <CJK>
+ 0x4A24, 0x8986, // <CJK>
+ 0x4A25, 0x6DF5, // <CJK>
+ 0x4A26, 0x5F17, // <CJK>
+ 0x4A27, 0x6255, // <CJK>
+ 0x4A28, 0x6CB8, // <CJK>
+ 0x4A29, 0x4ECF, // <CJK>
+ 0x4A2A, 0x7269, // <CJK>
+ 0x4A2B, 0x9B92, // <CJK>
+ 0x4A2C, 0x5206, // <CJK>
+ 0x4A2D, 0x543B, // <CJK>
+ 0x4A2E, 0x5674, // <CJK>
+ 0x4A2F, 0x58B3, // <CJK>
+ 0x4A30, 0x61A4, // <CJK>
+ 0x4A31, 0x626E, // <CJK>
+ 0x4A32, 0x711A, // <CJK>
+ 0x4A33, 0x596E, // <CJK>
+ 0x4A34, 0x7C89, // <CJK>
+ 0x4A35, 0x7CDE, // <CJK>
+ 0x4A36, 0x7D1B, // <CJK>
+ 0x4A37, 0x96F0, // <CJK>
+ 0x4A38, 0x6587, // <CJK>
+ 0x4A39, 0x805E, // <CJK>
+ 0x4A3A, 0x4E19, // <CJK>
+ 0x4A3B, 0x4F75, // <CJK>
+ 0x4A3C, 0x5175, // <CJK>
+ 0x4A3D, 0x5840, // <CJK>
+ 0x4A3E, 0x5E63, // <CJK>
+ 0x4A3F, 0x5E73, // <CJK>
+ 0x4A40, 0x5F0A, // <CJK>
+ 0x4A41, 0x67C4, // <CJK>
+ 0x4A42, 0x4E26, // <CJK>
+ 0x4A43, 0x853D, // <CJK>
+ 0x4A44, 0x9589, // <CJK>
+ 0x4A45, 0x965B, // <CJK>
+ 0x4A46, 0x7C73, // <CJK>
+ 0x4A47, 0x9801, // <CJK>
+ 0x4A48, 0x50FB, // <CJK>
+ 0x4A49, 0x58C1, // <CJK>
+ 0x4A4A, 0x7656, // <CJK>
+ 0x4A4B, 0x78A7, // <CJK>
+ 0x4A4C, 0x5225, // <CJK>
+ 0x4A4D, 0x77A5, // <CJK>
+ 0x4A4E, 0x8511, // <CJK>
+ 0x4A4F, 0x7B86, // <CJK>
+ 0x4A50, 0x504F, // <CJK>
+ 0x4A51, 0x5909, // <CJK>
+ 0x4A52, 0x7247, // <CJK>
+ 0x4A53, 0x7BC7, // <CJK>
+ 0x4A54, 0x7DE8, // <CJK>
+ 0x4A55, 0x8FBA, // <CJK>
+ 0x4A56, 0x8FD4, // <CJK>
+ 0x4A57, 0x904D, // <CJK>
+ 0x4A58, 0x4FBF, // <CJK>
+ 0x4A59, 0x52C9, // <CJK>
+ 0x4A5A, 0x5A29, // <CJK>
+ 0x4A5B, 0x5F01, // <CJK>
+ 0x4A5C, 0x97AD, // <CJK>
+ 0x4A5D, 0x4FDD, // <CJK>
+ 0x4A5E, 0x8217, // <CJK>
+ 0x4A5F, 0x92EA, // <CJK>
+ 0x4A60, 0x5703, // <CJK>
+ 0x4A61, 0x6355, // <CJK>
+ 0x4A62, 0x6B69, // <CJK>
+ 0x4A63, 0x752B, // <CJK>
+ 0x4A64, 0x88DC, // <CJK>
+ 0x4A65, 0x8F14, // <CJK>
+ 0x4A66, 0x7A42, // <CJK>
+ 0x4A67, 0x52DF, // <CJK>
+ 0x4A68, 0x5893, // <CJK>
+ 0x4A69, 0x6155, // <CJK>
+ 0x4A6A, 0x620A, // <CJK>
+ 0x4A6B, 0x66AE, // <CJK>
+ 0x4A6C, 0x6BCD, // <CJK>
+ 0x4A6D, 0x7C3F, // <CJK>
+ 0x4A6E, 0x83E9, // <CJK>
+ 0x4A6F, 0x5023, // <CJK>
+ 0x4A70, 0x4FF8, // <CJK>
+ 0x4A71, 0x5305, // <CJK>
+ 0x4A72, 0x5446, // <CJK>
+ 0x4A73, 0x5831, // <CJK>
+ 0x4A74, 0x5949, // <CJK>
+ 0x4A75, 0x5B9D, // <CJK>
+ 0x4A76, 0x5CF0, // <CJK>
+ 0x4A77, 0x5CEF, // <CJK>
+ 0x4A78, 0x5D29, // <CJK>
+ 0x4A79, 0x5E96, // <CJK>
+ 0x4A7A, 0x62B1, // <CJK>
+ 0x4A7B, 0x6367, // <CJK>
+ 0x4A7C, 0x653E, // <CJK>
+ 0x4A7D, 0x65B9, // <CJK>
+ 0x4A7E, 0x670B, // <CJK>
+ 0x4B21, 0x6CD5, // <CJK>
+ 0x4B22, 0x6CE1, // <CJK>
+ 0x4B23, 0x70F9, // <CJK>
+ 0x4B24, 0x7832, // <CJK>
+ 0x4B25, 0x7E2B, // <CJK>
+ 0x4B26, 0x80DE, // <CJK>
+ 0x4B27, 0x82B3, // <CJK>
+ 0x4B28, 0x840C, // <CJK>
+ 0x4B29, 0x84EC, // <CJK>
+ 0x4B2A, 0x8702, // <CJK>
+ 0x4B2B, 0x8912, // <CJK>
+ 0x4B2C, 0x8A2A, // <CJK>
+ 0x4B2D, 0x8C4A, // <CJK>
+ 0x4B2E, 0x90A6, // <CJK>
+ 0x4B2F, 0x92D2, // <CJK>
+ 0x4B30, 0x98FD, // <CJK>
+ 0x4B31, 0x9CF3, // <CJK>
+ 0x4B32, 0x9D6C, // <CJK>
+ 0x4B33, 0x4E4F, // <CJK>
+ 0x4B34, 0x4EA1, // <CJK>
+ 0x4B35, 0x508D, // <CJK>
+ 0x4B36, 0x5256, // <CJK>
+ 0x4B37, 0x574A, // <CJK>
+ 0x4B38, 0x59A8, // <CJK>
+ 0x4B39, 0x5E3D, // <CJK>
+ 0x4B3A, 0x5FD8, // <CJK>
+ 0x4B3B, 0x5FD9, // <CJK>
+ 0x4B3C, 0x623F, // <CJK>
+ 0x4B3D, 0x66B4, // <CJK>
+ 0x4B3E, 0x671B, // <CJK>
+ 0x4B3F, 0x67D0, // <CJK>
+ 0x4B40, 0x68D2, // <CJK>
+ 0x4B41, 0x5192, // <CJK>
+ 0x4B42, 0x7D21, // <CJK>
+ 0x4B43, 0x80AA, // <CJK>
+ 0x4B44, 0x81A8, // <CJK>
+ 0x4B45, 0x8B00, // <CJK>
+ 0x4B46, 0x8C8C, // <CJK>
+ 0x4B47, 0x8CBF, // <CJK>
+ 0x4B48, 0x927E, // <CJK>
+ 0x4B49, 0x9632, // <CJK>
+ 0x4B4A, 0x5420, // <CJK>
+ 0x4B4B, 0x982C, // <CJK>
+ 0x4B4C, 0x5317, // <CJK>
+ 0x4B4D, 0x50D5, // <CJK>
+ 0x4B4E, 0x535C, // <CJK>
+ 0x4B4F, 0x58A8, // <CJK>
+ 0x4B50, 0x64B2, // <CJK>
+ 0x4B51, 0x6734, // <CJK>
+ 0x4B52, 0x7267, // <CJK>
+ 0x4B53, 0x7766, // <CJK>
+ 0x4B54, 0x7A46, // <CJK>
+ 0x4B55, 0x91E6, // <CJK>
+ 0x4B56, 0x52C3, // <CJK>
+ 0x4B57, 0x6CA1, // <CJK>
+ 0x4B58, 0x6B86, // <CJK>
+ 0x4B59, 0x5800, // <CJK>
+ 0x4B5A, 0x5E4C, // <CJK>
+ 0x4B5B, 0x5954, // <CJK>
+ 0x4B5C, 0x672C, // <CJK>
+ 0x4B5D, 0x7FFB, // <CJK>
+ 0x4B5E, 0x51E1, // <CJK>
+ 0x4B5F, 0x76C6, // <CJK>
+ 0x4B60, 0x6469, // <CJK>
+ 0x4B61, 0x78E8, // <CJK>
+ 0x4B62, 0x9B54, // <CJK>
+ 0x4B63, 0x9EBB, // <CJK>
+ 0x4B64, 0x57CB, // <CJK>
+ 0x4B65, 0x59B9, // <CJK>
+ 0x4B66, 0x6627, // <CJK>
+ 0x4B67, 0x679A, // <CJK>
+ 0x4B68, 0x6BCE, // <CJK>
+ 0x4B69, 0x54E9, // <CJK>
+ 0x4B6A, 0x69D9, // <CJK>
+ 0x4B6B, 0x5E55, // <CJK>
+ 0x4B6C, 0x819C, // <CJK>
+ 0x4B6D, 0x6795, // <CJK>
+ 0x4B6E, 0x9BAA, // <CJK>
+ 0x4B6F, 0x67FE, // <CJK>
+ 0x4B70, 0x9C52, // <CJK>
+ 0x4B71, 0x685D, // <CJK>
+ 0x4B72, 0x4EA6, // <CJK>
+ 0x4B73, 0x4FE3, // <CJK>
+ 0x4B74, 0x53C8, // <CJK>
+ 0x4B75, 0x62B9, // <CJK>
+ 0x4B76, 0x672B, // <CJK>
+ 0x4B77, 0x6CAB, // <CJK>
+ 0x4B78, 0x8FC4, // <CJK>
+ 0x4B79, 0x4FAD, // <CJK>
+ 0x4B7A, 0x7E6D, // <CJK>
+ 0x4B7B, 0x9EBF, // <CJK>
+ 0x4B7C, 0x4E07, // <CJK>
+ 0x4B7D, 0x6162, // <CJK>
+ 0x4B7E, 0x6E80, // <CJK>
+ 0x4C21, 0x6F2B, // <CJK>
+ 0x4C22, 0x8513, // <CJK>
+ 0x4C23, 0x5473, // <CJK>
+ 0x4C24, 0x672A, // <CJK>
+ 0x4C25, 0x9B45, // <CJK>
+ 0x4C26, 0x5DF3, // <CJK>
+ 0x4C27, 0x7B95, // <CJK>
+ 0x4C28, 0x5CAC, // <CJK>
+ 0x4C29, 0x5BC6, // <CJK>
+ 0x4C2A, 0x871C, // <CJK>
+ 0x4C2B, 0x6E4A, // <CJK>
+ 0x4C2C, 0x84D1, // <CJK>
+ 0x4C2D, 0x7A14, // <CJK>
+ 0x4C2E, 0x8108, // <CJK>
+ 0x4C2F, 0x5999, // <CJK>
+ 0x4C30, 0x7C8D, // <CJK>
+ 0x4C31, 0x6C11, // <CJK>
+ 0x4C32, 0x7720, // <CJK>
+ 0x4C33, 0x52D9, // <CJK>
+ 0x4C34, 0x5922, // <CJK>
+ 0x4C35, 0x7121, // <CJK>
+ 0x4C36, 0x725F, // <CJK>
+ 0x4C37, 0x77DB, // <CJK>
+ 0x4C38, 0x9727, // <CJK>
+ 0x4C39, 0x9D61, // <CJK>
+ 0x4C3A, 0x690B, // <CJK>
+ 0x4C3B, 0x5A7F, // <CJK>
+ 0x4C3C, 0x5A18, // <CJK>
+ 0x4C3D, 0x51A5, // <CJK>
+ 0x4C3E, 0x540D, // <CJK>
+ 0x4C3F, 0x547D, // <CJK>
+ 0x4C40, 0x660E, // <CJK>
+ 0x4C41, 0x76DF, // <CJK>
+ 0x4C42, 0x8FF7, // <CJK>
+ 0x4C43, 0x9298, // <CJK>
+ 0x4C44, 0x9CF4, // <CJK>
+ 0x4C45, 0x59EA, // <CJK>
+ 0x4C46, 0x725D, // <CJK>
+ 0x4C47, 0x6EC5, // <CJK>
+ 0x4C48, 0x514D, // <CJK>
+ 0x4C49, 0x68C9, // <CJK>
+ 0x4C4A, 0x7DBF, // <CJK>
+ 0x4C4B, 0x7DEC, // <CJK>
+ 0x4C4C, 0x9762, // <CJK>
+ 0x4C4D, 0x9EBA, // <CJK>
+ 0x4C4E, 0x6478, // <CJK>
+ 0x4C4F, 0x6A21, // <CJK>
+ 0x4C50, 0x8302, // <CJK>
+ 0x4C51, 0x5984, // <CJK>
+ 0x4C52, 0x5B5F, // <CJK>
+ 0x4C53, 0x6BDB, // <CJK>
+ 0x4C54, 0x731B, // <CJK>
+ 0x4C55, 0x76F2, // <CJK>
+ 0x4C56, 0x7DB2, // <CJK>
+ 0x4C57, 0x8017, // <CJK>
+ 0x4C58, 0x8499, // <CJK>
+ 0x4C59, 0x5132, // <CJK>
+ 0x4C5A, 0x6728, // <CJK>
+ 0x4C5B, 0x9ED9, // <CJK>
+ 0x4C5C, 0x76EE, // <CJK>
+ 0x4C5D, 0x6762, // <CJK>
+ 0x4C5E, 0x52FF, // <CJK>
+ 0x4C5F, 0x9905, // <CJK>
+ 0x4C60, 0x5C24, // <CJK>
+ 0x4C61, 0x623B, // <CJK>
+ 0x4C62, 0x7C7E, // <CJK>
+ 0x4C63, 0x8CB0, // <CJK>
+ 0x4C64, 0x554F, // <CJK>
+ 0x4C65, 0x60B6, // <CJK>
+ 0x4C66, 0x7D0B, // <CJK>
+ 0x4C67, 0x9580, // <CJK>
+ 0x4C68, 0x5301, // <CJK>
+ 0x4C69, 0x4E5F, // <CJK>
+ 0x4C6A, 0x51B6, // <CJK>
+ 0x4C6B, 0x591C, // <CJK>
+ 0x4C6C, 0x723A, // <CJK>
+ 0x4C6D, 0x8036, // <CJK>
+ 0x4C6E, 0x91CE, // <CJK>
+ 0x4C6F, 0x5F25, // <CJK>
+ 0x4C70, 0x77E2, // <CJK>
+ 0x4C71, 0x5384, // <CJK>
+ 0x4C72, 0x5F79, // <CJK>
+ 0x4C73, 0x7D04, // <CJK>
+ 0x4C74, 0x85AC, // <CJK>
+ 0x4C75, 0x8A33, // <CJK>
+ 0x4C76, 0x8E8D, // <CJK>
+ 0x4C77, 0x9756, // <CJK>
+ 0x4C78, 0x67F3, // <CJK>
+ 0x4C79, 0x85AE, // <CJK>
+ 0x4C7A, 0x9453, // <CJK>
+ 0x4C7B, 0x6109, // <CJK>
+ 0x4C7C, 0x6108, // <CJK>
+ 0x4C7D, 0x6CB9, // <CJK>
+ 0x4C7E, 0x7652, // <CJK>
+ 0x4D21, 0x8AED, // <CJK>
+ 0x4D22, 0x8F38, // <CJK>
+ 0x4D23, 0x552F, // <CJK>
+ 0x4D24, 0x4F51, // <CJK>
+ 0x4D25, 0x512A, // <CJK>
+ 0x4D26, 0x52C7, // <CJK>
+ 0x4D27, 0x53CB, // <CJK>
+ 0x4D28, 0x5BA5, // <CJK>
+ 0x4D29, 0x5E7D, // <CJK>
+ 0x4D2A, 0x60A0, // <CJK>
+ 0x4D2B, 0x6182, // <CJK>
+ 0x4D2C, 0x63D6, // <CJK>
+ 0x4D2D, 0x6709, // <CJK>
+ 0x4D2E, 0x67DA, // <CJK>
+ 0x4D2F, 0x6E67, // <CJK>
+ 0x4D30, 0x6D8C, // <CJK>
+ 0x4D31, 0x7336, // <CJK>
+ 0x4D32, 0x7337, // <CJK>
+ 0x4D33, 0x7531, // <CJK>
+ 0x4D34, 0x7950, // <CJK>
+ 0x4D35, 0x88D5, // <CJK>
+ 0x4D36, 0x8A98, // <CJK>
+ 0x4D37, 0x904A, // <CJK>
+ 0x4D38, 0x9091, // <CJK>
+ 0x4D39, 0x90F5, // <CJK>
+ 0x4D3A, 0x96C4, // <CJK>
+ 0x4D3B, 0x878D, // <CJK>
+ 0x4D3C, 0x5915, // <CJK>
+ 0x4D3D, 0x4E88, // <CJK>
+ 0x4D3E, 0x4F59, // <CJK>
+ 0x4D3F, 0x4E0E, // <CJK>
+ 0x4D40, 0x8A89, // <CJK>
+ 0x4D41, 0x8F3F, // <CJK>
+ 0x4D42, 0x9810, // <CJK>
+ 0x4D43, 0x50AD, // <CJK>
+ 0x4D44, 0x5E7C, // <CJK>
+ 0x4D45, 0x5996, // <CJK>
+ 0x4D46, 0x5BB9, // <CJK>
+ 0x4D47, 0x5EB8, // <CJK>
+ 0x4D48, 0x63DA, // <CJK>
+ 0x4D49, 0x63FA, // <CJK>
+ 0x4D4A, 0x64C1, // <CJK>
+ 0x4D4B, 0x66DC, // <CJK>
+ 0x4D4C, 0x694A, // <CJK>
+ 0x4D4D, 0x69D8, // <CJK>
+ 0x4D4E, 0x6D0B, // <CJK>
+ 0x4D4F, 0x6EB6, // <CJK>
+ 0x4D50, 0x7194, // <CJK>
+ 0x4D51, 0x7528, // <CJK>
+ 0x4D52, 0x7AAF, // <CJK>
+ 0x4D53, 0x7F8A, // <CJK>
+ 0x4D54, 0x8000, // <CJK>
+ 0x4D55, 0x8449, // <CJK>
+ 0x4D56, 0x84C9, // <CJK>
+ 0x4D57, 0x8981, // <CJK>
+ 0x4D58, 0x8B21, // <CJK>
+ 0x4D59, 0x8E0A, // <CJK>
+ 0x4D5A, 0x9065, // <CJK>
+ 0x4D5B, 0x967D, // <CJK>
+ 0x4D5C, 0x990A, // <CJK>
+ 0x4D5D, 0x617E, // <CJK>
+ 0x4D5E, 0x6291, // <CJK>
+ 0x4D5F, 0x6B32, // <CJK>
+ 0x4D60, 0x6C83, // <CJK>
+ 0x4D61, 0x6D74, // <CJK>
+ 0x4D62, 0x7FCC, // <CJK>
+ 0x4D63, 0x7FFC, // <CJK>
+ 0x4D64, 0x6DC0, // <CJK>
+ 0x4D65, 0x7F85, // <CJK>
+ 0x4D66, 0x87BA, // <CJK>
+ 0x4D67, 0x88F8, // <CJK>
+ 0x4D68, 0x6765, // <CJK>
+ 0x4D69, 0x83B1, // <CJK>
+ 0x4D6A, 0x983C, // <CJK>
+ 0x4D6B, 0x96F7, // <CJK>
+ 0x4D6C, 0x6D1B, // <CJK>
+ 0x4D6D, 0x7D61, // <CJK>
+ 0x4D6E, 0x843D, // <CJK>
+ 0x4D6F, 0x916A, // <CJK>
+ 0x4D70, 0x4E71, // <CJK>
+ 0x4D71, 0x5375, // <CJK>
+ 0x4D72, 0x5D50, // <CJK>
+ 0x4D73, 0x6B04, // <CJK>
+ 0x4D74, 0x6FEB, // <CJK>
+ 0x4D75, 0x85CD, // <CJK>
+ 0x4D76, 0x862D, // <CJK>
+ 0x4D77, 0x89A7, // <CJK>
+ 0x4D78, 0x5229, // <CJK>
+ 0x4D79, 0x540F, // <CJK>
+ 0x4D7A, 0x5C65, // <CJK>
+ 0x4D7B, 0x674E, // <CJK>
+ 0x4D7C, 0x68A8, // <CJK>
+ 0x4D7D, 0x7406, // <CJK>
+ 0x4D7E, 0x7483, // <CJK>
+ 0x4E21, 0x75E2, // <CJK>
+ 0x4E22, 0x88CF, // <CJK>
+ 0x4E23, 0x88E1, // <CJK>
+ 0x4E24, 0x91CC, // <CJK>
+ 0x4E25, 0x96E2, // <CJK>
+ 0x4E26, 0x9678, // <CJK>
+ 0x4E27, 0x5F8B, // <CJK>
+ 0x4E28, 0x7387, // <CJK>
+ 0x4E29, 0x7ACB, // <CJK>
+ 0x4E2A, 0x844E, // <CJK>
+ 0x4E2B, 0x63A0, // <CJK>
+ 0x4E2C, 0x7565, // <CJK>
+ 0x4E2D, 0x5289, // <CJK>
+ 0x4E2E, 0x6D41, // <CJK>
+ 0x4E2F, 0x6E9C, // <CJK>
+ 0x4E30, 0x7409, // <CJK>
+ 0x4E31, 0x7559, // <CJK>
+ 0x4E32, 0x786B, // <CJK>
+ 0x4E33, 0x7C92, // <CJK>
+ 0x4E34, 0x9686, // <CJK>
+ 0x4E35, 0x7ADC, // <CJK>
+ 0x4E36, 0x9F8D, // <CJK>
+ 0x4E37, 0x4FB6, // <CJK>
+ 0x4E38, 0x616E, // <CJK>
+ 0x4E39, 0x65C5, // <CJK>
+ 0x4E3A, 0x865C, // <CJK>
+ 0x4E3B, 0x4E86, // <CJK>
+ 0x4E3C, 0x4EAE, // <CJK>
+ 0x4E3D, 0x50DA, // <CJK>
+ 0x4E3E, 0x4E21, // <CJK>
+ 0x4E3F, 0x51CC, // <CJK>
+ 0x4E40, 0x5BEE, // <CJK>
+ 0x4E41, 0x6599, // <CJK>
+ 0x4E42, 0x6881, // <CJK>
+ 0x4E43, 0x6DBC, // <CJK>
+ 0x4E44, 0x731F, // <CJK>
+ 0x4E45, 0x7642, // <CJK>
+ 0x4E46, 0x77AD, // <CJK>
+ 0x4E47, 0x7A1C, // <CJK>
+ 0x4E48, 0x7CE7, // <CJK>
+ 0x4E49, 0x826F, // <CJK>
+ 0x4E4A, 0x8AD2, // <CJK>
+ 0x4E4B, 0x907C, // <CJK>
+ 0x4E4C, 0x91CF, // <CJK>
+ 0x4E4D, 0x9675, // <CJK>
+ 0x4E4E, 0x9818, // <CJK>
+ 0x4E4F, 0x529B, // <CJK>
+ 0x4E50, 0x7DD1, // <CJK>
+ 0x4E51, 0x502B, // <CJK>
+ 0x4E52, 0x5398, // <CJK>
+ 0x4E53, 0x6797, // <CJK>
+ 0x4E54, 0x6DCB, // <CJK>
+ 0x4E55, 0x71D0, // <CJK>
+ 0x4E56, 0x7433, // <CJK>
+ 0x4E57, 0x81E8, // <CJK>
+ 0x4E58, 0x8F2A, // <CJK>
+ 0x4E59, 0x96A3, // <CJK>
+ 0x4E5A, 0x9C57, // <CJK>
+ 0x4E5B, 0x9E9F, // <CJK>
+ 0x4E5C, 0x7460, // <CJK>
+ 0x4E5D, 0x5841, // <CJK>
+ 0x4E5E, 0x6D99, // <CJK>
+ 0x4E5F, 0x7D2F, // <CJK>
+ 0x4E60, 0x985E, // <CJK>
+ 0x4E61, 0x4EE4, // <CJK>
+ 0x4E62, 0x4F36, // <CJK>
+ 0x4E63, 0x4F8B, // <CJK>
+ 0x4E64, 0x51B7, // <CJK>
+ 0x4E65, 0x52B1, // <CJK>
+ 0x4E66, 0x5DBA, // <CJK>
+ 0x4E67, 0x601C, // <CJK>
+ 0x4E68, 0x73B2, // <CJK>
+ 0x4E69, 0x793C, // <CJK>
+ 0x4E6A, 0x82D3, // <CJK>
+ 0x4E6B, 0x9234, // <CJK>
+ 0x4E6C, 0x96B7, // <CJK>
+ 0x4E6D, 0x96F6, // <CJK>
+ 0x4E6E, 0x970A, // <CJK>
+ 0x4E6F, 0x9E97, // <CJK>
+ 0x4E70, 0x9F62, // <CJK>
+ 0x4E71, 0x66A6, // <CJK>
+ 0x4E72, 0x6B74, // <CJK>
+ 0x4E73, 0x5217, // <CJK>
+ 0x4E74, 0x52A3, // <CJK>
+ 0x4E75, 0x70C8, // <CJK>
+ 0x4E76, 0x88C2, // <CJK>
+ 0x4E77, 0x5EC9, // <CJK>
+ 0x4E78, 0x604B, // <CJK>
+ 0x4E79, 0x6190, // <CJK>
+ 0x4E7A, 0x6F23, // <CJK>
+ 0x4E7B, 0x7149, // <CJK>
+ 0x4E7C, 0x7C3E, // <CJK>
+ 0x4E7D, 0x7DF4, // <CJK>
+ 0x4E7E, 0x806F, // <CJK>
+ 0x4F21, 0x84EE, // <CJK>
+ 0x4F22, 0x9023, // <CJK>
+ 0x4F23, 0x932C, // <CJK>
+ 0x4F24, 0x5442, // <CJK>
+ 0x4F25, 0x9B6F, // <CJK>
+ 0x4F26, 0x6AD3, // <CJK>
+ 0x4F27, 0x7089, // <CJK>
+ 0x4F28, 0x8CC2, // <CJK>
+ 0x4F29, 0x8DEF, // <CJK>
+ 0x4F2A, 0x9732, // <CJK>
+ 0x4F2B, 0x52B4, // <CJK>
+ 0x4F2C, 0x5A41, // <CJK>
+ 0x4F2D, 0x5ECA, // <CJK>
+ 0x4F2E, 0x5F04, // <CJK>
+ 0x4F2F, 0x6717, // <CJK>
+ 0x4F30, 0x697C, // <CJK>
+ 0x4F31, 0x6994, // <CJK>
+ 0x4F32, 0x6D6A, // <CJK>
+ 0x4F33, 0x6F0F, // <CJK>
+ 0x4F34, 0x7262, // <CJK>
+ 0x4F35, 0x72FC, // <CJK>
+ 0x4F36, 0x7BED, // <CJK>
+ 0x4F37, 0x8001, // <CJK>
+ 0x4F38, 0x807E, // <CJK>
+ 0x4F39, 0x874B, // <CJK>
+ 0x4F3A, 0x90CE, // <CJK>
+ 0x4F3B, 0x516D, // <CJK>
+ 0x4F3C, 0x9E93, // <CJK>
+ 0x4F3D, 0x7984, // <CJK>
+ 0x4F3E, 0x808B, // <CJK>
+ 0x4F3F, 0x9332, // <CJK>
+ 0x4F40, 0x8AD6, // <CJK>
+ 0x4F41, 0x502D, // <CJK>
+ 0x4F42, 0x548C, // <CJK>
+ 0x4F43, 0x8A71, // <CJK>
+ 0x4F44, 0x6B6A, // <CJK>
+ 0x4F45, 0x8CC4, // <CJK>
+ 0x4F46, 0x8107, // <CJK>
+ 0x4F47, 0x60D1, // <CJK>
+ 0x4F48, 0x67A0, // <CJK>
+ 0x4F49, 0x9DF2, // <CJK>
+ 0x4F4A, 0x4E99, // <CJK>
+ 0x4F4B, 0x4E98, // <CJK>
+ 0x4F4C, 0x9C10, // <CJK>
+ 0x4F4D, 0x8A6B, // <CJK>
+ 0x4F4E, 0x85C1, // <CJK>
+ 0x4F4F, 0x8568, // <CJK>
+ 0x4F50, 0x6900, // <CJK>
+ 0x4F51, 0x6E7E, // <CJK>
+ 0x4F52, 0x7897, // <CJK>
+ 0x4F53, 0x8155, // <CJK>
+ 0x5021, 0x5F0C, // <CJK>
+ 0x5022, 0x4E10, // <CJK>
+ 0x5023, 0x4E15, // <CJK>
+ 0x5024, 0x4E2A, // <CJK>
+ 0x5025, 0x4E31, // <CJK>
+ 0x5026, 0x4E36, // <CJK>
+ 0x5027, 0x4E3C, // <CJK>
+ 0x5028, 0x4E3F, // <CJK>
+ 0x5029, 0x4E42, // <CJK>
+ 0x502A, 0x4E56, // <CJK>
+ 0x502B, 0x4E58, // <CJK>
+ 0x502C, 0x4E82, // <CJK>
+ 0x502D, 0x4E85, // <CJK>
+ 0x502E, 0x8C6B, // <CJK>
+ 0x502F, 0x4E8A, // <CJK>
+ 0x5030, 0x8212, // <CJK>
+ 0x5031, 0x5F0D, // <CJK>
+ 0x5032, 0x4E8E, // <CJK>
+ 0x5033, 0x4E9E, // <CJK>
+ 0x5034, 0x4E9F, // <CJK>
+ 0x5035, 0x4EA0, // <CJK>
+ 0x5036, 0x4EA2, // <CJK>
+ 0x5037, 0x4EB0, // <CJK>
+ 0x5038, 0x4EB3, // <CJK>
+ 0x5039, 0x4EB6, // <CJK>
+ 0x503A, 0x4ECE, // <CJK>
+ 0x503B, 0x4ECD, // <CJK>
+ 0x503C, 0x4EC4, // <CJK>
+ 0x503D, 0x4EC6, // <CJK>
+ 0x503E, 0x4EC2, // <CJK>
+ 0x503F, 0x4ED7, // <CJK>
+ 0x5040, 0x4EDE, // <CJK>
+ 0x5041, 0x4EED, // <CJK>
+ 0x5042, 0x4EDF, // <CJK>
+ 0x5043, 0x4EF7, // <CJK>
+ 0x5044, 0x4F09, // <CJK>
+ 0x5045, 0x4F5A, // <CJK>
+ 0x5046, 0x4F30, // <CJK>
+ 0x5047, 0x4F5B, // <CJK>
+ 0x5048, 0x4F5D, // <CJK>
+ 0x5049, 0x4F57, // <CJK>
+ 0x504A, 0x4F47, // <CJK>
+ 0x504B, 0x4F76, // <CJK>
+ 0x504C, 0x4F88, // <CJK>
+ 0x504D, 0x4F8F, // <CJK>
+ 0x504E, 0x4F98, // <CJK>
+ 0x504F, 0x4F7B, // <CJK>
+ 0x5050, 0x4F69, // <CJK>
+ 0x5051, 0x4F70, // <CJK>
+ 0x5052, 0x4F91, // <CJK>
+ 0x5053, 0x4F6F, // <CJK>
+ 0x5054, 0x4F86, // <CJK>
+ 0x5055, 0x4F96, // <CJK>
+ 0x5056, 0x5118, // <CJK>
+ 0x5057, 0x4FD4, // <CJK>
+ 0x5058, 0x4FDF, // <CJK>
+ 0x5059, 0x4FCE, // <CJK>
+ 0x505A, 0x4FD8, // <CJK>
+ 0x505B, 0x4FDB, // <CJK>
+ 0x505C, 0x4FD1, // <CJK>
+ 0x505D, 0x4FDA, // <CJK>
+ 0x505E, 0x4FD0, // <CJK>
+ 0x505F, 0x4FE4, // <CJK>
+ 0x5060, 0x4FE5, // <CJK>
+ 0x5061, 0x501A, // <CJK>
+ 0x5062, 0x5028, // <CJK>
+ 0x5063, 0x5014, // <CJK>
+ 0x5064, 0x502A, // <CJK>
+ 0x5065, 0x5025, // <CJK>
+ 0x5066, 0x5005, // <CJK>
+ 0x5067, 0x4F1C, // <CJK>
+ 0x5068, 0x4FF6, // <CJK>
+ 0x5069, 0x5021, // <CJK>
+ 0x506A, 0x5029, // <CJK>
+ 0x506B, 0x502C, // <CJK>
+ 0x506C, 0x4FFE, // <CJK>
+ 0x506D, 0x4FEF, // <CJK>
+ 0x506E, 0x5011, // <CJK>
+ 0x506F, 0x5006, // <CJK>
+ 0x5070, 0x5043, // <CJK>
+ 0x5071, 0x5047, // <CJK>
+ 0x5072, 0x6703, // <CJK>
+ 0x5073, 0x5055, // <CJK>
+ 0x5074, 0x5050, // <CJK>
+ 0x5075, 0x5048, // <CJK>
+ 0x5076, 0x505A, // <CJK>
+ 0x5077, 0x5056, // <CJK>
+ 0x5078, 0x506C, // <CJK>
+ 0x5079, 0x5078, // <CJK>
+ 0x507A, 0x5080, // <CJK>
+ 0x507B, 0x509A, // <CJK>
+ 0x507C, 0x5085, // <CJK>
+ 0x507D, 0x50B4, // <CJK>
+ 0x507E, 0x50B2, // <CJK>
+ 0x5121, 0x50C9, // <CJK>
+ 0x5122, 0x50CA, // <CJK>
+ 0x5123, 0x50B3, // <CJK>
+ 0x5124, 0x50C2, // <CJK>
+ 0x5125, 0x50D6, // <CJK>
+ 0x5126, 0x50DE, // <CJK>
+ 0x5127, 0x50E5, // <CJK>
+ 0x5128, 0x50ED, // <CJK>
+ 0x5129, 0x50E3, // <CJK>
+ 0x512A, 0x50EE, // <CJK>
+ 0x512B, 0x50F9, // <CJK>
+ 0x512C, 0x50F5, // <CJK>
+ 0x512D, 0x5109, // <CJK>
+ 0x512E, 0x5101, // <CJK>
+ 0x512F, 0x5102, // <CJK>
+ 0x5130, 0x5116, // <CJK>
+ 0x5131, 0x5115, // <CJK>
+ 0x5132, 0x5114, // <CJK>
+ 0x5133, 0x511A, // <CJK>
+ 0x5134, 0x5121, // <CJK>
+ 0x5135, 0x513A, // <CJK>
+ 0x5136, 0x5137, // <CJK>
+ 0x5137, 0x513C, // <CJK>
+ 0x5138, 0x513B, // <CJK>
+ 0x5139, 0x513F, // <CJK>
+ 0x513A, 0x5140, // <CJK>
+ 0x513B, 0x5152, // <CJK>
+ 0x513C, 0x514C, // <CJK>
+ 0x513D, 0x5154, // <CJK>
+ 0x513E, 0x5162, // <CJK>
+ 0x513F, 0x7AF8, // <CJK>
+ 0x5140, 0x5169, // <CJK>
+ 0x5141, 0x516A, // <CJK>
+ 0x5142, 0x516E, // <CJK>
+ 0x5143, 0x5180, // <CJK>
+ 0x5144, 0x5182, // <CJK>
+ 0x5145, 0x56D8, // <CJK>
+ 0x5146, 0x518C, // <CJK>
+ 0x5147, 0x5189, // <CJK>
+ 0x5148, 0x518F, // <CJK>
+ 0x5149, 0x5191, // <CJK>
+ 0x514A, 0x5193, // <CJK>
+ 0x514B, 0x5195, // <CJK>
+ 0x514C, 0x5196, // <CJK>
+ 0x514D, 0x51A4, // <CJK>
+ 0x514E, 0x51A6, // <CJK>
+ 0x514F, 0x51A2, // <CJK>
+ 0x5150, 0x51A9, // <CJK>
+ 0x5151, 0x51AA, // <CJK>
+ 0x5152, 0x51AB, // <CJK>
+ 0x5153, 0x51B3, // <CJK>
+ 0x5154, 0x51B1, // <CJK>
+ 0x5155, 0x51B2, // <CJK>
+ 0x5156, 0x51B0, // <CJK>
+ 0x5157, 0x51B5, // <CJK>
+ 0x5158, 0x51BD, // <CJK>
+ 0x5159, 0x51C5, // <CJK>
+ 0x515A, 0x51C9, // <CJK>
+ 0x515B, 0x51DB, // <CJK>
+ 0x515C, 0x51E0, // <CJK>
+ 0x515D, 0x8655, // <CJK>
+ 0x515E, 0x51E9, // <CJK>
+ 0x515F, 0x51ED, // <CJK>
+ 0x5160, 0x51F0, // <CJK>
+ 0x5161, 0x51F5, // <CJK>
+ 0x5162, 0x51FE, // <CJK>
+ 0x5163, 0x5204, // <CJK>
+ 0x5164, 0x520B, // <CJK>
+ 0x5165, 0x5214, // <CJK>
+ 0x5166, 0x520E, // <CJK>
+ 0x5167, 0x5227, // <CJK>
+ 0x5168, 0x522A, // <CJK>
+ 0x5169, 0x522E, // <CJK>
+ 0x516A, 0x5233, // <CJK>
+ 0x516B, 0x5239, // <CJK>
+ 0x516C, 0x524F, // <CJK>
+ 0x516D, 0x5244, // <CJK>
+ 0x516E, 0x524B, // <CJK>
+ 0x516F, 0x524C, // <CJK>
+ 0x5170, 0x525E, // <CJK>
+ 0x5171, 0x5254, // <CJK>
+ 0x5172, 0x526A, // <CJK>
+ 0x5173, 0x5274, // <CJK>
+ 0x5174, 0x5269, // <CJK>
+ 0x5175, 0x5273, // <CJK>
+ 0x5176, 0x527F, // <CJK>
+ 0x5177, 0x527D, // <CJK>
+ 0x5178, 0x528D, // <CJK>
+ 0x5179, 0x5294, // <CJK>
+ 0x517A, 0x5292, // <CJK>
+ 0x517B, 0x5271, // <CJK>
+ 0x517C, 0x5288, // <CJK>
+ 0x517D, 0x5291, // <CJK>
+ 0x517E, 0x8FA8, // <CJK>
+ 0x5221, 0x8FA7, // <CJK>
+ 0x5222, 0x52AC, // <CJK>
+ 0x5223, 0x52AD, // <CJK>
+ 0x5224, 0x52BC, // <CJK>
+ 0x5225, 0x52B5, // <CJK>
+ 0x5226, 0x52C1, // <CJK>
+ 0x5227, 0x52CD, // <CJK>
+ 0x5228, 0x52D7, // <CJK>
+ 0x5229, 0x52DE, // <CJK>
+ 0x522A, 0x52E3, // <CJK>
+ 0x522B, 0x52E6, // <CJK>
+ 0x522C, 0x98ED, // <CJK>
+ 0x522D, 0x52E0, // <CJK>
+ 0x522E, 0x52F3, // <CJK>
+ 0x522F, 0x52F5, // <CJK>
+ 0x5230, 0x52F8, // <CJK>
+ 0x5231, 0x52F9, // <CJK>
+ 0x5232, 0x5306, // <CJK>
+ 0x5233, 0x5308, // <CJK>
+ 0x5234, 0x7538, // <CJK>
+ 0x5235, 0x530D, // <CJK>
+ 0x5236, 0x5310, // <CJK>
+ 0x5237, 0x530F, // <CJK>
+ 0x5238, 0x5315, // <CJK>
+ 0x5239, 0x531A, // <CJK>
+ 0x523A, 0x5323, // <CJK>
+ 0x523B, 0x532F, // <CJK>
+ 0x523C, 0x5331, // <CJK>
+ 0x523D, 0x5333, // <CJK>
+ 0x523E, 0x5338, // <CJK>
+ 0x523F, 0x5340, // <CJK>
+ 0x5240, 0x5346, // <CJK>
+ 0x5241, 0x5345, // <CJK>
+ 0x5242, 0x4E17, // <CJK>
+ 0x5243, 0x5349, // <CJK>
+ 0x5244, 0x534D, // <CJK>
+ 0x5245, 0x51D6, // <CJK>
+ 0x5246, 0x535E, // <CJK>
+ 0x5247, 0x5369, // <CJK>
+ 0x5248, 0x536E, // <CJK>
+ 0x5249, 0x5918, // <CJK>
+ 0x524A, 0x537B, // <CJK>
+ 0x524B, 0x5377, // <CJK>
+ 0x524C, 0x5382, // <CJK>
+ 0x524D, 0x5396, // <CJK>
+ 0x524E, 0x53A0, // <CJK>
+ 0x524F, 0x53A6, // <CJK>
+ 0x5250, 0x53A5, // <CJK>
+ 0x5251, 0x53AE, // <CJK>
+ 0x5252, 0x53B0, // <CJK>
+ 0x5253, 0x53B6, // <CJK>
+ 0x5254, 0x53C3, // <CJK>
+ 0x5255, 0x7C12, // <CJK>
+ 0x5256, 0x96D9, // <CJK>
+ 0x5257, 0x53DF, // <CJK>
+ 0x5258, 0x66FC, // <CJK>
+ 0x5259, 0x71EE, // <CJK>
+ 0x525A, 0x53EE, // <CJK>
+ 0x525B, 0x53E8, // <CJK>
+ 0x525C, 0x53ED, // <CJK>
+ 0x525D, 0x53FA, // <CJK>
+ 0x525E, 0x5401, // <CJK>
+ 0x525F, 0x543D, // <CJK>
+ 0x5260, 0x5440, // <CJK>
+ 0x5261, 0x542C, // <CJK>
+ 0x5262, 0x542D, // <CJK>
+ 0x5263, 0x543C, // <CJK>
+ 0x5264, 0x542E, // <CJK>
+ 0x5265, 0x5436, // <CJK>
+ 0x5266, 0x5429, // <CJK>
+ 0x5267, 0x541D, // <CJK>
+ 0x5268, 0x544E, // <CJK>
+ 0x5269, 0x548F, // <CJK>
+ 0x526A, 0x5475, // <CJK>
+ 0x526B, 0x548E, // <CJK>
+ 0x526C, 0x545F, // <CJK>
+ 0x526D, 0x5471, // <CJK>
+ 0x526E, 0x5477, // <CJK>
+ 0x526F, 0x5470, // <CJK>
+ 0x5270, 0x5492, // <CJK>
+ 0x5271, 0x547B, // <CJK>
+ 0x5272, 0x5480, // <CJK>
+ 0x5273, 0x5476, // <CJK>
+ 0x5274, 0x5484, // <CJK>
+ 0x5275, 0x5490, // <CJK>
+ 0x5276, 0x5486, // <CJK>
+ 0x5277, 0x54C7, // <CJK>
+ 0x5278, 0x54A2, // <CJK>
+ 0x5279, 0x54B8, // <CJK>
+ 0x527A, 0x54A5, // <CJK>
+ 0x527B, 0x54AC, // <CJK>
+ 0x527C, 0x54C4, // <CJK>
+ 0x527D, 0x54C8, // <CJK>
+ 0x527E, 0x54A8, // <CJK>
+ 0x5321, 0x54AB, // <CJK>
+ 0x5322, 0x54C2, // <CJK>
+ 0x5323, 0x54A4, // <CJK>
+ 0x5324, 0x54BE, // <CJK>
+ 0x5325, 0x54BC, // <CJK>
+ 0x5326, 0x54D8, // <CJK>
+ 0x5327, 0x54E5, // <CJK>
+ 0x5328, 0x54E6, // <CJK>
+ 0x5329, 0x550F, // <CJK>
+ 0x532A, 0x5514, // <CJK>
+ 0x532B, 0x54FD, // <CJK>
+ 0x532C, 0x54EE, // <CJK>
+ 0x532D, 0x54ED, // <CJK>
+ 0x532E, 0x54FA, // <CJK>
+ 0x532F, 0x54E2, // <CJK>
+ 0x5330, 0x5539, // <CJK>
+ 0x5331, 0x5540, // <CJK>
+ 0x5332, 0x5563, // <CJK>
+ 0x5333, 0x554C, // <CJK>
+ 0x5334, 0x552E, // <CJK>
+ 0x5335, 0x555C, // <CJK>
+ 0x5336, 0x5545, // <CJK>
+ 0x5337, 0x5556, // <CJK>
+ 0x5338, 0x5557, // <CJK>
+ 0x5339, 0x5538, // <CJK>
+ 0x533A, 0x5533, // <CJK>
+ 0x533B, 0x555D, // <CJK>
+ 0x533C, 0x5599, // <CJK>
+ 0x533D, 0x5580, // <CJK>
+ 0x533E, 0x54AF, // <CJK>
+ 0x533F, 0x558A, // <CJK>
+ 0x5340, 0x559F, // <CJK>
+ 0x5341, 0x557B, // <CJK>
+ 0x5342, 0x557E, // <CJK>
+ 0x5343, 0x5598, // <CJK>
+ 0x5344, 0x559E, // <CJK>
+ 0x5345, 0x55AE, // <CJK>
+ 0x5346, 0x557C, // <CJK>
+ 0x5347, 0x5583, // <CJK>
+ 0x5348, 0x55A9, // <CJK>
+ 0x5349, 0x5587, // <CJK>
+ 0x534A, 0x55A8, // <CJK>
+ 0x534B, 0x55DA, // <CJK>
+ 0x534C, 0x55C5, // <CJK>
+ 0x534D, 0x55DF, // <CJK>
+ 0x534E, 0x55C4, // <CJK>
+ 0x534F, 0x55DC, // <CJK>
+ 0x5350, 0x55E4, // <CJK>
+ 0x5351, 0x55D4, // <CJK>
+ 0x5352, 0x5614, // <CJK>
+ 0x5353, 0x55F7, // <CJK>
+ 0x5354, 0x5616, // <CJK>
+ 0x5355, 0x55FE, // <CJK>
+ 0x5356, 0x55FD, // <CJK>
+ 0x5357, 0x561B, // <CJK>
+ 0x5358, 0x55F9, // <CJK>
+ 0x5359, 0x564E, // <CJK>
+ 0x535A, 0x5650, // <CJK>
+ 0x535B, 0x71DF, // <CJK>
+ 0x535C, 0x5634, // <CJK>
+ 0x535D, 0x5636, // <CJK>
+ 0x535E, 0x5632, // <CJK>
+ 0x535F, 0x5638, // <CJK>
+ 0x5360, 0x566B, // <CJK>
+ 0x5361, 0x5664, // <CJK>
+ 0x5362, 0x562F, // <CJK>
+ 0x5363, 0x566C, // <CJK>
+ 0x5364, 0x566A, // <CJK>
+ 0x5365, 0x5686, // <CJK>
+ 0x5366, 0x5680, // <CJK>
+ 0x5367, 0x568A, // <CJK>
+ 0x5368, 0x56A0, // <CJK>
+ 0x5369, 0x5694, // <CJK>
+ 0x536A, 0x568F, // <CJK>
+ 0x536B, 0x56A5, // <CJK>
+ 0x536C, 0x56AE, // <CJK>
+ 0x536D, 0x56B6, // <CJK>
+ 0x536E, 0x56B4, // <CJK>
+ 0x536F, 0x56C2, // <CJK>
+ 0x5370, 0x56BC, // <CJK>
+ 0x5371, 0x56C1, // <CJK>
+ 0x5372, 0x56C3, // <CJK>
+ 0x5373, 0x56C0, // <CJK>
+ 0x5374, 0x56C8, // <CJK>
+ 0x5375, 0x56CE, // <CJK>
+ 0x5376, 0x56D1, // <CJK>
+ 0x5377, 0x56D3, // <CJK>
+ 0x5378, 0x56D7, // <CJK>
+ 0x5379, 0x56EE, // <CJK>
+ 0x537A, 0x56F9, // <CJK>
+ 0x537B, 0x5700, // <CJK>
+ 0x537C, 0x56FF, // <CJK>
+ 0x537D, 0x5704, // <CJK>
+ 0x537E, 0x5709, // <CJK>
+ 0x5421, 0x5708, // <CJK>
+ 0x5422, 0x570B, // <CJK>
+ 0x5423, 0x570D, // <CJK>
+ 0x5424, 0x5713, // <CJK>
+ 0x5425, 0x5718, // <CJK>
+ 0x5426, 0x5716, // <CJK>
+ 0x5427, 0x55C7, // <CJK>
+ 0x5428, 0x571C, // <CJK>
+ 0x5429, 0x5726, // <CJK>
+ 0x542A, 0x5737, // <CJK>
+ 0x542B, 0x5738, // <CJK>
+ 0x542C, 0x574E, // <CJK>
+ 0x542D, 0x573B, // <CJK>
+ 0x542E, 0x5740, // <CJK>
+ 0x542F, 0x574F, // <CJK>
+ 0x5430, 0x5769, // <CJK>
+ 0x5431, 0x57C0, // <CJK>
+ 0x5432, 0x5788, // <CJK>
+ 0x5433, 0x5761, // <CJK>
+ 0x5434, 0x577F, // <CJK>
+ 0x5435, 0x5789, // <CJK>
+ 0x5436, 0x5793, // <CJK>
+ 0x5437, 0x57A0, // <CJK>
+ 0x5438, 0x57B3, // <CJK>
+ 0x5439, 0x57A4, // <CJK>
+ 0x543A, 0x57AA, // <CJK>
+ 0x543B, 0x57B0, // <CJK>
+ 0x543C, 0x57C3, // <CJK>
+ 0x543D, 0x57C6, // <CJK>
+ 0x543E, 0x57D4, // <CJK>
+ 0x543F, 0x57D2, // <CJK>
+ 0x5440, 0x57D3, // <CJK>
+ 0x5441, 0x580A, // <CJK>
+ 0x5442, 0x57D6, // <CJK>
+ 0x5443, 0x57E3, // <CJK>
+ 0x5444, 0x580B, // <CJK>
+ 0x5445, 0x5819, // <CJK>
+ 0x5446, 0x581D, // <CJK>
+ 0x5447, 0x5872, // <CJK>
+ 0x5448, 0x5821, // <CJK>
+ 0x5449, 0x5862, // <CJK>
+ 0x544A, 0x584B, // <CJK>
+ 0x544B, 0x5870, // <CJK>
+ 0x544C, 0x6BC0, // <CJK>
+ 0x544D, 0x5852, // <CJK>
+ 0x544E, 0x583D, // <CJK>
+ 0x544F, 0x5879, // <CJK>
+ 0x5450, 0x5885, // <CJK>
+ 0x5451, 0x58B9, // <CJK>
+ 0x5452, 0x589F, // <CJK>
+ 0x5453, 0x58AB, // <CJK>
+ 0x5454, 0x58BA, // <CJK>
+ 0x5455, 0x58DE, // <CJK>
+ 0x5456, 0x58BB, // <CJK>
+ 0x5457, 0x58B8, // <CJK>
+ 0x5458, 0x58AE, // <CJK>
+ 0x5459, 0x58C5, // <CJK>
+ 0x545A, 0x58D3, // <CJK>
+ 0x545B, 0x58D1, // <CJK>
+ 0x545C, 0x58D7, // <CJK>
+ 0x545D, 0x58D9, // <CJK>
+ 0x545E, 0x58D8, // <CJK>
+ 0x545F, 0x58E5, // <CJK>
+ 0x5460, 0x58DC, // <CJK>
+ 0x5461, 0x58E4, // <CJK>
+ 0x5462, 0x58DF, // <CJK>
+ 0x5463, 0x58EF, // <CJK>
+ 0x5464, 0x58FA, // <CJK>
+ 0x5465, 0x58F9, // <CJK>
+ 0x5466, 0x58FB, // <CJK>
+ 0x5467, 0x58FC, // <CJK>
+ 0x5468, 0x58FD, // <CJK>
+ 0x5469, 0x5902, // <CJK>
+ 0x546A, 0x590A, // <CJK>
+ 0x546B, 0x5910, // <CJK>
+ 0x546C, 0x591B, // <CJK>
+ 0x546D, 0x68A6, // <CJK>
+ 0x546E, 0x5925, // <CJK>
+ 0x546F, 0x592C, // <CJK>
+ 0x5470, 0x592D, // <CJK>
+ 0x5471, 0x5932, // <CJK>
+ 0x5472, 0x5938, // <CJK>
+ 0x5473, 0x593E, // <CJK>
+ 0x5474, 0x7AD2, // <CJK>
+ 0x5475, 0x5955, // <CJK>
+ 0x5476, 0x5950, // <CJK>
+ 0x5477, 0x594E, // <CJK>
+ 0x5478, 0x595A, // <CJK>
+ 0x5479, 0x5958, // <CJK>
+ 0x547A, 0x5962, // <CJK>
+ 0x547B, 0x5960, // <CJK>
+ 0x547C, 0x5967, // <CJK>
+ 0x547D, 0x596C, // <CJK>
+ 0x547E, 0x5969, // <CJK>
+ 0x5521, 0x5978, // <CJK>
+ 0x5522, 0x5981, // <CJK>
+ 0x5523, 0x599D, // <CJK>
+ 0x5524, 0x4F5E, // <CJK>
+ 0x5525, 0x4FAB, // <CJK>
+ 0x5526, 0x59A3, // <CJK>
+ 0x5527, 0x59B2, // <CJK>
+ 0x5528, 0x59C6, // <CJK>
+ 0x5529, 0x59E8, // <CJK>
+ 0x552A, 0x59DC, // <CJK>
+ 0x552B, 0x598D, // <CJK>
+ 0x552C, 0x59D9, // <CJK>
+ 0x552D, 0x59DA, // <CJK>
+ 0x552E, 0x5A25, // <CJK>
+ 0x552F, 0x5A1F, // <CJK>
+ 0x5530, 0x5A11, // <CJK>
+ 0x5531, 0x5A1C, // <CJK>
+ 0x5532, 0x5A09, // <CJK>
+ 0x5533, 0x5A1A, // <CJK>
+ 0x5534, 0x5A40, // <CJK>
+ 0x5535, 0x5A6C, // <CJK>
+ 0x5536, 0x5A49, // <CJK>
+ 0x5537, 0x5A35, // <CJK>
+ 0x5538, 0x5A36, // <CJK>
+ 0x5539, 0x5A62, // <CJK>
+ 0x553A, 0x5A6A, // <CJK>
+ 0x553B, 0x5A9A, // <CJK>
+ 0x553C, 0x5ABC, // <CJK>
+ 0x553D, 0x5ABE, // <CJK>
+ 0x553E, 0x5ACB, // <CJK>
+ 0x553F, 0x5AC2, // <CJK>
+ 0x5540, 0x5ABD, // <CJK>
+ 0x5541, 0x5AE3, // <CJK>
+ 0x5542, 0x5AD7, // <CJK>
+ 0x5543, 0x5AE6, // <CJK>
+ 0x5544, 0x5AE9, // <CJK>
+ 0x5545, 0x5AD6, // <CJK>
+ 0x5546, 0x5AFA, // <CJK>
+ 0x5547, 0x5AFB, // <CJK>
+ 0x5548, 0x5B0C, // <CJK>
+ 0x5549, 0x5B0B, // <CJK>
+ 0x554A, 0x5B16, // <CJK>
+ 0x554B, 0x5B32, // <CJK>
+ 0x554C, 0x5AD0, // <CJK>
+ 0x554D, 0x5B2A, // <CJK>
+ 0x554E, 0x5B36, // <CJK>
+ 0x554F, 0x5B3E, // <CJK>
+ 0x5550, 0x5B43, // <CJK>
+ 0x5551, 0x5B45, // <CJK>
+ 0x5552, 0x5B40, // <CJK>
+ 0x5553, 0x5B51, // <CJK>
+ 0x5554, 0x5B55, // <CJK>
+ 0x5555, 0x5B5A, // <CJK>
+ 0x5556, 0x5B5B, // <CJK>
+ 0x5557, 0x5B65, // <CJK>
+ 0x5558, 0x5B69, // <CJK>
+ 0x5559, 0x5B70, // <CJK>
+ 0x555A, 0x5B73, // <CJK>
+ 0x555B, 0x5B75, // <CJK>
+ 0x555C, 0x5B78, // <CJK>
+ 0x555D, 0x6588, // <CJK>
+ 0x555E, 0x5B7A, // <CJK>
+ 0x555F, 0x5B80, // <CJK>
+ 0x5560, 0x5B83, // <CJK>
+ 0x5561, 0x5BA6, // <CJK>
+ 0x5562, 0x5BB8, // <CJK>
+ 0x5563, 0x5BC3, // <CJK>
+ 0x5564, 0x5BC7, // <CJK>
+ 0x5565, 0x5BC9, // <CJK>
+ 0x5566, 0x5BD4, // <CJK>
+ 0x5567, 0x5BD0, // <CJK>
+ 0x5568, 0x5BE4, // <CJK>
+ 0x5569, 0x5BE6, // <CJK>
+ 0x556A, 0x5BE2, // <CJK>
+ 0x556B, 0x5BDE, // <CJK>
+ 0x556C, 0x5BE5, // <CJK>
+ 0x556D, 0x5BEB, // <CJK>
+ 0x556E, 0x5BF0, // <CJK>
+ 0x556F, 0x5BF6, // <CJK>
+ 0x5570, 0x5BF3, // <CJK>
+ 0x5571, 0x5C05, // <CJK>
+ 0x5572, 0x5C07, // <CJK>
+ 0x5573, 0x5C08, // <CJK>
+ 0x5574, 0x5C0D, // <CJK>
+ 0x5575, 0x5C13, // <CJK>
+ 0x5576, 0x5C20, // <CJK>
+ 0x5577, 0x5C22, // <CJK>
+ 0x5578, 0x5C28, // <CJK>
+ 0x5579, 0x5C38, // <CJK>
+ 0x557A, 0x5C39, // <CJK>
+ 0x557B, 0x5C41, // <CJK>
+ 0x557C, 0x5C46, // <CJK>
+ 0x557D, 0x5C4E, // <CJK>
+ 0x557E, 0x5C53, // <CJK>
+ 0x5621, 0x5C50, // <CJK>
+ 0x5622, 0x5C4F, // <CJK>
+ 0x5623, 0x5B71, // <CJK>
+ 0x5624, 0x5C6C, // <CJK>
+ 0x5625, 0x5C6E, // <CJK>
+ 0x5626, 0x4E62, // <CJK>
+ 0x5627, 0x5C76, // <CJK>
+ 0x5628, 0x5C79, // <CJK>
+ 0x5629, 0x5C8C, // <CJK>
+ 0x562A, 0x5C91, // <CJK>
+ 0x562B, 0x5C94, // <CJK>
+ 0x562C, 0x599B, // <CJK>
+ 0x562D, 0x5CAB, // <CJK>
+ 0x562E, 0x5CBB, // <CJK>
+ 0x562F, 0x5CB6, // <CJK>
+ 0x5630, 0x5CBC, // <CJK>
+ 0x5631, 0x5CB7, // <CJK>
+ 0x5632, 0x5CC5, // <CJK>
+ 0x5633, 0x5CBE, // <CJK>
+ 0x5634, 0x5CC7, // <CJK>
+ 0x5635, 0x5CD9, // <CJK>
+ 0x5636, 0x5CE9, // <CJK>
+ 0x5637, 0x5CFD, // <CJK>
+ 0x5638, 0x5CFA, // <CJK>
+ 0x5639, 0x5CED, // <CJK>
+ 0x563A, 0x5D8C, // <CJK>
+ 0x563B, 0x5CEA, // <CJK>
+ 0x563C, 0x5D0B, // <CJK>
+ 0x563D, 0x5D15, // <CJK>
+ 0x563E, 0x5D17, // <CJK>
+ 0x563F, 0x5D5C, // <CJK>
+ 0x5640, 0x5D1F, // <CJK>
+ 0x5641, 0x5D1B, // <CJK>
+ 0x5642, 0x5D11, // <CJK>
+ 0x5643, 0x5D14, // <CJK>
+ 0x5644, 0x5D22, // <CJK>
+ 0x5645, 0x5D1A, // <CJK>
+ 0x5646, 0x5D19, // <CJK>
+ 0x5647, 0x5D18, // <CJK>
+ 0x5648, 0x5D4C, // <CJK>
+ 0x5649, 0x5D52, // <CJK>
+ 0x564A, 0x5D4E, // <CJK>
+ 0x564B, 0x5D4B, // <CJK>
+ 0x564C, 0x5D6C, // <CJK>
+ 0x564D, 0x5D73, // <CJK>
+ 0x564E, 0x5D76, // <CJK>
+ 0x564F, 0x5D87, // <CJK>
+ 0x5650, 0x5D84, // <CJK>
+ 0x5651, 0x5D82, // <CJK>
+ 0x5652, 0x5DA2, // <CJK>
+ 0x5653, 0x5D9D, // <CJK>
+ 0x5654, 0x5DAC, // <CJK>
+ 0x5655, 0x5DAE, // <CJK>
+ 0x5656, 0x5DBD, // <CJK>
+ 0x5657, 0x5D90, // <CJK>
+ 0x5658, 0x5DB7, // <CJK>
+ 0x5659, 0x5DBC, // <CJK>
+ 0x565A, 0x5DC9, // <CJK>
+ 0x565B, 0x5DCD, // <CJK>
+ 0x565C, 0x5DD3, // <CJK>
+ 0x565D, 0x5DD2, // <CJK>
+ 0x565E, 0x5DD6, // <CJK>
+ 0x565F, 0x5DDB, // <CJK>
+ 0x5660, 0x5DEB, // <CJK>
+ 0x5661, 0x5DF2, // <CJK>
+ 0x5662, 0x5DF5, // <CJK>
+ 0x5663, 0x5E0B, // <CJK>
+ 0x5664, 0x5E1A, // <CJK>
+ 0x5665, 0x5E19, // <CJK>
+ 0x5666, 0x5E11, // <CJK>
+ 0x5667, 0x5E1B, // <CJK>
+ 0x5668, 0x5E36, // <CJK>
+ 0x5669, 0x5E37, // <CJK>
+ 0x566A, 0x5E44, // <CJK>
+ 0x566B, 0x5E43, // <CJK>
+ 0x566C, 0x5E40, // <CJK>
+ 0x566D, 0x5E4E, // <CJK>
+ 0x566E, 0x5E57, // <CJK>
+ 0x566F, 0x5E54, // <CJK>
+ 0x5670, 0x5E5F, // <CJK>
+ 0x5671, 0x5E62, // <CJK>
+ 0x5672, 0x5E64, // <CJK>
+ 0x5673, 0x5E47, // <CJK>
+ 0x5674, 0x5E75, // <CJK>
+ 0x5675, 0x5E76, // <CJK>
+ 0x5676, 0x5E7A, // <CJK>
+ 0x5677, 0x9EBC, // <CJK>
+ 0x5678, 0x5E7F, // <CJK>
+ 0x5679, 0x5EA0, // <CJK>
+ 0x567A, 0x5EC1, // <CJK>
+ 0x567B, 0x5EC2, // <CJK>
+ 0x567C, 0x5EC8, // <CJK>
+ 0x567D, 0x5ED0, // <CJK>
+ 0x567E, 0x5ECF, // <CJK>
+ 0x5721, 0x5ED6, // <CJK>
+ 0x5722, 0x5EE3, // <CJK>
+ 0x5723, 0x5EDD, // <CJK>
+ 0x5724, 0x5EDA, // <CJK>
+ 0x5725, 0x5EDB, // <CJK>
+ 0x5726, 0x5EE2, // <CJK>
+ 0x5727, 0x5EE1, // <CJK>
+ 0x5728, 0x5EE8, // <CJK>
+ 0x5729, 0x5EE9, // <CJK>
+ 0x572A, 0x5EEC, // <CJK>
+ 0x572B, 0x5EF1, // <CJK>
+ 0x572C, 0x5EF3, // <CJK>
+ 0x572D, 0x5EF0, // <CJK>
+ 0x572E, 0x5EF4, // <CJK>
+ 0x572F, 0x5EF8, // <CJK>
+ 0x5730, 0x5EFE, // <CJK>
+ 0x5731, 0x5F03, // <CJK>
+ 0x5732, 0x5F09, // <CJK>
+ 0x5733, 0x5F5D, // <CJK>
+ 0x5734, 0x5F5C, // <CJK>
+ 0x5735, 0x5F0B, // <CJK>
+ 0x5736, 0x5F11, // <CJK>
+ 0x5737, 0x5F16, // <CJK>
+ 0x5738, 0x5F29, // <CJK>
+ 0x5739, 0x5F2D, // <CJK>
+ 0x573A, 0x5F38, // <CJK>
+ 0x573B, 0x5F41, // <CJK>
+ 0x573C, 0x5F48, // <CJK>
+ 0x573D, 0x5F4C, // <CJK>
+ 0x573E, 0x5F4E, // <CJK>
+ 0x573F, 0x5F2F, // <CJK>
+ 0x5740, 0x5F51, // <CJK>
+ 0x5741, 0x5F56, // <CJK>
+ 0x5742, 0x5F57, // <CJK>
+ 0x5743, 0x5F59, // <CJK>
+ 0x5744, 0x5F61, // <CJK>
+ 0x5745, 0x5F6D, // <CJK>
+ 0x5746, 0x5F73, // <CJK>
+ 0x5747, 0x5F77, // <CJK>
+ 0x5748, 0x5F83, // <CJK>
+ 0x5749, 0x5F82, // <CJK>
+ 0x574A, 0x5F7F, // <CJK>
+ 0x574B, 0x5F8A, // <CJK>
+ 0x574C, 0x5F88, // <CJK>
+ 0x574D, 0x5F91, // <CJK>
+ 0x574E, 0x5F87, // <CJK>
+ 0x574F, 0x5F9E, // <CJK>
+ 0x5750, 0x5F99, // <CJK>
+ 0x5751, 0x5F98, // <CJK>
+ 0x5752, 0x5FA0, // <CJK>
+ 0x5753, 0x5FA8, // <CJK>
+ 0x5754, 0x5FAD, // <CJK>
+ 0x5755, 0x5FBC, // <CJK>
+ 0x5756, 0x5FD6, // <CJK>
+ 0x5757, 0x5FFB, // <CJK>
+ 0x5758, 0x5FE4, // <CJK>
+ 0x5759, 0x5FF8, // <CJK>
+ 0x575A, 0x5FF1, // <CJK>
+ 0x575B, 0x5FDD, // <CJK>
+ 0x575C, 0x60B3, // <CJK>
+ 0x575D, 0x5FFF, // <CJK>
+ 0x575E, 0x6021, // <CJK>
+ 0x575F, 0x6060, // <CJK>
+ 0x5760, 0x6019, // <CJK>
+ 0x5761, 0x6010, // <CJK>
+ 0x5762, 0x6029, // <CJK>
+ 0x5763, 0x600E, // <CJK>
+ 0x5764, 0x6031, // <CJK>
+ 0x5765, 0x601B, // <CJK>
+ 0x5766, 0x6015, // <CJK>
+ 0x5767, 0x602B, // <CJK>
+ 0x5768, 0x6026, // <CJK>
+ 0x5769, 0x600F, // <CJK>
+ 0x576A, 0x603A, // <CJK>
+ 0x576B, 0x605A, // <CJK>
+ 0x576C, 0x6041, // <CJK>
+ 0x576D, 0x606A, // <CJK>
+ 0x576E, 0x6077, // <CJK>
+ 0x576F, 0x605F, // <CJK>
+ 0x5770, 0x604A, // <CJK>
+ 0x5771, 0x6046, // <CJK>
+ 0x5772, 0x604D, // <CJK>
+ 0x5773, 0x6063, // <CJK>
+ 0x5774, 0x6043, // <CJK>
+ 0x5775, 0x6064, // <CJK>
+ 0x5776, 0x6042, // <CJK>
+ 0x5777, 0x606C, // <CJK>
+ 0x5778, 0x606B, // <CJK>
+ 0x5779, 0x6059, // <CJK>
+ 0x577A, 0x6081, // <CJK>
+ 0x577B, 0x608D, // <CJK>
+ 0x577C, 0x60E7, // <CJK>
+ 0x577D, 0x6083, // <CJK>
+ 0x577E, 0x609A, // <CJK>
+ 0x5821, 0x6084, // <CJK>
+ 0x5822, 0x609B, // <CJK>
+ 0x5823, 0x6096, // <CJK>
+ 0x5824, 0x6097, // <CJK>
+ 0x5825, 0x6092, // <CJK>
+ 0x5826, 0x60A7, // <CJK>
+ 0x5827, 0x608B, // <CJK>
+ 0x5828, 0x60E1, // <CJK>
+ 0x5829, 0x60B8, // <CJK>
+ 0x582A, 0x60E0, // <CJK>
+ 0x582B, 0x60D3, // <CJK>
+ 0x582C, 0x60B4, // <CJK>
+ 0x582D, 0x5FF0, // <CJK>
+ 0x582E, 0x60BD, // <CJK>
+ 0x582F, 0x60C6, // <CJK>
+ 0x5830, 0x60B5, // <CJK>
+ 0x5831, 0x60D8, // <CJK>
+ 0x5832, 0x614D, // <CJK>
+ 0x5833, 0x6115, // <CJK>
+ 0x5834, 0x6106, // <CJK>
+ 0x5835, 0x60F6, // <CJK>
+ 0x5836, 0x60F7, // <CJK>
+ 0x5837, 0x6100, // <CJK>
+ 0x5838, 0x60F4, // <CJK>
+ 0x5839, 0x60FA, // <CJK>
+ 0x583A, 0x6103, // <CJK>
+ 0x583B, 0x6121, // <CJK>
+ 0x583C, 0x60FB, // <CJK>
+ 0x583D, 0x60F1, // <CJK>
+ 0x583E, 0x610D, // <CJK>
+ 0x583F, 0x610E, // <CJK>
+ 0x5840, 0x6147, // <CJK>
+ 0x5841, 0x613E, // <CJK>
+ 0x5842, 0x6128, // <CJK>
+ 0x5843, 0x6127, // <CJK>
+ 0x5844, 0x614A, // <CJK>
+ 0x5845, 0x613F, // <CJK>
+ 0x5846, 0x613C, // <CJK>
+ 0x5847, 0x612C, // <CJK>
+ 0x5848, 0x6134, // <CJK>
+ 0x5849, 0x613D, // <CJK>
+ 0x584A, 0x6142, // <CJK>
+ 0x584B, 0x6144, // <CJK>
+ 0x584C, 0x6173, // <CJK>
+ 0x584D, 0x6177, // <CJK>
+ 0x584E, 0x6158, // <CJK>
+ 0x584F, 0x6159, // <CJK>
+ 0x5850, 0x615A, // <CJK>
+ 0x5851, 0x616B, // <CJK>
+ 0x5852, 0x6174, // <CJK>
+ 0x5853, 0x616F, // <CJK>
+ 0x5854, 0x6165, // <CJK>
+ 0x5855, 0x6171, // <CJK>
+ 0x5856, 0x615F, // <CJK>
+ 0x5857, 0x615D, // <CJK>
+ 0x5858, 0x6153, // <CJK>
+ 0x5859, 0x6175, // <CJK>
+ 0x585A, 0x6199, // <CJK>
+ 0x585B, 0x6196, // <CJK>
+ 0x585C, 0x6187, // <CJK>
+ 0x585D, 0x61AC, // <CJK>
+ 0x585E, 0x6194, // <CJK>
+ 0x585F, 0x619A, // <CJK>
+ 0x5860, 0x618A, // <CJK>
+ 0x5861, 0x6191, // <CJK>
+ 0x5862, 0x61AB, // <CJK>
+ 0x5863, 0x61AE, // <CJK>
+ 0x5864, 0x61CC, // <CJK>
+ 0x5865, 0x61CA, // <CJK>
+ 0x5866, 0x61C9, // <CJK>
+ 0x5867, 0x61F7, // <CJK>
+ 0x5868, 0x61C8, // <CJK>
+ 0x5869, 0x61C3, // <CJK>
+ 0x586A, 0x61C6, // <CJK>
+ 0x586B, 0x61BA, // <CJK>
+ 0x586C, 0x61CB, // <CJK>
+ 0x586D, 0x7F79, // <CJK>
+ 0x586E, 0x61CD, // <CJK>
+ 0x586F, 0x61E6, // <CJK>
+ 0x5870, 0x61E3, // <CJK>
+ 0x5871, 0x61F6, // <CJK>
+ 0x5872, 0x61FA, // <CJK>
+ 0x5873, 0x61F4, // <CJK>
+ 0x5874, 0x61FF, // <CJK>
+ 0x5875, 0x61FD, // <CJK>
+ 0x5876, 0x61FC, // <CJK>
+ 0x5877, 0x61FE, // <CJK>
+ 0x5878, 0x6200, // <CJK>
+ 0x5879, 0x6208, // <CJK>
+ 0x587A, 0x6209, // <CJK>
+ 0x587B, 0x620D, // <CJK>
+ 0x587C, 0x620C, // <CJK>
+ 0x587D, 0x6214, // <CJK>
+ 0x587E, 0x621B, // <CJK>
+ 0x5921, 0x621E, // <CJK>
+ 0x5922, 0x6221, // <CJK>
+ 0x5923, 0x622A, // <CJK>
+ 0x5924, 0x622E, // <CJK>
+ 0x5925, 0x6230, // <CJK>
+ 0x5926, 0x6232, // <CJK>
+ 0x5927, 0x6233, // <CJK>
+ 0x5928, 0x6241, // <CJK>
+ 0x5929, 0x624E, // <CJK>
+ 0x592A, 0x625E, // <CJK>
+ 0x592B, 0x6263, // <CJK>
+ 0x592C, 0x625B, // <CJK>
+ 0x592D, 0x6260, // <CJK>
+ 0x592E, 0x6268, // <CJK>
+ 0x592F, 0x627C, // <CJK>
+ 0x5930, 0x6282, // <CJK>
+ 0x5931, 0x6289, // <CJK>
+ 0x5932, 0x627E, // <CJK>
+ 0x5933, 0x6292, // <CJK>
+ 0x5934, 0x6293, // <CJK>
+ 0x5935, 0x6296, // <CJK>
+ 0x5936, 0x62D4, // <CJK>
+ 0x5937, 0x6283, // <CJK>
+ 0x5938, 0x6294, // <CJK>
+ 0x5939, 0x62D7, // <CJK>
+ 0x593A, 0x62D1, // <CJK>
+ 0x593B, 0x62BB, // <CJK>
+ 0x593C, 0x62CF, // <CJK>
+ 0x593D, 0x62FF, // <CJK>
+ 0x593E, 0x62C6, // <CJK>
+ 0x593F, 0x64D4, // <CJK>
+ 0x5940, 0x62C8, // <CJK>
+ 0x5941, 0x62DC, // <CJK>
+ 0x5942, 0x62CC, // <CJK>
+ 0x5943, 0x62CA, // <CJK>
+ 0x5944, 0x62C2, // <CJK>
+ 0x5945, 0x62C7, // <CJK>
+ 0x5946, 0x629B, // <CJK>
+ 0x5947, 0x62C9, // <CJK>
+ 0x5948, 0x630C, // <CJK>
+ 0x5949, 0x62EE, // <CJK>
+ 0x594A, 0x62F1, // <CJK>
+ 0x594B, 0x6327, // <CJK>
+ 0x594C, 0x6302, // <CJK>
+ 0x594D, 0x6308, // <CJK>
+ 0x594E, 0x62EF, // <CJK>
+ 0x594F, 0x62F5, // <CJK>
+ 0x5950, 0x6350, // <CJK>
+ 0x5951, 0x633E, // <CJK>
+ 0x5952, 0x634D, // <CJK>
+ 0x5953, 0x641C, // <CJK>
+ 0x5954, 0x634F, // <CJK>
+ 0x5955, 0x6396, // <CJK>
+ 0x5956, 0x638E, // <CJK>
+ 0x5957, 0x6380, // <CJK>
+ 0x5958, 0x63AB, // <CJK>
+ 0x5959, 0x6376, // <CJK>
+ 0x595A, 0x63A3, // <CJK>
+ 0x595B, 0x638F, // <CJK>
+ 0x595C, 0x6389, // <CJK>
+ 0x595D, 0x639F, // <CJK>
+ 0x595E, 0x63B5, // <CJK>
+ 0x595F, 0x636B, // <CJK>
+ 0x5960, 0x6369, // <CJK>
+ 0x5961, 0x63BE, // <CJK>
+ 0x5962, 0x63E9, // <CJK>
+ 0x5963, 0x63C0, // <CJK>
+ 0x5964, 0x63C6, // <CJK>
+ 0x5965, 0x63E3, // <CJK>
+ 0x5966, 0x63C9, // <CJK>
+ 0x5967, 0x63D2, // <CJK>
+ 0x5968, 0x63F6, // <CJK>
+ 0x5969, 0x63C4, // <CJK>
+ 0x596A, 0x6416, // <CJK>
+ 0x596B, 0x6434, // <CJK>
+ 0x596C, 0x6406, // <CJK>
+ 0x596D, 0x6413, // <CJK>
+ 0x596E, 0x6426, // <CJK>
+ 0x596F, 0x6436, // <CJK>
+ 0x5970, 0x651D, // <CJK>
+ 0x5971, 0x6417, // <CJK>
+ 0x5972, 0x6428, // <CJK>
+ 0x5973, 0x640F, // <CJK>
+ 0x5974, 0x6467, // <CJK>
+ 0x5975, 0x646F, // <CJK>
+ 0x5976, 0x6476, // <CJK>
+ 0x5977, 0x644E, // <CJK>
+ 0x5978, 0x652A, // <CJK>
+ 0x5979, 0x6495, // <CJK>
+ 0x597A, 0x6493, // <CJK>
+ 0x597B, 0x64A5, // <CJK>
+ 0x597C, 0x64A9, // <CJK>
+ 0x597D, 0x6488, // <CJK>
+ 0x597E, 0x64BC, // <CJK>
+ 0x5A21, 0x64DA, // <CJK>
+ 0x5A22, 0x64D2, // <CJK>
+ 0x5A23, 0x64C5, // <CJK>
+ 0x5A24, 0x64C7, // <CJK>
+ 0x5A25, 0x64BB, // <CJK>
+ 0x5A26, 0x64D8, // <CJK>
+ 0x5A27, 0x64C2, // <CJK>
+ 0x5A28, 0x64F1, // <CJK>
+ 0x5A29, 0x64E7, // <CJK>
+ 0x5A2A, 0x8209, // <CJK>
+ 0x5A2B, 0x64E0, // <CJK>
+ 0x5A2C, 0x64E1, // <CJK>
+ 0x5A2D, 0x62AC, // <CJK>
+ 0x5A2E, 0x64E3, // <CJK>
+ 0x5A2F, 0x64EF, // <CJK>
+ 0x5A30, 0x652C, // <CJK>
+ 0x5A31, 0x64F6, // <CJK>
+ 0x5A32, 0x64F4, // <CJK>
+ 0x5A33, 0x64F2, // <CJK>
+ 0x5A34, 0x64FA, // <CJK>
+ 0x5A35, 0x6500, // <CJK>
+ 0x5A36, 0x64FD, // <CJK>
+ 0x5A37, 0x6518, // <CJK>
+ 0x5A38, 0x651C, // <CJK>
+ 0x5A39, 0x6505, // <CJK>
+ 0x5A3A, 0x6524, // <CJK>
+ 0x5A3B, 0x6523, // <CJK>
+ 0x5A3C, 0x652B, // <CJK>
+ 0x5A3D, 0x6534, // <CJK>
+ 0x5A3E, 0x6535, // <CJK>
+ 0x5A3F, 0x6537, // <CJK>
+ 0x5A40, 0x6536, // <CJK>
+ 0x5A41, 0x6538, // <CJK>
+ 0x5A42, 0x754B, // <CJK>
+ 0x5A43, 0x6548, // <CJK>
+ 0x5A44, 0x6556, // <CJK>
+ 0x5A45, 0x6555, // <CJK>
+ 0x5A46, 0x654D, // <CJK>
+ 0x5A47, 0x6558, // <CJK>
+ 0x5A48, 0x655E, // <CJK>
+ 0x5A49, 0x655D, // <CJK>
+ 0x5A4A, 0x6572, // <CJK>
+ 0x5A4B, 0x6578, // <CJK>
+ 0x5A4C, 0x6582, // <CJK>
+ 0x5A4D, 0x6583, // <CJK>
+ 0x5A4E, 0x8B8A, // <CJK>
+ 0x5A4F, 0x659B, // <CJK>
+ 0x5A50, 0x659F, // <CJK>
+ 0x5A51, 0x65AB, // <CJK>
+ 0x5A52, 0x65B7, // <CJK>
+ 0x5A53, 0x65C3, // <CJK>
+ 0x5A54, 0x65C6, // <CJK>
+ 0x5A55, 0x65C1, // <CJK>
+ 0x5A56, 0x65C4, // <CJK>
+ 0x5A57, 0x65CC, // <CJK>
+ 0x5A58, 0x65D2, // <CJK>
+ 0x5A59, 0x65DB, // <CJK>
+ 0x5A5A, 0x65D9, // <CJK>
+ 0x5A5B, 0x65E0, // <CJK>
+ 0x5A5C, 0x65E1, // <CJK>
+ 0x5A5D, 0x65F1, // <CJK>
+ 0x5A5E, 0x6772, // <CJK>
+ 0x5A5F, 0x660A, // <CJK>
+ 0x5A60, 0x6603, // <CJK>
+ 0x5A61, 0x65FB, // <CJK>
+ 0x5A62, 0x6773, // <CJK>
+ 0x5A63, 0x6635, // <CJK>
+ 0x5A64, 0x6636, // <CJK>
+ 0x5A65, 0x6634, // <CJK>
+ 0x5A66, 0x661C, // <CJK>
+ 0x5A67, 0x664F, // <CJK>
+ 0x5A68, 0x6644, // <CJK>
+ 0x5A69, 0x6649, // <CJK>
+ 0x5A6A, 0x6641, // <CJK>
+ 0x5A6B, 0x665E, // <CJK>
+ 0x5A6C, 0x665D, // <CJK>
+ 0x5A6D, 0x6664, // <CJK>
+ 0x5A6E, 0x6667, // <CJK>
+ 0x5A6F, 0x6668, // <CJK>
+ 0x5A70, 0x665F, // <CJK>
+ 0x5A71, 0x6662, // <CJK>
+ 0x5A72, 0x6670, // <CJK>
+ 0x5A73, 0x6683, // <CJK>
+ 0x5A74, 0x6688, // <CJK>
+ 0x5A75, 0x668E, // <CJK>
+ 0x5A76, 0x6689, // <CJK>
+ 0x5A77, 0x6684, // <CJK>
+ 0x5A78, 0x6698, // <CJK>
+ 0x5A79, 0x669D, // <CJK>
+ 0x5A7A, 0x66C1, // <CJK>
+ 0x5A7B, 0x66B9, // <CJK>
+ 0x5A7C, 0x66C9, // <CJK>
+ 0x5A7D, 0x66BE, // <CJK>
+ 0x5A7E, 0x66BC, // <CJK>
+ 0x5B21, 0x66C4, // <CJK>
+ 0x5B22, 0x66B8, // <CJK>
+ 0x5B23, 0x66D6, // <CJK>
+ 0x5B24, 0x66DA, // <CJK>
+ 0x5B25, 0x66E0, // <CJK>
+ 0x5B26, 0x663F, // <CJK>
+ 0x5B27, 0x66E6, // <CJK>
+ 0x5B28, 0x66E9, // <CJK>
+ 0x5B29, 0x66F0, // <CJK>
+ 0x5B2A, 0x66F5, // <CJK>
+ 0x5B2B, 0x66F7, // <CJK>
+ 0x5B2C, 0x670F, // <CJK>
+ 0x5B2D, 0x6716, // <CJK>
+ 0x5B2E, 0x671E, // <CJK>
+ 0x5B2F, 0x6726, // <CJK>
+ 0x5B30, 0x6727, // <CJK>
+ 0x5B31, 0x9738, // <CJK>
+ 0x5B32, 0x672E, // <CJK>
+ 0x5B33, 0x673F, // <CJK>
+ 0x5B34, 0x6736, // <CJK>
+ 0x5B35, 0x6741, // <CJK>
+ 0x5B36, 0x6738, // <CJK>
+ 0x5B37, 0x6737, // <CJK>
+ 0x5B38, 0x6746, // <CJK>
+ 0x5B39, 0x675E, // <CJK>
+ 0x5B3A, 0x6760, // <CJK>
+ 0x5B3B, 0x6759, // <CJK>
+ 0x5B3C, 0x6763, // <CJK>
+ 0x5B3D, 0x6764, // <CJK>
+ 0x5B3E, 0x6789, // <CJK>
+ 0x5B3F, 0x6770, // <CJK>
+ 0x5B40, 0x67A9, // <CJK>
+ 0x5B41, 0x677C, // <CJK>
+ 0x5B42, 0x676A, // <CJK>
+ 0x5B43, 0x678C, // <CJK>
+ 0x5B44, 0x678B, // <CJK>
+ 0x5B45, 0x67A6, // <CJK>
+ 0x5B46, 0x67A1, // <CJK>
+ 0x5B47, 0x6785, // <CJK>
+ 0x5B48, 0x67B7, // <CJK>
+ 0x5B49, 0x67EF, // <CJK>
+ 0x5B4A, 0x67B4, // <CJK>
+ 0x5B4B, 0x67EC, // <CJK>
+ 0x5B4C, 0x67B3, // <CJK>
+ 0x5B4D, 0x67E9, // <CJK>
+ 0x5B4E, 0x67B8, // <CJK>
+ 0x5B4F, 0x67E4, // <CJK>
+ 0x5B50, 0x67DE, // <CJK>
+ 0x5B51, 0x67DD, // <CJK>
+ 0x5B52, 0x67E2, // <CJK>
+ 0x5B53, 0x67EE, // <CJK>
+ 0x5B54, 0x67B9, // <CJK>
+ 0x5B55, 0x67CE, // <CJK>
+ 0x5B56, 0x67C6, // <CJK>
+ 0x5B57, 0x67E7, // <CJK>
+ 0x5B58, 0x6A9C, // <CJK>
+ 0x5B59, 0x681E, // <CJK>
+ 0x5B5A, 0x6846, // <CJK>
+ 0x5B5B, 0x6829, // <CJK>
+ 0x5B5C, 0x6840, // <CJK>
+ 0x5B5D, 0x684D, // <CJK>
+ 0x5B5E, 0x6832, // <CJK>
+ 0x5B5F, 0x684E, // <CJK>
+ 0x5B60, 0x68B3, // <CJK>
+ 0x5B61, 0x682B, // <CJK>
+ 0x5B62, 0x6859, // <CJK>
+ 0x5B63, 0x6863, // <CJK>
+ 0x5B64, 0x6877, // <CJK>
+ 0x5B65, 0x687F, // <CJK>
+ 0x5B66, 0x689F, // <CJK>
+ 0x5B67, 0x688F, // <CJK>
+ 0x5B68, 0x68AD, // <CJK>
+ 0x5B69, 0x6894, // <CJK>
+ 0x5B6A, 0x689D, // <CJK>
+ 0x5B6B, 0x689B, // <CJK>
+ 0x5B6C, 0x6883, // <CJK>
+ 0x5B6D, 0x6AAE, // <CJK>
+ 0x5B6E, 0x68B9, // <CJK>
+ 0x5B6F, 0x6874, // <CJK>
+ 0x5B70, 0x68B5, // <CJK>
+ 0x5B71, 0x68A0, // <CJK>
+ 0x5B72, 0x68BA, // <CJK>
+ 0x5B73, 0x690F, // <CJK>
+ 0x5B74, 0x688D, // <CJK>
+ 0x5B75, 0x687E, // <CJK>
+ 0x5B76, 0x6901, // <CJK>
+ 0x5B77, 0x68CA, // <CJK>
+ 0x5B78, 0x6908, // <CJK>
+ 0x5B79, 0x68D8, // <CJK>
+ 0x5B7A, 0x6922, // <CJK>
+ 0x5B7B, 0x6926, // <CJK>
+ 0x5B7C, 0x68E1, // <CJK>
+ 0x5B7D, 0x690C, // <CJK>
+ 0x5B7E, 0x68CD, // <CJK>
+ 0x5C21, 0x68D4, // <CJK>
+ 0x5C22, 0x68E7, // <CJK>
+ 0x5C23, 0x68D5, // <CJK>
+ 0x5C24, 0x6936, // <CJK>
+ 0x5C25, 0x6912, // <CJK>
+ 0x5C26, 0x6904, // <CJK>
+ 0x5C27, 0x68D7, // <CJK>
+ 0x5C28, 0x68E3, // <CJK>
+ 0x5C29, 0x6925, // <CJK>
+ 0x5C2A, 0x68F9, // <CJK>
+ 0x5C2B, 0x68E0, // <CJK>
+ 0x5C2C, 0x68EF, // <CJK>
+ 0x5C2D, 0x6928, // <CJK>
+ 0x5C2E, 0x692A, // <CJK>
+ 0x5C2F, 0x691A, // <CJK>
+ 0x5C30, 0x6923, // <CJK>
+ 0x5C31, 0x6921, // <CJK>
+ 0x5C32, 0x68C6, // <CJK>
+ 0x5C33, 0x6979, // <CJK>
+ 0x5C34, 0x6977, // <CJK>
+ 0x5C35, 0x695C, // <CJK>
+ 0x5C36, 0x6978, // <CJK>
+ 0x5C37, 0x696B, // <CJK>
+ 0x5C38, 0x6954, // <CJK>
+ 0x5C39, 0x697E, // <CJK>
+ 0x5C3A, 0x696E, // <CJK>
+ 0x5C3B, 0x6939, // <CJK>
+ 0x5C3C, 0x6974, // <CJK>
+ 0x5C3D, 0x693D, // <CJK>
+ 0x5C3E, 0x6959, // <CJK>
+ 0x5C3F, 0x6930, // <CJK>
+ 0x5C40, 0x6961, // <CJK>
+ 0x5C41, 0x695E, // <CJK>
+ 0x5C42, 0x695D, // <CJK>
+ 0x5C43, 0x6981, // <CJK>
+ 0x5C44, 0x696A, // <CJK>
+ 0x5C45, 0x69B2, // <CJK>
+ 0x5C46, 0x69AE, // <CJK>
+ 0x5C47, 0x69D0, // <CJK>
+ 0x5C48, 0x69BF, // <CJK>
+ 0x5C49, 0x69C1, // <CJK>
+ 0x5C4A, 0x69D3, // <CJK>
+ 0x5C4B, 0x69BE, // <CJK>
+ 0x5C4C, 0x69CE, // <CJK>
+ 0x5C4D, 0x5BE8, // <CJK>
+ 0x5C4E, 0x69CA, // <CJK>
+ 0x5C4F, 0x69DD, // <CJK>
+ 0x5C50, 0x69BB, // <CJK>
+ 0x5C51, 0x69C3, // <CJK>
+ 0x5C52, 0x69A7, // <CJK>
+ 0x5C53, 0x6A2E, // <CJK>
+ 0x5C54, 0x6991, // <CJK>
+ 0x5C55, 0x69A0, // <CJK>
+ 0x5C56, 0x699C, // <CJK>
+ 0x5C57, 0x6995, // <CJK>
+ 0x5C58, 0x69B4, // <CJK>
+ 0x5C59, 0x69DE, // <CJK>
+ 0x5C5A, 0x69E8, // <CJK>
+ 0x5C5B, 0x6A02, // <CJK>
+ 0x5C5C, 0x6A1B, // <CJK>
+ 0x5C5D, 0x69FF, // <CJK>
+ 0x5C5E, 0x6B0A, // <CJK>
+ 0x5C5F, 0x69F9, // <CJK>
+ 0x5C60, 0x69F2, // <CJK>
+ 0x5C61, 0x69E7, // <CJK>
+ 0x5C62, 0x6A05, // <CJK>
+ 0x5C63, 0x69B1, // <CJK>
+ 0x5C64, 0x6A1E, // <CJK>
+ 0x5C65, 0x69ED, // <CJK>
+ 0x5C66, 0x6A14, // <CJK>
+ 0x5C67, 0x69EB, // <CJK>
+ 0x5C68, 0x6A0A, // <CJK>
+ 0x5C69, 0x6A12, // <CJK>
+ 0x5C6A, 0x6AC1, // <CJK>
+ 0x5C6B, 0x6A23, // <CJK>
+ 0x5C6C, 0x6A13, // <CJK>
+ 0x5C6D, 0x6A44, // <CJK>
+ 0x5C6E, 0x6A0C, // <CJK>
+ 0x5C6F, 0x6A72, // <CJK>
+ 0x5C70, 0x6A36, // <CJK>
+ 0x5C71, 0x6A78, // <CJK>
+ 0x5C72, 0x6A47, // <CJK>
+ 0x5C73, 0x6A62, // <CJK>
+ 0x5C74, 0x6A59, // <CJK>
+ 0x5C75, 0x6A66, // <CJK>
+ 0x5C76, 0x6A48, // <CJK>
+ 0x5C77, 0x6A38, // <CJK>
+ 0x5C78, 0x6A22, // <CJK>
+ 0x5C79, 0x6A90, // <CJK>
+ 0x5C7A, 0x6A8D, // <CJK>
+ 0x5C7B, 0x6AA0, // <CJK>
+ 0x5C7C, 0x6A84, // <CJK>
+ 0x5C7D, 0x6AA2, // <CJK>
+ 0x5C7E, 0x6AA3, // <CJK>
+ 0x5D21, 0x6A97, // <CJK>
+ 0x5D22, 0x8617, // <CJK>
+ 0x5D23, 0x6ABB, // <CJK>
+ 0x5D24, 0x6AC3, // <CJK>
+ 0x5D25, 0x6AC2, // <CJK>
+ 0x5D26, 0x6AB8, // <CJK>
+ 0x5D27, 0x6AB3, // <CJK>
+ 0x5D28, 0x6AAC, // <CJK>
+ 0x5D29, 0x6ADE, // <CJK>
+ 0x5D2A, 0x6AD1, // <CJK>
+ 0x5D2B, 0x6ADF, // <CJK>
+ 0x5D2C, 0x6AAA, // <CJK>
+ 0x5D2D, 0x6ADA, // <CJK>
+ 0x5D2E, 0x6AEA, // <CJK>
+ 0x5D2F, 0x6AFB, // <CJK>
+ 0x5D30, 0x6B05, // <CJK>
+ 0x5D31, 0x8616, // <CJK>
+ 0x5D32, 0x6AFA, // <CJK>
+ 0x5D33, 0x6B12, // <CJK>
+ 0x5D34, 0x6B16, // <CJK>
+ 0x5D35, 0x9B31, // <CJK>
+ 0x5D36, 0x6B1F, // <CJK>
+ 0x5D37, 0x6B38, // <CJK>
+ 0x5D38, 0x6B37, // <CJK>
+ 0x5D39, 0x76DC, // <CJK>
+ 0x5D3A, 0x6B39, // <CJK>
+ 0x5D3B, 0x98EE, // <CJK>
+ 0x5D3C, 0x6B47, // <CJK>
+ 0x5D3D, 0x6B43, // <CJK>
+ 0x5D3E, 0x6B49, // <CJK>
+ 0x5D3F, 0x6B50, // <CJK>
+ 0x5D40, 0x6B59, // <CJK>
+ 0x5D41, 0x6B54, // <CJK>
+ 0x5D42, 0x6B5B, // <CJK>
+ 0x5D43, 0x6B5F, // <CJK>
+ 0x5D44, 0x6B61, // <CJK>
+ 0x5D45, 0x6B78, // <CJK>
+ 0x5D46, 0x6B79, // <CJK>
+ 0x5D47, 0x6B7F, // <CJK>
+ 0x5D48, 0x6B80, // <CJK>
+ 0x5D49, 0x6B84, // <CJK>
+ 0x5D4A, 0x6B83, // <CJK>
+ 0x5D4B, 0x6B8D, // <CJK>
+ 0x5D4C, 0x6B98, // <CJK>
+ 0x5D4D, 0x6B95, // <CJK>
+ 0x5D4E, 0x6B9E, // <CJK>
+ 0x5D4F, 0x6BA4, // <CJK>
+ 0x5D50, 0x6BAA, // <CJK>
+ 0x5D51, 0x6BAB, // <CJK>
+ 0x5D52, 0x6BAF, // <CJK>
+ 0x5D53, 0x6BB2, // <CJK>
+ 0x5D54, 0x6BB1, // <CJK>
+ 0x5D55, 0x6BB3, // <CJK>
+ 0x5D56, 0x6BB7, // <CJK>
+ 0x5D57, 0x6BBC, // <CJK>
+ 0x5D58, 0x6BC6, // <CJK>
+ 0x5D59, 0x6BCB, // <CJK>
+ 0x5D5A, 0x6BD3, // <CJK>
+ 0x5D5B, 0x6BDF, // <CJK>
+ 0x5D5C, 0x6BEC, // <CJK>
+ 0x5D5D, 0x6BEB, // <CJK>
+ 0x5D5E, 0x6BF3, // <CJK>
+ 0x5D5F, 0x6BEF, // <CJK>
+ 0x5D60, 0x9EBE, // <CJK>
+ 0x5D61, 0x6C08, // <CJK>
+ 0x5D62, 0x6C13, // <CJK>
+ 0x5D63, 0x6C14, // <CJK>
+ 0x5D64, 0x6C1B, // <CJK>
+ 0x5D65, 0x6C24, // <CJK>
+ 0x5D66, 0x6C23, // <CJK>
+ 0x5D67, 0x6C5E, // <CJK>
+ 0x5D68, 0x6C55, // <CJK>
+ 0x5D69, 0x6C62, // <CJK>
+ 0x5D6A, 0x6C6A, // <CJK>
+ 0x5D6B, 0x6C82, // <CJK>
+ 0x5D6C, 0x6C8D, // <CJK>
+ 0x5D6D, 0x6C9A, // <CJK>
+ 0x5D6E, 0x6C81, // <CJK>
+ 0x5D6F, 0x6C9B, // <CJK>
+ 0x5D70, 0x6C7E, // <CJK>
+ 0x5D71, 0x6C68, // <CJK>
+ 0x5D72, 0x6C73, // <CJK>
+ 0x5D73, 0x6C92, // <CJK>
+ 0x5D74, 0x6C90, // <CJK>
+ 0x5D75, 0x6CC4, // <CJK>
+ 0x5D76, 0x6CF1, // <CJK>
+ 0x5D77, 0x6CD3, // <CJK>
+ 0x5D78, 0x6CBD, // <CJK>
+ 0x5D79, 0x6CD7, // <CJK>
+ 0x5D7A, 0x6CC5, // <CJK>
+ 0x5D7B, 0x6CDD, // <CJK>
+ 0x5D7C, 0x6CAE, // <CJK>
+ 0x5D7D, 0x6CB1, // <CJK>
+ 0x5D7E, 0x6CBE, // <CJK>
+ 0x5E21, 0x6CBA, // <CJK>
+ 0x5E22, 0x6CDB, // <CJK>
+ 0x5E23, 0x6CEF, // <CJK>
+ 0x5E24, 0x6CD9, // <CJK>
+ 0x5E25, 0x6CEA, // <CJK>
+ 0x5E26, 0x6D1F, // <CJK>
+ 0x5E27, 0x884D, // <CJK>
+ 0x5E28, 0x6D36, // <CJK>
+ 0x5E29, 0x6D2B, // <CJK>
+ 0x5E2A, 0x6D3D, // <CJK>
+ 0x5E2B, 0x6D38, // <CJK>
+ 0x5E2C, 0x6D19, // <CJK>
+ 0x5E2D, 0x6D35, // <CJK>
+ 0x5E2E, 0x6D33, // <CJK>
+ 0x5E2F, 0x6D12, // <CJK>
+ 0x5E30, 0x6D0C, // <CJK>
+ 0x5E31, 0x6D63, // <CJK>
+ 0x5E32, 0x6D93, // <CJK>
+ 0x5E33, 0x6D64, // <CJK>
+ 0x5E34, 0x6D5A, // <CJK>
+ 0x5E35, 0x6D79, // <CJK>
+ 0x5E36, 0x6D59, // <CJK>
+ 0x5E37, 0x6D8E, // <CJK>
+ 0x5E38, 0x6D95, // <CJK>
+ 0x5E39, 0x6FE4, // <CJK>
+ 0x5E3A, 0x6D85, // <CJK>
+ 0x5E3B, 0x6DF9, // <CJK>
+ 0x5E3C, 0x6E15, // <CJK>
+ 0x5E3D, 0x6E0A, // <CJK>
+ 0x5E3E, 0x6DB5, // <CJK>
+ 0x5E3F, 0x6DC7, // <CJK>
+ 0x5E40, 0x6DE6, // <CJK>
+ 0x5E41, 0x6DB8, // <CJK>
+ 0x5E42, 0x6DC6, // <CJK>
+ 0x5E43, 0x6DEC, // <CJK>
+ 0x5E44, 0x6DDE, // <CJK>
+ 0x5E45, 0x6DCC, // <CJK>
+ 0x5E46, 0x6DE8, // <CJK>
+ 0x5E47, 0x6DD2, // <CJK>
+ 0x5E48, 0x6DC5, // <CJK>
+ 0x5E49, 0x6DFA, // <CJK>
+ 0x5E4A, 0x6DD9, // <CJK>
+ 0x5E4B, 0x6DE4, // <CJK>
+ 0x5E4C, 0x6DD5, // <CJK>
+ 0x5E4D, 0x6DEA, // <CJK>
+ 0x5E4E, 0x6DEE, // <CJK>
+ 0x5E4F, 0x6E2D, // <CJK>
+ 0x5E50, 0x6E6E, // <CJK>
+ 0x5E51, 0x6E2E, // <CJK>
+ 0x5E52, 0x6E19, // <CJK>
+ 0x5E53, 0x6E72, // <CJK>
+ 0x5E54, 0x6E5F, // <CJK>
+ 0x5E55, 0x6E3E, // <CJK>
+ 0x5E56, 0x6E23, // <CJK>
+ 0x5E57, 0x6E6B, // <CJK>
+ 0x5E58, 0x6E2B, // <CJK>
+ 0x5E59, 0x6E76, // <CJK>
+ 0x5E5A, 0x6E4D, // <CJK>
+ 0x5E5B, 0x6E1F, // <CJK>
+ 0x5E5C, 0x6E43, // <CJK>
+ 0x5E5D, 0x6E3A, // <CJK>
+ 0x5E5E, 0x6E4E, // <CJK>
+ 0x5E5F, 0x6E24, // <CJK>
+ 0x5E60, 0x6EFF, // <CJK>
+ 0x5E61, 0x6E1D, // <CJK>
+ 0x5E62, 0x6E38, // <CJK>
+ 0x5E63, 0x6E82, // <CJK>
+ 0x5E64, 0x6EAA, // <CJK>
+ 0x5E65, 0x6E98, // <CJK>
+ 0x5E66, 0x6EC9, // <CJK>
+ 0x5E67, 0x6EB7, // <CJK>
+ 0x5E68, 0x6ED3, // <CJK>
+ 0x5E69, 0x6EBD, // <CJK>
+ 0x5E6A, 0x6EAF, // <CJK>
+ 0x5E6B, 0x6EC4, // <CJK>
+ 0x5E6C, 0x6EB2, // <CJK>
+ 0x5E6D, 0x6ED4, // <CJK>
+ 0x5E6E, 0x6ED5, // <CJK>
+ 0x5E6F, 0x6E8F, // <CJK>
+ 0x5E70, 0x6EA5, // <CJK>
+ 0x5E71, 0x6EC2, // <CJK>
+ 0x5E72, 0x6E9F, // <CJK>
+ 0x5E73, 0x6F41, // <CJK>
+ 0x5E74, 0x6F11, // <CJK>
+ 0x5E75, 0x704C, // <CJK>
+ 0x5E76, 0x6EEC, // <CJK>
+ 0x5E77, 0x6EF8, // <CJK>
+ 0x5E78, 0x6EFE, // <CJK>
+ 0x5E79, 0x6F3F, // <CJK>
+ 0x5E7A, 0x6EF2, // <CJK>
+ 0x5E7B, 0x6F31, // <CJK>
+ 0x5E7C, 0x6EEF, // <CJK>
+ 0x5E7D, 0x6F32, // <CJK>
+ 0x5E7E, 0x6ECC, // <CJK>
+ 0x5F21, 0x6F3E, // <CJK>
+ 0x5F22, 0x6F13, // <CJK>
+ 0x5F23, 0x6EF7, // <CJK>
+ 0x5F24, 0x6F86, // <CJK>
+ 0x5F25, 0x6F7A, // <CJK>
+ 0x5F26, 0x6F78, // <CJK>
+ 0x5F27, 0x6F81, // <CJK>
+ 0x5F28, 0x6F80, // <CJK>
+ 0x5F29, 0x6F6F, // <CJK>
+ 0x5F2A, 0x6F5B, // <CJK>
+ 0x5F2B, 0x6FF3, // <CJK>
+ 0x5F2C, 0x6F6D, // <CJK>
+ 0x5F2D, 0x6F82, // <CJK>
+ 0x5F2E, 0x6F7C, // <CJK>
+ 0x5F2F, 0x6F58, // <CJK>
+ 0x5F30, 0x6F8E, // <CJK>
+ 0x5F31, 0x6F91, // <CJK>
+ 0x5F32, 0x6FC2, // <CJK>
+ 0x5F33, 0x6F66, // <CJK>
+ 0x5F34, 0x6FB3, // <CJK>
+ 0x5F35, 0x6FA3, // <CJK>
+ 0x5F36, 0x6FA1, // <CJK>
+ 0x5F37, 0x6FA4, // <CJK>
+ 0x5F38, 0x6FB9, // <CJK>
+ 0x5F39, 0x6FC6, // <CJK>
+ 0x5F3A, 0x6FAA, // <CJK>
+ 0x5F3B, 0x6FDF, // <CJK>
+ 0x5F3C, 0x6FD5, // <CJK>
+ 0x5F3D, 0x6FEC, // <CJK>
+ 0x5F3E, 0x6FD4, // <CJK>
+ 0x5F3F, 0x6FD8, // <CJK>
+ 0x5F40, 0x6FF1, // <CJK>
+ 0x5F41, 0x6FEE, // <CJK>
+ 0x5F42, 0x6FDB, // <CJK>
+ 0x5F43, 0x7009, // <CJK>
+ 0x5F44, 0x700B, // <CJK>
+ 0x5F45, 0x6FFA, // <CJK>
+ 0x5F46, 0x7011, // <CJK>
+ 0x5F47, 0x7001, // <CJK>
+ 0x5F48, 0x700F, // <CJK>
+ 0x5F49, 0x6FFE, // <CJK>
+ 0x5F4A, 0x701B, // <CJK>
+ 0x5F4B, 0x701A, // <CJK>
+ 0x5F4C, 0x6F74, // <CJK>
+ 0x5F4D, 0x701D, // <CJK>
+ 0x5F4E, 0x7018, // <CJK>
+ 0x5F4F, 0x701F, // <CJK>
+ 0x5F50, 0x7030, // <CJK>
+ 0x5F51, 0x703E, // <CJK>
+ 0x5F52, 0x7032, // <CJK>
+ 0x5F53, 0x7051, // <CJK>
+ 0x5F54, 0x7063, // <CJK>
+ 0x5F55, 0x7099, // <CJK>
+ 0x5F56, 0x7092, // <CJK>
+ 0x5F57, 0x70AF, // <CJK>
+ 0x5F58, 0x70F1, // <CJK>
+ 0x5F59, 0x70AC, // <CJK>
+ 0x5F5A, 0x70B8, // <CJK>
+ 0x5F5B, 0x70B3, // <CJK>
+ 0x5F5C, 0x70AE, // <CJK>
+ 0x5F5D, 0x70DF, // <CJK>
+ 0x5F5E, 0x70CB, // <CJK>
+ 0x5F5F, 0x70DD, // <CJK>
+ 0x5F60, 0x70D9, // <CJK>
+ 0x5F61, 0x7109, // <CJK>
+ 0x5F62, 0x70FD, // <CJK>
+ 0x5F63, 0x711C, // <CJK>
+ 0x5F64, 0x7119, // <CJK>
+ 0x5F65, 0x7165, // <CJK>
+ 0x5F66, 0x7155, // <CJK>
+ 0x5F67, 0x7188, // <CJK>
+ 0x5F68, 0x7166, // <CJK>
+ 0x5F69, 0x7162, // <CJK>
+ 0x5F6A, 0x714C, // <CJK>
+ 0x5F6B, 0x7156, // <CJK>
+ 0x5F6C, 0x716C, // <CJK>
+ 0x5F6D, 0x718F, // <CJK>
+ 0x5F6E, 0x71FB, // <CJK>
+ 0x5F6F, 0x7184, // <CJK>
+ 0x5F70, 0x7195, // <CJK>
+ 0x5F71, 0x71A8, // <CJK>
+ 0x5F72, 0x71AC, // <CJK>
+ 0x5F73, 0x71D7, // <CJK>
+ 0x5F74, 0x71B9, // <CJK>
+ 0x5F75, 0x71BE, // <CJK>
+ 0x5F76, 0x71D2, // <CJK>
+ 0x5F77, 0x71C9, // <CJK>
+ 0x5F78, 0x71D4, // <CJK>
+ 0x5F79, 0x71CE, // <CJK>
+ 0x5F7A, 0x71E0, // <CJK>
+ 0x5F7B, 0x71EC, // <CJK>
+ 0x5F7C, 0x71E7, // <CJK>
+ 0x5F7D, 0x71F5, // <CJK>
+ 0x5F7E, 0x71FC, // <CJK>
+ 0x6021, 0x71F9, // <CJK>
+ 0x6022, 0x71FF, // <CJK>
+ 0x6023, 0x720D, // <CJK>
+ 0x6024, 0x7210, // <CJK>
+ 0x6025, 0x721B, // <CJK>
+ 0x6026, 0x7228, // <CJK>
+ 0x6027, 0x722D, // <CJK>
+ 0x6028, 0x722C, // <CJK>
+ 0x6029, 0x7230, // <CJK>
+ 0x602A, 0x7232, // <CJK>
+ 0x602B, 0x723B, // <CJK>
+ 0x602C, 0x723C, // <CJK>
+ 0x602D, 0x723F, // <CJK>
+ 0x602E, 0x7240, // <CJK>
+ 0x602F, 0x7246, // <CJK>
+ 0x6030, 0x724B, // <CJK>
+ 0x6031, 0x7258, // <CJK>
+ 0x6032, 0x7274, // <CJK>
+ 0x6033, 0x727E, // <CJK>
+ 0x6034, 0x7282, // <CJK>
+ 0x6035, 0x7281, // <CJK>
+ 0x6036, 0x7287, // <CJK>
+ 0x6037, 0x7292, // <CJK>
+ 0x6038, 0x7296, // <CJK>
+ 0x6039, 0x72A2, // <CJK>
+ 0x603A, 0x72A7, // <CJK>
+ 0x603B, 0x72B9, // <CJK>
+ 0x603C, 0x72B2, // <CJK>
+ 0x603D, 0x72C3, // <CJK>
+ 0x603E, 0x72C6, // <CJK>
+ 0x603F, 0x72C4, // <CJK>
+ 0x6040, 0x72CE, // <CJK>
+ 0x6041, 0x72D2, // <CJK>
+ 0x6042, 0x72E2, // <CJK>
+ 0x6043, 0x72E0, // <CJK>
+ 0x6044, 0x72E1, // <CJK>
+ 0x6045, 0x72F9, // <CJK>
+ 0x6046, 0x72F7, // <CJK>
+ 0x6047, 0x500F, // <CJK>
+ 0x6048, 0x7317, // <CJK>
+ 0x6049, 0x730A, // <CJK>
+ 0x604A, 0x731C, // <CJK>
+ 0x604B, 0x7316, // <CJK>
+ 0x604C, 0x731D, // <CJK>
+ 0x604D, 0x7334, // <CJK>
+ 0x604E, 0x732F, // <CJK>
+ 0x604F, 0x7329, // <CJK>
+ 0x6050, 0x7325, // <CJK>
+ 0x6051, 0x733E, // <CJK>
+ 0x6052, 0x734E, // <CJK>
+ 0x6053, 0x734F, // <CJK>
+ 0x6054, 0x9ED8, // <CJK>
+ 0x6055, 0x7357, // <CJK>
+ 0x6056, 0x736A, // <CJK>
+ 0x6057, 0x7368, // <CJK>
+ 0x6058, 0x7370, // <CJK>
+ 0x6059, 0x7378, // <CJK>
+ 0x605A, 0x7375, // <CJK>
+ 0x605B, 0x737B, // <CJK>
+ 0x605C, 0x737A, // <CJK>
+ 0x605D, 0x73C8, // <CJK>
+ 0x605E, 0x73B3, // <CJK>
+ 0x605F, 0x73CE, // <CJK>
+ 0x6060, 0x73BB, // <CJK>
+ 0x6061, 0x73C0, // <CJK>
+ 0x6062, 0x73E5, // <CJK>
+ 0x6063, 0x73EE, // <CJK>
+ 0x6064, 0x73DE, // <CJK>
+ 0x6065, 0x74A2, // <CJK>
+ 0x6066, 0x7405, // <CJK>
+ 0x6067, 0x746F, // <CJK>
+ 0x6068, 0x7425, // <CJK>
+ 0x6069, 0x73F8, // <CJK>
+ 0x606A, 0x7432, // <CJK>
+ 0x606B, 0x743A, // <CJK>
+ 0x606C, 0x7455, // <CJK>
+ 0x606D, 0x743F, // <CJK>
+ 0x606E, 0x745F, // <CJK>
+ 0x606F, 0x7459, // <CJK>
+ 0x6070, 0x7441, // <CJK>
+ 0x6071, 0x745C, // <CJK>
+ 0x6072, 0x7469, // <CJK>
+ 0x6073, 0x7470, // <CJK>
+ 0x6074, 0x7463, // <CJK>
+ 0x6075, 0x746A, // <CJK>
+ 0x6076, 0x7476, // <CJK>
+ 0x6077, 0x747E, // <CJK>
+ 0x6078, 0x748B, // <CJK>
+ 0x6079, 0x749E, // <CJK>
+ 0x607A, 0x74A7, // <CJK>
+ 0x607B, 0x74CA, // <CJK>
+ 0x607C, 0x74CF, // <CJK>
+ 0x607D, 0x74D4, // <CJK>
+ 0x607E, 0x73F1, // <CJK>
+ 0x6121, 0x74E0, // <CJK>
+ 0x6122, 0x74E3, // <CJK>
+ 0x6123, 0x74E7, // <CJK>
+ 0x6124, 0x74E9, // <CJK>
+ 0x6125, 0x74EE, // <CJK>
+ 0x6126, 0x74F2, // <CJK>
+ 0x6127, 0x74F0, // <CJK>
+ 0x6128, 0x74F1, // <CJK>
+ 0x6129, 0x74F8, // <CJK>
+ 0x612A, 0x74F7, // <CJK>
+ 0x612B, 0x7504, // <CJK>
+ 0x612C, 0x7503, // <CJK>
+ 0x612D, 0x7505, // <CJK>
+ 0x612E, 0x750C, // <CJK>
+ 0x612F, 0x750E, // <CJK>
+ 0x6130, 0x750D, // <CJK>
+ 0x6131, 0x7515, // <CJK>
+ 0x6132, 0x7513, // <CJK>
+ 0x6133, 0x751E, // <CJK>
+ 0x6134, 0x7526, // <CJK>
+ 0x6135, 0x752C, // <CJK>
+ 0x6136, 0x753C, // <CJK>
+ 0x6137, 0x7544, // <CJK>
+ 0x6138, 0x754D, // <CJK>
+ 0x6139, 0x754A, // <CJK>
+ 0x613A, 0x7549, // <CJK>
+ 0x613B, 0x755B, // <CJK>
+ 0x613C, 0x7546, // <CJK>
+ 0x613D, 0x755A, // <CJK>
+ 0x613E, 0x7569, // <CJK>
+ 0x613F, 0x7564, // <CJK>
+ 0x6140, 0x7567, // <CJK>
+ 0x6141, 0x756B, // <CJK>
+ 0x6142, 0x756D, // <CJK>
+ 0x6143, 0x7578, // <CJK>
+ 0x6144, 0x7576, // <CJK>
+ 0x6145, 0x7586, // <CJK>
+ 0x6146, 0x7587, // <CJK>
+ 0x6147, 0x7574, // <CJK>
+ 0x6148, 0x758A, // <CJK>
+ 0x6149, 0x7589, // <CJK>
+ 0x614A, 0x7582, // <CJK>
+ 0x614B, 0x7594, // <CJK>
+ 0x614C, 0x759A, // <CJK>
+ 0x614D, 0x759D, // <CJK>
+ 0x614E, 0x75A5, // <CJK>
+ 0x614F, 0x75A3, // <CJK>
+ 0x6150, 0x75C2, // <CJK>
+ 0x6151, 0x75B3, // <CJK>
+ 0x6152, 0x75C3, // <CJK>
+ 0x6153, 0x75B5, // <CJK>
+ 0x6154, 0x75BD, // <CJK>
+ 0x6155, 0x75B8, // <CJK>
+ 0x6156, 0x75BC, // <CJK>
+ 0x6157, 0x75B1, // <CJK>
+ 0x6158, 0x75CD, // <CJK>
+ 0x6159, 0x75CA, // <CJK>
+ 0x615A, 0x75D2, // <CJK>
+ 0x615B, 0x75D9, // <CJK>
+ 0x615C, 0x75E3, // <CJK>
+ 0x615D, 0x75DE, // <CJK>
+ 0x615E, 0x75FE, // <CJK>
+ 0x615F, 0x75FF, // <CJK>
+ 0x6160, 0x75FC, // <CJK>
+ 0x6161, 0x7601, // <CJK>
+ 0x6162, 0x75F0, // <CJK>
+ 0x6163, 0x75FA, // <CJK>
+ 0x6164, 0x75F2, // <CJK>
+ 0x6165, 0x75F3, // <CJK>
+ 0x6166, 0x760B, // <CJK>
+ 0x6167, 0x760D, // <CJK>
+ 0x6168, 0x7609, // <CJK>
+ 0x6169, 0x761F, // <CJK>
+ 0x616A, 0x7627, // <CJK>
+ 0x616B, 0x7620, // <CJK>
+ 0x616C, 0x7621, // <CJK>
+ 0x616D, 0x7622, // <CJK>
+ 0x616E, 0x7624, // <CJK>
+ 0x616F, 0x7634, // <CJK>
+ 0x6170, 0x7630, // <CJK>
+ 0x6171, 0x763B, // <CJK>
+ 0x6172, 0x7647, // <CJK>
+ 0x6173, 0x7648, // <CJK>
+ 0x6174, 0x7646, // <CJK>
+ 0x6175, 0x765C, // <CJK>
+ 0x6176, 0x7658, // <CJK>
+ 0x6177, 0x7661, // <CJK>
+ 0x6178, 0x7662, // <CJK>
+ 0x6179, 0x7668, // <CJK>
+ 0x617A, 0x7669, // <CJK>
+ 0x617B, 0x766A, // <CJK>
+ 0x617C, 0x7667, // <CJK>
+ 0x617D, 0x766C, // <CJK>
+ 0x617E, 0x7670, // <CJK>
+ 0x6221, 0x7672, // <CJK>
+ 0x6222, 0x7676, // <CJK>
+ 0x6223, 0x7678, // <CJK>
+ 0x6224, 0x767C, // <CJK>
+ 0x6225, 0x7680, // <CJK>
+ 0x6226, 0x7683, // <CJK>
+ 0x6227, 0x7688, // <CJK>
+ 0x6228, 0x768B, // <CJK>
+ 0x6229, 0x768E, // <CJK>
+ 0x622A, 0x7696, // <CJK>
+ 0x622B, 0x7693, // <CJK>
+ 0x622C, 0x7699, // <CJK>
+ 0x622D, 0x769A, // <CJK>
+ 0x622E, 0x76B0, // <CJK>
+ 0x622F, 0x76B4, // <CJK>
+ 0x6230, 0x76B8, // <CJK>
+ 0x6231, 0x76B9, // <CJK>
+ 0x6232, 0x76BA, // <CJK>
+ 0x6233, 0x76C2, // <CJK>
+ 0x6234, 0x76CD, // <CJK>
+ 0x6235, 0x76D6, // <CJK>
+ 0x6236, 0x76D2, // <CJK>
+ 0x6237, 0x76DE, // <CJK>
+ 0x6238, 0x76E1, // <CJK>
+ 0x6239, 0x76E5, // <CJK>
+ 0x623A, 0x76E7, // <CJK>
+ 0x623B, 0x76EA, // <CJK>
+ 0x623C, 0x862F, // <CJK>
+ 0x623D, 0x76FB, // <CJK>
+ 0x623E, 0x7708, // <CJK>
+ 0x623F, 0x7707, // <CJK>
+ 0x6240, 0x7704, // <CJK>
+ 0x6241, 0x7729, // <CJK>
+ 0x6242, 0x7724, // <CJK>
+ 0x6243, 0x771E, // <CJK>
+ 0x6244, 0x7725, // <CJK>
+ 0x6245, 0x7726, // <CJK>
+ 0x6246, 0x771B, // <CJK>
+ 0x6247, 0x7737, // <CJK>
+ 0x6248, 0x7738, // <CJK>
+ 0x6249, 0x7747, // <CJK>
+ 0x624A, 0x775A, // <CJK>
+ 0x624B, 0x7768, // <CJK>
+ 0x624C, 0x776B, // <CJK>
+ 0x624D, 0x775B, // <CJK>
+ 0x624E, 0x7765, // <CJK>
+ 0x624F, 0x777F, // <CJK>
+ 0x6250, 0x777E, // <CJK>
+ 0x6251, 0x7779, // <CJK>
+ 0x6252, 0x778E, // <CJK>
+ 0x6253, 0x778B, // <CJK>
+ 0x6254, 0x7791, // <CJK>
+ 0x6255, 0x77A0, // <CJK>
+ 0x6256, 0x779E, // <CJK>
+ 0x6257, 0x77B0, // <CJK>
+ 0x6258, 0x77B6, // <CJK>
+ 0x6259, 0x77B9, // <CJK>
+ 0x625A, 0x77BF, // <CJK>
+ 0x625B, 0x77BC, // <CJK>
+ 0x625C, 0x77BD, // <CJK>
+ 0x625D, 0x77BB, // <CJK>
+ 0x625E, 0x77C7, // <CJK>
+ 0x625F, 0x77CD, // <CJK>
+ 0x6260, 0x77D7, // <CJK>
+ 0x6261, 0x77DA, // <CJK>
+ 0x6262, 0x77DC, // <CJK>
+ 0x6263, 0x77E3, // <CJK>
+ 0x6264, 0x77EE, // <CJK>
+ 0x6265, 0x77FC, // <CJK>
+ 0x6266, 0x780C, // <CJK>
+ 0x6267, 0x7812, // <CJK>
+ 0x6268, 0x7926, // <CJK>
+ 0x6269, 0x7820, // <CJK>
+ 0x626A, 0x792A, // <CJK>
+ 0x626B, 0x7845, // <CJK>
+ 0x626C, 0x788E, // <CJK>
+ 0x626D, 0x7874, // <CJK>
+ 0x626E, 0x7886, // <CJK>
+ 0x626F, 0x787C, // <CJK>
+ 0x6270, 0x789A, // <CJK>
+ 0x6271, 0x788C, // <CJK>
+ 0x6272, 0x78A3, // <CJK>
+ 0x6273, 0x78B5, // <CJK>
+ 0x6274, 0x78AA, // <CJK>
+ 0x6275, 0x78AF, // <CJK>
+ 0x6276, 0x78D1, // <CJK>
+ 0x6277, 0x78C6, // <CJK>
+ 0x6278, 0x78CB, // <CJK>
+ 0x6279, 0x78D4, // <CJK>
+ 0x627A, 0x78BE, // <CJK>
+ 0x627B, 0x78BC, // <CJK>
+ 0x627C, 0x78C5, // <CJK>
+ 0x627D, 0x78CA, // <CJK>
+ 0x627E, 0x78EC, // <CJK>
+ 0x6321, 0x78E7, // <CJK>
+ 0x6322, 0x78DA, // <CJK>
+ 0x6323, 0x78FD, // <CJK>
+ 0x6324, 0x78F4, // <CJK>
+ 0x6325, 0x7907, // <CJK>
+ 0x6326, 0x7912, // <CJK>
+ 0x6327, 0x7911, // <CJK>
+ 0x6328, 0x7919, // <CJK>
+ 0x6329, 0x792C, // <CJK>
+ 0x632A, 0x792B, // <CJK>
+ 0x632B, 0x7940, // <CJK>
+ 0x632C, 0x7960, // <CJK>
+ 0x632D, 0x7957, // <CJK>
+ 0x632E, 0x795F, // <CJK>
+ 0x632F, 0x795A, // <CJK>
+ 0x6330, 0x7955, // <CJK>
+ 0x6331, 0x7953, // <CJK>
+ 0x6332, 0x797A, // <CJK>
+ 0x6333, 0x797F, // <CJK>
+ 0x6334, 0x798A, // <CJK>
+ 0x6335, 0x799D, // <CJK>
+ 0x6336, 0x79A7, // <CJK>
+ 0x6337, 0x9F4B, // <CJK>
+ 0x6338, 0x79AA, // <CJK>
+ 0x6339, 0x79AE, // <CJK>
+ 0x633A, 0x79B3, // <CJK>
+ 0x633B, 0x79B9, // <CJK>
+ 0x633C, 0x79BA, // <CJK>
+ 0x633D, 0x79C9, // <CJK>
+ 0x633E, 0x79D5, // <CJK>
+ 0x633F, 0x79E7, // <CJK>
+ 0x6340, 0x79EC, // <CJK>
+ 0x6341, 0x79E1, // <CJK>
+ 0x6342, 0x79E3, // <CJK>
+ 0x6343, 0x7A08, // <CJK>
+ 0x6344, 0x7A0D, // <CJK>
+ 0x6345, 0x7A18, // <CJK>
+ 0x6346, 0x7A19, // <CJK>
+ 0x6347, 0x7A20, // <CJK>
+ 0x6348, 0x7A1F, // <CJK>
+ 0x6349, 0x7980, // <CJK>
+ 0x634A, 0x7A31, // <CJK>
+ 0x634B, 0x7A3B, // <CJK>
+ 0x634C, 0x7A3E, // <CJK>
+ 0x634D, 0x7A37, // <CJK>
+ 0x634E, 0x7A43, // <CJK>
+ 0x634F, 0x7A57, // <CJK>
+ 0x6350, 0x7A49, // <CJK>
+ 0x6351, 0x7A61, // <CJK>
+ 0x6352, 0x7A62, // <CJK>
+ 0x6353, 0x7A69, // <CJK>
+ 0x6354, 0x9F9D, // <CJK>
+ 0x6355, 0x7A70, // <CJK>
+ 0x6356, 0x7A79, // <CJK>
+ 0x6357, 0x7A7D, // <CJK>
+ 0x6358, 0x7A88, // <CJK>
+ 0x6359, 0x7A97, // <CJK>
+ 0x635A, 0x7A95, // <CJK>
+ 0x635B, 0x7A98, // <CJK>
+ 0x635C, 0x7A96, // <CJK>
+ 0x635D, 0x7AA9, // <CJK>
+ 0x635E, 0x7AC8, // <CJK>
+ 0x635F, 0x7AB0, // <CJK>
+ 0x6360, 0x7AB6, // <CJK>
+ 0x6361, 0x7AC5, // <CJK>
+ 0x6362, 0x7AC4, // <CJK>
+ 0x6363, 0x7ABF, // <CJK>
+ 0x6364, 0x9083, // <CJK>
+ 0x6365, 0x7AC7, // <CJK>
+ 0x6366, 0x7ACA, // <CJK>
+ 0x6367, 0x7ACD, // <CJK>
+ 0x6368, 0x7ACF, // <CJK>
+ 0x6369, 0x7AD5, // <CJK>
+ 0x636A, 0x7AD3, // <CJK>
+ 0x636B, 0x7AD9, // <CJK>
+ 0x636C, 0x7ADA, // <CJK>
+ 0x636D, 0x7ADD, // <CJK>
+ 0x636E, 0x7AE1, // <CJK>
+ 0x636F, 0x7AE2, // <CJK>
+ 0x6370, 0x7AE6, // <CJK>
+ 0x6371, 0x7AED, // <CJK>
+ 0x6372, 0x7AF0, // <CJK>
+ 0x6373, 0x7B02, // <CJK>
+ 0x6374, 0x7B0F, // <CJK>
+ 0x6375, 0x7B0A, // <CJK>
+ 0x6376, 0x7B06, // <CJK>
+ 0x6377, 0x7B33, // <CJK>
+ 0x6378, 0x7B18, // <CJK>
+ 0x6379, 0x7B19, // <CJK>
+ 0x637A, 0x7B1E, // <CJK>
+ 0x637B, 0x7B35, // <CJK>
+ 0x637C, 0x7B28, // <CJK>
+ 0x637D, 0x7B36, // <CJK>
+ 0x637E, 0x7B50, // <CJK>
+ 0x6421, 0x7B7A, // <CJK>
+ 0x6422, 0x7B04, // <CJK>
+ 0x6423, 0x7B4D, // <CJK>
+ 0x6424, 0x7B0B, // <CJK>
+ 0x6425, 0x7B4C, // <CJK>
+ 0x6426, 0x7B45, // <CJK>
+ 0x6427, 0x7B75, // <CJK>
+ 0x6428, 0x7B65, // <CJK>
+ 0x6429, 0x7B74, // <CJK>
+ 0x642A, 0x7B67, // <CJK>
+ 0x642B, 0x7B70, // <CJK>
+ 0x642C, 0x7B71, // <CJK>
+ 0x642D, 0x7B6C, // <CJK>
+ 0x642E, 0x7B6E, // <CJK>
+ 0x642F, 0x7B9D, // <CJK>
+ 0x6430, 0x7B98, // <CJK>
+ 0x6431, 0x7B9F, // <CJK>
+ 0x6432, 0x7B8D, // <CJK>
+ 0x6433, 0x7B9C, // <CJK>
+ 0x6434, 0x7B9A, // <CJK>
+ 0x6435, 0x7B8B, // <CJK>
+ 0x6436, 0x7B92, // <CJK>
+ 0x6437, 0x7B8F, // <CJK>
+ 0x6438, 0x7B5D, // <CJK>
+ 0x6439, 0x7B99, // <CJK>
+ 0x643A, 0x7BCB, // <CJK>
+ 0x643B, 0x7BC1, // <CJK>
+ 0x643C, 0x7BCC, // <CJK>
+ 0x643D, 0x7BCF, // <CJK>
+ 0x643E, 0x7BB4, // <CJK>
+ 0x643F, 0x7BC6, // <CJK>
+ 0x6440, 0x7BDD, // <CJK>
+ 0x6441, 0x7BE9, // <CJK>
+ 0x6442, 0x7C11, // <CJK>
+ 0x6443, 0x7C14, // <CJK>
+ 0x6444, 0x7BE6, // <CJK>
+ 0x6445, 0x7BE5, // <CJK>
+ 0x6446, 0x7C60, // <CJK>
+ 0x6447, 0x7C00, // <CJK>
+ 0x6448, 0x7C07, // <CJK>
+ 0x6449, 0x7C13, // <CJK>
+ 0x644A, 0x7BF3, // <CJK>
+ 0x644B, 0x7BF7, // <CJK>
+ 0x644C, 0x7C17, // <CJK>
+ 0x644D, 0x7C0D, // <CJK>
+ 0x644E, 0x7BF6, // <CJK>
+ 0x644F, 0x7C23, // <CJK>
+ 0x6450, 0x7C27, // <CJK>
+ 0x6451, 0x7C2A, // <CJK>
+ 0x6452, 0x7C1F, // <CJK>
+ 0x6453, 0x7C37, // <CJK>
+ 0x6454, 0x7C2B, // <CJK>
+ 0x6455, 0x7C3D, // <CJK>
+ 0x6456, 0x7C4C, // <CJK>
+ 0x6457, 0x7C43, // <CJK>
+ 0x6458, 0x7C54, // <CJK>
+ 0x6459, 0x7C4F, // <CJK>
+ 0x645A, 0x7C40, // <CJK>
+ 0x645B, 0x7C50, // <CJK>
+ 0x645C, 0x7C58, // <CJK>
+ 0x645D, 0x7C5F, // <CJK>
+ 0x645E, 0x7C64, // <CJK>
+ 0x645F, 0x7C56, // <CJK>
+ 0x6460, 0x7C65, // <CJK>
+ 0x6461, 0x7C6C, // <CJK>
+ 0x6462, 0x7C75, // <CJK>
+ 0x6463, 0x7C83, // <CJK>
+ 0x6464, 0x7C90, // <CJK>
+ 0x6465, 0x7CA4, // <CJK>
+ 0x6466, 0x7CAD, // <CJK>
+ 0x6467, 0x7CA2, // <CJK>
+ 0x6468, 0x7CAB, // <CJK>
+ 0x6469, 0x7CA1, // <CJK>
+ 0x646A, 0x7CA8, // <CJK>
+ 0x646B, 0x7CB3, // <CJK>
+ 0x646C, 0x7CB2, // <CJK>
+ 0x646D, 0x7CB1, // <CJK>
+ 0x646E, 0x7CAE, // <CJK>
+ 0x646F, 0x7CB9, // <CJK>
+ 0x6470, 0x7CBD, // <CJK>
+ 0x6471, 0x7CC0, // <CJK>
+ 0x6472, 0x7CC5, // <CJK>
+ 0x6473, 0x7CC2, // <CJK>
+ 0x6474, 0x7CD8, // <CJK>
+ 0x6475, 0x7CD2, // <CJK>
+ 0x6476, 0x7CDC, // <CJK>
+ 0x6477, 0x7CE2, // <CJK>
+ 0x6478, 0x9B3B, // <CJK>
+ 0x6479, 0x7CEF, // <CJK>
+ 0x647A, 0x7CF2, // <CJK>
+ 0x647B, 0x7CF4, // <CJK>
+ 0x647C, 0x7CF6, // <CJK>
+ 0x647D, 0x7CFA, // <CJK>
+ 0x647E, 0x7D06, // <CJK>
+ 0x6521, 0x7D02, // <CJK>
+ 0x6522, 0x7D1C, // <CJK>
+ 0x6523, 0x7D15, // <CJK>
+ 0x6524, 0x7D0A, // <CJK>
+ 0x6525, 0x7D45, // <CJK>
+ 0x6526, 0x7D4B, // <CJK>
+ 0x6527, 0x7D2E, // <CJK>
+ 0x6528, 0x7D32, // <CJK>
+ 0x6529, 0x7D3F, // <CJK>
+ 0x652A, 0x7D35, // <CJK>
+ 0x652B, 0x7D46, // <CJK>
+ 0x652C, 0x7D73, // <CJK>
+ 0x652D, 0x7D56, // <CJK>
+ 0x652E, 0x7D4E, // <CJK>
+ 0x652F, 0x7D72, // <CJK>
+ 0x6530, 0x7D68, // <CJK>
+ 0x6531, 0x7D6E, // <CJK>
+ 0x6532, 0x7D4F, // <CJK>
+ 0x6533, 0x7D63, // <CJK>
+ 0x6534, 0x7D93, // <CJK>
+ 0x6535, 0x7D89, // <CJK>
+ 0x6536, 0x7D5B, // <CJK>
+ 0x6537, 0x7D8F, // <CJK>
+ 0x6538, 0x7D7D, // <CJK>
+ 0x6539, 0x7D9B, // <CJK>
+ 0x653A, 0x7DBA, // <CJK>
+ 0x653B, 0x7DAE, // <CJK>
+ 0x653C, 0x7DA3, // <CJK>
+ 0x653D, 0x7DB5, // <CJK>
+ 0x653E, 0x7DC7, // <CJK>
+ 0x653F, 0x7DBD, // <CJK>
+ 0x6540, 0x7DAB, // <CJK>
+ 0x6541, 0x7E3D, // <CJK>
+ 0x6542, 0x7DA2, // <CJK>
+ 0x6543, 0x7DAF, // <CJK>
+ 0x6544, 0x7DDC, // <CJK>
+ 0x6545, 0x7DB8, // <CJK>
+ 0x6546, 0x7D9F, // <CJK>
+ 0x6547, 0x7DB0, // <CJK>
+ 0x6548, 0x7DD8, // <CJK>
+ 0x6549, 0x7DDD, // <CJK>
+ 0x654A, 0x7DE4, // <CJK>
+ 0x654B, 0x7DDE, // <CJK>
+ 0x654C, 0x7DFB, // <CJK>
+ 0x654D, 0x7DF2, // <CJK>
+ 0x654E, 0x7DE1, // <CJK>
+ 0x654F, 0x7E05, // <CJK>
+ 0x6550, 0x7E0A, // <CJK>
+ 0x6551, 0x7E23, // <CJK>
+ 0x6552, 0x7E21, // <CJK>
+ 0x6553, 0x7E12, // <CJK>
+ 0x6554, 0x7E31, // <CJK>
+ 0x6555, 0x7E1F, // <CJK>
+ 0x6556, 0x7E09, // <CJK>
+ 0x6557, 0x7E0B, // <CJK>
+ 0x6558, 0x7E22, // <CJK>
+ 0x6559, 0x7E46, // <CJK>
+ 0x655A, 0x7E66, // <CJK>
+ 0x655B, 0x7E3B, // <CJK>
+ 0x655C, 0x7E35, // <CJK>
+ 0x655D, 0x7E39, // <CJK>
+ 0x655E, 0x7E43, // <CJK>
+ 0x655F, 0x7E37, // <CJK>
+ 0x6560, 0x7E32, // <CJK>
+ 0x6561, 0x7E3A, // <CJK>
+ 0x6562, 0x7E67, // <CJK>
+ 0x6563, 0x7E5D, // <CJK>
+ 0x6564, 0x7E56, // <CJK>
+ 0x6565, 0x7E5E, // <CJK>
+ 0x6566, 0x7E59, // <CJK>
+ 0x6567, 0x7E5A, // <CJK>
+ 0x6568, 0x7E79, // <CJK>
+ 0x6569, 0x7E6A, // <CJK>
+ 0x656A, 0x7E69, // <CJK>
+ 0x656B, 0x7E7C, // <CJK>
+ 0x656C, 0x7E7B, // <CJK>
+ 0x656D, 0x7E83, // <CJK>
+ 0x656E, 0x7DD5, // <CJK>
+ 0x656F, 0x7E7D, // <CJK>
+ 0x6570, 0x8FAE, // <CJK>
+ 0x6571, 0x7E7F, // <CJK>
+ 0x6572, 0x7E88, // <CJK>
+ 0x6573, 0x7E89, // <CJK>
+ 0x6574, 0x7E8C, // <CJK>
+ 0x6575, 0x7E92, // <CJK>
+ 0x6576, 0x7E90, // <CJK>
+ 0x6577, 0x7E93, // <CJK>
+ 0x6578, 0x7E94, // <CJK>
+ 0x6579, 0x7E96, // <CJK>
+ 0x657A, 0x7E8E, // <CJK>
+ 0x657B, 0x7E9B, // <CJK>
+ 0x657C, 0x7E9C, // <CJK>
+ 0x657D, 0x7F38, // <CJK>
+ 0x657E, 0x7F3A, // <CJK>
+ 0x6621, 0x7F45, // <CJK>
+ 0x6622, 0x7F4C, // <CJK>
+ 0x6623, 0x7F4D, // <CJK>
+ 0x6624, 0x7F4E, // <CJK>
+ 0x6625, 0x7F50, // <CJK>
+ 0x6626, 0x7F51, // <CJK>
+ 0x6627, 0x7F55, // <CJK>
+ 0x6628, 0x7F54, // <CJK>
+ 0x6629, 0x7F58, // <CJK>
+ 0x662A, 0x7F5F, // <CJK>
+ 0x662B, 0x7F60, // <CJK>
+ 0x662C, 0x7F68, // <CJK>
+ 0x662D, 0x7F69, // <CJK>
+ 0x662E, 0x7F67, // <CJK>
+ 0x662F, 0x7F78, // <CJK>
+ 0x6630, 0x7F82, // <CJK>
+ 0x6631, 0x7F86, // <CJK>
+ 0x6632, 0x7F83, // <CJK>
+ 0x6633, 0x7F88, // <CJK>
+ 0x6634, 0x7F87, // <CJK>
+ 0x6635, 0x7F8C, // <CJK>
+ 0x6636, 0x7F94, // <CJK>
+ 0x6637, 0x7F9E, // <CJK>
+ 0x6638, 0x7F9D, // <CJK>
+ 0x6639, 0x7F9A, // <CJK>
+ 0x663A, 0x7FA3, // <CJK>
+ 0x663B, 0x7FAF, // <CJK>
+ 0x663C, 0x7FB2, // <CJK>
+ 0x663D, 0x7FB9, // <CJK>
+ 0x663E, 0x7FAE, // <CJK>
+ 0x663F, 0x7FB6, // <CJK>
+ 0x6640, 0x7FB8, // <CJK>
+ 0x6641, 0x8B71, // <CJK>
+ 0x6642, 0x7FC5, // <CJK>
+ 0x6643, 0x7FC6, // <CJK>
+ 0x6644, 0x7FCA, // <CJK>
+ 0x6645, 0x7FD5, // <CJK>
+ 0x6646, 0x7FD4, // <CJK>
+ 0x6647, 0x7FE1, // <CJK>
+ 0x6648, 0x7FE6, // <CJK>
+ 0x6649, 0x7FE9, // <CJK>
+ 0x664A, 0x7FF3, // <CJK>
+ 0x664B, 0x7FF9, // <CJK>
+ 0x664C, 0x98DC, // <CJK>
+ 0x664D, 0x8006, // <CJK>
+ 0x664E, 0x8004, // <CJK>
+ 0x664F, 0x800B, // <CJK>
+ 0x6650, 0x8012, // <CJK>
+ 0x6651, 0x8018, // <CJK>
+ 0x6652, 0x8019, // <CJK>
+ 0x6653, 0x801C, // <CJK>
+ 0x6654, 0x8021, // <CJK>
+ 0x6655, 0x8028, // <CJK>
+ 0x6656, 0x803F, // <CJK>
+ 0x6657, 0x803B, // <CJK>
+ 0x6658, 0x804A, // <CJK>
+ 0x6659, 0x8046, // <CJK>
+ 0x665A, 0x8052, // <CJK>
+ 0x665B, 0x8058, // <CJK>
+ 0x665C, 0x805A, // <CJK>
+ 0x665D, 0x805F, // <CJK>
+ 0x665E, 0x8062, // <CJK>
+ 0x665F, 0x8068, // <CJK>
+ 0x6660, 0x8073, // <CJK>
+ 0x6661, 0x8072, // <CJK>
+ 0x6662, 0x8070, // <CJK>
+ 0x6663, 0x8076, // <CJK>
+ 0x6664, 0x8079, // <CJK>
+ 0x6665, 0x807D, // <CJK>
+ 0x6666, 0x807F, // <CJK>
+ 0x6667, 0x8084, // <CJK>
+ 0x6668, 0x8086, // <CJK>
+ 0x6669, 0x8085, // <CJK>
+ 0x666A, 0x809B, // <CJK>
+ 0x666B, 0x8093, // <CJK>
+ 0x666C, 0x809A, // <CJK>
+ 0x666D, 0x80AD, // <CJK>
+ 0x666E, 0x5190, // <CJK>
+ 0x666F, 0x80AC, // <CJK>
+ 0x6670, 0x80DB, // <CJK>
+ 0x6671, 0x80E5, // <CJK>
+ 0x6672, 0x80D9, // <CJK>
+ 0x6673, 0x80DD, // <CJK>
+ 0x6674, 0x80C4, // <CJK>
+ 0x6675, 0x80DA, // <CJK>
+ 0x6676, 0x80D6, // <CJK>
+ 0x6677, 0x8109, // <CJK>
+ 0x6678, 0x80EF, // <CJK>
+ 0x6679, 0x80F1, // <CJK>
+ 0x667A, 0x811B, // <CJK>
+ 0x667B, 0x8129, // <CJK>
+ 0x667C, 0x8123, // <CJK>
+ 0x667D, 0x812F, // <CJK>
+ 0x667E, 0x814B, // <CJK>
+ 0x6721, 0x968B, // <CJK>
+ 0x6722, 0x8146, // <CJK>
+ 0x6723, 0x813E, // <CJK>
+ 0x6724, 0x8153, // <CJK>
+ 0x6725, 0x8151, // <CJK>
+ 0x6726, 0x80FC, // <CJK>
+ 0x6727, 0x8171, // <CJK>
+ 0x6728, 0x816E, // <CJK>
+ 0x6729, 0x8165, // <CJK>
+ 0x672A, 0x8166, // <CJK>
+ 0x672B, 0x8174, // <CJK>
+ 0x672C, 0x8183, // <CJK>
+ 0x672D, 0x8188, // <CJK>
+ 0x672E, 0x818A, // <CJK>
+ 0x672F, 0x8180, // <CJK>
+ 0x6730, 0x8182, // <CJK>
+ 0x6731, 0x81A0, // <CJK>
+ 0x6732, 0x8195, // <CJK>
+ 0x6733, 0x81A4, // <CJK>
+ 0x6734, 0x81A3, // <CJK>
+ 0x6735, 0x815F, // <CJK>
+ 0x6736, 0x8193, // <CJK>
+ 0x6737, 0x81A9, // <CJK>
+ 0x6738, 0x81B0, // <CJK>
+ 0x6739, 0x81B5, // <CJK>
+ 0x673A, 0x81BE, // <CJK>
+ 0x673B, 0x81B8, // <CJK>
+ 0x673C, 0x81BD, // <CJK>
+ 0x673D, 0x81C0, // <CJK>
+ 0x673E, 0x81C2, // <CJK>
+ 0x673F, 0x81BA, // <CJK>
+ 0x6740, 0x81C9, // <CJK>
+ 0x6741, 0x81CD, // <CJK>
+ 0x6742, 0x81D1, // <CJK>
+ 0x6743, 0x81D9, // <CJK>
+ 0x6744, 0x81D8, // <CJK>
+ 0x6745, 0x81C8, // <CJK>
+ 0x6746, 0x81DA, // <CJK>
+ 0x6747, 0x81DF, // <CJK>
+ 0x6748, 0x81E0, // <CJK>
+ 0x6749, 0x81E7, // <CJK>
+ 0x674A, 0x81FA, // <CJK>
+ 0x674B, 0x81FB, // <CJK>
+ 0x674C, 0x81FE, // <CJK>
+ 0x674D, 0x8201, // <CJK>
+ 0x674E, 0x8202, // <CJK>
+ 0x674F, 0x8205, // <CJK>
+ 0x6750, 0x8207, // <CJK>
+ 0x6751, 0x820A, // <CJK>
+ 0x6752, 0x820D, // <CJK>
+ 0x6753, 0x8210, // <CJK>
+ 0x6754, 0x8216, // <CJK>
+ 0x6755, 0x8229, // <CJK>
+ 0x6756, 0x822B, // <CJK>
+ 0x6757, 0x8238, // <CJK>
+ 0x6758, 0x8233, // <CJK>
+ 0x6759, 0x8240, // <CJK>
+ 0x675A, 0x8259, // <CJK>
+ 0x675B, 0x8258, // <CJK>
+ 0x675C, 0x825D, // <CJK>
+ 0x675D, 0x825A, // <CJK>
+ 0x675E, 0x825F, // <CJK>
+ 0x675F, 0x8264, // <CJK>
+ 0x6760, 0x8262, // <CJK>
+ 0x6761, 0x8268, // <CJK>
+ 0x6762, 0x826A, // <CJK>
+ 0x6763, 0x826B, // <CJK>
+ 0x6764, 0x822E, // <CJK>
+ 0x6765, 0x8271, // <CJK>
+ 0x6766, 0x8277, // <CJK>
+ 0x6767, 0x8278, // <CJK>
+ 0x6768, 0x827E, // <CJK>
+ 0x6769, 0x828D, // <CJK>
+ 0x676A, 0x8292, // <CJK>
+ 0x676B, 0x82AB, // <CJK>
+ 0x676C, 0x829F, // <CJK>
+ 0x676D, 0x82BB, // <CJK>
+ 0x676E, 0x82AC, // <CJK>
+ 0x676F, 0x82E1, // <CJK>
+ 0x6770, 0x82E3, // <CJK>
+ 0x6771, 0x82DF, // <CJK>
+ 0x6772, 0x82D2, // <CJK>
+ 0x6773, 0x82F4, // <CJK>
+ 0x6774, 0x82F3, // <CJK>
+ 0x6775, 0x82FA, // <CJK>
+ 0x6776, 0x8393, // <CJK>
+ 0x6777, 0x8303, // <CJK>
+ 0x6778, 0x82FB, // <CJK>
+ 0x6779, 0x82F9, // <CJK>
+ 0x677A, 0x82DE, // <CJK>
+ 0x677B, 0x8306, // <CJK>
+ 0x677C, 0x82DC, // <CJK>
+ 0x677D, 0x8309, // <CJK>
+ 0x677E, 0x82D9, // <CJK>
+ 0x6821, 0x8335, // <CJK>
+ 0x6822, 0x8334, // <CJK>
+ 0x6823, 0x8316, // <CJK>
+ 0x6824, 0x8332, // <CJK>
+ 0x6825, 0x8331, // <CJK>
+ 0x6826, 0x8340, // <CJK>
+ 0x6827, 0x8339, // <CJK>
+ 0x6828, 0x8350, // <CJK>
+ 0x6829, 0x8345, // <CJK>
+ 0x682A, 0x832F, // <CJK>
+ 0x682B, 0x832B, // <CJK>
+ 0x682C, 0x8317, // <CJK>
+ 0x682D, 0x8318, // <CJK>
+ 0x682E, 0x8385, // <CJK>
+ 0x682F, 0x839A, // <CJK>
+ 0x6830, 0x83AA, // <CJK>
+ 0x6831, 0x839F, // <CJK>
+ 0x6832, 0x83A2, // <CJK>
+ 0x6833, 0x8396, // <CJK>
+ 0x6834, 0x8323, // <CJK>
+ 0x6835, 0x838E, // <CJK>
+ 0x6836, 0x8387, // <CJK>
+ 0x6837, 0x838A, // <CJK>
+ 0x6838, 0x837C, // <CJK>
+ 0x6839, 0x83B5, // <CJK>
+ 0x683A, 0x8373, // <CJK>
+ 0x683B, 0x8375, // <CJK>
+ 0x683C, 0x83A0, // <CJK>
+ 0x683D, 0x8389, // <CJK>
+ 0x683E, 0x83A8, // <CJK>
+ 0x683F, 0x83F4, // <CJK>
+ 0x6840, 0x8413, // <CJK>
+ 0x6841, 0x83EB, // <CJK>
+ 0x6842, 0x83CE, // <CJK>
+ 0x6843, 0x83FD, // <CJK>
+ 0x6844, 0x8403, // <CJK>
+ 0x6845, 0x83D8, // <CJK>
+ 0x6846, 0x840B, // <CJK>
+ 0x6847, 0x83C1, // <CJK>
+ 0x6848, 0x83F7, // <CJK>
+ 0x6849, 0x8407, // <CJK>
+ 0x684A, 0x83E0, // <CJK>
+ 0x684B, 0x83F2, // <CJK>
+ 0x684C, 0x840D, // <CJK>
+ 0x684D, 0x8422, // <CJK>
+ 0x684E, 0x8420, // <CJK>
+ 0x684F, 0x83BD, // <CJK>
+ 0x6850, 0x8438, // <CJK>
+ 0x6851, 0x8506, // <CJK>
+ 0x6852, 0x83FB, // <CJK>
+ 0x6853, 0x846D, // <CJK>
+ 0x6854, 0x842A, // <CJK>
+ 0x6855, 0x843C, // <CJK>
+ 0x6856, 0x855A, // <CJK>
+ 0x6857, 0x8484, // <CJK>
+ 0x6858, 0x8477, // <CJK>
+ 0x6859, 0x846B, // <CJK>
+ 0x685A, 0x84AD, // <CJK>
+ 0x685B, 0x846E, // <CJK>
+ 0x685C, 0x8482, // <CJK>
+ 0x685D, 0x8469, // <CJK>
+ 0x685E, 0x8446, // <CJK>
+ 0x685F, 0x842C, // <CJK>
+ 0x6860, 0x846F, // <CJK>
+ 0x6861, 0x8479, // <CJK>
+ 0x6862, 0x8435, // <CJK>
+ 0x6863, 0x84CA, // <CJK>
+ 0x6864, 0x8462, // <CJK>
+ 0x6865, 0x84B9, // <CJK>
+ 0x6866, 0x84BF, // <CJK>
+ 0x6867, 0x849F, // <CJK>
+ 0x6868, 0x84D9, // <CJK>
+ 0x6869, 0x84CD, // <CJK>
+ 0x686A, 0x84BB, // <CJK>
+ 0x686B, 0x84DA, // <CJK>
+ 0x686C, 0x84D0, // <CJK>
+ 0x686D, 0x84C1, // <CJK>
+ 0x686E, 0x84C6, // <CJK>
+ 0x686F, 0x84D6, // <CJK>
+ 0x6870, 0x84A1, // <CJK>
+ 0x6871, 0x8521, // <CJK>
+ 0x6872, 0x84FF, // <CJK>
+ 0x6873, 0x84F4, // <CJK>
+ 0x6874, 0x8517, // <CJK>
+ 0x6875, 0x8518, // <CJK>
+ 0x6876, 0x852C, // <CJK>
+ 0x6877, 0x851F, // <CJK>
+ 0x6878, 0x8515, // <CJK>
+ 0x6879, 0x8514, // <CJK>
+ 0x687A, 0x84FC, // <CJK>
+ 0x687B, 0x8540, // <CJK>
+ 0x687C, 0x8563, // <CJK>
+ 0x687D, 0x8558, // <CJK>
+ 0x687E, 0x8548, // <CJK>
+ 0x6921, 0x8541, // <CJK>
+ 0x6922, 0x8602, // <CJK>
+ 0x6923, 0x854B, // <CJK>
+ 0x6924, 0x8555, // <CJK>
+ 0x6925, 0x8580, // <CJK>
+ 0x6926, 0x85A4, // <CJK>
+ 0x6927, 0x8588, // <CJK>
+ 0x6928, 0x8591, // <CJK>
+ 0x6929, 0x858A, // <CJK>
+ 0x692A, 0x85A8, // <CJK>
+ 0x692B, 0x856D, // <CJK>
+ 0x692C, 0x8594, // <CJK>
+ 0x692D, 0x859B, // <CJK>
+ 0x692E, 0x85EA, // <CJK>
+ 0x692F, 0x8587, // <CJK>
+ 0x6930, 0x859C, // <CJK>
+ 0x6931, 0x8577, // <CJK>
+ 0x6932, 0x857E, // <CJK>
+ 0x6933, 0x8590, // <CJK>
+ 0x6934, 0x85C9, // <CJK>
+ 0x6935, 0x85BA, // <CJK>
+ 0x6936, 0x85CF, // <CJK>
+ 0x6937, 0x85B9, // <CJK>
+ 0x6938, 0x85D0, // <CJK>
+ 0x6939, 0x85D5, // <CJK>
+ 0x693A, 0x85DD, // <CJK>
+ 0x693B, 0x85E5, // <CJK>
+ 0x693C, 0x85DC, // <CJK>
+ 0x693D, 0x85F9, // <CJK>
+ 0x693E, 0x860A, // <CJK>
+ 0x693F, 0x8613, // <CJK>
+ 0x6940, 0x860B, // <CJK>
+ 0x6941, 0x85FE, // <CJK>
+ 0x6942, 0x85FA, // <CJK>
+ 0x6943, 0x8606, // <CJK>
+ 0x6944, 0x8622, // <CJK>
+ 0x6945, 0x861A, // <CJK>
+ 0x6946, 0x8630, // <CJK>
+ 0x6947, 0x863F, // <CJK>
+ 0x6948, 0x864D, // <CJK>
+ 0x6949, 0x4E55, // <CJK>
+ 0x694A, 0x8654, // <CJK>
+ 0x694B, 0x865F, // <CJK>
+ 0x694C, 0x8667, // <CJK>
+ 0x694D, 0x8671, // <CJK>
+ 0x694E, 0x8693, // <CJK>
+ 0x694F, 0x86A3, // <CJK>
+ 0x6950, 0x86A9, // <CJK>
+ 0x6951, 0x86AA, // <CJK>
+ 0x6952, 0x868B, // <CJK>
+ 0x6953, 0x868C, // <CJK>
+ 0x6954, 0x86B6, // <CJK>
+ 0x6955, 0x86AF, // <CJK>
+ 0x6956, 0x86C4, // <CJK>
+ 0x6957, 0x86C6, // <CJK>
+ 0x6958, 0x86B0, // <CJK>
+ 0x6959, 0x86C9, // <CJK>
+ 0x695A, 0x8823, // <CJK>
+ 0x695B, 0x86AB, // <CJK>
+ 0x695C, 0x86D4, // <CJK>
+ 0x695D, 0x86DE, // <CJK>
+ 0x695E, 0x86E9, // <CJK>
+ 0x695F, 0x86EC, // <CJK>
+ 0x6960, 0x86DF, // <CJK>
+ 0x6961, 0x86DB, // <CJK>
+ 0x6962, 0x86EF, // <CJK>
+ 0x6963, 0x8712, // <CJK>
+ 0x6964, 0x8706, // <CJK>
+ 0x6965, 0x8708, // <CJK>
+ 0x6966, 0x8700, // <CJK>
+ 0x6967, 0x8703, // <CJK>
+ 0x6968, 0x86FB, // <CJK>
+ 0x6969, 0x8711, // <CJK>
+ 0x696A, 0x8709, // <CJK>
+ 0x696B, 0x870D, // <CJK>
+ 0x696C, 0x86F9, // <CJK>
+ 0x696D, 0x870A, // <CJK>
+ 0x696E, 0x8734, // <CJK>
+ 0x696F, 0x873F, // <CJK>
+ 0x6970, 0x8737, // <CJK>
+ 0x6971, 0x873B, // <CJK>
+ 0x6972, 0x8725, // <CJK>
+ 0x6973, 0x8729, // <CJK>
+ 0x6974, 0x871A, // <CJK>
+ 0x6975, 0x8760, // <CJK>
+ 0x6976, 0x875F, // <CJK>
+ 0x6977, 0x8778, // <CJK>
+ 0x6978, 0x874C, // <CJK>
+ 0x6979, 0x874E, // <CJK>
+ 0x697A, 0x8774, // <CJK>
+ 0x697B, 0x8757, // <CJK>
+ 0x697C, 0x8768, // <CJK>
+ 0x697D, 0x876E, // <CJK>
+ 0x697E, 0x8759, // <CJK>
+ 0x6A21, 0x8753, // <CJK>
+ 0x6A22, 0x8763, // <CJK>
+ 0x6A23, 0x876A, // <CJK>
+ 0x6A24, 0x8805, // <CJK>
+ 0x6A25, 0x87A2, // <CJK>
+ 0x6A26, 0x879F, // <CJK>
+ 0x6A27, 0x8782, // <CJK>
+ 0x6A28, 0x87AF, // <CJK>
+ 0x6A29, 0x87CB, // <CJK>
+ 0x6A2A, 0x87BD, // <CJK>
+ 0x6A2B, 0x87C0, // <CJK>
+ 0x6A2C, 0x87D0, // <CJK>
+ 0x6A2D, 0x96D6, // <CJK>
+ 0x6A2E, 0x87AB, // <CJK>
+ 0x6A2F, 0x87C4, // <CJK>
+ 0x6A30, 0x87B3, // <CJK>
+ 0x6A31, 0x87C7, // <CJK>
+ 0x6A32, 0x87C6, // <CJK>
+ 0x6A33, 0x87BB, // <CJK>
+ 0x6A34, 0x87EF, // <CJK>
+ 0x6A35, 0x87F2, // <CJK>
+ 0x6A36, 0x87E0, // <CJK>
+ 0x6A37, 0x880F, // <CJK>
+ 0x6A38, 0x880D, // <CJK>
+ 0x6A39, 0x87FE, // <CJK>
+ 0x6A3A, 0x87F6, // <CJK>
+ 0x6A3B, 0x87F7, // <CJK>
+ 0x6A3C, 0x880E, // <CJK>
+ 0x6A3D, 0x87D2, // <CJK>
+ 0x6A3E, 0x8811, // <CJK>
+ 0x6A3F, 0x8816, // <CJK>
+ 0x6A40, 0x8815, // <CJK>
+ 0x6A41, 0x8822, // <CJK>
+ 0x6A42, 0x8821, // <CJK>
+ 0x6A43, 0x8831, // <CJK>
+ 0x6A44, 0x8836, // <CJK>
+ 0x6A45, 0x8839, // <CJK>
+ 0x6A46, 0x8827, // <CJK>
+ 0x6A47, 0x883B, // <CJK>
+ 0x6A48, 0x8844, // <CJK>
+ 0x6A49, 0x8842, // <CJK>
+ 0x6A4A, 0x8852, // <CJK>
+ 0x6A4B, 0x8859, // <CJK>
+ 0x6A4C, 0x885E, // <CJK>
+ 0x6A4D, 0x8862, // <CJK>
+ 0x6A4E, 0x886B, // <CJK>
+ 0x6A4F, 0x8881, // <CJK>
+ 0x6A50, 0x887E, // <CJK>
+ 0x6A51, 0x889E, // <CJK>
+ 0x6A52, 0x8875, // <CJK>
+ 0x6A53, 0x887D, // <CJK>
+ 0x6A54, 0x88B5, // <CJK>
+ 0x6A55, 0x8872, // <CJK>
+ 0x6A56, 0x8882, // <CJK>
+ 0x6A57, 0x8897, // <CJK>
+ 0x6A58, 0x8892, // <CJK>
+ 0x6A59, 0x88AE, // <CJK>
+ 0x6A5A, 0x8899, // <CJK>
+ 0x6A5B, 0x88A2, // <CJK>
+ 0x6A5C, 0x888D, // <CJK>
+ 0x6A5D, 0x88A4, // <CJK>
+ 0x6A5E, 0x88B0, // <CJK>
+ 0x6A5F, 0x88BF, // <CJK>
+ 0x6A60, 0x88B1, // <CJK>
+ 0x6A61, 0x88C3, // <CJK>
+ 0x6A62, 0x88C4, // <CJK>
+ 0x6A63, 0x88D4, // <CJK>
+ 0x6A64, 0x88D8, // <CJK>
+ 0x6A65, 0x88D9, // <CJK>
+ 0x6A66, 0x88DD, // <CJK>
+ 0x6A67, 0x88F9, // <CJK>
+ 0x6A68, 0x8902, // <CJK>
+ 0x6A69, 0x88FC, // <CJK>
+ 0x6A6A, 0x88F4, // <CJK>
+ 0x6A6B, 0x88E8, // <CJK>
+ 0x6A6C, 0x88F2, // <CJK>
+ 0x6A6D, 0x8904, // <CJK>
+ 0x6A6E, 0x890C, // <CJK>
+ 0x6A6F, 0x890A, // <CJK>
+ 0x6A70, 0x8913, // <CJK>
+ 0x6A71, 0x8943, // <CJK>
+ 0x6A72, 0x891E, // <CJK>
+ 0x6A73, 0x8925, // <CJK>
+ 0x6A74, 0x892A, // <CJK>
+ 0x6A75, 0x892B, // <CJK>
+ 0x6A76, 0x8941, // <CJK>
+ 0x6A77, 0x8944, // <CJK>
+ 0x6A78, 0x893B, // <CJK>
+ 0x6A79, 0x8936, // <CJK>
+ 0x6A7A, 0x8938, // <CJK>
+ 0x6A7B, 0x894C, // <CJK>
+ 0x6A7C, 0x891D, // <CJK>
+ 0x6A7D, 0x8960, // <CJK>
+ 0x6A7E, 0x895E, // <CJK>
+ 0x6B21, 0x8966, // <CJK>
+ 0x6B22, 0x8964, // <CJK>
+ 0x6B23, 0x896D, // <CJK>
+ 0x6B24, 0x896A, // <CJK>
+ 0x6B25, 0x896F, // <CJK>
+ 0x6B26, 0x8974, // <CJK>
+ 0x6B27, 0x8977, // <CJK>
+ 0x6B28, 0x897E, // <CJK>
+ 0x6B29, 0x8983, // <CJK>
+ 0x6B2A, 0x8988, // <CJK>
+ 0x6B2B, 0x898A, // <CJK>
+ 0x6B2C, 0x8993, // <CJK>
+ 0x6B2D, 0x8998, // <CJK>
+ 0x6B2E, 0x89A1, // <CJK>
+ 0x6B2F, 0x89A9, // <CJK>
+ 0x6B30, 0x89A6, // <CJK>
+ 0x6B31, 0x89AC, // <CJK>
+ 0x6B32, 0x89AF, // <CJK>
+ 0x6B33, 0x89B2, // <CJK>
+ 0x6B34, 0x89BA, // <CJK>
+ 0x6B35, 0x89BD, // <CJK>
+ 0x6B36, 0x89BF, // <CJK>
+ 0x6B37, 0x89C0, // <CJK>
+ 0x6B38, 0x89DA, // <CJK>
+ 0x6B39, 0x89DC, // <CJK>
+ 0x6B3A, 0x89DD, // <CJK>
+ 0x6B3B, 0x89E7, // <CJK>
+ 0x6B3C, 0x89F4, // <CJK>
+ 0x6B3D, 0x89F8, // <CJK>
+ 0x6B3E, 0x8A03, // <CJK>
+ 0x6B3F, 0x8A16, // <CJK>
+ 0x6B40, 0x8A10, // <CJK>
+ 0x6B41, 0x8A0C, // <CJK>
+ 0x6B42, 0x8A1B, // <CJK>
+ 0x6B43, 0x8A1D, // <CJK>
+ 0x6B44, 0x8A25, // <CJK>
+ 0x6B45, 0x8A36, // <CJK>
+ 0x6B46, 0x8A41, // <CJK>
+ 0x6B47, 0x8A5B, // <CJK>
+ 0x6B48, 0x8A52, // <CJK>
+ 0x6B49, 0x8A46, // <CJK>
+ 0x6B4A, 0x8A48, // <CJK>
+ 0x6B4B, 0x8A7C, // <CJK>
+ 0x6B4C, 0x8A6D, // <CJK>
+ 0x6B4D, 0x8A6C, // <CJK>
+ 0x6B4E, 0x8A62, // <CJK>
+ 0x6B4F, 0x8A85, // <CJK>
+ 0x6B50, 0x8A82, // <CJK>
+ 0x6B51, 0x8A84, // <CJK>
+ 0x6B52, 0x8AA8, // <CJK>
+ 0x6B53, 0x8AA1, // <CJK>
+ 0x6B54, 0x8A91, // <CJK>
+ 0x6B55, 0x8AA5, // <CJK>
+ 0x6B56, 0x8AA6, // <CJK>
+ 0x6B57, 0x8A9A, // <CJK>
+ 0x6B58, 0x8AA3, // <CJK>
+ 0x6B59, 0x8AC4, // <CJK>
+ 0x6B5A, 0x8ACD, // <CJK>
+ 0x6B5B, 0x8AC2, // <CJK>
+ 0x6B5C, 0x8ADA, // <CJK>
+ 0x6B5D, 0x8AEB, // <CJK>
+ 0x6B5E, 0x8AF3, // <CJK>
+ 0x6B5F, 0x8AE7, // <CJK>
+ 0x6B60, 0x8AE4, // <CJK>
+ 0x6B61, 0x8AF1, // <CJK>
+ 0x6B62, 0x8B14, // <CJK>
+ 0x6B63, 0x8AE0, // <CJK>
+ 0x6B64, 0x8AE2, // <CJK>
+ 0x6B65, 0x8AF7, // <CJK>
+ 0x6B66, 0x8ADE, // <CJK>
+ 0x6B67, 0x8ADB, // <CJK>
+ 0x6B68, 0x8B0C, // <CJK>
+ 0x6B69, 0x8B07, // <CJK>
+ 0x6B6A, 0x8B1A, // <CJK>
+ 0x6B6B, 0x8AE1, // <CJK>
+ 0x6B6C, 0x8B16, // <CJK>
+ 0x6B6D, 0x8B10, // <CJK>
+ 0x6B6E, 0x8B17, // <CJK>
+ 0x6B6F, 0x8B20, // <CJK>
+ 0x6B70, 0x8B33, // <CJK>
+ 0x6B71, 0x97AB, // <CJK>
+ 0x6B72, 0x8B26, // <CJK>
+ 0x6B73, 0x8B2B, // <CJK>
+ 0x6B74, 0x8B3E, // <CJK>
+ 0x6B75, 0x8B28, // <CJK>
+ 0x6B76, 0x8B41, // <CJK>
+ 0x6B77, 0x8B4C, // <CJK>
+ 0x6B78, 0x8B4F, // <CJK>
+ 0x6B79, 0x8B4E, // <CJK>
+ 0x6B7A, 0x8B49, // <CJK>
+ 0x6B7B, 0x8B56, // <CJK>
+ 0x6B7C, 0x8B5B, // <CJK>
+ 0x6B7D, 0x8B5A, // <CJK>
+ 0x6B7E, 0x8B6B, // <CJK>
+ 0x6C21, 0x8B5F, // <CJK>
+ 0x6C22, 0x8B6C, // <CJK>
+ 0x6C23, 0x8B6F, // <CJK>
+ 0x6C24, 0x8B74, // <CJK>
+ 0x6C25, 0x8B7D, // <CJK>
+ 0x6C26, 0x8B80, // <CJK>
+ 0x6C27, 0x8B8C, // <CJK>
+ 0x6C28, 0x8B8E, // <CJK>
+ 0x6C29, 0x8B92, // <CJK>
+ 0x6C2A, 0x8B93, // <CJK>
+ 0x6C2B, 0x8B96, // <CJK>
+ 0x6C2C, 0x8B99, // <CJK>
+ 0x6C2D, 0x8B9A, // <CJK>
+ 0x6C2E, 0x8C3A, // <CJK>
+ 0x6C2F, 0x8C41, // <CJK>
+ 0x6C30, 0x8C3F, // <CJK>
+ 0x6C31, 0x8C48, // <CJK>
+ 0x6C32, 0x8C4C, // <CJK>
+ 0x6C33, 0x8C4E, // <CJK>
+ 0x6C34, 0x8C50, // <CJK>
+ 0x6C35, 0x8C55, // <CJK>
+ 0x6C36, 0x8C62, // <CJK>
+ 0x6C37, 0x8C6C, // <CJK>
+ 0x6C38, 0x8C78, // <CJK>
+ 0x6C39, 0x8C7A, // <CJK>
+ 0x6C3A, 0x8C82, // <CJK>
+ 0x6C3B, 0x8C89, // <CJK>
+ 0x6C3C, 0x8C85, // <CJK>
+ 0x6C3D, 0x8C8A, // <CJK>
+ 0x6C3E, 0x8C8D, // <CJK>
+ 0x6C3F, 0x8C8E, // <CJK>
+ 0x6C40, 0x8C94, // <CJK>
+ 0x6C41, 0x8C7C, // <CJK>
+ 0x6C42, 0x8C98, // <CJK>
+ 0x6C43, 0x621D, // <CJK>
+ 0x6C44, 0x8CAD, // <CJK>
+ 0x6C45, 0x8CAA, // <CJK>
+ 0x6C46, 0x8CBD, // <CJK>
+ 0x6C47, 0x8CB2, // <CJK>
+ 0x6C48, 0x8CB3, // <CJK>
+ 0x6C49, 0x8CAE, // <CJK>
+ 0x6C4A, 0x8CB6, // <CJK>
+ 0x6C4B, 0x8CC8, // <CJK>
+ 0x6C4C, 0x8CC1, // <CJK>
+ 0x6C4D, 0x8CE4, // <CJK>
+ 0x6C4E, 0x8CE3, // <CJK>
+ 0x6C4F, 0x8CDA, // <CJK>
+ 0x6C50, 0x8CFD, // <CJK>
+ 0x6C51, 0x8CFA, // <CJK>
+ 0x6C52, 0x8CFB, // <CJK>
+ 0x6C53, 0x8D04, // <CJK>
+ 0x6C54, 0x8D05, // <CJK>
+ 0x6C55, 0x8D0A, // <CJK>
+ 0x6C56, 0x8D07, // <CJK>
+ 0x6C57, 0x8D0F, // <CJK>
+ 0x6C58, 0x8D0D, // <CJK>
+ 0x6C59, 0x8D10, // <CJK>
+ 0x6C5A, 0x9F4E, // <CJK>
+ 0x6C5B, 0x8D13, // <CJK>
+ 0x6C5C, 0x8CCD, // <CJK>
+ 0x6C5D, 0x8D14, // <CJK>
+ 0x6C5E, 0x8D16, // <CJK>
+ 0x6C5F, 0x8D67, // <CJK>
+ 0x6C60, 0x8D6D, // <CJK>
+ 0x6C61, 0x8D71, // <CJK>
+ 0x6C62, 0x8D73, // <CJK>
+ 0x6C63, 0x8D81, // <CJK>
+ 0x6C64, 0x8D99, // <CJK>
+ 0x6C65, 0x8DC2, // <CJK>
+ 0x6C66, 0x8DBE, // <CJK>
+ 0x6C67, 0x8DBA, // <CJK>
+ 0x6C68, 0x8DCF, // <CJK>
+ 0x6C69, 0x8DDA, // <CJK>
+ 0x6C6A, 0x8DD6, // <CJK>
+ 0x6C6B, 0x8DCC, // <CJK>
+ 0x6C6C, 0x8DDB, // <CJK>
+ 0x6C6D, 0x8DCB, // <CJK>
+ 0x6C6E, 0x8DEA, // <CJK>
+ 0x6C6F, 0x8DEB, // <CJK>
+ 0x6C70, 0x8DDF, // <CJK>
+ 0x6C71, 0x8DE3, // <CJK>
+ 0x6C72, 0x8DFC, // <CJK>
+ 0x6C73, 0x8E08, // <CJK>
+ 0x6C74, 0x8E09, // <CJK>
+ 0x6C75, 0x8DFF, // <CJK>
+ 0x6C76, 0x8E1D, // <CJK>
+ 0x6C77, 0x8E1E, // <CJK>
+ 0x6C78, 0x8E10, // <CJK>
+ 0x6C79, 0x8E1F, // <CJK>
+ 0x6C7A, 0x8E42, // <CJK>
+ 0x6C7B, 0x8E35, // <CJK>
+ 0x6C7C, 0x8E30, // <CJK>
+ 0x6C7D, 0x8E34, // <CJK>
+ 0x6C7E, 0x8E4A, // <CJK>
+ 0x6D21, 0x8E47, // <CJK>
+ 0x6D22, 0x8E49, // <CJK>
+ 0x6D23, 0x8E4C, // <CJK>
+ 0x6D24, 0x8E50, // <CJK>
+ 0x6D25, 0x8E48, // <CJK>
+ 0x6D26, 0x8E59, // <CJK>
+ 0x6D27, 0x8E64, // <CJK>
+ 0x6D28, 0x8E60, // <CJK>
+ 0x6D29, 0x8E2A, // <CJK>
+ 0x6D2A, 0x8E63, // <CJK>
+ 0x6D2B, 0x8E55, // <CJK>
+ 0x6D2C, 0x8E76, // <CJK>
+ 0x6D2D, 0x8E72, // <CJK>
+ 0x6D2E, 0x8E7C, // <CJK>
+ 0x6D2F, 0x8E81, // <CJK>
+ 0x6D30, 0x8E87, // <CJK>
+ 0x6D31, 0x8E85, // <CJK>
+ 0x6D32, 0x8E84, // <CJK>
+ 0x6D33, 0x8E8B, // <CJK>
+ 0x6D34, 0x8E8A, // <CJK>
+ 0x6D35, 0x8E93, // <CJK>
+ 0x6D36, 0x8E91, // <CJK>
+ 0x6D37, 0x8E94, // <CJK>
+ 0x6D38, 0x8E99, // <CJK>
+ 0x6D39, 0x8EAA, // <CJK>
+ 0x6D3A, 0x8EA1, // <CJK>
+ 0x6D3B, 0x8EAC, // <CJK>
+ 0x6D3C, 0x8EB0, // <CJK>
+ 0x6D3D, 0x8EC6, // <CJK>
+ 0x6D3E, 0x8EB1, // <CJK>
+ 0x6D3F, 0x8EBE, // <CJK>
+ 0x6D40, 0x8EC5, // <CJK>
+ 0x6D41, 0x8EC8, // <CJK>
+ 0x6D42, 0x8ECB, // <CJK>
+ 0x6D43, 0x8EDB, // <CJK>
+ 0x6D44, 0x8EE3, // <CJK>
+ 0x6D45, 0x8EFC, // <CJK>
+ 0x6D46, 0x8EFB, // <CJK>
+ 0x6D47, 0x8EEB, // <CJK>
+ 0x6D48, 0x8EFE, // <CJK>
+ 0x6D49, 0x8F0A, // <CJK>
+ 0x6D4A, 0x8F05, // <CJK>
+ 0x6D4B, 0x8F15, // <CJK>
+ 0x6D4C, 0x8F12, // <CJK>
+ 0x6D4D, 0x8F19, // <CJK>
+ 0x6D4E, 0x8F13, // <CJK>
+ 0x6D4F, 0x8F1C, // <CJK>
+ 0x6D50, 0x8F1F, // <CJK>
+ 0x6D51, 0x8F1B, // <CJK>
+ 0x6D52, 0x8F0C, // <CJK>
+ 0x6D53, 0x8F26, // <CJK>
+ 0x6D54, 0x8F33, // <CJK>
+ 0x6D55, 0x8F3B, // <CJK>
+ 0x6D56, 0x8F39, // <CJK>
+ 0x6D57, 0x8F45, // <CJK>
+ 0x6D58, 0x8F42, // <CJK>
+ 0x6D59, 0x8F3E, // <CJK>
+ 0x6D5A, 0x8F4C, // <CJK>
+ 0x6D5B, 0x8F49, // <CJK>
+ 0x6D5C, 0x8F46, // <CJK>
+ 0x6D5D, 0x8F4E, // <CJK>
+ 0x6D5E, 0x8F57, // <CJK>
+ 0x6D5F, 0x8F5C, // <CJK>
+ 0x6D60, 0x8F62, // <CJK>
+ 0x6D61, 0x8F63, // <CJK>
+ 0x6D62, 0x8F64, // <CJK>
+ 0x6D63, 0x8F9C, // <CJK>
+ 0x6D64, 0x8F9F, // <CJK>
+ 0x6D65, 0x8FA3, // <CJK>
+ 0x6D66, 0x8FAD, // <CJK>
+ 0x6D67, 0x8FAF, // <CJK>
+ 0x6D68, 0x8FB7, // <CJK>
+ 0x6D69, 0x8FDA, // <CJK>
+ 0x6D6A, 0x8FE5, // <CJK>
+ 0x6D6B, 0x8FE2, // <CJK>
+ 0x6D6C, 0x8FEA, // <CJK>
+ 0x6D6D, 0x8FEF, // <CJK>
+ 0x6D6E, 0x9087, // <CJK>
+ 0x6D6F, 0x8FF4, // <CJK>
+ 0x6D70, 0x9005, // <CJK>
+ 0x6D71, 0x8FF9, // <CJK>
+ 0x6D72, 0x8FFA, // <CJK>
+ 0x6D73, 0x9011, // <CJK>
+ 0x6D74, 0x9015, // <CJK>
+ 0x6D75, 0x9021, // <CJK>
+ 0x6D76, 0x900D, // <CJK>
+ 0x6D77, 0x901E, // <CJK>
+ 0x6D78, 0x9016, // <CJK>
+ 0x6D79, 0x900B, // <CJK>
+ 0x6D7A, 0x9027, // <CJK>
+ 0x6D7B, 0x9036, // <CJK>
+ 0x6D7C, 0x9035, // <CJK>
+ 0x6D7D, 0x9039, // <CJK>
+ 0x6D7E, 0x8FF8, // <CJK>
+ 0x6E21, 0x904F, // <CJK>
+ 0x6E22, 0x9050, // <CJK>
+ 0x6E23, 0x9051, // <CJK>
+ 0x6E24, 0x9052, // <CJK>
+ 0x6E25, 0x900E, // <CJK>
+ 0x6E26, 0x9049, // <CJK>
+ 0x6E27, 0x903E, // <CJK>
+ 0x6E28, 0x9056, // <CJK>
+ 0x6E29, 0x9058, // <CJK>
+ 0x6E2A, 0x905E, // <CJK>
+ 0x6E2B, 0x9068, // <CJK>
+ 0x6E2C, 0x906F, // <CJK>
+ 0x6E2D, 0x9076, // <CJK>
+ 0x6E2E, 0x96A8, // <CJK>
+ 0x6E2F, 0x9072, // <CJK>
+ 0x6E30, 0x9082, // <CJK>
+ 0x6E31, 0x907D, // <CJK>
+ 0x6E32, 0x9081, // <CJK>
+ 0x6E33, 0x9080, // <CJK>
+ 0x6E34, 0x908A, // <CJK>
+ 0x6E35, 0x9089, // <CJK>
+ 0x6E36, 0x908F, // <CJK>
+ 0x6E37, 0x90A8, // <CJK>
+ 0x6E38, 0x90AF, // <CJK>
+ 0x6E39, 0x90B1, // <CJK>
+ 0x6E3A, 0x90B5, // <CJK>
+ 0x6E3B, 0x90E2, // <CJK>
+ 0x6E3C, 0x90E4, // <CJK>
+ 0x6E3D, 0x6248, // <CJK>
+ 0x6E3E, 0x90DB, // <CJK>
+ 0x6E3F, 0x9102, // <CJK>
+ 0x6E40, 0x9112, // <CJK>
+ 0x6E41, 0x9119, // <CJK>
+ 0x6E42, 0x9132, // <CJK>
+ 0x6E43, 0x9130, // <CJK>
+ 0x6E44, 0x914A, // <CJK>
+ 0x6E45, 0x9156, // <CJK>
+ 0x6E46, 0x9158, // <CJK>
+ 0x6E47, 0x9163, // <CJK>
+ 0x6E48, 0x9165, // <CJK>
+ 0x6E49, 0x9169, // <CJK>
+ 0x6E4A, 0x9173, // <CJK>
+ 0x6E4B, 0x9172, // <CJK>
+ 0x6E4C, 0x918B, // <CJK>
+ 0x6E4D, 0x9189, // <CJK>
+ 0x6E4E, 0x9182, // <CJK>
+ 0x6E4F, 0x91A2, // <CJK>
+ 0x6E50, 0x91AB, // <CJK>
+ 0x6E51, 0x91AF, // <CJK>
+ 0x6E52, 0x91AA, // <CJK>
+ 0x6E53, 0x91B5, // <CJK>
+ 0x6E54, 0x91B4, // <CJK>
+ 0x6E55, 0x91BA, // <CJK>
+ 0x6E56, 0x91C0, // <CJK>
+ 0x6E57, 0x91C1, // <CJK>
+ 0x6E58, 0x91C9, // <CJK>
+ 0x6E59, 0x91CB, // <CJK>
+ 0x6E5A, 0x91D0, // <CJK>
+ 0x6E5B, 0x91D6, // <CJK>
+ 0x6E5C, 0x91DF, // <CJK>
+ 0x6E5D, 0x91E1, // <CJK>
+ 0x6E5E, 0x91DB, // <CJK>
+ 0x6E5F, 0x91FC, // <CJK>
+ 0x6E60, 0x91F5, // <CJK>
+ 0x6E61, 0x91F6, // <CJK>
+ 0x6E62, 0x921E, // <CJK>
+ 0x6E63, 0x91FF, // <CJK>
+ 0x6E64, 0x9214, // <CJK>
+ 0x6E65, 0x922C, // <CJK>
+ 0x6E66, 0x9215, // <CJK>
+ 0x6E67, 0x9211, // <CJK>
+ 0x6E68, 0x925E, // <CJK>
+ 0x6E69, 0x9257, // <CJK>
+ 0x6E6A, 0x9245, // <CJK>
+ 0x6E6B, 0x9249, // <CJK>
+ 0x6E6C, 0x9264, // <CJK>
+ 0x6E6D, 0x9248, // <CJK>
+ 0x6E6E, 0x9295, // <CJK>
+ 0x6E6F, 0x923F, // <CJK>
+ 0x6E70, 0x924B, // <CJK>
+ 0x6E71, 0x9250, // <CJK>
+ 0x6E72, 0x929C, // <CJK>
+ 0x6E73, 0x9296, // <CJK>
+ 0x6E74, 0x9293, // <CJK>
+ 0x6E75, 0x929B, // <CJK>
+ 0x6E76, 0x925A, // <CJK>
+ 0x6E77, 0x92CF, // <CJK>
+ 0x6E78, 0x92B9, // <CJK>
+ 0x6E79, 0x92B7, // <CJK>
+ 0x6E7A, 0x92E9, // <CJK>
+ 0x6E7B, 0x930F, // <CJK>
+ 0x6E7C, 0x92FA, // <CJK>
+ 0x6E7D, 0x9344, // <CJK>
+ 0x6E7E, 0x932E, // <CJK>
+ 0x6F21, 0x9319, // <CJK>
+ 0x6F22, 0x9322, // <CJK>
+ 0x6F23, 0x931A, // <CJK>
+ 0x6F24, 0x9323, // <CJK>
+ 0x6F25, 0x933A, // <CJK>
+ 0x6F26, 0x9335, // <CJK>
+ 0x6F27, 0x933B, // <CJK>
+ 0x6F28, 0x935C, // <CJK>
+ 0x6F29, 0x9360, // <CJK>
+ 0x6F2A, 0x937C, // <CJK>
+ 0x6F2B, 0x936E, // <CJK>
+ 0x6F2C, 0x9356, // <CJK>
+ 0x6F2D, 0x93B0, // <CJK>
+ 0x6F2E, 0x93AC, // <CJK>
+ 0x6F2F, 0x93AD, // <CJK>
+ 0x6F30, 0x9394, // <CJK>
+ 0x6F31, 0x93B9, // <CJK>
+ 0x6F32, 0x93D6, // <CJK>
+ 0x6F33, 0x93D7, // <CJK>
+ 0x6F34, 0x93E8, // <CJK>
+ 0x6F35, 0x93E5, // <CJK>
+ 0x6F36, 0x93D8, // <CJK>
+ 0x6F37, 0x93C3, // <CJK>
+ 0x6F38, 0x93DD, // <CJK>
+ 0x6F39, 0x93D0, // <CJK>
+ 0x6F3A, 0x93C8, // <CJK>
+ 0x6F3B, 0x93E4, // <CJK>
+ 0x6F3C, 0x941A, // <CJK>
+ 0x6F3D, 0x9414, // <CJK>
+ 0x6F3E, 0x9413, // <CJK>
+ 0x6F3F, 0x9403, // <CJK>
+ 0x6F40, 0x9407, // <CJK>
+ 0x6F41, 0x9410, // <CJK>
+ 0x6F42, 0x9436, // <CJK>
+ 0x6F43, 0x942B, // <CJK>
+ 0x6F44, 0x9435, // <CJK>
+ 0x6F45, 0x9421, // <CJK>
+ 0x6F46, 0x943A, // <CJK>
+ 0x6F47, 0x9441, // <CJK>
+ 0x6F48, 0x9452, // <CJK>
+ 0x6F49, 0x9444, // <CJK>
+ 0x6F4A, 0x945B, // <CJK>
+ 0x6F4B, 0x9460, // <CJK>
+ 0x6F4C, 0x9462, // <CJK>
+ 0x6F4D, 0x945E, // <CJK>
+ 0x6F4E, 0x946A, // <CJK>
+ 0x6F4F, 0x9229, // <CJK>
+ 0x6F50, 0x9470, // <CJK>
+ 0x6F51, 0x9475, // <CJK>
+ 0x6F52, 0x9477, // <CJK>
+ 0x6F53, 0x947D, // <CJK>
+ 0x6F54, 0x945A, // <CJK>
+ 0x6F55, 0x947C, // <CJK>
+ 0x6F56, 0x947E, // <CJK>
+ 0x6F57, 0x9481, // <CJK>
+ 0x6F58, 0x947F, // <CJK>
+ 0x6F59, 0x9582, // <CJK>
+ 0x6F5A, 0x9587, // <CJK>
+ 0x6F5B, 0x958A, // <CJK>
+ 0x6F5C, 0x9594, // <CJK>
+ 0x6F5D, 0x9596, // <CJK>
+ 0x6F5E, 0x9598, // <CJK>
+ 0x6F5F, 0x9599, // <CJK>
+ 0x6F60, 0x95A0, // <CJK>
+ 0x6F61, 0x95A8, // <CJK>
+ 0x6F62, 0x95A7, // <CJK>
+ 0x6F63, 0x95AD, // <CJK>
+ 0x6F64, 0x95BC, // <CJK>
+ 0x6F65, 0x95BB, // <CJK>
+ 0x6F66, 0x95B9, // <CJK>
+ 0x6F67, 0x95BE, // <CJK>
+ 0x6F68, 0x95CA, // <CJK>
+ 0x6F69, 0x6FF6, // <CJK>
+ 0x6F6A, 0x95C3, // <CJK>
+ 0x6F6B, 0x95CD, // <CJK>
+ 0x6F6C, 0x95CC, // <CJK>
+ 0x6F6D, 0x95D5, // <CJK>
+ 0x6F6E, 0x95D4, // <CJK>
+ 0x6F6F, 0x95D6, // <CJK>
+ 0x6F70, 0x95DC, // <CJK>
+ 0x6F71, 0x95E1, // <CJK>
+ 0x6F72, 0x95E5, // <CJK>
+ 0x6F73, 0x95E2, // <CJK>
+ 0x6F74, 0x9621, // <CJK>
+ 0x6F75, 0x9628, // <CJK>
+ 0x6F76, 0x962E, // <CJK>
+ 0x6F77, 0x962F, // <CJK>
+ 0x6F78, 0x9642, // <CJK>
+ 0x6F79, 0x964C, // <CJK>
+ 0x6F7A, 0x964F, // <CJK>
+ 0x6F7B, 0x964B, // <CJK>
+ 0x6F7C, 0x9677, // <CJK>
+ 0x6F7D, 0x965C, // <CJK>
+ 0x6F7E, 0x965E, // <CJK>
+ 0x7021, 0x965D, // <CJK>
+ 0x7022, 0x965F, // <CJK>
+ 0x7023, 0x9666, // <CJK>
+ 0x7024, 0x9672, // <CJK>
+ 0x7025, 0x966C, // <CJK>
+ 0x7026, 0x968D, // <CJK>
+ 0x7027, 0x9698, // <CJK>
+ 0x7028, 0x9695, // <CJK>
+ 0x7029, 0x9697, // <CJK>
+ 0x702A, 0x96AA, // <CJK>
+ 0x702B, 0x96A7, // <CJK>
+ 0x702C, 0x96B1, // <CJK>
+ 0x702D, 0x96B2, // <CJK>
+ 0x702E, 0x96B0, // <CJK>
+ 0x702F, 0x96B4, // <CJK>
+ 0x7030, 0x96B6, // <CJK>
+ 0x7031, 0x96B8, // <CJK>
+ 0x7032, 0x96B9, // <CJK>
+ 0x7033, 0x96CE, // <CJK>
+ 0x7034, 0x96CB, // <CJK>
+ 0x7035, 0x96C9, // <CJK>
+ 0x7036, 0x96CD, // <CJK>
+ 0x7037, 0x894D, // <CJK>
+ 0x7038, 0x96DC, // <CJK>
+ 0x7039, 0x970D, // <CJK>
+ 0x703A, 0x96D5, // <CJK>
+ 0x703B, 0x96F9, // <CJK>
+ 0x703C, 0x9704, // <CJK>
+ 0x703D, 0x9706, // <CJK>
+ 0x703E, 0x9708, // <CJK>
+ 0x703F, 0x9713, // <CJK>
+ 0x7040, 0x970E, // <CJK>
+ 0x7041, 0x9711, // <CJK>
+ 0x7042, 0x970F, // <CJK>
+ 0x7043, 0x9716, // <CJK>
+ 0x7044, 0x9719, // <CJK>
+ 0x7045, 0x9724, // <CJK>
+ 0x7046, 0x972A, // <CJK>
+ 0x7047, 0x9730, // <CJK>
+ 0x7048, 0x9739, // <CJK>
+ 0x7049, 0x973D, // <CJK>
+ 0x704A, 0x973E, // <CJK>
+ 0x704B, 0x9744, // <CJK>
+ 0x704C, 0x9746, // <CJK>
+ 0x704D, 0x9748, // <CJK>
+ 0x704E, 0x9742, // <CJK>
+ 0x704F, 0x9749, // <CJK>
+ 0x7050, 0x975C, // <CJK>
+ 0x7051, 0x9760, // <CJK>
+ 0x7052, 0x9764, // <CJK>
+ 0x7053, 0x9766, // <CJK>
+ 0x7054, 0x9768, // <CJK>
+ 0x7055, 0x52D2, // <CJK>
+ 0x7056, 0x976B, // <CJK>
+ 0x7057, 0x9771, // <CJK>
+ 0x7058, 0x9779, // <CJK>
+ 0x7059, 0x9785, // <CJK>
+ 0x705A, 0x977C, // <CJK>
+ 0x705B, 0x9781, // <CJK>
+ 0x705C, 0x977A, // <CJK>
+ 0x705D, 0x9786, // <CJK>
+ 0x705E, 0x978B, // <CJK>
+ 0x705F, 0x978F, // <CJK>
+ 0x7060, 0x9790, // <CJK>
+ 0x7061, 0x979C, // <CJK>
+ 0x7062, 0x97A8, // <CJK>
+ 0x7063, 0x97A6, // <CJK>
+ 0x7064, 0x97A3, // <CJK>
+ 0x7065, 0x97B3, // <CJK>
+ 0x7066, 0x97B4, // <CJK>
+ 0x7067, 0x97C3, // <CJK>
+ 0x7068, 0x97C6, // <CJK>
+ 0x7069, 0x97C8, // <CJK>
+ 0x706A, 0x97CB, // <CJK>
+ 0x706B, 0x97DC, // <CJK>
+ 0x706C, 0x97ED, // <CJK>
+ 0x706D, 0x9F4F, // <CJK>
+ 0x706E, 0x97F2, // <CJK>
+ 0x706F, 0x7ADF, // <CJK>
+ 0x7070, 0x97F6, // <CJK>
+ 0x7071, 0x97F5, // <CJK>
+ 0x7072, 0x980F, // <CJK>
+ 0x7073, 0x980C, // <CJK>
+ 0x7074, 0x9838, // <CJK>
+ 0x7075, 0x9824, // <CJK>
+ 0x7076, 0x9821, // <CJK>
+ 0x7077, 0x9837, // <CJK>
+ 0x7078, 0x983D, // <CJK>
+ 0x7079, 0x9846, // <CJK>
+ 0x707A, 0x984F, // <CJK>
+ 0x707B, 0x984B, // <CJK>
+ 0x707C, 0x986B, // <CJK>
+ 0x707D, 0x986F, // <CJK>
+ 0x707E, 0x9870, // <CJK>
+ 0x7121, 0x9871, // <CJK>
+ 0x7122, 0x9874, // <CJK>
+ 0x7123, 0x9873, // <CJK>
+ 0x7124, 0x98AA, // <CJK>
+ 0x7125, 0x98AF, // <CJK>
+ 0x7126, 0x98B1, // <CJK>
+ 0x7127, 0x98B6, // <CJK>
+ 0x7128, 0x98C4, // <CJK>
+ 0x7129, 0x98C3, // <CJK>
+ 0x712A, 0x98C6, // <CJK>
+ 0x712B, 0x98E9, // <CJK>
+ 0x712C, 0x98EB, // <CJK>
+ 0x712D, 0x9903, // <CJK>
+ 0x712E, 0x9909, // <CJK>
+ 0x712F, 0x9912, // <CJK>
+ 0x7130, 0x9914, // <CJK>
+ 0x7131, 0x9918, // <CJK>
+ 0x7132, 0x9921, // <CJK>
+ 0x7133, 0x991D, // <CJK>
+ 0x7134, 0x991E, // <CJK>
+ 0x7135, 0x9924, // <CJK>
+ 0x7136, 0x9920, // <CJK>
+ 0x7137, 0x992C, // <CJK>
+ 0x7138, 0x992E, // <CJK>
+ 0x7139, 0x993D, // <CJK>
+ 0x713A, 0x993E, // <CJK>
+ 0x713B, 0x9942, // <CJK>
+ 0x713C, 0x9949, // <CJK>
+ 0x713D, 0x9945, // <CJK>
+ 0x713E, 0x9950, // <CJK>
+ 0x713F, 0x994B, // <CJK>
+ 0x7140, 0x9951, // <CJK>
+ 0x7141, 0x9952, // <CJK>
+ 0x7142, 0x994C, // <CJK>
+ 0x7143, 0x9955, // <CJK>
+ 0x7144, 0x9997, // <CJK>
+ 0x7145, 0x9998, // <CJK>
+ 0x7146, 0x99A5, // <CJK>
+ 0x7147, 0x99AD, // <CJK>
+ 0x7148, 0x99AE, // <CJK>
+ 0x7149, 0x99BC, // <CJK>
+ 0x714A, 0x99DF, // <CJK>
+ 0x714B, 0x99DB, // <CJK>
+ 0x714C, 0x99DD, // <CJK>
+ 0x714D, 0x99D8, // <CJK>
+ 0x714E, 0x99D1, // <CJK>
+ 0x714F, 0x99ED, // <CJK>
+ 0x7150, 0x99EE, // <CJK>
+ 0x7151, 0x99F1, // <CJK>
+ 0x7152, 0x99F2, // <CJK>
+ 0x7153, 0x99FB, // <CJK>
+ 0x7154, 0x99F8, // <CJK>
+ 0x7155, 0x9A01, // <CJK>
+ 0x7156, 0x9A0F, // <CJK>
+ 0x7157, 0x9A05, // <CJK>
+ 0x7158, 0x99E2, // <CJK>
+ 0x7159, 0x9A19, // <CJK>
+ 0x715A, 0x9A2B, // <CJK>
+ 0x715B, 0x9A37, // <CJK>
+ 0x715C, 0x9A45, // <CJK>
+ 0x715D, 0x9A42, // <CJK>
+ 0x715E, 0x9A40, // <CJK>
+ 0x715F, 0x9A43, // <CJK>
+ 0x7160, 0x9A3E, // <CJK>
+ 0x7161, 0x9A55, // <CJK>
+ 0x7162, 0x9A4D, // <CJK>
+ 0x7163, 0x9A5B, // <CJK>
+ 0x7164, 0x9A57, // <CJK>
+ 0x7165, 0x9A5F, // <CJK>
+ 0x7166, 0x9A62, // <CJK>
+ 0x7167, 0x9A65, // <CJK>
+ 0x7168, 0x9A64, // <CJK>
+ 0x7169, 0x9A69, // <CJK>
+ 0x716A, 0x9A6B, // <CJK>
+ 0x716B, 0x9A6A, // <CJK>
+ 0x716C, 0x9AAD, // <CJK>
+ 0x716D, 0x9AB0, // <CJK>
+ 0x716E, 0x9ABC, // <CJK>
+ 0x716F, 0x9AC0, // <CJK>
+ 0x7170, 0x9ACF, // <CJK>
+ 0x7171, 0x9AD1, // <CJK>
+ 0x7172, 0x9AD3, // <CJK>
+ 0x7173, 0x9AD4, // <CJK>
+ 0x7174, 0x9ADE, // <CJK>
+ 0x7175, 0x9ADF, // <CJK>
+ 0x7176, 0x9AE2, // <CJK>
+ 0x7177, 0x9AE3, // <CJK>
+ 0x7178, 0x9AE6, // <CJK>
+ 0x7179, 0x9AEF, // <CJK>
+ 0x717A, 0x9AEB, // <CJK>
+ 0x717B, 0x9AEE, // <CJK>
+ 0x717C, 0x9AF4, // <CJK>
+ 0x717D, 0x9AF1, // <CJK>
+ 0x717E, 0x9AF7, // <CJK>
+ 0x7221, 0x9AFB, // <CJK>
+ 0x7222, 0x9B06, // <CJK>
+ 0x7223, 0x9B18, // <CJK>
+ 0x7224, 0x9B1A, // <CJK>
+ 0x7225, 0x9B1F, // <CJK>
+ 0x7226, 0x9B22, // <CJK>
+ 0x7227, 0x9B23, // <CJK>
+ 0x7228, 0x9B25, // <CJK>
+ 0x7229, 0x9B27, // <CJK>
+ 0x722A, 0x9B28, // <CJK>
+ 0x722B, 0x9B29, // <CJK>
+ 0x722C, 0x9B2A, // <CJK>
+ 0x722D, 0x9B2E, // <CJK>
+ 0x722E, 0x9B2F, // <CJK>
+ 0x722F, 0x9B32, // <CJK>
+ 0x7230, 0x9B44, // <CJK>
+ 0x7231, 0x9B43, // <CJK>
+ 0x7232, 0x9B4F, // <CJK>
+ 0x7233, 0x9B4D, // <CJK>
+ 0x7234, 0x9B4E, // <CJK>
+ 0x7235, 0x9B51, // <CJK>
+ 0x7236, 0x9B58, // <CJK>
+ 0x7237, 0x9B74, // <CJK>
+ 0x7238, 0x9B93, // <CJK>
+ 0x7239, 0x9B83, // <CJK>
+ 0x723A, 0x9B91, // <CJK>
+ 0x723B, 0x9B96, // <CJK>
+ 0x723C, 0x9B97, // <CJK>
+ 0x723D, 0x9B9F, // <CJK>
+ 0x723E, 0x9BA0, // <CJK>
+ 0x723F, 0x9BA8, // <CJK>
+ 0x7240, 0x9BB4, // <CJK>
+ 0x7241, 0x9BC0, // <CJK>
+ 0x7242, 0x9BCA, // <CJK>
+ 0x7243, 0x9BB9, // <CJK>
+ 0x7244, 0x9BC6, // <CJK>
+ 0x7245, 0x9BCF, // <CJK>
+ 0x7246, 0x9BD1, // <CJK>
+ 0x7247, 0x9BD2, // <CJK>
+ 0x7248, 0x9BE3, // <CJK>
+ 0x7249, 0x9BE2, // <CJK>
+ 0x724A, 0x9BE4, // <CJK>
+ 0x724B, 0x9BD4, // <CJK>
+ 0x724C, 0x9BE1, // <CJK>
+ 0x724D, 0x9C3A, // <CJK>
+ 0x724E, 0x9BF2, // <CJK>
+ 0x724F, 0x9BF1, // <CJK>
+ 0x7250, 0x9BF0, // <CJK>
+ 0x7251, 0x9C15, // <CJK>
+ 0x7252, 0x9C14, // <CJK>
+ 0x7253, 0x9C09, // <CJK>
+ 0x7254, 0x9C13, // <CJK>
+ 0x7255, 0x9C0C, // <CJK>
+ 0x7256, 0x9C06, // <CJK>
+ 0x7257, 0x9C08, // <CJK>
+ 0x7258, 0x9C12, // <CJK>
+ 0x7259, 0x9C0A, // <CJK>
+ 0x725A, 0x9C04, // <CJK>
+ 0x725B, 0x9C2E, // <CJK>
+ 0x725C, 0x9C1B, // <CJK>
+ 0x725D, 0x9C25, // <CJK>
+ 0x725E, 0x9C24, // <CJK>
+ 0x725F, 0x9C21, // <CJK>
+ 0x7260, 0x9C30, // <CJK>
+ 0x7261, 0x9C47, // <CJK>
+ 0x7262, 0x9C32, // <CJK>
+ 0x7263, 0x9C46, // <CJK>
+ 0x7264, 0x9C3E, // <CJK>
+ 0x7265, 0x9C5A, // <CJK>
+ 0x7266, 0x9C60, // <CJK>
+ 0x7267, 0x9C67, // <CJK>
+ 0x7268, 0x9C76, // <CJK>
+ 0x7269, 0x9C78, // <CJK>
+ 0x726A, 0x9CE7, // <CJK>
+ 0x726B, 0x9CEC, // <CJK>
+ 0x726C, 0x9CF0, // <CJK>
+ 0x726D, 0x9D09, // <CJK>
+ 0x726E, 0x9D08, // <CJK>
+ 0x726F, 0x9CEB, // <CJK>
+ 0x7270, 0x9D03, // <CJK>
+ 0x7271, 0x9D06, // <CJK>
+ 0x7272, 0x9D2A, // <CJK>
+ 0x7273, 0x9D26, // <CJK>
+ 0x7274, 0x9DAF, // <CJK>
+ 0x7275, 0x9D23, // <CJK>
+ 0x7276, 0x9D1F, // <CJK>
+ 0x7277, 0x9D44, // <CJK>
+ 0x7278, 0x9D15, // <CJK>
+ 0x7279, 0x9D12, // <CJK>
+ 0x727A, 0x9D41, // <CJK>
+ 0x727B, 0x9D3F, // <CJK>
+ 0x727C, 0x9D3E, // <CJK>
+ 0x727D, 0x9D46, // <CJK>
+ 0x727E, 0x9D48, // <CJK>
+ 0x7321, 0x9D5D, // <CJK>
+ 0x7322, 0x9D5E, // <CJK>
+ 0x7323, 0x9D64, // <CJK>
+ 0x7324, 0x9D51, // <CJK>
+ 0x7325, 0x9D50, // <CJK>
+ 0x7326, 0x9D59, // <CJK>
+ 0x7327, 0x9D72, // <CJK>
+ 0x7328, 0x9D89, // <CJK>
+ 0x7329, 0x9D87, // <CJK>
+ 0x732A, 0x9DAB, // <CJK>
+ 0x732B, 0x9D6F, // <CJK>
+ 0x732C, 0x9D7A, // <CJK>
+ 0x732D, 0x9D9A, // <CJK>
+ 0x732E, 0x9DA4, // <CJK>
+ 0x732F, 0x9DA9, // <CJK>
+ 0x7330, 0x9DB2, // <CJK>
+ 0x7331, 0x9DC4, // <CJK>
+ 0x7332, 0x9DC1, // <CJK>
+ 0x7333, 0x9DBB, // <CJK>
+ 0x7334, 0x9DB8, // <CJK>
+ 0x7335, 0x9DBA, // <CJK>
+ 0x7336, 0x9DC6, // <CJK>
+ 0x7337, 0x9DCF, // <CJK>
+ 0x7338, 0x9DC2, // <CJK>
+ 0x7339, 0x9DD9, // <CJK>
+ 0x733A, 0x9DD3, // <CJK>
+ 0x733B, 0x9DF8, // <CJK>
+ 0x733C, 0x9DE6, // <CJK>
+ 0x733D, 0x9DED, // <CJK>
+ 0x733E, 0x9DEF, // <CJK>
+ 0x733F, 0x9DFD, // <CJK>
+ 0x7340, 0x9E1A, // <CJK>
+ 0x7341, 0x9E1B, // <CJK>
+ 0x7342, 0x9E1E, // <CJK>
+ 0x7343, 0x9E75, // <CJK>
+ 0x7344, 0x9E79, // <CJK>
+ 0x7345, 0x9E7D, // <CJK>
+ 0x7346, 0x9E81, // <CJK>
+ 0x7347, 0x9E88, // <CJK>
+ 0x7348, 0x9E8B, // <CJK>
+ 0x7349, 0x9E8C, // <CJK>
+ 0x734A, 0x9E92, // <CJK>
+ 0x734B, 0x9E95, // <CJK>
+ 0x734C, 0x9E91, // <CJK>
+ 0x734D, 0x9E9D, // <CJK>
+ 0x734E, 0x9EA5, // <CJK>
+ 0x734F, 0x9EA9, // <CJK>
+ 0x7350, 0x9EB8, // <CJK>
+ 0x7351, 0x9EAA, // <CJK>
+ 0x7352, 0x9EAD, // <CJK>
+ 0x7353, 0x9761, // <CJK>
+ 0x7354, 0x9ECC, // <CJK>
+ 0x7355, 0x9ECE, // <CJK>
+ 0x7356, 0x9ECF, // <CJK>
+ 0x7357, 0x9ED0, // <CJK>
+ 0x7358, 0x9ED4, // <CJK>
+ 0x7359, 0x9EDC, // <CJK>
+ 0x735A, 0x9EDE, // <CJK>
+ 0x735B, 0x9EDD, // <CJK>
+ 0x735C, 0x9EE0, // <CJK>
+ 0x735D, 0x9EE5, // <CJK>
+ 0x735E, 0x9EE8, // <CJK>
+ 0x735F, 0x9EEF, // <CJK>
+ 0x7360, 0x9EF4, // <CJK>
+ 0x7361, 0x9EF6, // <CJK>
+ 0x7362, 0x9EF7, // <CJK>
+ 0x7363, 0x9EF9, // <CJK>
+ 0x7364, 0x9EFB, // <CJK>
+ 0x7365, 0x9EFC, // <CJK>
+ 0x7366, 0x9EFD, // <CJK>
+ 0x7367, 0x9F07, // <CJK>
+ 0x7368, 0x9F08, // <CJK>
+ 0x7369, 0x76B7, // <CJK>
+ 0x736A, 0x9F15, // <CJK>
+ 0x736B, 0x9F21, // <CJK>
+ 0x736C, 0x9F2C, // <CJK>
+ 0x736D, 0x9F3E, // <CJK>
+ 0x736E, 0x9F4A, // <CJK>
+ 0x736F, 0x9F52, // <CJK>
+ 0x7370, 0x9F54, // <CJK>
+ 0x7371, 0x9F63, // <CJK>
+ 0x7372, 0x9F5F, // <CJK>
+ 0x7373, 0x9F60, // <CJK>
+ 0x7374, 0x9F61, // <CJK>
+ 0x7375, 0x9F66, // <CJK>
+ 0x7376, 0x9F67, // <CJK>
+ 0x7377, 0x9F6C, // <CJK>
+ 0x7378, 0x9F6A, // <CJK>
+ 0x7379, 0x9F77, // <CJK>
+ 0x737A, 0x9F72, // <CJK>
+ 0x737B, 0x9F76, // <CJK>
+ 0x737C, 0x9F95, // <CJK>
+ 0x737D, 0x9F9C, // <CJK>
+ 0x737E, 0x9FA0, // <CJK>
+ 0x7421, 0x582F, // <CJK>
+ 0x7422, 0x69C7, // <CJK>
+ 0x7423, 0x9059, // <CJK>
+ 0x7424, 0x7464, // <CJK>
+ 0x7425, 0x51DC, // <CJK>
+ 0x7426, 0x7199, // <CJK>
+ 0x0000
+};
diff --git a/win32/jisunih.h b/win32/jisunih.h
new file mode 100644
index 0000000..9e8d3a9
--- /dev/null
+++ b/win32/jisunih.h
@@ -0,0 +1,66 @@
+static const uint16_t jis2unicode_h[] = {
+ 0xA1, 0xFF61, // HALFWIDTH IDEOGRAPHIC FULL STOP
+ 0xA2, 0xFF62, // HALFWIDTH LEFT CORNER BRACKET
+ 0xA3, 0xFF63, // HALFWIDTH RIGHT CORNER BRACKET
+ 0xA4, 0xFF64, // HALFWIDTH IDEOGRAPHIC COMMA
+ 0xA5, 0xFF65, // HALFWIDTH KATAKANA MIDDLE DOT
+ 0xA6, 0xFF66, // HALFWIDTH KATAKANA LETTER WO
+ 0xA7, 0xFF67, // HALFWIDTH KATAKANA LETTER SMALL A
+ 0xA8, 0xFF68, // HALFWIDTH KATAKANA LETTER SMALL I
+ 0xA9, 0xFF69, // HALFWIDTH KATAKANA LETTER SMALL U
+ 0xAA, 0xFF6A, // HALFWIDTH KATAKANA LETTER SMALL E
+ 0xAB, 0xFF6B, // HALFWIDTH KATAKANA LETTER SMALL O
+ 0xAC, 0xFF6C, // HALFWIDTH KATAKANA LETTER SMALL YA
+ 0xAD, 0xFF6D, // HALFWIDTH KATAKANA LETTER SMALL YU
+ 0xAE, 0xFF6E, // HALFWIDTH KATAKANA LETTER SMALL YO
+ 0xAF, 0xFF6F, // HALFWIDTH KATAKANA LETTER SMALL TU
+ 0xB0, 0xFF70, // HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK
+ 0xB1, 0xFF71, // HALFWIDTH KATAKANA LETTER A
+ 0xB2, 0xFF72, // HALFWIDTH KATAKANA LETTER I
+ 0xB3, 0xFF73, // HALFWIDTH KATAKANA LETTER U
+ 0xB4, 0xFF74, // HALFWIDTH KATAKANA LETTER E
+ 0xB5, 0xFF75, // HALFWIDTH KATAKANA LETTER O
+ 0xB6, 0xFF76, // HALFWIDTH KATAKANA LETTER KA
+ 0xB7, 0xFF77, // HALFWIDTH KATAKANA LETTER KI
+ 0xB8, 0xFF78, // HALFWIDTH KATAKANA LETTER KU
+ 0xB9, 0xFF79, // HALFWIDTH KATAKANA LETTER KE
+ 0xBA, 0xFF7A, // HALFWIDTH KATAKANA LETTER KO
+ 0xBB, 0xFF7B, // HALFWIDTH KATAKANA LETTER SA
+ 0xBC, 0xFF7C, // HALFWIDTH KATAKANA LETTER SI
+ 0xBD, 0xFF7D, // HALFWIDTH KATAKANA LETTER SU
+ 0xBE, 0xFF7E, // HALFWIDTH KATAKANA LETTER SE
+ 0xBF, 0xFF7F, // HALFWIDTH KATAKANA LETTER SO
+ 0xC0, 0xFF80, // HALFWIDTH KATAKANA LETTER TA
+ 0xC1, 0xFF81, // HALFWIDTH KATAKANA LETTER TI
+ 0xC2, 0xFF82, // HALFWIDTH KATAKANA LETTER TU
+ 0xC3, 0xFF83, // HALFWIDTH KATAKANA LETTER TE
+ 0xC4, 0xFF84, // HALFWIDTH KATAKANA LETTER TO
+ 0xC5, 0xFF85, // HALFWIDTH KATAKANA LETTER NA
+ 0xC6, 0xFF86, // HALFWIDTH KATAKANA LETTER NI
+ 0xC7, 0xFF87, // HALFWIDTH KATAKANA LETTER NU
+ 0xC8, 0xFF88, // HALFWIDTH KATAKANA LETTER NE
+ 0xC9, 0xFF89, // HALFWIDTH KATAKANA LETTER NO
+ 0xCA, 0xFF8A, // HALFWIDTH KATAKANA LETTER HA
+ 0xCB, 0xFF8B, // HALFWIDTH KATAKANA LETTER HI
+ 0xCC, 0xFF8C, // HALFWIDTH KATAKANA LETTER HU
+ 0xCD, 0xFF8D, // HALFWIDTH KATAKANA LETTER HE
+ 0xCE, 0xFF8E, // HALFWIDTH KATAKANA LETTER HO
+ 0xCF, 0xFF8F, // HALFWIDTH KATAKANA LETTER MA
+ 0xD0, 0xFF90, // HALFWIDTH KATAKANA LETTER MI
+ 0xD1, 0xFF91, // HALFWIDTH KATAKANA LETTER MU
+ 0xD2, 0xFF92, // HALFWIDTH KATAKANA LETTER ME
+ 0xD3, 0xFF93, // HALFWIDTH KATAKANA LETTER MO
+ 0xD4, 0xFF94, // HALFWIDTH KATAKANA LETTER YA
+ 0xD5, 0xFF95, // HALFWIDTH KATAKANA LETTER YU
+ 0xD6, 0xFF96, // HALFWIDTH KATAKANA LETTER YO
+ 0xD7, 0xFF97, // HALFWIDTH KATAKANA LETTER RA
+ 0xD8, 0xFF98, // HALFWIDTH KATAKANA LETTER RI
+ 0xD9, 0xFF99, // HALFWIDTH KATAKANA LETTER RU
+ 0xDA, 0xFF9A, // HALFWIDTH KATAKANA LETTER RE
+ 0xDB, 0xFF9B, // HALFWIDTH KATAKANA LETTER RO
+ 0xDC, 0xFF9C, // HALFWIDTH KATAKANA LETTER WA
+ 0xDD, 0xFF9D, // HALFWIDTH KATAKANA LETTER N
+ 0xDE, 0xFF9E, // HALFWIDTH KATAKANA VOICED SOUND MARK
+ 0xDF, 0xFF9F, // HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
+ 0x0000
+};
diff --git a/win32/main.c b/win32/main.c
index dd60702..efd1607 100644
--- a/win32/main.c
+++ b/win32/main.c
@@ -10,6 +10,7 @@
#include "libopna/opnatimer.h"
#include "fmdsp/fmdsp.h"
#include "soundout.h"
+#include "winfont.h"
enum {
ID_OPENFILE = 0x10,
@@ -20,8 +21,6 @@ enum {
SRATE = 55467,
SECTLEN = 4096,
PPZ8MIX = 0xa000,
- FONT_ROM_SIZE = 0x84000,
- FONT_ROM_FILESIZE = 0x46800,
};
#define ENABLE_WM_DROPFILES
@@ -38,7 +37,9 @@ static struct {
struct driver_fmp *fmp;
struct fmdsp fmdsp;
uint8_t vram[PC98_W*PC98_H];
- uint8_t font[FONT_ROM_SIZE];
+ struct fmdsp_font font;
+ uint8_t fontrom[FONT_ROM_FILESIZE];
+ bool font_loaded;
void *drum_rom;
uint8_t opna_adpcm_ram[OPNA_ADPCM_RAM_SIZE];
void *ppz8_buf;
@@ -104,6 +105,43 @@ static HANDLE pvisearch(const wchar_t *filename, const char *pviname_a) {
0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
}
+static bool loadfontrom(void) {
+ const wchar_t *path = L"font.rom";
+ wchar_t exepath[MAX_PATH];
+ if (GetModuleFileName(0, exepath, MAX_PATH)) {
+ PathRemoveFileSpec(exepath);
+ if ((lstrlen(exepath) + lstrlen(path) + 1) < MAX_PATH) {
+ lstrcat(exepath, L"\\");
+ lstrcat(exepath, path);
+ path = exepath;
+ }
+ }
+ HANDLE file = CreateFile(path, GENERIC_READ,
+ 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
+ if (file == INVALID_HANDLE_VALUE) goto err;
+ DWORD filesize = GetFileSize(file, 0);
+ if (filesize != FONT_ROM_FILESIZE) goto err_file;
+ DWORD readbytes;
+ if (!ReadFile(file, g.fontrom, FONT_ROM_FILESIZE, &readbytes, 0)
+ || readbytes != FONT_ROM_FILESIZE) goto err_file;
+ CloseHandle(file);
+ fmdsp_font_from_font_rom(&g.font, g.fontrom);
+ g.font_loaded = true;
+ return true;
+err_file:
+ CloseHandle(file);
+err:
+ return false;
+}
+
+static void loadfont(void) {
+ if (loadfontrom()) return;
+
+ if (fmdsp_font_win(&g.font)) {
+ g.font_loaded = true;
+ }
+}
+
static void loadrom(void) {
const wchar_t *path = L"ym2608_adpcm_rom.bin";
wchar_t exepath[MAX_PATH];
@@ -252,7 +290,7 @@ static void openfile(HWND hwnd, const wchar_t *path) {
g.sound = sound_init(hwnd, SRATE, SECTLEN,
sound_cb, &g.opna_timer);
}
- fmdsp_vram_init(&g.fmdsp, &g.work, g.font, g.vram);
+ fmdsp_vram_init(&g.fmdsp, &g.work, g.vram);
if (!g.sound) goto err_fmp;
g.sound->pause(g.sound, 0);
CloseHandle(file);
@@ -358,8 +396,9 @@ static bool on_create(HWND hwnd, CREATESTRUCT *cs) {
HFONT font = CreateFontIndirect(&ncm.lfMessageFont);
SetWindowFont(button, font, TRUE);
loadrom();
- fmdsp_init(&g.fmdsp);
- fmdsp_vram_init(&g.fmdsp, &g.work, g.font, g.vram);
+ loadfont();
+ fmdsp_init(&g.fmdsp, g.font_loaded ? &g.font : 0);
+ fmdsp_vram_init(&g.fmdsp, &g.work, g.vram);
SetTimer(hwnd, TIMER_FMDSP, 50, 0);
#ifdef ENABLE_WM_DROPFILES
DragAcceptFiles(hwnd, TRUE);
diff --git a/win32/winfont.c b/win32/winfont.c
new file mode 100644
index 0000000..4632d51
--- /dev/null
+++ b/win32/winfont.c
@@ -0,0 +1,130 @@
+#include "winfont.h"
+#include <windows.h>
+
+struct font_win32 {
+ HFONT font;
+ HDC dc;
+ HBITMAP bitmap;
+ HBRUSH white;
+ HBRUSH black;
+ uint8_t *data;
+ uint8_t buf[16];
+};
+
+
+#include "jisunih.h"
+
+uint16_t jis2unih(uint8_t jis) {
+ if (jis & 0x80) {
+ const uint16_t *tab = jis2unicode_h;
+ while (tab[0]) {
+ if (tab[0] == jis) return tab[1];
+ tab += 2;
+ }
+ return 0;
+ } else {
+ return jis;
+ }
+}
+
+#include "jisuni.h"
+
+uint16_t jis2uni(uint16_t jis) {
+ if ((jis>>8) == 0x29) {
+ return jis2unih(jis & 0xff);
+ }
+ const uint16_t *tab = jis2unicode;
+ while (tab[0]) {
+ if (tab[0] == jis) return tab[1];
+ tab += 2;
+ }
+ return 0;
+}
+
+static const void *winfont_get(const struct fmdsp_font *font,
+ uint16_t c, enum fmdsp_font_type type) {
+ struct font_win32 *fw = (struct font_win32 *)font->data;
+ RECT r = {
+ 0, 0, 8, 16
+ };
+ FillRect(fw->dc, &r, fw->white);
+ wchar_t text[2] = {0};
+ switch (type) {
+ case FMDSP_FONT_ANK:
+ text[0] = jis2unih(c);
+ TextOut(fw->dc, 0, 0, text, 1);
+ break;
+ case FMDSP_FONT_JIS_LEFT:
+ text[0] = jis2uni(c);
+ TextOut(fw->dc, 0, 0, text, 1);
+ break;
+ case FMDSP_FONT_JIS_RIGHT:
+ text[0] = jis2uni(c);
+ TextOut(fw->dc, -8, 0, text, 1);
+ break;
+ }
+ GdiFlush();
+// return fw->data;
+ for (int y = 0; y < 16; y++) {
+ fw->buf[y] = fw->data[y*4];
+ }
+ return fw->buf;
+}
+
+struct BITMAPINFO_mono {
+ BITMAPINFOHEADER bmihead;
+ RGBQUAD bmicolors[2];
+};
+
+bool fmdsp_font_win(struct fmdsp_font *font) {
+ struct font_win32 *fw = HeapAlloc(
+ GetProcessHeap(), 0, sizeof(struct font_win32)
+ );
+ if (!fw) goto err;
+ fw->font = CreateFont(16, 0, 0, 0,
+ FW_NORMAL, FALSE, FALSE, FALSE,
+ SHIFTJIS_CHARSET,
+ OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,
+ NONANTIALIASED_QUALITY, FIXED_PITCH,
+ L"MS Gothic");
+ if (!fw->font) goto err_fw;
+ fw->dc = CreateCompatibleDC(0);
+ if (!fw->dc) goto err_font;
+ struct BITMAPINFO_mono bmi = {0};
+ bmi.bmihead.biSize = sizeof(bmi.bmihead);
+ bmi.bmihead.biWidth = 8;
+ bmi.bmihead.biHeight = -16;
+ bmi.bmihead.biPlanes = 1;
+ bmi.bmihead.biBitCount = 1;
+ bmi.bmihead.biCompression = BI_RGB;
+ bmi.bmihead.biSizeImage = 16;
+ bmi.bmihead.biClrUsed = 2;
+ bmi.bmicolors[0].rgbRed = 0xff;
+ bmi.bmicolors[0].rgbGreen = 0xff;
+ bmi.bmicolors[0].rgbBlue = 0xff;
+ fw->bitmap = CreateDIBSection(
+ fw->dc, (BITMAPINFO *)&bmi,
+ DIB_RGB_COLORS, (void **)&fw->data,
+ 0, 0);
+ if (!fw->bitmap) {
+ MessageBox(0, L"a", L"b", 0);
+ goto err_dc;
+ }
+ SelectObject(fw->dc, fw->bitmap);
+ SelectObject(fw->dc, fw->font);
+ fw->white = CreateSolidBrush(RGB(0xff, 0xff, 0xff));
+ fw->black = CreateSolidBrush(RGB(0x00, 0x00, 0x00));
+ font->get = winfont_get;
+ font->data = fw;
+ font->width_half = 8;
+ font->height = 16;
+ return true;
+err_dc:
+ DeleteDC(fw->dc);
+err_font:
+ DeleteObject(fw->font);
+err_fw:
+ HeapFree(GetProcessHeap(), 0, fw);
+err:
+ return false;
+}
diff --git a/win32/winfont.h b/win32/winfont.h
new file mode 100644
index 0000000..204b7fb
--- /dev/null
+++ b/win32/winfont.h
@@ -0,0 +1,7 @@
+#ifndef MYON_WINFONT_H_INCLUDED
+#define MYON_WINFONT_H_INCLUDED
+#include "fmdsp/font.h"
+
+bool fmdsp_font_win(struct fmdsp_font *font);
+
+#endif // MYON_WINFONT_H_INCLUDED
diff --git a/win32/x86/Makefile b/win32/x86/Makefile
index e273569..e5aad93 100644
--- a/win32/x86/Makefile
+++ b/win32/x86/Makefile
@@ -4,6 +4,8 @@ vpath %.c ../../libopna
vpath %.c ../../fmdsp
vpath %.rc ..
TARGET=fmplayer.exe
+ICON=../fmplayer.ico
+ICONFILES=../fmplayer.png ../fmplayer32.png
FMDRIVER_OBJS=fmdriver_fmp.o \
ppz8.o
LIBOPNA_OBJS=opna.o \
@@ -12,8 +14,8 @@ LIBOPNA_OBJS=opna.o \
opnassg.o \
opnadrum.o \
opnaadpcm.o
-FMDSP_OBJS=fmdsp.o
-OBJS=main.o dsoundout.o soundout.o waveout.o uc.o lnf.o \
+FMDSP_OBJS=fmdsp.o font_rom.o
+OBJS=main.o dsoundout.o soundout.o waveout.o uc.o lnf.o winfont.o \
$(FMDRIVER_OBJS) \
$(LIBOPNA_OBJS) \
$(FMDSP_OBJS)
@@ -36,8 +38,11 @@ $(TARGET): $(OBJS)
$(CC) -o $@ $(OBJS) $(LIBS)
$(STRIP) $@
-%.o: %.rc
+%.o: %.rc $(ICON)
$(WINDRES) -o $@ -i $<
+$(ICON): $(ICONFILES)
+ convert $(ICONFILES) -colors 256 $@
+
clean:
rm -f $(TARGET) $(OBJS)